package com.brilliance.isc.bo;

import com.brilliance.mda.runtime.mda.util.Decimals;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

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


/**
* TABLE:cbe:CBE - CBS Entry
*/
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class Cbe {

        //Internal Unique ID of CBS Entry
        private String inr = NULLSTR;

        //Object Type
        private String objtyp = NULLSTR;

        //Object INR
        private String objinr = NULLSTR;

        //External ID
        private String extid = NULLSTR;

        //Type of Entry
        private String cbt = NULLSTR;

        //Type of Initiating Transaction
        private String trntyp = NULLSTR;

        //Initiating Transaction INR
        private String trninr = NULLSTR;

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

        //Currency
        private String cur = NULLSTR;

        //Amount
        private  BigDecimal amt  = Decimals.ZERO_SCALE2;

        //Release Status Flag
        private String relflg = NULLSTR;

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

        //Currency of Converted Amount Optional
        private String xrfcur = NULLSTR;

        //Converted Amount Optional
        private  BigDecimal xrfamt  = Decimals.ZERO_SCALE2;

        //Description Optional
        private String nam = NULLSTR;

        //Account Optional
        private String acc = NULLSTR;

        //Account 2 Optional
        private String acc2 = NULLSTR;

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

        //Date of GLE Entries of Transaction
        @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
        private Date gledat = NULLDATE;

        //保证金应收比例
        private  BigDecimal nompct  = Decimals.ZERO_SCALE2;
}