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 7c5dbddd..3c1f54e3 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 @@ -8,7 +8,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.github.javaparser.utils.Log; import com.kingdee.bos.webapi.entity.IdentifyInfo; -import com.kingdee.bos.webapi.sdk.K3CloudApi; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; @@ -72,7 +71,6 @@ public class SyncReceiptProcessHandler implements ClassProcess { try { IdentifyInfo identifyInfo = new IdentifyInfo(); BeanUtils.copyProperties(erpSec, identifyInfo); - K3CloudApi cloudApi = new K3CloudApi(identifyInfo); JSONObject res; if (Integer.parseInt(StatusEnum.ERP_TYPE.code(formid)) > 22) { String result = erpServiceUtils.audit(formData).getString("result"); @@ -121,38 +119,37 @@ public class SyncReceiptProcessHandler implements ClassProcess { if ("RECEIPT_PRD".equals(formType)) { for (int i = 0; i < fEntityArray.size(); i++) { JSONObject fEntity = fEntityArray.getJSONObject(i); - 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); - if (CollectionUtils.isEmpty(jsonArray)) { - throw new BadRequestException("该生产订单未找到对应生产汇报单"); - } - JSONArray optRptEntry = jsonArray.getJSONObject(0).getJSONArray("OptRptEntry"); - if (fEntity.containsKey("FSrcEntryId")) { - //增加源单分录id - fEntity.put("FSrcEntryId", optRptEntry.getJSONObject(0).getString("SrcEntryId")); - fEntity.put("FSrcEntrySeq", optRptEntry.getJSONObject(0).getString("SrcEntrySeq")); - fEntity.put("FSrcBillType", "SFC_OperationReport"); - } - 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); + //查询工序汇报单 + ErpQuery reportQuery = new ErpQuery(); + reportQuery.setFilterString("FMoNumber ='" + fEntity.getString("FMoBillNo") + "'"); + reportQuery.setOrderString("FId desc"); + reportQuery.setFormId("SFC_OperationReport"); + JSONArray jsonArray = erpServiceUtils.queryBills(reportQuery); + if (CollectionUtils.isEmpty(jsonArray)) { + throw new BadRequestException("该生产订单未找到对应生产汇报单"); } + JSONArray optRptEntry = jsonArray.getJSONObject(0).getJSONArray("OptRptEntry"); + if (fEntity.containsKey("FSrcEntryId")) { + //增加源单分录id + fEntity.put("FSrcEntryId", optRptEntry.getJSONObject(0).getString("SrcEntryId")); + fEntity.put("FSrcEntrySeq", optRptEntry.getJSONObject(0).getString("SrcEntrySeq")); + fEntity.put("FSrcBillType", "SFC_OperationReport"); + } + 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); + } } //判断生产领料单的批次与辅助单位 @@ -180,12 +177,11 @@ public class SyncReceiptProcessHandler implements ClassProcess { fUnit.put("FNumber", materialInfo.getAssist_unit_id()); tempMap.put("FSecUnitId", fUnit); } - if ("FStockId".equals(entry.getKey())) { - JSONObject fStockId = new JSONObject(); - //tofix 目前都入料箱库 - fStockId.put("FNumber", "25"); - tempMap.put("FStockId", fStockId); - } + // if ("FStockId".equals(entry.getKey())) { + // JSONObject fStockId = new JSONObject(); + // fStockId.put("FNumber", "25"); + // tempMap.put("FStockId", fStockId); + // } } fEntity.clear(); fEntity.putAll(tempMap); diff --git a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/group/dto/GroupItemData.java b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/group/dto/GroupItemData.java index b64126d4..1eec17c1 100644 --- a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/group/dto/GroupItemData.java +++ b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/group/dto/GroupItemData.java @@ -20,4 +20,9 @@ public class GroupItemData { */ private String single_weight; + + @JsonProperty("FMoEntrySeq") + @JSONField(name = "FMoEntrySeq") + private String FMoEntrySeq; + } diff --git a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/server/dto/PdaFormInMst.java b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/server/dto/PdaFormInMst.java index 180a965e..255fcdea 100644 --- a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/server/dto/PdaFormInMst.java +++ b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/iostorage/server/dto/PdaFormInMst.java @@ -1,5 +1,6 @@ package org.nl.wms.pda_manage.iostorage.server.dto; +import com.baomidou.mybatisplus.annotation.TableField; import lombok.Data; import java.io.Serializable; @@ -182,6 +183,11 @@ public class PdaFormInMst implements Serializable { */ private String ownerIdHead_Id; + /** + * 生产订单行号 + */ + @TableField(exist = false) + private String moEntrySeq; /** * 对应表头:采购入库单-业务类型FBusinessType:默认(CG) 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 c2550b5c..1a5e470a 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 @@ -421,7 +421,6 @@ public class PdaIOService { String workShopId1; BigDecimal qty; String ownerId_Id; - String stockId; String keeperId; String srcBillNo; JSONObject pFormJson; @@ -445,8 +444,6 @@ public class PdaIOService { workShopId1 = dFormJson.getString("product_code"); qty = prdMoBillData.getQty(); ownerId_Id = dFormJson.getString("InStockOwnerId"); - //tofix 目前都入料箱库 - stockId = "25"; keeperId = dFormJson.getString("StockOrgId"); srcBillNo = dFormJson.getString("saleOrderEntryId"); } else { @@ -473,8 +470,6 @@ public class PdaIOService { ownerId_Id = JSON.parseObject(entity.getString("InStockOwnerId")).getString("Number"); keeperId = JSON.parseObject(entity.getString("InStockOwnerId")).getString("Number"); srcBillNo = entity.getString("SaleOrderEntryId"); - //tofix 目前都入料箱库 - stockId = "25"; } else { throw new BadRequestException("查询合格证关联的生产订单明细信息异常!"); } @@ -497,7 +492,6 @@ public class PdaIOService { result.setOwnerTypeId(StringUtils.isBlank(dataList.get(13).toString()) ? "BD_OwnerOrg" : dataList.get(13).toString()); result.setOwnerId_Id(ownerId_Id); result.setStockStatusId("KCZT01_SYS"); - result.setStockId(stockId); result.setKeeperId(keeperId); result.setKeeperTypeId("BD_KeeperOrg"); result.setSrcBillNo(srcBillNo); 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 b36e8e01..fa5e5e7a 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 @@ -43,6 +43,7 @@ public class PdaInIOService { String materialId = mst.getMaterial_id(); String vehicleCode = mst.getVehicle_code(); String unitId = mst.getUnit_id(); + mst.setStockId("FStockPallet".equals(mst.getStor_code())? "24" : "25"); if (StringUtils.isBlank(mst.getSrcBillNo())) { throw new BadRequestException("操作失败,源单信息不存在!"); } @@ -87,6 +88,7 @@ public class PdaInIOService { GroupItemData groupItemData = new GroupItemData(); groupItemData.setSingle_weight(mst.getSingle_weight()); groupItemData.setFMoBillNo(mst.getBillNo()); + groupItemData.setFMoEntrySeq(mst.getMoEntrySeq()); materItem.setForm_data(groupItemData); groupDto.setItem(ListOf.of(materItem)); iMdGruopDickService.groupDick((JSONObject) JSONObject.toJSON(groupDto));