Browse Source

北尚诉办-组织树调整添加排序

feature/dangjian
Jackwang 3 years ago
parent
commit
56eef136d6
  1. 38
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysDeptResultDTO.java
  2. 12
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysDeptController.java
  3. 12
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysDeptDao.java
  4. 9
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysDeptService.java
  5. 37
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java
  6. 10
      esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysDeptDao.xml
  7. 39
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiSysAdminController.java
  8. 10
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java
  9. 6
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AdminFeignClientFallback.java
  10. 12
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AdminService.java
  11. 8
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AdminServiceImpl.java

38
esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysDeptResultDTO.java

@ -0,0 +1,38 @@
package com.elink.esua.epdc.dto;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 部门节点
*
* @author wangtong
* @date 2022/8/29 11:01
*/
@Data
public class SysDeptResultDTO {
/**
* 部门id
*/
private String value;
/**
* 部门名称
*/
private String label;
/**
* 上级id
*/
private String pid;
/**
* 排序
*/
private int sort;
private List<SysDeptResultDTO> children = new ArrayList<>();
}

12
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysDeptController.java

@ -402,4 +402,16 @@ public class SysDeptController {
public Result<DeptInfoCodeDTO> getDeptInfoCode(Long gridId) {
return sysDeptService.getDeptInfoCode(gridId);
}
/**
* @describe: 获取所有部门的树状列表 街道-社区-网格
* @author wangtong
* @date 2022/8/29 11:01
* @params [gridId]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.String>
*/
@GetMapping("getAllDeptTree")
public Result<List<SysDeptResultDTO>> getAllDeptTree() {
return sysDeptService.getAllDeptTree();
}
}

12
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysDeptDao.java

@ -16,9 +16,6 @@ import com.elink.esua.epdc.dto.epdc.form.KpiGridIdsFormDTO;
import com.elink.esua.epdc.dto.epdc.form.UserSysDeptInfoFormDTO;
import com.elink.esua.epdc.dto.epdc.result.ExportKpiResultDTO;
import com.elink.esua.epdc.dto.epdc.result.UserSysDeptInfoResultDTO;
import com.elink.esua.epdc.entity.CustomerAgencyEntity;
import com.elink.esua.epdc.entity.CustomerDepartmentEntity;
import com.elink.esua.epdc.entity.CustomerGridEntity;
import com.elink.esua.epdc.entity.SysDeptEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -262,4 +259,13 @@ public interface SysDeptDao extends BaseDao<SysDeptEntity> {
void updateDepartmentTotalUser(String id);
void updateAgencyTotalUser(String toString);
/**
* @describe: 查询所有的街道-社区-网格
* @author wangtong
* @date 2022/8/29 13:46
* @params []
* @return java.util.List<com.elink.esua.epdc.dto.SysDeptResultDTO>
*/
List<SysDeptResultDTO> selectAllDeptTree();
}

9
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysDeptService.java

@ -329,4 +329,13 @@ public interface SysDeptService extends BaseService<SysDeptEntity> {
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.DeptInfoCodeDTO>
*/
Result<DeptInfoCodeDTO> getDeptInfoCode(Long gridId);
/**
* @describe: 获取所有部门的树状列表 街道-社区-网格
* @author wangtong
* @date 2022/8/29 11:01
* @params [gridId]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.String>
*/
Result<List<SysDeptResultDTO>> getAllDeptTree();
}

37
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java

@ -55,6 +55,8 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* 部门管理
@ -1315,4 +1317,39 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
DeptInfoCodeDTO result = baseDao.selectDeptInfoCode(gridId);
return new Result<DeptInfoCodeDTO>().ok(result);
}
@Override
public Result<List<SysDeptResultDTO>> getAllDeptTree() {
List<SysDeptResultDTO> sqlList = baseDao.selectAllDeptTree();
//调整为树结构
List<SysDeptResultDTO> resultList = build(sqlList);
//添加排序,默认正序排列
List<SysDeptResultDTO> childSortMenu = Optional.ofNullable(resultList)
.map(List::stream)
.orElseGet(Stream::empty)
.sorted(Comparator.comparing(SysDeptResultDTO::getSort))
.collect(Collectors.toList());
return new Result<List<SysDeptResultDTO>>().ok(childSortMenu);
}
/**
* 构建树节点
*/
public static List<SysDeptResultDTO> build(List<SysDeptResultDTO> treeNodes) {
List<SysDeptResultDTO> result = new ArrayList<>();
//list转map
Map<String, SysDeptResultDTO> nodeMap = new LinkedHashMap<>(treeNodes.size());
for (SysDeptResultDTO treeNode : treeNodes) {
nodeMap.put(treeNode.getValue(), treeNode);
}
for (SysDeptResultDTO node : nodeMap.values()) {
SysDeptResultDTO parent = nodeMap.get(node.getPid());
if (parent != null && !(node.getValue().equals(parent.getValue()))) {
parent.getChildren().add(node);
continue;
}
result.add(node);
}
return result;
}
}

10
esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysDeptDao.xml

@ -464,5 +464,15 @@
<update id="updateAgencyTotalUser">
update epmet_gov_org.customer_agency set TOTAL_USER =TOTAL_USER+1 where id =#{id}
</update>
<select id="selectAllDeptTree" resultType="com.elink.esua.epdc.dto.SysDeptResultDTO">
select id as value,
REPLACE(name,'党工委','') as label,
pid,
sort
FROM `sys_dept`
where type_key in ('district_party','street_party','community_party','grid_party')
and del_flag='0'
order by sort asc
</select>
</mapper>

39
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiSysAdminController.java

@ -0,0 +1,39 @@
package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.SysDeptResultDTO;
import com.elink.esua.epdc.service.AdminService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 管理端对外接口
*
* @author yujintao
* @email yujintao@elink-cn.com
* @date 2019/9/11 9:25
*/
@RestController
@RequestMapping("sys/admin")
public class ApiSysAdminController {
@Autowired
private AdminService adminService;
/**
* @describe: 获取所有部门的树状列表 街道-社区-网格
* @author wangtong
* @date 2022/8/29 11:01
* @params [gridId]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.String>
*/
@GetMapping("getAllDeptTree")
public Result<List<SysDeptResultDTO>> getAllDeptTree() {
return adminService.getAllDeptTree();
}
}

10
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java

@ -172,4 +172,14 @@ public interface AdminFeignClient {
*/
@GetMapping(value = "sys/city/getAreaInfo", consumes = MediaType.APPLICATION_JSON_VALUE)
Result getAreaInfo(CityAreaFormDTO formDto);
/**
* @describe: 获取所有部门的树状列表 街道-社区-网格
* @author wangtong
* @date 2022/8/29 11:01
* @params [gridId]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.String>
*/
@GetMapping(value = "sys/dept/getAllDeptTree", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<SysDeptResultDTO>> getAllDeptTree();
}

6
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AdminFeignClientFallback.java

@ -1,6 +1,5 @@
package com.elink.esua.epdc.feign.fallback;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
@ -91,4 +90,9 @@ public class AdminFeignClientFallback implements AdminFeignClient {
public Result getAreaInfo(CityAreaFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getAreaInfo", formDto);
}
@Override
public Result<List<SysDeptResultDTO>> getAllDeptTree() {
return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getAllDeptTree");
}
}

12
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AdminService.java

@ -4,8 +4,11 @@ import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.AppUserIdMenuDTO;
import com.elink.esua.epdc.dto.CompleteDeptDTO;
import com.elink.esua.epdc.dto.SysDeptResultDTO;
import com.elink.esua.epdc.dto.epdc.form.CityAreaFormDTO;
import java.util.List;
/**
* 管理端相关接口
*
@ -51,4 +54,13 @@ public interface AdminService {
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
Result getAreaInfo(CityAreaFormDTO formDto);
/**
* @describe: 获取所有部门的树状列表 街道-社区-网格
* @author wangtong
* @date 2022/8/29 11:01
* @params [gridId]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.String>
*/
Result<List<SysDeptResultDTO>> getAllDeptTree();
}

8
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AdminServiceImpl.java

@ -4,6 +4,7 @@ import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.AppUserIdMenuDTO;
import com.elink.esua.epdc.dto.CompleteDeptDTO;
import com.elink.esua.epdc.dto.SysDeptResultDTO;
import com.elink.esua.epdc.dto.epdc.form.CityAreaFormDTO;
import com.elink.esua.epdc.feign.AdminFeignClient;
import com.elink.esua.epdc.service.AdminService;
@ -11,6 +12,8 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author yujintao
* @email yujintao@elink-cn.com
@ -57,4 +60,9 @@ public class AdminServiceImpl implements AdminService {
log.info("formDto:"+formDto);
return adminFeignClient.getAreaInfo(formDto);
}
@Override
public Result<List<SysDeptResultDTO>> getAllDeptTree() {
return adminFeignClient.getAllDeptTree();
}
}

Loading…
Cancel
Save