فهرست منبع

数据生成增加重新生成功能,清除之前数据,按照规则重新生成数据

songwb 10 ماه پیش
والد
کامیت
f0232d2440

+ 24 - 20
ims-service/ims-eval/src/main/java/com/ims/eval/controller/OrganizationEvaluationController.java

@@ -108,21 +108,23 @@ public class OrganizationEvaluationController {
 	@ApiOperation(value = "生成单位考评明细", notes = "生成单位考评明细")
 	public R generateUnitYearEvaluation(@RequestParam(value = "evaluationIds", required = true) String evaluationIds,
 										@RequestParam(value = "indicatorId", required = false) String  indicatorId,
-										@RequestParam(value = "organizationId", required = false) String organizationId) {
+										@RequestParam(value = "organizationId", required = false) String organizationId,
+										@RequestParam(value = "mark", required = true,defaultValue = "false") Boolean mark) {
 
-		try {
+		/*try {*/
 			List<String> orgEvalRuleIdList = Arrays.asList(evaluationIds.split(","));
-			boolean b = false;
-
-			b = organizationEvaluationService.generateUnitEvaluationInfo(orgEvalRuleIdList,indicatorId,organizationId);
-			if (!b) {
+			/*boolean b = false;*/
+//b =
+//
+		return organizationEvaluationService.generateUnitEvaluationInfo(orgEvalRuleIdList,indicatorId,organizationId,mark);
+		/*	if (!b) {
 				return R.error().data("保存失败!");
 			}
 
 			return R.ok().data(b);
 		} catch (CustomException e) {
 			return R.customError(e.getMessage()).data("失败!");
-		}
+		}*/
 	}
 
 
@@ -138,21 +140,23 @@ public class OrganizationEvaluationController {
 	@ApiOperation(value = "生成月度单位考评明细", notes = "生成月度单位考评明细")
 	public R generateUnitMonthEvaluation(@RequestParam(value = "evaluationIds", required = true) String evaluationIds,
 										 @RequestParam(value = "indicatorId", required = false) String  indicatorId,
-										 @RequestParam(value = "organizationId", required = false) String organizationId) {
+										 @RequestParam(value = "organizationId", required = false) String organizationId,
+										 @RequestParam(value = "mark", required = true,defaultValue = "false") Boolean mark) {
 
-		try {
+//		try {
 			List<String> orgEvalRuleIdList = Arrays.asList(evaluationIds.split(","));
-			boolean b = false;
-
-			b = organizationEvaluationService.generateUnitMonthEvaluation(orgEvalRuleIdList,indicatorId,organizationId);
-			if (!b) {
-				return R.error().data("保存失败!");
-			}
-
-			return R.ok().data(b);
-		} catch (CustomException e) {
-			return R.customError(e.getMessage()).data("失败!");
-		}
+//			boolean b = false;
+
+//			b =
+		return organizationEvaluationService.generateUnitMonthEvaluation(orgEvalRuleIdList, indicatorId, organizationId, mark);
+//			if (!b) {
+//				return R.error().data("保存失败!");
+//			}
+//
+//			return R.ok().data(b);
+//		} catch (CustomException e) {
+//			return R.customError(e.getMessage()).data("失败!");
+//		}
 	}
 
 	/**

+ 2 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/service/IOrganizationEvaluationInfoService.java

@@ -72,4 +72,6 @@ public interface IOrganizationEvaluationInfoService extends IService<Organizatio
 	List<OrganizationEvaluationInfo> getConvergeCommonInfo(String organizationEvaluationId, String organizationId, String indicatorId);
 
 	List<OrganizationEvaluationInfo> getOrganizationEvaluationInfoListByIndicatorDictionaryId(String indicatorDictionaryId, String degreeYear, String quarterlyMonth);
+
+	int clearOldData(String id, String organizationId, String indicatorId);
 }

+ 4 - 7
ims-service/ims-eval/src/main/java/com/ims/eval/service/IOrganizationEvaluationService.java

@@ -1,16 +1,13 @@
 package com.ims.eval.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.ims.eval.entity.DeptResponsibility;
 import com.ims.eval.entity.OrganizationEvaluation;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ims.eval.entity.dto.response.OrganizationEvaluationResDTO;
-import com.ims.eval.entity.dto.response.ResponsibilityIndicatorInfoResDTO;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.ims.eval.entity.dto.result.R;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.servlet.http.HttpServletRequest;
-import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
 
@@ -28,11 +25,11 @@ public interface IOrganizationEvaluationService extends IService<OrganizationEva
 
 
 	@Transactional
-	boolean generateUnitEvaluationInfo(List<String> ids,String indicatorId,String organizationId);
+	R generateUnitEvaluationInfo(List<String> ids,String indicatorId,String organizationId,Boolean mark);
 
 
 	@Transactional
-	boolean generateUnitMonthEvaluation(List<String> ids,String indicatorId,String organizationId);
+	R generateUnitMonthEvaluation(List<String> ids, String indicatorId, String organizationId, Boolean mark);
 
 	@Transactional
 	boolean generateUnitSeasonEvaluation(List<String> ids);
@@ -49,8 +46,8 @@ public interface IOrganizationEvaluationService extends IService<OrganizationEva
 
 	List<Map<String, Object>> getCompanyWarning(String evaluationType);
 
-	Map getEvaluationScoreInfo(String id,String  binSection,String indicatorId,String  organizationEvaluationRuleId);
 
+	Map getEvaluationScoreInfo(String id,String  binSection,String indicatorId,String  organizationEvaluationRuleId);
 
 
 	OrganizationEvaluation getOrganizationEvaluation(String id);

+ 17 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/service/impl/OrganizationEvaluationInfoServiceImpl.java

@@ -1299,6 +1299,23 @@ public class OrganizationEvaluationInfoServiceImpl extends ServiceImpl<Organizat
 		return list;
 	}
 
+
+	@Override
+	public int clearOldData(String organizationEvaluationId, String organizationId, String indicatorId) {
+		QueryWrapper<OrganizationEvaluationInfo> qw = new QueryWrapper<>();
+
+		if (StringUtils.isNotEmpty(organizationEvaluationId)) {
+			qw.lambda().eq(OrganizationEvaluationInfo::getOrganizationEvaluationId, organizationEvaluationId);
+		}
+		if (StringUtils.isNotEmpty(organizationId)) {
+			qw.lambda().eq(OrganizationEvaluationInfo::getOrganizationId, organizationId);
+		}
+		if (StringUtils.isNotEmpty(indicatorId)) {
+			qw.lambda().eq(OrganizationEvaluationInfo::getIndicatorId, indicatorId);
+		}
+		return baseMapper.delete(qw);
+	}
+
 	@Override
 	public List<OrganizationEvaluationInfo> getOrganizationEvaluationInfoListByIndicatorDictionaryId(String indicatorDictionaryId, String degreeYear, String quarterlyMonth) {
 		return baseMapper.getOrganizationEvaluationInfoListByIndicatorDictionaryId(indicatorDictionaryId, degreeYear, quarterlyMonth);

+ 22 - 12
ims-service/ims-eval/src/main/java/com/ims/eval/service/impl/OrganizationEvaluationServiceImpl.java

@@ -13,6 +13,7 @@ import com.ims.eval.dao.OrganizationEvaluationMapper;
 import com.ims.eval.entity.dto.request.IndicatorDTO;
 import com.ims.eval.entity.dto.request.IndicatorDictionaryDTO;
 import com.ims.eval.entity.dto.response.*;
+import com.ims.eval.entity.dto.result.R;
 import com.ims.eval.feign.RemoteServiceBuilder;
 import com.ims.eval.service.*;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -165,7 +166,7 @@ public class OrganizationEvaluationServiceImpl extends ServiceImpl<OrganizationE
 		if (checkCycle.contains("DWPJ")) {
 			List<OrganizationEvaluation> dwpj = list.getRecords().stream().filter(ll -> "DWPJ".equals(ll.getCheckCycle())).collect(Collectors.toList());
 			QueryWrapper<OrganizationEvaluation> q = new QueryWrapper<>();
-			q.eq("check_cycle","NDKP");
+			q.eq("check_cycle", "NDKP");
 			List<OrganizationEvaluation> organizationEvaluations = baseMapper.selectList(q);
 			List<OrganizationEvaluation> ndkp = organizationEvaluations.stream().filter(yy -> "NDKP".equals(yy.getCheckCycle()) && "2023".equals(yy.getYear())).collect(Collectors.toList());
 			if (dwpj.isEmpty()) {
@@ -254,7 +255,7 @@ public class OrganizationEvaluationServiceImpl extends ServiceImpl<OrganizationE
 		}
 
 		String uuid = UUID.randomUUID().toString().replace("-", "");
-		entity.setOrganizationEvaluationCode("dwpj_"+entity.getYear());
+		entity.setOrganizationEvaluationCode("dwpj_" + entity.getYear());
 		entity.setId(uuid);
 		entity.setCheckCycle("DWPJ");
 		boolean c = super.save(entity);
@@ -302,10 +303,9 @@ public class OrganizationEvaluationServiceImpl extends ServiceImpl<OrganizationE
 	}
 
 
-
 	@Transactional
 	@Override
-	public boolean generateUnitEvaluationInfo(List<String> ids, String indicatorId, String organizationId) {
+	public R generateUnitEvaluationInfo(List<String> ids, String indicatorId, String organizationId, Boolean mark) {
 
 		for (String id : ids) {
 			OrganizationEvaluation organizationEvaluation = baseMapper.selectById(id);
@@ -316,7 +316,11 @@ public class OrganizationEvaluationServiceImpl extends ServiceImpl<OrganizationE
 			List<OrganizationEvaluationInfo> organizationEvaluationInfoOris = organizationEvaluationInfoService.getConvergeCommonInfo(id, organizationId, indicatorId);
 
 			if (null != organizationEvaluationInfoOris && organizationEvaluationInfoOris.size() > 0) {
-				throw new CustomException("考评明细记录已存在");
+				if (mark) {
+					int i = organizationEvaluationInfoService.clearOldData(id, organizationId, indicatorId);
+				} else {
+					return R.error("考评明细记录已存在");
+				}
 			}
 
 			//查询对应年度的目标责任书
@@ -471,13 +475,13 @@ public class OrganizationEvaluationServiceImpl extends ServiceImpl<OrganizationE
 			organizationEvaluation.setStage("数据已生成");
 			baseMapper.updateById(organizationEvaluation);
 		}
-
-		return true;
+//		return true;
+		return R.ok();
 	}
 
 	@Transactional
 	@Override
-	public boolean generateUnitMonthEvaluation(List<String> ids, String indicatorId, String organizationId) {
+	public R generateUnitMonthEvaluation(List<String> ids, String indicatorId, String organizationId, Boolean mark) {
 
 		for (String id : ids) {
 			OrganizationEvaluation organizationEvaluation = baseMapper.selectById(id);
@@ -485,11 +489,15 @@ public class OrganizationEvaluationServiceImpl extends ServiceImpl<OrganizationE
 				throw new CustomException("不存在考评记录");
 			}
 
-
 			List<OrganizationEvaluationInfo> organizationEvaluationInfoOris = organizationEvaluationInfoService.getConvergeCommonInfo(id, organizationId, indicatorId);
 
 			if (null != organizationEvaluationInfoOris && organizationEvaluationInfoOris.size() > 0) {
-				throw new CustomException("考评明细记录已存在");
+				if (mark) {
+					int i = organizationEvaluationInfoService.clearOldData(id, organizationId, indicatorId);
+				} else {
+					return R.error("考评明细记录已存在");
+				}
+
 			}
 
 			String organizationType = organizationEvaluation.getOrganizationType();//考评类型 DWKP
@@ -498,7 +506,9 @@ public class OrganizationEvaluationServiceImpl extends ServiceImpl<OrganizationE
 
 			//查询当前周期下对应的考评权重(需要考评的单位)
 			List<OrganizationEvaluationRule> evaluationRules = organizationEvaluationRuleService.getOrganizationEvaluationRuleByYearAndCycle(organizationType, checkCycle, year, "");
-
+			if (evaluationRules == null || evaluationRules.isEmpty()) {
+				throw new CustomException("单位权重未配置");
+			}
 
 			//判断组织id 是否有值;不为空只生成当前组织的数据
 			if (StringUtils.isNotEmpty(organizationId)) {
@@ -615,7 +625,7 @@ public class OrganizationEvaluationServiceImpl extends ServiceImpl<OrganizationE
 			organizationEvaluation.setStage("数据已生成");
 			baseMapper.updateById(organizationEvaluation);
 		}
-		return true;
+		return R.ok();
 	}
 
 	@Transactional