生产订单序列号导入适配箱变

This commit is contained in:
mzr 2025-10-20 20:47:21 +08:00
parent 393be18782
commit 46b44dd601
2 changed files with 25 additions and 4 deletions

View File

@ -23,6 +23,7 @@ import nc.vo.mmpac.pmo.pac0002.entity.PMOSerialNoVO;
import nc.vo.mmpac.pmo.parameter.PMOMaterlKey;
import nc.vo.pub.BusinessException;
import nc.vo.pub.VOStatus;
import nc.vo.pub.lang.UFBoolean;
import nc.vo.pub.lang.UFDouble;
import nc.vo.pubapp.pattern.exception.ExceptionUtils;
import nc.vo.pubapp.pattern.pub.MathTool;
@ -89,6 +90,11 @@ public class PmoSerialNoImportProcess extends AbstractImportProceeWithContext {
Set<String> billTypeCodes = Set.of(
"55A2-Cxx-01", "55A2-Cxx-18"
);
if ("C030".equals(pk_org)) {
billTypeCodes = Set.of(
"55A2-Cxx-01"
);
}
if (!billTypeCodes.contains(vtrantypecode)) {
throw new BusinessException("订单类型不符合要求,请检查数据,单号:" + cpmohid + ",行号:" + cmoid);
}
@ -106,6 +112,8 @@ public class PmoSerialNoImportProcess extends AbstractImportProceeWithContext {
pmoSerialNoVO1.setNsnnum(nsnastnum);
pmoSerialNoVO1.setNsnastnum(nsnastnum);
pmoSerialNoVO1.setStatus(VOStatus.NEW);
pmoSerialNoVO1.setBreport(UFBoolean.FALSE);// 已报工
pmoSerialNoVO1.setFsnsrc(2);// 序列号来源 2=手工录入;
pmoSerialNoVO1.setDr(0);
this.doAddSave(pmoSerialNoVO1, headVO, pmoItemVO);
}

View File

@ -207,18 +207,31 @@ public class PMOFillSNPkAndCodeRule implements IRule<PMOAggVO> {
if (MMValueCheck.isNotEmpty(pkOrg)) {
try {
String orgCode = MyHelper.transferField(OrgVO.getDefaultTableName(), OrgVO.CODE, OrgVO.PK_ORG, pkOrg);
Map<String, String> configParams = MyHelper.getConfigParams("Dldz-config", null);
if (!MyHelper.checkIfDldzOrg(orgCode, configParams)) {
if ("C030".equals(orgCode)) {
// ½»Ò×ÀàÐͱàÂë
String vtrantypecode = headVO.getVtrantypecode();
Set<String> billTypeCodes = Set.of(
"55A2-Cxx-01", "55A2-Cxx-18"
"55A2-Cxx-01"
);
// 电力电子集团下的-期初订单不填充序列号
// 箱变下的-期初订单不填充序列号
if (billTypeCodes.contains(vtrantypecode)) {
return;
}
} else {
Map<String, String> configParams = MyHelper.getConfigParams("Dldz-config", null);
if (!MyHelper.checkIfDldzOrg(orgCode, configParams)) {
// 交易类型编码
String vtrantypecode = headVO.getVtrantypecode();
Set<String> billTypeCodes = Set.of(
"55A2-Cxx-01", "55A2-Cxx-18"
);
// 电力电子集团下的-期初订单不填充序列号
if (billTypeCodes.contains(vtrantypecode)) {
return;
}
}
}
} catch (BusinessException e) {
Logger.error("fillPMOGrandSNVoValues-exp = " + e.getMessage());
}