Browse Source

Merge remote-tracking branch 'origin/dev'

dev
zxc 4 years ago
parent
commit
bbe7e752e8
  1. 26
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenProjectOrgDailyServiceImpl.java
  2. 33
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml
  3. 2
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectOrgDailyDao.xml

26
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenProjectOrgDailyServiceImpl.java

@ -184,44 +184,30 @@ public class ScreenProjectOrgDailyServiceImpl extends BaseServiceImpl<ScreenProj
log.warn(String.format(PingYinConstants.AGENCY_INFO_IS_ZERO,customerId)); log.warn(String.format(PingYinConstants.AGENCY_INFO_IS_ZERO,customerId));
return; return;
} }
del(customerId, dateId);
List<ProjectOrgDailyResultDTO> projectOrgDaily = baseDao.selectOrgProjectByAgency(agencyInfos, dateId); List<ProjectOrgDailyResultDTO> projectOrgDaily = baseDao.selectOrgProjectByAgency(agencyInfos, dateId);
if (CollectionUtils.isEmpty(projectOrgDaily)){ if (CollectionUtils.isEmpty(projectOrgDaily)){
log.info(String.format(PingYinConstants.SELECT_GRID_INFO_BY_ORG_IS_NULL,customerId)); log.info(String.format(PingYinConstants.SELECT_GRID_INFO_BY_ORG_IS_NULL,customerId));
return; return;
} }
log.info(projectOrgDaily.toString()); log.info(projectOrgDaily.toString());
List<ScreenProjectOrgDailyDTO> createProjects = disposeCreateProject(agencyInfos, dateId); agencyInfos = disposeCreateProject(agencyInfos, dateId);
agencyInfos.forEach(a -> { agencyInfos.forEach(a -> {
a.setDateId(dateId); a.setDateId(dateId);
projectOrgDaily.forEach(p -> { projectOrgDaily.forEach(p -> {
if (a.getAreaCode().equals(p.getAreaCode())){ if (a.getAreaCode().equals(p.getAreaCode())){
a.setResolvedRatio(getRatio(p.getResolvedNum(),p.getProjectTotal()));
a.setBadRatio(getRatio(p.getBadTotal(),p.getEvaluateTotal()));
a.setGoodRatio(getRatio(p.getGoodTotal(),p.getEvaluateTotal()));
a.setBadTotal(p.getBadTotal());
a.setEvaluateTotal(p.getEvaluateTotal());
a.setGoodTotal(p.getGoodTotal());
a.setProjectTotal(p.getProjectTotal());
a.setResolvedNum(p.getResolvedNum());
}
});
});
agencyInfos.forEach(a -> {
createProjects.forEach(p -> {
if (a.getOrgId().equals(p.getOrgId())){
a.setBadTotal(p.getBadTotal() + a.getBadTotal()); a.setBadTotal(p.getBadTotal() + a.getBadTotal());
a.setEvaluateTotal(p.getEvaluateTotal() + a.getEvaluateTotal()); a.setEvaluateTotal(p.getEvaluateTotal() + a.getEvaluateTotal());
a.setGoodTotal(p.getGoodTotal() + a.getGoodTotal()); a.setGoodTotal(p.getGoodTotal() + a.getGoodTotal());
a.setProjectTotal(p.getProjectTotal() + a.getProjectTotal()); a.setProjectTotal(p.getProjectTotal() + a.getProjectTotal());
a.setResolvedNum(p.getResolvedNum() + a.getResolvedNum()); a.setResolvedNum(p.getResolvedNum() + a.getResolvedNum());
a.setResolvedRatio(getRatio(a.getResolvedNum(),a.getProjectTotal())); a.setResolvedRatio(getRatio(p.getResolvedNum(),p.getProjectTotal()));
a.setBadRatio(getRatio(a.getBadTotal(),a.getEvaluateTotal())); a.setBadRatio(getRatio(p.getBadTotal(),p.getEvaluateTotal()));
a.setGoodRatio(getRatio(a.getGoodTotal(),a.getEvaluateTotal())); a.setGoodRatio(getRatio(p.getGoodTotal(),p.getEvaluateTotal()));
} }
}); });
}); });
log.info(agencyInfos.toString()); log.info(agencyInfos.toString());
del(customerId, dateId);
insert(agencyInfos,customerId,dateId); insert(agencyInfos,customerId,dateId);
} }
@ -239,6 +225,7 @@ public class ScreenProjectOrgDailyServiceImpl extends BaseServiceImpl<ScreenProj
log.warn(String.format(PingYinConstants.AGENCY_INFO_IS_ZERO,customerId)); log.warn(String.format(PingYinConstants.AGENCY_INFO_IS_ZERO,customerId));
return; return;
} }
del(customerId, dateId);
List<ProjectOrgDailyResultDTO> projectOrgDaily = baseDao.selectOrgProject(agencyInfos, dateId); List<ProjectOrgDailyResultDTO> projectOrgDaily = baseDao.selectOrgProject(agencyInfos, dateId);
if (CollectionUtils.isEmpty(projectOrgDaily)){ if (CollectionUtils.isEmpty(projectOrgDaily)){
log.info(String.format(PingYinConstants.SELECT_GRID_INFO_BY_ORG_IS_NULL,customerId)); log.info(String.format(PingYinConstants.SELECT_GRID_INFO_BY_ORG_IS_NULL,customerId));
@ -278,7 +265,6 @@ public class ScreenProjectOrgDailyServiceImpl extends BaseServiceImpl<ScreenProj
}); });
}); });
log.info(agencyInfos.toString()); log.info(agencyInfos.toString());
del(customerId, dateId);
insert(agencyInfos,customerId,dateId); insert(agencyInfos,customerId,dateId);
} }

33
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml

@ -623,66 +623,57 @@
<!-- 组织查询项目总数 --> <!-- 组织查询项目总数 -->
<select id="selectProjectTotalByOrg" resultType="com.epmet.dto.pingyin.result.ProjectTotalResultDTO"> <select id="selectProjectTotalByOrg" resultType="com.epmet.dto.pingyin.result.ProjectTotalResultDTO">
<foreach collection="orgIds" item="orgId" separator=" UNION ALL ">
SELECT SELECT
m.AGENCY_ID AS orgId, #{orgId} AS orgId,
IFNULL(COUNT(m.ID),0) AS projectTotal IFNULL(COUNT(m.ID),0) AS projectTotal
FROM fact_origin_project_main_daily m FROM fact_origin_project_main_daily m
WHERE m.DEL_FLAG = 0 WHERE m.DEL_FLAG = 0
AND m.GRID_ID = '' AND m.GRID_ID = ''
AND ( AND m.PIDS LIKE CONCAT('%',#{orgId},'%')
<foreach collection="orgIds" item="orgId" separator=" OR ">
m.AGENCY_ID = #{orgId}
</foreach>
)
<if test="dateId != null and dateId != '' "> <if test="dateId != null and dateId != '' ">
AND m.DATE_ID <![CDATA[ <= ]]> #{dateId} AND m.DATE_ID <![CDATA[ <= ]]> #{dateId}
</if> </if>
<if test="monthId != null and monthId != '' "> <if test="monthId != null and monthId != '' ">
AND m.MONTH_ID <![CDATA[ <= ]]> #{monthId} AND m.MONTH_ID <![CDATA[ <= ]]> #{monthId}
</if> </if>
GROUP BY m.AGENCY_ID </foreach>
</select> </select>
<!-- 组织查询已解决项目数 --> <!-- 组织查询已解决项目数 -->
<select id="selectResolvedNumByOrg" resultType="com.epmet.dto.pingyin.result.ResolvedNumResultDTO"> <select id="selectResolvedNumByOrg" resultType="com.epmet.dto.pingyin.result.ResolvedNumResultDTO">
<foreach collection="orgIds" item="orgId" separator=" UNION ALL ">
SELECT SELECT
AGENCY_ID AS orgId, #{orgId} AS orgId,
IFNULL(COUNT(ID),0) AS resolvedNum IFNULL(COUNT(ID),0) AS resolvedNum
FROM fact_origin_project_main_daily FROM fact_origin_project_main_daily
WHERE DEL_FLAG = 0 WHERE DEL_FLAG = 0
AND DATE_ID <![CDATA[ <= ]]> #{dateId} AND DATE_ID <![CDATA[ <= ]]> #{dateId}
AND PIDS LIKE CONCAT('%',#{orgId},'%')
AND PROJECT_STATUS = 'closed' AND PROJECT_STATUS = 'closed'
AND IS_RESOLVED = 'resolved' AND IS_RESOLVED = 'resolved'
AND (
<foreach collection="orgIds" item="orgId" separator=" OR ">
AGENCY_ID = #{orgId}
</foreach>
)
AND GRID_ID = '' AND GRID_ID = ''
GROUP BY AGENCY_ID </foreach>
</select> </select>
<!-- 组织 查询 满意度评价次数 --> <!-- 组织 查询 满意度评价次数 -->
<select id="selectEvaluateCountByOrg" resultType="com.epmet.dto.pingyin.result.EvaluateTotalResultDTO"> <select id="selectEvaluateCountByOrg" resultType="com.epmet.dto.pingyin.result.EvaluateTotalResultDTO">
<foreach collection="orgIds" item="orgId" separator=" UNION ALL ">
SELECT SELECT
ORG_ID, #{orgId} as orgId,
IFNULL(COUNT(PROJECT_ID),0) AS evaluateCount IFNULL(COUNT(PROJECT_ID),0) AS evaluateCount
FROM fact_origin_project_log_daily FROM fact_origin_project_log_daily
WHERE DEL_FLAG = 0 WHERE DEL_FLAG = 0
AND ORG_TYPE = 'agency' AND ORG_TYPE = 'agency'
AND DATE_ID <![CDATA[ <= ]]> #{dateId} AND DATE_ID <![CDATA[ <= ]]> #{dateId}
AND ( AND PIDS LIKE CONCAT('%',#{orgId},'%')
<foreach collection="orgIds" item="orgId" separator=" OR ">
org_id = #{orgId}
</foreach>
)
AND IS_ACTIVE = 1 AND IS_ACTIVE = 1
AND ( AND (
<foreach collection="activeCodes" item="code" separator=" OR "> <foreach collection="activeCodes" item="code" separator=" OR ">
ACTION_CODE = #{code} ACTION_CODE = #{code}
</foreach> </foreach>
) )
GROUP BY ORG_ID </foreach>
</select> </select>
<!-- 组织查询本月新增项目数 --> <!-- 组织查询本月新增项目数 -->

2
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectOrgDailyDao.xml

@ -138,7 +138,7 @@
FROM screen_project_grid_daily g FROM screen_project_grid_daily g
LEFT JOIN screen_customer_grid cg ON cg.GRID_ID = g.GRID_ID LEFT JOIN screen_customer_grid cg ON cg.GRID_ID = g.GRID_ID
WHERE g.DEL_FLAG = 0 WHERE g.DEL_FLAG = 0
AND cg.PARENT_AGENCY_ID = #{a.orgId} AND cg.ALL_PARENT_IDS LIKE CONCAT('%',#{a.orgId},'%')
AND g.DATE_ID <![CDATA[ = ]]> #{dateId} AND g.DATE_ID <![CDATA[ = ]]> #{dateId}
</foreach> </foreach>
</select> </select>

Loading…
Cancel
Save