Browse Source

Merge remote-tracking branch 'remotes/origin/dev_add_closedCount_category' into develop

# Conflicts:
#	epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerAgencyController.java
#	epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java
#	epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerAgencyService.java
#	epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml
master
jianjun 4 years ago
parent
commit
908e6a496a
  1. 5
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyResultDTO.java
  2. 2
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyTreeResultDTO.java
  3. 16
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerAgencyController.java
  4. 10
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java
  5. 10
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerAgencyService.java
  6. 58
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java
  7. 25
      epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml
  8. 4
      epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/controller/BaseGridInfoController.java
  9. 3
      epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/service/impl/BaseGridInfoServiceImpl.java
  10. 9
      epmet-module/open-data-worker/open-data-worker-server/src/main/resources/mapper/ExDeptDao.xml

5
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyResultDTO.java

@ -41,9 +41,12 @@ public class AgencyResultDTO implements Serializable {
* 机关组织名称 * 机关组织名称
*/ */
private String agencyName = ""; private String agencyName = "";
private String pid;
private String level;
/** /**
* 所有上级组织机构ID(以英文:隔开) * 所有上级组织机构ID(以英文:隔开)
*/ */
@JsonIgnore @JsonIgnore
private String pids = ""; private String pids = "";
} }

2
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyTreeResultDTO.java

@ -24,6 +24,8 @@ public class AgencyTreeResultDTO implements Serializable {
private String agencyName; private String agencyName;
private String pid; private String pid;
private String level;
/** /**
* 下级机关组织 * 下级机关组织
*/ */

16
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerAgencyController.java

@ -325,7 +325,7 @@ public class CustomerAgencyController {
} }
/** /**
* @Description 获取客户下组织树 * @Description 获取客户下组织树不含网格和部门
* @Param tokenDTO * @Param tokenDTO
* @Return {@link Result< AgencyTreeResultDTO >} * @Return {@link Result< AgencyTreeResultDTO >}
* @Author zhaoqifeng * @Author zhaoqifeng
@ -357,4 +357,16 @@ public class CustomerAgencyController {
return new Result<List<StaffOrgsResultDTO>>().ok(orgList); return new Result<List<StaffOrgsResultDTO>>().ok(orgList);
} }
} /**
* @Description 获取当前登陆人的 所属组织及下级组织/网格含直属网格
* @Param tokenDTO
* @Return {@link Result< AgencyTreeResultDTO >}
* @Author zhaoqifeng
* @Date 2021/9/8 15:20
*/
@PostMapping("agencygridtree")
public Result<AgencyTreeResultDTO> getOrgTreeData(@LoginUser TokenDto tokenDTO) {
return new Result<AgencyTreeResultDTO>().ok(customerAgencyService.getOrgTreeData(tokenDTO.getUserId()));
}
}

10
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java

@ -273,4 +273,12 @@ public interface CustomerAgencyDao extends BaseDao<CustomerAgencyEntity> {
* @date 2021/10/25 2:30 下午 * @date 2021/10/25 2:30 下午
*/ */
List<MapSonOrgResultDTO> selectSonOrg(@Param("pid")String pid,@Param("type")String type); List<MapSonOrgResultDTO> selectSonOrg(@Param("pid")String pid,@Param("type")String type);
}
/**
* desc获取组织网格树 含直属网格
* @param agencyId
* @return
*/
AgencyTreeResultDTO getAgencyGridTree(String agencyId);
}

10
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerAgencyService.java

@ -19,7 +19,6 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.CustomerAgencyDTO; import com.epmet.dto.CustomerAgencyDTO;
import com.epmet.dto.form.*; import com.epmet.dto.form.*;
@ -257,4 +256,11 @@ public interface CustomerAgencyService extends BaseService<CustomerAgencyEntity>
AgencyTreeResultDTO getAgencyList(GetAgencyListFormDTO formDTO); AgencyTreeResultDTO getAgencyList(GetAgencyListFormDTO formDTO);
List<StaffOrgsResultDTO> getStaffOrgListByStaffId(String staffId); List<StaffOrgsResultDTO> getStaffOrgListByStaffId(String staffId);
}
/**
* desc:获取用户所属组织的组织及网格树
* @param staffId
* @return
*/
AgencyTreeResultDTO getOrgTreeData(String staffId);
}

58
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java

@ -16,7 +16,6 @@
*/ */
package com.epmet.service.impl; package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
@ -1107,6 +1106,63 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl<CustomerAgencyDao
return agency; return agency;
} }
@Override
public AgencyTreeResultDTO getOrgTreeData(String staffId) {
AgencyTreeResultDTO result = new AgencyTreeResultDTO();
//1.查询工作人员所属组织信息
AgencyResultDTO rootAgency = baseDao.selectAgencyByStaffId(staffId);
if (null == rootAgency) {
logger.error(String.format("查询工作人员所属组织信息失败,staffId->%s", staffId));
throw new RenException(CustomerAgencyConstant.SELECT_STAFF_AGENCY_EXCEPTION);
}
result.setPid(rootAgency.getPid());
result.setAgencyName(rootAgency.getAgencyName());
result.setAgencyId(rootAgency.getAgencyId());
result.setLevel(rootAgency.getLevel());
ExtStaffPermissionResultDTO res = baseDao.selectAgencyById(rootAgency.getAgencyId());
convert2AgencyTreeResult(result,res.getSubAgencyList(),res.getGridList());
return result;
}
/**
* 递归查询子节点
* @param root 根节点
* @param all 所有节点
* @return 根节点信息
*/
private void convert2AgencyTreeResult(AgencyTreeResultDTO root, List<ExtStaffPermissionResultDTO> agencyList, List<ExtGridResultDTO> gridList) {
try {
for (ExtStaffPermissionResultDTO agency : agencyList) {
AgencyTreeResultDTO resultDTO = new AgencyTreeResultDTO();
resultDTO.setAgencyId(agency.getAgencyId());
resultDTO.setAgencyName(agency.getAgencyName());
resultDTO.setPid(root.getAgencyId());
resultDTO.setLevel(agency.getLevel());
if (root.getSubAgencyList() == null) {
root.setSubAgencyList(new ArrayList<>());
}
root.getSubAgencyList().add(resultDTO);
if (CollectionUtils.isNotEmpty(agency.getSubAgencyList()) || CollectionUtils.isNotEmpty(agency.getGridList())) {
convert2AgencyTreeResult(resultDTO, agency.getSubAgencyList(), agency.getGridList());
}
}
for (ExtGridResultDTO o : gridList) {
AgencyTreeResultDTO grid = new AgencyTreeResultDTO();
grid.setAgencyId(o.getGridId());
grid.setAgencyName(o.getGridName());
grid.setPid(root.getAgencyId());
grid.setLevel("grid");
grid.setSubAgencyList(null);
if (root.getSubAgencyList() == null) {
root.setSubAgencyList(new ArrayList<>());
}
root.getSubAgencyList().add(grid);
}
} catch (Exception e) {
e.printStackTrace();
}
}
/** /**
* @Description 组织树最后一级没有数据的话设null * @Description 组织树最后一级没有数据的话设null
* @Param agencyList * @Param agencyList

25
epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml

@ -342,7 +342,9 @@
SELECT SELECT
ca.id AS "agencyId", ca.id AS "agencyId",
ca.organization_name AS "agencyName", ca.organization_name AS "agencyName",
ca.pids AS "pids" ca.pids AS "pids",
ca.PID AS pid,
ca.LEVEL
FROM FROM
customer_agency ca customer_agency ca
INNER JOIN customer_staff_agency csa ON ca.id = csa.agency_id INNER JOIN customer_staff_agency csa ON ca.id = csa.agency_id
@ -545,6 +547,7 @@
<result column="agencyId" property="agencyId"/> <result column="agencyId" property="agencyId"/>
<result column="agencyName" property="agencyName"/> <result column="agencyName" property="agencyName"/>
<result column="pid" property="pid"/> <result column="pid" property="pid"/>
<result column="level" property="level"/>
</resultMap> </resultMap>
<resultMap id="NodeTreeResult" type="com.epmet.dto.result.AgencyTreeResultDTO" <resultMap id="NodeTreeResult" type="com.epmet.dto.result.AgencyTreeResultDTO"
extends="BaseResultMap"> extends="BaseResultMap">
@ -557,18 +560,32 @@
select select
ID AS agencyId, ID AS agencyId,
ORGANIZATION_NAME AS agencyName, ORGANIZATION_NAME AS agencyName,
PID PID,
LEVEL
from customer_agency from customer_agency
where where
DEL_FLAG = 0 DEL_FLAG = 0
AND PID= #{pid} AND PID= #{pid}
ORDER BY ID ORDER BY ID
</select> </select>
<select id="getSubGridList" resultMap="NodeTreeResult">
select
ID AS agencyId,
grid_name AS agencyName,
PID,
'grid' as LEVEL
from customer_grid
where
DEL_FLAG = 0
AND PID= #{pid}
ORDER BY ID
</select>
<select id="getAllAgency" resultMap="NodeTreeResult"> <select id="getAllAgency" resultMap="NodeTreeResult">
select select
ID AS agencyId, ID AS agencyId,
ORGANIZATION_NAME AS agencyName, ORGANIZATION_NAME AS agencyName,
PID PID,
LEVEL
from from
customer_agency customer_agency
where where
@ -633,4 +650,4 @@
order by created_time desc order by created_time desc
</select> </select>
</mapper> </mapper>

4
epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/controller/BaseGridInfoController.java

@ -44,7 +44,7 @@ public class BaseGridInfoController {
/** /**
* @Author sun * @Author sun
* @Description 组织基础信息中库同步 * @Description 组织基础信息中库同步
**/ **/
@PostMapping("agencybaseinfo") @PostMapping("agencybaseinfo")
public Result getAgencyBaseInfo(@RequestBody(required = false) GridBaseInfoFormDTO formDTO) { public Result getAgencyBaseInfo(@RequestBody(required = false) GridBaseInfoFormDTO formDTO) {
@ -55,7 +55,7 @@ public class BaseGridInfoController {
/** /**
* @Author sun * @Author sun
* @Description 网格基础信息中库同步 * @Description 网格基础信息中库同步
**/ **/
@PostMapping("gridbaseinfo") @PostMapping("gridbaseinfo")
public Result getGridBaseInfo(@RequestBody(required = false) GridBaseInfoFormDTO formDTO) { public Result getGridBaseInfo(@RequestBody(required = false) GridBaseInfoFormDTO formDTO) {

3
epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/service/impl/BaseGridInfoServiceImpl.java

@ -144,7 +144,8 @@ public class BaseGridInfoServiceImpl extends BaseServiceImpl<BaseGridInfoDao, Ba
ExList.add(entity); ExList.add(entity);
}); });
if (null != formDTO.getType() && "all".equals(formDTO.getType())) { if (null != formDTO.getType() && "all".equals(formDTO.getType())) {
exDeptDao.updateBatchGrid(ExList); exDeptDao.updateBatch(ExList);
//exDeptDao.updateBatchGrid(ExList);
} else { } else {
exDeptDao.insertBatch(ExList); exDeptDao.insertBatch(ExList);
} }

9
epmet-module/open-data-worker/open-data-worker-server/src/main/resources/mapper/ExDeptDao.xml

@ -21,7 +21,8 @@
<trim prefix="dept_id_qx =(case" suffix="end),"> <trim prefix="dept_id_qx =(case" suffix="end),">
<foreach collection="list" item="item"> <foreach collection="list" item="item">
<if test='null != item.deptIdQx'> <if test='null != item.deptIdQx'>
when grid_code = #{item.gridCode} then #{item.deptIdQx} <!-- when grid_code = #{item.gridCode} then #{item.deptIdQx} -->
when dept_name_qx = #{item.deptNameQx} then #{item.deptIdQx}
</if> </if>
</foreach> </foreach>
</trim> </trim>
@ -29,7 +30,8 @@
<trim prefix="dept_name_qx =(case" suffix="end),"> <trim prefix="dept_name_qx =(case" suffix="end),">
<foreach collection="list" item="item"> <foreach collection="list" item="item">
<if test='null != item.deptNameQx'> <if test='null != item.deptNameQx'>
when grid_code = #{item.gridCode} then #{item.deptNameQx} when dept_name_qx = #{item.deptNameQx} then #{item.deptIdQx}
<!-- when grid_code = #{item.gridCode} then #{item.deptNameQx} -->
</if> </if>
</foreach> </foreach>
</trim> </trim>
@ -38,7 +40,8 @@
WHERE WHERE
1=1 1=1
<foreach collection="list" item="item" open="AND( " separator=" OR " index="index" close=")"> <foreach collection="list" item="item" open="AND( " separator=" OR " index="index" close=")">
grid_code = #{item.gridCode} <!-- grid_code = #{item.gridCode} -->
dept_name_qx = #{item.deptNameQx}
</foreach> </foreach>
</update> </update>

Loading…
Cancel
Save