diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/api/ErpExternalApiImpl.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/api/ErpExternalApiImpl.java index 075af596..682f1236 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/api/ErpExternalApiImpl.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/api/ErpExternalApiImpl.java @@ -65,7 +65,7 @@ public class ErpExternalApiImpl implements ErpExternalApi { @Override public CommonResult getErpWarehouse(Long id) { - ErpWarehouseDO erpWarehouse = erpWarehouseService.getErpWarehouse(id); + ErpWarehouseDO erpWarehouse = erpWarehouseService.getErpWarehouse(id.toString()); return success(BeanUtils.toBean(erpWarehouse, ErpWarehouseDTO.class)); } } diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/ErpWarehouseController.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/ErpWarehouseController.java index 08c69a36..4f49468e 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/ErpWarehouseController.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/ErpWarehouseController.java @@ -76,16 +76,16 @@ public class ErpWarehouseController { @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('sply:erp-warehouse:query')") public CommonResult getErpWarehouse(@RequestParam("id") Long id) { - ErpWarehouseDO erpWarehouse = erpWarehouseService.getErpWarehouse(id); - return success(BeanUtils.toBean(erpWarehouse, ErpWarehouseRespVO.class)); + ErpWarehouseRespVO erpWarehouse = erpWarehouseService.getErpWarehouse(id); + return success(erpWarehouse); } @GetMapping("/page") @Operation(summary = "获得ERP库位分页") @PreAuthorize("@ss.hasPermission('sply:erp-warehouse:query')") public CommonResult> getErpWarehousePage(@Valid ErpWarehousePageReqVO pageReqVO) { - PageResult pageResult = erpWarehouseService.getErpWarehousePage(pageReqVO); - return success(BeanUtils.toBean(pageResult, ErpWarehouseRespVO.class)); + PageResult pageResult = erpWarehouseService.getErpWarehousePage(pageReqVO); + return success(pageResult); } @GetMapping("/export-excel") @@ -95,7 +95,7 @@ public class ErpWarehouseController { public void exportErpWarehouseExcel(@Valid ErpWarehousePageReqVO pageReqVO, HttpServletResponse response) throws IOException { pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); - List list = erpWarehouseService.getErpWarehousePage(pageReqVO).getList(); + List list = BeanUtils.toBean(erpWarehouseService.getErpWarehousePage(pageReqVO).getList(), ErpWarehouseDO.class); // 导出 Excel ExcelUtils.write(response, "ERP库位.xls", "数据", ErpWarehouseRespVO.class, BeanUtils.toBean(list, ErpWarehouseRespVO.class)); diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/WarehouseFactoryController.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/WarehouseFactoryController.java index eb099775..33b64794 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/WarehouseFactoryController.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/WarehouseFactoryController.java @@ -102,4 +102,11 @@ public class WarehouseFactoryController implements BusinessControllerMarker { BeanUtils.toBean(list, WarehouseFactoryRespVO.class)); } + //通过主库位Id查询库位 + @GetMapping("/warehouse-factory-list-mainId") + @Operation(summary = "通过主库位Id查询库位") + public CommonResult> getWarehouseFactoryListByMainId(@RequestParam("mainId") String mainId) { + return success(warehouseFactoryService.getWarehouseFactoryByMainId(mainId)); + } + } \ No newline at end of file diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehouseRespVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehouseRespVO.java index 9ae72c98..ae75aea1 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehouseRespVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehouseRespVO.java @@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; +import java.util.List; + @Schema(description = "管理后台 - ERP库位 Response VO") @Data @ExcelIgnoreUnannotated @@ -47,4 +49,7 @@ public class ErpWarehouseRespVO { @Schema(description = "公司编号") private String companyIdCustom; + @Schema(description = "子物料列表") + private List warehouseFactories; + } \ No newline at end of file diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryPageReqVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryPageReqVO.java index b6b9e5a4..c190a173 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryPageReqVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryPageReqVO.java @@ -49,6 +49,9 @@ public class WarehouseFactoryPageReqVO extends PageParam { @Schema(description = "erp目标库位编码") private String erpTargetWarehouseNumber; + @Schema(description = "主库位ID") + private Long mainWarehouseId; + @Schema(description = "创建时间") @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime[] createTime; diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryRespVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryRespVO.java index f9626545..711e8f9a 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryRespVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryRespVO.java @@ -67,5 +67,7 @@ public class WarehouseFactoryRespVO { @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("创建时间") private LocalDateTime createTime; + @Schema(description = "主库位ID") + private Long mainWarehouseId; } \ No newline at end of file diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactorySaveReqVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactorySaveReqVO.java index 19e32e4a..ccb3edb0 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactorySaveReqVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactorySaveReqVO.java @@ -1,10 +1,14 @@ package com.zt.plat.module.erp.controller.admin.erp.vo; import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; import lombok.Data; +import org.springframework.validation.annotation.Validated; + @Schema(description = "管理后台 - 仓库工厂关系新增/修改 Request VO") @Data +@Validated public class WarehouseFactorySaveReqVO { @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5015") @@ -46,4 +50,8 @@ public class WarehouseFactorySaveReqVO { @Schema(description = "erp目标库位编码") private String erpTargetWarehouseNumber; + @Schema(description = "主库位ID") + @NotNull(message = "主库位ID不能为空") + private Long mainWarehouseId; + } \ No newline at end of file diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/WarehouseFactoryDO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/WarehouseFactoryDO.java index 35b2ebad..0800d14e 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/WarehouseFactoryDO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/WarehouseFactoryDO.java @@ -90,4 +90,7 @@ public class WarehouseFactoryDO extends BusinessBaseDO { @TableField("ERP_TGT_WRH_NUM") private String erpTargetWarehouseNumber; + @TableField("MAIN_WRH_ID") + private Long mainWarehouseId; + } \ No newline at end of file diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpWarehouseService.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpWarehouseService.java index 9a52a72e..51059e1d 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpWarehouseService.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpWarehouseService.java @@ -51,15 +51,16 @@ public interface ErpWarehouseService { * @param id 编号 * @return ERP库位 */ - ErpWarehouseDO getErpWarehouse(Long id); + ErpWarehouseRespVO getErpWarehouse(Long id); + ErpWarehouseDO getErpWarehouse(String id); /** * 获得ERP库位分页 * * @param pageReqVO 分页查询 * @return ERP库位分页 */ - PageResult getErpWarehousePage(ErpWarehousePageReqVO pageReqVO); + PageResult getErpWarehousePage(ErpWarehousePageReqVO pageReqVO); void callErpRfcInterface(); diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpWarehouseServiceImpl.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpWarehouseServiceImpl.java index ecb64b3b..3614c64c 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpWarehouseServiceImpl.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpWarehouseServiceImpl.java @@ -46,6 +46,9 @@ public class ErpWarehouseServiceImpl implements ErpWarehouseService { @Resource private ErpConfig erpConfig; + @Resource + private WarehouseFactoryService warehouseFactoryService; + @Override public ErpWarehouseRespVO createErpWarehouse(ErpWarehouseSaveReqVO createReqVO) { // 校验存在 @@ -125,7 +128,14 @@ public class ErpWarehouseServiceImpl implements ErpWarehouseService { } @Override - public ErpWarehouseDO getErpWarehouse(Long id) { + public ErpWarehouseRespVO getErpWarehouse(Long id) { + ErpWarehouseRespVO erpWarehouseRespVO = BeanUtils.toBean(erpWarehouseMapper.selectById(id), ErpWarehouseRespVO.class); + setWarehouseFactoryInfo(erpWarehouseRespVO); + return erpWarehouseRespVO; + } + + @Override + public ErpWarehouseDO getErpWarehouse(String id) { return erpWarehouseMapper.selectById(id); } @@ -140,8 +150,13 @@ public class ErpWarehouseServiceImpl implements ErpWarehouseService { @Override - public PageResult getErpWarehousePage(ErpWarehousePageReqVO pageReqVO) { - return erpWarehouseMapper.selectPage(pageReqVO); + public PageResult getErpWarehousePage(ErpWarehousePageReqVO pageReqVO) { + PageResult erpWarehouseRespVOPageResult = BeanUtils.toBean(erpWarehouseMapper.selectPage(pageReqVO), ErpWarehouseRespVO.class); + if (erpWarehouseRespVOPageResult.getList() == null) { + return erpWarehouseRespVOPageResult; + } + erpWarehouseRespVOPageResult.getList().forEach(this::setWarehouseFactoryInfo); + return erpWarehouseRespVOPageResult; // // 获取分页数据 // List list = erpWarehouseMapper.getPageByReq(pageReqVO); // if (list == null) { @@ -163,6 +178,15 @@ public class ErpWarehouseServiceImpl implements ErpWarehouseService { // return new PageResult<>(pageList, (long) total); } + // 设置主物料信息 + public void setWarehouseFactoryInfo(ErpWarehouseRespVO warehouse) { + if (warehouse == null) { + return; + } + warehouse.setWarehouseFactories(warehouseFactoryService.getWarehouseFactoryByMainId(warehouse.getId().toString())); + + } + @Override @Transactional @XxlJob("getErpWarehouseTask") diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryService.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryService.java index 00080226..ce0b8b5a 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryService.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryService.java @@ -61,4 +61,13 @@ public interface WarehouseFactoryService { */ PageResult getWarehouseFactoryPage(WarehouseFactoryPageReqVO pageReqVO); + + /** + * 通过主库位查询子库位 + * + * @param mainId 主库位Id + * @return WarehouseFactoryRespVO + */ + List getWarehouseFactoryByMainId(String mainId); + } \ No newline at end of file diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryServiceImpl.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryServiceImpl.java index 397ba8ff..411e2bec 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryServiceImpl.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryServiceImpl.java @@ -88,4 +88,9 @@ public class WarehouseFactoryServiceImpl implements WarehouseFactoryService { return warehouseFactoryMapper.selectPage(pageReqVO); } + @Override + public List getWarehouseFactoryByMainId(String mainId) { + return BeanUtils.toBean(warehouseFactoryMapper.selectList(WarehouseFactoryDO::getMainWarehouseId, mainId), WarehouseFactoryRespVO.class); + } + } \ No newline at end of file