package com.vincent.rsf.server.system.entity; import com.baomidou.mybatisplus.annotation.*; import com.vincent.rsf.framework.common.Cools; import com.vincent.rsf.framework.common.SpringUtils; import com.vincent.rsf.server.system.service.TenantService; import com.vincent.rsf.server.system.service.UserService; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; @Data @TableName("sys_dept") public class Dept implements Serializable { private static final long serialVersionUID = 1L; /** * ID */ @ApiModelProperty(value= "ID") @TableId(value = "id", type = IdType.AUTO) private Long id; /** * 名称 */ @ApiModelProperty(value= "名称") private String name; /** * 上级部门 */ @ApiModelProperty(value= "上级部门") private Long parentId; /** * 上级部门名 */ @ApiModelProperty(value= "上级部门名") private String parentName; /** * 关联路径 */ @ApiModelProperty(value= "关联路径") private String path; /** * 关联路径名 */ @ApiModelProperty(value= "关联路径名") private String pathName; /** * 全称 */ @ApiModelProperty(value= "全称") private String fullName; /** * 简述 */ @ApiModelProperty(value= "简述") private String brief; /** * 标识 */ @ApiModelProperty(value= "标识") private String code; /** * 类型 */ @ApiModelProperty(value= "类型") private Integer type; /** * 负责人 */ @ApiModelProperty(value= "负责人") private String leader; /** * 数量 */ @ApiModelProperty(value= "数量") private Integer count; /** * 排序 */ @ApiModelProperty(value= "排序") private Integer sort; /** * 所属机构 */ @ApiModelProperty(value= "所属机构") private Long tenantId; /** * 状态 1: 正常 0: 禁用 */ @ApiModelProperty(value= "状态 1: 正常 0: 禁用 ") private Integer status; /** * 是否删除 1: 是 0: 否 */ @ApiModelProperty(value= "是否删除 1: 是 0: 否 ") @TableLogic private Integer deleted; /** * 添加时间 */ @ApiModelProperty(value= "添加时间") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date createTime; /** * 添加人员 */ @ApiModelProperty(value= "添加人员") private Long createBy; /** * 修改时间 */ @ApiModelProperty(value= "修改时间") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date updateTime; /** * 修改人员 */ @ApiModelProperty(value= "修改人员") private Long updateBy; /** * 备注 */ @ApiModelProperty(value= "备注") private String memo; @TableField(exist = false) private List children; public String getTenantId$(){ TenantService service = SpringUtils.getBean(TenantService.class); Tenant tenant = service.getById(this.tenantId); if (!Cools.isEmpty(tenant)){ return String.valueOf(tenant.getName()); } return null; } public String getStatus$(){ if (null == this.status){ return null; } switch (this.status){ case 1: return "正常"; case 0: return "禁用"; default: return String.valueOf(this.status); } } public String getCreateTime$(){ if (Cools.isEmpty(this.createTime)){ return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime); } public String getCreateBy$(){ UserService service = SpringUtils.getBean(UserService.class); User user = service.getById(this.createBy); if (!Cools.isEmpty(user)){ return String.valueOf(user.getNickname()); } return null; } public String getUpdateTime$(){ if (Cools.isEmpty(this.updateTime)){ return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime); } public String getUpdateBy$(){ UserService service = SpringUtils.getBean(UserService.class); User user = service.getById(this.updateBy); if (!Cools.isEmpty(user)){ return String.valueOf(user.getNickname()); } return null; } public Boolean getStatusBool(){ if (null == this.status){ return null; } switch (this.status){ case 1: return true; case 0: return false; default: return null; } } }