Browse Source

考评报告处理

全业务考评 1 year atrás
parent
commit
6016d523d7

+ 22 - 10
ims-service/ims-eval/src/main/java/com/ims/eval/config/permission/PermissionAspect.java

@@ -127,8 +127,13 @@ public class PermissionAspect implements Interceptor {
 			post = getSysPost(postUserList);
 
 			// 比较Scope字段并取最大值
-			if(null != post){
-				scope = Integer.min(scope, post.getScope());
+			if(null != post ){
+				if("JCDW".equals(post.getKeyValue())){
+					scope = post.getScope();
+				}else {
+					scope = Integer.min(scope, post.getScope());
+				}
+
 			}
 		}
 
@@ -233,17 +238,24 @@ public class PermissionAspect implements Interceptor {
 							if (bktype) {
 
 								List<OrganizationEvaluationRule> list = CacheContext.ruleMap.get(organizationId);
-								StringBuilder bis = new StringBuilder("(");
-								for (OrganizationEvaluationRule rule : list) {
-									rule.getBinSection();
-									for (String bi : rule.getBinSection().split(",")) {
-										bis.append("'").append(bi).append("',");
+								StringBuilder bis = new StringBuilder();
+								if(null !=list && list.size()>0){
+									bis.append("(");
+									for (OrganizationEvaluationRule rule : list) {
+										rule.getBinSection();
+										for (String bi : rule.getBinSection().split(",")) {
+											bis.append("'").append(bi).append("',");
+										}
 									}
+									bis.append(")");
 								}
-								bis.append(")");
-
 								System.out.println("查询条件:"+bis.toString().replace(",)",")"));
-								sql = getSql(sql, bis.toString().replace(",)",")"), "bktype");
+								if(bis.toString().length()<=0){
+									sql = getSql(sql,"('')", "bktype");
+								}else {
+									sql = getSql(sql, bis.toString().replace(",)",")"), "bktype");
+								}
+
 							}
 
 						} else {

+ 11 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/service/impl/OrganizationEvaluationServiceImpl.java

@@ -790,9 +790,20 @@ public class OrganizationEvaluationServiceImpl extends ServiceImpl<OrganizationE
 			if(ruleIds.size()>1){
 				return null;
 			}
+			//规则中配置的指标
 			List<EvaluateRuleInfo> ruleInfos = evaluateRuleInfoService.list(ruleIds);
 			List<String> indicatorIds = ruleInfos.stream().map(EvaluateRuleInfo::getIndicatorId).distinct().collect(Collectors.toList());
+
+			//实际发生的指标
+			List<String> indicatorId2s = listdt.stream().map(EvaluationScoreInfoResDTO::getIndicatorId).collect(Collectors.toList());
+			indicatorId2s = indicatorId2s.stream().distinct().collect(Collectors.toList());
+
+
 			for (String i : indicatorIds) {
+
+				if(!indicatorId2s.contains(i)){
+					continue;
+				}
 				Map<String, Object> indicatorName2 = new LinkedHashMap<>();
 				IndicatorDTO indicator = iIndicatorService.getById(i);
 

+ 2 - 2
ims-service/ims-eval/src/main/resources/mappers/OrganizationEvaluationInfoMapper.xml

@@ -221,9 +221,9 @@
         it.type_name,
         i.indicator_name,
         id.child_name,
-        id.child_code,
+        ei.child_code,
         id.option_name,
-        id.option_code,
+        ei.option_code,
         id.formula,
         ei.quantified_value,
         ei.non_quantified_value,