|
@@ -11,10 +11,7 @@ import org.dromara.management.domain.DevelopmentOrder;
|
|
|
import org.dromara.management.domain.DevelopmentOrderRemark;
|
|
|
import org.dromara.management.domain.bo.DevelopmentOrderBo;
|
|
|
import org.dromara.management.domain.bo.DevelopmentOrderRemarkBo;
|
|
|
-import org.dromara.management.domain.vo.DevelopOrderLogsVo;
|
|
|
-import org.dromara.management.domain.vo.DevelopmentOrderRemarkVo;
|
|
|
-import org.dromara.management.domain.vo.DevelopmentOrderTableDataInfo;
|
|
|
-import org.dromara.management.domain.vo.DevelopmentOrderVo;
|
|
|
+import org.dromara.management.domain.vo.*;
|
|
|
import org.dromara.management.mapper.DevelopOrderLogsMapper;
|
|
|
import org.dromara.management.mapper.DevelopmentOrderMapper;
|
|
|
import org.dromara.management.mapper.DevelopmentOrderRemarkMapper;
|
|
@@ -29,10 +26,14 @@ import org.dromara.common.core.utils.StringUtils;
|
|
|
import org.dromara.common.mybatis.core.page.PageQuery;
|
|
|
import org.dromara.common.satoken.utils.LoginHelper;
|
|
|
import org.dromara.management.service.developmentStateModeImpl.*;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
+import java.time.Duration;
|
|
|
import java.time.LocalDate;
|
|
|
+import java.time.LocalDateTime;
|
|
|
+import java.time.ZoneId;
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
import java.time.format.DateTimeParseException;
|
|
|
import java.util.*;
|
|
@@ -301,6 +302,77 @@ public class DevelopmentOrderServiceImpl extends ServiceImpl<DevelopmentOrderMap
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public List<ExportDevelopmentOrderDesignerTaskVo> getExportDesignerTaskList(PageQuery pageQuery, DevelopmentOrderBo developmentOrderBo) {
|
|
|
+ List<ExportDevelopmentOrderDesignerTaskVo> list = new ArrayList<>();
|
|
|
+ //获取数据
|
|
|
+ List<DevelopmentOrderVo> data = getDesignerTaskList(developmentOrderBo,pageQuery).getData().getList();
|
|
|
+ //转换vo
|
|
|
+ for (DevelopmentOrderVo row : data) {
|
|
|
+ ExportDevelopmentOrderDesignerTaskVo vo = new ExportDevelopmentOrderDesignerTaskVo();
|
|
|
+ BeanUtils.copyProperties(row,vo);
|
|
|
+ Integer status = row.getStatus();
|
|
|
+ //根据状态获取对应任务的时间
|
|
|
+ Date start = null;
|
|
|
+ Date end = null;
|
|
|
+ if (Objects.nonNull(status)) {
|
|
|
+ switch(status){
|
|
|
+ //画图
|
|
|
+ case 1:
|
|
|
+ start = row.getStatus_1StartTime();
|
|
|
+ end = row.getStatus_1EndTime();
|
|
|
+ break;
|
|
|
+ //确认
|
|
|
+ case 2:
|
|
|
+ start = row.getStatus_2StartTime();
|
|
|
+ end = row.getStatus_2EndTime();
|
|
|
+ break;
|
|
|
+ //调色
|
|
|
+ case 3:
|
|
|
+ start = row.getStatus_3StartTime();
|
|
|
+ end = row.getStatus_3EndTime();
|
|
|
+ break;
|
|
|
+ //排版
|
|
|
+ case 4:
|
|
|
+ start = row.getStatus_4StartTime();
|
|
|
+ end = row.getStatus_4EndTime();
|
|
|
+ break;
|
|
|
+ //打版
|
|
|
+ case 5:
|
|
|
+ start = row.getStatus_5StartTime();
|
|
|
+ end = row.getStatus_5EndTime();
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ LocalDateTime startTime = null;
|
|
|
+ LocalDateTime endTime = null;
|
|
|
+ if (Objects.nonNull(start)) {
|
|
|
+ startTime = start.toInstant()
|
|
|
+ .atZone(ZoneId.systemDefault())
|
|
|
+ .toLocalDateTime();
|
|
|
+ }
|
|
|
+ if (Objects.nonNull(end)) {
|
|
|
+ endTime = end.toInstant()
|
|
|
+ .atZone(ZoneId.systemDefault())
|
|
|
+ .toLocalDateTime();
|
|
|
+ }
|
|
|
+ if (Objects.nonNull(startTime)) {
|
|
|
+ vo.setTaskStatus("进行中");
|
|
|
+ }
|
|
|
+ vo.setStartTime(startTime);
|
|
|
+ vo.setEndTime(endTime);
|
|
|
+ if (Objects.nonNull(startTime) && Objects.nonNull(endTime)) {
|
|
|
+ Duration duration = Duration.between(startTime, endTime);
|
|
|
+ long hours = duration.toHours();
|
|
|
+ vo.setTime(hours + "H");
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ vo.setTaskStatus("未开始");
|
|
|
+ }
|
|
|
+ list.add(vo);
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public DevelopmentOrderTableDataInfo<DevelopmentOrderVo> getDesignerTaskList(DevelopmentOrderBo developmentOrderBo, PageQuery pageQuery) {
|
|
|
// 构建动态查询条件
|