package com.brilliance.isc.common.rmbbop.entity;

import com.brilliance.mda.runtime.mda.util.Decimals;
import com.brilliance.isc.common.vo.AbstractCommonVo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Getter;
import lombok.Setter;

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:tgd:金融衍生品交易信息（2180）利率信息
 */
@JsonIgnoreProperties(ignoreUnknown = true)
@Getter
@Setter
public class Tgd extends AbstractCommonVo {
    private String inr = NULLSTR;

    //Version
    private String ver = NULLSTR;

    //objtyp
    private String objtyp = NULLSTR;

    //objinr
    private String objinr = NULLSTR;

    //人行报送状态
    private String sta = NULLSTR;

    //明细操作类型
    private String listopertype = NULLSTR;

    //明细主键
    private  int seqno ;

    //换入币种
    private String incurrency = NULLSTR;

    //换入名义本金金额
    private BigDecimal inamt  = Decimals.ZERO_SCALE2;

    //换入利率基准
    private String inrate = NULLSTR;

    //换入价格
    private  BigDecimal inprice  = Decimals.ZERO_SCALE7;

    //换出币种
    private String outcurrency = NULLSTR;

    //近端汇率
    private  BigDecimal nearrate  = Decimals.ZERO_SCALE8;

    //远端汇率
    private  BigDecimal disrate  = Decimals.ZERO_SCALE8;

    //换出名义本金金额
    private  BigDecimal outamt  = Decimals.ZERO_SCALE2;

    //换出利率基准
    private String outrate = NULLSTR;

    //换出价格
    private  BigDecimal outprice  = Decimals.ZERO_SCALE7;

    //交易日
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    private Date tradate = NULLDATE;

    //起息日
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    private Date startdate = NULLDATE;

    //到期日
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    private Date enddate = NULLDATE;

    //付息频率
    private String frequency = NULLSTR;

    //利率衍生品类型
    private String ratederitype = NULLSTR;

    //数据状态
    private String csta = NULLSTR;

    //确认
    private String acp;

}
