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

import com.baomidou.mybatisplus.annotation.*;
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 lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

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

/**
 * 水表换表记录表
 *
 * @author admin
 * @date Wed Mar 10 00:00:00 CST 2021
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "TF_YWPN_BWHBDATAIL_W", resultMap = "bwhbdatailMap")
@KeySequence("TF_YWPN_BWHBDATAIL_W")
@ApiModel
@Accessors(chain = true)
public class Bwhbdatail extends Model<Bwhbdatail> {
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId(value = "ID", type = IdType.INPUT)
    @ApiModelProperty(value = "主键ID")
    private Long id;
    /**
     * 流水编号
     */
    @ApiModelProperty(value = "流水编号")
    private String bwLsbh;
    /**
     * 换表型选择（表黑/雾等）
     */
    @ApiModelProperty(value = "换表类型选择（表黑/雾等）")
    private Long bwHblx;
    /**
     * 新表编号
     */
    @ApiModelProperty(value = "新表编号")
    private String bwXbbh;
    /**
     * 新表厂家
     */
    @ApiModelProperty(value = "新表厂家")
    private String bwXbcj;
    /**
     * 新表类型
     */
    @ApiModelProperty(value = "新表类型")
    private String bwXblx;
    /**
     * 新表口径
     */
    @ApiModelProperty(value = "新表口径")
    private String bwXbkj;
    /**
     * 新表起度
     */
    @ApiModelProperty(value = "新表起度")
    private Long bwXbqd;
    /**
     * 旧表编号
     */
    @ApiModelProperty(value = "旧表编号")
    private String bwJbbh;
    /**
     * 旧表厂家
     */
    @ApiModelProperty(value = "旧表厂家")
    private String bwJbcj;
    /**
     * 旧表类型
     */
    @ApiModelProperty(value = "旧表类型")
    private String bwJblx;
    /**
     * 旧表口径
     */
    @ApiModelProperty(value = "旧表口径")
    private String bwJbkj;
    /**
     * 旧表止度
     */
    @ApiModelProperty(value = "旧表止度")
    private Long bwJbzd;
    /**
     * 换表原因
     */
    @ApiModelProperty(value = "换表原因")
    private String bwHbyy;
    /**
     * 换表人员
     */
    @ApiModelProperty(value = "换表人员")
    private String bwHbry;
    @TableField(exist = false)
    private String hbryName;


    /**
     * 换表日期
     */
    @ApiModelProperty(value = "换表日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date bwHbrq;
    /**
     * 操作人员
     */
    @ApiModelProperty(value = "操作人员")
    @TableField(value = "CREATE_USER", fill = FieldFill.INSERT)
    private Long createUser;
    @TableField(exist = false)
    private String createUserName;
    /**
     * 操作时间
     */
    @ApiModelProperty(value = "操作时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "CREATE_DATE", fill = FieldFill.INSERT)
    private Date createDate;
    /**
     * 备注说明
     */
    @ApiModelProperty(value = "备注说明")
    private String bwBz;

    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private Bwrksbdatail sbdetail;
    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private String hblxName;

    /**
     * 客户编号
     */
    @ApiModelProperty(value = "客户编号")
    private String bwKhbh;
    /**
     * 客户姓名
     */
    @ApiModelProperty(value = "客户姓名")
    private String bwKhxm;
    /**
     * 客户地址
     */
    @ApiModelProperty(value = "客户地址")
    private String bwKhdz;
    /**
     * 客户电话
     */
    @ApiModelProperty(value = "客户电话")
    private String bwKhdh;

    @ApiModelProperty(value = "旧表安装日期")
    private Date jbAzrq;

    @ApiModelProperty(value = "旧表使用时长")
    private Long syDate;

    @ApiModelProperty(value = "换表水量")
    private String hbsl;
    @ApiModelProperty(value = "换表水量计算方式（1:立即2:下次3:不计算）")
    private String jsfs;
    @ApiModelProperty(value = "识别码")
    private String sbm;
    @ApiModelProperty(value = "铅封号")
    private String qfh;
    @ApiModelProperty(value = "水表型号（1:未知）")
    private String sbxh;
    @ApiModelProperty(value = "水表安装方式（1:立式 2:卧式）")
    private String azfs;
    @ApiModelProperty(value = "申请人")
    private String sqr;
    @ApiModelProperty(value = "旧表起度")
    private Long bwJbqd;
    @ApiModelProperty(value = "换表部门")
    private Long bwHbbm;
    @ApiModelProperty(value = "是否同步 0 暂存 1 同步 2 未同步 3 无需同步")
    private Long isSync;
    @ApiModelProperty(value = "同步消息")
    private String msg;
    @ApiModelProperty(value = "审核意见")
    private String auditOpinion;

    private String signature;
    @ApiModelProperty(value = "签名路径")
    @TableField(exist = false)
    private String signaturePath;

    private String image;
    @ApiModelProperty(value = "图片路径")
    @TableField(exist = false)
    private List<Map> imagePath;

    @ApiModelProperty(value = "农村用水")
    private String ncys;
    @ApiModelProperty(value = "加压站")
    private String jyz;

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

    @ApiModelProperty(value = "水表型号code")
    private String modelCode;
    @ApiModelProperty(value = "型号名字")
    private String modelName;

    @ApiModelProperty(value = "水表位置")
    private String location;

    @ApiModelProperty(value = "表箱")
    private String meterBox;

}
