|
@@ -57,7 +57,7 @@ public class ScoreCalculationServiceNum13 implements ScoreCalculationService {
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
- public JtYcpfhzDetail soreCalculation(JtYcpfhz jtYcpfhz, List<JtXmkh> khbmList, List<JtKhxm> jtKhxmList, JtGsjtbsj jtGsjtbsj, JkAssessmentRules jkAssessmentRules, SysUserVo currentUser) {
|
|
|
|
|
|
+ public JtYcpfhzDetail soreCalculation(JtYcpfhz jtYcpfhz, List<JtXmkh> khbmList, JtGsjtbsj jtGsjtbsj, JkAssessmentRules jkAssessmentRules, SysUserVo currentUser) {
|
|
// 考核得分
|
|
// 考核得分
|
|
BigDecimal finalScore = jkAssessmentRules.getWeight();
|
|
BigDecimal finalScore = jkAssessmentRules.getWeight();
|
|
// 扣分细则
|
|
// 扣分细则
|
|
@@ -65,7 +65,7 @@ public class ScoreCalculationServiceNum13 implements ScoreCalculationService {
|
|
// 获取考核项目信息 计划完成时间”在考核区间内且中标主体为二级单位以上的项目
|
|
// 获取考核项目信息 计划完成时间”在考核区间内且中标主体为二级单位以上的项目
|
|
List<JtFjglxm> khxmList = jtFjglxmService.list(new LambdaQueryWrapper<JtFjglxm>().eq(BaseDo::getDeleted, "0")
|
|
List<JtFjglxm> khxmList = jtFjglxmService.list(new LambdaQueryWrapper<JtFjglxm>().eq(BaseDo::getDeleted, "0")
|
|
.eq(JtFjglxm::getZbztdj, "0")
|
|
.eq(JtFjglxm::getZbztdj, "0")
|
|
- .in(JtFjglxm::getMainid, khbmList.stream().map(JtXmkh::getId))
|
|
|
|
|
|
+ .in(JtFjglxm::getMainid, khbmList.stream().map(JtXmkh::getId).collect(Collectors.toList()))
|
|
.between(JtFjglxm::getJhwcsj, jtGsjtbsj.getAssessmentstarttime(), jtGsjtbsj.getAssessmentendtime()));
|
|
.between(JtFjglxm::getJhwcsj, jtGsjtbsj.getAssessmentstarttime(), jtGsjtbsj.getAssessmentendtime()));
|
|
if (khxmList.isEmpty()) {
|
|
if (khxmList.isEmpty()) {
|
|
errorMsg = "公司级:分级管理-项目清单为空";
|
|
errorMsg = "公司级:分级管理-项目清单为空";
|
|
@@ -73,7 +73,7 @@ public class ScoreCalculationServiceNum13 implements ScoreCalculationService {
|
|
return assemblyYcpfhzDetail(jtYcpfhz, jkAssessmentRules, finalScore, errorMsg, currentUser);
|
|
return assemblyYcpfhzDetail(jtYcpfhz, jkAssessmentRules, finalScore, errorMsg, currentUser);
|
|
}
|
|
}
|
|
// 获取勘察设计项目清单 计划内项目的总数量 “计划完成时间”(分级管理-项目清单)在考核区间内且中标主体为二级单位及以上且在勘察设计项目工作清单内的项目数量。
|
|
// 获取勘察设计项目清单 计划内项目的总数量 “计划完成时间”(分级管理-项目清单)在考核区间内且中标主体为二级单位及以上且在勘察设计项目工作清单内的项目数量。
|
|
- List<JtKcsjxm> gcsjqd = jtKcsjxmService.list(new LambdaQueryWrapper<JtKcsjxm>().eq(BaseDo::getDeleted, "0").in(JtKcsjxm::getMainid, khbmList.stream().map(JtXmkh::getId)).in(JtKcsjxm::getXmmc, khxmList.stream().map(JtFjglxm::getXmmc)));
|
|
|
|
|
|
+ List<JtKcsjxm> gcsjqd = jtKcsjxmService.list(new LambdaQueryWrapper<JtKcsjxm>().eq(BaseDo::getDeleted, "0").in(JtKcsjxm::getMainid, khbmList.stream().map(JtXmkh::getId)).in(JtKcsjxm::getXmmc, khxmList.stream().map(JtFjglxm::getXmmc).collect(Collectors.toList())));
|
|
// 获取分母 计划内项目的总数量
|
|
// 获取分母 计划内项目的总数量
|
|
List<String> denominator = gcsjqd.stream().map(JtKcsjxm::getXmmc).distinct().collect(Collectors.toList());
|
|
List<String> denominator = gcsjqd.stream().map(JtKcsjxm::getXmmc).distinct().collect(Collectors.toList());
|
|
if (denominator.isEmpty()) {
|
|
if (denominator.isEmpty()) {
|
|
@@ -82,7 +82,7 @@ public class ScoreCalculationServiceNum13 implements ScoreCalculationService {
|
|
return assemblyYcpfhzDetail(jtYcpfhz, jkAssessmentRules, finalScore, errorMsg, currentUser);
|
|
return assemblyYcpfhzDetail(jtYcpfhz, jkAssessmentRules, finalScore, errorMsg, currentUser);
|
|
}
|
|
}
|
|
// 获取已完成审查的项目数量 分子
|
|
// 获取已完成审查的项目数量 分子
|
|
- List<JtScsdl> ywcscList = jtScsdlService.list(new LambdaQueryWrapper<JtScsdl>().eq(BaseDo::getDeleted, "0").in(JtScsdl::getMainid, khbmList.stream().map(JtXmkh::getId)).in(JtScsdl::getXmmc, gcsjqd.stream().map(JtKcsjxm::getXmmc)).between(JtScsdl::getPzsj, jtGsjtbsj.getAssessmentstarttime(), jtGsjtbsj.getAssessmentendtime()));
|
|
|
|
|
|
+ List<JtScsdl> ywcscList = jtScsdlService.list(new LambdaQueryWrapper<JtScsdl>().eq(BaseDo::getDeleted, "0").in(JtScsdl::getMainid, khbmList.stream().map(JtXmkh::getId)).in(JtScsdl::getXmmc, gcsjqd.stream().map(JtKcsjxm::getXmmc).collect(Collectors.toList())).between(JtScsdl::getPzsj, jtGsjtbsj.getAssessmentstarttime(), jtGsjtbsj.getAssessmentendtime()));
|
|
// 分子 已审定的项目数量: 最终节点审定责任人(审查审定-审查审定率)、批准时间(审查审定-审查审定率)不为空的且批准时间在考核区间内的项目数量
|
|
// 分子 已审定的项目数量: 最终节点审定责任人(审查审定-审查审定率)、批准时间(审查审定-审查审定率)不为空的且批准时间在考核区间内的项目数量
|
|
List<String> numerator = ywcscList.stream().filter(data -> StringUtils.isNotBlank(data.getZzjdsdzrr()) && data.getPzsj() != null).map(JtScsdl::getXmmc).distinct().collect(Collectors.toList());
|
|
List<String> numerator = ywcscList.stream().filter(data -> StringUtils.isNotBlank(data.getZzjdsdzrr()) && data.getPzsj() != null).map(JtScsdl::getXmmc).distinct().collect(Collectors.toList());
|
|
if (numerator.isEmpty()) {
|
|
if (numerator.isEmpty()) {
|