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:acr: 
*/
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class Acr {
        //Internal Unique ID
        private String inr = NULLSTR;

        //Contract Type
        private String objtyp = NULLSTR;

        //INR of Contract
        private String objinr = NULLSTR;

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

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

        //INR of Party Paying
        private String ptyinr = NULLSTR;

        //Transaction Creating Entry Modification Date on Modifications
        private String cretrninr = NULLSTR;

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

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

        //Type of Settlement
        private String settyp = NULLSTR;

        //INR of Condition Used
        private String fecinr = NULLSTR;

        //INR of Fee Used
        private String feeinr = NULLSTR;

        //Account
        private String acc = NULLSTR;

        //Accruing Account
        private String accacr = NULLSTR;

        //Currency
        private String cur = NULLSTR;

        //Difference between ACTAMT and Last Booking
        private  BigDecimal difamt  = Decimals.ZERO_SCALE2;

        //Actual Accrued Amount
        private  BigDecimal actamt  = Decimals.ZERO_SCALE2;

}