From 1be40c8a6695dfe8623687604d7a90a9eb7ccd70 Mon Sep 17 00:00:00 2001 From: xusd <hugeinfo123> Date: Mon, 14 Oct 2024 17:42:03 +0800 Subject: [PATCH] Merge branch 'feature/gzdyh_20241011_gridaccount' into gzdyh_test --- dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java | 190 ++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 186 insertions(+), 4 deletions(-) diff --git a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java index 9825bee..e762e61 100644 --- a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java +++ b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java @@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; +import org.apache.ibatis.annotations.Param; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -331,10 +332,10 @@ unitSelectTerm.setLabel(ctUnit.getUnitName()); unitSelectTerm.setParentId(ctUnit.getParentId()); unitSelectTerm.setCheckable(true); - if (UserBaseConsts.UNIT_TYPE_1 == ctUnit.getUnitType()){ + if (UserBaseConsts.UNIT_TYPE_2 == ctUnit.getUnitType()){ szbmList.add(unitSelectTerm); } - if (UserBaseConsts.UNIT_TYPE_2 == ctUnit.getUnitType()){ + if (UserBaseConsts.UNIT_TYPE_1 == ctUnit.getUnitType()){ qzzzxList.add(unitSelectTerm); } } @@ -382,7 +383,7 @@ if (UserBaseConsts.UNIT_TYPE_2 == ctUnit.getUnitType()){ qzbmList.add(unitSelectTerm); } - if (UserBaseConsts.UNIT_TYPE_3 == ctUnit.getUnitType()){ + if (UserBaseConsts.UNIT_TYPE_1 == ctUnit.getUnitType()){ zjzzzxList.add(unitSelectTerm); } } @@ -429,7 +430,7 @@ } // 查询村社数组 QueryWrapper<CtUnit> ctUnitQueryWrapper = new QueryWrapper<>(); - ctUnitQueryWrapper.eq("parent_id", loginUnit.getId()); + ctUnitQueryWrapper.eq("parent_id", loginUnit.getId()).eq("unit_grade", UserBaseConsts.UNIT_GRADE_4); List<CtUnit> ctUnitList = mapper.selectList(ctUnitQueryWrapper); List<SelectTermDTO> csList = new ArrayList<>(); for (CtUnit ctUnit: ctUnitList){ @@ -467,6 +468,183 @@ result.add(firstSelectTermDTO); return result; }else { + // todo + QueryWrapper<CtUnit> ctUnitQueryWrapper = new QueryWrapper<>(); + ctUnitQueryWrapper.eq("parent_id", loginUnit.getParentId()); + List<CtUnit> ctUnitList = mapper.selectList(ctUnitQueryWrapper); + // + List<SelectTermDTO> unitList = new ArrayList<>(); + for (CtUnit ctUnit: ctUnitList){ + SelectTermDTO unitSelectTerm = new SelectTermDTO(); + unitSelectTerm.setValue(ctUnit.getId()); + unitSelectTerm.setLabel(ctUnit.getUnitName()); + unitSelectTerm.setParentId(ctUnit.getParentId()); + unitSelectTerm.setCheckable(true); + unitList.add(unitSelectTerm); + } + return unitList; + } + } + + /** + * 联合处置申请-选择组织 + * @param userId + * @return + */ + public List<SelectTermDTO> assistApplyUnitChoose(String userId) { + // 获取当前登录用户 + CtUserDTO loginUser = ctUserService.clientGetUserAll(userId); + // 获取当前登录用户的部门 + CtUnit loginUnit = mapper.selectById(loginUser.getUnitId()); + QueryWrapper<CtUnit> ctUnitQueryWrapper1 = new QueryWrapper<>(); + ctUnitQueryWrapper1.eq("id", loginUnit.getParentId()); + CtUnit superiorUnit = mapper.selectById(loginUnit.getParentId()); + // 市级 + if (UserBaseConsts.UNIT_GRADE_1 == superiorUnit.getUnitGrade()){ + QueryWrapper<CtUnit> ctUnitQueryWrapper = new QueryWrapper<>(); + ctUnitQueryWrapper.eq("parent_id", superiorUnit.getId()); + List<CtUnit> ctUnitList = mapper.selectList(ctUnitQueryWrapper); + // 定义市直部门数组 + List<SelectTermDTO> szbmList = new ArrayList<>(); + // 定义区综治中心数组 + List<SelectTermDTO> qzzzxList = new ArrayList<>(); + for (CtUnit ctUnit: ctUnitList){ + SelectTermDTO unitSelectTerm = new SelectTermDTO(); + unitSelectTerm.setValue(ctUnit.getId()); + unitSelectTerm.setLabel(ctUnit.getUnitName()); + unitSelectTerm.setParentId(ctUnit.getParentId()); + unitSelectTerm.setCheckable(true); + if (UserBaseConsts.UNIT_TYPE_1 == ctUnit.getUnitType()){ + szbmList.add(unitSelectTerm); + } + if (UserBaseConsts.UNIT_TYPE_2 == ctUnit.getUnitType()){ + qzzzxList.add(unitSelectTerm); + } + } + // 封装返回数据 + List<SelectTermDTO> result = new ArrayList<>(); + // 创建第一级 + SelectTermDTO firstSelectTermDTO = new SelectTermDTO(); + firstSelectTermDTO.setValue(loginUser.getUnitId()); + firstSelectTermDTO.setLabel(loginUser.getUnitName()); + firstSelectTermDTO.setCheckable(false); + List<SelectTermDTO> firstChildren = new ArrayList<>(); + // 市直部门 + SelectTermDTO szbmSelectTermDTO = new SelectTermDTO(); + szbmSelectTermDTO.setValue("szbm"); + szbmSelectTermDTO.setLabel("市直部门"); + szbmSelectTermDTO.setCheckable(false); + szbmSelectTermDTO.setChildren(szbmList); + firstChildren.add(szbmSelectTermDTO); + // 区综治中心 + SelectTermDTO qzzzxSelectTermDTO = new SelectTermDTO(); + qzzzxSelectTermDTO.setValue("qzzzx"); + qzzzxSelectTermDTO.setLabel("区综治中心"); + qzzzxSelectTermDTO.setCheckable(false); + qzzzxSelectTermDTO.setChildren(qzzzxList); + firstChildren.add(qzzzxSelectTermDTO); + // 第一级子级 + firstSelectTermDTO.setChildren(firstChildren); + result.add(firstSelectTermDTO); + return result; + }else if (UserBaseConsts.UNIT_GRADE_2 == superiorUnit.getUnitGrade()){ + // 区级 + QueryWrapper<CtUnit> ctUnitQueryWrapper = new QueryWrapper<>(); + ctUnitQueryWrapper.eq("parent_id", superiorUnit.getId()); + List<CtUnit> ctUnitList = mapper.selectList(ctUnitQueryWrapper); + // 定义市区直部门数组 + List<SelectTermDTO> qzbmList = new ArrayList<>(); + // 定义镇街综治中心数组 + List<SelectTermDTO> zjzzzxList = new ArrayList<>(); + for (CtUnit ctUnit: ctUnitList){ + SelectTermDTO unitSelectTerm = new SelectTermDTO(); + unitSelectTerm.setValue(ctUnit.getId()); + unitSelectTerm.setLabel(ctUnit.getUnitName()); + unitSelectTerm.setParentId(ctUnit.getParentId()); + unitSelectTerm.setCheckable(true); + if (UserBaseConsts.UNIT_TYPE_2 == ctUnit.getUnitType()){ + qzbmList.add(unitSelectTerm); + } + if (UserBaseConsts.UNIT_TYPE_3 == ctUnit.getUnitType()){ + zjzzzxList.add(unitSelectTerm); + } + } + // 封装返回数据 + List<SelectTermDTO> result = new ArrayList<>(); + // 创建第一级 + SelectTermDTO firstSelectTermDTO = new SelectTermDTO(); + firstSelectTermDTO.setValue(loginUser.getUnitId()); + firstSelectTermDTO.setLabel(loginUser.getUnitName()); + firstSelectTermDTO.setCheckable(false); + List<SelectTermDTO> firstChildren = new ArrayList<>(); + // 市直部门 + SelectTermDTO qzzbmSelectTermDTO = new SelectTermDTO(); + qzzbmSelectTermDTO.setValue("qzbm"); + qzzbmSelectTermDTO.setLabel("区直部门"); + qzzbmSelectTermDTO.setCheckable(false); + qzzbmSelectTermDTO.setChildren(qzbmList); + firstChildren.add(qzzbmSelectTermDTO); + // 区综治中心 + SelectTermDTO zjzzzxSelectTermDTO = new SelectTermDTO(); + zjzzzxSelectTermDTO.setValue("zjzzzx"); + zjzzzxSelectTermDTO.setLabel("街(镇)综治中心"); + zjzzzxSelectTermDTO.setCheckable(false); + zjzzzxSelectTermDTO.setChildren(zjzzzxList); + firstChildren.add(zjzzzxSelectTermDTO); + // 第一级子级 + firstSelectTermDTO.setChildren(firstChildren); + result.add(firstSelectTermDTO); + return result; + }else if (UserBaseConsts.UNIT_GRADE_3 == superiorUnit.getUnitGrade()){ + // 镇街 + // 查询镇街部门数组 + QueryWrapper<CtDept> ctDeptQueryWrapper = new QueryWrapper<>(); + ctDeptQueryWrapper.eq("unit_id", superiorUnit.getId()); + List<CtDept> deptList = ctDeptService.list(ctDeptQueryWrapper); + List<SelectTermDTO> zjbmList = new ArrayList<>(); + for (CtDept ctDept: deptList){ + SelectTermDTO unitSelectTerm = new SelectTermDTO(); + unitSelectTerm.setValue(ctDept.getId()); + unitSelectTerm.setLabel(ctDept.getName()); + unitSelectTerm.setParentId(superiorUnit.getId()); + unitSelectTerm.setCheckable(true); + zjbmList.add(unitSelectTerm); + } + // 查询村社数组 + QueryWrapper<CtUnit> ctUnitQueryWrapper = new QueryWrapper<>(); + ctUnitQueryWrapper.eq("parent_id", superiorUnit.getId()).eq("unit_grade", UserBaseConsts.UNIT_GRADE_4); + List<CtUnit> ctUnitList = mapper.selectList(ctUnitQueryWrapper); + List<SelectTermDTO> csList = new ArrayList<>(); + for (CtUnit ctUnit: ctUnitList){ + SelectTermDTO unitSelectTerm = new SelectTermDTO(); + unitSelectTerm.setValue(ctUnit.getId()); + unitSelectTerm.setLabel(ctUnit.getUnitName()); + unitSelectTerm.setParentId(ctUnit.getParentId()); + unitSelectTerm.setCheckable(true); + csList.add(unitSelectTerm); + } + // 封装返回数据 + List<SelectTermDTO> result = new ArrayList<>(); + // 创建第一级 + List<SelectTermDTO> firstChildren = new ArrayList<>(); + // 村社 + SelectTermDTO zjbmSelectTermDTO = new SelectTermDTO(); + zjbmSelectTermDTO.setValue("zjbm"); + zjbmSelectTermDTO.setLabel("街(镇)部门"); + zjbmSelectTermDTO.setCheckable(false); + zjbmSelectTermDTO.setChildren(zjbmList); + firstChildren.add(zjbmSelectTermDTO); + // 区综治中心 + SelectTermDTO csSelectTermDTO = new SelectTermDTO(); + csSelectTermDTO.setValue("cs"); + csSelectTermDTO.setLabel("村(社)"); + csSelectTermDTO.setCheckable(false); + csSelectTermDTO.setChildren(csList); + firstChildren.add(csSelectTermDTO); + // 第一级子级 + result.addAll(firstChildren); + return result; + }else { return new ArrayList<>(); } } @@ -493,4 +671,8 @@ throw new ServiceException("CtUnitService.getParentZzzx", e); } } + + public CtUnit selectUnitByGridId(String gridUnitId){ + return mapper.selectUnitByGridId(gridUnitId); + } } -- Gitblit v1.8.0