Skip to content

Conversation

@mariiaKraievska
Copy link
Contributor

Description

Rework "createMissingAccrualTransactionDuringChargeOffIfNeeded" to avoid flushing and triggering business event as part of Transaction processor.

Ignore if these details are present on the associated Apache Fineract JIRA ticket.

Checklist

Please make sure these boxes are checked before submitting your pull request - thanks!

  • Write the commit message as per https://github.com/apache/fineract/#pull-requests

  • Acknowledge that we will not review PRs that are not passing the build ("green") - it is your responsibility to get a proposed PR to pass the build, not primarily the project's maintainers.

  • Create/update unit or integration tests for verifying the changes made.

  • Follow coding conventions at https://cwiki.apache.org/confluence/display/FINERACT/Coding+Conventions.

  • Add required Swagger annotation and update API documentation at fineract-provider/src/main/resources/static/legacy-docs/apiLive.htm with details of any API changes

  • Submission is not a "code dump". (Large changes can be made "in repository" via a branch. Ask on the developer mailing list for guidance, if required.)

FYI our guidelines for code reviews are at https://cwiki.apache.org/confluence/display/FINERACT/Code+Review+Guide.

transactionChanges.add(new TransactionChangeData(oldTransaction, newTransaction));
}

public void addTransactionChange(final TransactionChangeData transactionChangeData) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

addReversedTransaction and addTransactionChange is pretty much the same... should we rather use just 1 method and as parameter we can provide the old and new? (including if any of them is null?)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

final ChangedTransactionDetail changedTransactionDetail = loan.getTransactionProcessor().processLatestTransaction(loanTransaction,
new TransactionCtx(loan.getCurrency(), loan.getRepaymentScheduleInstallments(), loan.getActiveCharges(),
new MoneyHolder(loan.getTotalOverpaidAsMoney()), new ChangedTransactionDetail()));
if (!loan.isInterestRecalculationEnabled()) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why to filter for disabled interest recalculation?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed this

if (transactionCtx instanceof ProgressiveTransactionCtx progressiveTransactionCtx) {
progressiveTransactionCtx.setChargedOff(true);
}
if (!loanTransaction.getLoan().isInterestRecalculationEnabled()) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why do we filter here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed this

@mariiaKraievska mariiaKraievska force-pushed the FINERACT-2181/rework-createMissingAccrualTransactionDuringChargeOffIfNeeded branch 2 times, most recently from 108d8f7 to 1335f5e Compare March 14, 2025 13:46
private static final long serialVersionUID = 141481953116476081L;

@Column(name = CREATED_BY_DB_FIELD, nullable = false)
@Setter(onMethod = @__(@Override))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we do the same for created by id?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, done

@mariiaKraievska mariiaKraievska marked this pull request as ready for review March 14, 2025 14:33
@mariiaKraievska mariiaKraievska force-pushed the FINERACT-2181/rework-createMissingAccrualTransactionDuringChargeOffIfNeeded branch 2 times, most recently from 4911f51 to 61299ca Compare March 17, 2025 10:21
…IfNeeded" to avoid flushing and triggering business event as part of Transaction processor
@mariiaKraievska mariiaKraievska force-pushed the FINERACT-2181/rework-createMissingAccrualTransactionDuringChargeOffIfNeeded branch from 61299ca to fa39880 Compare March 18, 2025 08:33
@adamsaghy adamsaghy merged commit 22282de into apache:develop Mar 18, 2025
10 checks passed
@adamsaghy adamsaghy deleted the FINERACT-2181/rework-createMissingAccrualTransactionDuringChargeOffIfNeeded branch March 18, 2025 11:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants