yonge 3 năm trước cách đây
mục cha
commit
f3b2a8c0c6

+ 8 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/PayServiceImpl.java

@@ -307,10 +307,17 @@ public class PayServiceImpl implements PayService {
 									/*tempBalance = balanceAmount.multiply(spod.getPrice()).divide(totalAmout).multiply(groupPurchaseAmount)
 											.divide(totalGroupPurchaseAmount);*/
 									tempBalance = balanceAmount.multiply(spod.getPrice()).multiply(groupPurchaseAmount)
-											.divide(totalGroupPurchaseAmount.multiply(totalAmout), BigDecimal.ROUND_DOWN).setScale(2, BigDecimal.ROUND_DOWN);
+											.divide(totalGroupPurchaseAmount.multiply(totalAmout), BigDecimal.ROUND_UP).setScale(2, BigDecimal.ROUND_UP);
+									
+									if(subBalance.add(tempBalance).compareTo(balanceAmount) > 0){
+										tempBalance = balanceAmount.subtract(subBalance);
+									}
 									subBalance = subBalance.add(tempBalance);
 								}
 								tempCashAmount = spod.getPrice().subtract(tempBalance).multiply(groupPurchaseAmount).divide(totalGroupPurchaseAmount, BigDecimal.ROUND_DOWN).setScale(2, BigDecimal.ROUND_DOWN);
+								if(subCashAmount.add(tempCashAmount).compareTo(amount) > 0){
+									tempCashAmount = amount.subtract(subCashAmount);
+								}
 								subCashAmount = subCashAmount.add(tempCashAmount);
 								spod.setIncomeItem(OrderDetailTypeEnum.CLOUD_TEACHER.name());
 								spod.setIncome(tempCashAmount);