diff --git a/zi-wms-pda/src/main/java/com/cim/idm/controller/MaterialReceiveActController.java b/zi-wms-pda/src/main/java/com/cim/idm/controller/MaterialReceiveActController.java index a3961df..4cde393 100644 --- a/zi-wms-pda/src/main/java/com/cim/idm/controller/MaterialReceiveActController.java +++ b/zi-wms-pda/src/main/java/com/cim/idm/controller/MaterialReceiveActController.java @@ -499,7 +499,7 @@ public class MaterialReceiveActController { @RequestMapping(value = "/commitToERP", method = RequestMethod.POST) - public AjaxResult commitToERP(@RequestBody JSONObject in ) { + public AjaxResult commitToERP(@RequestBody JSONObject in ) throws CustomException { TrackOutBoDto trackOutBoDto = JSON.toJavaObject(in, TrackOutBoDto.class); // 采购单 List requests = new ArrayList<>(); @@ -517,6 +517,8 @@ public class MaterialReceiveActController { String user = trackOutBoDto.getUser(); String opCode = trackOutBoDto.getOpCode(); String commitDate = trackOutBoDto.getCommitDate(); + String erpLocation = trackOutBoDto.getErpLocation(); + String erpFactory1 = trackOutBoDto.getErpFactory(); // 采购单处理 for (MaterialReceiveRequest request : requests) { String receiveRequestName = request.getReceiveRequestName(); @@ -561,7 +563,7 @@ public class MaterialReceiveActController { SDKMaterialPackingServiceImpl.updateMaterialPackingUndoIdByReceive(receiveRequestName, undoId); // 更新库存状态 SDKMaterialPackingServiceImpl.SaveUnDoInfo( undoId,commitDate); - SDKMaterialPackingServiceImpl.updateStockState( makeEventInfo, undoId,opCode); + SDKMaterialPackingServiceImpl.updateStockState(makeEventInfo, undoId,opCode,erpLocation, erpFactory1); } // 到货单据更新状态 if (Objects.nonNull(materialDelivery)) { diff --git a/zi-wms-pda/src/main/java/com/cim/idm/model/dto/TrackOutBoDto.java b/zi-wms-pda/src/main/java/com/cim/idm/model/dto/TrackOutBoDto.java index 09eb743..c8794ef 100644 --- a/zi-wms-pda/src/main/java/com/cim/idm/model/dto/TrackOutBoDto.java +++ b/zi-wms-pda/src/main/java/com/cim/idm/model/dto/TrackOutBoDto.java @@ -11,6 +11,10 @@ public class TrackOutBoDto { private String opCode; private String receiveRequestName; private MaterialreceiveActDto materialreceiveAct; + /**仓库*/ + private String erpLocation; + /**组织*/ + private String erpFactory; } diff --git a/zi-wms-pda/src/main/java/com/cim/idm/service/Impl/SDKMaterialPackingServiceImpl.java b/zi-wms-pda/src/main/java/com/cim/idm/service/Impl/SDKMaterialPackingServiceImpl.java index 1ece19e..4e493bf 100644 --- a/zi-wms-pda/src/main/java/com/cim/idm/service/Impl/SDKMaterialPackingServiceImpl.java +++ b/zi-wms-pda/src/main/java/com/cim/idm/service/Impl/SDKMaterialPackingServiceImpl.java @@ -299,7 +299,6 @@ public class SDKMaterialPackingServiceImpl extends CommonServiceDAO hashMap = new HashMap (); hashMap.put("UNDOID", UNDOID); @@ -317,6 +316,48 @@ public class SDKMaterialPackingServiceImpl extends CommonServiceDAO hashMapErp = new HashMap (); + hashMapErp.put("ERPFACTORYNAME", erpFactory); + hashMapErp.put("ERPLOCATIONNAME", erpLocation); + List> maps = IDMFrameServiceProxy.getSqlTemplate().queryForList(sqlErp, hashMapErp); + if (maps == null || maps.size() == 0 || maps.get(0).get("TYPE") == null) { + throw new CustomException("仓库类型为空," + "仓库:" + erpLocation + ",组织:" + erpFactory); + } + String type = maps.get(0).get("TYPE").toString(); + String packinggrade = "1".equals(type) ? "OK" : "NG"; + String oqaresult = "1".equals(type) ? "OK" : "NG"; + String specialstate = "1".equals(type) ? "" : "2"; + String sql = "SELECT SITENAME, MATERIALPACKINGNAME FROM MATERIALPACKING T WHERE UNDOID = :UNDOID"; + Map hashMap = new HashMap (); + hashMap.put("UNDOID", UNDOID); + List> queryForList = IDMFrameServiceProxy.getSqlTemplate().queryForList(sql, hashMap); + Map bindMap = new HashMap(); + SetEventInfo setEventInfo = new SetEventInfo(); + for (Map map : queryForList) { + bindMap.put("packingState","Released"); + bindMap.put("stockState","Stocked"); + bindMap.put("unDoID",UNDOID); + bindMap.put("messageId",opCode); + bindMap.put("packingGrade",packinggrade); + bindMap.put("oqaResult",oqaresult); + bindMap.put("specialState",specialstate); + setEventInfo.setUserColumns(bindMap); + MaterialPackingKey materialPackingKey = new MaterialPackingKey(map.get("SITENAME").toString(), map.get("MATERIALPACKINGNAME").toString()); + MaterialPackingServiceProxy.getMaterialPackingService().setEvent(materialPackingKey, eventInfo, setEventInfo); + } + } + /** * 模拟NC * @param shipRequestName