package com.gkhy.assess.system.domain; import com.baomidou.mybatisplus.annotation.*; import java.io.Serializable; import java.time.LocalDateTime; import java.util.List; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonInclude; import com.gkhy.assess.common.annotation.DataDesensitizationType; import com.gkhy.assess.common.domain.BaseEntity; import com.gkhy.assess.common.enums.SensitiveTypeEnum; import com.gkhy.assess.common.validate.AgencyGroup; import com.gkhy.assess.common.validate.ExpertGroup; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; import lombok.experimental.Accessors; import org.hibernate.validator.constraints.Length; import org.springframework.format.annotation.DateTimeFormat; import javax.validation.Valid; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import javax.validation.constraints.Pattern; import static com.fasterxml.jackson.annotation.JsonInclude.Include.NON_NULL; /** *
* 机构表 *
* * @author kzy * @since 2023-11-23 16:04:36 */ @Getter @Setter @TableName("sys_agency") @ApiModel(value = "SysAgency对象", description = "机构表") @Accessors(chain = true) @JsonInclude(NON_NULL) public class SysAgency extends BaseEntity { private static final long serialVersionUID = 1L; @TableId(value = "id", type = IdType.AUTO) private Long id; @NotBlank(message = "机构名称不能为空") @Length(min = 1, max = 50, message = "机构名称不能超过50个字符") @ApiModelProperty("机构名称") @TableField("name") private String name; @NotBlank(message = "社会信用代码不能为空") @ApiModelProperty(value = "社会信用代码",required = true) @TableField("credit_code") private String creditCode; @NotNull(message = "机构属性不能为空") @ApiModelProperty(value = "机构属性(0疆内,1疆外,默认0)",required = true) @TableField("attribute") private Integer attribute; @ApiModelProperty("省") @TableField("province") private String province; // @NotBlank(message = "市不能为空") @ApiModelProperty(value = "市",required = true) @TableField("city") private String city; // @NotBlank(message = "区不能为空") @ApiModelProperty(value = "区",required = true) @TableField("district") private String district; @NotBlank(message = "经营地址不能为空") @Length(min = 1, max = 100, message = "经营地址不能超过100个字符") @ApiModelProperty(value = "经营地址",required = true) @TableField("address") private String address; @ApiModelProperty("机构网址") @TableField("web") private String web; @NotBlank(message = "法定代表人不能为空") @ApiModelProperty(value = "法定代表人",required = true) @TableField("legal_person") private String legalPerson; @DataDesensitizationType(type = SensitiveTypeEnum.MOBILE_PHONE) @NotBlank(message = "法人电话不能为空") @Length(min = 11, max = 11, message = "手机号只能为11位") @Pattern(regexp = "^[1][3,4,5,6,7,8,9][0-9]{9}$",message = "手机号码有误!") @ApiModelProperty(value = "法人电话",required = true) @TableField("legal_phone") private String legalPhone; @NotBlank(message = "机构负责人不能为空") @ApiModelProperty(value = "机构负责人",required = true) @TableField("manager") private String manager; @DataDesensitizationType(type = SensitiveTypeEnum.MOBILE_PHONE) @NotBlank(message = "负责人电话不能为空") @Length(min = 11, max = 11, message = "手机号只能为11位") @Pattern(regexp = "^[1][3,4,5,6,7,8,9][0-9]{9}$",message = "手机号码有误!") @ApiModelProperty(value = "负责人电话",required = true) @TableField("manager_phone") private String managerPhone; @NotBlank(message = "资质证书编号不能为空") @Length(min = 1, max = 20, message = "资质证书编号不能超过20位") @ApiModelProperty(value = "资质证书编号",required = true) @TableField("cert_number") private String certNumber; @NotNull(message = "资质证书图片路径不能为空") @ApiModelProperty("资质证书图片路径,创建机构时传入") @TableField("cert_path") private String certPath; @NotNull(message = "发证日期不能为空") @ApiModelProperty(value = "发证日期",required = true) @TableField("issue_date") // @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") // @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime issueDate; @NotNull(message = "有效日期不能为空") @ApiModelProperty(value = "有效日期",required = true) @TableField("valid_date") // @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") // @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime validDate; @NotBlank(message = "固定资产总值不能为空") @ApiModelProperty(value = "固定资产总值",required = true) @TableField("asset_value") private String assetValue; @NotBlank(message = "工作场所建筑面积不能为空") @ApiModelProperty(value = "工作场所建筑面积",required = true) @TableField("work_area") private String workArea; @NotBlank(message = "档案室面积不能为空") @ApiModelProperty(value = "档案室面积",required = true) @TableField("archive_area") private String archiveArea; @NotBlank(message = "注册地址不能为空") @Length(min = 1, max = 100, message = "注册地址不能超过100个字符") @ApiModelProperty(value = "注册地址",required = true) @TableField("reg_address") private String regAddress; @NotBlank(message = "业务范围不能为空") @ApiModelProperty(value = "业务范围,字典id,多个逗号隔开",required = true) @TableField("business") private String business; // @NotBlank(message = "机构信息上报表存放路径不能为空") @ApiModelProperty(value = "机构信息上报表存放路径",required = true) @TableField("report_path") private String reportPath; @ApiModelProperty("删除标志(0代表存在,1代表删除,默认0)") @TableField("del_flag") private Integer delFlag; @ApiModelProperty("是否公示(0代表公示,1代表不公示,默认0)") @TableField("publication") private Integer publication; @ApiModelProperty(value = "业务范围,字典对应的名称") @TableField(exist = false) private List