From caf2f1723139a9adbb3dd65e45edd1ddf5b06f0b Mon Sep 17 00:00:00 2001 From: ljw <ljw@yunemao.com> Date: Fri, 22 Nov 2024 15:14:14 +0800 Subject: [PATCH] =?UTF-8?q?fix:=201.=E5=AF=84=E5=8D=95=E6=94=BE=E5=8D=95?= =?UTF-8?q?=E7=94=B3=E8=AF=B7=E6=8F=90=E4=BA=A4=E6=8B=BC=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/ExportPresentSubmitOp.java | 52 ++++++++++++++++--- 1 file changed, 44 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/yem/wm/es/exportpresent/op/ExportPresentSubmitOp.java b/src/main/java/com/yem/wm/es/exportpresent/op/ExportPresentSubmitOp.java index 60a20ae5..cb26f348 100644 --- a/src/main/java/com/yem/wm/es/exportpresent/op/ExportPresentSubmitOp.java +++ b/src/main/java/com/yem/wm/es/exportpresent/op/ExportPresentSubmitOp.java @@ -2,9 +2,20 @@ package com.yem.wm.es.exportpresent.op; import com.yem.wm.es.exportpresent.validator.ExportPresentSubmitValidator; import com.yem.wm.es.exportpresent.validator.ExportPresentSubmitsValidator; +import com.yem.wm.es.shippingdetails.util.PaymentControlUtil; +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.entity.plugin.AbstractOperationServicePlugIn; import kd.bos.entity.plugin.AddValidatorsEventArgs; -import kd.bos.entity.plugin.PreparePropertysEventArgs; +import kd.bos.entity.plugin.args.EndOperationTransactionArgs; +import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.operation.SaveServiceHelper; + +import java.math.BigDecimal; +import java.math.RoundingMode; + +import static com.yem.wm.es.contractamtlist.util.FunUtil.getPayBills; +import static com.yem.wm.es.contractamtlist.util.FunUtil.getShipBills; /** * @Description 寄单放单申请提交 @@ -12,17 +23,42 @@ import kd.bos.entity.plugin.PreparePropertysEventArgs; * @Created by ZZSLL */ -public class ExportPresentSubmitOp extends AbstractOperationServicePlugIn { - public void onPreparePropertys(PreparePropertysEventArgs e) { - super.onPreparePropertys(e); - e.getFieldKeys().addAll(this.billEntityType.getAllFields().keySet()); - } - +public class ExportPresentSubmitOp extends AbstractOperationServicePlugIn +{ @Override - public void onAddValidators(AddValidatorsEventArgs e) { + public void onAddValidators(AddValidatorsEventArgs e) + { super.onAddValidators(e); e.addValidator(new ExportPresentSubmitValidator()); e.addValidator(new ExportPresentSubmitsValidator()); } + @Override + public void endOperationTransaction(EndOperationTransactionArgs e) + { + super.endOperationTransaction(e); + DynamicObject[] eDataEntities = e.getDataEntities(); + String operationKey = e.getOperationKey(); + if ("submit".equals(operationKey)) { + for (DynamicObject dataEntity : eDataEntities) { + DynamicObjectCollection collection = dataEntity.getDynamicObjectCollection("yem_es_exportpre_erf"); + for (DynamicObject dynamicObject : collection) { + DynamicObject saleOrder = dynamicObject.getDynamicObject("yem_saleorder"); + if (saleOrder == null) continue; + DynamicObject shipDetail = dynamicObject.getDynamicObject("yem_shipbill"); + if (shipDetail == null) continue; + shipDetail = BusinessDataServiceHelper.loadSingle(shipDetail.getPkValue(), shipDetail.getDataEntityType().getName()); + saleOrder = BusinessDataServiceHelper.loadSingle(saleOrder.getPkValue(), saleOrder.getDataEntityType().getName()); + DynamicObject[] shipBills = getShipBills(saleOrder, dataEntity, "A");//出运 + DynamicObject[] payBills = getPayBills(saleOrder, dataEntity, "B");//收款单 + + BigDecimal thisRealityAmt = PaymentControlUtil.getThisRealityAmt(saleOrder, shipBills, payBills, shipDetail); + dynamicObject.set("yem_debtamt", thisRealityAmt.setScale(2, RoundingMode.HALF_UP)); + } + String yemDetailordernumber = dataEntity.getString("yem_detailordernumber"); + dataEntity.set("yem_cloudhousetitle","寄单放单申请-"+yemDetailordernumber); + } + SaveServiceHelper.save(eDataEntities); + } + } }