package com.ycl.platform.domain.vo; import annotation.Excel; import com.fasterxml.jackson.annotation.JsonFormat; import com.ycl.platform.base.AbsVo; import com.ycl.platform.domain.entity.WorkOrder; import java.time.LocalDateTime; import java.util.Date; import java.util.List; import enumeration.general.WorkOrderStatusEnum; import org.springframework.lang.NonNull; import org.springframework.beans.BeanUtils; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; /** * 工单展示 * * @author xp * @since 2024-03-05 */ @Data public class WorkOrderVO{ /** 工单号 */ @Excel(name = "工单号",sort = 1) private String workOrderNo; private Integer id; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = "故障时间",sort = 7,dateFormat = "yyyy-MM-dd HH:mm:ss") private Date createTime; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date updateTime; /** 状态 */ private WorkOrderStatusEnum status; /** 运维单位 */ private Integer unitId; @Excel(name = "运维单位",sort = 6) private String unitName; private String unitContact; private String unitContactPhone; /** 工单来源/设备名称 */ @Excel(name = "设备名称",sort = 3,width = 25) private String source; /** ip */ @Excel(name = "IP",sort = 5) private String ip; /** * 设备编号 */ @Excel(name = "设备编号",sort = 2,width = 22) private String serialNumber; /** * 考核标签 * @param entity * @param vo * @return */ @Excel(name = "考核标签",sort = 4) private String tag; /** * 是否重点点位 */ private Boolean importantTag; private Boolean importantCommandImageTag; private Boolean deptTag; private Boolean provinceTagVideo; private Boolean provinceTagCar; private Boolean provinceTagFace; /** 故障类型 */ private List errorTypeList; /** 故障类型 */ @Excel(name = "故障类型",sort = 8) private String errorType; /** * 设备标签 * @param entity * @param vo * @return */ @Excel(name = "设备标签",sort = 9,width = 30) private String dynamicTag; /** 工单检测图片 */ private String imgListStr; private List imgList; /** 运维人员 */ private Integer ywPeopleId; private Long pointId; private String ywPeopleName; /** 运维处理时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime ywHandleTime; /** 运维结果 */ private String ywResult; /** 运维情况 */ private String ywCondition; /** 运维检测结果 */ private String ywCheckResult; /** 0未超时 1超时 */ private Integer overtime; /** 下发时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date distributeTime; private Date auditTime; /** 下发人 */ private String realName; /** * 是否扣过积分 */ private Boolean deduct; public static WorkOrderVO getVoByEntity(@NonNull WorkOrder entity, WorkOrderVO vo) { if(vo == null) { vo = new WorkOrderVO(); } BeanUtils.copyProperties(entity, vo); return vo; } }