Explorar o código

预警模块api

chenminghua hai 1 ano
pai
achega
b9e6692700

+ 51 - 7
ims-service/ims-eval/src/main/java/com/ims/eval/controller/EvaluationWarningRuleController.java

@@ -1,9 +1,12 @@
 package com.ims.eval.controller;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.ims.eval.entity.BinStage;
+import com.ims.eval.entity.EvaluationWarningInfo;
 import com.ims.eval.entity.EvaluationWarningRule;
 import com.ims.eval.entity.dto.result.R;
+import com.ims.eval.service.IEvaluationWarningInfoService;
 import com.ims.eval.service.IEvaluationWarningRuleService;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -21,30 +24,71 @@ import java.util.Map;
  * @since 2023-05-19
  */
 @RestController
-@RequestMapping("//evaluation/warning/rule")
+@RequestMapping("//evaluation/warning")
 public class EvaluationWarningRuleController {
 
 	@Autowired
 	private IEvaluationWarningRuleService warningRuleService;
+	@Autowired
+	private IEvaluationWarningInfoService warningInfoService;
+
 
 	@ApiOperation(value = "考评预警规则", notes = "查询")
-	@GetMapping(value = "list")
+	@GetMapping(value = "rule/list")
 	public R EvaluationWarningRuleList(
+		@RequestParam(value = "pageNum") Integer pageNum,
+		@RequestParam(value = "pageSize") Integer pageSize,
 		@RequestParam(value = "binSection", required = false) String binSection, //业务板块
-		@RequestParam(value = "ruleName", required = false) String ruleName, //业务阶段
-		@RequestParam(value = "type", required = false) String type) {
-		List<EvaluationWarningRule> list = warningRuleService.warningRuleList(binSection, ruleName, type, null);
+		@RequestParam(value = "ruleName", required = false) String ruleName, //规则名称
+		@RequestParam(value = "type", required = false) String type, //年度NDKP  季度JDKP  月度YDKP
+		@RequestParam(value = "enable", required = false) Boolean enable) {
+		IPage<EvaluationWarningRule> list = warningRuleService.warningRuleList(pageNum, pageSize, binSection, ruleName, type, enable);
 		return R.ok().data(list);
 	}
 
 
 	@ApiOperation(value = "考评预警规则添加、更新", notes = "")
-	@PostMapping(value = "save")
-	public R EvaluationWarningRuleSave(@RequestHeader("code") String code, @RequestBody EvaluationWarningRule warningRule){
+	@PostMapping(value = "rule/save")
+	public R EvaluationWarningRuleSave(@RequestHeader(value = "code", required = false) String code, @RequestBody EvaluationWarningRule warningRule){
 		boolean flag = warningRuleService.saveOrUpdate(code, warningRule);
 		if (flag) {
 			return R.ok();
 		}
 		return R.error();
 	}
+
+
+	@ApiOperation(value = "考评预警规则删除", notes = "")
+	@GetMapping(value = "rule/delete")
+	public R EvaluationWarningRuleDelete(String id){
+		boolean flag = warningRuleService.removeById(id);
+		if (flag) {
+			return R.ok();
+		}
+		return R.error();
+	}
+
+
+	@ApiOperation(value = "考评预警详情", notes = "查询")
+	@GetMapping(value = "info/list")
+	public R EvaluationWarningInfoList(
+		@RequestParam(value = "pageNum") Integer pageNum,
+		@RequestParam(value = "pageSize") Integer pageSize,
+		@RequestParam(value = "binSection", required = false) String binSection, //业务板块
+		@RequestParam(value = "st", required = false) String st, //开始时间
+		@RequestParam(value = "et", required = false) String et) { //结束时间
+		IPage<EvaluationWarningInfo> list = warningInfoService.warningInfoList(pageNum, pageSize, binSection, st, et);
+		return R.ok().data(list);
+	}
+
+
+	@ApiOperation(value = "考评预警详情更新", notes = "")
+	@PostMapping(value = "info/save")
+	public R EvaluationWarningInfoSave(@RequestHeader("code") String code, @RequestBody EvaluationWarningInfo warningInfo){
+		boolean flag = warningInfoService.updateItem(code, warningInfo);
+		if (flag) {
+			return R.ok();
+		}
+		return R.error();
+	}
 }

+ 3 - 1
ims-service/ims-eval/src/main/java/com/ims/eval/dao/EvaluationWarningRuleMapper.java

@@ -1,5 +1,7 @@
 package com.ims.eval.dao;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ims.eval.entity.EvaluationWarningRule;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 
@@ -16,6 +18,6 @@ import java.util.Map;
  */
 public interface EvaluationWarningRuleMapper extends BaseMapper<EvaluationWarningRule> {
 
-	List<EvaluationWarningRule> selectWarningRule(String binSection, String ruleName, String type, Boolean enable);
+	IPage<EvaluationWarningRule> selectWarningRule(Page<EvaluationWarningRule> page, String binSection, String ruleName, String type, Boolean enable);
 
 }

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

@@ -89,4 +89,6 @@ public class EvaluationWarningInfo extends Model {
 	private Double targetValue;
 
 	private Double completeValue;
+
+	private String company;
 }

+ 5 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/entity/EvaluationWarningRule.java

@@ -1,5 +1,6 @@
 package com.ims.eval.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
 import java.time.LocalDate;
 import java.util.Date;
@@ -30,11 +31,15 @@ public class EvaluationWarningRule extends Model {
      * 业务板块code
      */
     private String binSection;
+	@TableField(exist = false)
+	private String sectionName;
 
     /**
      * 指标id
      */
     private String indicatorId;
+	@TableField(exist = false)
+	private String indicatorName;
 
     /**
      * 指标信息(计划值、完成值、偏差等信息)

+ 86 - 21
ims-service/ims-eval/src/main/java/com/ims/eval/schedule/EvaluationWarningSchedule.java

@@ -1,5 +1,6 @@
 package com.ims.eval.schedule;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.ims.common.utils.DateUtils;
 import com.ims.common.utils.FormulaUtils;
 import com.ims.eval.entity.EvaluationDeptBusinessAssessment;
@@ -41,12 +42,15 @@ public class EvaluationWarningSchedule {
 	private final String TYPE_JDKP = "JDKP";
 	//月度考评
 	private final String TYPE_YDKP = "YDKP";
+	//触发时间属于当前季度的第几个月,1,4,7,10表示每个季度的第一个月,2,5,8,11表示每个季度的第2个月,3,6,9,12表示每个季度的第三个月
+	private final int[][] SEASON = new int[][]{{1,4,7,10},{2,5,8,11},{3,6,9,12}};
 
 
 	/**
 	 * 年度考评
 	 */
-	@Scheduled(cron = "0 0 23 * * ?") // cron表达式: 每天23点触发
+//	@Scheduled(cron = "0 0 23 * * ?") // cron表达式: 每天23点触发
+	@Scheduled(cron="0/50 * * * * ?")
 	public void warningRuleResolveNDKP(){
 		List<EvaluationWarningRule> list = warningRuleService.warningRuleList(null, null, TYPE_NDKP, true);
 		List<Map<String, Object>> companys = evaluationService.getCompanyWarning(TYPE_NDKP);
@@ -54,13 +58,14 @@ public class EvaluationWarningSchedule {
 			return;
 		}
 
-		calculate(list, companys);
+		calculate(list, companys, TYPE_NDKP);
 	}
 
 	/**
 	 * 季度考评
 	 */
-	@Scheduled(cron = "0 0 23 * * ?") // cron表达式: 每天23点触发
+//	@Scheduled(cron = "0 0 23 * * ?") // cron表达式: 每天23点触发
+	@Scheduled(cron="0/50 * * * * ?")
 	public void warningRuleResolveJDKP(){
 		List<EvaluationWarningRule> list = warningRuleService.warningRuleList(null, null, TYPE_JDKP, true);
 		List<Map<String, Object>> companys = evaluationService.getCompanyWarning(TYPE_JDKP);
@@ -68,21 +73,22 @@ public class EvaluationWarningSchedule {
 			return;
 		}
 
-		calculate(list, companys);
+		calculate(list, companys, TYPE_JDKP);
 	}
 
 	/**
 	 * 月度考评
 	 */
-	@Scheduled(cron = "0 0 23 * * ?") // cron表达式: 每天23点触发
+//	@Scheduled(cron = "0 0 23 * * ?") // cron表达式: 每天23点触发
+	@Scheduled(cron="0/50 * * * * ?")
 	public void warningRuleResolveYDKP(){
-		List<EvaluationWarningRule> list = warningRuleService.warningRuleList(null, null, TYPE_YDKP,true);
+		List<EvaluationWarningRule> list = warningRuleService.warningRuleList(null, null, TYPE_YDKP, true);
 		List<Map<String, Object>> companys = evaluationService.getCompanyWarning(TYPE_YDKP);
 		if (list == null || list.size() == 0) {
 			return;
 		}
 
-		calculate(list, companys);
+		calculate(list, companys, TYPE_YDKP);
 	}
 
 
@@ -90,95 +96,112 @@ public class EvaluationWarningSchedule {
 	/**
 	 * 单位年度考评
 	 */
-	@Scheduled(cron = "* * 8 1 4 ? 2023-2050") // cron表达式: 每年4月1号8点触发
+//	@Scheduled(cron = "0 0 0 1 4 ?") // cron表达式: 每年4月1号0点触发
+	@Scheduled(cron="0/50 * * * * ?")
 	public void warningEvaluationNDKP(){
 		Calendar cal = Calendar.getInstance();
 		String year = String.valueOf(cal.get(Calendar.YEAR));
 		List<OrganizationEvaluation> list = evaluationService.list(null, TYPE_NDKP, year, null);
 
+		String company = "";
 		String title = "单位年度考评";
 		String content = "";
 		if (list == null || list.size() == 0) {
 			content = "单位年度考评计划未建立";
+			company = "公司本部";
 		}
 		Optional<OrganizationEvaluation> optional = list.stream().filter(item -> item.getStage().equals("流程未启动")).findFirst();
 		content = optional.isPresent() ? "单位年度考评流程未启动" : content;
+		company = optional.isPresent() ? optional.get().getCreateOrgName() : company;
 
-		saveWarningInfo(null, null, title, content, null, 0, 0);
+		saveWarningInfo(null, null, title, content, null, 0, 0, company);
 	}
 
 	/**
 	 * 单位季度考评
 	 */
-	@Scheduled(cron = "0 5 20 1 1,4,7,10 ?") // cron表达式: 每个季度的第一个月的20号的5执行一次
+//	@Scheduled(cron = "0 5 20 1 1,4,7,10 ?") // cron表达式: 每个季度的第一个月的20号的5执行一次
+	@Scheduled(cron="0/50 * * * * ?")
 	public void warningEvaluationJDKP(){
 		Calendar cal = Calendar.getInstance();
 		String year = String.valueOf(cal.get(Calendar.YEAR));
 		String season = String.valueOf(DateUtils.getSeason(cal.getTime()));
 		List<OrganizationEvaluation> list = evaluationService.list(null, TYPE_JDKP, year, season);
 
+		String company = "";
 		String title = "单位季度考评";
 		String content = "";
 		if (list == null || list.size() == 0) {
 			content = "单位季度考评计划未建立";
+			company = "公司本部";
 		}
 		Optional<OrganizationEvaluation> optional = list.stream().filter(item -> item.getStage().equals("流程未启动")).findFirst();
 		content = optional.isPresent() ? "单位季度考评流程未启动" : content;
+		company = optional.isPresent() ? optional.get().getCreateOrgName() : company;
 
-		saveWarningInfo(null, null, title, content, null, 0, 0);
+		saveWarningInfo(null, null, title, content, null, 0, 0, company);
 	}
 
 	/**
 	 * 单位月度考评
 	 */
-	@Scheduled(cron = "0 0 7 5 * ?") // cron表达式: 每月5日上午7点触发
+//	@Scheduled(cron = "0 0 7 5 * ?") // cron表达式: 每月5日上午7点触发
+	@Scheduled(cron="0/50 * * * * ?")
 	public void warningEvaluationYDKP(){
 		Calendar cal = Calendar.getInstance();
 		String year = String.valueOf(cal.get(Calendar.YEAR));
 		String month = String.valueOf(cal.get(Calendar.MONTH) + 1);
 		List<OrganizationEvaluation> list = evaluationService.list(null, TYPE_YDKP, year, month);
 
+		String company = "";
 		String title = "单位月度考评";
 		String content = "";
 		if (list == null || list.size() == 0) {
 			content = "单位月度考评计划未建立";
+			company = "公司本部";
 		}
 		Optional<OrganizationEvaluation> optional = list.stream().filter(item -> item.getStage().equals("流程未启动")).findFirst();
 		content = optional.isPresent() ? "单位月度考评流程未启动" : content;
+		company = optional.isPresent() ? optional.get().getCreateOrgName() : company;
 
-		saveWarningInfo(null, null, title, content, null, 0, 0);
+		saveWarningInfo(null, null, title, content, null, 0, 0, company);
 	}
 
 
 	/**
 	 * 部门年度考评
 	 */
-	@Scheduled(cron = "* * 8 1 4 ? 2023,2050") // cron表达式: 每年4月1号8点触发
+//	@Scheduled(cron = "0 0 0 1 4 ?") // cron表达式: 每年4月1号0点触发
+	@Scheduled(cron="0/50 * * * * ?")
 	public void warningEvaluationDeptYDKP(){
 		Calendar cal = Calendar.getInstance();
 		String year = String.valueOf(cal.get(Calendar.YEAR));
 		List<EvaluationDeptBusinessAssessment> list = assessmentService.list(year);
 
+		String company = "";
 		String title = "部门年度考评";
 		String content = "";
 		if (list == null || list.size() == 0) {
 			content = "部门年度考评计划未建立";
+			company = "公司部门";
 		}
 		Optional<EvaluationDeptBusinessAssessment> optional = list.stream().filter(item -> item.getStage().equals("流程未启动")).findFirst();
 		content = optional.isPresent() ? "部门年度考评计划流程未启动" : content;
+		company = optional.isPresent() ? optional.get().getDeptName() : company;
 
-		saveWarningInfo(null, null, title, content, null, 0, 0);
+		saveWarningInfo(null, null, title, content, null, 0, 0, company);
 	}
 
 
 
-	private void calculate(List<EvaluationWarningRule> rules, List<Map<String, Object>> companys){
+	private void calculate(List<EvaluationWarningRule> rules, List<Map<String, Object>> companys, String type){
 		Calendar cal = Calendar.getInstance();
 		Map<Object, List<Map<String, Object>>> collect = companys.stream().collect(Collectors.groupingBy(m -> m.get("indicator_id")));
 		for (EvaluationWarningRule rule : rules){
-			if (!cal.getTime().equals(rule.getCronTime())){
+			if (!isFocus(rule, type)){
 				continue;
 			}
+			String company = "";
 			double targetValue = 0;
 			double completeValue = 0;
 			String expression = rule.getExpression();
@@ -190,20 +213,20 @@ public class EvaluationWarningSchedule {
 				}
 				targetValue = mp.containsKey("JHZ") ? (double) mp.get("JHZ") : mp.containsKey("DBZ") ? (double) mp.get("DBZ") : 0;
 				completeValue = mp.containsKey("WCZ") ? (double) mp.get("WCZ") : 0;
+				company = mp.containsKey("organization_short_name") ? String.valueOf(mp.get("organization_short_name")) : company;
 			}
 			/**
 			 * 0:未报警  1:报警
 			 */
 			double v = FormulaUtils.calculateFormula(expression);
 			if (v >= 1){
-				String title = "指标预警";
-				String content = "完成值未达到预定目标值,请及时查看";
-				saveWarningInfo(rule.getBinSection(), rule.getIndicatorId(), title, content, rule.getId(), targetValue, completeValue);
+				saveWarningInfo(rule.getBinSection(), rule.getIndicatorId(), rule.getRuleName(), rule.getRuleDes(), rule.getId(), targetValue, completeValue, company);
 			}
 		}
 	}
 
-	private void saveWarningInfo(String binSection, String indicatorId, String title,  String content, String ruleId, double targetValue, double completeValue){
+	private void saveWarningInfo(String binSection, String indicatorId, String title,  String content,
+								 String ruleId, double targetValue, double completeValue, String company){
 		EvaluationWarningInfo info = new EvaluationWarningInfo();
 		info.setBinSection(binSection);
 		info.setIndicatorId(indicatorId);
@@ -213,7 +236,49 @@ public class EvaluationWarningSchedule {
 		info.setRuleId(ruleId);
 		info.setTargetValue(targetValue);
 		info.setCompleteValue(completeValue);
+		info.setCompany(company);
 		warningInfoService.save(info);
 	}
 
+
+	private boolean isFocus(EvaluationWarningRule rule, String type){
+		Calendar cal = Calendar.getInstance();
+		int nowMonth = cal.get(Calendar.MONTH) + 1;
+		int nowDay = cal.get(Calendar.DAY_OF_MONTH);
+		cal.setTime(rule.getCronTime());
+		switch (type){
+			case TYPE_NDKP:
+				int month = cal.get(Calendar.MONTH) + 1;
+				int day = cal.get(Calendar.DAY_OF_MONTH);
+				if (nowMonth == month && nowDay == day){
+					return true;
+				}
+				break;
+			case TYPE_JDKP:
+				int day2 = cal.get(Calendar.DAY_OF_MONTH);
+				int season = DateUtils.getSeason(cal.getTime());
+				int index = season % 3;
+				int[] arr = SEASON[index-1];
+				for (int i = 0; i < arr.length; i++){
+					if (nowMonth == arr[i] && nowDay == day2){
+						return true;
+					}
+				}
+				break;
+			case TYPE_YDKP:
+				int day3 = cal.get(Calendar.DAY_OF_MONTH);
+				if (nowDay == day3){
+					return true;
+				}
+				break;
+		}
+		return false;
+	}
+
+	public static void main(String[] args){
+		Calendar cal = Calendar.getInstance();
+		System.out.println(cal.get(Calendar.YEAR));
+		System.out.println(cal.get(Calendar.MONTH) + 1);
+		System.out.println(cal.get(Calendar.DAY_OF_MONTH));
+	}
 }

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

@@ -19,8 +19,8 @@ public interface IEvaluationWarningInfoService extends IService<EvaluationWarnin
 	 * 查询考评预警规则
 	 * @return
 	 */
-	IPage<EvaluationWarningInfo> warningInfoList(Integer pageNum, Integer pageSize, String binSection, String indicatorId, Boolean isConfirm);
+	IPage<EvaluationWarningInfo> warningInfoList(Integer pageNum, Integer pageSize, String binSection, String st, String et);
 
-	boolean saveItem(String code, EvaluationWarningInfo warningInfo);
+	boolean updateItem(String code, EvaluationWarningInfo warningInfo);
 
 }

+ 6 - 2
ims-service/ims-eval/src/main/java/com/ims/eval/service/IEvaluationWarningRuleService.java

@@ -1,10 +1,10 @@
 package com.ims.eval.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.ims.eval.entity.EvaluationWarningRule;
 import com.baomidou.mybatisplus.extension.service.IService;
 
 import java.util.List;
-import java.util.Map;
 
 /**
  * <p>
@@ -16,13 +16,17 @@ import java.util.Map;
  */
 public interface IEvaluationWarningRuleService extends IService<EvaluationWarningRule> {
 
+	List<EvaluationWarningRule> warningRuleList(String binSection, String ruleName, String type, Boolean enable);
+
 	/**
 	 * 查询考评预警规则
 	 * @param binSection
 	 * @param ruleName
 	 * @return
 	 */
-    List<EvaluationWarningRule> warningRuleList(String binSection, String ruleName, String type, Boolean enable);
+	IPage<EvaluationWarningRule> warningRuleList(Integer pageNum, Integer pageSize, String binSection, String ruleName, String type, Boolean enable);
+
+
 
 	boolean saveOrUpdate(String code, EvaluationWarningRule warningRule);
 }

+ 7 - 7
ims-service/ims-eval/src/main/java/com/ims/eval/service/impl/EvaluationWarningInfoServiceImpl.java

@@ -31,7 +31,7 @@ public class EvaluationWarningInfoServiceImpl extends ServiceImpl<EvaluationWarn
 
 
 	@Override
-	public IPage<EvaluationWarningInfo> warningInfoList(Integer pageNum, Integer pageSize, String binSection, String indicatorId, Boolean isConfirm) {
+	public IPage<EvaluationWarningInfo> warningInfoList(Integer pageNum, Integer pageSize, String binSection, String st, String et) {
 		QueryWrapper<EvaluationWarningInfo> qw = new QueryWrapper<>();
 		//构造分页构造器
 		Page<EvaluationWarningInfo> page = new Page<>(pageNum, pageSize);
@@ -43,14 +43,14 @@ public class EvaluationWarningInfoServiceImpl extends ServiceImpl<EvaluationWarn
 			qw.lambda().eq(EvaluationWarningInfo::getBinSection, binSection);
 		}
 
-		if (StringUtils.isNotEmpty(indicatorId)) {
-			qw.lambda().eq(EvaluationWarningInfo::getIndicatorId, indicatorId);
+		if (StringUtils.isNotEmpty(st)) {
+			qw.lambda().ge(EvaluationWarningInfo::getCreateTime, st);
 		}
 
-		if (isConfirm != null){
-			qw.lambda().eq(EvaluationWarningInfo::getIsConfirm, isConfirm);
+		if (StringUtils.isNotEmpty(et)){
+			qw.lambda().le(EvaluationWarningInfo::getCreateTime, et);
 		}
-		qw.orderByDesc("warning_code");
+		qw.orderByDesc("create_time");
 
 		IPage<EvaluationWarningInfo> list = baseMapper.selectPage(page, qw);
 
@@ -59,7 +59,7 @@ public class EvaluationWarningInfoServiceImpl extends ServiceImpl<EvaluationWarn
 
 
 	@Override
-	public boolean saveItem(String code, EvaluationWarningInfo warningInfo) {
+	public boolean updateItem(String code, EvaluationWarningInfo warningInfo) {
 		//		MyuserResDTO user = userService.getSysUser(code);
 		MyuserResDTO user = new MyuserResDTO();
 		if (user != null){

+ 34 - 2
ims-service/ims-eval/src/main/java/com/ims/eval/service/impl/EvaluationWarningRuleServiceImpl.java

@@ -1,8 +1,14 @@
 package com.ims.eval.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ims.common.utils.StringUtils;
+import com.ims.eval.config.CustomException;
+import com.ims.eval.entity.EvaluationWarningInfo;
 import com.ims.eval.entity.EvaluationWarningRule;
 import com.ims.eval.dao.EvaluationWarningRuleMapper;
+import com.ims.eval.entity.OrganizationEvaluation;
 import com.ims.eval.entity.dto.response.MyuserResDTO;
 import com.ims.eval.service.IEvaluationWarningRuleService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -28,9 +34,35 @@ public class EvaluationWarningRuleServiceImpl extends ServiceImpl<EvaluationWarn
 	@Autowired
 	private IUserService userService;
 
+
 	@Override
-	public List<EvaluationWarningRule> warningRuleList(String binSection, String ruleName, String type, Boolean enable) {
-		List<EvaluationWarningRule> list = baseMapper.selectWarningRule(binSection, ruleName, type, null);
+	public List<EvaluationWarningRule> warningRuleList( String binSection, String ruleName, String type, Boolean enable) {
+		QueryWrapper<EvaluationWarningRule> qw = new QueryWrapper<>();
+		if (StringUtils.isNotEmpty(binSection)){
+			qw.lambda().eq(EvaluationWarningRule::getBinSection, binSection);
+		}
+		if (StringUtils.isNotEmpty(ruleName)){
+			qw.lambda().like(EvaluationWarningRule::getRuleName, ruleName);
+		}
+		if (StringUtils.isNotEmpty(type)){
+			qw.lambda().eq(EvaluationWarningRule::getType, type);
+		}
+		if (enable != null){
+			qw.lambda().eq(EvaluationWarningRule::getEnable, enable);
+		}
+		List<EvaluationWarningRule> list = baseMapper.selectList(qw);
+		return list;
+	}
+
+
+	@Override
+	public IPage<EvaluationWarningRule> warningRuleList(Integer pageNum, Integer pageSize, String binSection, String ruleName, String type, Boolean enable) {
+		if (null == pageNum || null == pageSize) {
+			throw new CustomException("分页参数为空");
+		}
+		//构造分页构造器
+		Page<EvaluationWarningRule> page = new Page<>(pageNum, pageSize);
+		IPage<EvaluationWarningRule> list = baseMapper.selectWarningRule(page, binSection, ruleName, type, enable);
 		return list;
 	}
 

+ 7 - 3
ims-service/ims-eval/src/main/resources/mappers/EvaluateWarningRuleMapper.xml.xml

@@ -6,7 +6,7 @@
     <resultMap id="BaseResultMap" type="com.ims.eval.entity.EvaluationWarningRule">
         <id column="id" property="id" />
         <result column="bin_section" property="binSection" />
-        <result column="indicator_code" property="indicatorCode" />
+        <result column="indicator_code" property="indicatorId" />
         <result column="indicator_info" property="indicatorInfo" />
         <result column="bin_stage" property="binStage" />
         <result column="expression" property="expression" />
@@ -24,9 +24,13 @@
 
     <select id="selectWarningRule" resultType="com.ims.eval.entity.EvaluationWarningRule">
         SELECT
-        er.*
+        er.*,
+        bs.section_name as sectionName,
+        i.indicator_name as indicatorName
         FROM
         evaluation_warning_rule er
+        LEFT JOIN bin_section bs ON er.bin_section = bs.id
+        LEFT JOIN indicator i ON er.indicator_id = i.id
         <where>
             <if test="binSection !=null and binSection !=''">
                 AND er.bin_section = #{binSection}
@@ -42,7 +46,7 @@
             </if>
 
         </where>
-
+        order by create_time desc
     </select>
 
 

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

@@ -59,7 +59,8 @@
                id.option_name,
                oi.option_code,
                oi.quantified_value,
-               oe.check_cycle
+               oe.check_cycle,
+               oe.create_org_name
         from organization_evaluation  oe
                LEFT JOIN organization_evaluation_info oi on oe.id = oi.organization_evaluation_id
                INNER JOIN organization_evaluation_rule er on er.id = oi.organization_evaluation_rule_id