package com.tofly.watermeter.custom.entity.meterRead.readstatic;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.tofly.watermeter.custom.entity.file.FileInfo;
import com.tofly.watermeter.entity.Readupdate;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

/**
 * @author FlashWJL
 * @date 2021/12/23 19:55
 */
@Data
public class AuditMap {
    /**
     * 用户编号
     */
    @ApiModelProperty(value = "用户编号")
    private String yhbh;

    /**
     * 用户姓名
     */
    @ApiModelProperty(value = "用户姓名")
    private String yhxm;
    /**
     * 用户地址
     */
    @ApiModelProperty(value = "用户地址")
    private String yhdz;
    /**
     * 联系电话
     */
    @ApiModelProperty(value = "联系电话")
    private String lxdh;
    /**
     * 水表编号
     */
    @ApiModelProperty(value = "水表编号")
    private String sbbh;
    /**
     * 水表厂家
     */
    @ApiModelProperty(value = "水表厂家")
    private String sbcj;
    /**
     * 水表类型
     */
    @ApiModelProperty(value = "水表类型")
    private String sblx;
    /**
     * 水表口径
     */
    @ApiModelProperty(value = "水表口径")
    private String sbkj;

    @ApiModelProperty(value = "水表口径名称")
    private String sbkjName;

    /**
     * 用水性质
     */
    @ApiModelProperty(value = "用水性质")
    private String ysxz;


    /**
     * 上次读数
     */
    @ApiModelProperty(value = "上次读数")
    private Long scds;
    /**
     * 本次读数
     */
    @ApiModelProperty(value = "本次读数")
    private Long bcds;
    /**
     * 本次加减量
     */
    @ApiModelProperty(value = "本次加减量")
    private Long bcjjl;
    /**
     * 抄表标志 0未抄表，1已抄表
     */
    @ApiModelProperty(value = "抄表标志 0未抄表，1已抄表")
    private String cbbz;
    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private String cbbzName;

    /**
     * 抄表人员
     */
    @ApiModelProperty(value = "抄表人员")
    private Long cbry;
    private String cbryName;

    /**
     * 抄表日期
     */
    @ApiModelProperty(value = "抄表日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date cbrq;

    private String cbrqStr;

    @ApiModelProperty(value = "文件集合")
    private List<FileInfo> fileInfo;
    /**
     * 抄表方式
     */
    @ApiModelProperty(value = "抄表方式")
    private Long cbfsCode;
    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private String cbfsName;
    /**
     * 抄表数据审核标识；0：未审核；1：已审核
     */
    @ApiModelProperty(value = "抄表数据审核标识；0：未审核；1：人工审核通过；2：转质检；3：转质检完成的")
    private String shbz;
    /**
     * 审核人
     */
    @ApiModelProperty(value = "审核人")
    private Long auditUser;

    /**
     * 抄表水量
     */
    @ApiModelProperty(value = "抄表水量")
    private Long cbsl;
    @ApiModelProperty(value = "是否估报；1：是")
    private String isEstimate;

    /**
     * 应收金额
     */
    @ApiModelProperty(value = "应收金额")
    private Long ysje;

    @ApiModelProperty(value = "'0','未审核','1','人工审核通过','2','转质检','3','转质检完成' ", hidden = true)
    @TableField(exist = false)
    private String auditName;

    @ApiModelProperty(value = "审核人名称")
    private String auditUserName;

    @ApiModelProperty(value = "")
    private String auditResultName;
    /**
     * 异常原因
     */
    @ApiModelProperty(value = "异常原因")
    private String auditReason;
    /**
     * 是否同步；0：未同步、1：已同步
     */
    @ApiModelProperty(value = "是否同步；0：未同步、1：已同步")
    private String issyn;
    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private String issynName;
    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String bz;

    /**
     * 森鑫炬同步接口返回的消息数据
     */
    @ApiModelProperty(value = "森鑫炬同步接口返回的消息数据")
    private String sxjmessage;
    @ApiModelProperty(value = "抄表数据上传时，森鑫炬返回系统的抄表起度")
    private Long sxjSbqd;

    /**
     * 地址说明
     */
    @ApiModelProperty(value = "地址说明")
    private String addressState;
    /**
     * 是否卡表；0：机械表；1：卡表
     */
    @ApiModelProperty(value = "是否卡表；0：机械表；1：卡表")
    private String isGeneral;

    /**
     * 单/双月/每月；0：双月；1：单月；2：每月
     */
    @ApiModelProperty(value = "单/双月/每月；0：双月；1：单月；2：每月")
    private String sinDouMonth;
    @TableField(exist = false)
    @ApiModelProperty(hidden = true)
    private String sinDouMonthName;

    /**
     * 抄表区域名称
     */
    @ApiModelProperty(value = "抄表区域名称")
    private String qymc;
    /**
     * 抄表区域编码
     */
    @ApiModelProperty(value = "抄表区域编码")
    private String qyBm;
    /**
     * 抄表区段编码
     */
    @ApiModelProperty(value = "抄表区段编码")
    private String qydbm;
    @ApiModelProperty(value = "区域段名称")
    private String qydmc;

    @ApiModelProperty(value = "月计划月份")
    private String monthPlan;


    @ApiModelProperty(value = "时间间隔")
    private Integer diffTime;
    @ApiModelProperty(value = "时间间隔中文")
    private String diffTimeStr;
    @ApiModelProperty(value = "抄表的唯一标识")
    private String soleSign;

    @ApiModelProperty(value = "总购量")
    private Long zgl;
    @ApiModelProperty(value = "差值，总购量与本次读数的差值")
    private Long diffValue;

//    @ApiModelProperty(value = "修改日期")
//    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
//    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
//    private Date updateTime;
//
//    @ApiModelProperty(value = "修改人员名称")
//    private String updateUsername;

    @ApiModelProperty(value = "水量修改内容（最新的）")
    private Readupdate readupdate;
    @ApiModelProperty(value = "水表卡号")
    private String sbkh;

}
