package com.brilliance.isc.bo;

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.NULLSTR;


/**
* TABLE:que:QUE - Interactive Queue
*/
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class Que {

        //Internal Unique ID
        private String inr ;

        //Class
        private String cla ;

        //Table Used to Store Object
        private String objtyp ;

        //INR of Object
        private String objinr ;

        //Sub ID for an object
        private String objsubid ;

        //External Readable Object Identification
        private String objnam ;

        //Reference
        private String objref ;

        private String channel ;

        private String chlflg;

        //Additional Reference Information
        private String addref ;

        //Hold / Delete Flag
        private String hldflg ;

        //Session INR for last upate of HLDFLG
        private String hldssninr ;

        //Update time of HLDFLG
        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
        private Date hlddattim ;

        //Load Balance Flag
        private String balflg ;

        //Table of Main Contract optional
        private String conobjtyp ;

        //INR of Contract optional
        private String conobjinr ;

        //Transaction
        private String frm ;

        //Responsible Group optional
        private String usg ;

        //Responsible User optional
        private String usr ;

        private String usrcon;

        //Predefined Priority Class from SLA
        private String slacla ;

        //Priority Class for Balancing / Display order
        private String balcla ;

        //Sort Key within BALCLA
        private String balsrtkey ;

        //Currency of RELAMT optional
        private String relcur ;

        //Relevant AmountOptional
        private  BigDecimal relamt;

        //Currency =SYSISO optional
        private String xrfcur ;

        //Relevant Amount in SYSISO Optional
        private  BigDecimal xrfamt ;

        //Target
        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
        private Date tardattim ;

        //User Readable Source of the Queue Entry
        private String txt ;

        //Entity Group holding Queue Entry
        private String etgextkey ;

        //Entity holding Queue Entry
        private String etyextkey ;

        private String branchinr;

        private String bchkeyinr;

        private String accbchinr;

        private String status;

        private String distMethod;

        private String distStatus;

        private Integer tryDistCount;

        private String lastErr;

        private String pinflg;

        private String urgflg;

        private String vipflg;

        private Integer priority;

        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
        private Date scheduledStartTime;

        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
        private Date distDdl;

        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
        private Date finishDdl;

        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
        private Date createTime;

        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
        private Date updateTime;

        private String remark;

        private String creobjtyp;

        private String creobjinr;

        private String oldstatus;

        private String flowstatus;

        private String relflg;

        private String relres;

        private String relreq;

        private String relusr;

        private String sdhflg;

        private String ordinr;

        private String msgtyp;

        private String ctmnam;//客户名称

        private String eciflg;


        // 电商汇款或海运费标记
        private String ehtyp;
        // 汇款种类
        private String paytyp;
        // 邮路类型
        private String cptrou;
        // 是否已转人工
        private String trnman;

        private String chnref;

        private String cortyp;

        private String frontchannel;

        private String auto;


}