From 95da1773430c51a6acde0c228c678964f8ab21d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=A3=95=E8=B4=A2?= Date: Sun, 13 Mar 2022 01:02:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=8A=82=E7=82=B9=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E3=80=81=E6=A0=87=E7=AD=BE=E7=AD=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/xm/core/ctrl/XmTaskController.java | 12 ++++++++++++ .../main/java/com/xm/core/service/XmTaskService.java | 10 +--------- .../mybatis/mapper/xm/core/dao/XmTaskMapper.xml | 6 +++--- 3 files changed, 16 insertions(+), 12 deletions(-) diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java index e06560d7..2afc2990 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java @@ -356,6 +356,15 @@ public class XmTaskController { if(xmTaskVo.getBudgetCost()==null){ xmTaskVo.setBudgetCost(BigDecimal.ZERO); } + if(StringUtils.isEmpty(xmTaskVo.getId())) { + xmTaskVo.setId(this.xmTaskService.createKey("id")); + }else{ + XmTask xmTaskQuery = new XmTask(xmTaskVo.getId()); + if(this.xmTaskService.countByWhere(xmTaskQuery)>0){ + tips.setFailureMsg("编号重复,请修改编号再提交"); + throw new BizException(tips); + } + } this.xmTaskService.parentIdPathsCalcBeforeSave(xmTaskVo); if(xmTaskVo.getBudgetCost()!=null && xmTaskVo.getBudgetCost().compareTo(BigDecimal.ZERO)>0){ if(xmTaskVo.getLvl()<=1){ @@ -1404,6 +1413,9 @@ public class XmTaskController { return ResponseHelper.failed("parentTask-0", "上级不存在"); } XmTask parentTask=optional.get(); + if("1".equals(parentTask.getNtype())){ + return ResponseHelper.failed("parentTask-ntype-not-1", "【"+parentTask.getName()+"】为任务,不能作为上级节点。请另选上级或者变更其为计划节点"); + } xmTasks=xmTasks.stream().filter(i->!i.getId().equals(parentTask.getId())).collect(Collectors.toList()); xmTasks=xmTasks.stream().filter(i->!parentTask.getId().equals(i.getParentTaskid())).collect(Collectors.toList()); diff --git a/xm-core/src/main/java/com/xm/core/service/XmTaskService.java b/xm-core/src/main/java/com/xm/core/service/XmTaskService.java index 0f9ecf95..c8de2c16 100644 --- a/xm-core/src/main/java/com/xm/core/service/XmTaskService.java +++ b/xm-core/src/main/java/com/xm/core/service/XmTaskService.java @@ -176,15 +176,7 @@ public class XmTaskService extends BaseService { @Transactional public XmTaskVo addTask(XmTaskVo xmTaskVo){ Tips tips = new Tips(); - if(StringUtils.isEmpty(xmTaskVo.getId())) { - xmTaskVo.setId(this.createKey("id")); - }else{ - XmTask xmTaskQuery = new XmTask(xmTaskVo.getId()); - if(this.countByWhere(xmTaskQuery)>0){ - tips.setFailureMsg("编号重复,请修改编号再提交"); - throw new BizException(tips); - } - } + User user = LoginUtils.getCurrentUserInfo(); xmTaskVo.setCreateUserid(user.getUserid()); xmTaskVo.setCreateUsername(user.getUsername()); diff --git a/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmTaskMapper.xml b/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmTaskMapper.xml index 7c6ea18e..e1e4073b 100644 --- a/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmTaskMapper.xml +++ b/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmTaskMapper.xml @@ -263,7 +263,7 @@ res.act_start_time = t2.act_start_time, res.act_end_time = t2.act_end_time, res.children_cnt = ifnull( t2.children_cnt, 0 ), - res.ntype=if(t2.children_cnt>0,"1","0") + res.ntype=if(t2.children_cnt>0,"1",res.ntype) WHERE res.id in @@ -275,7 +275,7 @@ UPDATE xm_task res - LEFT JOIN ( + left JOIN ( SELECT t.parent_taskid, count(1) as children_cnt, @@ -301,7 +301,7 @@ res.act_start_time = t2.act_start_time, res.act_end_time = t2.act_end_time , res.children_cnt = ifnull( t2.children_cnt, 0 ), - res.ntype=if(t2.children_cnt>0,"1","0") + res.ntype=if(t2.children_cnt>0,"1",res.ntype) WHERE res.id = #{item} and res.ntype='1'