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

This commit is contained in:
puhui999
2025-08-04 15:48:01 +08:00
parent fe1a8c0f66
commit 3a956adc2f
4 changed files with 48 additions and 0 deletions

View File

@ -7,6 +7,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene.IotRuleScenePageReqVO;
import cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene.IotRuleSceneRespVO;
import cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene.IotRuleSceneSaveReqVO;
import cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene.IotRuleSceneUpdateStatusReqVO;
import cn.iocoder.yudao.module.iot.dal.dataobject.rule.IotRuleSceneDO;
import cn.iocoder.yudao.module.iot.service.rule.scene.IotRuleSceneService;
import io.swagger.v3.oas.annotations.Operation;
@ -48,6 +49,14 @@ public class IotRuleSceneController {
return success(true);
}
@PutMapping("/update-status")
@Operation(summary = "更新场景联动状态")
@PreAuthorize("@ss.hasPermission('iot:rule-scene:update')")
public CommonResult<Boolean> updateRuleSceneStatus(@Valid @RequestBody IotRuleSceneUpdateStatusReqVO updateReqVO) {
ruleSceneService.updateRuleSceneStatus(updateReqVO.getId(), updateReqVO.getStatus());
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除场景联动")
@Parameter(name = "id", description = "编号", required = true)

View File

@ -0,0 +1,22 @@
package cn.iocoder.yudao.module.iot.controller.admin.rule.vo.scene;
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.common.validation.InEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
@Schema(description = "管理后台 - IoT 场景联动更新状态 Request VO")
@Data
public class IotRuleSceneUpdateStatusReqVO {
@Schema(description = "场景联动编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
@NotNull(message = "场景联动编号不能为空")
private Long id;
@Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "0")
@NotNull(message = "状态不能为空")
@InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}")
private Integer status;
}

View File

@ -33,6 +33,14 @@ public interface IotRuleSceneService {
*/
void updateRuleScene(@Valid IotRuleSceneSaveReqVO updateReqVO);
/**
* 更新场景联动状态
*
* @param id 场景联动编号
* @param status 状态
*/
void updateRuleSceneStatus(Long id, Integer status);
/**
* 删除场景联动
*

View File

@ -93,6 +93,15 @@ public class IotRuleSceneServiceImpl implements IotRuleSceneService {
ruleSceneMapper.updateById(updateObj);
}
@Override
public void updateRuleSceneStatus(Long id, Integer status) {
// 校验存在
validateRuleSceneExists(id);
// 更新状态
IotRuleSceneDO updateObj = new IotRuleSceneDO().setId(id).setStatus(status);
ruleSceneMapper.updateById(updateObj);
}
@Override
public void deleteRuleScene(Long id) {
// 校验存在