package com.brilliance.isc.vo.lc;

import com.brilliance.mda.runtime.mda.util.Decimals;
import com.brilliance.isc.common.vo.BizInfoVo;
import com.brilliance.isc.common.vo.PtsptaVo;
import com.fasterxml.jackson.annotation.JsonFormat;
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;

/**
 * 出口信用证业务要素
 */
@Data
public class LedBizInfoVo extends BizInfoVo {

    //Test Key Unconfirmity
    private String teskeyunc = NULLSTR;

    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    protected Date oldexpdat = null;

    //Old Test Key Unconfirmity
    private String oldteskeyunc = NULLSTR;

    //New Expiry Date
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    private Date newexpdat;

    //Confirmation Status
    private String cnfsta = NULLSTR;
    //Confirmation Instructions from Iss.Bank
    private String cnfdet = NULLSTR;

    //Old Confirmation Status
    private String oldcnfsta = NULLSTR;

    //Reserved Contract
    private String resflg = NULLSTR;

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


    private String sndmsg;

    //Flag \LEDGRP\REC\Dflg
    private String dflg = NULLSTR;

    //Partial Confirmation \LEDGRP\REC\PARTCON
    private BigDecimal partcon  = Decimals.ZERO_SCALE2;

    //Type of Financing \BPDGRP\REC\FINTYP
    private String fintyp = NULLSTR;

    //Finance Risk Type \BPDGRP\REC\RSKTYP
    private String rsktyp = NULLSTR;

    //Parent Contract Type \BPDGRP\REC\PNTTYP
    private String pnttyp = NULLSTR;

    //Payer BEDGRP\REC\PAYROL
    private String payrol = NULLSTR;

    private String oldIssPtyinr = NULLSTR;

    private String oldIssPtsNam = NULLSTR;

    private String oldIssPtainr = NULLSTR;

    //fremsg相关
    private String sndmt;
    private  String msgrol = NULLSTR;
    private  String ccrol = NULLSTR;
    private PtsptaVo othmsg;
    private PtsptaVo othcc;
    private  String reldir = NULLSTR;
    private  String fulmt = NULLSTR;
    private  String relmt = NULLSTR;

    //Send Directly to Applicant's Bank
    private String aplbnkdirsnd = NULLSTR;

    private String ownref;

    // 修改后的当前最大maxamt
    private BigDecimal maxamt;

    // 修改后的当前最大maxamt
    private String maxcur;

    // 修改金额
    private BigDecimal engamt;

    //Country Code for Statistics
    private String stacty = NULLSTR;

    //Port of Discharge
    private String pordis = NULLSTR;

    //Port of Loading
    private String porloa = NULLSTR;

    //Shipment from
    private String shpfro = NULLSTR;

    //For Transportation to
    private String shpto = NULLSTR;

}
