package com.brilliance.isc.vo.lg;

import com.brilliance.isc.common.json.BigDecimalSerialize;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
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;
import static com.brilliance.mda.runtime.mda.util.Decimals.ZERO_SCALE2;

@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class InfgcdDetailVo {
    private String inr = NULLSTR;
    private String gcdownref = NULLSTR;
    private String gcdownusr = NULLSTR;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date gcdopndat = NULLDATE;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date gcdclsdat = NULLDATE;
    private String gcdaplextkey = NULLSTR;
    private String gcdaplnam = NULLSTR;
    private String gcdbenextkey = NULLSTR;
    private String gcdbennam = NULLSTR;
    private String gcdmaxcur = NULLSTR;
    @JsonSerialize(using = BigDecimalSerialize.class)
    private BigDecimal gcdmaxamt = ZERO_SCALE2;
    private String gcdopncur = NULLSTR;
    @JsonSerialize(using = BigDecimalSerialize.class)
    private BigDecimal gcdopnamt = ZERO_SCALE2;
    private String opentyp;
    private String gidopentyp;
}
