Bhavya-Sonigra commented on PR #6794:
URL: https://github.com/apache/fineract/pull/6794#issuecomment-6539062875

   Hi @galovics , thank you very much for the thorough review and great catches!
   
   All points have been addressed and verified against a live local instance:
   
   1. **Date format / backward compatibility (`closingDate`)**:
      - Reverted `closingDate` to `String` in `GLClosureCreateRequest` and 
parsed it via `DateUtils.parseLocalDate(closingDate, dateFormat, locale)` in 
`GLClosureWritePlatformServiceJpaRepositoryImpl` (following 
`TransactionSearchRequest`).
      - This preserves full backward compatibility with both the web app and 
documented request formats (e.g. `"06 December 2012"`, `"dd MMMM yyyy"`, 
`"en"`).
   
   2. **Validation message keys**:
      - Added all `org.apache.fineract.accounting.closure.*` message templates 
for `id`, `officeId`, `closingDate`, and `comments` in 
`fineract-validation/src/main/resources/ValidationMessages.properties`.
   
   3. **Resilience4j retry configuration**:
      - Added `resilience4j.retry.instances.*` configuration blocks for 
`commandGLClosureCreate`, `commandGLClosureUpdate`, and 
`commandGLClosureDelete` in 
`fineract-provider/src/main/resources/application.properties`, limiting retries 
specifically to optimistic-locking and transient concurrency exceptions.
   
   4. **PUT comments protection**:
      - Added `@NotNull` validation on `comments` in `GLClosureUpdateRequest` 
and a null-guard in the write service, ensuring an empty update `{}` is 
rejected with 400 Bad Request instead of wiping existing comments.
   
   5. **Dead code removal**:
      - Removed `GLClosureJsonInputParams` and cleaned up a legacy 
cross-reference in `AccountingRuleWritePlatformServiceJpaRepositoryImpl`.
   
   6. **Integration test**:
      - Added `GLClosureIntegrationTest` covering:
        - Creation using the documented non-ISO payload (`"06 December 2012"`, 
`"dd MMMM yyyy"`, `"en"`) and verifying the parsed date.
        - Verification that an empty update `{}` returns 400 Bad Request.
        - Updating comments and deleting closures.
   
   All unit tests (`fineract-accounting:test`), the new integration test 
(`integration-tests`), `spotlessCheck`, and `rat` license checks are passing.
   


-- 
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