fix(training): 修复培训申请流程查询中的审批时间获取问题

dev
zhaokai 2026-03-10 15:38:52 +08:00
parent 54934638cd
commit 99db5c149e
1 changed files with 13 additions and 3 deletions

View File

@ -1,5 +1,6 @@
package com.zcloud.edu.command.training; package com.zcloud.edu.command.training;
import cn.hutool.core.collection.CollUtil;
import com.zcloud.edu.domain.gateway.training.TrainingApplyProcessGateway; import com.zcloud.edu.domain.gateway.training.TrainingApplyProcessGateway;
import com.zcloud.edu.domain.model.training.TrainingApplyProcessE; import com.zcloud.edu.domain.model.training.TrainingApplyProcessE;
import com.zcloud.edu.domain.model.training.TrainingApplyProcessNodeE; import com.zcloud.edu.domain.model.training.TrainingApplyProcessNodeE;
@ -15,6 +16,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
/** /**
@ -37,9 +39,17 @@ public class TrainingApplyProcessAddExe {
List<TrainingApplyProcessDO> trainingApplyProcessDOList = trainingApplyProcessRepository.getApproveDetailList(cmd.getTrainingApplyRecordId()); List<TrainingApplyProcessDO> trainingApplyProcessDOList = trainingApplyProcessRepository.getApproveDetailList(cmd.getTrainingApplyRecordId());
//获取ttrainingApplyProcessDOList 中按照创建时间最后一条数据,将审批时间设置为当前时间 //获取ttrainingApplyProcessDOList 中按照创建时间最后一条数据,将审批时间设置为当前时间
TrainingApplyProcessDO trainingApplyProcessDO = trainingApplyProcessDOList.stream().max((o1, o2) -> o1.getCreateTime().compareTo(o2.getCreateTime())).get(); List<TrainingApplyProcessDO> collect = trainingApplyProcessDOList.stream()
trainingApplyProcessDO.setApprovalTime(LocalDateTime.now()); .filter(item -> item.getApprovalTime() != null)
trainingApplyProcessRepository.updateById(trainingApplyProcessDO); .collect(Collectors.toList());
if(CollUtil.isEmpty( collect)){
TrainingApplyProcessDO trainingApplyProcessDO = collect.stream().max((o1, o2) -> o1.getCreateTime().compareTo(o2.getCreateTime())).get();
trainingApplyProcessDO.setApprovalTime(LocalDateTime.now());
trainingApplyProcessRepository.updateById(trainingApplyProcessDO);
}
boolean res = false; boolean res = false;
try { try {
res = trainingApplyProcessGateway.add(trainingApplyProcessE); res = trainingApplyProcessGateway.add(trainingApplyProcessE);