From c32d27ad3f3bd4ee5aec032cd95459a2c504ba50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BD=98=E8=8D=A3=E6=99=9F?= <9691125+pan-rongsheng@user.noreply.gitee.com> Date: Wed, 7 Jan 2026 17:10:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=90=88=E5=90=8C=E6=94=B6?= =?UTF-8?q?=E5=8F=91=E8=B4=A7=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../contractorder/api/ContractApiImpl.java | 2 +- .../service/contract/ContractServiceImpl.java | 4 +- .../module/erp/enums/ErrorCodeConstants.java | 2 + .../admin/erp/WarehouseFactoryController.java | 105 ++++++++++++++++++ .../admin/erp/vo/ErpWarehousePageReqVO.java | 5 +- .../admin/erp/vo/ErpWarehouseRespVO.java | 5 + .../admin/erp/vo/ErpWarehouseSaveReqVO.java | 4 + .../erp/vo/WarehouseFactoryPageReqVO.java | 56 ++++++++++ .../admin/erp/vo/WarehouseFactoryRespVO.java | 71 ++++++++++++ .../erp/vo/WarehouseFactorySaveReqVO.java | 49 ++++++++ .../dal/dataobject/erp/ErpWarehouseDO.java | 10 ++ .../dataobject/erp/WarehouseFactoryDO.java | 93 ++++++++++++++++ .../erp/dal/mysql/erp/ErpWarehouseMapper.java | 12 ++ .../dal/mysql/erp/WarehouseFactoryMapper.java | 37 ++++++ .../service/erp/ErpWarehouseServiceImpl.java | 39 +++---- .../service/erp/WarehouseFactoryService.java | 64 +++++++++++ .../erp/WarehouseFactoryServiceImpl.java | 91 +++++++++++++++ .../mapper/WarehouseFactoryMapper.xml | 12 ++ 18 files changed, 638 insertions(+), 23 deletions(-) create mode 100644 zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/WarehouseFactoryController.java create mode 100644 zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryPageReqVO.java create mode 100644 zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryRespVO.java create mode 100644 zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactorySaveReqVO.java create mode 100644 zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/WarehouseFactoryDO.java create mode 100644 zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/mysql/erp/WarehouseFactoryMapper.java create mode 100644 zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryService.java create mode 100644 zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryServiceImpl.java create mode 100644 zt-module-erp/zt-module-erp-server/src/main/resources/mapper/WarehouseFactoryMapper.xml diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java index feca0031..3c905dd8 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java @@ -82,7 +82,7 @@ public class ContractApiImpl implements ContractApi { @Override public ContractRespDTO getFormulasBySysNumber(String contractSysNumber) { - return contractService.getFormulasByPaperNumber(contractSysNumber); + return contractService.getFormulasBySysNumber(contractSysNumber); } @Override diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java index e405ab6d..53ed1f91 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java @@ -1301,7 +1301,7 @@ public class ContractServiceImpl implements ContractService { // 通过合同编号查询合同信息 ContractMainDO contractMainDO = contractMainMapper - .selectOne(ContractMainDO::getSystemContractNumber, contractPaperNumber); + .selectOne(TableFieldConstants.BSE_CTRT_MAIN_CTRT_PPR_NUM, contractPaperNumber); // 合同不存在 if (contractMainDO == null) { @@ -1394,7 +1394,7 @@ public class ContractServiceImpl implements ContractService { // 通过合同编号查询合同信息 ContractMainDO contractMainDO = contractMainMapper - .selectOne(TableFieldConstants.BSE_CTRT_MAIN_CTRT_PPR_NUM, contractSysNumber); + .selectOne(ContractMainDO::getSystemContractNumber, contractSysNumber); // 合同不存在 if (contractMainDO == null) { diff --git a/zt-module-erp/zt-module-erp-api/src/main/java/com/zt/plat/module/erp/enums/ErrorCodeConstants.java b/zt-module-erp/zt-module-erp-api/src/main/java/com/zt/plat/module/erp/enums/ErrorCodeConstants.java index 7a7ec42b..bec41aa8 100644 --- a/zt-module-erp/zt-module-erp-api/src/main/java/com/zt/plat/module/erp/enums/ErrorCodeConstants.java +++ b/zt-module-erp/zt-module-erp-api/src/main/java/com/zt/plat/module/erp/enums/ErrorCodeConstants.java @@ -57,4 +57,6 @@ public interface ErrorCodeConstants { ErrorCode ERP_PRODUCTIVE_ORDER_NOT_EXISTS = new ErrorCode(1_017_000_001, "ERP生产订单数据不存在"); ErrorCode MATERIAL_ERROR = new ErrorCode( 1_017_000_009, "主物料信息错误"); + + ErrorCode WAREHOUSE_FACTORY_NOT_EXISTS=new ErrorCode(1_017_000_010,"库位与工厂信息不存在"); } \ 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/WarehouseFactoryController.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/WarehouseFactoryController.java new file mode 100644 index 00000000..eb099775 --- /dev/null +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/WarehouseFactoryController.java @@ -0,0 +1,105 @@ +package com.zt.plat.module.erp.controller.admin.erp; + +import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog; +import com.zt.plat.framework.business.interceptor.BusinessControllerMarker; +import com.zt.plat.framework.common.pojo.CommonResult; +import com.zt.plat.framework.common.pojo.PageParam; +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.common.pojo.vo.BatchDeleteReqVO; +import com.zt.plat.framework.common.util.object.BeanUtils; +import com.zt.plat.framework.excel.core.util.ExcelUtils; +import com.zt.plat.module.erp.controller.admin.erp.vo.WarehouseFactoryPageReqVO; +import com.zt.plat.module.erp.controller.admin.erp.vo.WarehouseFactoryRespVO; +import com.zt.plat.module.erp.controller.admin.erp.vo.WarehouseFactorySaveReqVO; +import com.zt.plat.module.erp.dal.dataobject.erp.WarehouseFactoryDO; +import com.zt.plat.module.erp.service.erp.WarehouseFactoryService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.Valid; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.io.IOException; +import java.util.List; + +import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.EXPORT; +import static com.zt.plat.framework.common.pojo.CommonResult.success; + +@Tag(name = "管理后台 - 仓库工厂关系") +@RestController +@RequestMapping("/base/warehouse-factory") +@Validated +public class WarehouseFactoryController implements BusinessControllerMarker { + + + @Resource + private WarehouseFactoryService warehouseFactoryService; + + @PostMapping("/create") + @Operation(summary = "创建仓库工厂关系") + @PreAuthorize("@ss.hasPermission('bse:warehouse-factory:create')") + public CommonResult createWarehouseFactory(@Valid @RequestBody WarehouseFactorySaveReqVO createReqVO) { + return success(warehouseFactoryService.createWarehouseFactory(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新仓库工厂关系") + @PreAuthorize("@ss.hasPermission('bse:warehouse-factory:update')") + public CommonResult updateWarehouseFactory(@Valid @RequestBody WarehouseFactorySaveReqVO updateReqVO) { + warehouseFactoryService.updateWarehouseFactory(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除仓库工厂关系") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('bse:warehouse-factory:delete')") + public CommonResult deleteWarehouseFactory(@RequestParam("id") Long id) { + warehouseFactoryService.deleteWarehouseFactory(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除仓库工厂关系") + @PreAuthorize("@ss.hasPermission('bse:warehouse-factory:delete')") + public CommonResult deleteWarehouseFactoryList(@RequestBody BatchDeleteReqVO req) { + warehouseFactoryService.deleteWarehouseFactoryListByIds(req.getIds()); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得仓库工厂关系") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('bse:warehouse-factory:query')") + public CommonResult getWarehouseFactory(@RequestParam("id") Long id) { + WarehouseFactoryDO warehouseFactory = warehouseFactoryService.getWarehouseFactory(id); + return success(BeanUtils.toBean(warehouseFactory, WarehouseFactoryRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得仓库工厂关系分页") + @PreAuthorize("@ss.hasPermission('bse:warehouse-factory:query')") + public CommonResult> getWarehouseFactoryPage(@Valid WarehouseFactoryPageReqVO pageReqVO) { + PageResult pageResult = warehouseFactoryService.getWarehouseFactoryPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, WarehouseFactoryRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出仓库工厂关系 Excel") + @PreAuthorize("@ss.hasPermission('bse:warehouse-factory:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportWarehouseFactoryExcel(@Valid WarehouseFactoryPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = warehouseFactoryService.getWarehouseFactoryPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "仓库工厂关系.xls", "数据", WarehouseFactoryRespVO.class, + BeanUtils.toBean(list, WarehouseFactoryRespVO.class)); + } + +} \ 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/ErpWarehousePageReqVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehousePageReqVO.java index def8141d..b926f395 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehousePageReqVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehousePageReqVO.java @@ -22,6 +22,9 @@ public class ErpWarehousePageReqVO extends PageParam { @Schema(description = "类型") private String type; - + @Schema(description = "公司名称") + private String companyNameCustom; + @Schema(description = "公司编号") + private String companyIdCustom; } \ 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 cac2001d..9ae72c98 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 @@ -42,4 +42,9 @@ public class ErpWarehouseRespVO { @Schema(description = "是否启用") private String isEnable; + @Schema(description = "公司名称") + private String companyNameCustom; + @Schema(description = "公司编号") + private String companyIdCustom; + } \ 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/ErpWarehouseSaveReqVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehouseSaveReqVO.java index 548b7005..fac90de7 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehouseSaveReqVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehouseSaveReqVO.java @@ -33,5 +33,9 @@ public class ErpWarehouseSaveReqVO { @Schema(description = "是否启用") private String isEnable; + @Schema(description = "公司名称") + private String companyNameCustom; + @Schema(description = "公司编号") + private String companyIdCustom; } \ 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 new file mode 100644 index 00000000..b6b9e5a4 --- /dev/null +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryPageReqVO.java @@ -0,0 +1,56 @@ +package com.zt.plat.module.erp.controller.admin.erp.vo; + +import com.zt.plat.framework.common.pojo.PageParam; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDateTime; + +import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 仓库工厂关系分页 Request VO") +@Data +public class WarehouseFactoryPageReqVO extends PageParam { + + @Schema(description = "公司名称") + private String companyNameCustom; + + @Schema(description = "公司编码") + private String companyIdCustom; + + @Schema(description = "操作类型", example = "2") + private String operationType; + + @Schema(description = "业务类型", example = "2") + private String mMSIType; + + @Schema(description = "erp源工厂名称", example = "赵六") + private String erpSourceFactoryName; + + @Schema(description = "erp源工厂编码") + private String erpSourceFactoryNumber; + + @Schema(description = "erp源库位名称", example = "赵六") + private String erpSourceWarehouseName; + + @Schema(description = "erp源库位编码") + private String erpSourceWarehouseNumber; + + @Schema(description = "erp目标工厂名称", example = "赵六") + private String erpTargetFactoryName; + + @Schema(description = "erp目标工厂编码") + private String erpTargetFactoryNumber; + + @Schema(description = "erp目标库位名称", example = "ZT") + private String erpTargetWarehouseName; + + @Schema(description = "erp目标库位编码") + private String erpTargetWarehouseNumber; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ 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/WarehouseFactoryRespVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryRespVO.java new file mode 100644 index 00000000..f9626545 --- /dev/null +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactoryRespVO.java @@ -0,0 +1,71 @@ +package com.zt.plat.module.erp.controller.admin.erp.vo; + +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.time.LocalDateTime; + +@Schema(description = "管理后台 - 仓库工厂关系 Response VO") +@Data +@ExcelIgnoreUnannotated +public class WarehouseFactoryRespVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5015") + @ExcelProperty("主键ID") + private Long id; + + @Schema(description = "公司名称") + @ExcelProperty("公司名称") + private String companyNameCustom; + + @Schema(description = "公司编码") + @ExcelProperty("公司编码") + private String companyIdCustom; + + @Schema(description = "操作类型", example = "2") + @ExcelProperty("操作类型") + private String operationType; + + @Schema(description = "业务类型", example = "2") + @ExcelProperty("业务类型") + private String mMSIType; + + @Schema(description = "erp源工厂名称", example = "赵六") + @ExcelProperty("erp源工厂名称") + private String erpSourceFactoryName; + + @Schema(description = "erp源工厂编码") + @ExcelProperty("erp源工厂编码") + private String erpSourceFactoryNumber; + + @Schema(description = "erp源库位名称", example = "赵六") + @ExcelProperty("erp源库位名称") + private String erpSourceWarehouseName; + + @Schema(description = "erp源库位编码") + @ExcelProperty("erp源库位编码") + private String erpSourceWarehouseNumber; + + @Schema(description = "erp目标工厂名称", example = "赵六") + @ExcelProperty("erp目标工厂名称") + private String erpTargetFactoryName; + + @Schema(description = "erp目标工厂编码") + @ExcelProperty("erp目标工厂编码") + private String erpTargetFactoryNumber; + + @Schema(description = "erp目标库位名称", example = "ZT") + @ExcelProperty("erp目标库位名称") + private String erpTargetWarehouseName; + + @Schema(description = "erp目标库位编码") + @ExcelProperty("erp目标库位编码") + private String erpTargetWarehouseNumber; + + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ 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 new file mode 100644 index 00000000..19e32e4a --- /dev/null +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/WarehouseFactorySaveReqVO.java @@ -0,0 +1,49 @@ +package com.zt.plat.module.erp.controller.admin.erp.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Schema(description = "管理后台 - 仓库工厂关系新增/修改 Request VO") +@Data +public class WarehouseFactorySaveReqVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5015") + private Long id; + + @Schema(description = "公司名称") + private String companyNameCustom; + + @Schema(description = "公司编码") + private String companyIdCustom; + + @Schema(description = "操作类型", example = "2") + private String operationType; + + @Schema(description = "业务类型", example = "2") + private String mMSIType; + + @Schema(description = "erp源工厂名称", example = "赵六") + private String erpSourceFactoryName; + + @Schema(description = "erp源工厂编码") + private String erpSourceFactoryNumber; + + @Schema(description = "erp源库位名称", example = "赵六") + private String erpSourceWarehouseName; + + @Schema(description = "erp源库位编码") + private String erpSourceWarehouseNumber; + + @Schema(description = "erp目标工厂名称", example = "赵六") + private String erpTargetFactoryName; + + @Schema(description = "erp目标工厂编码") + private String erpTargetFactoryNumber; + + @Schema(description = "erp目标库位名称", example = "ZT") + private String erpTargetWarehouseName; + + @Schema(description = "erp目标库位编码") + private String erpTargetWarehouseNumber; + +} \ 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/ErpWarehouseDO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/ErpWarehouseDO.java index 60bccd7d..2b3c94e7 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/ErpWarehouseDO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/ErpWarehouseDO.java @@ -70,5 +70,15 @@ public class ErpWarehouseDO extends BusinessBaseDO { */ @TableField("IS_ENB") private String isEnable; + /** + * 公司编号 + */ + @TableField("CPN_ID_CST") + private String companyIdCustom; + /** + * 公司名称 + */ + @TableField("CPN_NAME_CST") + private String companyNameCustom; } \ 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 new file mode 100644 index 00000000..35b2ebad --- /dev/null +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/WarehouseFactoryDO.java @@ -0,0 +1,93 @@ +package com.zt.plat.module.erp.dal.dataobject.erp; + +import com.baomidou.mybatisplus.annotation.*; +import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO; +import lombok.*; + +/** +* 仓库工厂关系 DO +* +* @author 后台管理-1 +*/ +@TableName("bse_wrh_fact") +@KeySequence("bse_wrh_fact_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +/** +* 支持业务基类继承:isBusiness=true 时继承 BusinessBaseDO,否则继承 BaseDO +*/ +public class WarehouseFactoryDO extends BusinessBaseDO { + + + + /** + * 主键ID + */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + /** + * 公司名称 + */ + @TableField("CPN_NAME_CST") + private String companyNameCustom; + /** + * 公司编码 + */ + @TableField("CPN_ID_CST") + private String companyIdCustom; + /** + * 操作类型 + */ + @TableField("OPTN_TP") + private String operationType; + /** + * 业务类型 + */ + @TableField("MMSI_TP") + private String mMSIType; + /** + * erp源工厂名称 + */ + @TableField("ERP_SRC_FACT_NAME") + private String erpSourceFactoryName; + /** + * erp源工厂编码 + */ + @TableField("ERP_SRC_FACT_NUM") + private String erpSourceFactoryNumber; + /** + * erp源库位名称 + */ + @TableField("ERP_SRC_WRH_NAME") + private String erpSourceWarehouseName; + /** + * erp源库位编码 + */ + @TableField("ERP_SRC_WRH_NUM") + private String erpSourceWarehouseNumber; + /** + * erp目标工厂名称 + */ + @TableField("ERP_TGT_FACT_NAME") + private String erpTargetFactoryName; + /** + * erp目标工厂编码 + */ + @TableField("ERP_TGT_FACT_NUM") + private String erpTargetFactoryNumber; + /** + * erp目标库位名称 + */ + @TableField("ERP_TGT_WRH_NAME") + private String erpTargetWarehouseName; + /** + * erp目标库位编码 + */ + @TableField("ERP_TGT_WRH_NUM") + private String erpTargetWarehouseNumber; + +} \ 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/mysql/erp/ErpWarehouseMapper.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/mysql/erp/ErpWarehouseMapper.java index ee619cb5..2eb30e18 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/mysql/erp/ErpWarehouseMapper.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/mysql/erp/ErpWarehouseMapper.java @@ -20,4 +20,16 @@ public interface ErpWarehouseMapper extends BaseMapperX { String selectMaxCode(); List getPageByReq(ErpWarehousePageReqVO pageReqVO); + + + default PageResult selectPage(ErpWarehousePageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .likeIfPresent(ErpWarehouseDO::getNumber, reqVO.getNumber()) + .likeIfPresent(ErpWarehouseDO::getName, reqVO.getName()) + .likeIfPresent(ErpWarehouseDO::getCompanyIdCustom, reqVO.getCompanyIdCustom()) + .likeIfPresent(ErpWarehouseDO::getCompanyNameCustom, reqVO.getCompanyNameCustom()) + .orderByDesc(ErpWarehouseDO::getId)); + } + + } \ 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/mysql/erp/WarehouseFactoryMapper.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/mysql/erp/WarehouseFactoryMapper.java new file mode 100644 index 00000000..66e6397e --- /dev/null +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/mysql/erp/WarehouseFactoryMapper.java @@ -0,0 +1,37 @@ +package com.zt.plat.module.erp.dal.mysql.erp; + +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX; +import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX; + +import com.zt.plat.module.erp.controller.admin.erp.vo.WarehouseFactoryPageReqVO; +import com.zt.plat.module.erp.dal.dataobject.erp.WarehouseFactoryDO; +import org.apache.ibatis.annotations.Mapper; + +/** + * 仓库工厂关系 Mapper + * + * @author 后台管理-1 + */ +@Mapper +public interface WarehouseFactoryMapper extends BaseMapperX { + + default PageResult selectPage(WarehouseFactoryPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(WarehouseFactoryDO::getCompanyNameCustom, reqVO.getCompanyNameCustom()) + .eqIfPresent(WarehouseFactoryDO::getCompanyIdCustom, reqVO.getCompanyIdCustom()) + .eqIfPresent(WarehouseFactoryDO::getOperationType, reqVO.getOperationType()) + .eqIfPresent(WarehouseFactoryDO::getMMSIType, reqVO.getMMSIType()) + .likeIfPresent(WarehouseFactoryDO::getErpSourceFactoryName, reqVO.getErpSourceFactoryName()) + .eqIfPresent(WarehouseFactoryDO::getErpSourceFactoryNumber, reqVO.getErpSourceFactoryNumber()) + .likeIfPresent(WarehouseFactoryDO::getErpSourceWarehouseName, reqVO.getErpSourceWarehouseName()) + .eqIfPresent(WarehouseFactoryDO::getErpSourceWarehouseNumber, reqVO.getErpSourceWarehouseNumber()) + .likeIfPresent(WarehouseFactoryDO::getErpTargetFactoryName, reqVO.getErpTargetFactoryName()) + .eqIfPresent(WarehouseFactoryDO::getErpTargetFactoryNumber, reqVO.getErpTargetFactoryNumber()) + .likeIfPresent(WarehouseFactoryDO::getErpTargetWarehouseName, reqVO.getErpTargetWarehouseName()) + .eqIfPresent(WarehouseFactoryDO::getErpTargetWarehouseNumber, reqVO.getErpTargetWarehouseNumber()) + .betweenIfPresent(WarehouseFactoryDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(WarehouseFactoryDO::getId)); + } + +} \ 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/ErpWarehouseServiceImpl.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpWarehouseServiceImpl.java index 7b41adfe..ecb64b3b 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 @@ -141,25 +141,26 @@ public class ErpWarehouseServiceImpl implements ErpWarehouseService { @Override public PageResult getErpWarehousePage(ErpWarehousePageReqVO pageReqVO) { - // 获取分页数据 - List list = erpWarehouseMapper.getPageByReq(pageReqVO); - if (list == null) { - list = CollUtil.newArrayList(); - } - // 分页处理 - int pageNo = pageReqVO.getPageNo(); - int pageSize = pageReqVO.getPageSize(); - int total = list.size(); - // 计算分页起始和结束位置 - int fromIndex = (pageNo - 1) * pageSize; - int toIndex = Math.min(fromIndex + pageSize, total); - // 如果起始位置超出范围,则返回空列表 - if (fromIndex >= total) { - return new PageResult<>(new ArrayList<>(), (long) total); - } - // 截取当前页数据 - List pageList = list.subList(fromIndex, toIndex); - return new PageResult<>(pageList, (long) total); + return erpWarehouseMapper.selectPage(pageReqVO); +// // 获取分页数据 +// List list = erpWarehouseMapper.getPageByReq(pageReqVO); +// if (list == null) { +// list = CollUtil.newArrayList(); +// } +// // 分页处理 +// int pageNo = pageReqVO.getPageNo(); +// int pageSize = pageReqVO.getPageSize(); +// int total = list.size(); +// // 计算分页起始和结束位置 +// int fromIndex = (pageNo - 1) * pageSize; +// int toIndex = Math.min(fromIndex + pageSize, total); +// // 如果起始位置超出范围,则返回空列表 +// if (fromIndex >= total) { +// return new PageResult<>(new ArrayList<>(), (long) total); +// } +// // 截取当前页数据 +// List pageList = list.subList(fromIndex, toIndex); +// return new PageResult<>(pageList, (long) total); } @Override 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 new file mode 100644 index 00000000..00080226 --- /dev/null +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryService.java @@ -0,0 +1,64 @@ +package com.zt.plat.module.erp.service.erp; + +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.module.erp.controller.admin.erp.vo.WarehouseFactoryPageReqVO; +import com.zt.plat.module.erp.controller.admin.erp.vo.WarehouseFactoryRespVO; +import com.zt.plat.module.erp.controller.admin.erp.vo.WarehouseFactorySaveReqVO; +import com.zt.plat.module.erp.dal.dataobject.erp.WarehouseFactoryDO; +import jakarta.validation.Valid; + +import java.util.List; + +/** + * 仓库工厂关系 Service 接口 + * + * @author 后台管理-1 + */ +public interface WarehouseFactoryService { + + /** + * 创建仓库工厂关系 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + WarehouseFactoryRespVO createWarehouseFactory(@Valid WarehouseFactorySaveReqVO createReqVO); + + /** + * 更新仓库工厂关系 + * + * @param updateReqVO 更新信息 + */ + void updateWarehouseFactory(@Valid WarehouseFactorySaveReqVO updateReqVO); + + /** + * 删除仓库工厂关系 + * + * @param id 编号 + */ + void deleteWarehouseFactory(Long id); + + /** + * 批量删除仓库工厂关系 + * + * @param ids 编号 + */ + void deleteWarehouseFactoryListByIds(List ids); + + /** + * 获得仓库工厂关系 + * + * @param id 编号 + * @return 仓库工厂关系 + */ + WarehouseFactoryDO getWarehouseFactory(Long id); + + /** + * 获得仓库工厂关系分页 + * + * @param pageReqVO 分页查询 + * @return 仓库工厂关系分页 + */ + PageResult getWarehouseFactoryPage(WarehouseFactoryPageReqVO pageReqVO); + +} \ 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 new file mode 100644 index 00000000..397ba8ff --- /dev/null +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/WarehouseFactoryServiceImpl.java @@ -0,0 +1,91 @@ +package com.zt.plat.module.erp.service.erp; + +import cn.hutool.core.collection.CollUtil; +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.common.util.object.BeanUtils; + +import com.zt.plat.module.erp.controller.admin.erp.vo.WarehouseFactoryPageReqVO; +import com.zt.plat.module.erp.controller.admin.erp.vo.WarehouseFactoryRespVO; +import com.zt.plat.module.erp.controller.admin.erp.vo.WarehouseFactorySaveReqVO; +import com.zt.plat.module.erp.dal.dataobject.erp.WarehouseFactoryDO; +import com.zt.plat.module.erp.dal.mysql.erp.WarehouseFactoryMapper; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Service; +import org.springframework.validation.annotation.Validated; + +import java.util.List; + +import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception; +import static com.zt.plat.module.erp.enums.ErrorCodeConstants.WAREHOUSE_FACTORY_NOT_EXISTS; + + +/** + * 仓库工厂关系 Service 实现类 + * + * @author 后台管理-1 + */ +@Service +@Validated +public class WarehouseFactoryServiceImpl implements WarehouseFactoryService { + + @Resource + private WarehouseFactoryMapper warehouseFactoryMapper; + + @Override + public WarehouseFactoryRespVO createWarehouseFactory(WarehouseFactorySaveReqVO createReqVO) { + // 插入 + WarehouseFactoryDO warehouseFactory = BeanUtils.toBean(createReqVO, WarehouseFactoryDO.class); + warehouseFactoryMapper.insert(warehouseFactory); + // 返回 + return BeanUtils.toBean(warehouseFactory, WarehouseFactoryRespVO.class); + } + + @Override + public void updateWarehouseFactory(WarehouseFactorySaveReqVO updateReqVO) { + // 校验存在 + validateWarehouseFactoryExists(updateReqVO.getId()); + // 更新 + WarehouseFactoryDO updateObj = BeanUtils.toBean(updateReqVO, WarehouseFactoryDO.class); + warehouseFactoryMapper.updateById(updateObj); + } + + @Override + public void deleteWarehouseFactory(Long id) { + // 校验存在 + validateWarehouseFactoryExists(id); + // 删除 + warehouseFactoryMapper.deleteById(id); + } + + @Override + public void deleteWarehouseFactoryListByIds(List ids) { + // 校验存在 + validateWarehouseFactoryExists(ids); + // 删除 + warehouseFactoryMapper.deleteByIds(ids); + } + + private void validateWarehouseFactoryExists(List ids) { + List list = warehouseFactoryMapper.selectByIds(ids); + if (CollUtil.isEmpty(list) || list.size() != ids.size()) { + throw exception(WAREHOUSE_FACTORY_NOT_EXISTS); + } + } + + private void validateWarehouseFactoryExists(Long id) { + if (warehouseFactoryMapper.selectById(id) == null) { + throw exception(WAREHOUSE_FACTORY_NOT_EXISTS); + } + } + + @Override + public WarehouseFactoryDO getWarehouseFactory(Long id) { + return warehouseFactoryMapper.selectById(id); + } + + @Override + public PageResult getWarehouseFactoryPage(WarehouseFactoryPageReqVO pageReqVO) { + return warehouseFactoryMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/zt-module-erp/zt-module-erp-server/src/main/resources/mapper/WarehouseFactoryMapper.xml b/zt-module-erp/zt-module-erp-server/src/main/resources/mapper/WarehouseFactoryMapper.xml new file mode 100644 index 00000000..66a4e3f8 --- /dev/null +++ b/zt-module-erp/zt-module-erp-server/src/main/resources/mapper/WarehouseFactoryMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file