package com.vci.ubcs.system.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.util.Date; import java.util.Objects; /** * 密码策略(PlSysStrategy)实体类 * * @author ldc * @since 2023-03-20 15:00:22 */ @Data @TableName("pl_sys_pwdstrategy") @ApiModel(value = "Strategy对象", description = "Strategy对象") public class Strategy implements Serializable { private static final long serialVersionUID = 420195522547332354L; /** * 主键 */ @JsonSerialize(using = ToStringSerializer.class) @ApiModelProperty(value = "主键") @TableId(value = "id", type = IdType.ASSIGN_ID) private Long id; /** * 策略名称 */ @ApiModelProperty(value = "策略名称") private String strategyName; /** * 密码最小长度 */ @ApiModelProperty(value = "密码最小长度") private Long minPwdLen; /** * 密码最大长度 */ @ApiModelProperty(value = "密码最大长度") private Long maxPwdLen; /** * 密码组合方式 */ @ApiModelProperty(value = "密码组合方式") private String combinationIds; /** * 必填种类 */ @ApiModelProperty(value = "必填种类") private Long requiredType; /** * 过期时间 */ @ApiModelProperty(value = "过期时间") private Long expirationTime; /** * 提醒时间 */ @ApiModelProperty(value = "提醒时间") private Long reminderTime; /** * 锁定次数 */ @ApiModelProperty(value = "锁定次数") private Long lockingNum; /** * 锁定时间 */ @ApiModelProperty(value = "锁定时间") private Long lockingTime; /** * 描述 */ @ApiModelProperty(value = "描述") @TableField("\"DESC\"") private String desc; /** * 是否为默认策略 */ @ApiModelProperty(value = "是否为默认策略,是否为默认,1代表默认,0代表非默认") private Long isDefault; /** * 创建时间 */ @DateTimeFormat( pattern = "yyyy-MM-dd HH:mm:ss" ) @JsonFormat( pattern = "yyyy-MM-dd HH:mm:ss" ) @ApiModelProperty(value = "创建时间") private Date createTime; /** * 创建人 */ @ApiModelProperty(value = "创建人") private String createUser; /** * 修改时间 */ @DateTimeFormat( pattern = "yyyy-MM-dd HH:mm:ss" ) @JsonFormat( pattern = "yyyy-MM-dd HH:mm:ss" ) @ApiModelProperty(value = "修改时间") private Date updateTime; /** * 修改人 */ @ApiModelProperty(value = "修改人") private String updateUser; /** * 授权人 */ @ApiModelProperty(value = "授权人") private String licensors; /** * 组合名称 */ @ApiModelProperty(value = "组合名称") @TableField(exist = false) private String combinationNames; /** * 租户ID */ @ApiModelProperty(value = "租户ID") private String tenantId; @Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } if (!super.equals(o)) { return false; } Strategy strategy = (Strategy) o; return Objects.equals(id, strategy.id) && Objects.equals(strategyName, strategy.strategyName) && Objects.equals(minPwdLen, strategy.minPwdLen) && Objects.equals(maxPwdLen, strategy.maxPwdLen) && Objects.equals(combinationIds, strategy.combinationIds) && Objects.equals(requiredType, strategy.requiredType) && Objects.equals(expirationTime, strategy.expirationTime) && Objects.equals(reminderTime, strategy.reminderTime) && Objects.equals(lockingNum, strategy.lockingNum) && Objects.equals(lockingTime, strategy.lockingTime) && Objects.equals(desc, strategy.desc) && Objects.equals(isDefault, strategy.isDefault); } @Override public int hashCode() { return Objects.hash(super.hashCode(), id, strategyName, minPwdLen, maxPwdLen, combinationIds, requiredType, expirationTime, reminderTime, lockingNum, lockingTime, desc, isDefault); } }