opt:生产入库单增加源单及单据明细行号

This commit is contained in:
2025-01-07 22:43:01 +08:00
parent 5adbe7cf5f
commit f236b08daa
3 changed files with 16 additions and 2 deletions

View File

@@ -9,6 +9,7 @@ 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;
import org.nl.common.domain.exception.BadRequestException;
@@ -127,10 +128,15 @@ public class SyncReceiptProcessHandler implements ClassProcess {
reportQuery.setOrderString("FId desc");
reportQuery.setFormId("SFC_OperationReport");
JSONArray jsonArray = erpServiceUtils.queryBills(reportQuery);
JSONArray optRptEntry = jsonArray.getJSONObject(0).getJSONArray("OptRptEntry");
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<String, Object> linkedMap = new LinkedHashMap<>();
for (String key : fEntity.keySet()) {

View File

@@ -413,6 +413,7 @@ public class PdaIOService {
String moNumber = dataList.get(11).toString();
String moSeq = dataList.get(12).toString();
String moEntryId;
String moEntrySeq;
String moId;
String prdOrgId;
String stockOrgId;
@@ -427,7 +428,7 @@ public class PdaIOService {
JSONObject dFormJson;
//查询本地生产订单信息
ReceiveBillData prdMoBillData = pmFormDataMapper.queryOrderStockId(dataList.get(11).toString(), dataList.get(12).toString());
if (prdMoBillData != null) {
if (prdMoBillData!=null) {
String pForm_data = prdMoBillData.getPForm_data();
String dForm_data = prdMoBillData.getDForm_data();
pFormJson = JSONObject.parseObject(pForm_data);
@@ -438,6 +439,7 @@ public class PdaIOService {
moId = prdMoBillData.getPId().substring(0, prdMoBillData.getPId().indexOf("$"));
prdOrgId = pFormJson.getString("PrdOrgId");
moEntryId = prdMoBillData.getDId().substring(0, prdMoBillData.getDId().indexOf("$"));
moEntrySeq = dFormJson.getString("moEntrySeq");
stockOrgId = dFormJson.getString("StockOrgId");
ownerIdHead_Id = dFormJson.getString("InStockOwnerId");
workShopId1 = dFormJson.getString("product_code");
@@ -463,6 +465,7 @@ public class PdaIOService {
.orElse(null);
if (entity != null) {
moEntryId = entity.getString("Id");
moEntrySeq = entity.getString("Seq");
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");
@@ -483,6 +486,7 @@ public class PdaIOService {
result.setMoNumber(moNumber);
result.setMoId(moId);
result.setMoEntryId(moEntryId);
result.setMoEntrySeq(moEntrySeq);
result.setMaterial_id(dataList.get(3).toString());
result.setPcsn(dataList.get(11).toString());
result.setUnit_id(dataList.get(7).toString());

View File

@@ -270,6 +270,10 @@ public class PmFormData implements Serializable {
private String moEntryId;
/**
* 对应明细:生产入库单-关联源头订单号明细Id-FSrcEntryId/采购入库单-关联源头订单号编号FSrcBillNo
*/