diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/DeviceController.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/DeviceController.java index da69cda27..edf0fe2b0 100644 --- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/DeviceController.java +++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/DeviceController.java @@ -117,6 +117,14 @@ public class DeviceController { return success(deviceService.getDeviceSelectList()); } + @GetMapping("/available-page") + @Operation(summary = "获取设备分页列表(全量+是否已选+已删除标识)") + @PreAuthorize("@ss.hasPermission('iot:device:query')") + public CommonResult> getAvailableDevicePage(@Valid DevicePageReqVO pageReqVO) { + PageResult pageResult = deviceService.getAvailableDevicePage(pageReqVO); + return success(pageResult); + } + @GetMapping("/export-excel") @Operation(summary = "导出物联设备 Excel") @PreAuthorize("@ss.hasPermission('iot:device:export')") diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/mysql/device/DeviceMapper.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/mysql/device/DeviceMapper.java index 294e1334b..6b6cc8169 100644 --- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/mysql/device/DeviceMapper.java +++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/mysql/device/DeviceMapper.java @@ -141,5 +141,5 @@ public interface DeviceMapper extends BaseMapperX { List selectHolidayDays(@Param("startDay") Date startDay, @Param("endDay") Date endDay); - + List getAvailableDevicePage(@Param("page") Page page,@Param("param") DevicePageReqVO pageReqVO); } diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceService.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceService.java index a39b9abd5..d53c62e34 100644 --- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceService.java +++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceService.java @@ -156,4 +156,5 @@ public interface DeviceService { Map getMapIncludeDeleted(Collection ids); + PageResult getAvailableDevicePage(DevicePageReqVO pageReqVO); } diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceServiceImpl.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceServiceImpl.java index eefa31923..b435468d8 100644 --- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceServiceImpl.java +++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceServiceImpl.java @@ -49,6 +49,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; @@ -1736,6 +1737,15 @@ public class DeviceServiceImpl implements DeviceService { )); } + @Override + public PageResult getAvailableDevicePage(DevicePageReqVO pageReqVO) { + // 1. 先从 MySQL 查询设备分页信息 + Page page = new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize()); + List availableDeviceList = deviceMapper.getAvailableDevicePage(page, pageReqVO); + + return new PageResult<>(availableDeviceList, page.getTotal()); + } + /** * 按时间区间查询设备整体开机率、稼动率日趋势。 * 按天复用 deviceOperationPage 统计单设备数据后求平均。 diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/device/DeviceMapper.xml b/yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/device/DeviceMapper.xml index d7a95e1b6..b1733a8b1 100644 --- a/yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/device/DeviceMapper.xml +++ b/yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/device/DeviceMapper.xml @@ -271,6 +271,33 @@ AND the_day >= #{startDay} AND the_day < #{endDay} +