fix(dev_1.0.0_beta2):

1、工作流任务显示不正确(I9QN0R)
This commit is contained in:
wodeyangzipingpingwuqi 2024-05-20 16:59:24 +08:00 committed by opensnail
parent 1ec5a6e1d1
commit ecef18e8de
3 changed files with 17 additions and 2 deletions

View File

@ -31,6 +31,8 @@ public interface JobSummaryMapper extends BaseMapper<JobSummary> {
IPage<Task> jobTaskList(@Param("ew") Wrapper<Job> wrapper, Page<Object> page);
IPage<Task> workflowTaskList(@Param("ew") Wrapper<Job> wrapper, Page<Object> page);
List<DashboardLineResponseDO> jobLineList(@Param("dateFormat") String dateFormat, @Param("ew") Wrapper<JobSummary> wrapper);
List<Rank> dashboardRank(@Param("systemTaskType") Integer systemTaskType, @Param("ew") Wrapper<JobSummary> wrapper);

View File

@ -120,4 +120,14 @@
${ew.customSqlSegment}
GROUP BY namespace_id, group_name
</select>
<select id="workflowTaskList"
resultType="com.aizuda.snailjob.template.datasource.persistence.dataobject.DashboardRetryLineResponseDO$Task">
SELECT group_name AS groupName,
SUM(CASE WHEN (workflow_status = 1) THEN 1 ELSE 0 END) AS run,
COUNT(*) AS total
FROM sj_workflow
${ew.customSqlSegment}
GROUP BY namespace_id, group_name
</select>
</mapper>

View File

@ -162,6 +162,7 @@ public class DashBoardServiceImpl implements DashBoardService {
// 重试任务列表
Page<Object> pager = new Page<>(baseQueryVO.getPage(), baseQueryVO.getSize());
LambdaQueryWrapper<RetrySceneConfig> wrapper = new LambdaQueryWrapper<RetrySceneConfig>()
.eq(RetrySceneConfig::getNamespaceId, namespaceId)
.in(CollUtil.isNotEmpty(groupNames), RetrySceneConfig::getGroupName, groupNames);
// 针对SQL Server的分页COUNT, 自定义statement ID
@ -230,6 +231,7 @@ public class DashBoardServiceImpl implements DashBoardService {
// 任务类型
Integer systemTaskType = SystemModeEnum.JOB.name().equals(mode) ? SyetemTaskTypeEnum.JOB.getType() : SyetemTaskTypeEnum.WORKFLOW.getType();
LambdaQueryWrapper<Job> wrapper = new LambdaQueryWrapper<Job>()
.eq(Job::getDeleted, 0)
.eq(Job::getNamespaceId, namespaceId)
.in(CollUtil.isNotEmpty(groupNames), Job::getGroupName, groupNames);
// 针对SQL Server的分页COUNT, 自定义statement ID
@ -238,8 +240,9 @@ public class DashBoardServiceImpl implements DashBoardService {
pager.setTotal(jobSummaryMapper.countJobTask(wrapper));
}
IPage<DashboardRetryLineResponseDO.Task> page = jobSummaryMapper.jobTaskList(wrapper, pager);
List<DashboardRetryLineResponseVO.Task> taskList = JobSummaryResponseVOConverter.INSTANCE.convertList(page.getRecords());
IPage<DashboardRetryLineResponseDO.Task> taskIPage = SystemModeEnum.JOB.name().equals(mode) ?
jobSummaryMapper.jobTaskList(wrapper, pager) : jobSummaryMapper.workflowTaskList(wrapper, pager);
List<DashboardRetryLineResponseVO.Task> taskList = JobSummaryResponseVOConverter.INSTANCE.convertList(taskIPage.getRecords());
PageResult<List<DashboardRetryLineResponseVO.Task>> pageResult = new PageResult<>(
new PageDTO(pager.getCurrent(), pager.getSize(), pager.getTotal()),
taskList);