diff --git a/smart-switch-service/src/main/java/com/ruoyi/ss/device/service/DeviceService.java b/smart-switch-service/src/main/java/com/ruoyi/ss/device/service/DeviceService.java index ee527da3..459bdb9c 100644 --- a/smart-switch-service/src/main/java/com/ruoyi/ss/device/service/DeviceService.java +++ b/smart-switch-service/src/main/java/com/ruoyi/ss/device/service/DeviceService.java @@ -170,14 +170,14 @@ public interface DeviceService /** * ids查询列表 */ - default List selectListByIds(List ids) { - return selectListByIds(ids, null); + default List selectByIds(List ids) { + return selectByIds(ids, null); } /** * ids查询列表 */ - List selectListByIds(List ids, Long userId); + List selectByIds(List ids, Long userId); /** * 查询各店铺的设备数量,并分组 @@ -348,11 +348,6 @@ public interface DeviceService int setWifi(DeviceWifiDTO dto); - /** - * 根据设备ID列表查询 - */ - List selectByDeviceIds(List deviceIds); - /** * 根据mac查询设备 */ diff --git a/smart-switch-service/src/main/java/com/ruoyi/ss/device/service/impl/DeviceServiceImpl.java b/smart-switch-service/src/main/java/com/ruoyi/ss/device/service/impl/DeviceServiceImpl.java index 839b05f6..091b709f 100644 --- a/smart-switch-service/src/main/java/com/ruoyi/ss/device/service/impl/DeviceServiceImpl.java +++ b/smart-switch-service/src/main/java/com/ruoyi/ss/device/service/impl/DeviceServiceImpl.java @@ -376,7 +376,7 @@ public class DeviceServiceImpl implements DeviceService List usingBills = transactionBillService.selectUsingBill(userId); List deviceIds = usingBills.stream().map(TransactionBillVO::getDeviceId).distinct().collect(Collectors.toList()); // 查询设备列表 - return this.selectListByIds(deviceIds); + return this.selectByIds(deviceIds); } @Override @@ -640,13 +640,6 @@ public class DeviceServiceImpl implements DeviceService return 1; } - @Override - public List selectByDeviceIds(List deviceIds) { - DeviceQuery query = new DeviceQuery(); - query.setDeviceIds(deviceIds); - return this.selectSmDeviceList(query); - } - @Override public DeviceVO selectByAnyMac(String mac) { return deviceMapper.selectByAnyMac(mac); @@ -774,7 +767,7 @@ public class DeviceServiceImpl implements DeviceService // 拉取最新数据 this.pullDeviceInfo(deviceIds); // 查询设备列表 - List deviceList = this.selectByDeviceIds(deviceIds); + List deviceList = this.selectByIds(deviceIds); Integer result = transactionTemplate.execute(status -> { // 关闭设备订单 @@ -1172,7 +1165,7 @@ public class DeviceServiceImpl implements DeviceService * @param userId */ @Override - public List selectListByIds(List ids, Long userId) { + public List selectByIds(List ids, Long userId) { if (CollectionUtils.isEmptyElement(ids)) { return Collections.emptyList(); } diff --git a/smart-switch-service/src/main/java/com/ruoyi/ss/suit/service/impl/SuitValidatorImpl.java b/smart-switch-service/src/main/java/com/ruoyi/ss/suit/service/impl/SuitValidatorImpl.java index ac5e85df..b3cb9621 100644 --- a/smart-switch-service/src/main/java/com/ruoyi/ss/suit/service/impl/SuitValidatorImpl.java +++ b/smart-switch-service/src/main/java/com/ruoyi/ss/suit/service/impl/SuitValidatorImpl.java @@ -4,9 +4,13 @@ import com.ruoyi.common.core.domain.BaseValidator; import com.ruoyi.common.core.domain.ValidateResult; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.ServiceUtil; +import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.collection.CollectionUtils; import com.ruoyi.common.utils.spring.SpringUtils; +import com.ruoyi.ss.device.domain.vo.DeviceVO; +import com.ruoyi.ss.device.service.DeviceService; import com.ruoyi.ss.device.service.DeviceValidator; +import com.ruoyi.ss.model.domain.enums.ModelTag; import com.ruoyi.ss.suit.domain.SuitBO; import com.ruoyi.ss.suit.domain.SuitQuery; import com.ruoyi.ss.suit.domain.SuitVO; @@ -42,6 +46,9 @@ public class SuitValidatorImpl extends BaseValidator implements SuitValidator { @Autowired private ISysConfigService sysConfigService; + @Autowired + private DeviceService deviceService; + @Override public ValidateResult preLogicDel(List suitIds) { if (CollectionUtils.isEmptyElement(suitIds)) { @@ -143,7 +150,6 @@ public class SuitValidatorImpl extends BaseValidator implements SuitValidator { SuitVO old = suitService.selectSuitBySuitId(suit.getSuitId()); boolean create = old == null; // 是否新建 - // 创建或者修改其中一个时 if (create || suit.getFeeType() != null || suit.getFeeMode() != null) { @@ -182,6 +188,20 @@ public class SuitValidatorImpl extends BaseValidator implements SuitValidator { } } + // 判断设备是否支持电量 + if (SuitFeeType.rechargeCountList().contains(suit.getFeeType()) && CollectionUtils.isNotEmptyElement(suit.getDeviceIds())) { + List deviceList = deviceService.selectByIds(new ArrayList<>(suit.getDeviceIds())); + List unSupport = new ArrayList<>(); + for (DeviceVO device : deviceList) { + if (!ModelTag.hasTag(device.getModelTags(), ModelTag.ELE)) { + unSupport.add(device.getDeviceNo()); + } + } + if (CollectionUtils.isNotEmptyElement(unSupport)) { + return error("以下设备不支持电量套餐:" + StringUtils.join(unSupport, ",")); + } + } + return success(); } diff --git a/smart-switch-web/src/main/java/com/ruoyi/web/controller/mch/MchDeviceController.java b/smart-switch-web/src/main/java/com/ruoyi/web/controller/mch/MchDeviceController.java index ec9560f5..cb0d61e7 100644 --- a/smart-switch-web/src/main/java/com/ruoyi/web/controller/mch/MchDeviceController.java +++ b/smart-switch-web/src/main/java/com/ruoyi/web/controller/mch/MchDeviceController.java @@ -11,7 +11,6 @@ import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.util.Arrays; import java.util.List; /** @@ -29,7 +28,7 @@ public class MchDeviceController extends BaseController { @GetMapping("/listByIds/{ids}") public AjaxResult listByIds(@PathVariable List ids) { - List list = deviceService.selectListByIds(ids, getUserId()); + List list = deviceService.selectByIds(ids, getUserId()); return success(list); } diff --git a/smart-switch-web/src/main/java/com/ruoyi/web/controller/ss/SmDeviceController.java b/smart-switch-web/src/main/java/com/ruoyi/web/controller/ss/SmDeviceController.java index 6775ed3c..d3c2ce65 100644 --- a/smart-switch-web/src/main/java/com/ruoyi/web/controller/ss/SmDeviceController.java +++ b/smart-switch-web/src/main/java/com/ruoyi/web/controller/ss/SmDeviceController.java @@ -62,7 +62,7 @@ public class SmDeviceController extends BaseController @GetMapping("/listByIds/{ids}") public AjaxResult listByIds(@PathVariable Long[] ids) { - List list = deviceService.selectListByIds(Arrays.asList(ids)); + List list = deviceService.selectByIds(Arrays.asList(ids)); return success(list); }