From c5c77026281f06d550420e54320acf1be8c8ff71 Mon Sep 17 00:00:00 2001 From: HuangHuiKang Date: Wed, 1 Jul 2026 18:01:46 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E5=8F=B0=E8=B4=A6=E9=97=AE=E9=A2=98=E5=8F=8A=E4=BA=A7=E5=93=81?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vo/product/ErpProductPageReqVO.java | 9 +++ .../product/vo/product/ErpProductRespVO.java | 3 + .../dal/mysql/product/ErpProductMapper.java | 11 ++++ .../erp/dal/mysql/stock/ErpStockMapper.java | 29 ++++++++ .../product/ErpProductServiceImpl.java | 13 +++- .../module/iot/enums/ErrorCodeConstants.java | 1 + .../iot/service/device/TDengineService.java | 4 +- .../module/mes/enums/ErrorCodeConstants.java | 9 +++ .../deviceledger/DeviceLedgerController.java | 4 +- .../deviceledger/DeviceLedgerMapper.java | 9 ++- .../deviceledger/DeviceLedgerService.java | 2 + .../deviceledger/DeviceLedgerServiceImpl.java | 66 ++++++++++++++----- 12 files changed, 134 insertions(+), 26 deletions(-) diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/vo/product/ErpProductPageReqVO.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/vo/product/ErpProductPageReqVO.java index 5936746d1..2765baaca 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/vo/product/ErpProductPageReqVO.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/vo/product/ErpProductPageReqVO.java @@ -36,4 +36,13 @@ public class ErpProductPageReqVO extends PageParam { @Schema(description = "产品规格", example = "红色") private String standard; + @Schema(description = "是否只查询库存不为 0 的产品", example = "true") + private Boolean stockNotZero; + + @Schema(description = "仓库编号", example = "1") + private Long warehouseId; + + @Schema(description = "库区编号", example = "1") + private Long areaId; + } diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/vo/product/ErpProductRespVO.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/vo/product/ErpProductRespVO.java index 62f70cf71..c6577d0b5 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/vo/product/ErpProductRespVO.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/vo/product/ErpProductRespVO.java @@ -105,6 +105,9 @@ public class ErpProductRespVO extends ErpProductDO { @ExcelProperty("预警库存") private BigDecimal safetyNumber; + @Schema(description = "库存数量", example = "100") + private BigDecimal stockCount; + @Schema(description = "默认仓库 ID", example = "1") private Long defaultWarehouseId; diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/mysql/product/ErpProductMapper.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/mysql/product/ErpProductMapper.java index edce89a53..c73ff9d11 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/mysql/product/ErpProductMapper.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/mysql/product/ErpProductMapper.java @@ -63,6 +63,17 @@ public interface ErpProductMapper extends BaseMapperX { .betweenIfPresent(ErpProductDO::getCreateTime, reqVO.getCreateTime()) .orderByDesc(ErpProductDO::getId); + if (Boolean.TRUE.equals(reqVO.getStockNotZero())) { + StringBuilder stockExistsSql = new StringBuilder("SELECT 1 FROM erp_stock s WHERE s.deleted = b'0' AND s.product_id = erp_product.id AND s.count != 0"); + if (reqVO.getWarehouseId() != null) { + stockExistsSql.append(" AND s.warehouse_id = ").append(reqVO.getWarehouseId()); + } + if (reqVO.getAreaId() != null) { + stockExistsSql.append(" AND s.area_id = ").append(reqVO.getAreaId()); + } + queryWrapper.exists(stockExistsSql.toString()); + } + return selectPage(reqVO,queryWrapper); } diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/mysql/stock/ErpStockMapper.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/mysql/stock/ErpStockMapper.java index 0231088e8..f6d504660 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/mysql/stock/ErpStockMapper.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/mysql/stock/ErpStockMapper.java @@ -17,6 +17,7 @@ import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; import java.util.Collection; +import java.util.Collections; import java.util.Arrays; import java.util.List; import java.util.Map; @@ -185,6 +186,34 @@ public interface ErpStockMapper extends BaseMapperX { return BigDecimal.valueOf(MapUtil.getDouble(result.get(0), "sumCount", 0D)); } + default Map selectSumCountMapByProductIds(Collection productIds) { + return selectSumCountMapByProductIds(productIds, null, null); + } + + default Map selectSumCountMapByProductIds(Collection productIds, Long warehouseId, Long areaId) { + if (CollUtil.isEmpty(productIds)) { + return Collections.emptyMap(); + } + QueryWrapper queryWrapper = new QueryWrapper() + .select("product_id AS productId", "SUM(count) AS stockCount") + .in("product_id", productIds) + .groupBy("product_id"); + if (warehouseId != null) { + queryWrapper.eq("warehouse_id", warehouseId); + } + if (areaId != null) { + queryWrapper.eq("area_id", areaId); + } + List> result = selectMaps(queryWrapper); + if (CollUtil.isEmpty(result)) { + return Collections.emptyMap(); + } + return result.stream().collect(Collectors.toMap( + item -> ((Number) item.get("productId")).longValue(), + item -> item.get("stockCount") == null ? BigDecimal.ZERO : new BigDecimal(item.get("stockCount").toString()), + (count1, count2) -> count1)); + } + void updateStockCount(@Param("productId") Long productId, @Param("warehouseId") Long warehouseId, @Param("num") BigDecimal num); diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java index d0b503543..6301e561a 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java @@ -634,17 +634,22 @@ public class ErpProductServiceImpl implements ErpProductService { @Override public PageResult getProductVOPage(ErpProductPageReqVO pageReqVO) { PageResult pageResult = productMapper.selectPage(pageReqVO); - return new PageResult<>(buildProductVOList(pageResult.getList()), pageResult.getTotal()); + return new PageResult<>(buildProductVOList(pageResult.getList(), pageReqVO.getWarehouseId(), pageReqVO.getAreaId()), pageResult.getTotal()); } @Override public List buildProductVOList(List list) { + return buildProductVOList(list, null, null); + } + + private List buildProductVOList(List list, Long warehouseId, Long areaId) { if (CollUtil.isEmpty(list)) { return Collections.emptyList(); } + Set productIds = convertSet(list, ErpProductDO::getId); List supplierRels = productSupplierRelMapper.selectListByProductIds( - convertSet(list, ErpProductDO::getId)); + productIds); Map> packagingSchemeMap = - productPackagingSchemeRelMapper.selectListByProductIds(convertSet(list, ErpProductDO::getId)) + productPackagingSchemeRelMapper.selectListByProductIds(productIds) .stream() .collect(Collectors.groupingBy(ProductPackagingSchemeRelDO::getProductId, Collectors.mapping(rel -> BeanUtils.toBean(rel, ProductPackagingSchemeRespVO.class), @@ -665,6 +670,7 @@ public class ErpProductServiceImpl implements ErpProductService { convertSet(list, ErpProductDO::getUnitId)); Map purchaseUnitMap = productUnitService.getProductUnitMap( convertSet(list, ErpProductDO::getPurchaseUnitId)); + Map stockCountMap = erpStockMapper.selectSumCountMapByProductIds(productIds, warehouseId, areaId); return BeanUtils.toBean(list, ErpProductRespVO.class, product -> { MapUtils.findAndThen(categoryMap, product.getCategoryId(), category -> { product.setCategoryName(category.getName()); @@ -687,6 +693,7 @@ public class ErpProductServiceImpl implements ErpProductService { product.setPackagingSchemes(packagingSchemeMap.getOrDefault(product.getId(), Collections.emptyList())); product.setSuppliers(supplierMap.getOrDefault(product.getId(), Collections.emptyList())); product.setDefaultSupplierId(defaultSupplierMap.get(product.getId())); + product.setStockCount(stockCountMap.getOrDefault(product.getId(), BigDecimal.ZERO)); if (Boolean.TRUE.equals(product.getDeleted())) { product.setName(product.getName() + "(已被删除)"); } diff --git a/yudao-module-iot/yudao-module-iot-api/src/main/java/cn/iocoder/yudao/module/iot/enums/ErrorCodeConstants.java b/yudao-module-iot/yudao-module-iot-api/src/main/java/cn/iocoder/yudao/module/iot/enums/ErrorCodeConstants.java index 38548102c..e318830cb 100644 --- a/yudao-module-iot/yudao-module-iot-api/src/main/java/cn/iocoder/yudao/module/iot/enums/ErrorCodeConstants.java +++ b/yudao-module-iot/yudao-module-iot-api/src/main/java/cn/iocoder/yudao/module/iot/enums/ErrorCodeConstants.java @@ -48,6 +48,7 @@ public interface ErrorCodeConstants { ErrorCode DEVICE_MODEL_ATTRIBUTE_NOT_EXISTS = new ErrorCode(1_003_000_005, "采集设备模型点位不存在"); ErrorCode DEVICE_MODEL_POINT_CODE_EXISTS = new ErrorCode(1_003_000_005, "采集设备采集点位编码已存在"); ErrorCode DEVICE_MODEL_ATTRIBUTE_POTIN_CODE_EXISTS = new ErrorCode(1_003_000_005, "采集设备模型点位编码已存在"); + ErrorCode DEVICE_MODEL_MUST_LETTER = new ErrorCode(1_003_000_005, "必须以字母开头"); ErrorCode DEVICE_ATTRIBUTE_NOT_EXISTS = new ErrorCode(1_003_000_006, "设备属性不存在"); ErrorCode DEVICE_ATTRIBUTE_TYPE_NOT_EXISTS = new ErrorCode(1_003_000_007, "采集点分类不存在"); diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/TDengineService.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/TDengineService.java index 26b1972af..28059a075 100644 --- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/TDengineService.java +++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/TDengineService.java @@ -1371,8 +1371,8 @@ public class TDengineService { // 2. 必须以字母开头 if (!Character.isLetter(tableName.charAt(0))) { - throw exception(DEVICE_MODEL_POINT_CODE_EXISTS, - "表名必须以字母开头: " + tableName); + throw exception(DEVICE_MODEL_MUST_LETTER, + tableName); } // 3. 只能包含字母、数字、下划线 diff --git a/yudao-module-mes/yudao-module-mes-api/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java b/yudao-module-mes/yudao-module-mes-api/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java index 15f76c6ca..9c78a59ac 100644 --- a/yudao-module-mes/yudao-module-mes-api/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java +++ b/yudao-module-mes/yudao-module-mes-api/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java @@ -8,6 +8,15 @@ import cn.iocoder.yudao.framework.common.exception.ErrorCode; * report 系统,使用 1-003-000-000 段 */ public interface ErrorCodeConstants { + ErrorCode CUSTOMER_NOT_EXISTS = new ErrorCode(5_0900, "客户不存在"); + ErrorCode CUSTOMER_IN_POOL = new ErrorCode(5_0901, "客户【{}】放入公海失败,原因:已经是公海客户"); + ErrorCode CUSTOMER_LOCKED_PUT_POOL_FAIL = new ErrorCode(5_0902, "客户【{}】放入公海失败,原因:客户已锁定"); + ErrorCode CUSTOMER_LOCK_FAIL_IS_LOCK = new ErrorCode(5_0903, "锁定客户失败,它已经处于锁定状态"); + ErrorCode CUSTOMER_UNLOCK_FAIL_IS_UNLOCK = new ErrorCode(5_0904, "解锁客户失败,它已经处于未锁定状态"); + ErrorCode CUSTOMER_IMPORT_LIST_IS_EMPTY = new ErrorCode(5_0905, "导入客户数据不能为空"); + ErrorCode CUSTOMER_CREATE_NAME_NOT_NULL = new ErrorCode(5_0906, "客户名称不能为空"); + ErrorCode CUSTOMER_NAME_EXISTS = new ErrorCode(5_0907, "已存在名为【{}】的客户"); + ErrorCode CUSTOMER_UPDATE_DEAL_STATUS_FAIL = new ErrorCode(5_0908, "更新客户的成交状态失败,原因:已经是该状态,无需更新"); ErrorCode MOLD_REPAIR_ID_NULL = new ErrorCode(5_0090, "维修单ID不能为空"); diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/deviceledger/DeviceLedgerController.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/deviceledger/DeviceLedgerController.java index 7450cf910..8afab2631 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/deviceledger/DeviceLedgerController.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/deviceledger/DeviceLedgerController.java @@ -173,8 +173,8 @@ public class DeviceLedgerController { @GetMapping("/list") @Operation(summary = "获得设备台账列表") @PreAuthorize("@ss.hasPermission('mes:device-ledger:query')") - public CommonResult> getDeviceLedgerList() { - List deviceLedgerDOList = deviceLedgerService.getDeviceLedgerList(); + public CommonResult> getDeviceLedgerList(@Valid DeviceLedgerPageReqVO pageReqVO) { + List deviceLedgerDOList = deviceLedgerService.getDeviceLedgerList(pageReqVO); return success(deviceLedgerDOList); } diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/deviceledger/DeviceLedgerMapper.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/deviceledger/DeviceLedgerMapper.java index bd68ffc32..8b5d09ec4 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/deviceledger/DeviceLedgerMapper.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/deviceledger/DeviceLedgerMapper.java @@ -21,7 +21,14 @@ import org.apache.ibatis.annotations.Param; public interface DeviceLedgerMapper extends BaseMapperX { default PageResult selectPage(DeviceLedgerPageReqVO reqVO) { + return selectPage(reqVO, buildQueryWrapper(reqVO)); + } + + default List selectList(DeviceLedgerPageReqVO reqVO) { + return selectList(buildQueryWrapper(reqVO)); + } + default LambdaQueryWrapperX buildQueryWrapper(DeviceLedgerPageReqVO reqVO) { LambdaQueryWrapperX deviceLedgerDOLambdaQueryWrapperX = new LambdaQueryWrapperX<>(); if(StringUtils.isNotBlank(reqVO.getDeviceCode())&&StringUtils.isNotBlank(reqVO.getDeviceName())&&reqVO.getDeviceCode().equals(reqVO.getDeviceName())){ if(reqVO.getDeviceCode().contains("EQUIPMENT-")){ @@ -74,7 +81,7 @@ public interface DeviceLedgerMapper extends BaseMapperX { deviceLedgerDOLambdaQueryWrapperX.in(DeviceLedgerDO::getId, idList); } - return selectPage(reqVO, deviceLedgerDOLambdaQueryWrapperX); + return deviceLedgerDOLambdaQueryWrapperX; } List selectListByIds(@Param("ids") Collection ids); diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerService.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerService.java index e8be8169c..11e97857f 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerService.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerService.java @@ -62,6 +62,8 @@ public interface DeviceLedgerService { List getDeviceCapacityReportList(DeviceCapacityReportPageReqVO pageReqVO); List getDeviceLedgerList(); + + List getDeviceLedgerList(DeviceLedgerPageReqVO pageReqVO); /** * 获得产品 VO 列表 * diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerServiceImpl.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerServiceImpl.java index 8c1906d59..d81f972e1 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerServiceImpl.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerServiceImpl.java @@ -485,11 +485,38 @@ public class DeviceLedgerServiceImpl implements DeviceLedgerService { @Override public PageResult getDeviceLedgerPage(DeviceLedgerPageReqVO pageReqVO) { + if (!prepareDeviceLedgerQuery(pageReqVO)) { + return new PageResult<>(Collections.emptyList(), 0L); + } + + List deviceLineList = deviceLineService.getDeviceLineList(new DeviceLineListReqVO()); + Map> collect = deviceLineList.stream().collect(Collectors.groupingBy(DeviceLineDO::getId)); + Map deviceLineMap = deviceLineList.stream() + .collect(Collectors.toMap(DeviceLineDO::getId, Function.identity(), (a, b) -> a)); + PageResult deviceLedgerDOPageResult = deviceLedgerMapper.selectPage(pageReqVO); + for (DeviceLedgerDO deviceLedgerDO : deviceLedgerDOPageResult.getList()) { + if (deviceLedgerDO.getDeviceType()!=null){ + DeviceTypeDO deviceTypeDO = deviceTypeMapper.selectById(deviceLedgerDO.getDeviceType()); + deviceLedgerDO.setTypeName(deviceTypeDO.getName()); + } + if(deviceLedgerDO.getDeviceLine()!=null&&CollUtil.isNotEmpty(collect.get(deviceLedgerDO.getDeviceLine().longValue()))){ + deviceLedgerDO.setWorkshopName(collect.get(deviceLedgerDO.getDeviceLine().longValue()).get(0).getName()); + } + fillTopCategoryInfo(deviceLedgerDO, deviceLineMap); + } + fillIotDeviceInfo(deviceLedgerDOPageResult.getList()); + return deviceLedgerDOPageResult; + } + + private boolean prepareDeviceLedgerQuery(DeviceLedgerPageReqVO pageReqVO) { + if (pageReqVO == null) { + return true; + } if (pageReqVO.getDeviceLine() != null) { Set deviceLineIds = new LinkedHashSet<>(); collectDeviceLineIds(Long.valueOf(pageReqVO.getDeviceLine()), deviceLineIds); if (deviceLineIds.isEmpty()) { - return new PageResult<>(Collections.emptyList(), 0L); + return false; } pageReqVO.setDeviceLineIds(new ArrayList<>(deviceLineIds)); } @@ -507,25 +534,13 @@ public class DeviceLedgerServiceImpl implements DeviceLedgerService { .map(String::valueOf) .collect(Collectors.joining(",")); - pageReqVO.setIds(ids); - } - List deviceLineList = deviceLineService.getDeviceLineList(new DeviceLineListReqVO()); - Map> collect = deviceLineList.stream().collect(Collectors.groupingBy(DeviceLineDO::getId)); - Map deviceLineMap = deviceLineList.stream() - .collect(Collectors.toMap(DeviceLineDO::getId, Function.identity(), (a, b) -> a)); - PageResult deviceLedgerDOPageResult = deviceLedgerMapper.selectPage(pageReqVO); - for (DeviceLedgerDO deviceLedgerDO : deviceLedgerDOPageResult.getList()) { - if (deviceLedgerDO.getDeviceType()!=null){ - DeviceTypeDO deviceTypeDO = deviceTypeMapper.selectById(deviceLedgerDO.getDeviceType()); - deviceLedgerDO.setTypeName(deviceTypeDO.getName()); - } - if(deviceLedgerDO.getDeviceLine()!=null&&CollUtil.isNotEmpty(collect.get(deviceLedgerDO.getDeviceLine().longValue()))){ - deviceLedgerDO.setWorkshopName(collect.get(deviceLedgerDO.getDeviceLine().longValue()).get(0).getName()); + if (StringUtils.isBlank(ids)) { + return false; } - fillTopCategoryInfo(deviceLedgerDO, deviceLineMap); + + pageReqVO.setIds(ids); } - fillIotDeviceInfo(deviceLedgerDOPageResult.getList()); - return deviceLedgerDOPageResult; + return true; } private void collectDeviceLineIds(Long deviceLineId, Set results) { @@ -715,6 +730,21 @@ public class DeviceLedgerServiceImpl implements DeviceLedgerService { public List getDeviceLedgerList() { List list = deviceLedgerMapper.selectList(); fillTopCategoryInfo(list); + fillIotDeviceInfo(list); + return list; + } + + @Override + public List getDeviceLedgerList(DeviceLedgerPageReqVO pageReqVO) { + if (pageReqVO == null) { + return getDeviceLedgerList(); + } + if (!prepareDeviceLedgerQuery(pageReqVO)) { + return Collections.emptyList(); + } + List list = deviceLedgerMapper.selectList(pageReqVO); + fillTopCategoryInfo(list); + fillIotDeviceInfo(list); return list; }