|
|
|
@ -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; |
|
|
|
} |
|
|
|
|
|
|
|
|