Browse Source

先进支部排行接口修改

dev_shibei_match
yinzuomei 5 years ago
parent
commit
87a22641ff
  1. 5
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/form/AgencyAndNumFormDTO.java
  2. 2
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenOrgRankDataDao.java
  3. 54
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/PartyMemberLeadServiceImpl.java
  4. 32
      epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenOrgRankDataDao.xml

5
epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/form/AgencyAndNumFormDTO.java

@ -25,4 +25,9 @@ public class AgencyAndNumFormDTO implements Serializable {
* */
@NotBlank(message = "机关Id不能为空" , groups = AgencyFormDTO.CommonAgencyIdGroup.class)
private String agencyId;
/**
* 目前只有平阴在传默认赋值370124
*/
private String areaCode;
}

2
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenOrgRankDataDao.java

@ -42,4 +42,6 @@ public interface ScreenOrgRankDataDao{
**/
List<OrgRankDataResultDTO> selectGridDataMonthly(@Param("agencyId") String agencyId, @Param("monthId") String monthId);
List<OrgRankDataResultDTO> selectGridDataMonthlyAreaCode(@Param("monthId") String monthId,
@Param("areaCode")String areaCode);
}

54
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/PartyMemberLeadServiceImpl.java

@ -258,6 +258,7 @@ public class PartyMemberLeadServiceImpl implements PartyMemberLeadService {
@DataSource(value = DataSourceConstant.EVALUATION_INDEX,datasourceNameFromArg = true)
@Override
public List<AdvanceBranchRankResultDTO> advancedBranchRank(AgencyAndNumFormDTO param) {
List<AdvanceBranchRankResultDTO> result = new LinkedList<>();
if(null == param.getTopNum()){
param.setTopNum(NumConstant.FIVE);
}else if(NumConstant.ZERO == param.getTopNum()){
@ -265,24 +266,43 @@ public class PartyMemberLeadServiceImpl implements PartyMemberLeadService {
}
PageHelper.startPage(NumConstant.ONE,param.getTopNum());
String monthId = dateUtils.getCurrentMonthId();
List<OrgRankDataResultDTO> gridData =
screenOrgRankDataDao.selectGridDataMonthly(param.getAgencyId(),monthId);
int time = NumConstant.TWELVE;
while(CollectionUtils.isEmpty(gridData) && time > NumConstant.ONE){
time--;
monthId = dateUtils.getPreviousMonthIdByDest(null,monthId);
PageHelper.startPage(NumConstant.ONE,param.getTopNum());
gridData = screenOrgRankDataDao.selectGridDataMonthly(param.getAgencyId(),monthId);
if(StringUtils.isNotBlank(param.getAreaCode())){
log.info("先进排行榜单-先进支部排行入参"+JSON.toJSONString(param));
//areaCode不为空,按照areaCode查询
List<OrgRankDataResultDTO> gridData =
screenOrgRankDataDao.selectGridDataMonthlyAreaCode(monthId,param.getAreaCode());
int time = NumConstant.TWELVE;
while(CollectionUtils.isEmpty(gridData) && time > NumConstant.ONE){
time--;
monthId = dateUtils.getPreviousMonthIdByDest(null,monthId);
PageHelper.startPage(NumConstant.ONE,param.getTopNum());
gridData = screenOrgRankDataDao.selectGridDataMonthlyAreaCode(monthId,param.getAreaCode());
}
if(null == gridData || gridData.isEmpty()) return result;
gridData.forEach( data -> {
AdvanceBranchRankResultDTO o = ConvertUtils.sourceToTarget(data,AdvanceBranchRankResultDTO.class);
o.setClosedProjectRatio(convertPercentStr(data.getClosedProjectRatio()));
o.setSatisfactionRatio(convertPercentStr(data.getSatisfactionRatio()));
result.add(o);
});
}else{
List<OrgRankDataResultDTO> gridData =
screenOrgRankDataDao.selectGridDataMonthly(param.getAgencyId(),monthId);
int time = NumConstant.TWELVE;
while(CollectionUtils.isEmpty(gridData) && time > NumConstant.ONE){
time--;
monthId = dateUtils.getPreviousMonthIdByDest(null,monthId);
PageHelper.startPage(NumConstant.ONE,param.getTopNum());
gridData = screenOrgRankDataDao.selectGridDataMonthly(param.getAgencyId(),monthId);
}
if(null == gridData || gridData.isEmpty()) return result;
gridData.forEach( data -> {
AdvanceBranchRankResultDTO o = ConvertUtils.sourceToTarget(data,AdvanceBranchRankResultDTO.class);
o.setClosedProjectRatio(convertPercentStr(data.getClosedProjectRatio()));
o.setSatisfactionRatio(convertPercentStr(data.getSatisfactionRatio()));
result.add(o);
});
}
List<AdvanceBranchRankResultDTO> result = new LinkedList<>();
if(null == gridData || gridData.isEmpty()) return result;
gridData.forEach( data -> {
AdvanceBranchRankResultDTO o = ConvertUtils.sourceToTarget(data,AdvanceBranchRankResultDTO.class);
o.setClosedProjectRatio(convertPercentStr(data.getClosedProjectRatio()));
o.setSatisfactionRatio(convertPercentStr(data.getSatisfactionRatio()));
result.add(o);
});
return result;
}

32
epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenOrgRankDataDao.xml

@ -34,4 +34,36 @@
</select>
<select id="selectGridDataMonthlyAreaCode" parameterType="map" resultType="com.epmet.evaluationindex.screen.dto.result.OrgRankDataResultDTO">
SELECT
rankData.ORG_NAME AS NAME,
rankData.PARTY_TOTAL AS partyMemberNum,
rankData.GROUP_TOTAL AS branchNum,
rankData.ISSUE_TOTAL AS issueNum,
rankData.PROJECT_TOTAL AS projectNum,
rankData.CLOSE_PROJECT_RATIO AS closedProjectRatio,
rankData.SATISFACTION_RATIO AS satisfactionRatio,
agency.AGENCY_NAME AS parentAgencyName
FROM
screen_org_rank_data rankData
left join screen_customer_grid scg on(
rankData.ORG_ID=scg.GRID_ID
and scg.DEL_FLAG='0'
)
LEFT JOIN screen_customer_agency agency
ON (scg.PARENT_AGENCY_ID = agency.AGENCY_ID AND agency.DEL_FLAG = '0')
WHERE
rankData.DEL_FLAG = '0'
AND rankData.ORG_TYPE = 'grid'
and scg.AREA_CODE like CONCAT('%',#{areaCode},'%')
AND rankData.MONTH_ID = #{monthId}
ORDER BY
(rankData.PARTY_TOTAL + rankData.GROUP_TOTAL + rankData.ISSUE_TOTAL + rankData.PROJECT_TOTAL + rankData.CLOSE_PROJECT_RATIO + rankData.SATISFACTION_RATIO) DESC,
rankData.PARTY_TOTAL DESC,
rankData.GROUP_TOTAL DESC,
rankData.ISSUE_TOTAL DESC,
rankData.PROJECT_TOTAL DESC,
rankData.CLOSE_PROJECT_RATIO DESC,
rankData.SATISFACTION_RATIO DESC
</select>
</mapper>
Loading…
Cancel
Save