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

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

@Data
@ApiModel("用户档案导入DTO")
public class YhkhjbxxImport {

    @ApiModelProperty(value = "所属公司", position = 2)
    private String ssgs;

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

    @ApiModelProperty(value = "所属抄表本", position = 4)
    private String sscbb;

    @ApiModelProperty(value = "申请日期(yyyy-MM-dd)", position = 5)
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate sqrq;

    @ApiModelProperty(value = "建档日期(yyyy-MM-dd)", position = 5)
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate jdrq;

    @ApiModelProperty(value = "性别（1男，2女，3未知）[sys_child_code,pcid='9']", position = 9)
    private String xb;

    @ApiModelProperty(value = "证件类别(sys_child_code,pcid='10')", position = 10)
    private String zjlb;

    @ApiModelProperty(value = "用户状态（0:申请用户,1:正式用户,2:报停用户,3:销户用户,4:作废用户）", position = 12)
    private String yhzt;

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

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

    @ApiModelProperty(value = "是否取整", position = 15)
    private String sfqz;

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

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

    @ApiModelProperty(value = "水表信息", position = 18)
    private YhCbkxxImport yhCbkxx = new YhCbkxxImport();

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

    @ApiModelProperty(value = "操作人员编码", position = 31)
    private String czrybm;

    @ApiModelProperty(value = "操作时间(yyyy-MM-dd HH:mm:ss)", position = 32)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime czsj;

    @Data
    @ApiModel("水表档案导入DTO")
    public static class YhCbkxxImport {

        @ApiModelProperty(value = "水表类别(bm_sblb)", position = 2)
        private String sblb;

        @ApiModelProperty(value = "水表生产厂家(bm_sbsccj)", position = 3)
        private String sbsccj;

        @ApiModelProperty(value = "水表型号(bm_sbxh)", position = 4)
        private String sbxh;

        @ApiModelProperty(value = "水表口径(sys_child_code,pcid='12')", position = 5)
        private String sbkj;

        @ApiModelProperty(value = "水表量程(sys_child_code,pcid='13')", position = 6)
        private String sblc;

        // ------------------------水价---------------------
        @ApiModelProperty(value = "水价编码", position = 10)
        private String sjbm;

        @ApiModelProperty(value = "水量比例", position = 11)
        private BigDecimal slbl;

        @ApiModelProperty(value = "水价编码1", position = 12)
        private String sjbm1;

        @ApiModelProperty(value = "水量比例1", position = 13)
        private BigDecimal slbl1;

        @ApiModelProperty(value = "水价编码2", position = 14)
        private String sjbm2;

        @ApiModelProperty(value = "水量比例2", position = 15)
        private BigDecimal slbl2;

        @ApiModelProperty(value = "水价编码3", position = 16)
        private String sjbm3;

        @ApiModelProperty(value = "水量比例3", position = 17)
        private BigDecimal slbl3;

        @ApiModelProperty(value = "垃圾费标志", position = 20)
        private String ljfbz;

        @ApiModelProperty(value = "污水费标志", position = 21)
        private String wsfbz;

        @ApiModelProperty(value = "一表多价标志", position = 22)
        private String ybdjbz;
    }
}
