diff --git a/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDeliverDao.java b/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDeliverDao.java index a453054a..42342ca2 100644 --- a/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDeliverDao.java +++ b/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDeliverDao.java @@ -40,4 +40,11 @@ public interface TaskDeliverDao extends ProTaskDeliverMapper{ * @return */ List selectOutputDocByTaskId(Long taskId); + + /** + * 根据交付物id 查询出当前项目的项目经理 + * @param deliverId 交付物id + * @return 项目经理的id + */ + List selectPMIdByDeliverId(Long deliverId); } diff --git a/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java b/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java index c104d575..b451322d 100644 --- a/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java +++ b/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java @@ -72,6 +72,10 @@ public interface TaskDetailDao extends ProTaskDetailMapper { */ List queryLwbsByProjectId(@Param("projectId")Long projectId, @Param("startTime")Long startTime, @Param("endTime")Long endTime, @Param("userId")Long userId); - - + /** + * 通过任务详情id查询项目下的经理角色id + * @param id 任务详情id + * @return 项目经理id + */ + Long selectPmByTaskId(Long id); } diff --git a/tall/src/main/java/com/ccsens/tall/service/InputDocService.java b/tall/src/main/java/com/ccsens/tall/service/InputDocService.java index 7215d756..23b17604 100644 --- a/tall/src/main/java/com/ccsens/tall/service/InputDocService.java +++ b/tall/src/main/java/com/ccsens/tall/service/InputDocService.java @@ -59,6 +59,8 @@ public class InputDocService implements IInputDocService { private ProDeliverHistoryRecordDao deliverHistoryRecordDao; @Resource private IProMemberService iProMemberService; + @Resource + private TaskDeliverService taskDeliverService; // @@ -222,8 +224,10 @@ public class InputDocService implements IInputDocService { */ @Override public List findDocByTask(InputDocDto.FindDocByTask param) { + //判断传入的是任务详情id还是分解id,返回分解id + Long taskId = taskDeliverService.isTaskOrSubTime(param.getTaskId()); //查询任务分解后 - ProTaskSubTime proTaskSubTime = taskSubTimeDao.selectByPrimaryKey(param.getTaskId()); + ProTaskSubTime proTaskSubTime = taskSubTimeDao.selectByPrimaryKey(taskId); if(ObjectUtil.isNull(proTaskSubTime)){ throw new BaseException(CodeEnum.NOT_TASK); } diff --git a/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java b/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java index 83d40125..1201b29d 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java @@ -1013,7 +1013,7 @@ public class ProRoleService implements IProRoleService { */ @Override public void upRoleShowsOrder(QueryDto param) { - if(ObjectUtil.isNull(param.getParam().getRoleIds()) || param.getParam().getRoleIds().size()<=1){ + if(ObjectUtil.isNull(param.getParam().getRoleIds())){ throw new BaseException(CodeEnum.ZUISHAOCHUANLIANGE); } diff --git a/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java b/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java index 0cb77114..9e5e32b9 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java @@ -784,17 +784,30 @@ public class ProTaskDetailService implements IProTaskDetailService { taskDetail.setSecondTasks(new ArrayList<>()); taskDetail.getSecondTasks().addAll(groupTaskList); } + //查询此任务下的输入文档 + List inputDocInfos = proTaskInputDocDao.selectDocByTaskId(taskDetail.getDetailId()); + if (CollectionUtil.isNotEmpty(inputDocInfos)){ + taskDetail.setInputDoc(inputDocInfos); + } + //查询此任务下的输出文档 + List outputDocInfos = taskDeliverDao.selectOutputDocByTaskId(taskDetail.getDetailId()); + if (CollectionUtil.isNotEmpty(outputDocInfos)){ + taskDetail.setOutputDoc(outputDocInfos); + } + //设置检查人 + ProRole checkRole = proRoleDao.selectByPrimaryKey(task.getCheckerRole()); + if (ObjectUtil.isNotNull(checkRole)){ + taskDetail.setCheckerRole(checkRole.getId()); + taskDetail.setCheckerRoleName(checkRole.getName()); + }else{ + //根据任务id查询项目下项目经理 + Long pmId = taskDetailDao.selectPmByTaskId(task.getId()); + ProRole proRole = proRoleDao.selectByPrimaryKey(pmId); + taskDetail.setCheckerRole(proRole.getId()); + taskDetail.setCheckerRoleName(proRole.getName()); + } } - //查询此任务下的输入文档 - List inputDocInfos = proTaskInputDocDao.selectDocByTaskId(taskDetail.getDetailId()); - if (CollectionUtil.isNotEmpty(inputDocInfos)){ - taskDetail.setInputDoc(inputDocInfos); - } - //查询此任务下的输出文档 - List outputDocInfos = taskDeliverDao.selectOutputDocByTaskId(taskDetail.getDetailId()); - if (CollectionUtil.isNotEmpty(outputDocInfos)){ - taskDetail.setOutputDoc(outputDocInfos); - } + return taskDetail; } diff --git a/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java b/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java index fb10ea91..13c6de2b 100644 --- a/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java +++ b/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java @@ -248,6 +248,19 @@ public class TaskDeliverService implements ITaskDeliverService { postLogCheckerDao.insertSelective(postLogChecker); } } else { + //不选择检查人,检查人默认为项目经理 + //查找此项目下的项目经理 +// List pmIds = taskDeliverDao.selectPMIdByDeliverId(uploadDeliver.getDeliverId()); +// if (CollectionUtil.isNotEmpty(pmIds)){ +// for (Long pmId : pmIds) { +// ProTaskDeliverPostLogChecker postLogChecker=new ProTaskDeliverPostLogChecker(); +// postLogChecker.setId(snowflake.nextId()); +// postLogChecker.setDeliverPostLogId(deliverPostLog.getId()); +// postLogChecker.setCheckerId(pmId); +// //将经理id放入检查人list中,发送消息 +// uploadDeliver.getCheckerIdList().add(pmId); +// } +// } throw new BaseException(CodeEnum.NOT_CHECKER); } //修改交付物状态 @@ -1105,8 +1118,9 @@ public class TaskDeliverService implements ITaskDeliverService { */ @Override public List queryDeliverByTaskId(Long currentUserId, Long taskId) { + Long taskOrSubTime = isTaskOrSubTime(taskId); //查询分解后的任务 - ProTaskSubTime taskSubTime = taskSubTimeDao.selectByPrimaryKey(taskId); + ProTaskSubTime taskSubTime = taskSubTimeDao.selectByPrimaryKey(taskOrSubTime); if(ObjectUtil.isNull(taskSubTime)){ throw new BaseException(CodeEnum.NOT_TASK); } diff --git a/tall/src/main/resources/application-dev.yml b/tall/src/main/resources/application-dev.yml index 162cf7f7..e8f64049 100644 --- a/tall/src/main/resources/application-dev.yml +++ b/tall/src/main/resources/application-dev.yml @@ -47,4 +47,6 @@ project: redisUpdate: 0 redisUpdateUrl: http://localhost:8001/constant/updateAll/ filedeal: https://test.tall.wiki/filedeal/file/query + # 0测试 1生产 + wx_h5: 0 diff --git a/tall/src/main/resources/mapper_dao/DeliverDao.xml b/tall/src/main/resources/mapper_dao/DeliverDao.xml index f7aa0c79..c075bad6 100644 --- a/tall/src/main/resources/mapper_dao/DeliverDao.xml +++ b/tall/src/main/resources/mapper_dao/DeliverDao.xml @@ -300,4 +300,38 @@ WHERE ptd.task_detail_id = #{taskId} + + \ No newline at end of file diff --git a/tall/src/main/resources/mapper_dao/ProDeliverHistoryRecordDao.xml b/tall/src/main/resources/mapper_dao/ProDeliverHistoryRecordDao.xml index a621ce5c..d175f149 100644 --- a/tall/src/main/resources/mapper_dao/ProDeliverHistoryRecordDao.xml +++ b/tall/src/main/resources/mapper_dao/ProDeliverHistoryRecordDao.xml @@ -14,12 +14,14 @@ pdhr.content AS content, pm.id AS memberId, pm.nickname AS memberName, - pdhr.history_remark AS historyRemark + pdhr.history_remark AS historyRemark, + tid.name AS deliverName FROM t_pro_deliver_history_record AS pdhr LEFT JOIN t_pro_role AS pr ON pdhr.role_id = pr.id and pr.rec_status = 0 LEFT JOIN t_pro_task_input_record AS ptir ON ptir.id = pdhr.deliver_record_id LEFT JOIN t_pro_member AS pm ON pm.id = pdhr.member_id and pm.rec_status = 0 + LEFT JOIN t_pro_task_input_doc AS tid ON tid.id = pdhr.deliver_id WHERE pdhr.deliver_id = #{deliverId} and pdhr.rec_status = 0 @@ -37,12 +39,15 @@ pdhr.created_at AS createAt, pdhr.content AS content, pm.id AS memberId, - pm.nickname AS memberName + pm.nickname AS memberName, + pdhr.history_remark AS historyRemark, + tid.name AS deliverName FROM t_pro_deliver_history_record AS pdhr LEFT JOIN t_pro_role AS pr ON pdhr.role_id = pr.id and pr.rec_status = 0 LEFT JOIN t_pro_task_deliver_post_log AS ptdpl ON ptdpl.id = pdhr.deliver_record_id LEFT JOIN t_pro_member AS pm ON pm.id = pdhr.member_id and pm.rec_status = 0 + LEFT JOIN t_pro_task_deliver AS tid ON tid.id = pdhr.deliver_id WHERE pdhr.deliver_id = #{deliverId} and pdhr.rec_status = 0 diff --git a/tall/src/main/resources/mapper_dao/TaskDetailDao.xml b/tall/src/main/resources/mapper_dao/TaskDetailDao.xml index c6cfef4e..9ba713c6 100644 --- a/tall/src/main/resources/mapper_dao/TaskDetailDao.xml +++ b/tall/src/main/resources/mapper_dao/TaskDetailDao.xml @@ -539,7 +539,8 @@ t.executor_role as executorRole, (SELECT `name` FROM t_pro_role WHERE id = t.executor_role) as executorRoleName, d.id as deliverId, - d.`name` as deliverName + d.`name` as deliverName, + t.priority AS priority FROM t_pro_task_detail t LEFT JOIN t_pro_task_deliver d on t.id = d.task_detail_id @@ -727,4 +728,29 @@ + \ No newline at end of file diff --git a/tall/src/main/resources/mapper_raw/ProRoleMapper.xml b/tall/src/main/resources/mapper_raw/ProRoleMapper.xml index 489aa8c5..b3775227 100644 --- a/tall/src/main/resources/mapper_raw/ProRoleMapper.xml +++ b/tall/src/main/resources/mapper_raw/ProRoleMapper.xml @@ -86,8 +86,8 @@ - order by ${orderByClause} - + order by ${orderByClause} +