Browse Source

项目分布分析

dev_shibei_match
zxc 4 years ago
parent
commit
b266e8532a
  1. 20
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/SonOrgResultDTO.java
  2. 2
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java
  3. 4
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java
  4. 4
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java
  5. 4
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java
  6. 2
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/AgencyService.java
  7. 9
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java
  8. 14
      epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml
  9. 22
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java
  10. 2
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml

20
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/SonOrgResultDTO.java

@ -0,0 +1,20 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2021/12/31 10:22 上午
* @DESC
*/
@Data
public class SonOrgResultDTO implements Serializable {
private static final long serialVersionUID = -1046350929245852333L;
private String orgId;
private String pids;
}

2
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java

@ -539,7 +539,7 @@ public interface GovOrgOpenFeignClient {
* @date 2021/12/9 4:42 下午
*/
@PostMapping("/gov/org/agency/getsonagencyid")
Result<List<String>> getSonAgencyId(@RequestParam("orgId")String orgId);
Result<List<SonOrgResultDTO>> getSonAgencyId(@RequestParam("orgId")String orgId,@RequestParam("type")String type);
// /icbuilding/{id}?id=demoData

4
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java

@ -335,8 +335,8 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient {
}
@Override
public Result<List<String>> getSonAgencyId(String orgId) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getSonAgencyId", orgId);
public Result<List<SonOrgResultDTO>> getSonAgencyId(String orgId,String type) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getSonAgencyId", orgId,type);
}
@Override

4
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java

@ -356,8 +356,8 @@ public class AgencyController {
* @date 2021/12/9 4:42 下午
*/
@PostMapping("getsonagencyid")
public Result<List<String>> getSonAgencyId(@RequestParam("orgId")String orgId){
return new Result<List<String>>().ok(agencyService.getSonAgencyId(orgId));
public Result<List<SonOrgResultDTO>> getSonAgencyId(@RequestParam("orgId")String orgId,@RequestParam("type")String type){
return new Result<List<SonOrgResultDTO>>().ok(agencyService.getSonAgencyId(orgId,type));
}
}

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

@ -280,7 +280,9 @@ public interface CustomerAgencyDao extends BaseDao<CustomerAgencyEntity> {
* @author zxc
* @date 2021/12/9 4:42 下午
*/
List<String> getSonAgencyId(@Param("orgId") String orgId);
List<SonOrgResultDTO> getSonAgencyId(@Param("orgId") String orgId);
List<SonOrgResultDTO> getSonGridId(@Param("orgId") String orgId);
}

2
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/AgencyService.java

@ -154,6 +154,6 @@ public interface AgencyService {
* @author zxc
* @date 2021/12/9 4:42 下午
*/
List<String> getSonAgencyId(String orgId);
List<SonOrgResultDTO> getSonAgencyId(String orgId,String type);
}

9
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java

@ -638,8 +638,13 @@ public class AgencyServiceImpl implements AgencyService {
* @date 2021/12/9 4:42 下午
*/
@Override
public List<String> getSonAgencyId(String orgId) {
List<String> result = customerAgencyDao.getSonAgencyId(orgId);
public List<SonOrgResultDTO> getSonAgencyId(String orgId,String type) {
List<SonOrgResultDTO> result = new ArrayList<>();
if (type.equals("community")){
result = customerAgencyDao.getSonGridId(orgId);
}else {
result = customerAgencyDao.getSonAgencyId(orgId);
}
if (CollectionUtils.isNotEmpty(result)){
return result;
}

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

@ -669,13 +669,23 @@
</select>
<!-- 查询下级agencyId -->
<select id="getSonAgencyId" resultType="java.lang.String">
<select id="getSonAgencyId" resultType="com.epmet.dto.result.SonOrgResultDTO">
SELECT
ID
ID AS orgId,
pids
FROM customer_agency
WHERE
DEL_FLAG = '0'
AND PID = #{orgId}
</select>
<select id="getSonGridId" resultType="com.epmet.dto.result.SonOrgResultDTO">
SELECT
ID AS orgId,
pids
FROM customer_grid
WHERE
DEL_FLAG = '0'
AND PID = #{orgId}
</select>
</mapper>

22
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java

@ -2915,22 +2915,26 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
}
ProjectDistributionAnalysisRightResultDTO result = new ProjectDistributionAnalysisRightResultDTO();
List<ProjectDistributionAnalysisRightDTO> orgList = new ArrayList<>();
if (!agencyInfo.getLevel().equals(ProjectConstant.ORG_LEVEL_COMMUNITY)){
Result<List<String>> sonAgencyIdResult = govOrgOpenFeignClient.getSonAgencyId(formDTO.getOrgId());
if (!sonAgencyIdResult.success()){
throw new EpmetException(String.format("查询组织{%s}的下级组织失败...",formDTO.getOrgId()));
}
List<String> agencyIds = sonAgencyIdResult.getData();
if (CollectionUtils.isNotEmpty(agencyIds)){
orgList = baseDao.selectProjectCountByOrg(agencyIds,formDTO.getStartDate(),formDTO.getEndDate());
Result<List<SonOrgResultDTO>> sonOrgList = govOrgOpenFeignClient.getSonAgencyId(formDTO.getOrgId(), agencyInfo.getLevel());
if (!sonOrgList.success() || CollectionUtils.isEmpty(sonOrgList.getData())){
throw new EpmetException(String.format("查询组织{%s}的下级组织失败或为空...",formDTO.getOrgId()));
}
List<SonOrgResultDTO> orgIds = sonOrgList.getData();
if (!agencyInfo.getLevel().equals(ProjectConstant.ORG_LEVEL_COMMUNITY)){
orgList = baseDao.selectProjectCountByOrg(orgIds.stream().map(m -> m.getPids()).collect(Collectors.toList()), formDTO.getStartDate(),formDTO.getEndDate());
}else {
for (SonOrgResultDTO o : orgIds) {
ProjectDistributionAnalysisRightDTO dto = new ProjectDistributionAnalysisRightDTO();
dto.setOrgId(o.getOrgId());
orgList.add(dto);
}
Result<List<ProjectDistributionAnalysisRightDTO>> projectCountByGrid = govIssueOpenFeignClient.getProjectCountByGrid(formDTO);
if (!projectCountByGrid.success()){
throw new EpmetException("查询网格项目数失败...");
}
if (CollectionUtils.isNotEmpty(projectCountByGrid.getData())){
orgList = projectCountByGrid.getData();
orgList.stream().forEach(o -> projectCountByGrid.getData().stream().filter(p -> p.getOrgId().equals(o.getOrgId())).forEach(p -> o.setCount(p.getCount())));
}
}
if (CollectionUtils.isEmpty(orgList)){

2
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml

@ -478,7 +478,7 @@
COUNT(ID) AS count
FROM project
WHERE DEL_FLAG = '0'
AND ORG_ID_PATH LIKE CONCAT('%',#{orgId},'%')
AND ORG_ID_PATH LIKE CONCAT(#{orgId},'%')
AND DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') >= #{startDate}
AND DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') <![CDATA[ <= ]]> #{endDate}
</foreach>

Loading…
Cancel
Save