AshharAhmadKhan commented on PR #5655:
URL: https://github.com/apache/fineract/pull/5655#issuecomment-4094932629

   Pushed a follow-up commit after deeper review of state transitions and API 
completeness.
   
   The first commit fixed the core bug - the missing handler and stub service. 
While verifying the full operation lifecycle I found three additional issues 
worth addressing in the same PR rather than leaving as separate tickets.
   
   `undoPayment()` and `undoWaiver()` were unconditionally setting `status = 
true`, meaning undoing a prior payment on an inactivated charge would silently 
reactivate it. Fixed by checking `inactivationDate == null` before restoring 
active status, and added a service-level guard in 
`ClientTransactionWritePlatformServiceJpaRepositoryImpl` to block undo 
operations on inactive charges entirely - inactivation should be a terminal 
state.
   
   `isActive` and `inactivationDate` were missing from 
`CLIENT_CHARGES_RESPONSE_DATA_PARAMETERS`, so `?fields=isActive` returned 
nothing. Added both constants to the whitelist.
   
   Updated the `@Operation` summary to document the inactivate command 
alongside pay and waive.
   
   Tests added for the undo guard and the fields filter. All existing tests 
untouched.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to