package com.brilliance.isc.bo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;

import java.util.Date;

import static com.brilliance.mda.runtime.mda.Constants.NULLDATE;
import static com.brilliance.mda.runtime.mda.Constants.NULLSTR;


/**
* TABLE:cci:CCI - Common Contract Information
*/
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class Cci {

        //Object Type
        private String objtyp = NULLSTR;

        //INR of Associated Object
        private String objinr = NULLSTR;

        //Reference
        private String ownref = NULLSTR;

        //Externally Displayed Name to Identify the Contract
        private String nam = NULLSTR;

        //Responsible User
        private String ownusr = NULLSTR;

        //Date of Creation Opening or Registry
        @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
        private Date credat = NULLDATE;

        //Date L/C Opened/Issued
        @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
        private Date opndat = NULLDATE;

        //Date L/C Closed
        @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
        private Date clsdat = NULLDATE;

        //Date of Last Amendment
        @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
        private Date amedat = NULLDATE;

        //Valid until
        @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
        private Date expdat = NULLDATE;

        //Role of Bank Optional
        private String ccibanrol = NULLSTR;

        //PTAINR of Bank Optional
        private String ccibanptainr = NULLSTR;

        //Role of Customer Optional
        private String ccicusrol = NULLSTR;

        //PTAINR of Customer Optional
        private String ccicusptainr = NULLSTR;

        //Version Counter
        private String ver = NULLSTR;

        //Entity holding Contract
        private String etyextkey = NULLSTR;
}