/*
 * Copyright [2022] [https://www.xiaonuo.vip]
 *
 * Snowy采用APACHE LICENSE 2.0开源协议，您在使用过程中，需要注意以下几点：
 *
 * 1.请不要删除和修改根目录下的LICENSE文件。
 * 2.请不要删除和修改Snowy源码头部的版权声明。
 * 3.本项目代码可免费商业使用，商业使用请保留源码和相关描述文件的项目出处，作者声明等。
 * 4.分发源码时候，请注明软件出处 https://www.xiaonuo.vip
 * 5.不可二次分发开源参与同类竞品，如有想法可联系团队xiaonuobase@qq.com商议合作。
 * 6.若您的项目无法满足以上几点，需要更多功能代码，获取Snowy商业授权许可，请在官网购买授权，地址为 https://www.xiaonuo.vip
 */
package com.unis.basic.info.modular.unitInfo.param;

import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.Max;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 单位信息表编辑参数
 *
 * @author hujinachun
 * @date 2024/04/16 09:08
 **/
@Getter
@Setter
public class UnitInfoEditParam {

    /**
     * ID
     */
    @ApiModelProperty(value = "ID", required = true, position = 1)
    @NotBlank(message = "id不能为空")
    private String id;

    /**
     * 单位代码，18位统一社会信用代码
     */
    @ApiModelProperty(value = "单位代码，18位统一社会信用代码", position = 7)
    @NotBlank(message = "单位代码不能为空")
    private String dwdm;

    /**
     * 统一单位编码，企业性质代码+统一社会信用代码
     */
    @ApiModelProperty(value = "统一单位编码，企业性质代码+统一社会信用代码", position = 8)
    @NotBlank(message = "统一单位编码不能为空")
    private String tydwbm;

    /**
     * 单位名称
     */
    @ApiModelProperty(value = "单位名称", position = 9)
    @NotBlank(message = "单位名称不能为空")
    private String dwmc;

    /**
     * 单位类型，引用LS/T 1701-2004的表A.1
     */
    @ApiModelProperty(value = "单位类型，引用LS/T 1701-2004的表A.1", position = 10)
    @NotBlank(message = "单位类型不能为空")
    //@Max(2)
    private String dwlx;

    /**
     * 注册日期，格式：yyyy-MM-dd
     */
    @ApiModelProperty(value = "注册日期，格式：yyyy-MM-dd", position = 11)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date zcrq;

    /**
     * 注册资本，单位：万元
     */
    @ApiModelProperty(value = "注册资本，单位：万元", position = 12)
    private BigDecimal zczb;

    /**
     * 资产总额，单位：万元，取最近一年财务报告数据，需每年更新
     */
    @ApiModelProperty(value = "资产总额，单位：万元，取最近一年财务报告数据，需每年更新", position = 13)
    private BigDecimal zcze;

    /**
     * 法定代表人
     */
    @ApiModelProperty(value = "法定代表人", position = 14)
    @NotBlank(message = "法定代表人不能为空")
    private String fddbr;

    /**
     * 法人身份证号
     */
    @ApiModelProperty(value = "法人身份证号", position = 15)
    @NotBlank(message = "法人身份证号不能为空")
    private String frsfzh;

    /**
     * 法人联系方式，国内标准手机号码或固定电话号码
     */
    @ApiModelProperty(value = "法人联系方式，国内标准手机号码或固定电话号码", position = 16)
    private String frlxfs;

    /**
     * 企业联系人
     */
    @ApiModelProperty(value = "企业联系人", position = 17)
    @NotBlank(message = "企业联系人不能为空")
    private String qylxr;

    /**
     * 办公电话，国内标准手机号码或固定电话号码
     */
    @ApiModelProperty(value = "办公电话，国内标准手机号码或固定电话号码", position = 18)
    @NotBlank(message = "办公电话不能为空")
    private String bgdh;

    /**
     * 注册地址
     */
    @ApiModelProperty(value = "注册地址", position = 19)
   // @NotBlank(message = "注册地址不能为空")
    private String zcdz;

    /**
     * 电子邮箱
     */
    @ApiModelProperty(value = "电子邮箱", position = 20)
    private String dzyx;

    /**
     * 企业官方网站地址
     */
    @ApiModelProperty(value = "企业官方网站地址", position = 21)
    private String qygfwzdz;

    /**
     * 传真号码，国内标准传真号码
     */
    @ApiModelProperty(value = "传真号码，国内标准传真号码", position = 22)
    private String czhm;

    /**
     * 邮政编码
     */
    @ApiModelProperty(value = "邮政编码", position = 23)
    private String yzbm;

    /**
     * 行政区划代码，引用GB/T 2260-2007年区划代码
     */
    @ApiModelProperty(value = "行政区划代码，引用GB/T 2260-2007年区划代码", position = 24)
    @NotBlank(message = "行政区划代码不能为空")
    private String xzqhdm;

    /**
     * 上级单位名称
     */
    @ApiModelProperty(value = "上级单位名称", position = 25)
    private String sjdwmc;

    /**
     * 上级单位代码，18位统一社会信用代码
     */
    @ApiModelProperty(value = "上级单位代码，18位统一社会信用代码", position = 26)
    private String sjdwdm;

    /**
     * 库区数
     */
    @ApiModelProperty(value = "库区数", position = 27)
    @NotNull(message = "库区数不能为空")
    private Integer kqs;

    /**
     * 仓房数
     */
    @ApiModelProperty(value = "仓房数", position = 28)
    @NotNull(message = "仓房数不能为空")
    private Integer cfs;

    /**
     * 油罐数
     */
    @ApiModelProperty(value = "油罐数", position = 29)
    @NotNull(message = "油罐数不能为空")
    private Integer ygs;

    /**
     * 经度，以度数（十进制）表示
     */
    @ApiModelProperty(value = "经度，以度数（十进制）表示", position = 30)
    private BigDecimal jd;

    /**
     * 纬度，以度数（十进制）表示
     */
    @ApiModelProperty(value = "纬度，以度数（十进制）表示", position = 31)
    private BigDecimal wd;

    /**
     * 单位状态，1:正常，2:退出储备粮承储
     */
    @ApiModelProperty(value = "单位状态，1:正常，2:退出储备粮承储", position = 32)
    @NotNull(message = "单位状态不能为空")
    private Integer dwzt;

    /**
     * 操作标志，i:新增数据，u:更新数据，d:删除数据
     */
    @ApiModelProperty(value = "操作标志，i:新增数据，u:更新数据，d:删除数据", position = 33)
    private String czbz;

    /**
     * 最后更新时间
     */
    @ApiModelProperty(value = "最后更新时间", position = 34)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date zhgxsj;

 /*   *//** 注册地址id  进行三级联查 *//*
    @ApiModelProperty(value = "注册地址id", position = 34)
    @NotBlank(message = "注册地址id")
    private String zcdzId;

    *//** 字典值 *//*
    private String dictValue;*/


    /** 注册地址-省  进行三级联查*/
    @ApiModelProperty(value = "注册地址-省", position = 35)
    private String zcdzProvince;

    /** 注册地址-市  进行三级联查*/
    @ApiModelProperty(value = "注册地址-市", position = 36)
    private String zcdzCity;

    /** 注册地址-区  进行三级联查*/
    @ApiModelProperty(value = "注册地址-区", position = 37)
    private String zcdzArea;


}
