From 33543e533017f446c918f5948bb9adb8904a60dc Mon Sep 17 00:00:00 2001 From: yd Date: Thu, 11 Dec 2025 16:32:57 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E7=89=A9=E6=96=99=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=B8=9A=E5=8A=A1=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E3=80=82=E6=96=B0=E5=A2=9E=E5=BA=93=E5=AD=98=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MaterialInventoryCheckController.java | 9 +++++++ .../MaterialInventoryInboundController.java | 5 ++-- ...erialInventoryInboundDetailController.java | 6 +++++ .../vo/MaterialInfomationPageReqVO.java | 2 +- .../vo/MaterialInventoryCheckPageReqVO.java | 2 ++ ...terialInventoryInboundDetailPageReqVO.java | 3 +++ .../MaterialInventoryInboundDetailRespVO.java | 2 ++ .../dal/dataobject/MaterialBatchAssignDO.java | 2 +- .../dal/mapper/MaterialInfomationMapper.java | 5 +++- .../MaterialInventoryInboundDetailMapper.java | 18 +++++++++++++ .../MaterialBatchAssignServiceImpl.java | 27 ++++++++++++++++++- .../MaterialInventoryCheckService.java | 8 ++++++ .../MaterialInventoryCheckServiceImpl.java | 16 +++++++++++ ...MaterialInventoryInboundDetailService.java | 5 ++++ ...rialInventoryInboundDetailServiceImpl.java | 4 +++ .../MaterialInventoryInboundService.java | 2 +- .../MaterialInventoryInboundServiceImpl.java | 17 +++++++----- .../dal/mapper/MaterialInventoryMapper.xml | 2 +- 18 files changed, 120 insertions(+), 15 deletions(-) diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryCheckController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryCheckController.java index d86dcfd..0e46412 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryCheckController.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryCheckController.java @@ -123,4 +123,13 @@ public class MaterialInventoryCheckController extends AbstractFileUploadControll return success(materialInventoryCheckService.createMaterialInventoryCheckForm(createReqVO)); } + + @GetMapping("/get-form") + @Operation(summary = "获得库存盘点") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('qms:material-inventory-check:query')") + public CommonResult getMaterialInventoryCheckForm(@RequestParam("id") Long id) { + + return success(materialInventoryCheckService.getMaterialInventoryCheckForm(id)); + } } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryInboundController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryInboundController.java index 0b1bcb4..c564f06 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryInboundController.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryInboundController.java @@ -119,8 +119,9 @@ public class MaterialInventoryInboundController extends AbstractFileUploadContro @PostMapping("/multi-put") @Operation(summary = "批量上架") - public CommonResult> createMaterialInventoryInboundMulti(@Valid @RequestBody MaterialInventoryInboundSaveReqVO createReqVO) { - return success(materialInventoryInboundService.multiCreateMaterialInventoryInbound(createReqVO)); + public CommonResult createMaterialInventoryInboundMulti(@Valid @RequestBody MaterialInventoryInboundSaveReqVO createReqVO) { + materialInventoryInboundService.multiCreateMaterialInventoryInbound(createReqVO); + return success(true); } @PostMapping("single-put") diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryInboundDetailController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryInboundDetailController.java index 1a793ad..d110a8a 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryInboundDetailController.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/admin/MaterialInventoryInboundDetailController.java @@ -115,4 +115,10 @@ public class MaterialInventoryInboundDetailController extends AbstractFileUpload BeanUtils.toBean(list, MaterialInventoryInboundDetailRespVO.class)); } + @GetMapping("/page-list") + @Operation(summary = "获得入库明细,出库明细,含领用出库、退货出库、盘亏出库、销毁出库等分页") + public CommonResult> getMaterialInventoryInboundDetailPageList(@Valid MaterialInventoryInboundDetailPageReqVO pageReqVO) { + PageResult pageResult = materialInventoryInboundDetailService.getMaterialInventoryInboundDetailPageList(pageReqVO); + return success(BeanUtils.toBean(pageResult, MaterialInventoryInboundDetailRespVO.class)); + } } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInfomationPageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInfomationPageReqVO.java index 59572af..adbfb68 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInfomationPageReqVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInfomationPageReqVO.java @@ -79,7 +79,7 @@ public class MaterialInfomationPageReqVO extends PageParam { List productIds; @Schema(description = "入库id") - private long inventoryInboundId; + private Long inventoryInboundId; } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryCheckPageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryCheckPageReqVO.java index 7ec62f8..679b429 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryCheckPageReqVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryCheckPageReqVO.java @@ -54,4 +54,6 @@ public class MaterialInventoryCheckPageReqVO extends PageParam { @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime[] createTime; + @Schema(description = "主键") + private Long id; } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryInboundDetailPageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryInboundDetailPageReqVO.java index b3333b4..1360453 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryInboundDetailPageReqVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryInboundDetailPageReqVO.java @@ -50,4 +50,7 @@ public class MaterialInventoryInboundDetailPageReqVO extends PageParam { @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime[] createTime; + @Schema(description = "物料大类Id") + private Long productId; + } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryInboundDetailRespVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryInboundDetailRespVO.java index 8d08ada..654a410 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryInboundDetailRespVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/controller/vo/MaterialInventoryInboundDetailRespVO.java @@ -63,4 +63,6 @@ public class MaterialInventoryInboundDetailRespVO { @ExcelProperty("创建时间") private LocalDateTime createTime; + private Long productId; + } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/dataobject/MaterialBatchAssignDO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/dataobject/MaterialBatchAssignDO.java index 037fc4a..0cf96fc 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/dataobject/MaterialBatchAssignDO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/dataobject/MaterialBatchAssignDO.java @@ -37,7 +37,7 @@ public class MaterialBatchAssignDO extends BusinessBaseDO { * 产品id */ @TableField("PDT_ID") - private String productId; + private Long productId; /** * 库房ID */ diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInfomationMapper.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInfomationMapper.java index 708f3a4..24ae0b3 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInfomationMapper.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInfomationMapper.java @@ -44,7 +44,10 @@ public interface MaterialInfomationMapper extends BaseMapperX selectAll(MaterialInfomationPageReqVO reqVO) { reqVO.setPageSize(-1); return selectPage(reqVO, new LambdaQueryWrapperX() - .eq(MaterialInfomationDO::getInventoryInboundId, reqVO.getInventoryInboundId() + .eqIfPresent(MaterialInfomationDO::getProductId, reqVO.getProductId()) + .eqIfPresent(MaterialInfomationDO::getBatchId, reqVO.getBatchId()) + .eqIfPresent(MaterialInfomationDO::getUsageStatus, reqVO.getUsageStatus()) + .eqIfPresent(MaterialInfomationDO::getInventoryInboundId, reqVO.getInventoryInboundId() ) ); } diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInventoryInboundDetailMapper.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInventoryInboundDetailMapper.java index f5dac08..97a94ef 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInventoryInboundDetailMapper.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInventoryInboundDetailMapper.java @@ -3,10 +3,19 @@ package com.zt.plat.module.qms.resource.material.dal.mapper; import com.zt.plat.framework.common.pojo.PageResult; import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX; import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX; +import com.zt.plat.framework.mybatis.core.query.MPJLambdaWrapperX; +import com.zt.plat.module.qms.business.bus.controller.vo.BusinessAssayProjectAndParameterRespVO; +import com.zt.plat.module.qms.business.bus.controller.vo.BusinessAssayProjectDataExtendRespVO; +import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayParameterDataDO; +import com.zt.plat.module.qms.business.dic.dal.dataobject.DictionaryProjectDO; +import com.zt.plat.module.qms.resource.material.controller.vo.MaterialInventoryInboundDetailRespVO; +import com.zt.plat.module.qms.resource.material.dal.dataobject.MaterialInfomationDO; import com.zt.plat.module.qms.resource.material.dal.dataobject.MaterialInventoryInboundDetailDO; import com.zt.plat.module.qms.resource.material.controller.vo.MaterialInventoryInboundDetailPageReqVO; import org.apache.ibatis.annotations.Mapper; +import java.util.List; + /** * 入库明细,出库明细,含领用出库、退货出库、盘亏出库、销毁出库等 Mapper * @@ -32,4 +41,13 @@ public interface MaterialInventoryInboundDetailMapper extends BaseMapperX selectPageList(MaterialInventoryInboundDetailPageReqVO reqVO) { + return selectJoinPage(reqVO, MaterialInventoryInboundDetailRespVO.class, new MPJLambdaWrapperX() + .selectAll(MaterialInventoryInboundDetailDO.class) + .selectAs(MaterialInfomationDO::getProductId, MaterialInventoryInboundDetailRespVO::getProductId) + .leftJoin(MaterialInfomationDO.class, MaterialInfomationDO::getId, MaterialInventoryInboundDetailDO::getMaterialInfomationId) + .eqIfPresent(MaterialInfomationDO::getProductId, reqVO.getProductId()) + ); + } + } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialBatchAssignServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialBatchAssignServiceImpl.java index 4fc9446..758ef44 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialBatchAssignServiceImpl.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialBatchAssignServiceImpl.java @@ -5,6 +5,9 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zt.plat.module.qms.resource.material.controller.vo.MaterialBatchAssignPageReqVO; import com.zt.plat.module.qms.resource.material.controller.vo.MaterialBatchAssignRespVO; import com.zt.plat.module.qms.resource.material.controller.vo.MaterialBatchAssignSaveReqVO; +import com.zt.plat.module.qms.resource.material.controller.vo.MaterialInfomationPageReqVO; +import com.zt.plat.module.qms.resource.material.dal.dataobject.MaterialInfomationDO; +import com.zt.plat.module.qms.resource.material.dal.mapper.MaterialInfomationMapper; import jakarta.validation.Valid; import org.springframework.stereotype.Service; import jakarta.annotation.Resource; @@ -34,6 +37,9 @@ public class MaterialBatchAssignServiceImpl implements MaterialBatchAssignServic @Resource private MaterialBatchAssignMapper materialBatchAssignMapper; + @Resource + private MaterialInfomationMapper materialInfomationMapper; + @Override public MaterialBatchAssignRespVO createMaterialBatchAssign(MaterialBatchAssignSaveReqVO createReqVO) { // 插入 @@ -93,7 +99,26 @@ public class MaterialBatchAssignServiceImpl implements MaterialBatchAssignServic @Override public PageResult getMaterialBatchAssignPage(MaterialBatchAssignPageReqVO pageReqVO) { - return materialBatchAssignMapper.selectPage(pageReqVO); + PageResult pageResult = materialBatchAssignMapper.selectPage(pageReqVO); + + + + /** 统计批次剩余量需要除去已上架(存在实例)的部分 */ + pageResult.getList().forEach(item -> { + MaterialInfomationPageReqVO infomationPageReqVO = new MaterialInfomationPageReqVO(); + infomationPageReqVO.setBatchId(item.getId()); + infomationPageReqVO.setProductId(item.getProductId()); + infomationPageReqVO.setUsageStatus("0"); + PageResult materialInfomationDOPageResult = materialInfomationMapper.selectAll(infomationPageReqVO); + Long totalCount = materialInfomationDOPageResult.getTotalCount(); +// item.setInboundQuantity(item.getInboundQuantity()-totalCount); + // 方案2: 添加边界检查,防止负数 + long calculatedQuantity = item.getInboundQuantity() - totalCount; + item.setInboundQuantity(Math.max(0L, calculatedQuantity)); + }); + + + return pageResult; } diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryCheckService.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryCheckService.java index 6f33e7e..f1b88cb 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryCheckService.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryCheckService.java @@ -69,4 +69,12 @@ public interface MaterialInventoryCheckService { * @return 编号 */ MaterialInventoryCheckRespVO createMaterialInventoryCheckForm(@Valid MaterialInventoryCheckSaveReqVO createReqVO); + + /** + * 获得库存盘点表单 + * + * @param id 编号 + * @return 库存盘点 + */ + MaterialInventoryCheckRespVO getMaterialInventoryCheckForm(Long id); } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryCheckServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryCheckServiceImpl.java index 3e190ce..7b2d646 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryCheckServiceImpl.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryCheckServiceImpl.java @@ -1,6 +1,7 @@ package com.zt.plat.module.qms.resource.material.service; import cn.hutool.core.collection.CollUtil; +import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX; import com.zt.plat.module.qms.resource.material.controller.vo.MaterialInventoryCheckPageReqVO; import com.zt.plat.module.qms.resource.material.controller.vo.MaterialInventoryCheckRespVO; import com.zt.plat.module.qms.resource.material.controller.vo.MaterialInventoryCheckSaveReqVO; @@ -164,4 +165,19 @@ public class MaterialInventoryCheckServiceImpl implements MaterialInventoryCheck } + + @Override + public MaterialInventoryCheckRespVO getMaterialInventoryCheckForm(Long id) { + MaterialInventoryCheckDO micDo = materialInventoryCheckMapper.selectById(id); + if (micDo == null) { + throw exception(MATERIAL_INVENTORY_CHECK_NOT_EXISTS); + } + List BatchDOList= materialInventoryCheckBatchMapper.selectList(new LambdaQueryWrapperX() + .eq(MaterialInventoryCheckBatchDO::getCheckId, micDo.getId())); + + MaterialInventoryCheckRespVO resultVo =BeanUtils.toBean(micDo, MaterialInventoryCheckRespVO.class); + resultVo.setBatchList(BeanUtils.toBean(BatchDOList, MaterialInventoryCheckBatchRespVO.class)); + return resultVo; + } + } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundDetailService.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundDetailService.java index 1747cb9..551af01 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundDetailService.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundDetailService.java @@ -61,4 +61,9 @@ public interface MaterialInventoryInboundDetailService { */ PageResult getMaterialInventoryInboundDetailPage(MaterialInventoryInboundDetailPageReqVO pageReqVO); + + + + PageResult getMaterialInventoryInboundDetailPageList(MaterialInventoryInboundDetailPageReqVO pageReqVO); + } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundDetailServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundDetailServiceImpl.java index eabb649..bce83ee 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundDetailServiceImpl.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundDetailServiceImpl.java @@ -89,4 +89,8 @@ public class MaterialInventoryInboundDetailServiceImpl implements MaterialInvent return materialInventoryInboundDetailMapper.selectPage(pageReqVO); } + @Override + public PageResult getMaterialInventoryInboundDetailPageList(MaterialInventoryInboundDetailPageReqVO pageReqVO) { + return materialInventoryInboundDetailMapper.selectPageList(pageReqVO); + } } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundService.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundService.java index 7f0e67b..249e7dc 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundService.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundService.java @@ -67,7 +67,7 @@ public interface MaterialInventoryInboundService { * @param createReqVO * @return */ - PageResultmultiCreateMaterialInventoryInbound(MaterialInventoryInboundSaveReqVO createReqVO); + void multiCreateMaterialInventoryInbound(MaterialInventoryInboundSaveReqVO createReqVO); /** * 单个入库/上架 diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundServiceImpl.java index 3daa1ec..5024f5e 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundServiceImpl.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/material/service/MaterialInventoryInboundServiceImpl.java @@ -106,7 +106,7 @@ public class MaterialInventoryInboundServiceImpl implements MaterialInventoryInb @Override @Transactional(rollbackFor = Exception.class) - public PageResult multiCreateMaterialInventoryInbound(MaterialInventoryInboundSaveReqVO createReqVO) { + public void multiCreateMaterialInventoryInbound(MaterialInventoryInboundSaveReqVO createReqVO) { MaterialInventoryInboundDetailSaveReqVO detail = createReqVO.getDetail(); //判断输入数量是否大于批次剩余数据 @@ -121,10 +121,11 @@ public class MaterialInventoryInboundServiceImpl implements MaterialInventoryInb List MaterialInfomationDO = new ArrayList(); for (int i = 0; i < detail.getQuantity(); i++) { MaterialInfomationDO materialInfomation = new MaterialInfomationDO(); - materialInfomation.setBatchId(detail.getBatchAssignId()); - materialInfomation.setLocationId(detail.getLocationId()); - materialInfomation.setInventoryInboundId(materialInventoryInbound.getId()); - materialInfomation.setProductId(detail.getProductId()); + materialInfomation.setBatchId(detail.getBatchAssignId());//分发批次ID + materialInfomation.setLocationId(detail.getLocationId());//货位Id + materialInfomation.setInventoryInboundId(materialInventoryInbound.getId());//入库ID,批量入库的,所以为同一ID,主要是验收申请入库时不一样 + materialInfomation.setProductId(detail.getProductId());//分类ID + materialInfomation.setPublishStatus("1");//批量入库默认上架 MaterialInfomationDO.add(materialInfomation); } @@ -142,8 +143,6 @@ public class MaterialInventoryInboundServiceImpl implements MaterialInventoryInb detailDO.setInboundWay("批量入库"); materialInventoryInboundDetailMapper.insert(detailDO); }); - - return null; } @Override @@ -178,6 +177,10 @@ public class MaterialInventoryInboundServiceImpl implements MaterialInventoryInb } MaterialBatchAssignDO materialBatchAssignDO = materialBatchAssignMapper.selectById(detail.getBatchAssignId()); + if (materialBatchAssignDO==null){ + throw exception(new ErrorCode(1_032_150_000, "批次信息错误-"+detail.getBatchAssignId())); + } + //判断输入数量是否大于批次剩余数据 if (materialBatchAssignDO.getInboundQuantity() < detail.getQuantity()) { throw exception(new ErrorCode(1_032_150_000, "批次剩余量不足")); diff --git a/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInventoryMapper.xml b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInventoryMapper.xml index f145d6f..e1be1da 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInventoryMapper.xml +++ b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/resource/material/dal/mapper/MaterialInventoryMapper.xml @@ -79,7 +79,7 @@ PDT.CNL_FLG, PDT.SYS_DEPT_CD, PDT.RMK, - ASN_SUM.INB_QTY_SUM AS INB_QTY + COALESCE(ASN_SUM.INB_QTY_SUM, 0) AS INB_QTY FROM T_MTRL_PDT PDT LEFT JOIN (