Commit 8079bc6a by yao.xiao

修改-查询商机分数/预测统计出参

parent 2cb6bb80
...@@ -1390,25 +1390,28 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service. ...@@ -1390,25 +1390,28 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
saveMonthGoal(info,practitionerId,date,year,goalsType,subordinate); saveMonthGoal(info,practitionerId,date,year,goalsType,subordinate);
} }
//保存经纪人商机活动量均分 //经纪人保存/团队不需保存
MdDropMaster mdDropMaster = mdDropMasterDALService.findByScenarioCode("bizchance_promotion_action"); if (goalsType==1){
Long masterId = mdDropMaster.getId(); //保存经纪人商机活动量均分
//查询出所有计算公式 MdDropMaster mdDropMaster = mdDropMasterDALService.findByScenarioCode("bizchance_promotion_action");
//件数 年总 Long masterId = mdDropMaster.getId();
Integer pieces = requestVO.getPieces(); //查询出所有计算公式
int piecesMonth = BigDecimal.valueOf(pieces).divide(BigDecimal.valueOf(12),0, BigDecimal.ROUND_UP).intValue(); //件数 年总
System.out.println("piecesMonth:"+piecesMonth); Integer pieces = requestVO.getPieces();
ScriptEngine jScriptEngine=new ScriptEngineManager().getEngineByName("JavaScript"); int piecesMonth = BigDecimal.valueOf(pieces).divide(BigDecimal.valueOf(12),0, BigDecimal.ROUND_UP).intValue();
List<MdGoalsCalculateExpression> list = mdGoalsCalculateExpressionService.findByMasterId(masterId); System.out.println("piecesMonth:"+piecesMonth);
List<SalesTargetActions> salesTargetActionsList = new ArrayList<>(); ScriptEngine jScriptEngine=new ScriptEngineManager().getEngineByName("JavaScript");
for (MdGoalsCalculateExpression info : list){ List<MdGoalsCalculateExpression> list = mdGoalsCalculateExpressionService.findByMasterId(masterId);
//保存经纪人商机活动量分摊细化设置 ag_mkt_leads_goals_actions List<SalesTargetActions> salesTargetActionsList = new ArrayList<>();
SalesTargetActions salesTargetAction = saveLeadsGoalsActions(info,jScriptEngine,year,piecesMonth,practitionerId,date,goalsType); for (MdGoalsCalculateExpression info : list){
salesTargetActionsList.add(salesTargetAction); //保存经纪人商机活动量分摊细化设置 ag_mkt_leads_goals_actions
SalesTargetActions salesTargetAction = saveLeadsGoalsActions(info,jScriptEngine,year,piecesMonth,practitionerId,date,goalsType);
salesTargetActionsList.add(salesTargetAction);
}
responseVO.setSalesTargetActions(salesTargetActionsList);
} }
BeanUtils.copyProperties(requestVO,responseVO); BeanUtils.copyProperties(requestVO,responseVO);
responseVO.setSalesTargetActions(salesTargetActionsList);
responseVO.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000"))); responseVO.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000")));
return responseVO; return responseVO;
} }
...@@ -1428,6 +1431,12 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service. ...@@ -1428,6 +1431,12 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
mktLeadsGoals.setPractitionerId(practitionerId); mktLeadsGoals.setPractitionerId(practitionerId);
mktLeadsGoals.setCurrentYear(year); mktLeadsGoals.setCurrentYear(year);
mktLeadsGoals.setGoalsType(goalsType); mktLeadsGoals.setGoalsType(goalsType);
List<AclPractitionerSubordinateSystem> subordinateSystems = aclPractitionerSubordinateSystemDALService.findByOwnerPractitionerId(practitionerId);
if (subordinateSystems.isEmpty()){
responseVO.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("830017")));
return responseVO;
}
mktLeadsGoals.setSubordinateSystemId(subordinateSystems.get(0).getId());
List<MktLeadsGoals> mktLeadsGoalsList = mktLeadsGoalsDALService.findByMktLeadsGoals(mktLeadsGoals); List<MktLeadsGoals> mktLeadsGoalsList = mktLeadsGoalsDALService.findByMktLeadsGoals(mktLeadsGoals);
List<SalesTargetMonth> salesTargetMonthList = new ArrayList<>(); List<SalesTargetMonth> salesTargetMonthList = new ArrayList<>();
for (MktLeadsGoals info :mktLeadsGoalsList){ for (MktLeadsGoals info :mktLeadsGoalsList){
...@@ -1538,23 +1547,23 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service. ...@@ -1538,23 +1547,23 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
Long refusedId = optionCodeToId.get("refused"); Long refusedId = optionCodeToId.get("refused");
HashMap<String,BigDecimal> performanceForecast = mktLeadsAssignedsDALService.performanceForecastForTeam(practitionerIds,refusedId); HashMap<String,BigDecimal> performanceForecast = mktLeadsAssignedsDALService.performanceForecastForTeam(practitionerIds,refusedId);
//月平均保费 //月平均保费
Double premiumMonthAverage = getScoreAverage(performanceForecast.get("totalFYCMonth"),practitionerNum); Double premiumMonth = performanceForecast.get("totalFYCMonth").doubleValue();
//月平均佣金 //月平均佣金
Double commissionMonthAverage = getScoreAverage(performanceForecast.get("totalFYPMonth"),practitionerNum); Double commissionMonth = performanceForecast.get("totalFYPMonth").doubleValue();
//月平均件数 //月平均件数
Double piecesMonthAverage = getScoreAverage(performanceForecast.get("totalPiecesMonth"),practitionerNum); Double piecesMonth = performanceForecast.get("totalPiecesMonth").doubleValue();
// 季度平均保费 // 季度平均保费
Double premiumQuarterAverage = getScoreAverage(performanceForecast.get("totalFYCQuarter"),practitionerNum); Double premiumQuarter = performanceForecast.get("totalFYCQuarter").doubleValue();
// 季度平均佣金 // 季度平均佣金
Double commissionQuarterAverage = getScoreAverage(performanceForecast.get("totalFYPQuarter"),practitionerNum); Double commissionQuarter = performanceForecast.get("totalFYPQuarter").doubleValue();
//季度平均件数 //季度平均件数
Double piecesQuarterAverage = getScoreAverage(performanceForecast.get("totalPiecesQuarter"),practitionerNum); Double piecesQuarter = performanceForecast.get("totalPiecesQuarter").doubleValue();
//年平均保费 //年平均保费
Double premiumYearAverage = getScoreAverage(performanceForecast.get("totalFYCYear"),practitionerNum); Double premiumYear = performanceForecast.get("totalFYCYear").doubleValue();
//年平均佣金 //年平均佣金
Double commissionYearAverage = getScoreAverage(performanceForecast.get("totalFYPYear"),practitionerNum); Double commissionYear = performanceForecast.get("totalFYPYear").doubleValue();
//年平均件数 //年平均件数
Double piecesYearAverage = getScoreAverage(performanceForecast.get("totalPiecesYear"),practitionerNum); Double piecesYear = performanceForecast.get("totalPiecesYear").doubleValue();
List<MktLeadsGoals> leadsGoals = getYearTeamGoals(practitionerId); List<MktLeadsGoals> leadsGoals = getYearTeamGoals(practitionerId);
ConcurrentHashMap<String,Double> achievementRateMap = new ConcurrentHashMap<>(); ConcurrentHashMap<String,Double> achievementRateMap = new ConcurrentHashMap<>();
...@@ -1567,15 +1576,15 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service. ...@@ -1567,15 +1576,15 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
responseVO.setScoreWeekAverage(scoreWeekAverage); responseVO.setScoreWeekAverage(scoreWeekAverage);
responseVO.setScoreMonthAverage(scoreMonthAverage); responseVO.setScoreMonthAverage(scoreMonthAverage);
responseVO.setOpportunitiesNum(opportunitiesNum); responseVO.setOpportunitiesNum(opportunitiesNum);
responseVO.setPremiumMonthAverage(premiumMonthAverage); responseVO.setPremiumMonth(premiumMonth);
responseVO.setCommissionMonthAverage(commissionMonthAverage); responseVO.setCommissionMonth(commissionMonth);
responseVO.setPiecesMonthAverage(piecesMonthAverage); responseVO.setPiecesMonth(piecesMonth);
responseVO.setPremiumQuarterAverage(premiumQuarterAverage); responseVO.setPremiumQuarter(premiumQuarter);
responseVO.setCommissionQuarterAverage(commissionQuarterAverage); responseVO.setCommissionQuarter(commissionQuarter);
responseVO.setPiecesQuarterAverage(piecesQuarterAverage); responseVO.setPiecesQuarter(piecesQuarter);
responseVO.setPremiumYearAverage(premiumYearAverage); responseVO.setPremiumYear(premiumYear);
responseVO.setCommissionYearAverage(commissionYearAverage); responseVO.setCommissionYear(commissionYear);
responseVO.setPiecesYearAverage(piecesYearAverage); responseVO.setPiecesYear(piecesYear);
responseVO.setAchievementRateYear(achievementRateMap.get("achievementRateYear")); responseVO.setAchievementRateYear(achievementRateMap.get("achievementRateYear"));
responseVO.setAchievementRateQuarter(achievementRateMap.get("achievementRateQuarter")); responseVO.setAchievementRateQuarter(achievementRateMap.get("achievementRateQuarter"));
responseVO.setAchievementRateMonth(achievementRateMap.get("achievementRateMonth")); responseVO.setAchievementRateMonth(achievementRateMap.get("achievementRateMonth"));
......
...@@ -23,41 +23,41 @@ public class TeamActionsAverageQueryResponseVO { ...@@ -23,41 +23,41 @@ public class TeamActionsAverageQueryResponseVO {
*/ */
private Integer opportunitiesNum; private Integer opportunitiesNum;
/** /**
* 月平均保费 * 月保费
*/ */
private Double premiumMonthAverage; private Double premiumMonth;
/** /**
* 月平均佣金 * 月佣金
*/ */
private Double commissionMonthAverage; private Double commissionMonth;
/** /**
* 月平均件数 * 月件数
*/ */
private Double piecesMonthAverage; private Double piecesMonth;
/** /**
* 季度平均保费 * 季度保费
*/ */
private Double premiumQuarterAverage; private Double premiumQuarter;
/** /**
* 季度平均佣金 * 季度佣金
*/ */
private Double commissionQuarterAverage; private Double commissionQuarter;
/** /**
* 季度平均件数 * 季度件数
*/ */
private Double piecesQuarterAverage; private Double piecesQuarter;
/** /**
* 年平均保费 * 年保费
*/ */
private Double premiumYearAverage; private Double premiumYear;
/** /**
* 年平均佣金 * 年佣金
*/ */
private Double commissionYearAverage; private Double commissionYear;
/** /**
* 年平均件数 * 年件数
*/ */
private Double piecesYearAverage; private Double piecesYear;
/** /**
* 年完成率 * 年完成率
*/ */
......
...@@ -29,4 +29,5 @@ ...@@ -29,4 +29,5 @@
830014=此客户已是其他经纪人商机 830014=此客户已是其他经纪人商机
830015=每天同一个跟进状态只能对一个商机经行一次增加! 830015=每天同一个跟进状态只能对一个商机经行一次增加!
830016=您不是团队长,无法进行编辑保存 830016=您不是团队长,无法进行编辑保存
830017=您不是团队长,无法进行查看
900003=保险公司响应报文为空! 900003=保险公司响应报文为空!
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment