package com.tofly.feesapi.yhgl.entity.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.tofly.feesapi.common.constant.YhztEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;


/**
 * 用户档案
 */
@Data
@ApiModel("用户档案更新DTO")
public class YhKhjbxxUpdate {

    @ApiModelProperty(value = "用户编号", required = true, position = 1, example = "61006501")
    private String yhbh;

//    @ApiModelProperty("原用户号")
//    private String ykhbh;

    @ApiModelProperty(value = "所属公司编码", required = true, position = 2, example = "1")
    private String ssgs;

    @ApiModelProperty(value = "所属抄表片区编码", position = 3, example = "1")
    private String sscbpq;

    @ApiModelProperty(value = "所属抄表本编码", required = true, position = 4, example = "1")
    private String sscbb;

    @ApiModelProperty("申请日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date sqrq;

    @ApiModelProperty("建档日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date jdrq;

    @ApiModelProperty(value = "用户姓名", required = true, position = 6, example = "张三")
    private String yhxm;

    @ApiModelProperty(value = "用户地址", required = true, position = 7, example = "xx小区x栋")
    private String yhdz;

    @ApiModelProperty(value = "联系电话", position = 8, example = "13925426572")
    private String lxdh;

    @ApiModelProperty(value = "性别编码", position = 9, example = "1")
    private String xb;

    @ApiModelProperty(value = "证件类别编码", position = 10, example = "1")
    private String zjlb;

    @ApiModelProperty(value = "证件号码", position = 11, example = "520606201405082758")
    private String zjhm;

    @ApiModelProperty(value = "用户状态", position = 12, example = "申请用户")
    private YhztEnum yhzt = YhztEnum.正式用户;

    @ApiModelProperty(value = "是否特困户（1是，0否）", position = 13, example = "1")
    private String tkhbz = "0";

    @ApiModelProperty(value = "是否取整（1是，0否）", position = 15, example = "0")
    private String sfqz = "0";

    @ApiModelProperty(value = "备注", position = 16, example = "备注")
    private String bz;

    @ApiModelProperty(value = "发票开具姓名", position = 17)
    private String fpName;

    @ApiModelProperty(value = "发票开具纳税人识别号",position = 18)
    private String fpNsrsbh;

    @ApiModelProperty(value = "发票开具地址",position = 19)
    private String fpDz;

    @ApiModelProperty(value = "发票开具联系电话",position = 20)
    private String fpLxdh;

    @ApiModelProperty(value = "发票开具开户行",position = 21)
    private String fpBankname;

    @ApiModelProperty(value = "发票开具银行账号",position = 22)
    private String fpBankcode;

    @ApiModelProperty(value = "购方邮箱",position = 23)
    private String email;

    @ApiModelProperty(value = "推送方式-1不推送，0邮箱1手机2邮箱、手机",position = 24)
    private String pushmode;

    @ApiModelProperty(value = "发票类型;0普票，1 专票",position = 25)
    private String fplx;

    @ApiModelProperty(value = "发票开具备注",position = 26)
    private String fpBz;

    @ApiModelProperty("客户编码")
    private String khbm;

    @ApiModelProperty("大小户 0-小户 1-大户")
    private Integer dxh;

    @ApiModelProperty("主户标志(大户下有多个水表，主户是用于统一收费、开票信息的唯一对象) 0-否 1-是")
    private Integer zhbz;

    @ApiModelProperty("曾用名,多个曾用名用','分隔")
    private String cym;

    @ApiModelProperty("用水地址")
    private String ysdz;

}
