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:ers:ERP Transfer Table
*/
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class Ers {

        //Internal unique Id of ERS
        private String inr = NULLSTR;

        //Branch Extkey
        private String bchcod = NULLSTR;

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

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

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

        //Own Reference
        private String ownref = NULLSTR;

        //Bill ID
        private String billid = NULLSTR;

        //Transation Type
        private String inifrm = NULLSTR;

        //Create User
        private String iniusr = NULLSTR;

        //Message From
        private String msgfrm = NULLSTR;

        //Message to
        private String msgtoo = NULLSTR;

        //File name
        private String docfil = NULLSTR;

        //Document Path Relative to Appl. or Data Root
        private String docpth = NULLSTR;

        //Object Type of Associated Contract Optional
        private String objtyp = NULLSTR;

        //Object INR of Associated Contract Optional
        private String objinr = NULLSTR;

        //TRN INR
        private String trninr = NULLSTR;

        //SMH INR
        private String smhinr = NULLSTR;

        //Nominal Amount
        private  BigDecimal amt  = Decimals.ZERO_SCALE2;

        //Nominal Currency
        private String cur = NULLSTR;

        //Statement
        private String sta = NULLSTR;

        //Structure/Syntax of Message XML....
        private String cortyp = NULLSTR;

        //Message Type Optional
        private String msgtyp = NULLSTR;

        //Print flag
        private String prtflg = NULLSTR;

        //Additional Information1
        private String txtinf = NULLSTR;

        //Version
        private String ver = NULLSTR;

        //Direction '>'=Outgoing, '<'/'['=Incoming
        private String dir = NULLSTR;

        //业务参考号YWCKH、MT20
        private String f20 = NULLSTR;

        //业务参考号YWCKH、MT20
        private String f21 = NULLSTR;

        //经办机构号
        private String usrbchcod = NULLSTR;

        //归属机构（清算指定机构）
        private String ownextkey = NULLSTR;

        //行内关联编号
        private String hnglbh = NULLSTR;

        //原行内关联编号
        private String yhnglbh = NULLSTR;

        //报文标识号或�'寸电的
        private String bwbsh = NULLSTR;

        //原报文标识号（或信息电的）
        private String ybwbsh = NULLSTR;

        //前台交易流�'编号
        private String qtjylsbh = NULLSTR;

        //报文属性
        private String bwsx = NULLSTR;

        //报文性�'�
        private String bwxz = NULLSTR;

        //发送渠道
        private String fsqd = NULLSTR;

        //信息电发送渠道
        private String xxdfsqd = NULLSTR;

        //事务类型
        private String swlx = NULLSTR;

        //回执状态
        private String hzzt = NULLSTR;

        //错误描述
        private String cwms = NULLSTR;

        //收报行代码/�'�方银行行号
        private String sbhdm = NULLSTR;

        //�'�方银行行号
        private String dfyhhh = NULLSTR;

        //报文品种
        private String bwpz = NULLSTR;

        //COV汇款
        private String covorc = NULLSTR;

        //INR of the First Message of Split Messages/Secondary Messages
        private String grpinr = NULLSTR;

        //借�'�标识
        private String jdbz = NULLSTR;

        //类型
        private String lx = NULLSTR;

        //IMGNUM
        private String imgnum = NULLSTR;

        //SPTINR
        private String sptinr = NULLSTR;

        //关联系统流�'号
        private String resnum = NULLSTR;

        //报文源流�'号
        private String ftynum = NULLSTR;

        //第三方系统编号
        private String othersno = NULLSTR;

        //预留字段
        private String reserve = NULLSTR;

        //电子保函状态
        private String dzbsta = NULLSTR;

        //是否标准文本
        private String statxt = NULLSTR;

        //业务流程状态
        private String bussta = NULLSTR;
}