【代码优化】IoT:去除 Simulation 关键字,定义更清晰
This commit is contained in:
parent
252366781d
commit
47c281d933
|
@ -6,9 +6,9 @@ import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||||
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceSimulationDownstreamReqVO;
|
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceDownstreamReqVO;
|
||||||
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.device.*;
|
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.device.*;
|
||||||
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceSimulationUpstreamReqVO;
|
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceUpstreamReqVO;
|
||||||
import cn.iocoder.yudao.module.iot.dal.dataobject.device.IotDeviceDO;
|
import cn.iocoder.yudao.module.iot.dal.dataobject.device.IotDeviceDO;
|
||||||
import cn.iocoder.yudao.module.iot.service.device.IotDeviceService;
|
import cn.iocoder.yudao.module.iot.service.device.IotDeviceService;
|
||||||
import cn.iocoder.yudao.module.iot.service.device.control.IotDeviceDownstreamService;
|
import cn.iocoder.yudao.module.iot.service.device.control.IotDeviceDownstreamService;
|
||||||
|
@ -159,21 +159,19 @@ public class IotDeviceController {
|
||||||
ExcelUtils.write(response, "设备导入模板.xls", "数据", IotDeviceImportExcelVO.class, list);
|
ExcelUtils.write(response, "设备导入模板.xls", "数据", IotDeviceImportExcelVO.class, list);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/simulation-upstream")
|
@PostMapping("/upstream")
|
||||||
@Operation(summary = "模拟设备上行")
|
@Operation(summary = "设备上行", description = "可用于设备模拟")
|
||||||
@PreAuthorize("@ss.hasPermission('iot:device:simulation')")
|
@PreAuthorize("@ss.hasPermission('iot:device:upstream')")
|
||||||
public CommonResult<Boolean> simulationDeviceUpstream(
|
public CommonResult<Boolean> upstreamDevice(@Valid @RequestBody IotDeviceUpstreamReqVO upstreamReqVO) {
|
||||||
@Valid @RequestBody IotDeviceSimulationUpstreamReqVO upstreamReqVO) {
|
deviceUpstreamService.upstreamDevice(upstreamReqVO);
|
||||||
deviceUpstreamService.simulationDeviceUpstream(upstreamReqVO);
|
|
||||||
return success(true);
|
return success(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/simulation-downstream")
|
@PostMapping("/downstream")
|
||||||
@Operation(summary = "模拟设备下行")
|
@Operation(summary = "设备下行", description = "可用于设备模拟")
|
||||||
@PreAuthorize("@ss.hasPermission('iot:device:simulation')")
|
@PreAuthorize("@ss.hasPermission('iot:device:downstream')")
|
||||||
public CommonResult<Boolean> simulationDownstreamDevice(
|
public CommonResult<Boolean> downstreamDevice(@Valid @RequestBody IotDeviceDownstreamReqVO downstreamReqVO) {
|
||||||
@Valid @RequestBody IotDeviceSimulationDownstreamReqVO downstreamReqVO) {
|
deviceDownstreamService.downstreamDevice(downstreamReqVO);
|
||||||
deviceDownstreamService.simulationDeviceDownstream(downstreamReqVO);
|
|
||||||
return success(true);
|
return success(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -7,9 +7,9 @@ import jakarta.validation.constraints.NotEmpty;
|
||||||
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@Schema(description = "管理后台 - IoT 模拟设备下行 Request VO") // 服务调用、属性设置、属性获取等
|
@Schema(description = "管理后台 - IoT 设备下行 Request VO") // 服务调用、属性设置、属性获取等
|
||||||
@Data
|
@Data
|
||||||
public class IotDeviceSimulationDownstreamReqVO {
|
public class IotDeviceDownstreamReqVO {
|
||||||
|
|
||||||
@Schema(description = "设备编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "177")
|
@Schema(description = "设备编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "177")
|
||||||
@NotNull(message = "设备编号不能为空")
|
@NotNull(message = "设备编号不能为空")
|
|
@ -7,9 +7,9 @@ import jakarta.validation.constraints.NotEmpty;
|
||||||
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@Schema(description = "管理后台 - IoT 模拟设备上行 Request VO") // 属性上报、事件上报、状态变更等
|
@Schema(description = "管理后台 - IoT 设备上行 Request VO") // 属性上报、事件上报、状态变更等
|
||||||
@Data
|
@Data
|
||||||
public class IotDeviceSimulationUpstreamReqVO {
|
public class IotDeviceUpstreamReqVO {
|
||||||
|
|
||||||
@Schema(description = "设备编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "177")
|
@Schema(description = "设备编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "177")
|
||||||
@NotNull(message = "设备编号不能为空")
|
@NotNull(message = "设备编号不能为空")
|
|
@ -160,4 +160,11 @@ public class IotDeviceDO extends BaseDO {
|
||||||
*/
|
*/
|
||||||
private String address;
|
private String address;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设备配置
|
||||||
|
*
|
||||||
|
* JSON 格式,可下发给 device 进行自定义配置
|
||||||
|
*/
|
||||||
|
private String config;
|
||||||
|
|
||||||
}
|
}
|
|
@ -1,6 +1,6 @@
|
||||||
package cn.iocoder.yudao.module.iot.service.device.control;
|
package cn.iocoder.yudao.module.iot.service.device.control;
|
||||||
|
|
||||||
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceSimulationDownstreamReqVO;
|
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceDownstreamReqVO;
|
||||||
import jakarta.validation.Valid;
|
import jakarta.validation.Valid;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -13,10 +13,10 @@ import jakarta.validation.Valid;
|
||||||
public interface IotDeviceDownstreamService {
|
public interface IotDeviceDownstreamService {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 模拟设备下行
|
* 设备下行,可用于设备模拟
|
||||||
*
|
*
|
||||||
* @param downstreamReqVO 设备下行请求 VO
|
* @param downstreamReqVO 设备下行请求 VO
|
||||||
*/
|
*/
|
||||||
void simulationDeviceDownstream(@Valid IotDeviceSimulationDownstreamReqVO downstreamReqVO);
|
void downstreamDevice(@Valid IotDeviceDownstreamReqVO downstreamReqVO);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,7 +9,7 @@ import cn.iocoder.yudao.module.iot.api.device.dto.control.downstream.IotDeviceDo
|
||||||
import cn.iocoder.yudao.module.iot.api.device.dto.control.downstream.IotDevicePropertyGetReqDTO;
|
import cn.iocoder.yudao.module.iot.api.device.dto.control.downstream.IotDevicePropertyGetReqDTO;
|
||||||
import cn.iocoder.yudao.module.iot.api.device.dto.control.downstream.IotDevicePropertySetReqDTO;
|
import cn.iocoder.yudao.module.iot.api.device.dto.control.downstream.IotDevicePropertySetReqDTO;
|
||||||
import cn.iocoder.yudao.module.iot.api.device.dto.control.downstream.IotDeviceServiceInvokeReqDTO;
|
import cn.iocoder.yudao.module.iot.api.device.dto.control.downstream.IotDeviceServiceInvokeReqDTO;
|
||||||
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceSimulationDownstreamReqVO;
|
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceDownstreamReqVO;
|
||||||
import cn.iocoder.yudao.module.iot.dal.dataobject.device.IotDeviceDO;
|
import cn.iocoder.yudao.module.iot.dal.dataobject.device.IotDeviceDO;
|
||||||
import cn.iocoder.yudao.module.iot.dal.dataobject.plugin.IotPluginInstanceDO;
|
import cn.iocoder.yudao.module.iot.dal.dataobject.plugin.IotPluginInstanceDO;
|
||||||
import cn.iocoder.yudao.module.iot.enums.device.IotDeviceMessageIdentifierEnum;
|
import cn.iocoder.yudao.module.iot.enums.device.IotDeviceMessageIdentifierEnum;
|
||||||
|
@ -56,7 +56,7 @@ public class IotDeviceDownstreamServiceImpl implements IotDeviceDownstreamServic
|
||||||
private IotDeviceProducer deviceProducer;
|
private IotDeviceProducer deviceProducer;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void simulationDeviceDownstream(IotDeviceSimulationDownstreamReqVO downstreamReqVO) {
|
public void downstreamDevice(IotDeviceDownstreamReqVO downstreamReqVO) {
|
||||||
// 校验设备是否存在
|
// 校验设备是否存在
|
||||||
IotDeviceDO device = deviceService.validateDeviceExists(downstreamReqVO.getId());
|
IotDeviceDO device = deviceService.validateDeviceExists(downstreamReqVO.getId());
|
||||||
// TODO 芋艿:父设备的处理
|
// TODO 芋艿:父设备的处理
|
||||||
|
@ -93,7 +93,7 @@ public class IotDeviceDownstreamServiceImpl implements IotDeviceDownstreamServic
|
||||||
* @param parentDevice 父设备
|
* @param parentDevice 父设备
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
private void invokeDeviceService(IotDeviceSimulationDownstreamReqVO downstreamReqVO,
|
private void invokeDeviceService(IotDeviceDownstreamReqVO downstreamReqVO,
|
||||||
IotDeviceDO device, IotDeviceDO parentDevice) {
|
IotDeviceDO device, IotDeviceDO parentDevice) {
|
||||||
// 1. 参数校验
|
// 1. 参数校验
|
||||||
if (!(downstreamReqVO.getData() instanceof Map<?, ?>)) {
|
if (!(downstreamReqVO.getData() instanceof Map<?, ?>)) {
|
||||||
|
@ -130,7 +130,7 @@ public class IotDeviceDownstreamServiceImpl implements IotDeviceDownstreamServic
|
||||||
* @param parentDevice 父设备
|
* @param parentDevice 父设备
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
private void setDeviceProperty(IotDeviceSimulationDownstreamReqVO downstreamReqVO,
|
private void setDeviceProperty(IotDeviceDownstreamReqVO downstreamReqVO,
|
||||||
IotDeviceDO device, IotDeviceDO parentDevice) {
|
IotDeviceDO device, IotDeviceDO parentDevice) {
|
||||||
// 1. 参数校验
|
// 1. 参数校验
|
||||||
if (!(downstreamReqVO.getData() instanceof Map<?, ?>)) {
|
if (!(downstreamReqVO.getData() instanceof Map<?, ?>)) {
|
||||||
|
@ -168,7 +168,7 @@ public class IotDeviceDownstreamServiceImpl implements IotDeviceDownstreamServic
|
||||||
* @param parentDevice 父设备
|
* @param parentDevice 父设备
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
private void getDeviceProperty(IotDeviceSimulationDownstreamReqVO downstreamReqVO,
|
private void getDeviceProperty(IotDeviceDownstreamReqVO downstreamReqVO,
|
||||||
IotDeviceDO device, IotDeviceDO parentDevice) {
|
IotDeviceDO device, IotDeviceDO parentDevice) {
|
||||||
// 1. 参数校验
|
// 1. 参数校验
|
||||||
if (!(downstreamReqVO.getData() instanceof List<?>)) {
|
if (!(downstreamReqVO.getData() instanceof List<?>)) {
|
||||||
|
|
|
@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.iot.service.device.control;
|
||||||
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDeviceEventReportReqDTO;
|
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDeviceEventReportReqDTO;
|
||||||
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDevicePropertyReportReqDTO;
|
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDevicePropertyReportReqDTO;
|
||||||
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDeviceStateUpdateReqDTO;
|
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDeviceStateUpdateReqDTO;
|
||||||
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceSimulationUpstreamReqVO;
|
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceUpstreamReqVO;
|
||||||
import jakarta.validation.Valid;
|
import jakarta.validation.Valid;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -16,11 +16,11 @@ import jakarta.validation.Valid;
|
||||||
public interface IotDeviceUpstreamService {
|
public interface IotDeviceUpstreamService {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 模拟设备上行
|
* 设备上行,可用于设备模拟
|
||||||
*
|
*
|
||||||
* @param simulatorReqVO 设备上行请求 VO
|
* @param simulatorReqVO 设备上行请求 VO
|
||||||
*/
|
*/
|
||||||
void simulationDeviceUpstream(@Valid IotDeviceSimulationUpstreamReqVO simulatorReqVO);
|
void upstreamDevice(@Valid IotDeviceUpstreamReqVO simulatorReqVO);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新设备状态
|
* 更新设备状态
|
||||||
|
|
|
@ -11,7 +11,7 @@ import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDeviceEven
|
||||||
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDevicePropertyReportReqDTO;
|
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDevicePropertyReportReqDTO;
|
||||||
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDeviceStateUpdateReqDTO;
|
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDeviceStateUpdateReqDTO;
|
||||||
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDeviceUpstreamAbstractReqDTO;
|
import cn.iocoder.yudao.module.iot.api.device.dto.control.upstream.IotDeviceUpstreamAbstractReqDTO;
|
||||||
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceSimulationUpstreamReqVO;
|
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.control.IotDeviceUpstreamReqVO;
|
||||||
import cn.iocoder.yudao.module.iot.dal.dataobject.device.IotDeviceDO;
|
import cn.iocoder.yudao.module.iot.dal.dataobject.device.IotDeviceDO;
|
||||||
import cn.iocoder.yudao.module.iot.enums.device.IotDeviceMessageIdentifierEnum;
|
import cn.iocoder.yudao.module.iot.enums.device.IotDeviceMessageIdentifierEnum;
|
||||||
import cn.iocoder.yudao.module.iot.enums.device.IotDeviceMessageTypeEnum;
|
import cn.iocoder.yudao.module.iot.enums.device.IotDeviceMessageTypeEnum;
|
||||||
|
@ -52,7 +52,7 @@ public class IotDeviceUpstreamServiceImpl implements IotDeviceUpstreamService {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
public void simulationDeviceUpstream(IotDeviceSimulationUpstreamReqVO simulatorReqVO) {
|
public void upstreamDevice(IotDeviceUpstreamReqVO simulatorReqVO) {
|
||||||
// 1. 校验存在
|
// 1. 校验存在
|
||||||
IotDeviceDO device = deviceService.validateDeviceExists(simulatorReqVO.getId());
|
IotDeviceDO device = deviceService.validateDeviceExists(simulatorReqVO.getId());
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue