This commit is contained in:
linfso 2025-06-18 07:18:02 +08:00
parent 490adc639b
commit 674ba8f6fd

View File

@ -438,36 +438,45 @@ public class EmisSettleSubBillController extends EmisBaseController
非特殊报价和一口价
*/
EmisSettleSubBill emisSettleSubBill = new EmisSettleSubBill();
EmisSettleSubBill updSubBillBySite = new EmisSettleSubBill();
updSubBillBySite.setId(id);
updSubBillBySite.setConfirmSiteManCode(getLoginUser().getUser().getEmpCode());
updSubBillBySite.setConfirmSiteCode(getLoginUser().getUser().getOwnerSiteCode());
emisBaseService.confirmBillBySite(updSubBillBySite);
// 判断非特殊报价和一口价
EmisWaybill waybill=emisBaseService.getWaybillByBillCode(old.getBillNo());
if( "3".equals(waybill.getCalcFeeType()) ) {
if (waybill.getFreight().compareTo(waybill.getRealFee()) > 0) {
if( !"3".equals(waybill.getCalcFeeType()) && !"1".equals(waybill.getBlSpecialQuote()) ) {
if (waybill.getFreight().compareTo(waybill.getRealFee()) >= 0) {
EmisSettleSubBill updSubBillByCenter = new EmisSettleSubBill();
updSubBillByCenter.setConfirmCenterManCode("1");
updSubBillByCenter.setConfirmCenterCode("88888");
updSubBillByCenter.setConfirmCenterNote("运费>=标准报价-触发财务自动确认");
updSubBillByCenter.setId(id);
emisBaseService.confirmBillByCenter(updSubBillByCenter);
// 判断账单是否已经被合并,若被合并则需要重新计算费用
// 重新计算总账单费用
// 获取账单是否已经被合并,若合并则更新账单费用
if(!StringUtils.isEmpty(old.getSettleBillNo())) {
EmisSettleBill oldSettleBill=emisSettleBillService.selectEmisSettleBillBySettleBillNo(old.getSettleBillNo());
if(oldSettleBill!=null) {
// 重新计算账单费用,计算开票状态,计算收款状态
emisSettleBillService.reCalcSettleBillFee(oldSettleBill);
emisSettleBillService.reCalcSettleBillInvoiceStatus(old.getSettleBillNo());
emisSettleBillService.reCalcSettleBillPayStatus(old.getSettleBillNo());
}
}
}
}
emisSettleSubBill.setId(id);
emisSettleSubBill.setConfirmSiteManCode(getLoginUser().getUser().getEmpCode());
emisSettleSubBill.setConfirmSiteCode(getLoginUser().getUser().getOwnerSiteCode());
// 获取运单费用
// if(old.getBillFee())
emisBaseService.confirmBillBySite(emisSettleSubBill);
}catch (Exception ex){
ex.printStackTrace();