package com.brilliance.isc.bo.model;

import com.brilliance.mda.runtime.mda.util.Decimals;
import com.brilliance.isc.bo.*;
import com.brilliance.isc.common.invchk.vo.InvlstVo;
import com.brilliance.isc.common.invchk.vo.Invrep;
import com.brilliance.isc.common.vo.AbstractCommonVo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class ImgInvmod extends AbstractCommonVo {

    private String seqnum;
    private  String skipped;
    //跳过理由
    private String skpreason;
    private Imglot imglot;
    //发票列表索引
    private int index;
    private Smh smh;
    //报文内容
    private String msgdat;
    //影像批次号
    private String imgnum;
    //监控截止日期
    private List<InvlstVo> invlst;
    private List<InvlstVo> oldInvlst;
    private List<Imguse> imguseList;
    private List<Imguse> oldImguseList;
    private List<Invmon> invmonList;

    //发票登记模型
    private Invp invp;
    //是否显示平台外发票登记
    private Boolean showRegTab;
    //是否展示平台外发票作废
    private Boolean showCanTab;
    //发票登记页签名
    private String tabVal;
    //发票登记列表数据集
    private List<Imfinv> tableData;
    //下载影像标志
    private Boolean downLoadFlg;
    //上传人行影像标志
    private Boolean uploadFlg;
    //跳过核验开关
    private String isUpCheck;

    private String imfref;

    private Invrep invrep;

    // 监控到期时间
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    private Date expdat;
    // 发票来源
    private String frmflg;
    //业务编号
    private String ownref;
    //业务编号
    private String pntref;
    //交易码
    private String trnNam;

    private PageTable pageTable = new PageTable();

    //自开自议标识
    private Boolean isOneSelf;

    //跳过核验开关
    private String isSkipped;

    //占用总金额
    private BigDecimal untamtin = Decimals.ZERO_SCALE2;

    //价税合计总金额
    private BigDecimal untamttax = Decimals.ZERO_SCALE2;

}
