/*
 * Author: wangjian
 * 生成entity
 */
package com.tofly.watermeter.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;


/**
 * 抄表数据实时表（有本系统自己管理的）；
 * 如果没有抄表，那么这里面的抄表时间、水量等信息不会变化
 *
 * @author wangjieliu
 * @date Wed Nov 10 00:00:00 CST 2021
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "TF_YWPN_READMETER_W", resultMap = "readmeterMap")
@KeySequence("TF_YWPN_READMETER_W")
@ApiModel
public class Readmeter extends Model<Readmeter> {
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId(value = "ID", type = IdType.INPUT)
    @ApiModelProperty(value = "主键ID")
    private Long id;
    /**
     * 用户编号
     */
    @ApiModelProperty(value = "用户编号")
    private String yhbh;
    /**
     * 抄表卡号
     */
    @ApiModelProperty(value = "抄表卡号")
    private String cbkh;
    /**
     * 抄表序号
     */
    @ApiModelProperty(value = "抄表序号")
    private Long cbxh;
    /**
     * 用户姓名
     */
    @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 ysxz;
    /**
     * 性质细分
     */
    @ApiModelProperty(value = "性质细分")
    private String xzxf;
    /**
     * 抄表片区（编码)
     */
    @ApiModelProperty(value = "抄表片区（编码)")
    private String cbpq;
    /**
     * 抄表本 （编码）
     */
    @ApiModelProperty(value = "抄表本 （编码）")
    private String cbb;
    /**
     * 财务日期如：（202105）
     */
    @ApiModelProperty(value = "财务日期如：（202105）")
    private String cwrq;
    /**
     * 上次读数
     */
    @ApiModelProperty(value = "上次读数")
    private Long scds;
    /**
     * 本次读数
     */
    @ApiModelProperty(value = "本次读数")
    private Long bcds;
    /**
     * 本次加减量
     */
    @ApiModelProperty(value = "本次加减量")
    private Long bcjjl;
    /**
     * 抄表标志 0未抄表，1已抄表
     */
    @ApiModelProperty(value = "抄表标志 0未抄表，1已抄表")
    private String cbbz;
    /**
     * 计费状态 1正常计费，2停用
     */
    @ApiModelProperty(value = "计费状态 1正常计费，2停用")
    private String jfzt;
    /**
     * 抄表人员
     */
    @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;
    /**
     * 计划抄表日期
     */
    @ApiModelProperty(value = "计划抄表日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date jhrq;
    /**
     * 数据下载标识,1已下载 0未下载
     */
    @ApiModelProperty(value = "数据下载标识,1已下载 0未下载")
    private String xzbs;
    /**
     * 文件ID
     */
    @ApiModelProperty(value = "文件ID")
    private String fileid;
    /**
     * 抄表方式
     */
    @ApiModelProperty(value = "抄表方式")
    private Long cbfsCode;
    /**
     * 抄表数据审核标识；0：未审核；1：已审核
     */
    @ApiModelProperty(value = "抄表数据审核标识；0：未审核；1：人工审核通过；2：转质检；3：转质检完成的")
    private String shbz;
    /**
     * 审核人
     */
    @ApiModelProperty(value = "审核人")
    private Long auditUser;
    /**
     * 审核备注
     */
    @ApiModelProperty(value = "审核备注")
    private String auditCause;
    /**
     * 审核结果；0：不合格；1：合格
     */
    @ApiModelProperty(value = "审核结果；0：不合格；1：合格")
    private String auditResult;
    /**
     * 抄表水量
     */
    @ApiModelProperty(value = "抄表水量")
    private Long cbsl;
    /**
     * 异常原因
     */
    @ApiModelProperty(value = "异常原因")
    private String auditReason;
    /**
     * 是否同步；0：未同步、1：已同步
     */
    @ApiModelProperty(value = "是否同步；0：未同步、1：已同步")
    private String issyn;
    /**
     * 前1月份水量
     */
    @ApiModelProperty(value = "前第1次水量")
    private Long month1;
    @ApiModelProperty(value = "前第1次水量的抄表时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date cbrq1;
    /**
     * 前2月份水量
     */
    @ApiModelProperty(value = "前第2次水量")
    private Long month2;
    @ApiModelProperty(value = "前第2次水量的抄表时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date cbrq2;

    /**
     * 前2月份水量
     */
    @ApiModelProperty(value = "前第3次水量")
    private Long month3;
    @ApiModelProperty(value = "前第3次水量的抄表时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date cbrq3;
    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String bz;
    /**
     * 抄表周期；存的是字符串
     */
    @ApiModelProperty(value = "抄表周期；存的是字符串")
    private String cbzq;
    /**
     * 森鑫炬同步接口返回的消息数据
     */
    @ApiModelProperty(value = "森鑫炬同步接口返回的消息数据")
    private String sxjmessage;
    /**
     * 抄表月份
     */
    @ApiModelProperty(value = "抄表月份")
    private String cbyf;
    /**
     * X坐标
     */
    @ApiModelProperty(value = "X坐标")
    private Double x;
    /**
     * Y坐标
     */
    @ApiModelProperty(value = "Y坐标")
    private Double y;
    /**
     * 地址说明
     */
    @ApiModelProperty(value = "地址说明")
    private String addressState;
    /**
     * 是否卡表；0：机械表；1：卡表
     */
    @ApiModelProperty(value = "是否卡表；0：机械表；1：卡表")
    private String isGeneral;

    @ApiModelProperty(value = "是否离线抄表；0：APP抄表；1：离线抄表；默认：0")
    private String isOffline;
    @ApiModelProperty(value = "同比1")
    private Long yearonyear1;
    @ApiModelProperty(value = "同比2")
    private Long yearonyear2;
    @ApiModelProperty(value = "同比3")
    private Long yearonyear3;

}
