From 6116504b6ccdd1744442ed3fc63f635ebac7ff8b Mon Sep 17 00:00:00 2001 From: sez Date: Wed, 3 Dec 2025 14:50:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BE=9B=E5=BA=94=E5=95=86=E5=8F=91=E7=94=9F?= =?UTF-8?q?=E6=94=B9=E5=8F=98=EF=BC=8C=E5=8E=86=E5=8F=B2=E6=9C=AA=E5=88=B0?= =?UTF-8?q?=E8=B4=A6=E4=BD=99=E9=A2=9D=EF=BC=8C=E5=8E=86=E5=8F=B2=E6=9C=AA?= =?UTF-8?q?=E5=88=B0=E8=B4=A6=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/pm/PurorderCalculateBillPlugin.java | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/lc123/cloud/app/plugin/form/pm/PurorderCalculateBillPlugin.java b/lc123/cloud/app/plugin/form/pm/PurorderCalculateBillPlugin.java index 7420c0c..c8a0068 100644 --- a/lc123/cloud/app/plugin/form/pm/PurorderCalculateBillPlugin.java +++ b/lc123/cloud/app/plugin/form/pm/PurorderCalculateBillPlugin.java @@ -28,23 +28,27 @@ public class PurorderCalculateBillPlugin extends AbstractBillPlugIn { BigDecimal totalCount = BigDecimal.ZERO; DynamicObject supplier = (DynamicObject) newValue; if (null != supplier) { + //查询已审核未关闭非克隆(上游单据编号为空)数量-到货数量、有优惠有返利含税单价*(数量-到货数量) + // 查询正常的采购订单 总额,总数量 QFilter f1 = new QFilter("supplier.id", "=", supplier.getPkValue()); - QFilter f2 = new QFilter("billstatus", "=", "C");//已审核的订单 + QFilter f2 = new QFilter("billstatus", "=", "C");//已审核 QFilter f3 = new QFilter("closestatus", "=", "A");//关闭状态正常 - QFilter f4 = new QFilter("billentry.rowterminatestatus", "=", "A");//行终止状态正常 - DynamicObject[] pmBillArr = BusinessDataServiceHelper.load("pm_purorderbill", - "id,billno,totalamount,billentry.qty,billentry.invqty,billentry.tqq9_disandrefoundprice", + QFilter f4 = new QFilter("tqq9_sourcebillno", "=", "");//上游单据编号为空 + DynamicObject[] pmBillArr = BusinessDataServiceHelper.load("pm_receiptnotice", + "id,billno,supplier,billentry.qty,billentry.tqq9_dhsl,billentry.tqq9_yyhyflje,tqq9_sourcebillno", new QFilter[]{f1, f2, f3, f4}); for (DynamicObject bill : pmBillArr) { + //String billno = bill.getString("billno"); + //String tqq9_sourcebillno = bill.getString("tqq9_sourcebillno"); DynamicObjectCollection entries = bill.getDynamicObjectCollection("billentry"); for (DynamicObject entry : entries) { BigDecimal qty = entry.getBigDecimal("qty") == null ? BigDecimal.ZERO : entry.getBigDecimal("qty");//数量 - BigDecimal invqty = entry.getBigDecimal("invqty") == null ? BigDecimal.ZERO : entry.getBigDecimal("invqty");//已入库数量 - BigDecimal wrkqty = qty.subtract(invqty);//未入库数量 + BigDecimal tqq9_dhsl = entry.getBigDecimal("tqq9_dhsl") == null ? BigDecimal.ZERO : entry.getBigDecimal("tqq9_dhsl");//到货数量 + BigDecimal wrkqty = qty.subtract(tqq9_dhsl);//未入库数量 totalCount = totalCount.add(wrkqty); - BigDecimal tqq9_disandrefoundprice = entry.getBigDecimal("tqq9_disandrefoundprice") == null ? - BigDecimal.ZERO : entry.getBigDecimal("tqq9_disandrefoundprice");//有优惠有返利含税单价 + BigDecimal tqq9_disandrefoundprice = entry.getBigDecimal("tqq9_yyhyflje") == null ? + BigDecimal.ZERO : entry.getBigDecimal("tqq9_yyhyflje");//有优惠有返利含税单价 BigDecimal wrkAmount = tqq9_disandrefoundprice.multiply(wrkqty); totalAmount = totalAmount.add(wrkAmount); }