package com.zy.sc.manager.entity; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.annotations.TableField; import com.baomidou.mybatisplus.annotations.TableId; import com.baomidou.mybatisplus.annotations.TableName; import com.baomidou.mybatisplus.enums.IdType; import com.core.common.Cools; import com.core.common.SpringUtils; import com.zy.sc.manager.service.IssueTypeService; import com.zy.sc.system.entity.Host; import com.zy.sc.system.entity.User; import com.zy.sc.system.service.HostService; import com.zy.sc.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.ArrayList; import java.util.Date; import java.util.List; @Data @TableName("man_issue") public class Issue 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 uuid; /** * 所属项目 */ @ApiModelProperty(value= "所属项目") @TableField("host_id") private Long hostId; /** * 故障类型 */ @ApiModelProperty(value= "故障类型") @TableField("issue_type") private Long issueType; /** * 问题概述 */ @ApiModelProperty(value= "问题概述") private String title; /** * 故障原因 */ @ApiModelProperty(value= "故障原因") private String reason; /** * 解决办法 */ @ApiModelProperty(value= "解决办法") private String deal; /** * 文件列表 */ @ApiModelProperty(value= "文件列表") private String files; /** * 图片 */ @ApiModelProperty(value= "图片") private String img; /** * 发生日期 */ @ApiModelProperty(value= "发生日期") @TableField("start_time") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date startTime; /** * 处理日期 */ @ApiModelProperty(value= "处理日期") @TableField("end_time") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date endTime; /** * 更新日期 */ @ApiModelProperty(value= "更新日期") @TableField("last_time") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date lastTime; /** * 发现人 */ @ApiModelProperty(value= "发现人") private String discoverer; /** * 联系方式 */ @ApiModelProperty(value= "联系方式") private String tel; /** * 供应商 */ @ApiModelProperty(value= "供应商") private String dealer; /** * 流程 1: 草稿 2: 提交 3: 已读 4: 作业 5: 完成 6: 取消 */ @ApiModelProperty(value= "流程 1: 草稿 2: 提交 3: 已读 4: 作业 5: 完成 6: 取消") private Integer settle; /** * 状态 1: 正常 0: 禁用 */ @ApiModelProperty(value= "状态 1: 正常 0: 禁用 ") private Integer status; /** * 添加人员 */ @ApiModelProperty(value= "添加人员") @TableField("create_by") private Long createBy; /** * 添加时间 */ @ApiModelProperty(value= "添加时间") @TableField("create_time") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date createTime; /** * 修改人员 */ @ApiModelProperty(value= "修改人员") @TableField("update_by") private Long updateBy; /** * 修改时间 */ @ApiModelProperty(value= "修改时间") @TableField("update_time") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date updateTime; /** * 备注 */ @ApiModelProperty(value= "备注") private String memo; public Issue() {} public Issue(String uuid,Long hostId,Long issueType,String title,String reason,String deal,String files,String img,Date startTime,Date endTime,Date lastTime,String discoverer,String tel,String dealer,Integer settle,Integer status,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) { this.uuid = uuid; this.hostId = hostId; this.issueType = issueType; this.title = title; this.reason = reason; this.deal = deal; this.files = files; this.img = img; this.startTime = startTime; this.endTime = endTime; this.lastTime = lastTime; this.discoverer = discoverer; this.tel = tel; this.dealer = dealer; this.settle = settle; this.status = status; this.createBy = createBy; this.createTime = createTime; this.updateBy = updateBy; this.updateTime = updateTime; this.memo = memo; } // Issue issue = new Issue( // null, // 故障编号 // null, // 所属项目 // null, // 故障类型 // null, // 问题概述 // null, // 故障原因 // null, // 解决办法 // null, // 文件列表 // null, // 图片 // null, // 发生日期 // null, // 处理日期 // null, // 更新日期 // null, // 发现人 // null, // 联系方式 // null, // 供应商 // null, // // null, // 状态 // null, // 添加人员 // null, // 添加时间 // null, // 修改人员 // null, // 修改时间 // null // 备注 // ); public String getHostId$(){ HostService service = SpringUtils.getBean(HostService.class); Host host = service.selectById(this.hostId); if (!Cools.isEmpty(host)){ return String.valueOf(host.getName()); } return null; } public String getIssueType$(){ IssueTypeService service = SpringUtils.getBean(IssueTypeService.class); IssueType issueType = service.selectById(this.issueType); if (!Cools.isEmpty(issueType)){ return String.valueOf(issueType.getName()); } return null; } public String getStartTime$(){ if (Cools.isEmpty(this.startTime)){ return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.startTime).substring(0, 10); } public String getEndTime$(){ if (Cools.isEmpty(this.endTime)){ return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.endTime); } public String getLastTime$(){ if (Cools.isEmpty(this.lastTime)){ return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.lastTime); } public String getSettle$(){ if (null == this.settle){ return null; } switch (this.settle){ case 1: return "草稿"; case 2: return "提交"; case 3: return "已读"; case 4: return "作业"; case 5: return "完成"; case 6: return "取消"; default: return String.valueOf(this.status); } } 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 getCreateBy$(){ UserService service = SpringUtils.getBean(UserService.class); User user = service.selectById(this.createBy); if (!Cools.isEmpty(user)){ return String.valueOf(user.getNickname()); } return null; } public String getCreateTime$(){ if (Cools.isEmpty(this.createTime)){ return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime); } public String getUpdateBy$(){ UserService service = SpringUtils.getBean(UserService.class); User user = service.selectById(this.updateBy); 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 List getImgArr(){ List list = JSON.parseArray(this.img, String.class); if (list == null) { list = new ArrayList<>(); } return list; } public List getVideoArr(){ if (Cools.isEmpty(this.files)) { return new ArrayList<>(); } List list = JSON.parseArray(this.files, String.class); if (list == null) { list = new ArrayList<>(); } return list; } public Boolean getOnline() { return this.settle==5; } }