opt:领料出库单增加辅助单位判断

This commit is contained in:
2025-03-07 19:07:10 +08:00
parent efe2e80743
commit 35584fe0a2
4 changed files with 14 additions and 10 deletions

View File

@@ -153,8 +153,8 @@ public class ErpServiceUtils {
//执行回传
try {
String json = from.toJSONString();
// result = getCloudApi().audit(from.getString("formid"), json);
// from.put("result", result);
result = getCloudApi().audit(from.getString("formid"), json);
from.put("result", result);
} catch (Exception ex) {
Log.error(ex.getMessage());
from.put("result", ex.getMessage());

View File

@@ -118,6 +118,11 @@ public class SyncReceiptProcessHandler implements ClassProcess {
}
model.put("FDate", DateUtil.now());
JSONArray fEntityArray = formData.getJSONObject("Model").getJSONArray("FEntity");
List<MdMeMaterialbase> materialList = iMdMeMaterialbaseService.list(new LambdaQueryWrapper<MdMeMaterialbase>().eq(MdMeMaterialbase::getMaterial_code, JSON.parseObject(fEntityArray.getJSONObject(0).getString("FMaterialId")).getString("FNumber")));
if (ObjectUtil.isEmpty(materialList)) {
throw new BadRequestException("回传失败:查询物料信息,物料编码不存在:" + JSON.parseObject(fEntityArray.getJSONObject(0).getString("FMaterialId")).getString("FNumber"));
}
MdMeMaterialbase materialInfo = materialList.get(0);
if ("RECEIPT_PRD".equals(formType)) {
for (int i = 0; i < fEntityArray.size(); i++) {
JSONObject fEntity = fEntityArray.getJSONObject(i);
@@ -145,6 +150,12 @@ public class SyncReceiptProcessHandler implements ClassProcess {
tempMap.put("FSrcEntrySeq", optRptEntry.getJSONObject(0).getString("Seq"));
tempMap.put("FSrcBillType", "SFC_OperationReport");
}
//辅助单位
if (!"0".equals(materialInfo.getAssist_unit_id()) && "FUnitID".equals(entry.getKey())) {
JSONObject fUnit = new JSONObject();
fUnit.put("FNumber", materialInfo.getAssist_unit_id());
tempMap.put("FSecUnitId", fUnit);
}
}
JSONArray fEntityLinkArray = new JSONArray();
JSONObject fEntityLink = new JSONObject();
@@ -183,11 +194,6 @@ public class SyncReceiptProcessHandler implements ClassProcess {
} else {
throw new BadRequestException("该领料出库单的对应用生产用料清单未找到对应的物料明细");
}
List<MdMeMaterialbase> materialList = iMdMeMaterialbaseService.list(new LambdaQueryWrapper<MdMeMaterialbase>().eq(MdMeMaterialbase::getMaterial_code, JSON.parseObject(fEntity.getString("FMaterialId")).getString("FNumber")));
if (ObjectUtil.isEmpty(materialList)) {
throw new BadRequestException("回传失败:查询物料信息,物料编码不存在:" + JSON.parseObject(fEntity.getString("FMaterialId")).getString("FNumber"));
}
MdMeMaterialbase materialInfo = materialList.get(0);
Map<String, Object> linkedMap = new LinkedHashMap<>();
for (String key : fEntity.keySet()) {
linkedMap.put(key, fEntity.get(key));

View File

@@ -63,7 +63,7 @@ public class PdaOutController {
// result.add(MapOf.of("text",formStruc.getForm_name(),"value",formStruc.getForm_type()));
// }
result.add(MapOf.of("text","生产用料清单","value","PRD_PPBOM"));
result.add(MapOf.of("text","委外用料清单","value","SUB_PickMtrl"));
//result.add(MapOf.of("text","委外用料清单","value","SUB_PickMtrl"));
result.add(MapOf.of("text","直接调拨单","value","STK_TransferDirect"));
result.add(MapOf.of("text","简单领料申请单","value","ka7c19edf9d4b4b39b8cc4a06802163b0"));
result.add(MapOf.of("text","其他出库单","value","STK_MisDelivery"));

View File

@@ -309,8 +309,6 @@ public class SyncErpBillsScheduleService {
formDataService.update(new LambdaUpdateWrapper<PmFormData>()
.set(PmFormData::getMaterial_id, f.getMaterial_id())
.set(PmFormData::getQty, f.getQty())
//todo 确认分配数量是多少
.set(PmFormData::getAssign_qty, BigDecimal.ZERO)
.set(PmFormData::getUnit_id, f.getUnit_id())
.set(PmFormData::getForm_data, JSON.toJSONString(f.getForm_data()))
.set(PmFormData::getPlan_qty, f.getPlan_qty())