From eea4a678c0ba89d0ad975c15de5e4c3754a1c3b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A3=B7=E5=8F=B6?= <14103883+leaf-phos@user.noreply.gitee.com> Date: Sat, 19 Apr 2025 16:11:18 +0800 Subject: [PATCH] debug --- .../com/ruoyi/common/utils/MathUtils.java | 22 +++++++++++++++++++ .../service/impl/DeviceIotServiceImpl.java | 11 ++++++++++ .../impl/HardwareVersionAssemblerImpl.java | 4 ++-- 3 files changed, 35 insertions(+), 2 deletions(-) diff --git a/common-ruoyi/ruoyi-common/src/main/java/com/ruoyi/common/utils/MathUtils.java b/common-ruoyi/ruoyi-common/src/main/java/com/ruoyi/common/utils/MathUtils.java index 665f4e8..edfb60c 100644 --- a/common-ruoyi/ruoyi-common/src/main/java/com/ruoyi/common/utils/MathUtils.java +++ b/common-ruoyi/ruoyi-common/src/main/java/com/ruoyi/common/utils/MathUtils.java @@ -68,6 +68,28 @@ public class MathUtils { return a.compareTo(b) > 0; } + // 判断a是否大于b + public static boolean biggerThan(String a, String b) { + if (a == null) { + a = "0"; + } + if (b == null) { + b = "0"; + } + return biggerThan(new BigDecimal(a), new BigDecimal(b)); + } + + // 判断a是否小于b + public static boolean smallerThan(String a, String b) { + if (a == null) { + a = "0"; + } + if (b == null) { + b = "0"; + } + return smallerThan(new BigDecimal(a), new BigDecimal(b)); + } + // 判断a是否小于b public static boolean smallerThan(BigDecimal a, BigDecimal b) { if (a == null) { diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/device/service/impl/DeviceIotServiceImpl.java b/ruoyi-service/src/main/java/com/ruoyi/bst/device/service/impl/DeviceIotServiceImpl.java index d8074b5..37a1d4f 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/device/service/impl/DeviceIotServiceImpl.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/device/service/impl/DeviceIotServiceImpl.java @@ -24,9 +24,11 @@ import com.ruoyi.bst.device.service.DeviceIotService; import com.ruoyi.bst.device.utils.DeviceUtil; import com.ruoyi.bst.orderDevice.domain.enums.OrderDeviceStatus; import com.ruoyi.common.constants.ServiceCode; +import com.ruoyi.common.utils.MathUtils; import com.ruoyi.common.utils.ServiceUtil; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.collection.CollectionUtils; +import com.ruoyi.iot.constants.IotConstants; import com.ruoyi.iot.domain.IotDeviceInfo; import com.ruoyi.iot.domain.response.CommandResponse; import com.ruoyi.iot.enums.IotHttpStatus; @@ -385,6 +387,15 @@ public class DeviceIotServiceImpl implements DeviceIotService { ServiceUtil.assertion(device == null, "设备不存在"); ServiceUtil.assertion(StringUtils.isBlank(music), "声音设置不能为空"); + String softwareVersion = device.getSoftwareVersion(); + ServiceUtil.assertion(softwareVersion == null, "当前设备暂无软件版本,无法设置声音"); + if (IotConstants.MUSIC_VOICE.equals(music)) { + ServiceUtil.assertion(MathUtils.smallerThan(softwareVersion, "6000"), "当前设备软件版本低于6000,无法设置为语音"); + } + if (IotConstants.MUSIC_RING.equals(music)) { + ServiceUtil.assertion(MathUtils.smallerThan(softwareVersion, "6900"), "当前设备软件版本低于6900,无法设置为彩铃"); + } + DeviceIotVO vo = new DeviceIotVO(); transactionTemplate.execute(status -> { diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/hardwareVersion/service/impl/HardwareVersionAssemblerImpl.java b/ruoyi-service/src/main/java/com/ruoyi/bst/hardwareVersion/service/impl/HardwareVersionAssemblerImpl.java index 4b3ce9e..b0e323a 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/hardwareVersion/service/impl/HardwareVersionAssemblerImpl.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/hardwareVersion/service/impl/HardwareVersionAssemblerImpl.java @@ -49,7 +49,7 @@ public class HardwareVersionAssemblerImpl implements HardwareVersionAssembler { HardwareVersionQuery query = new HardwareVersionQuery(); query.setHardwareVersionIds(list.stream().map(HardwareVersionVO::getId).collect(Collectors.toList())); List hardwareVersionList = hardwareVersionService.selectBoundCount(query); - Map idToBoundMap = hardwareVersionList.stream().collect(Collectors.toMap(HardwareVersionVO::getId, HardwareVersion::getBound)); + Map idToBoundMap = hardwareVersionList.stream().collect(Collectors.toMap(HardwareVersionVO::getId, HardwareVersionVO::getBound)); list.forEach(vo->{ vo.setBound(idToBoundMap.getOrDefault(vo.getId(), 0)); }); @@ -63,7 +63,7 @@ public class HardwareVersionAssemblerImpl implements HardwareVersionAssembler { HardwareVersionQuery query = new HardwareVersionQuery(); query.setHardwareVersionIds(list.stream().map(HardwareVersionVO::getId).collect(Collectors.toList())); List hardwareVersionList = hardwareVersionService.selectUnBoundCount(query); - Map idToBoundMap = hardwareVersionList.stream().collect(Collectors.toMap(HardwareVersionVO::getId, HardwareVersion::getUnBound)); + Map idToBoundMap = hardwareVersionList.stream().collect(Collectors.toMap(HardwareVersionVO::getId, HardwareVersionVO::getUnBound)); list.forEach(vo->{ vo.setUnBound(idToBoundMap.getOrDefault(vo.getId(), 0)); });