Bläddra i källkod

fix

release_toaliyun_real
winter 1 år sedan
förälder
incheckning
f1492d4042
1 ändrade filer med 12 tillägg och 14 borttagningar
  1. +12
    -14
      mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java

+ 12
- 14
mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java Visa fil

@@ -629,8 +629,8 @@ public class WxFinanceServiceImpl implements WxFinanceService {
if (moneyDecimal.compareTo(new BigDecimal(0)) <= 0 ) { if (moneyDecimal.compareTo(new BigDecimal(0)) <= 0 ) {
return ; return ;
} }
for (int i = 0 ; i < receivePayWayList.size(); i ++) {
WxFinanceReceivePayway payway = receivePayWayList.get(i);
while (receivePayWayList.size() > 0 ) {
WxFinanceReceivePayway payway = receivePayWayList.get(0);
//能够覆盖账单金额 //能够覆盖账单金额
if (moneyDecimal.compareTo(new BigDecimal(payway.getReceive())) <= 0 ) { if (moneyDecimal.compareTo(new BigDecimal(payway.getReceive())) <= 0 ) {
//创建一个实收款单关联 //创建一个实收款单关联
@@ -638,18 +638,17 @@ public class WxFinanceServiceImpl implements WxFinanceService {
sb.append(payway.getPayWayName()).append("收款").append(moneyDecimal.toPlainString()).append(","); sb.append(payway.getPayWayName()).append("收款").append(moneyDecimal.toPlainString()).append(",");
BigDecimal remain = new BigDecimal(payway.getReceive()).subtract(moneyDecimal); BigDecimal remain = new BigDecimal(payway.getReceive()).subtract(moneyDecimal);
if (remain.compareTo(new BigDecimal(0))==0) { if (remain.compareTo(new BigDecimal(0))==0) {
receivePayWayList.remove(i);
receivePayWayList.remove(0);
}else { }else {
payway.setReceive(remain.toPlainString()); payway.setReceive(remain.toPlainString());
} }
break;
return;
}else { }else {
//创建一个实收款单关联 //创建一个实收款单关联
createFinanceReceiveBill(addreceive,bill,payway.getReceive(),null,payway.getPayWay()); createFinanceReceiveBill(addreceive,bill,payway.getReceive(),null,payway.getPayWay());
sb.append(payway.getPayWayName()).append("收款").append(payway.getReceive()).append(","); sb.append(payway.getPayWayName()).append("收款").append(payway.getReceive()).append(",");
receivePayWayList.remove(i);
BigDecimal needlat = moneyDecimal.subtract(new BigDecimal(payway.getReceive()));
calcuteReceiveMoney(sb,addreceive,bill,receivePayWayList,needlat);
receivePayWayList.remove(0);
moneyDecimal = moneyDecimal.subtract(new BigDecimal(payway.getReceive()));
} }
} }
} }
@@ -875,8 +874,8 @@ public class WxFinanceServiceImpl implements WxFinanceService {
if (moneyDecimal.compareTo(new BigDecimal(0)) <= 0 ) { if (moneyDecimal.compareTo(new BigDecimal(0)) <= 0 ) {
return ; return ;
} }
for (int i = 0 ; i < receivePayWayList.size(); i ++) {
WxFinanceReceivePayway payway = receivePayWayList.get(i);
while (receivePayWayList.size() > 0 ) {
WxFinanceReceivePayway payway = receivePayWayList.get(0);
//能够覆盖账单金额 //能够覆盖账单金额
if (moneyDecimal.compareTo(new BigDecimal(payway.getReceive())) <= 0 ) { if (moneyDecimal.compareTo(new BigDecimal(payway.getReceive())) <= 0 ) {
//创建一个实收款单关联 //创建一个实收款单关联
@@ -884,18 +883,17 @@ public class WxFinanceServiceImpl implements WxFinanceService {
sb.append(payway.getPayWayName()).append("付款").append(moneyDecimal.toPlainString()).append(","); sb.append(payway.getPayWayName()).append("付款").append(moneyDecimal.toPlainString()).append(",");
BigDecimal remain = new BigDecimal(payway.getReceive()).subtract(moneyDecimal); BigDecimal remain = new BigDecimal(payway.getReceive()).subtract(moneyDecimal);
if (remain.compareTo(new BigDecimal(0))==0) { if (remain.compareTo(new BigDecimal(0))==0) {
receivePayWayList.remove(i);
receivePayWayList.remove(0);
}else { }else {
payway.setReceive(remain.toPlainString()); payway.setReceive(remain.toPlainString());
} }
break;
return;
}else { }else {
//创建一个实收款单关联 //创建一个实收款单关联
createFinanceReceiveBill(addreceive,bill,null,payway.getReceive(),payway.getPayWay()); createFinanceReceiveBill(addreceive,bill,null,payway.getReceive(),payway.getPayWay());
sb.append(payway.getPayWayName()).append("付款").append(payway.getReceive()).append(","); sb.append(payway.getPayWayName()).append("付款").append(payway.getReceive()).append(",");
receivePayWayList.remove(i);
BigDecimal needlat = moneyDecimal.subtract(new BigDecimal(payway.getReceive()));
calcutePayMoney(sb,addreceive,bill,receivePayWayList,needlat);
receivePayWayList.remove(0);
moneyDecimal = moneyDecimal.subtract(new BigDecimal(payway.getReceive()));
} }
} }
} }


Laddar…
Avbryt
Spara