fix:工作负载点击任务详情展示列表
This commit is contained in:
@@ -158,6 +158,7 @@ public class SpdmTaskListReq {
|
||||
private List<String> disciplineList;
|
||||
|
||||
private String taskId;
|
||||
private List<String> taskIds;
|
||||
|
||||
/**
|
||||
* 标签请求参数 设置tag1-tag10 ,taskId, runId记录文件所属节点信息
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.sdm.project.model.req;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
|
||||
import com.sdm.project.model.bo.TaskNodeTag;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
@@ -35,4 +36,6 @@ public class UserWorkloadReq {
|
||||
*/
|
||||
private String userGroupId;
|
||||
|
||||
private List<TaskNodeTag> idMap;
|
||||
|
||||
}
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package com.sdm.project.model.resp;
|
||||
|
||||
import com.sdm.common.entity.resp.project.SpdmTaskVo;
|
||||
import com.sdm.project.model.entity.SimulationTask;
|
||||
import com.sdm.project.model.vo.SpdmNewTaskVo;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
@@ -32,6 +31,6 @@ public class UserWorkloadResp {
|
||||
/**
|
||||
* 任务列表
|
||||
*/
|
||||
private List<SpdmTaskVo> taskList;
|
||||
private List<SpdmNewTaskVo> taskList;
|
||||
|
||||
}
|
||||
|
||||
@@ -2839,6 +2839,24 @@ public class TaskServiceImpl implements ITaskService {
|
||||
));
|
||||
req.setUserIdList(userIds);
|
||||
List<SpdmTaskVo> taskList = mapper.getUserExecTaskWithinTimeFrame(req, tenantId);
|
||||
|
||||
SpdmTaskListReq taskListReq = new SpdmTaskListReq();
|
||||
taskListReq.setTaskIds(taskList.stream().map(SpdmTaskVo::getUuid).toList());
|
||||
taskListReq.setType(TaskQryTypeEnum.ALL.getCode());
|
||||
taskListReq.setIdMap(req.getIdMap());
|
||||
taskListReq.setCurrent(1);
|
||||
taskListReq.setSize(9999);
|
||||
SdmResponse response = list(taskListReq);
|
||||
// 将taskVoList按uuid建立映射
|
||||
Map<String, SpdmNewTaskVo> taskVoMap = new HashMap<>();
|
||||
if (response.isSuccess()) {
|
||||
JSONObject dataObj = (JSONObject) response.getData();
|
||||
List<SpdmNewTaskVo> taskVoList = (List<SpdmNewTaskVo>) dataObj.get("data");
|
||||
if (CollectionUtils.isNotEmpty(taskVoList)) {
|
||||
taskVoMap = taskVoList.stream().collect(Collectors.toMap(SpdmNewTaskVo::getUuid, v -> v, (v1, v2) -> v1));
|
||||
}
|
||||
}
|
||||
|
||||
if (CollectionUtils.isNotEmpty(taskList)) {
|
||||
Map<String, List<SpdmTaskVo>> userTaskMap = taskList.stream().collect(Collectors.groupingBy(SpdmTaskVo::getEUserId));
|
||||
for (String eUserId : userTaskMap.keySet()) {
|
||||
@@ -2850,7 +2868,12 @@ public class TaskServiceImpl implements ITaskService {
|
||||
workloadResp.setTaskNum(userTaskList.size());
|
||||
workloadResp.setWorkNum(userTaskList.stream().filter(i -> Arrays.asList(TaskExeStatusEnum.NO_STARTED.getCode(), TaskExeStatusEnum.IN_PROGRESS.getCode()).contains(i.getExeStatus())).toList().size());
|
||||
workloadResp.setWorkload(userTaskList.stream().filter(i -> i.getDays() != null).mapToDouble(SpdmTaskVo::getDays).sum());
|
||||
workloadResp.setTaskList(userTaskList);
|
||||
// 根据uuid从taskVoMap获取对应的SpdmNewTaskVo
|
||||
Map<String, SpdmNewTaskVo> finalTaskVoMap = taskVoMap;
|
||||
workloadResp.setTaskList(userTaskList.stream()
|
||||
.map(t -> finalTaskVoMap.get(t.getUuid()))
|
||||
.filter(java.util.Objects::nonNull)
|
||||
.toList());
|
||||
userWorkloadRespList.add(workloadResp);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -838,6 +838,13 @@
|
||||
<if test="req.taskId != null and req.taskId != ''">
|
||||
and st.uuid = #{req.taskId}
|
||||
</if>
|
||||
<if test="req.taskIds != null and req.taskIds.size > 0">
|
||||
and st.uuid in (
|
||||
<foreach collection='req.taskIds' item='taskId' index='index' separator=','>
|
||||
#{taskId}
|
||||
</foreach>
|
||||
)
|
||||
</if>
|
||||
<if test="req.taskName != null and req.taskName != ''">
|
||||
<bind name="searchKey1" value="'%' + req.taskName + '%'"/>
|
||||
and task_name like #{searchKey1}
|
||||
|
||||
Reference in New Issue
Block a user