diff --git a/xhpc-modules/xhpc-activity/src/main/java/com/xhpc/activity/mapper/XhpcWorkDeptMapper.java b/xhpc-modules/xhpc-activity/src/main/java/com/xhpc/activity/mapper/XhpcWorkDeptMapper.java index 76db4778..58187720 100644 --- a/xhpc-modules/xhpc-activity/src/main/java/com/xhpc/activity/mapper/XhpcWorkDeptMapper.java +++ b/xhpc-modules/xhpc-activity/src/main/java/com/xhpc/activity/mapper/XhpcWorkDeptMapper.java @@ -23,4 +23,6 @@ public interface XhpcWorkDeptMapper { int updateByPrimaryKey(XhpcWorkDeptDomain record); int updateStatusByPrimaryKey(XhpcWorkDeptDomain record); + + List selectListByParentDeptId(@Param("parentDeptId") Long parentDeptId); } \ No newline at end of file diff --git a/xhpc-modules/xhpc-activity/src/main/java/com/xhpc/activity/service/impl/WorkDeptServiceImpl.java b/xhpc-modules/xhpc-activity/src/main/java/com/xhpc/activity/service/impl/WorkDeptServiceImpl.java index d85eb9c9..af9f2611 100644 --- a/xhpc-modules/xhpc-activity/src/main/java/com/xhpc/activity/service/impl/WorkDeptServiceImpl.java +++ b/xhpc-modules/xhpc-activity/src/main/java/com/xhpc/activity/service/impl/WorkDeptServiceImpl.java @@ -34,7 +34,7 @@ public class WorkDeptServiceImpl implements WorkDeptService { public List> getList(Map params){ List> deptList = deptMapper.selectMapListByParams(params); for (Map dept: deptList){ - params.put("parentDeptId", dept.get("id")); + params.put("parentDeptId", dept.get("id").toString().replaceAll("d_", "")); List> childDeptList = deptMapper.selectMapListByParams(params); dept.put("children", childDeptList); } @@ -45,13 +45,13 @@ public class WorkDeptServiceImpl implements WorkDeptService { public List> getTree(Map params){ List> deptList = deptMapper.selectMapListByParams(params); for (Map dept: deptList){ - params.put("parentDeptId", dept.get("id")); + params.put("parentDeptId", dept.get("id").toString().replaceAll("d_", "")); List> childDeptList = deptMapper.selectMapListByParams(params); if(childDeptList.size() > 0){ dept.put("children", childDeptList); } for (Map childMap: childDeptList){ - params.put("parentDeptId", childMap.get("id")); + params.put("parentDeptId", childMap.get("id").toString().replaceAll("d_", "")); List> childDeptList1 = deptMapper.selectMapListByParams(params); if(childDeptList1.size() > 0){ childMap.put("children", childDeptList1); @@ -97,6 +97,11 @@ public class WorkDeptServiceImpl implements WorkDeptService { @Override public Boolean deleteDomain(Long deptId){ + List domainList = deptMapper.selectListByParentDeptId(deptId); + if (domainList.size() > 0){ + throw new CustomException("存在下级部门"); + } + return deptMapper.deleteLogicByPrimaryKey(deptId) > 0; } } diff --git a/xhpc-modules/xhpc-activity/src/main/resources/mapper/XhpcWorkDeptMapper.xml b/xhpc-modules/xhpc-activity/src/main/resources/mapper/XhpcWorkDeptMapper.xml index 27eabad4..e58ed9d5 100644 --- a/xhpc-modules/xhpc-activity/src/main/resources/mapper/XhpcWorkDeptMapper.xml +++ b/xhpc-modules/xhpc-activity/src/main/resources/mapper/XhpcWorkDeptMapper.xml @@ -100,7 +100,15 @@ - + + + + update xhpc_work_dept set del_flag=2 where work_dept_id = #{workDeptId,jdbcType=BIGINT}