单价未计算,增加联动计算

This commit is contained in:
mzr 2025-03-26 11:18:10 +08:00
parent a27ed436ab
commit 8722edd8b4
1 changed files with 6 additions and 0 deletions

View File

@ -22,6 +22,7 @@ import nc.vo.pubapp.AppContext;
import nc.vo.pubapp.pattern.exception.ExceptionUtils; import nc.vo.pubapp.pattern.exception.ExceptionUtils;
import nc.vo.pubapp.pflow.PfUserObject; import nc.vo.pubapp.pflow.PfUserObject;
import nc.vo.scmpub.check.billvalidate.BillVOsCheckRule; import nc.vo.scmpub.check.billvalidate.BillVOsCheckRule;
import nc.vo.scmpub.fill.pricemny.INumPriceMnyCalculator;
import nc.vo.scmpub.res.billtype.SOBillType; import nc.vo.scmpub.res.billtype.SOBillType;
import nc.vo.scmpub.util.StringUtil; import nc.vo.scmpub.util.StringUtil;
import nc.vo.so.m30.entity.SaleOrderBVO; import nc.vo.so.m30.entity.SaleOrderBVO;
@ -36,6 +37,7 @@ import nc.vo.so.pub.keyvalue.VOKeyValue;
import nc.vo.so.pub.util.AggVOUtil; import nc.vo.so.pub.util.AggVOUtil;
import nc.vo.so.pub.util.SOCurrencyUtil; import nc.vo.so.pub.util.SOCurrencyUtil;
import nccloud.api.impl.so.m30.check.SaleOrderValidator; import nccloud.api.impl.so.m30.check.SaleOrderValidator;
import nccloud.api.impl.so.m30.fill.SaleOrderNPriceMnyCal;
import nccloud.api.impl.so.m30.fill.SaleOrderSaveFillValue; import nccloud.api.impl.so.m30.fill.SaleOrderSaveFillValue;
import nccloud.api.so.m30.IAPISaleOrderMaitain; import nccloud.api.so.m30.IAPISaleOrderMaitain;
import nccloud.baseapp.core.log.NCCForUAPLogger; import nccloud.baseapp.core.log.NCCForUAPLogger;
@ -296,6 +298,9 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
addBvo(combinBillVOs, paramList); addBvo(combinBillVOs, paramList);
} }
} }
// 联动计算
INumPriceMnyCalculator cal = new SaleOrderNPriceMnyCal<SaleOrderVO>(combinBillVOs);
cal.calculate();
for (SaleOrderVO vo : combinBillVOs) { for (SaleOrderVO vo : combinBillVOs) {
SaleOrderHVO hvo = vo.getParentVO(); SaleOrderHVO hvo = vo.getParentVO();
SaleOrderHVO originHvo = null; SaleOrderHVO originHvo = null;
@ -833,6 +838,7 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
} }
SaleOrderBVO[] bvos = oldVO.getChildrenVO(); SaleOrderBVO[] bvos = oldVO.getChildrenVO();
List<SaleOrderBVO> bvoList = new ArrayList<>(Arrays.asList(bvos)); List<SaleOrderBVO> bvoList = new ArrayList<>(Arrays.asList(bvos));
// 添加新增行
bvoList.addAll(newBvoList); bvoList.addAll(newBvoList);
SaleOrderBVO[] array = bvoList.toArray(new SaleOrderBVO[0]); SaleOrderBVO[] array = bvoList.toArray(new SaleOrderBVO[0]);
oldVO.setChildrenVO(array); oldVO.setChildrenVO(array);