选择付款单带出可结算金额
This commit is contained in:
parent
343d7c0882
commit
f05ba6bb07
|
|
@ -29,10 +29,7 @@ import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||||
import kd.bos.servicehelper.user.UserServiceHelper;
|
import kd.bos.servicehelper.user.UserServiceHelper;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Date;
|
|
||||||
import java.util.EventObject;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 采购订单界面插件
|
* 采购订单界面插件
|
||||||
|
|
@ -82,12 +79,48 @@ public class PurorderEntryIntroPaybillPlugin extends AbstractBillPlugIn implemen
|
||||||
int rowIndex = selectRows[0];
|
int rowIndex = selectRows[0];
|
||||||
ListSelectedRow listSelectedRow = ((ListSelectedRowCollection) returnData).get(0);
|
ListSelectedRow listSelectedRow = ((ListSelectedRowCollection) returnData).get(0);
|
||||||
DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(listSelectedRow.toString(), "cas_paybill");
|
DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(listSelectedRow.toString(), "cas_paybill");
|
||||||
BigDecimal unsettleamount = dynamicObject.getBigDecimal("unsettleamount");
|
if (null != dynamicObject) {
|
||||||
|
//查询非当前订单,已提交已审核的订单
|
||||||
|
DynamicObject[] pm_purorderbills = BusinessDataServiceHelper.load("pm_purorderbill",
|
||||||
|
"id,billno,purbillentry_pay.tqq9_paybillno,purbillentry_pay.isprepay,purbillentry_pay.tqq9_settleamount"
|
||||||
|
, new QFilter[]{new QFilter("purbillentry_pay.tqq9_paybillno", QCP.in, dynamicObject.getString("billno"))
|
||||||
|
, new QFilter("billno", QCP.not_equals, this.getModel().getValue("billno"))
|
||||||
|
, new QFilter("billstatus", QCP.in, new String[]{"B", "C"})});
|
||||||
|
//历史采购订单的付款单map
|
||||||
|
Map<String, BigDecimal> settleMap = new HashMap<>();
|
||||||
|
if (null != pm_purorderbills && pm_purorderbills.length > 0) {
|
||||||
|
for (DynamicObject pm_purorderbill : pm_purorderbills) {
|
||||||
|
DynamicObjectCollection purbillentry_pay = pm_purorderbill.getDynamicObjectCollection("purbillentry_pay");
|
||||||
|
for (DynamicObject object : purbillentry_pay) {
|
||||||
|
boolean isprepay = object.getBoolean("isprepay");//是否预付
|
||||||
|
if (isprepay) {
|
||||||
|
String tqq9_paybillno = object.getString("tqq9_paybillno");//付款处理单
|
||||||
|
if (kd.bos.util.StringUtils.isNotEmpty(tqq9_paybillno)) {
|
||||||
|
BigDecimal tqq9_settleamount = object.getBigDecimal("tqq9_settleamount") == null
|
||||||
|
? BigDecimal.ZERO : object.getBigDecimal("tqq9_settleamount");//本次结算金额
|
||||||
|
if (!settleMap.containsKey(tqq9_paybillno)) {
|
||||||
|
settleMap.put(tqq9_paybillno, tqq9_settleamount);
|
||||||
|
} else {
|
||||||
|
BigDecimal bigDecimal = settleMap.get(tqq9_paybillno);
|
||||||
|
settleMap.put(tqq9_paybillno, tqq9_settleamount.add(bigDecimal));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
model.setValue("tqq9_paybillno", dynamicObject.getString("billno"));//付款单
|
BigDecimal actpayamt = dynamicObject.getBigDecimal("actpayamt") == null
|
||||||
model.setValue("joinpayamount", unsettleamount, rowIndex);//关联付款金额
|
? BigDecimal.ZERO : dynamicObject.getBigDecimal("actpayamt");//付款金额
|
||||||
model.setValue("paidamount", unsettleamount, rowIndex);//已付金额
|
String casPayBillNo = dynamicObject.getString("billno");
|
||||||
model.setValue("tqq9_settleamount", unsettleamount, rowIndex);//本次结算金额
|
BigDecimal settleamount = settleMap.get(casPayBillNo) == null ? BigDecimal.ZERO : settleMap.get(casPayBillNo);//历史已结算金额
|
||||||
|
BigDecimal leftAmount = actpayamt.subtract(settleamount);//剩余结算金额
|
||||||
|
|
||||||
|
model.setValue("tqq9_paybillno", dynamicObject.getString("billno"));//付款单
|
||||||
|
model.setValue("joinpayamount", leftAmount, rowIndex);//关联付款金额
|
||||||
|
model.setValue("paidamount", leftAmount, rowIndex);//已付金额
|
||||||
|
model.setValue("tqq9_settleamount", leftAmount, rowIndex);//本次结算金额
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue