From a862801202019cf3a9ea602d791074851bd9312e Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Mon, 29 May 2023 19:23:42 +0800
Subject: [PATCH] 告警规则及明细新增,修改,查询调整

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/alarmRule/controller/AlarmRuleController.java |   77 ++++++++++++++++++++++++++++++++++----
 1 files changed, 69 insertions(+), 8 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/alarmRule/controller/AlarmRuleController.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/alarmRule/controller/AlarmRuleController.java
index d507b61..914adad 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/alarmRule/controller/AlarmRuleController.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/alarmRule/controller/AlarmRuleController.java
@@ -1,8 +1,11 @@
 package cn.gistack.sm.alarmRule.controller;
 
 import cn.gistack.sm.alarmRule.entity.AlarmRule;
+import cn.gistack.sm.alarmRule.entity.AlarmRuleDetail;
+import cn.gistack.sm.alarmRule.service.AlarmRuleDetailService;
 import cn.gistack.sm.alarmRule.service.AlarmRuleService;
 import cn.gistack.sm.alarmRule.vo.AlarmRuleVO;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
@@ -13,6 +16,7 @@
 import org.springframework.web.bind.annotation.*;
 
 import java.util.Arrays;
+import java.util.List;
 
 /**
  * 告警规则控制层
@@ -25,6 +29,8 @@
 public class AlarmRuleController extends BladeController {
 
 	private final AlarmRuleService alarmRuleService;
+
+	private final AlarmRuleDetailService alarmRuleDetailService;
 
 	/**
 	 * 分页列表查询
@@ -59,8 +65,21 @@
 	 */
 	@ApiOperation(value="告警规则-添加", notes="告警规则-添加")
 	@PostMapping(value = "/add")
-	public R add(@RequestBody AlarmRule alarmRule) {
-		return R.data(alarmRuleService.save(alarmRule));
+	public R add(@RequestBody AlarmRuleVO alarmRule) {
+		boolean flag = false;
+		boolean save = alarmRuleService.save(alarmRule);
+		// 新增成功
+		if (save){
+			if (alarmRule.getAlarmRuleDetailList().size() > 0){
+				for (AlarmRuleDetail alarmRuleDetail : alarmRule.getAlarmRuleDetailList()) {
+					alarmRuleDetail.setAlarmRuleId(alarmRule.getId());
+					// 新增明细
+					flag = alarmRuleDetailService.save(alarmRuleDetail);
+				}
+			}
+		}
+		// 返回结果
+		return R.status(flag);
 	}
 
 	/**
@@ -71,8 +90,25 @@
 	 */
 	@ApiOperation(value="告警规则-编辑", notes="告警规则-编辑")
 	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
-	public R edit(@RequestBody AlarmRule alarmRule) {
-		return R.data(alarmRuleService.updateById(alarmRule));
+	public R edit(@RequestBody AlarmRuleVO alarmRule) {
+		boolean flag = false;
+		// 更新
+		boolean update = alarmRuleService.updateById(alarmRule);
+		if (update){
+			if (alarmRule.getAlarmRuleDetailList().size() > 0){
+				for (AlarmRuleDetail alarmRuleDetail : alarmRule.getAlarmRuleDetailList()) {
+					alarmRuleDetail.setAlarmRuleId(alarmRule.getId());
+					if (null == alarmRuleDetail.getId()){
+						// 新增明细
+						flag = alarmRuleDetailService.save(alarmRuleDetail);
+					}else {
+						// 修改
+						flag = alarmRuleDetailService.updateById(alarmRuleDetail);
+					}
+				}
+			}
+		}
+		return R.status(flag);
 	}
 
 	/**
@@ -82,9 +118,9 @@
 	 * @return
 	 */
 	@ApiOperation(value="告警规则-通过id删除", notes="告警规则-通过id删除")
-	@DeleteMapping(value = "/delete")
+	@PostMapping(value = "/delete")
 	public R delete(@RequestParam(name="id",required=true) String id) {
-		return R.data(alarmRuleService.removeById(id));
+		return R.status(alarmRuleService.removeById(id));
 	}
 
 	/**
@@ -94,9 +130,22 @@
 	 * @return
 	 */
 	@ApiOperation(value="告警规则-批量删除", notes="告警规则-批量删除")
-	@DeleteMapping(value = "/deleteBatch")
+	@PostMapping(value = "/deleteBatch")
 	public R deleteBatch(@RequestParam(name="ids",required=true) String ids) {
-		return R.data(this.alarmRuleService.removeByIds(Arrays.asList(ids.split(","))));
+		boolean flag = false;
+		//
+		boolean remove = alarmRuleService.removeByIds(Arrays.asList(ids.split(",")));
+		if (remove){
+			// 查询明细
+			List<String> idList = Arrays.asList(ids.split(","));
+			for (String id : idList) {
+				QueryWrapper<AlarmRuleDetail> wrapper = new QueryWrapper<>();
+				wrapper.eq("alarm_rule_id",id);
+				// 删除明细
+				flag = alarmRuleDetailService.remove(wrapper);
+			}
+		}
+		return R.status(flag);
 	}
 
 	/**
@@ -112,4 +161,16 @@
 		return R.data(alarmRule);
 	}
 
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	@ApiOperation(value="告警规则-通过id查询", notes="告警规则-通过id查询")
+	@GetMapping(value = "/detail")
+	public R getDetail(@RequestParam(name="id",required=true) String id) {
+		return R.data(alarmRuleService.getDetail(id));
+	}
+
 }

--
Gitblit v1.9.3