fix: 接单部门Dashboard统计应包含主任务+子任务数量
This commit is contained in:
parent
8f00871b6d
commit
aee1138de0
@ -2571,11 +2571,19 @@ public class TaskService {
|
||||
List<String> excludeStatuses = java.util.Arrays.asList("draft", "completed", "cancelled");
|
||||
|
||||
if (isDeptView && "receiving".equals(deptType)) {
|
||||
// 接单部门视角:统计该部门(含子部门)设计师接单的任务
|
||||
inProgressCount = taskMapper.selectCount(new LambdaQueryWrapper<Task>()
|
||||
// 接单部门视角:统计该部门(含子部门)设计师接单的任务(主任务+子任务)
|
||||
// 主任务数量
|
||||
Long mainTaskCount = taskMapper.selectCount(new LambdaQueryWrapper<Task>()
|
||||
.eq(Task::getStatus, "in_progress")
|
||||
.in(Task::getReceiverDeptId, deptAndChildIds)
|
||||
.eq(Task::getDeleted, 0));
|
||||
// 子任务数量(TaskItem表没有deleted字段)
|
||||
Long subTaskCount = taskItemMapper.selectCount(new LambdaQueryWrapper<TaskItem>()
|
||||
.eq(TaskItem::getStatus, "in_progress")
|
||||
.in(TaskItem::getReceiverDeptId, deptAndChildIds));
|
||||
inProgressCount = mainTaskCount + subTaskCount;
|
||||
log.info("接单部门进行中任务统计: mainTaskCount={}, subTaskCount={}, total={}",
|
||||
mainTaskCount, subTaskCount, inProgressCount);
|
||||
} else if (isDeptView && "demand".equals(deptType)) {
|
||||
// 需求部门视角:统计该部门发起的所有处理中任务(与前端列表显示一致)
|
||||
inProgressCount = taskMapper.selectCount(new LambdaQueryWrapper<Task>()
|
||||
@ -2606,9 +2614,17 @@ public class TaskService {
|
||||
// 已完成的任务数
|
||||
Long completedCount = 0L;
|
||||
if (isDeptView && "receiving".equals(deptType)) {
|
||||
completedCount = taskMapper.selectCount(new LambdaQueryWrapper<Task>()
|
||||
// 接单部门视角:统计主任务+子任务
|
||||
Long mainCompleted = taskMapper.selectCount(new LambdaQueryWrapper<Task>()
|
||||
.eq(Task::getStatus, "completed")
|
||||
.in(Task::getReceiverDeptId, deptAndChildIds));
|
||||
.in(Task::getReceiverDeptId, deptAndChildIds)
|
||||
.eq(Task::getDeleted, 0));
|
||||
Long subCompleted = taskItemMapper.selectCount(new LambdaQueryWrapper<TaskItem>()
|
||||
.eq(TaskItem::getStatus, "completed")
|
||||
.in(TaskItem::getReceiverDeptId, deptAndChildIds));
|
||||
completedCount = mainCompleted + subCompleted;
|
||||
log.info("接单部门已完成任务统计: mainCompleted={}, subCompleted={}, total={}",
|
||||
mainCompleted, subCompleted, completedCount);
|
||||
} else if (isDeptView && "demand".equals(deptType)) {
|
||||
completedCount = taskMapper.selectCount(new LambdaQueryWrapper<Task>()
|
||||
.eq(Task::getStatus, "completed")
|
||||
@ -2770,13 +2786,20 @@ public class TaskService {
|
||||
.ne(Task::getStatus, "draft") // 排除草稿
|
||||
.eq(Task::getDeleted, 0));
|
||||
} else if (isDeptView && "receiving".equals(deptType)) {
|
||||
// 接单部门视角:统计该部门接单的任务数
|
||||
publishedCount = taskMapper.selectCount(new LambdaQueryWrapper<Task>()
|
||||
// 接单部门视角:统计该部门接单的任务数(主任务+子任务)
|
||||
Long mainPublished = taskMapper.selectCount(new LambdaQueryWrapper<Task>()
|
||||
.in(Task::getReceiverDeptId, deptAndChildIds)
|
||||
.ge(Task::getCreateTime, monthStart)
|
||||
.le(Task::getCreateTime, monthEnd)
|
||||
.ne(Task::getStatus, "draft") // 排除草稿
|
||||
.ne(Task::getStatus, "draft")
|
||||
.eq(Task::getDeleted, 0));
|
||||
Long subPublished = taskItemMapper.selectCount(new LambdaQueryWrapper<TaskItem>()
|
||||
.in(TaskItem::getReceiverDeptId, deptAndChildIds)
|
||||
.ge(TaskItem::getCreateTime, monthStart)
|
||||
.le(TaskItem::getCreateTime, monthEnd));
|
||||
publishedCount = mainPublished + subPublished;
|
||||
log.info("接单部门接单任务统计: mainPublished={}, subPublished={}, total={}",
|
||||
mainPublished, subPublished, publishedCount);
|
||||
} else {
|
||||
// 当前用户发布的任务数
|
||||
publishedCount = taskMapper.selectCount(new LambdaQueryWrapper<Task>()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user