md
This commit is contained in:
parent
73e9c67b88
commit
88c33e4e8d
@ -613,6 +613,11 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 已开票总金额
|
||||||
|
BigDecimal hasOpenBillSumMoney=BigDecimal.ZERO;
|
||||||
|
// 不开票总金额
|
||||||
|
BigDecimal noOpenBillSumMoney=BigDecimal.ZERO;
|
||||||
|
|
||||||
// 获取账单运单列表,重新计算每一单的开票状态
|
// 获取账单运单列表,重新计算每一单的开票状态
|
||||||
List<EmisSettleSubBill> subBillList=emisSettleSubBillMapper.selectSubBillListBySettleBillNo(settleBillNo);
|
List<EmisSettleSubBill> subBillList=emisSettleSubBillMapper.selectSubBillListBySettleBillNo(settleBillNo);
|
||||||
for (EmisSettleSubBill subBill:subBillList) {
|
for (EmisSettleSubBill subBill:subBillList) {
|
||||||
@ -621,6 +626,9 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
|
|||||||
sumMoney=hasOpenBillMap.get(subBill.getBillNo());
|
sumMoney=hasOpenBillMap.get(subBill.getBillNo());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 已开票总金额累加
|
||||||
|
hasOpenBillSumMoney=hasOpenBillSumMoney.add(sumMoney);
|
||||||
|
|
||||||
EmisSettleSubBill updEmisSettleSubBill=new EmisSettleSubBill();
|
EmisSettleSubBill updEmisSettleSubBill=new EmisSettleSubBill();
|
||||||
updEmisSettleSubBill.setBillCode(subBill.getBillCode());
|
updEmisSettleSubBill.setBillCode(subBill.getBillCode());
|
||||||
updEmisSettleSubBill.setInvoicedMoney(sumMoney);
|
updEmisSettleSubBill.setInvoicedMoney(sumMoney);
|
||||||
@ -644,7 +652,6 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
|
|||||||
// 更新每一单的开票状态
|
// 更新每一单的开票状态
|
||||||
emisSettleSubBillMapper.updateOpenBillStatus(updEmisSettleSubBill);
|
emisSettleSubBillMapper.updateOpenBillStatus(updEmisSettleSubBill);
|
||||||
|
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
// 如果开票金额大于等于账单金额
|
// 如果开票金额大于等于账单金额
|
||||||
if (sumMoney.compareTo(subBill.getBillFee()) >= 0) {
|
if (sumMoney.compareTo(subBill.getBillFee()) >= 0) {
|
||||||
@ -652,6 +659,10 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
|
|||||||
updEmisSettleSubBill.setOpenBillStatus("1");
|
updEmisSettleSubBill.setOpenBillStatus("1");
|
||||||
// 更新每一单的开票状态
|
// 更新每一单的开票状态
|
||||||
emisSettleSubBillMapper.updateOpenBillStatus(updEmisSettleSubBill);
|
emisSettleSubBillMapper.updateOpenBillStatus(updEmisSettleSubBill);
|
||||||
|
}else{
|
||||||
|
|
||||||
|
// 不开票或开票完成金额累加
|
||||||
|
noOpenBillSumMoney=noOpenBillSumMoney.add(subBill.getBillFee().subtract(sumMoney));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -676,13 +687,9 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
|
|||||||
Map noNeedOpenBillMap=emisSettleSubBillMapper.getNoNeedOpenBillSum(settleBillNo);
|
Map noNeedOpenBillMap=emisSettleSubBillMapper.getNoNeedOpenBillSum(settleBillNo);
|
||||||
BigDecimal totalNoNeedMoney=BigDecimal.ZERO;
|
BigDecimal totalNoNeedMoney=BigDecimal.ZERO;
|
||||||
if(noNeedOpenBillMap!=null){
|
if(noNeedOpenBillMap!=null){
|
||||||
|
totalNoNeedMoney=new BigDecimal(noNeedOpenBillMap.get("totalNoNeed").toString());
|
||||||
totalAllMoney=totalAllMoney.add(totalMoney);
|
totalAllMoney=totalAllMoney.add(totalMoney);
|
||||||
Integer totalCnt=Integer.valueOf(noNeedOpenBillMap.get("totalCnt").toString());
|
totalAllMoney=totalAllMoney.add(totalNoNeedMoney);
|
||||||
if(totalCnt>0){
|
|
||||||
totalNoNeedMoney=BigDecimal.valueOf(Double.valueOf(noNeedOpenBillMap.get("totalNoNeed").toString()).doubleValue());
|
|
||||||
totalAllMoney=totalAllMoney.add(totalNoNeedMoney);
|
|
||||||
}
|
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
totalAllMoney=totalMoney;
|
totalAllMoney=totalMoney;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -438,7 +438,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
|
|
||||||
<select id="getNoNeedOpenBillSum" parameterType="String" resultType="map">
|
<select id="getNoNeedOpenBillSum" parameterType="String" resultType="map">
|
||||||
select
|
select
|
||||||
round(sum(bill_fee-invoiced_money),2) as totalNoNeed,count(1) as totalCnt
|
IFNULL(round(sum(bill_fee-invoiced_money),2),0) as totalNoNeed,count(1) as totalCnt
|
||||||
from emis_settle_sub_bill
|
from emis_settle_sub_bill
|
||||||
where del_flag='0' and open_bill_status in('3','4') and `settle_bill_no`=#{settleBillNo}
|
where del_flag='0' and open_bill_status in('3','4') and `settle_bill_no`=#{settleBillNo}
|
||||||
</select>
|
</select>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user