diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java index 05359e21d..837d53cd7 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java @@ -1022,4 +1022,22 @@ public class WmsToWCSmissionController { return odsProcureOrderService.packingMaterialsInboundCompletedNew(wcsRequestParams); } + /** + * 查询需要填写的成品 + * **/ + @GetMapping("/wmsStockAreaEntryList") + public AjaxResult getStockAreaEntryList(WmsStockAreaEntry params) { + List list = odsProcureOrderService.getStockAreaEntryList(params); + return AjaxResult.success(list); + } + + /** + * 提交成品入库 + * **/ + @PostMapping("/submitMaterialEntry") + public AjaxResult submitMaterialEntry(@RequestBody List list) { + odsProcureOrderService.submitMaterialEntry(list); + return AjaxResult.success(); + } + } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java index a7e43480e..c923aa217 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java @@ -172,4 +172,8 @@ public interface IOdsProcureOrderService { AjaxResult packingMaterialsInboundCompletedNew(WcsRequestParams wcsRequestParams); AjaxResult packingMaterialsRequestOutboundNew(WcsOutBoundRequestParams wcsOutBoundRequestParams) throws Exception; + + List getStockAreaEntryList(WmsStockAreaEntry params); + + void submitMaterialEntry(List list); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java index fd31bca92..5195c87f6 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java @@ -29,6 +29,7 @@ import com.op.system.api.RemoteQualityService; import com.op.system.api.RemoteSapService; import com.op.system.api.domain.quality.QcCheckTaskIncomeDTO; import com.op.system.api.domain.sap.SapBackflushMPQuery; +import com.op.system.api.domain.sap.SapMaterialEntry; import com.op.system.api.domain.sap.SapMaterialPosting; import com.op.system.api.domain.sap.SapPurchaseOrderQuery; import com.op.wms.domain.wcs.WcsOutBoundRequestParams; @@ -41,6 +42,7 @@ import okhttp3.Response; import java.io.IOException; +import java.util.stream.Collectors; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; @@ -4145,4 +4147,45 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { String result = HttpUtils.sendPostWechart(OutboundUrl,requestParam); return AjaxResult.success(result); } + + + @Override + @DS("#header.poolName") + public List getStockAreaEntryList(WmsStockAreaEntry params) { + return odsProcureOutOrderMapper.getStockAreaEntryList(params); + } + + @Override + @DS("#header.poolName") + public void submitMaterialEntry(List list) { + + List sapList = new ArrayList<>(); + + List duplicationList = odsProcureOutOrderMapper.batchCheckDuplication(list); + + if (!duplicationList.isEmpty()){ + List materialCodeList = duplicationList.stream().map(WmsStockAreaEntry::getMaterialCode).collect(Collectors.toList()); + throw new RuntimeException("物料:"+materialCodeList+"存在重复数据"); + } + + for (WmsStockAreaEntry item : list){ + SapMaterialEntry entry = new SapMaterialEntry(); + + entry.setMaterialCode(item.getMaterialCode()); + entry.setBatchCode(item.getBatchCode()); + entry.setFactoryCode(item.getFactoryCode()); + entry.setAreaCode(item.getAreaCode()); + entry.setStatus(item.getStatus()); + entry.setUserCode(item.getCreateBy()); + + sapList.add(entry); + } + + //提交记录 + odsProcureOutOrderMapper.batchInsertMaterialEntry(list); + + + //提交到sap + remoteSapService.updateMaterialEntry(sapList,"1"); + } } diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml index 8a6849afa..082841756 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml @@ -2254,4 +2254,67 @@ + + + + + + + + INSERT INTO wms_material_entry ( + work_order_code, + material_code, + batch_code, + factory_code, + location, + area_code, + status, + create_time, + create_by + ) + VALUES + + ( + #{item.workOrderCode}, + #{item.materialCode}, + #{item.batchCode}, + #{item.factoryCode}, + #{item.location}, + #{item.areaCode}, + #{item.status}, + GETDATE(), + #{item.createBy} + ) + + + +