From 8ecc84a7c3adb7039d68b8d26799db841138f8fb Mon Sep 17 00:00:00 2001 From: my_ong <429426262@qq.com> Date: Sun, 23 Mar 2025 11:57:56 +0800 Subject: [PATCH] =?UTF-8?q?:bug:=20=E6=8A=A5=E5=BA=9F=E6=89=A3=E5=87=8F?= =?UTF-8?q?=E5=BA=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../material/ApplyFormController.java | 37 ++++++++++++------- .../ims/entity/material/ApplyDetail.java | 6 ++- 2 files changed, 29 insertions(+), 14 deletions(-) diff --git a/src/main/java/tech/riemann/ims/controller/platform/material/ApplyFormController.java b/src/main/java/tech/riemann/ims/controller/platform/material/ApplyFormController.java index 8d7433d..f5c2a63 100644 --- a/src/main/java/tech/riemann/ims/controller/platform/material/ApplyFormController.java +++ b/src/main/java/tech/riemann/ims/controller/platform/material/ApplyFormController.java @@ -76,10 +76,10 @@ public class ApplyFormController { // 导出excel String sheetName = "申请单列表"; String excelName = "申请单列表"; - if(applyType == 1){ + if (applyType == 1) { excelName = "入库申请单列表"; sheetName = "入库"; - }else if(applyType == 3){ + } else if (applyType == 3) { excelName = "出库申请单列表"; sheetName = "出库"; } @@ -108,11 +108,11 @@ public class ApplyFormController { @GetMapping("apply/audit/download-excel") @Operation(summary = "导出盘点申请单列表") - public void downloadAuditExcel( @Parameter(description = "盘点类型") @RequestParam(name = "auditType", required = false) AuditTypeEnum auditType, - @Parameter(description = "盘点人") @RequestParam(name = "taker", required = false) String taker, - @Parameter(description = "创建日期") @RequestParam(name = "createDate", required = false) LocalDateTime createDate, - @Parameter(description = "审核状态") @RequestParam(name = "reviewResults", required = false) List reviewResults, - HttpServletResponse response){ + public void downloadAuditExcel(@Parameter(description = "盘点类型") @RequestParam(name = "auditType", required = false) AuditTypeEnum auditType, + @Parameter(description = "盘点人") @RequestParam(name = "taker", required = false) String taker, + @Parameter(description = "创建日期") @RequestParam(name = "createDate", required = false) LocalDateTime createDate, + @Parameter(description = "审核状态") @RequestParam(name = "reviewResults", required = false) List reviewResults, + HttpServletResponse response) { IPage applyFormIPage = searchAuditPage(1, 10000, auditType, taker, createDate, reviewResults); List applyFormList = applyFormIPage.getRecords(); // 导出excel @@ -156,7 +156,7 @@ public class ApplyFormController { for (ApplyDetail applyDetail : applyInfo.getApplyDetails()) { applyDetail.setApplyId(applyInfo.getApplyForm().getId()); // 如果市无须赋码的情况,设置确认数量为申请数量 - if (applyType == ApplyTypeEnum.LOAN_OUT && !applyDetail.getAssignRule()) { + if (!applyDetail.getAssignRule()) { applyDetail.setConfirmQuantity(applyDetail.getQuantity()); } } @@ -241,12 +241,23 @@ public class ApplyFormController { if (reviewDTO.getReviewResult() == ReviewResultEnum.PASS) { // 修改物料状态 List barcodeList = scrapOutCacheMap.get(reviewDTO.getApplyId()); - if (barcodeList == null || barcodeList.isEmpty()) { - return; + if (barcodeList != null) { + barcodeList.forEach(barcode -> materialStockDetailService.update(Wrappers.lambdaUpdate() + .set(MaterialStockDetail::getStatus, StockStatusEnum.SCRAP_OUT) + .eq(MaterialStockDetail::getBarcode, barcode))); } - barcodeList.forEach(barcode -> materialStockDetailService.update(Wrappers.lambdaUpdate() - .set(MaterialStockDetail::getStatus, StockStatusEnum.SCRAP_OUT) - .eq(MaterialStockDetail::getBarcode, barcode))); + } + // 处理报废扣减库存 + List applyDetails = applyDetailService.list(Wrappers.lambdaQuery() + .eq(ApplyDetail::getApplyId, reviewDTO.getApplyId())); + if (!applyDetails.isEmpty()) { + // 直接扣库存 + applyDetails.forEach(detail -> + materialService.update(Wrappers.lambdaUpdate() + .setSql("m_stock = m_stock - " + detail.getQuantity()) + .eq(Material::getId, detail.getMaterialId()) + ) + ); } // 删除缓存 scrapOutCacheMap.remove(reviewDTO.getApplyId()); diff --git a/src/main/java/tech/riemann/ims/entity/material/ApplyDetail.java b/src/main/java/tech/riemann/ims/entity/material/ApplyDetail.java index 77810a6..83b7e8f 100644 --- a/src/main/java/tech/riemann/ims/entity/material/ApplyDetail.java +++ b/src/main/java/tech/riemann/ims/entity/material/ApplyDetail.java @@ -43,7 +43,11 @@ public class ApplyDetail extends IdBaseEntity { @ColDefine(notNull = false) private Long applyId; - @TableField(exist = false) + @Schema(description = "是否需要赋码", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + @TableField("ad_assign_rule") + @Column("ad_assign_rule") + @Comment("是否需要赋码") + @ColDefine(notNull = false) private Boolean assignRule; @Schema(description = "物料Id", requiredMode = Schema.RequiredMode.NOT_REQUIRED)