From ef76e964591f2c6c232308d9243f7543c35766b2 Mon Sep 17 00:00:00 2001 From: gongbaoxiong <751575283@qq.com> Date: Tue, 17 Dec 2024 23:57:05 +0800 Subject: [PATCH] =?UTF-8?q?opt=EF=BC=9A=E4=BC=98=E5=8C=96=E7=94=9F?= =?UTF-8?q?=E4=BA=A7=E5=85=A5=E5=BA=93=E5=8D=95=E5=9B=9E=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SyncReceiptProcessHandler.java | 48 ++++++++++--------- .../iostorage/sevice/PdaIOService.java | 12 ++--- .../iostorage/sevice/PdaInIOService.java | 2 +- .../service/impl/PmFormDataServiceImpl.java | 8 ++-- 4 files changed, 36 insertions(+), 34 deletions(-) diff --git a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/flow_manage/flow/service/classprocessimpl/SyncReceiptProcessHandler.java b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/flow_manage/flow/service/classprocessimpl/SyncReceiptProcessHandler.java index 3622db79..d4dce889 100644 --- a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/flow_manage/flow/service/classprocessimpl/SyncReceiptProcessHandler.java +++ b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/flow_manage/flow/service/classprocessimpl/SyncReceiptProcessHandler.java @@ -113,32 +113,36 @@ public class SyncReceiptProcessHandler implements ClassProcess { private void handleBillEntity(String formType, JSONObject formData) { JSONArray fEntityArray = formData.getJSONObject("Model").getJSONArray("FEntity"); //判断生产入库的手工录入与MRP生成方式需回传不同的源单信息 - if ("0".equals(formData.getString("FSrcEntryId")) && "RECEIPT_PRD".equals(formType)) { - //查询工序汇报单 - ErpQuery reportQuery = new ErpQuery(); - reportQuery.setFilterString("FMoNumber ='" + formData.getString("moNumber") + "'"); - reportQuery.setOrderString("FId desc"); - reportQuery.setFormId("SFC_OperationReport"); - JSONArray jsonArray = erpServiceUtils.queryBills(reportQuery); + if ("RECEIPT_PRD".equals(formType)) { for (int i = 0; i < fEntityArray.size(); i++) { JSONObject fEntity = fEntityArray.getJSONObject(i); - if (fEntity.containsKey("FSrcEntryId")) { - fEntity.remove("FSrcEntryId"); - } - Map linkedMap = new LinkedHashMap<>(); - for (String key : fEntity.keySet()) { - linkedMap.put(key, fEntity.get(key)); - } - Map tempMap = new LinkedHashMap<>(); - for (Map.Entry entry : linkedMap.entrySet()) { - tempMap.put(entry.getKey(), entry.getValue()); - if ("FMoEntryId".equals(entry.getKey())) { - //源单编号为工序汇报单号 - tempMap.put("FSrcBillNo", jsonArray.getJSONObject(0).getString("BillNo")); + if ("0".equals(fEntity.getString("FSrcEntryId"))) { + //查询工序汇报单 + ErpQuery reportQuery = new ErpQuery(); + reportQuery.setFilterString("FMoNumber ='" + fEntity.getString("FMoBillNo") + "'"); + reportQuery.setOrderString("FId desc"); + reportQuery.setFormId("SFC_OperationReport"); + JSONArray jsonArray = erpServiceUtils.queryBills(reportQuery); + JSONArray optRptEntry = jsonArray.getJSONObject(0).getJSONArray("OptRptEntry"); + if (fEntity.containsKey("FSrcEntryId")) { + //增加源单分录id + fEntity.put("FSrcEntryId", optRptEntry.getJSONObject(0).getString("SrcEntryId")); } + Map linkedMap = new LinkedHashMap<>(); + for (String key : fEntity.keySet()) { + linkedMap.put(key, fEntity.get(key)); + } + Map tempMap = new LinkedHashMap<>(); + for (Map.Entry entry : linkedMap.entrySet()) { + tempMap.put(entry.getKey(), entry.getValue()); + if ("FMoEntryId".equals(entry.getKey())) { + //源单编号为工序汇报单号 + tempMap.put("FSrcBillNo", jsonArray.getJSONObject(0).getString("BillNo")); + } + } + fEntity.clear(); + fEntity.putAll(tempMap); } - fEntity.clear(); - fEntity.putAll(tempMap); } } //判断生产领料单的批次与辅助单位 diff --git a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/sevice/PdaIOService.java b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/sevice/PdaIOService.java index bd223278..41fc20e8 100644 --- a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/sevice/PdaIOService.java +++ b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/sevice/PdaIOService.java @@ -463,12 +463,12 @@ public class PdaIOService { .orElse(null); if (entity != null) { moEntryId = entity.getString("Id"); - stockOrgId = JSON.parseObject(entity.getString("StockInOrgId")).getString("FNumber"); - ownerIdHead_Id = JSON.parseObject(entity.getString("InStockOwnerId")).getString("FNumber"); - workShopId1 = JSON.parseObject(entity.getString("WorkShopID")).getString("FNumber"); + stockOrgId = JSON.parseObject(entity.getString("StockInOrgId")).getString("Number"); + ownerIdHead_Id = JSON.parseObject(entity.getString("InStockOwnerId")).getString("Number"); + workShopId1 = JSON.parseObject(entity.getString("WorkShopID")).getString("Number"); qty = new BigDecimal(entity.getString("Qty")); - ownerId_Id = JSON.parseObject(entity.getString("InStockOwnerId")).getString("FNumber"); - keeperId = JSON.parseObject(entity.getString("InStockOwnerId")).getString("FNumber"); + ownerId_Id = JSON.parseObject(entity.getString("InStockOwnerId")).getString("Number"); + keeperId = JSON.parseObject(entity.getString("InStockOwnerId")).getString("Number"); srcBillNo = entity.getString("SaleOrderEntryId"); //tofix 目前都入料箱库 stockId = "25"; @@ -492,7 +492,7 @@ public class PdaIOService { result.setInStockType("1"); result.setOwnerTypeId(StringUtils.isBlank(dataList.get(13).toString()) ? "BD_OwnerOrg" : dataList.get(13).toString()); result.setOwnerId_Id(ownerId_Id); - result.setStockStatusId("10000"); + result.setStockStatusId("KCZT01_SYS"); result.setStockId(stockId); result.setKeeperId(keeperId); result.setKeeperTypeId("BD_KeeperOrg"); diff --git a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/sevice/PdaInIOService.java b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/sevice/PdaInIOService.java index 85fee638..b36e8e01 100644 --- a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/sevice/PdaInIOService.java +++ b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/sevice/PdaInIOService.java @@ -49,7 +49,7 @@ public class PdaInIOService { if (StringUtils.isBlank(mst.getMaterial_code())) { throw new BadRequestException("操作失败,物料信息不存在!"); } - Assert.noNullElements(new Object[]{mst.getStor_code(), mst.getQty(), mst.getMaterial_code(), mst.getBar_code(), materialId, mst.getQty(), mst.getSingle_weight(), mst.getStockOrgId()}, "入库失败:请求参数不全"); + Assert.noNullElements(new Object[]{mst.getStor_code(), mst.getQty(), mst.getMaterial_code(), mst.getBar_code(), materialId, mst.getQty()}, "入库失败:请求参数不全"); MaterGroupDto groupDto = new MaterGroupDto(); groupDto.setStor_code(mst.getStor_code()); String form_type; diff --git a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pm_manage/form_data/service/impl/PmFormDataServiceImpl.java b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pm_manage/form_data/service/impl/PmFormDataServiceImpl.java index 509e6947..07591745 100644 --- a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pm_manage/form_data/service/impl/PmFormDataServiceImpl.java +++ b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pm_manage/form_data/service/impl/PmFormDataServiceImpl.java @@ -195,10 +195,9 @@ public class PmFormDataServiceImpl extends ServiceImpl list = iSyncFormMappingService.list(new LambdaQueryWrapper().eq(SyncFormMapping::getForm_type, "PRD_PPBOM")); - JSONArray mappingJson = list.get(0).getMapping_json(); + //根据单据编号同步ERP单据 + List list = iSyncFormMappingService.list(new LambdaQueryWrapper().eq(SyncFormMapping::getForm_type, query.getForm_type())); + JSONArray mappingJson = list.get(0).getMapping_json(); String mappingString = JSON.toJSONString(mappingJson); syncErpBillsScheduleService.syncData(mappingString, list.get(0).getForm_type(), list.get(0).getDtl_split(), query.getCode()); List pmFormData = this.baseMapper.queryTree2(query); @@ -210,7 +209,6 @@ public class PmFormDataServiceImpl extends ServiceImpl dtoPage = new com.baomidou.mybatisplus.extension.plugins.pagination.Page<>(page.getPages(), page.getPageSize(), page.getTotal()); dtoPage.setRecords(pmFormDataDtos); return dtoPage;