package com.gree.mall.manager.bean.ums;

import com.gree.mall.manager.annotation.ZfireField;
import com.gree.mall.manager.enums.ums.UmsCheckStatusEnum;
import com.gree.mall.manager.enums.ums.UmsGrantFlagEnum;
import com.gree.mall.manager.enums.ums.UmsTraceStatusEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

@Data
@ApiModel
@ZfireField(tbName = "a")
public class UmsSupplementRecordVO {

    @ZfireField(hide = true)
    @ApiModelProperty(value = "id")
    private String id;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "商户id")
    private String companyId;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "商家id")
    private String websitId;

    @ApiModelProperty(value = "流水号")
    private String traceId;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "发票图片")
    private String newCelecAppInvPicKey;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "单据状态 SAVE=保存 SUBMIT=提交 END=执行完结")
    private String status;

    @ApiModelProperty(value = "流水状态")
    private UmsTraceStatusEnum traceStatus;

    @ApiModelProperty(value = "审核状态")
    private UmsCheckStatusEnum checkStatus;

    @ApiModelProperty(value = "发放状态")
    private UmsGrantFlagEnum grantFlag;

    @ApiModelProperty(value = "订单号")
    private String orderId;

    @ApiModelProperty(value = "商户订单号")
    private String merOrderId;

    @ApiModelProperty(value = "活动大类")
    private String activeBigClass;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "收货地的省编码")
    private String provinceCode;

    @ApiModelProperty(value = "省名称")
    private String provinceName;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "收货地的市编码")
    private String cityCode;

    @ApiModelProperty(value = "市名称")
    private String cityName;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "收货地的区编码")
    private String districtCode;

    @ApiModelProperty(value = "区名称")
    private String districtName;

    @ApiModelProperty(value = "详细地址")
    private String address;

    @ApiModelProperty(value = "购买商品数量")
    private Integer newElecAppCnt;

    @ApiModelProperty(value = "商品品牌名称")
    private String brand;

    @ApiModelProperty(value = "能效(水效) L1：一级能效，L2：二级能效")
    private String newEei;

    @ApiModelProperty(value = "品牌及型号")
    private String newElecAppBrandAndModel;

    @ApiModelProperty(value = "交易日期")
    private String transDate;

    @ApiModelProperty(value = "发票代码")
    private String newInvCode;

    @ApiModelProperty(value = "发票号码")
    private String newInvNo;

    @ApiModelProperty(value = "开票日期")
    private String invoiceIssueDate;

    @ApiModelProperty(value = "含税发票金额")
    private BigDecimal newTotalPrice;

    @ApiModelProperty(value = "不含税发票金额")
    private BigDecimal newTotalPriceExcTax;

    @ApiModelProperty(value = "销售企业（网点）名称")
    private String salesCompName;

    @ApiModelProperty(value = "销售方纳税人识别号")
    private String salesCompCode;

    @ApiModelProperty(value = "客户端IP地址")
    private String clientIp;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "创建人")
    private String createBy;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "审核失败原因")
    private String reason;

    @ApiModelProperty(value = "处理备注")
    private String traceMsg;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "补贴申请单据ID")
    private String billId;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "请求流水")
    private String reqSn;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "系统错误")
    private String sysErr;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "错误次数")
    private Integer errCount;
}
