后端任务关联相关
This commit is contained in:
@@ -83,6 +83,22 @@ public class SysOaTaskController extends BaseController {
|
||||
return R.ok(iSysOaTaskService.listDocumentProject(projectId));
|
||||
}
|
||||
|
||||
/**
|
||||
* 按总包项目+阶段查询任务
|
||||
*/
|
||||
@GetMapping("/rm/tasks")
|
||||
public R<List<SysOaTaskVo>> listByRmProject(@RequestParam Long projectId, @RequestParam(required = false) String stageCode) {
|
||||
return R.ok(iSysOaTaskService.queryByRmProject(projectId, stageCode));
|
||||
}
|
||||
|
||||
/**
|
||||
* 按总包项目统计各阶段任务数
|
||||
*/
|
||||
@GetMapping("/rm/taskCount")
|
||||
public R<List<java.util.Map<String, Object>>> taskCountByStage(@RequestParam Long projectId) {
|
||||
return R.ok(iSysOaTaskService.countByRmProjectStage(projectId));
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出任务管理列表
|
||||
*/
|
||||
|
||||
@@ -34,6 +34,10 @@ public class SysOaTask extends BaseEntity {
|
||||
* 项目ID
|
||||
*/
|
||||
private Long projectId;
|
||||
/**
|
||||
* 阶段编码
|
||||
*/
|
||||
private String stageCode;
|
||||
/**
|
||||
* 任务主题
|
||||
*/
|
||||
|
||||
@@ -37,6 +37,11 @@ public class SysOaTaskBo extends BaseEntity {
|
||||
*/
|
||||
private Long projectId;
|
||||
|
||||
/**
|
||||
* 阶段编码
|
||||
*/
|
||||
private String stageCode;
|
||||
|
||||
/**
|
||||
* 任务主题
|
||||
*/
|
||||
|
||||
@@ -38,6 +38,11 @@ public class SysOaTaskVo {
|
||||
@ExcelProperty(value = "项目ID")
|
||||
private Long projectId;
|
||||
|
||||
/**
|
||||
* 阶段编码
|
||||
*/
|
||||
private String stageCode;
|
||||
|
||||
/**
|
||||
* 任务主题
|
||||
*/
|
||||
|
||||
@@ -11,6 +11,7 @@ import com.ruoyi.oa.domain.vo.SysOaTaskItemVo;
|
||||
import com.ruoyi.common.core.mapper.BaseMapperPlus;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@@ -61,6 +62,12 @@ public interface SysOaTaskMapper extends BaseMapperPlus<SysOaTaskMapper, SysOaTa
|
||||
*/
|
||||
List<SysOaTaskItemVo> selectTaskItemsByTaskId(Long taskId);
|
||||
|
||||
/**
|
||||
* 按总包项目统计各阶段任务数
|
||||
*/
|
||||
@Select("SELECT stage_code AS stageCode, COUNT(*) AS taskCount FROM sys_oa_task WHERE project_id = #{projectId} AND del_flag = 0 GROUP BY stage_code")
|
||||
List<java.util.Map<String, Object>> countByRmProjectStage(@Param("projectId") Long projectId);
|
||||
|
||||
/**
|
||||
* 绩效报告:按用户 + 时间范围查询任务明细(包含 task_item 子项)
|
||||
*/
|
||||
|
||||
@@ -128,4 +128,13 @@ public interface ISysOaTaskService {
|
||||
*/
|
||||
List<SysOaTask> getTasksByNicknameAndProjectIds(String nickName, List<Long> projectIds, Date startTime,Date endTime);
|
||||
|
||||
/**
|
||||
* 按总包项目+阶段查询任务
|
||||
*/
|
||||
List<SysOaTaskVo> queryByRmProject(Long projectId, String stageCode);
|
||||
|
||||
/**
|
||||
* 按总包项目统计各阶段任务数
|
||||
*/
|
||||
List<java.util.Map<String, Object>> countByRmProjectStage(Long projectId);
|
||||
}
|
||||
|
||||
@@ -159,6 +159,20 @@ public class SysOaTaskServiceImpl implements ISysOaTaskService {
|
||||
return baseMapper.queryListPlus(bo);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<java.util.Map<String, Object>> countByRmProjectStage(Long projectId) {
|
||||
return baseMapper.countByRmProjectStage(projectId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysOaTaskVo> queryByRmProject(Long projectId, String stageCode) {
|
||||
return baseMapper.selectVoList(
|
||||
Wrappers.<SysOaTask>lambdaQuery()
|
||||
.eq(SysOaTask::getProjectId, projectId)
|
||||
.eq(stageCode != null, SysOaTask::getStageCode, stageCode)
|
||||
.orderByAsc(SysOaTask::getCreateTime));
|
||||
}
|
||||
|
||||
|
||||
private QueryWrapper<SysOaTask> buildQueryWrapper(SysOaTaskBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
|
||||
Reference in New Issue
Block a user