guoshilong
2023-05-29 08c7fcce9fa2a876412fa81a19550b77996214e2
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));
   }
}