From de61a5450c11cf6df72352918ee2481c042886f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B7=BB=E7=A0=96-JAVA=5CAdministrator?= <591141169@qq.com> Date: Thu, 9 May 2024 17:30:46 +0800 Subject: [PATCH] =?UTF-8?q?BUG=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../eam/controller/item/ItemController.java | 17 +++++++ .../eam/controller/item/vo/ItemBaseVO.java | 5 +-- .../eam/controller/item/vo/ItemExcelVO.java | 4 +- .../controller/item/vo/ItemExportReqVO.java | 4 +- .../controller/item/vo/ItemImportExcelVo.java | 4 +- .../eam/controller/item/vo/ItemImportVO.java | 4 +- .../eam/controller/item/vo/ItemPageReqVO.java | 4 +- .../eam/controller/item/vo/ItemRespVO.java | 3 ++ .../eam/dal/dataobject/item/ItemDO.java | 7 ++- .../module/eam/service/item/ItemService.java | 18 +++++++- .../eam/service/item/ItemServiceImpl.java | 45 +++++++++++++++++++ 11 files changed, 99 insertions(+), 16 deletions(-) diff --git a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/ItemController.java b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/ItemController.java index 057912c..e7ebe88 100644 --- a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/ItemController.java +++ b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/ItemController.java @@ -217,4 +217,21 @@ public class ItemController { return success(returnMap); } + @GetMapping("/warningPage") + @Operation(summary = "获得备件分页") +// @PreAuthorize("@ss.hasPermission('basic:item:query')") + public CommonResult> getItemWarningPage(@Valid ItemPageReqVO pageVO) { + PageResult pageResult = itemService.getWarningPage(pageVO); + return success(ItemConvert.INSTANCE.convertPage(pageResult)); + } + + @PostMapping("/warningSenior") + @Operation(summary = "高级搜索获得账期日历分页") +// @PreAuthorize("@ss.hasPermission('wms:item:query')") + public CommonResult> getItemWarningSenior(@Valid @RequestBody CustomConditions conditions) { + PageResult pageResult = itemService.getItemWarningSenior(conditions); + PageResult result = ItemConvert.INSTANCE.convertPage(pageResult); + return success(result); + } + } diff --git a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemBaseVO.java b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemBaseVO.java index a91a4bc..a4a4969 100644 --- a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemBaseVO.java +++ b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemBaseVO.java @@ -34,10 +34,10 @@ public class ItemBaseVO { private String brand; @Schema(description = "最高库存") - private Integer maxInventory; + private BigDecimal maxInventory; @Schema(description = "最低库存") - private Integer minInventory; + private BigDecimal minInventory; @Schema(description = "采购周期(周)") private Integer procurementCycle; @@ -64,7 +64,6 @@ public class ItemBaseVO { private String available; @Schema(description = "并发乐观锁", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "并发乐观锁不能为空") private Integer concurrencyStamp; } diff --git a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemExcelVO.java b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemExcelVO.java index 350c0a9..5df107c 100644 --- a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemExcelVO.java +++ b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemExcelVO.java @@ -40,10 +40,10 @@ public class ItemExcelVO { private String brand; @ExcelProperty("最高库存") - private Integer maxInventory; + private BigDecimal maxInventory; @ExcelProperty("最低库存") - private Integer minInventory; + private BigDecimal minInventory; @ExcelProperty("采购周期(周)") private Integer procurementCycle; diff --git a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemExportReqVO.java b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemExportReqVO.java index 5f29a55..d74792a 100644 --- a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemExportReqVO.java +++ b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemExportReqVO.java @@ -33,10 +33,10 @@ public class ItemExportReqVO { private String brand; @Schema(description = "最高库存") - private Integer maxInventory; + private BigDecimal maxInventory; @Schema(description = "最低库存") - private Integer minInventory; + private BigDecimal minInventory; @Schema(description = "采购周期(周)") private Integer procurementCycle; diff --git a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemImportExcelVo.java b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemImportExcelVo.java index cb1b181..ae10efe 100644 --- a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemImportExcelVo.java +++ b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemImportExcelVo.java @@ -35,10 +35,10 @@ public class ItemImportExcelVo { private String brand; @ExcelProperty("最高库存") - private Integer maxInventory; + private BigDecimal maxInventory; @ExcelProperty("最低库存") - private Integer minInventory; + private BigDecimal minInventory; @ExcelProperty("采购周期(周)") private Integer procurementCycle; diff --git a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemImportVO.java b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemImportVO.java index 85de342..45efd01 100644 --- a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemImportVO.java +++ b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemImportVO.java @@ -39,10 +39,10 @@ public class ItemImportVO { private String brand; @ExcelProperty("最高库存") - private Integer maxInventory; + private BigDecimal maxInventory; @ExcelProperty("最低库存") - private Integer minInventory; + private BigDecimal minInventory; @ExcelProperty("采购周期(周)") private Integer procurementCycle; diff --git a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemPageReqVO.java b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemPageReqVO.java index 1eaccee..ed8c8aa 100644 --- a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemPageReqVO.java +++ b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemPageReqVO.java @@ -37,10 +37,10 @@ public class ItemPageReqVO extends PageParam { private String brand; @Schema(description = "最高库存") - private Integer maxInventory; + private BigDecimal maxInventory; @Schema(description = "最低库存") - private Integer minInventory; + private BigDecimal minInventory; @Schema(description = "采购周期(周)") private Integer procurementCycle; diff --git a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemRespVO.java b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemRespVO.java index d2b25cf..fe7a7ee 100644 --- a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemRespVO.java +++ b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/controller/item/vo/ItemRespVO.java @@ -21,4 +21,7 @@ public class ItemRespVO extends ItemBaseVO { @Schema(description = "创建时间") private LocalDateTime createTime; + @Schema(description = "库存总数量") + private BigDecimal allCount; + } diff --git a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/dal/dataobject/item/ItemDO.java b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/dal/dataobject/item/ItemDO.java index 4a42d06..2a8a873 100644 --- a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/dal/dataobject/item/ItemDO.java +++ b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/dal/dataobject/item/ItemDO.java @@ -58,11 +58,11 @@ public class ItemDO extends BaseDO { /** * 最高库存 */ - private Integer maxInventory; + private BigDecimal maxInventory; /** * 最低库存 */ - private Integer minInventory; + private BigDecimal minInventory; /** * 采购周期(周) */ @@ -149,6 +149,9 @@ public class ItemDO extends BaseDO { @TableField(exist = false) private List> list; + @TableField(exist = false) + private BigDecimal allCount; + } diff --git a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/service/item/ItemService.java b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/service/item/ItemService.java index 01fadd4..edecfd0 100644 --- a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/service/item/ItemService.java +++ b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/service/item/ItemService.java @@ -134,5 +134,21 @@ public interface ItemService { */ ItemDO getByNumber(String number); - public List importItemList(List importItembasics, Integer mode, boolean updatePart); + List importItemList(List importItembasics, Integer mode, boolean updatePart); + + /** + * 获得备件库存预警库存 + * + * @param pageReqVO 分页查询 + * @return 备件分页 + */ + PageResult getWarningPage(ItemPageReqVO pageReqVO); + + /** + * 获得用高级搜索库位分页列表 + * + * @param conditions 分页、排序和自定义条件 + * @return 分页列表 + */ + PageResult getItemWarningSenior(CustomConditions conditions); } diff --git a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/service/item/ItemServiceImpl.java b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/service/item/ItemServiceImpl.java index 167c322..a901342 100644 --- a/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/service/item/ItemServiceImpl.java +++ b/win-module-eam/win-module-eam-biz/src/main/java/com/win/module/eam/service/item/ItemServiceImpl.java @@ -315,5 +315,50 @@ public class ItemServiceImpl implements ItemService { return itemMapper.selectOne(queryWrapper); } + @Override + public PageResult getWarningPage(ItemPageReqVO pageReqVO) { + PageResult pageResult = itemMapper.selectPage(pageReqVO); + List itemNewList=new ArrayList(); + for (ItemDO itemDO : pageResult.getList()) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("item_number",itemDO.getNumber()); + queryWrapper.eq("available","TRUE"); + List itemAccountsDOList = itemAccountsMapper.selectList(queryWrapper); + BigDecimal allCount = BigDecimal.ZERO; + for (ItemAccountsDO itemAccountsDO : itemAccountsDOList) { + allCount=allCount.add(itemAccountsDO.getQty()); + } + //如果各种类型的备件库存数量总数低于最低库存数量 + if(allCount.compareTo(itemDO.getMinInventory())==-1){ + itemDO.setAllCount(allCount); + itemNewList.add(itemDO); + } + } + pageResult.setList(itemNewList); + pageResult.setTotal(Long.valueOf(itemNewList.size()).longValue()); + return pageResult; + } + + @Override + public PageResult getItemWarningSenior(CustomConditions conditions) { + PageResult pageResult = itemMapper.getItemSenior(conditions); + for (ItemDO itemDO : pageResult.getList()) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("item_number",itemDO.getNumber()); + queryWrapper.eq("available","TRUE"); + List itemAccountsDOList = itemAccountsMapper.selectList(queryWrapper); + BigDecimal allCount = BigDecimal.ZERO; + for (ItemAccountsDO itemAccountsDO : itemAccountsDOList) { + allCount=allCount.add(itemAccountsDO.getQty()); + } + //如果各种类型的备件库存数量总数低于最低库存数量 + if(allCount.compareTo(itemDO.getMinInventory())>=0){ + pageResult.getList().remove(itemDO); + }else { + itemDO.setAllCount(allCount); + } + } + return pageResult; + } }