diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/controller/ErpController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/controller/ErpController.java index d75353e..2b388f9 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/controller/ErpController.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/controller/ErpController.java @@ -8,7 +8,6 @@ import org.jeecg.modules.wms.api.erp.entity.*; import org.jeecg.modules.wms.api.erp.service.IErpService; import org.jeecg.modules.wms.framework.aspectj.lang.annotation.ApiLogger; import org.jeecg.modules.wms.framework.controller.HuahengBaseController; -import org.jeecg.utils.HuahengJwtUtil; import org.springframework.web.bind.annotation.*; import io.swagger.annotations.Api; @@ -29,9 +28,8 @@ public class ErpController extends HuahengBaseController { @ResponseBody @ApiOperation("入库单下发") @ApiLogger(apiName = "入库单下发", from = "ERP") - public Result receipt(@RequestBody ErpReceipt erpReceipt, @RequestHeader(value = "token", required = false) String token) { - String operator = HuahengJwtUtil.getAudienceByToken(token); - return erpService.receipt(erpReceipt, operator); + public Result receipt(@RequestBody ErpReceipt erpReceipt) { + return erpService.receipt(erpReceipt); } @PostMapping("/cancelReceipt") diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpReceiptDetail.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpReceiptDetail.java index 4aa7ed5..470163d 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpReceiptDetail.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpReceiptDetail.java @@ -1,9 +1,10 @@ package org.jeecg.modules.wms.api.erp.entity; -import lombok.Data; - import java.math.BigDecimal; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + /** * @author 游杰 */ @@ -13,45 +14,54 @@ public class ErpReceiptDetail { /** * 物料编码 */ + @ApiModelProperty(value = "物料编码", required = true) private String materialCode; /** * 物料名称 */ + @ApiModelProperty(value = "物料名称", required = true) private String materialName; /** * 物料规格 */ + @ApiModelProperty(value = "物料规格") private String materialSpec; /** * 物料单位 */ + @ApiModelProperty(value = "物料单位") private String materialUnit; /** * 单据数量 */ + @ApiModelProperty(value = "单据数量", required = true) private BigDecimal qty; /** * 库存状况 */ + @ApiModelProperty(value = "库存状况", required = true) private String inventoryStatus; /** * 批次 */ + @ApiModelProperty(value = "批次") private String batch; /** * 批号 */ + @ApiModelProperty(value = "批号") private String lot; /** * 项目号 */ + @ApiModelProperty(value = "项目号") private String project; } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpReceiptHeader.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpReceiptHeader.java index 4e1a4cc..0db7e69 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpReceiptHeader.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpReceiptHeader.java @@ -1,5 +1,6 @@ package org.jeecg.modules.wms.api.erp.entity; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -11,26 +12,32 @@ public class ErpReceiptHeader { /** * 仓库编码 */ + @ApiModelProperty(value = "仓库编码", required = true) private String warehouseCode; /** * 货主 */ + @ApiModelProperty(value = "货主编码", required = true) private String companyCode; /** * 入库单类型 */ + @ApiModelProperty(value = "入库单类型", required = true) private String receiptType; /** * 上游单号 */ + @ApiModelProperty(value = "上游单号", required = true) private String referCode; /** * 供应商编码 */ + @ApiModelProperty(value = "供应商编码") private String supplierCode; /** * 备注 */ + @ApiModelProperty(value = "备注") private String remark; } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpShipmentDetail.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpShipmentDetail.java index 75ba878..9d5b436 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpShipmentDetail.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpShipmentDetail.java @@ -1,39 +1,46 @@ package org.jeecg.modules.wms.api.erp.entity; -import lombok.Data; - import java.math.BigDecimal; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + @Data public class ErpShipmentDetail { /** * 物料编码 */ + @ApiModelProperty(value = "物料编码", required = true) private String materialCode; /** * 单据数量 */ + @ApiModelProperty(value = "单据数量", required = true) private BigDecimal qty; /** * 库存状况 */ + @ApiModelProperty(value = "库存状况", required = true) private String inventoryStatus; /** * 批次 */ + @ApiModelProperty(value = "批次") private String batch; /** * 批号 */ + @ApiModelProperty(value = "批号") private String lot; /** * 项目号 */ + @ApiModelProperty(value = "项目号") private String project; } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpShipmentHeader.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpShipmentHeader.java index 32d49c9..cf3a071 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpShipmentHeader.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/entity/ErpShipmentHeader.java @@ -1,5 +1,6 @@ package org.jeecg.modules.wms.api.erp.entity; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @@ -8,26 +9,32 @@ public class ErpShipmentHeader { /** * 仓库编码 */ + @ApiModelProperty(value = "仓库编码", required = true) private String warehouseCode; /** * 货主 */ + @ApiModelProperty(value = "货主编码", required = true) private String companyCode; /** * 出库单类型 */ + @ApiModelProperty(value = "出库单类型", required = true) private String shipmentType; /** * 上游单号 */ + @ApiModelProperty(value = "上游单号", required = true) private String referCode; /** * 客户编码 */ + @ApiModelProperty(value = "客户编码") private String customerCode; /** * 备注 */ + @ApiModelProperty(value = "备注") private String remark; } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/service/IErpService.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/service/IErpService.java index 9d786f8..28f0e7c 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/service/IErpService.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/service/IErpService.java @@ -13,7 +13,7 @@ public interface IErpService { /** * 下发入库单 */ - public Result receipt(ErpReceipt erpReceipt, String operator); + public Result receipt(ErpReceipt erpReceipt); /** * 取消入库单 diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/service/impl/ErpServiceImpl.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/service/impl/ErpServiceImpl.java index d429543..2b14f25 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/service/impl/ErpServiceImpl.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/erp/service/impl/ErpServiceImpl.java @@ -71,7 +71,7 @@ public class ErpServiceImpl implements IErpService { @Override @Transactional(rollbackFor = Exception.class) - public Result receipt(ErpReceipt erpReceipt, String operator) { + public Result receipt(ErpReceipt erpReceipt) { boolean success = false; if (erpReceipt == null) { return Result.error("入库单下发,没有传receipt"); @@ -122,7 +122,6 @@ public class ErpServiceImpl implements IErpService { receiptHeader.setReferCode(referCode); receiptHeader.setSupplierCode(supplierCode); receiptHeader.setRemark(remark); - receiptHeader.setCreateBy(operator); Result result = receiptHeaderService.saveReceiptHeader(receiptHeader); if (!result.isSuccess()) { throw new ServiceException("创建入库单头失败" + result.getMessage()); @@ -176,7 +175,6 @@ public class ErpServiceImpl implements IErpService { receiptDetail.setBatch(batch); receiptDetail.setLot(lot); receiptDetail.setProject(project); - receiptDetail.setCreateBy(operator); success = receiptDetailService.save(receiptDetail); if (!success) { throw new ServiceException("入库单下发, 保存入库单详情失败"); diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/controller/MesController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/controller/MesController.java index 23a4f5d..480779b 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/controller/MesController.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/controller/MesController.java @@ -1,11 +1,10 @@ package org.jeecg.modules.wms.api.mes.controller; -import java.util.Map; - import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.wms.api.erp.entity.ErpCancel; import org.jeecg.modules.wms.api.erp.entity.ErpReceipt; import org.jeecg.modules.wms.api.erp.entity.ErpShipment; import org.jeecg.modules.wms.api.erp.entity.InventoryQueryParam; @@ -15,14 +14,17 @@ import org.jeecg.modules.wms.api.mes.entity.MesShipmentMaterial; import org.jeecg.modules.wms.api.mes.servuce.IMesService; import org.jeecg.modules.wms.framework.aspectj.lang.annotation.ApiLogger; import org.jeecg.modules.wms.framework.controller.HuahengBaseController; -import org.jeecg.utils.HuahengJwtUtil; import org.springframework.web.bind.annotation.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; + /** * @author 游杰 */ @RestController @RequestMapping("/api/mes") +@Api(tags = "MES接口") public class MesController extends HuahengBaseController { @Resource @@ -32,39 +34,43 @@ public class MesController extends HuahengBaseController { @PostMapping("/receipt") @ResponseBody + @ApiOperation("入库单下发") @ApiLogger(apiName = "入库单下发", from = "MES") - public Result receipt(@RequestBody ErpReceipt erpReceipt, @RequestHeader(value = "token", required = false) String token) { - String operator = HuahengJwtUtil.getAudienceByToken(token); - return erpService.receipt(erpReceipt, operator); + public Result receipt(@RequestBody ErpReceipt erpReceipt) { + return erpService.receipt(erpReceipt); } @PostMapping("/cancelReceipt") @ResponseBody + @ApiOperation("取消入库单") @ApiLogger(apiName = "取消入库单", from = "MES") - public Result cancelReceipt(@RequestBody Map<String, String> param) { - String referCode = param.get("referCode"); - String warehouseCOde = param.get("warehouseCode"); + public Result cancelReceipt(@RequestBody ErpCancel erpCancel) { + String referCode = erpCancel.getReferCode(); + String warehouseCOde = erpCancel.getWarehouseCode(); return erpService.cancelReceipt(referCode, warehouseCOde); } @PostMapping("/shipment") @ResponseBody + @ApiOperation("出库单下发") @ApiLogger(apiName = "出库单下发", from = "MES") - public Result shipment(@RequestBody ErpShipment erpShipment, HttpServletRequest req) { + public Result shipment(@RequestBody ErpShipment erpShipment) { return erpService.shipment(erpShipment); } @PostMapping("/cancelShipment") @ResponseBody + @ApiOperation("取消出库单") @ApiLogger(apiName = "取消出库单", from = "MES") - public Result cancelShipment(@RequestBody Map<String, String> param, HttpServletRequest req) { - String referCode = param.get("referCode"); - String warehouseCode = param.get("warehouseCode"); + public Result cancelShipment(@RequestBody ErpCancel erpCancel) { + String referCode = erpCancel.getReferCode(); + String warehouseCode = erpCancel.getWarehouseCode(); return erpService.cancelShipment(referCode, warehouseCode); } @PostMapping("/searchInventory") @ResponseBody + @ApiOperation("查询库存") @ApiLogger(apiName = "查询库存", from = "MES") public Result searchInventory(@RequestBody InventoryQueryParam inventoryQueryParam, HttpServletRequest req) { Result result = erpService.searchInventory(inventoryQueryParam); @@ -73,19 +79,19 @@ public class MesController extends HuahengBaseController { @PostMapping("/receiptMaterial") @ResponseBody + @ApiOperation("物料入库") @ApiLogger(apiName = "物料入库", from = "MES") - public Result receiptMaterial(@RequestBody MesReceiptMaterial mesReceiptMaterial, HttpServletRequest req) { - String warehouseCode = HuahengJwtUtil.getWarehouseCodeByToken(req); - Result result = mesService.receiptMaterial(mesReceiptMaterial, warehouseCode); + public Result receiptMaterial(@RequestBody MesReceiptMaterial mesReceiptMaterial) { + Result result = mesService.receiptMaterial(mesReceiptMaterial); return result; } @PostMapping("/shipmentMaterial") @ResponseBody + @ApiOperation("物料出库") @ApiLogger(apiName = "物料出库", from = "MES") - public Result shipmentMaterial(@RequestBody MesShipmentMaterial mesShipmentMaterial, HttpServletRequest req) { - String warehouseCode = HuahengJwtUtil.getWarehouseCodeByToken(req); - Result result = mesService.shipmentMaterial(mesShipmentMaterial, warehouseCode); + public Result shipmentMaterial(@RequestBody MesShipmentMaterial mesShipmentMaterial) { + Result result = mesService.shipmentMaterial(mesShipmentMaterial); return result; } } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MaterialInfo.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MaterialInfo.java index 5a2d99f..8591eac 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MaterialInfo.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MaterialInfo.java @@ -1,15 +1,32 @@ package org.jeecg.modules.wms.api.mes.entity; -import lombok.Data; +import java.math.BigDecimal; + import org.jetbrains.annotations.NotNull; -import java.math.BigDecimal; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +/** + * @author 游杰 + */ @Data public class MaterialInfo implements Comparable<MaterialInfo> { + /** + * 物料编码 + */ + @ApiModelProperty(value = "物料编码", required = true) private String materialCode; + /** + * 数量 + */ + @ApiModelProperty(value = "数量", required = true) private BigDecimal qty; + /** + * 顺序 + */ + @ApiModelProperty(value = "顺序") private int sequence; @Override diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MesReceiptMaterial.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MesReceiptMaterial.java index 705cfae..68e45e1 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MesReceiptMaterial.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MesReceiptMaterial.java @@ -1,19 +1,40 @@ package org.jeecg.modules.wms.api.mes.entity; -import lombok.Data; - -import java.math.BigDecimal; import java.util.List; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + /** * @author 游杰 */ @Data public class MesReceiptMaterial { + /** + * 上游单号 + */ + @ApiModelProperty(value = "上游单号", required = true) private String referCode; + /** + * 容器号 + */ + @ApiModelProperty(value = "容器号", required = true) private String containerCode; + /** + * 仓库编码 + */ + @ApiModelProperty(value = "仓库编码", required = true) + private String warehouseCode; + /** + * 入库口 + */ + @ApiModelProperty(value = "入库口", required = true) private String toPort; + /** + * 物料信息 + */ + @ApiModelProperty(value = "物料信息", required = true) private List<MaterialInfo> materialInfoList; } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MesShipmentMaterial.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MesShipmentMaterial.java index be8a6c2..4997f57 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MesShipmentMaterial.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/entity/MesShipmentMaterial.java @@ -1,16 +1,34 @@ package org.jeecg.modules.wms.api.mes.entity; -import lombok.Data; - import java.util.List; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + /** * @author 游杰 */ @Data public class MesShipmentMaterial { + /** + * 上游单号 + */ + @ApiModelProperty(value = "上游单号", required = true) private String referCode; + /** + * 出库口 + */ + @ApiModelProperty(value = "出库口", required = true) private String toPort; + /** + * 仓库编码 + */ + @ApiModelProperty(value = "仓库编码", required = true) + private String warehouseCode; + /** + * 物料信息 + */ + @ApiModelProperty(value = "物料信息", required = true) private List<MaterialInfo> materialInfoList; } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/servuce/IMesService.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/servuce/IMesService.java index 9841785..da9bea2 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/servuce/IMesService.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/servuce/IMesService.java @@ -10,9 +10,9 @@ import org.jeecg.modules.wms.task.taskHeader.entity.TaskHeader; */ public interface IMesService { - public Result receiptMaterial(MesReceiptMaterial mesReceiptMaterial, String warehouseCode); + public Result receiptMaterial(MesReceiptMaterial mesReceiptMaterial); - public Result shipmentMaterial(MesShipmentMaterial mesShipmentMaterial, String warehouseCode); + public Result shipmentMaterial(MesShipmentMaterial mesShipmentMaterial); public Result backMesReceipt(TaskHeader taskHeader); diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/servuce/impl/MesServiceImpl.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/servuce/impl/MesServiceImpl.java index 909c8c4..854dcd3 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/servuce/impl/MesServiceImpl.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/servuce/impl/MesServiceImpl.java @@ -12,6 +12,8 @@ import org.jeecg.common.api.vo.Result; import org.jeecg.modules.wms.api.mes.entity.*; import org.jeecg.modules.wms.api.mes.servuce.IMesService; import org.jeecg.modules.wms.config.address.service.IAddressService; +import org.jeecg.modules.wms.config.container.entity.Container; +import org.jeecg.modules.wms.config.container.service.IContainerService; import org.jeecg.modules.wms.receipt.receiptContainerHeader.entity.ReceiptContainerHeader; import org.jeecg.modules.wms.receipt.receiptContainerHeader.service.IReceiptContainerHeaderService; import org.jeecg.modules.wms.receipt.receiptHeader.entity.ReceiptDetail; @@ -73,6 +75,8 @@ public class MesServiceImpl implements IMesService { private IAddressService addressService; @Resource private ITaskHeaderService taskHeaderService; + @Resource + private IContainerService containerService; /** * 要求入库单详情 必须是不重样的 @@ -80,11 +84,22 @@ public class MesServiceImpl implements IMesService { */ @Override @Transactional(rollbackFor = Exception.class) - public Result receiptMaterial(MesReceiptMaterial mesReceiptMaterial, String warehouseCode) { + public Result receiptMaterial(MesReceiptMaterial mesReceiptMaterial) { List<Receive> receiveList = new ArrayList<>(); String referCode = mesReceiptMaterial.getReferCode(); String containerCode = mesReceiptMaterial.getContainerCode(); + String warehouseCode = mesReceiptMaterial.getWarehouseCode(); String toPort = mesReceiptMaterial.getToPort(); + if (StringUtils.isEmpty(containerCode)) { + return Result.error("MES下发入库信息,容器号为空"); + } + if (StringUtils.isEmpty(warehouseCode)) { + return Result.error("MES下发入库信息,仓库编码为空"); + } + Container container = containerService.getContainerByCode(containerCode, warehouseCode); + if (container == null) { + return Result.error("MES下发入库信息,没有找到容器"); + } List<MaterialInfo> materialInfoList = mesReceiptMaterial.getMaterialInfoList(); ReceiptHeader receiptHeader = receiptHeaderService.getReceiptHeaderByReferCode(referCode, warehouseCode); if (receiptHeader == null) { @@ -137,9 +152,10 @@ public class MesServiceImpl implements IMesService { @Override @Transactional(rollbackFor = Exception.class) - public Result shipmentMaterial(MesShipmentMaterial mesShipmentMaterial, String warehouseCode) { + public Result shipmentMaterial(MesShipmentMaterial mesShipmentMaterial) { String referCode = mesShipmentMaterial.getReferCode(); String toPort = mesShipmentMaterial.getToPort(); + String warehouseCode = mesShipmentMaterial.getWarehouseCode(); List<MaterialInfo> materialInfoList = mesShipmentMaterial.getMaterialInfoList(); ShipmentHeader shipmentHeader = shipmentHeaderService.getShipmentHeaderByReferCode(referCode, warehouseCode); if (shipmentHeader == null) {