zhubaomin
2025-04-09 80e22bcc7af8aebed7443965655542fbe4966708
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeClient.java
New file
@@ -0,0 +1,185 @@
package com.dy.pipIrrGlobal.pojoSe;
/**
 * @author ZhuBaoMin
 * @date 2023/12/21 19:08
 * @LastEditTime 2023/12/21 19:08
 * @Description
 */
import com.alibaba.fastjson2.annotation.JSONField;
import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
import com.baomidou.mybatisplus.annotation.*;
import com.dy.common.po.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.*;
import lombok.*;
import org.hibernate.validator.constraints.Length;
import java.util.Date;
/**
 * 农户表
 */
@TableName(value="se_client", autoResultMap = true)
@Data
@Builder
@ToString
@NoArgsConstructor
@AllArgsConstructor
@Schema(name = "农户实体")
public class SeClient implements BaseEntity {
    public static final long serialVersionUID = 202401151518003L;
    /**
     * 主键
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @TableId(type = IdType.INPUT)
    @Schema(description = "实体id", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private Long id;
    /**
     * 县ID
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @Schema(description = "所在县ID", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long countyid;
    /**
     * 镇ID
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @Schema(description = "所在镇ID", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long townid;
    /**
     * 村ID
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @Schema(description = "所在村ID", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long villageid;
    /**
     * 片区ID
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @Schema(description = "所在片区ID", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long blockid;
    /**
     * 分水房ID
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @Schema(description = "所在分水房ID", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long divideid;
    /**
     * 农户姓名
     */
    @Schema(description = "农户姓名", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "农户姓名不能为空") //不能为空也不能为null
    @Length(message = "农户姓名不大于{max}字,不小于{min}字", min = 1, max = 25)
    private String name;
    /**
     * 虚拟卡号;10位,从1000000000开始
     */
    @Schema(description = "虚拟卡号", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long virtualid;
    /**
     * 农户编号;6位区划 + 4为顺序号
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @Schema(description = "农户编号", requiredMode = Schema.RequiredMode.REQUIRED)
    private String clientnum;
    /**
     * 区划编码串;省区划+市区划+县区划+镇区划+村区划
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @Schema(description = "区划编码串", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long districtnum;
    /**
     * 区划名称串;县名+镇名+村名,用于归属地
     */
    @Schema(description = "区划名称串", requiredMode = Schema.RequiredMode.REQUIRED)
    private String districttitle;
    /**
     * 手机号
     */
    @Schema(description = "农户手机号", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "农户手机号不能为空") //不能为空也不能为null
    @Length(message = "农户手机号必须{max}位数据", min = 11, max = 11)
    private String phone;
    /**
     * 身份证号
     */
    @Schema(description = "农户身份证号", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "农户身份证号不能为空") //不能为空也不能为null
    //@Length(message = "农户身份证号必须{max}位数据", min = 18, max = 18)
    private String idcard;
    /**
     * 种植面积
     */
    @Schema(description = "农户种植面积", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    private Double area;
    /**
     * 用水类型ID
     */
    @Schema(description = "用水类型ID", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private Long typeid;
    /**
     * 街道及门牌号
     */
    @Schema(description = "街道+门牌号", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @Length(message = "地址不大于{max}字,不小于{min}字", max = 50)
    private String address;
    /**
     * 备注信息
     */
    @Schema(description = "备注", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @Length(message = "备注不大于{max}字,不小于{min}字", max = 200)
    private String remarks;
    /**
     * 操作人ID
     */
    @Schema(description = "操作人ID", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @NotNull(message = "操作人ID不能为空")
    private Long operator;
    /**
     * 操作时间
     */
    @Schema(description = "操作时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private Date operatedt;
    /**
     * 禁止标志;0-未禁,1-已禁
     */
    @Schema(description = "是否禁用", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @Max(message = "是否禁用只能0或1", value = 1)
    @Min(message = "是否禁用只能0或1",value = 0)
    @TableField(updateStrategy = FieldStrategy.NEVER)
    private Byte disabled;
    /**
     * 逻辑删除标识;0-未删除,1-删除
     */
    @Schema(description = "删除标识,form表单中不存在,只在查询显示中有效", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @TableField(updateStrategy = FieldStrategy.NEVER)
    private Byte deleted;
}