采购订单计算 供应商发生改变,历史未到账余额,历史未到账数量
This commit is contained in:
parent
bb414e7989
commit
ef054ecb62
|
|
@ -31,30 +31,25 @@ public class PurorderCalculateBillPlugin extends AbstractBillPlugIn {
|
||||||
// 查询正常的采购订单 总额,总数量
|
// 查询正常的采购订单 总额,总数量
|
||||||
QFilter f1 = new QFilter("supplier.id", "=", supplier.getPkValue());
|
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 f3 = new QFilter("closestatus", "=", "A");//关闭状态正常
|
||||||
|
QFilter f4 = new QFilter("billentry.rowterminatestatus", "=", "A");//行终止状态正常
|
||||||
DynamicObject[] pmBillArr = BusinessDataServiceHelper.load("pm_purorderbill",
|
DynamicObject[] pmBillArr = BusinessDataServiceHelper.load("pm_purorderbill",
|
||||||
"id,billno,totalamount,billentry.qty",
|
"id,billno,totalamount,billentry.qty,billentry.invqty,billentry.tqq9_disandrefoundprice",
|
||||||
new QFilter[]{f1, f2, f3});
|
new QFilter[]{f1, f2, f3, f4});
|
||||||
for (DynamicObject bill : pmBillArr) {
|
for (DynamicObject bill : pmBillArr) {
|
||||||
totalAmount = totalAmount.add(bill.getBigDecimal("totalamount"));
|
|
||||||
DynamicObjectCollection entries = bill.getDynamicObjectCollection("billentry");
|
DynamicObjectCollection entries = bill.getDynamicObjectCollection("billentry");
|
||||||
for (DynamicObject entry : entries) {
|
for (DynamicObject entry : entries) {
|
||||||
totalCount = totalCount.add(entry.getBigDecimal("qty"));
|
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);//未入库数量
|
||||||
//查询采购入库单的总金额,总数量
|
totalCount = totalCount.add(wrkqty);
|
||||||
QFilter qf1 = new QFilter("supplier.id", "=", supplier.getPkValue());
|
BigDecimal tqq9_disandrefoundprice = entry.getBigDecimal("tqq9_disandrefoundprice") == null ?
|
||||||
QFilter qf2 = new QFilter("billstatus", "=", "C");
|
BigDecimal.ZERO : entry.getBigDecimal("tqq9_disandrefoundprice");//有优惠有返利含税单价
|
||||||
DynamicObject[] imBillArr = BusinessDataServiceHelper.load("im_purinbill",
|
BigDecimal wrkAmount = tqq9_disandrefoundprice.multiply(wrkqty);
|
||||||
"id,billno,billentry.qty,billentry.amountandtax",
|
totalAmount = totalAmount.add(wrkAmount);
|
||||||
new QFilter[]{qf1, qf2});
|
|
||||||
for (DynamicObject bill : imBillArr) {
|
|
||||||
DynamicObjectCollection entries = bill.getDynamicObjectCollection("billentry");
|
|
||||||
for (DynamicObject entry : entries) {
|
|
||||||
totalAmount = totalAmount.subtract(entry.getBigDecimal("amountandtax"));
|
|
||||||
totalCount = totalCount.subtract(entry.getBigDecimal("qty"));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
this.getModel().setValue("tqq9_lswdhje", totalAmount);
|
this.getModel().setValue("tqq9_lswdhje", totalAmount);
|
||||||
this.getModel().setValue("tqq9_lswdhsl", totalCount);
|
this.getModel().setValue("tqq9_lswdhsl", totalCount);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue