Преглед на файлове

Merge remote-tracking branch 'origin/dev1.0' into dev1.0

liutao преди 5 месеца
родител
ревизия
3019fcad11
променени са 1 файла, в които са добавени 6 реда и са изтрити 2 реда
  1. 6 2
      src/main/java/com/sunxung/factoring/service/ledger/impl/LedgerManagementServiceImpl.java

+ 6 - 2
src/main/java/com/sunxung/factoring/service/ledger/impl/LedgerManagementServiceImpl.java

@@ -1384,7 +1384,9 @@ public class LedgerManagementServiceImpl implements LedgerManagementService {
                                 if (surplusInterest.compareTo(BigDecimal.ZERO) != 0) {
                                     PaymentCollectionPlanFactoring lastInterestFactoring = getLastPrincipalFactoring(allPlanFactoringList, interestDict, lastPlanDate);
                                     if (lastInterestFactoring == null) {
-                                        ledgerPlanFactoringAssignList.add(addPlanFactoringInsertAssign(lastPlanDate, surplusInterest, BigDecimal.ZERO,
+                                        //这种场景可能存在未分配的利息,要删除
+                                        deleteUnAssignList(interestFactoringList, ledgerPlanFactoringAssignList, goodsAssignVo);
+                                        ledgerPlanFactoringAssignList.add(addPlanFactoringInsertAssign(ledgerDate, surplusInterest, BigDecimal.ZERO,
                                                 IncomeExpenditureTypeDict.ChildEnum.INTEREST.getCode(), goodsAssignVo, 0));
                                     } else {
                                         lastInterestFactoring.setAmount(surplusInterest);
@@ -1409,7 +1411,9 @@ public class LedgerManagementServiceImpl implements LedgerManagementService {
                                 if (surplusManagement.compareTo(BigDecimal.ZERO) != 0) {
                                     PaymentCollectionPlanFactoring lastManagementFactoring = getLastPrincipalFactoring(allPlanFactoringList, managementFeeDict, lastPlanDate);
                                     if (lastManagementFactoring == null) {
-                                        ledgerPlanFactoringAssignList.add(addPlanFactoringInsertAssign(lastPlanDate, surplusManagement, BigDecimal.ZERO,
+                                        //这种场景可能存在未分配的管理费,要删除
+                                        deleteUnAssignList(managementFeeFactoringList, ledgerPlanFactoringAssignList, goodsAssignVo);
+                                        ledgerPlanFactoringAssignList.add(addPlanFactoringInsertAssign(ledgerDate, surplusManagement, BigDecimal.ZERO,
                                                 IncomeExpenditureTypeDict.ChildEnum.MANAGEMENT_FEE.getCode(), goodsAssignVo, 0));
                                     } else {
                                         lastManagementFactoring.setAmount(surplusManagement);