This commit is contained in:
linfso 2025-01-10 09:42:45 +08:00
parent 24072e527a
commit 75ec3951c8
2 changed files with 29 additions and 27 deletions

View File

@ -492,11 +492,13 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
BigDecimal totalMoney = BigDecimal.ZERO;
// 所有开票金额 = 已开票金额+不开票金额
BigDecimal totalAllMoney = BigDecimal.ZERO;
// 已开票金额计算
Map<String,BigDecimal> hasOpenBillMap = new HashMap<String,BigDecimal>();
// 获取运单已经开票记录 // 查询关联的运单表
List<Map> listRel=emisSettleInvoiceRelMapper.selectHasOpenInvoiceMapList(settleBillNo);
if(!CollectionUtils.isEmpty(listRel)) {
Map<String,BigDecimal> hasOpenBillMap = new HashMap<String,BigDecimal>();
// 已收款金额list转map
for (Map mapItem:listRel) {
String billNo= MapUtils.getString(mapItem,"billNo",null);
@ -505,37 +507,37 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
totalMoney=totalMoney.add(sumMoney);
}
}
// 获取账单运单列表,重新计算每一单的开票状态
List<EmisSettleSubBill> subBillList=emisSettleSubBillMapper.selectSubBillListBySettleBillNo(settleBillNo);
for (EmisSettleSubBill subBill:subBillList) {
BigDecimal sumMoney=BigDecimal.ZERO;
if(hasOpenBillMap.containsKey(subBill.getBillNo())){
sumMoney=hasOpenBillMap.get(subBill.getBillNo());
}
// 获取账单运单列表,重新计算每一单的开票状态
List<EmisSettleSubBill> subBillList=emisSettleSubBillMapper.selectSubBillListBySettleBillNo(settleBillNo);
for (EmisSettleSubBill subBill:subBillList) {
BigDecimal sumMoney=BigDecimal.ZERO;
if(hasOpenBillMap.containsKey(subBill.getBillNo())){
sumMoney=hasOpenBillMap.get(subBill.getBillNo());
}
EmisSettleSubBill updEmisSettleSubBill=new EmisSettleSubBill();
updEmisSettleSubBill.setBillCode(subBill.getBillCode());
updEmisSettleSubBill.setInvoicedMoney(sumMoney);
EmisSettleSubBill updEmisSettleSubBill=new EmisSettleSubBill();
updEmisSettleSubBill.setBillCode(subBill.getBillCode());
updEmisSettleSubBill.setInvoicedMoney(sumMoney);
if(!"3".equals(subBill.getOpenBillStatus())&&!"4".equals(subBill.getOpenBillStatus())) {
if (sumMoney.compareTo(BigDecimal.ZERO) == 0) {
updEmisSettleSubBill.setOpenBillStatus("0");
} else {
if (sumMoney.compareTo(subBill.getBillFee()) >= 0) {
updEmisSettleSubBill.setOpenBillStatus("1");
} else {
updEmisSettleSubBill.setOpenBillStatus("2");
}
}
// 更新每一单的开票状态
emisSettleSubBillMapper.updateOpenBillStatus(updEmisSettleSubBill);
}else{
// 如果开票金额大于等于账单金额
if(!"3".equals(subBill.getOpenBillStatus())&&!"4".equals(subBill.getOpenBillStatus())) {
if (sumMoney.compareTo(BigDecimal.ZERO) == 0) {
updEmisSettleSubBill.setOpenBillStatus("0");
} else {
if (sumMoney.compareTo(subBill.getBillFee()) >= 0) {
updEmisSettleSubBill.setOpenBillStatus("1");
} else {
updEmisSettleSubBill.setOpenBillStatus("2");
}
}
// 更新每一单的开票状态
emisSettleSubBillMapper.updateOpenBillStatus(updEmisSettleSubBill);
}else{
// 如果开票金额大于等于账单金额
if (sumMoney.compareTo(subBill.getBillFee()) >= 0) {
updEmisSettleSubBill.setOpenBillStatus("1");
}
}
}

View File

@ -188,7 +188,7 @@ public class EmisSettleInvoiceRecordServiceImpl extends EmisBaseService implemen
String empName=getCurrentUser().getEmpName();
String title=empName+"提交了开票申请,开票抬头:"+emisSettleInvoiceRecord.getCompanyName()+",开票金额:"+emisSettleInvoiceRecord.getApplyMoney()+",请及时开票!";
sendNoticeToEmpUser("padmin,88888042,88888047,88888034", title, "", "/ruyERj/CenterInvoiceRecordDeal");
sendNoticeToEmpUser("88888042,88888047,88888034", title, "", "/ruyERj/CenterInvoiceRecordDeal");
return 1;
}