Commit 3a956adc2f41f9c60b908c04b4ba8b48fbe029f8

Authored by puhui999
1 parent fe1a8c0f

feat:【IoT 物联网】场景联动新增状态切换接口

yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/rule/IotRuleSceneController.java
@@ -7,6 +7,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils; @@ -7,6 +7,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
7 import cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene.IotRuleScenePageReqVO; 7 import cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene.IotRuleScenePageReqVO;
8 import cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene.IotRuleSceneRespVO; 8 import cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene.IotRuleSceneRespVO;
9 import cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene.IotRuleSceneSaveReqVO; 9 import cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene.IotRuleSceneSaveReqVO;
  10 +import cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene.IotRuleSceneUpdateStatusReqVO;
10 import cn.iocoder.yudao.module.iot.dal.dataobject.rule.IotRuleSceneDO; 11 import cn.iocoder.yudao.module.iot.dal.dataobject.rule.IotRuleSceneDO;
11 import cn.iocoder.yudao.module.iot.service.rule.scene.IotRuleSceneService; 12 import cn.iocoder.yudao.module.iot.service.rule.scene.IotRuleSceneService;
12 import io.swagger.v3.oas.annotations.Operation; 13 import io.swagger.v3.oas.annotations.Operation;
@@ -48,6 +49,14 @@ public class IotRuleSceneController { @@ -48,6 +49,14 @@ public class IotRuleSceneController {
48 return success(true); 49 return success(true);
49 } 50 }
50 51
  52 + @PutMapping("/update-status")
  53 + @Operation(summary = "更新场景联动状态")
  54 + @PreAuthorize("@ss.hasPermission('iot:rule-scene:update')")
  55 + public CommonResult<Boolean> updateRuleSceneStatus(@Valid @RequestBody IotRuleSceneUpdateStatusReqVO updateReqVO) {
  56 + ruleSceneService.updateRuleSceneStatus(updateReqVO.getId(), updateReqVO.getStatus());
  57 + return success(true);
  58 + }
  59 +
51 @DeleteMapping("/delete") 60 @DeleteMapping("/delete")
52 @Operation(summary = "删除场景联动") 61 @Operation(summary = "删除场景联动")
53 @Parameter(name = "id", description = "编号", required = true) 62 @Parameter(name = "id", description = "编号", required = true)
yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/rule/vo/scene/IotRuleSceneUpdateStatusReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene;
  2 +
  3 +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
  4 +import cn.iocoder.yudao.framework.common.validation.InEnum;
  5 +import io.swagger.v3.oas.annotations.media.Schema;
  6 +import jakarta.validation.constraints.NotNull;
  7 +import lombok.Data;
  8 +
  9 +@Schema(description = "管理后台 - IoT 场景联动更新状态 Request VO")
  10 +@Data
  11 +public class IotRuleSceneUpdateStatusReqVO {
  12 +
  13 + @Schema(description = "场景联动编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
  14 + @NotNull(message = "场景联动编号不能为空")
  15 + private Long id;
  16 +
  17 + @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "0")
  18 + @NotNull(message = "状态不能为空")
  19 + @InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}")
  20 + private Integer status;
  21 +
  22 +}
yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/rule/scene/IotRuleSceneService.java
@@ -34,6 +34,14 @@ public interface IotRuleSceneService { @@ -34,6 +34,14 @@ public interface IotRuleSceneService {
34 void updateRuleScene(@Valid IotRuleSceneSaveReqVO updateReqVO); 34 void updateRuleScene(@Valid IotRuleSceneSaveReqVO updateReqVO);
35 35
36 /** 36 /**
  37 + * 更新场景联动状态
  38 + *
  39 + * @param id 场景联动编号
  40 + * @param status 状态
  41 + */
  42 + void updateRuleSceneStatus(Long id, Integer status);
  43 +
  44 + /**
37 * 删除场景联动 45 * 删除场景联动
38 * 46 *
39 * @param id 编号 47 * @param id 编号
yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/rule/scene/IotRuleSceneServiceImpl.java
@@ -94,6 +94,15 @@ public class IotRuleSceneServiceImpl implements IotRuleSceneService { @@ -94,6 +94,15 @@ public class IotRuleSceneServiceImpl implements IotRuleSceneService {
94 } 94 }
95 95
96 @Override 96 @Override
  97 + public void updateRuleSceneStatus(Long id, Integer status) {
  98 + // 校验存在
  99 + validateRuleSceneExists(id);
  100 + // 更新状态
  101 + IotRuleSceneDO updateObj = new IotRuleSceneDO().setId(id).setStatus(status);
  102 + ruleSceneMapper.updateById(updateObj);
  103 + }
  104 +
  105 + @Override
97 public void deleteRuleScene(Long id) { 106 public void deleteRuleScene(Long id) {
98 // 校验存在 107 // 校验存在
99 validateRuleSceneExists(id); 108 validateRuleSceneExists(id);