FINERACT-2200: Add "reversed" flag to LoanTransactionDataV1.avsc
This commit is contained in:
@@ -255,6 +255,14 @@
|
|||||||
"type": "map"
|
"type": "map"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"default": null,
|
||||||
|
"name": "reversed",
|
||||||
|
"type": [
|
||||||
|
"null",
|
||||||
|
"boolean"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
+5
@@ -31,5 +31,10 @@ public interface LoanTransactionDataMapper {
|
|||||||
@Mapping(target = "unpaidCharges", ignore = true)
|
@Mapping(target = "unpaidCharges", ignore = true)
|
||||||
@Mapping(target = "externalOwnerId", ignore = true)
|
@Mapping(target = "externalOwnerId", ignore = true)
|
||||||
@Mapping(target = "customData", ignore = true)
|
@Mapping(target = "customData", ignore = true)
|
||||||
|
@Mapping(target = "reversed", expression = "java(isReversed(source))")
|
||||||
LoanTransactionDataV1 map(LoanTransactionData source);
|
LoanTransactionDataV1 map(LoanTransactionData source);
|
||||||
|
|
||||||
|
default boolean isReversed(LoanTransactionData source) {
|
||||||
|
return source.isManuallyReversed() || source.getReversedOnDate() != null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
@@ -266,6 +266,7 @@ public class ExternalBusinessEventTest extends BaseLoanIntegrationTest {
|
|||||||
Assertions.assertEquals(42.0D, chargePaidBy.get("amount"));
|
Assertions.assertEquals(42.0D, chargePaidBy.get("amount"));
|
||||||
Assertions.assertEquals(chargeId.doubleValue(), chargePaidBy.get("chargeId"));
|
Assertions.assertEquals(chargeId.doubleValue(), chargePaidBy.get("chargeId"));
|
||||||
Assertions.assertEquals(transactionId.doubleValue(), chargePaidBy.get("transactionId"));
|
Assertions.assertEquals(transactionId.doubleValue(), chargePaidBy.get("transactionId"));
|
||||||
|
Assertions.assertFalse((Boolean) event.getPayLoad().get("reversed"));
|
||||||
|
|
||||||
// check that third part cannot post for that charge, because it already fully adjusted
|
// check that third part cannot post for that charge, because it already fully adjusted
|
||||||
Assertions.assertThrows(RuntimeException.class, () -> loanTransactionHelper.chargeAdjustment(loanId, chargeId,
|
Assertions.assertThrows(RuntimeException.class, () -> loanTransactionHelper.chargeAdjustment(loanId, chargeId,
|
||||||
@@ -780,6 +781,8 @@ public class ExternalBusinessEventTest extends BaseLoanIntegrationTest {
|
|||||||
&& x.getPayLoad().get("transactionToAdjust") != null) //
|
&& x.getPayLoad().get("transactionToAdjust") != null) //
|
||||||
.toList(); //
|
.toList(); //
|
||||||
Assertions.assertEquals(2, list.size());
|
Assertions.assertEquals(2, list.size());
|
||||||
|
Assertions.assertTrue((Boolean) ((Map) list.get(0).getPayLoad().get("transactionToAdjust")).get("reversed"));
|
||||||
|
Assertions.assertTrue((Boolean) ((Map) list.get(1).getPayLoad().get("transactionToAdjust")).get("reversed"));
|
||||||
|
|
||||||
loanDetails = loanTransactionHelper.getLoanDetails(loanId);
|
loanDetails = loanTransactionHelper.getLoanDetails(loanId);
|
||||||
verifyLoanStatus(loanDetails, GetLoansLoanIdStatus::getActive);
|
verifyLoanStatus(loanDetails, GetLoansLoanIdStatus::getActive);
|
||||||
|
|||||||
Reference in New Issue
Block a user