入库单结算类型逻辑调整

This commit is contained in:
zhangzhiguo 2025-10-21 09:36:14 +08:00
parent b745cc37a2
commit 169f777d7a
1 changed files with 15 additions and 12 deletions

View File

@ -22,6 +22,7 @@ public class MaterialoutbillProcbsCkOp extends AbstractOperationServicePlugIn {
e.getFieldKeys().add("entryentity");
e.getFieldKeys().add("entryentity.procbs");
e.getFieldKeys().add("entryentity.zcgj_accounttype");
e.getFieldKeys().add("costtype");
}
@Override
@ -43,18 +44,20 @@ public class MaterialoutbillProcbsCkOp extends AbstractOperationServicePlugIn {
ExtendedDataEntity[] extendedDataEntities = this.getDataEntities();
for (ExtendedDataEntity extendedDataEntity : extendedDataEntities) {
DynamicObject dataEntity = extendedDataEntity.getDataEntity();
DynamicObjectCollection dynamicObjectCollection = dataEntity.getDynamicObjectCollection("entryentity");
int i=0;
for (DynamicObject dynamicObject : dynamicObjectCollection) {
i++;
DynamicObject accounttype = dynamicObject.getDynamicObject("zcgj_accounttype");
if(accounttype!=null){
String number = accounttype.getString("number");
if(key.contains(number)){
DynamicObject procbs = dynamicObject.getDynamicObject("procbs");
if(procbs==null){
this.addFatalErrorMessage(extendedDataEntity, String.format("出库单明细第%d行需要填写工序分摊",i));
String costtype = dataEntity.getString("costtype");
if("a".equals(costtype)){
DynamicObjectCollection dynamicObjectCollection = dataEntity.getDynamicObjectCollection("entryentity");
int i=0;
for (DynamicObject dynamicObject : dynamicObjectCollection) {
i++;
DynamicObject accounttype = dynamicObject.getDynamicObject("zcgj_accounttype");
if(accounttype!=null){
String number = accounttype.getString("number");
if(key.contains(number)){
DynamicObject procbs = dynamicObject.getDynamicObject("procbs");
if(procbs==null){
this.addFatalErrorMessage(extendedDataEntity, String.format("出库单明细第%d行需要填写工序分摊",i));
}
}
}
}