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. 91
      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);
} }

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