From bb2fbcc1aacb23ec402d03248f4b134127de9c50 Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sun, 29 Mar 2026 23:08:48 +0800 Subject: [PATCH] ✨ feat(mes): 优化库存选择器和退货明细表单布局 --- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/machinery/MesDvMachineryController.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/subject/MesDvSubjectController.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/tm/tool/MesTmToolController.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/batch/MesWmBatchController.java | 7 +++++++ yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/materialstock/MesWmMaterialStockController.java | 9 +++++++++ yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/packages/MesWmPackageController.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/detail/MesWmReturnVendorDetailSaveReqVO.java | 3 +++ yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/line/MesWmReturnVendorLineRespVO.java | 3 +++ yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/line/MesWmReturnVendorLineSaveReqVO.java | 3 +++ yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseAreaController.java | 3 +-- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseController.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseLocationController.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/returnvendor/MesWmReturnVendorLineDO.java | 9 +++++++++ yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/machinery/MesDvMachineryService.java | 4 ++-- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/machinery/MesDvMachineryServiceImpl.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/subject/MesDvSubjectService.java | 4 ++-- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/subject/MesDvSubjectServiceImpl.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolService.java | 4 ++-- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolServiceImpl.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchService.java | 7 +++++++ yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchServiceImpl.java | 5 +++++ yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockService.java | 21 ++++++++------------- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockServiceImpl.java | 14 ++++++++------ yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageService.java | 4 ++-- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageServiceImpl.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/returnvendor/MesWmReturnVendorDetailServiceImpl.java | 54 ++++++++++++++++++++++++++++++++++++++++-------------- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseAreaService.java | 4 ++-- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseAreaServiceImpl.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseLocationService.java | 4 ++-- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseLocationServiceImpl.java | 2 +- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseService.java | 4 ++-- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseServiceImpl.java | 2 +- 32 files changed, 130 insertions(+), 62 deletions(-) diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/machinery/MesDvMachineryController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/machinery/MesDvMachineryController.java index bcf391c..542cd88 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/machinery/MesDvMachineryController.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/machinery/MesDvMachineryController.java @@ -112,7 +112,7 @@ public class MesDvMachineryController { @Operation(summary = "获得设备精简列表", description = "主要用于前端的下拉选项") @PreAuthorize("@ss.hasPermission('mes:dv-machinery:query')") public CommonResult> getMachinerySimpleList() { - List list = machineryService.getMachinerySimpleList(); + List list = machineryService.getMachineryList(); return success(BeanUtils.toBean(list, MesDvMachineryRespVO.class)); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/subject/MesDvSubjectController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/subject/MesDvSubjectController.java index 709de0e..c18d7f9 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/subject/MesDvSubjectController.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/subject/MesDvSubjectController.java @@ -81,7 +81,7 @@ public class MesDvSubjectController { @Operation(summary = "获得点检保养项目精简列表", description = "主要用于前端的下拉选项") @PreAuthorize("@ss.hasPermission('mes:dv-subject:query')") public CommonResult> getSubjectSimpleList() { - List list = subjectService.getSubjectSimpleList(); + List list = subjectService.getSubjectList(); return success(BeanUtils.toBean(list, MesDvSubjectRespVO.class)); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/tm/tool/MesTmToolController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/tm/tool/MesTmToolController.java index a738224..a00ed78 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/tm/tool/MesTmToolController.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/tm/tool/MesTmToolController.java @@ -113,7 +113,7 @@ public class MesTmToolController { @Operation(summary = "获得工具精简列表") @PreAuthorize("@ss.hasPermission('mes:tm-tool:query')") public CommonResult> getToolSimpleList() { - List list = toolService.getToolSimpleList(); + List list = toolService.getToolList(); return success(BeanUtils.toBean(list, MesTmToolRespVO.class)); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/batch/MesWmBatchController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/batch/MesWmBatchController.java index 500d7e8..d8d4899 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/batch/MesWmBatchController.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/batch/MesWmBatchController.java @@ -96,6 +96,13 @@ public class MesWmBatchController { return success(buildBatchRespVOList(list)); } + @GetMapping("/simple-list") + @Operation(summary = "获得批次精简列表", description = "主要用于前端下拉") + public CommonResult> getBatchSimpleList() { + List list = batchService.getBatchList(); + return success(BeanUtils.toBean(list, MesWmBatchRespVO.class)); + } + // ==================== 拼接 VO ==================== private List buildBatchRespVOList(List list) { diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/materialstock/MesWmMaterialStockController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/materialstock/MesWmMaterialStockController.java index bd40c07..1566632 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/materialstock/MesWmMaterialStockController.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/materialstock/MesWmMaterialStockController.java @@ -113,6 +113,15 @@ public class MesWmMaterialStockController { buildRespVOList(pageResult.getList())); } + @GetMapping("/simple-list") + @Operation(summary = "获得库存精简列表", description = "主要用于前端下拉,可按 itemId 过滤") + @Parameter(name = "itemId", description = "物料编号", example = "1") + public CommonResult> getMaterialStockSimpleList( + @RequestParam(value = "itemId", required = false) Long itemId) { + List list = materialStockService.getMaterialStockList(itemId); + return success(buildRespVOList(list)); + } + // ==================== 拼接 VO ==================== private List buildRespVOList(List list) { diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/packages/MesWmPackageController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/packages/MesWmPackageController.java index fdab806..3baf9ff 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/packages/MesWmPackageController.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/packages/MesWmPackageController.java @@ -129,7 +129,7 @@ public class MesWmPackageController { @Operation(summary = "可添加为子箱的装箱单精简列表") @PreAuthorize("@ss.hasPermission('mes:wm-package:query')") public CommonResult> getChildablePackageSimpleList() { - List list = packageService.getChildablePackageSimpleList(); + List list = packageService.getChildablePackageList(); return success(buildRespVOList(list)); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/detail/MesWmReturnVendorDetailSaveReqVO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/detail/MesWmReturnVendorDetailSaveReqVO.java index b93148f..b4aa8bd 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/detail/MesWmReturnVendorDetailSaveReqVO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/detail/MesWmReturnVendorDetailSaveReqVO.java @@ -26,6 +26,9 @@ public class MesWmReturnVendorDetailSaveReqVO { @NotNull(message = "物料编号不能为空") private Long itemId; + @Schema(description = "库存记录编号", example = "1") + private Long materialStockId; + @Schema(description = "退货数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "300.00") @NotNull(message = "退货数量不能为空") @DecimalMin(value = "0", inclusive = false, message = "退货数量必须大于 0") diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/line/MesWmReturnVendorLineRespVO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/line/MesWmReturnVendorLineRespVO.java index f1f32fb..2fb1a11 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/line/MesWmReturnVendorLineRespVO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/line/MesWmReturnVendorLineRespVO.java @@ -37,6 +37,9 @@ public class MesWmReturnVendorLineRespVO { @Schema(description = "批次ID", example = "1") private Long batchId; + @Schema(description = "批次号", example = "BATCH20260101001") + private String batchCode; + @Schema(description = "备注", example = "备注") private String remark; diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/line/MesWmReturnVendorLineSaveReqVO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/line/MesWmReturnVendorLineSaveReqVO.java index 2235dc5..78abd59 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/line/MesWmReturnVendorLineSaveReqVO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/returnvendor/vo/line/MesWmReturnVendorLineSaveReqVO.java @@ -30,6 +30,9 @@ public class MesWmReturnVendorLineSaveReqVO { @Schema(description = "批次ID", example = "1") private Long batchId; + @Schema(description = "批次号", example = "BATCH20260101001") + private String batchCode; + @Schema(description = "备注", example = "备注") private String remark; diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseAreaController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseAreaController.java index 23f3d0a..b63cd91 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseAreaController.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseAreaController.java @@ -26,7 +26,6 @@ import org.springframework.web.bind.annotation.*; import java.util.Collections; import java.util.List; import java.util.Map; -import java.util.Set; import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; @@ -94,7 +93,7 @@ public class MesWmWarehouseAreaController { @Operation(summary = "获得库位精简列表", description = "可按库区过滤") public CommonResult> getWarehouseAreaSimpleList( @Parameter(name = "locationId", description = "库区编号") @RequestParam(value = "locationId", required = false) Long locationId) { - List list = areaService.getWarehouseAreaSimpleList(locationId); + List list = areaService.getWarehouseAreaList(locationId); return success(buildWarehouseAreaRespVOList(list)); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseController.java index 339b9ec..0667a17 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseController.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseController.java @@ -74,7 +74,7 @@ public class MesWmWarehouseController { @GetMapping("/simple-list") @Operation(summary = "获得仓库精简列表", description = "主要用于前端下拉") public CommonResult> getWarehouseSimpleList() { - List list = warehouseService.getWarehouseSimpleList(); + List list = warehouseService.getWarehouseList(); return success(BeanUtils.toBean(list, MesWmWarehouseRespVO.class)); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseLocationController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseLocationController.java index accbb29..2668cbf 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseLocationController.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/warehouse/MesWmWarehouseLocationController.java @@ -90,7 +90,7 @@ public class MesWmWarehouseLocationController { @Operation(summary = "获得库区精简列表", description = "可按仓库过滤") public CommonResult> getWarehouseLocationSimpleList( @Parameter(name = "warehouseId", description = "仓库编号") @RequestParam(value = "warehouseId", required = false) Long warehouseId) { - List list = locationService.getWarehouseLocationSimpleList(warehouseId); + List list = locationService.getWarehouseLocationList(warehouseId); return success(buildWarehouseLocationRespVOList(list)); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/returnvendor/MesWmReturnVendorLineDO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/returnvendor/MesWmReturnVendorLineDO.java index 284bcab..8ef63bf 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/returnvendor/MesWmReturnVendorLineDO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/returnvendor/MesWmReturnVendorLineDO.java @@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.mes.dal.dataobject.wm.returnvendor; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdItemDO; +import cn.iocoder.yudao.module.mes.dal.dataobject.wm.batch.MesWmBatchDO; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -45,9 +46,17 @@ public class MesWmReturnVendorLineDO extends BaseDO { private BigDecimal quantity; /** * 批次 ID + * + * 关联 {@link MesWmBatchDO#getId()} */ private Long batchId; /** + * 批次号 + * + * 关联 {@link MesWmBatchDO#getCode()} + */ + private String batchCode; + /** * 备注 */ private String remark; diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/machinery/MesDvMachineryService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/machinery/MesDvMachineryService.java index 53a7499..3bfb877 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/machinery/MesDvMachineryService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/machinery/MesDvMachineryService.java @@ -73,11 +73,11 @@ public interface MesDvMachineryService { void validateMachineryExists(Long id); /** - * 获得设备精简列表(下拉选项用) + * 获得设备列表 * * @return 设备列表 */ - List getMachinerySimpleList(); + List getMachineryList(); /** * 获得设备列表 diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/machinery/MesDvMachineryServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/machinery/MesDvMachineryServiceImpl.java index b38158b..98a6691 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/machinery/MesDvMachineryServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/machinery/MesDvMachineryServiceImpl.java @@ -127,7 +127,7 @@ public class MesDvMachineryServiceImpl implements MesDvMachineryService { } @Override - public List getMachinerySimpleList() { + public List getMachineryList() { return machineryMapper.selectList(); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/subject/MesDvSubjectService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/subject/MesDvSubjectService.java index c76db0e..c2c613e 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/subject/MesDvSubjectService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/subject/MesDvSubjectService.java @@ -65,11 +65,11 @@ public interface MesDvSubjectService { void validateSubjectExists(Long id); /** - * 获得点检保养项目精简列表(下拉选项用) + * 获得点检保养项目列表 * * @return 项目列表 */ - List getSubjectSimpleList(); + List getSubjectList(); /** * 获得点检保养项目列表 diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/subject/MesDvSubjectServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/subject/MesDvSubjectServiceImpl.java index 1942bb4..9d98f38 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/subject/MesDvSubjectServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/subject/MesDvSubjectServiceImpl.java @@ -93,7 +93,7 @@ public class MesDvSubjectServiceImpl implements MesDvSubjectService { } @Override - public List getSubjectSimpleList() { + public List getSubjectList() { return subjectMapper.selectList(); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolService.java index baacd53..9be7d9f 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolService.java @@ -54,10 +54,10 @@ public interface MesTmToolService { PageResult getToolPage(MesTmToolPageReqVO pageReqVO); /** - * 获得工具精简列表 + * 获得工具列表 * * @return 工具列表 */ - List getToolSimpleList(); + List getToolList(); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolServiceImpl.java index a4d420c..d4e4878 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolServiceImpl.java @@ -119,7 +119,7 @@ public class MesTmToolServiceImpl implements MesTmToolService { } @Override - public List getToolSimpleList() { + public List getToolList() { return toolMapper.selectList(); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchService.java index 9acaf28..2fafc25 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchService.java @@ -68,4 +68,11 @@ public interface MesWmBatchService { */ List getBackwardBatchList(String code); + /** + * 获取批次列表 + * + * @return 批次列表 + */ + List getBatchList(); + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchServiceImpl.java index 5a60933..0980cd9 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchServiceImpl.java @@ -220,4 +220,9 @@ public class MesWmBatchServiceImpl implements MesWmBatchService { return results; } + @Override + public List getBatchList() { + return batchMapper.selectList(); + } + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockService.java index 9f6b824..ca0868f 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockService.java @@ -29,19 +29,6 @@ public interface MesWmMaterialStockService { MesWmMaterialStockDO getMaterialStock(Long id); /** - * 按组合键查询库存记录 - * - * @param itemId 物料编号 - * @param warehouseId 仓库编号 - * @param locationId 库区编号 - * @param areaId 库位编号 - * @param batchId 批次编号 - * @return 库存记录,不存在返回 null - */ - MesWmMaterialStockDO getMaterialStockByCompositeKey(Long itemId, Long warehouseId, Long locationId, - Long areaId, Long batchId); - - /** * 查询指定库位的库存记录列表 * * @param areaId 库位编号 @@ -109,6 +96,14 @@ public interface MesWmMaterialStockService { } /** + * 获得库存精简列表(用于前端下拉选择) + * + * @param itemId 物料编号(可为 null) + * @return 库存记录列表 + */ + List getMaterialStockList(Long itemId); + + /** * 获取或创建库存记录(按组合键唯一) * * @param itemId 物料编号 diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockServiceImpl.java index a30fdc6..ce53953 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockServiceImpl.java @@ -50,12 +50,6 @@ public class MesWmMaterialStockServiceImpl implements MesWmMaterialStockService } @Override - public MesWmMaterialStockDO getMaterialStockByCompositeKey(Long itemId, Long warehouseId, Long locationId, - Long areaId, Long batchId) { - return materialStockMapper.selectByCompositeKey(itemId, warehouseId, locationId, areaId, batchId); - } - - @Override public List getMaterialStockListByAreaId(Long areaId) { return materialStockMapper.selectList(MesWmMaterialStockDO::getAreaId, areaId); } @@ -127,6 +121,14 @@ public class MesWmMaterialStockServiceImpl implements MesWmMaterialStockService } @Override + public List getMaterialStockList(Long itemId) { + if (itemId != null) { + return materialStockMapper.selectList(MesWmMaterialStockDO::getItemId, itemId); + } + return materialStockMapper.selectList(); + } + + @Override public MesWmMaterialStockDO getOrCreateMaterialStock(Long itemId, Long warehouseId, Long locationId, Long areaId, Long batchId, String batchCode, Long vendorId, LocalDateTime receiptTime) { // 1. 查找已有库存记录 diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageService.java index 3a3ecf4..fd8c6d9 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageService.java @@ -83,10 +83,10 @@ public interface MesWmPackageService { void removeChildPackage(Long childId); /** - * 可添加为子箱的装箱单精简列表(无父箱 + 已完成状态) + * 可添加为子箱的装箱单列表(无父箱 + 已完成状态) * * @return 装箱单列表 */ - List getChildablePackageSimpleList(); + List getChildablePackageList(); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageServiceImpl.java index 41e0909..5292fa7 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageServiceImpl.java @@ -137,7 +137,7 @@ public class MesWmPackageServiceImpl implements MesWmPackageService { } @Override - public List getChildablePackageSimpleList() { + public List getChildablePackageList() { return packageMapper.selectChildableList(); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/returnvendor/MesWmReturnVendorDetailServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/returnvendor/MesWmReturnVendorDetailServiceImpl.java index 49ea182..91e4b7c 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/returnvendor/MesWmReturnVendorDetailServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/returnvendor/MesWmReturnVendorDetailServiceImpl.java @@ -3,10 +3,12 @@ package cn.iocoder.yudao.module.mes.service.wm.returnvendor; import cn.hutool.core.util.ObjUtil; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.module.mes.controller.admin.wm.returnvendor.vo.detail.MesWmReturnVendorDetailSaveReqVO; +import cn.iocoder.yudao.module.mes.dal.dataobject.wm.materialstock.MesWmMaterialStockDO; import cn.iocoder.yudao.module.mes.dal.dataobject.wm.returnvendor.MesWmReturnVendorDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.wm.returnvendor.MesWmReturnVendorLineDO; import cn.iocoder.yudao.module.mes.dal.mysql.wm.returnvendor.MesWmReturnVendorDetailMapper; import cn.iocoder.yudao.module.mes.service.md.item.MesMdItemService; +import cn.iocoder.yudao.module.mes.service.wm.materialstock.MesWmMaterialStockService; import jakarta.annotation.Resource; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; @@ -15,8 +17,7 @@ import org.springframework.validation.annotation.Validated; import java.util.List; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; -import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.WM_RETURN_VENDOR_DETAIL_ITEM_MISMATCH; -import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.WM_RETURN_VENDOR_DETAIL_NOT_EXISTS; +import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; /** * MES 供应商退货明细 Service 实现类 @@ -35,14 +36,13 @@ public class MesWmReturnVendorDetailServiceImpl implements MesWmReturnVendorDeta @Resource private MesMdItemService itemService; + @Resource + private MesWmMaterialStockService materialStockService; + @Override public Long createReturnVendorDetail(MesWmReturnVendorDetailSaveReqVO createReqVO) { - // 校验父数据存在 - MesWmReturnVendorLineDO line = returnVendorLineService.validateReturnVendorLineExists(createReqVO.getLineId()); - // 校验物料存在 - itemService.validateItemExists(createReqVO.getItemId()); - // 校验物料与行物料一致 - validateItemConsistency(createReqVO.getItemId(), line); + // 校验数据 + validateDetailSaveData(createReqVO); // 插入 MesWmReturnVendorDetailDO detail = BeanUtils.toBean(createReqVO, MesWmReturnVendorDetailDO.class); @@ -54,18 +54,28 @@ public class MesWmReturnVendorDetailServiceImpl implements MesWmReturnVendorDeta public void updateReturnVendorDetail(MesWmReturnVendorDetailSaveReqVO updateReqVO) { // 校验存在 validateReturnVendorDetailExists(updateReqVO.getId()); - // 校验父数据存在 - MesWmReturnVendorLineDO line = returnVendorLineService.validateReturnVendorLineExists(updateReqVO.getLineId()); - // 校验物料存在 - itemService.validateItemExists(updateReqVO.getItemId()); - // 校验物料与行物料一致 - validateItemConsistency(updateReqVO.getItemId(), line); + // 校验数据 + validateDetailSaveData(updateReqVO); // 更新 MesWmReturnVendorDetailDO updateObj = BeanUtils.toBean(updateReqVO, MesWmReturnVendorDetailDO.class); returnVendorDetailMapper.updateById(updateObj); } + /** + * 校验明细创建/修改的公共数据 + */ + private void validateDetailSaveData(MesWmReturnVendorDetailSaveReqVO reqVO) { + // 校验父数据(行)存在 + MesWmReturnVendorLineDO line = returnVendorLineService.validateReturnVendorLineExists(reqVO.getLineId()); + // 校验物料存在 + itemService.validateItemExists(reqVO.getItemId()); + // 校验物料与行物料一致 + validateItemConsistency(reqVO.getItemId(), line); + // 校验库存记录存在且物料一致 + validateMaterialStock(reqVO.getMaterialStockId(), line); + } + @Override public void deleteReturnVendorDetail(Long id) { // 校验存在 @@ -114,4 +124,20 @@ public class MesWmReturnVendorDetailServiceImpl implements MesWmReturnVendorDeta } } + /** + * 校验库存记录存在且物料与行物料一致 + */ + private void validateMaterialStock(Long materialStockId, MesWmReturnVendorLineDO line) { + if (materialStockId == null) { + return; + } + MesWmMaterialStockDO stock = materialStockService.getMaterialStock(materialStockId); + if (stock == null) { + throw exception(WM_MATERIAL_STOCK_NOT_EXISTS); + } + if (ObjUtil.notEqual(stock.getItemId(), line.getItemId())) { + throw exception(WM_RETURN_VENDOR_DETAIL_ITEM_MISMATCH); + } + } + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseAreaService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseAreaService.java index a26d298..14fd03c 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseAreaService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseAreaService.java @@ -64,12 +64,12 @@ public interface MesWmWarehouseAreaService { PageResult getWarehouseAreaPage(MesWmWarehouseAreaPageReqVO pageReqVO); /** - * 按库区获得库位精简列表 + * 按库区获得库位列表 * * @param locationId 库区编号 * @return 库位列表 */ - List getWarehouseAreaSimpleList(Long locationId); + List getWarehouseAreaList(Long locationId); /** * 按编号集合获得库位列表 diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseAreaServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseAreaServiceImpl.java index 2b4b64b..33a7a47 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseAreaServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseAreaServiceImpl.java @@ -154,7 +154,7 @@ public class MesWmWarehouseAreaServiceImpl implements MesWmWarehouseAreaService } @Override - public List getWarehouseAreaSimpleList(Long locationId) { + public List getWarehouseAreaList(Long locationId) { return areaMapper.selectSimpleList(locationId); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseLocationService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseLocationService.java index 704d8a9..f9faab3 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseLocationService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseLocationService.java @@ -64,12 +64,12 @@ public interface MesWmWarehouseLocationService { PageResult getWarehouseLocationPage(MesWmWarehouseLocationPageReqVO pageReqVO); /** - * 按仓库获得库区精简列表 + * 按仓库获得库区列表 * * @param warehouseId 仓库编号 * @return 库区列表 */ - List getWarehouseLocationSimpleList(Long warehouseId); + List getWarehouseLocationList(Long warehouseId); /** * 按编号集合获得库区列表 diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseLocationServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseLocationServiceImpl.java index b09e50b..d2177b0 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseLocationServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseLocationServiceImpl.java @@ -157,7 +157,7 @@ public class MesWmWarehouseLocationServiceImpl implements MesWmWarehouseLocation } @Override - public List getWarehouseLocationSimpleList(Long warehouseId) { + public List getWarehouseLocationList(Long warehouseId) { return locationMapper.selectSimpleList(warehouseId); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseService.java index 16d8575..c038d5a 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseService.java @@ -64,11 +64,11 @@ public interface MesWmWarehouseService { PageResult getWarehousePage(MesWmWarehousePageReqVO pageReqVO); /** - * 获得仓库精简列表 + * 获得仓库列表 * * @return 仓库列表 */ - List getWarehouseSimpleList(); + List getWarehouseList(); /** * 按编号集合获得仓库列表 diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseServiceImpl.java index 2ae337a..bd85c14 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/warehouse/MesWmWarehouseServiceImpl.java @@ -151,7 +151,7 @@ public class MesWmWarehouseServiceImpl implements MesWmWarehouseService { } @Override - public List getWarehouseSimpleList() { + public List getWarehouseList() { return warehouseMapper.selectSimpleList(); } -- libgit2 0.21.4