Commit Graph
411 Commits
Author SHA1 Message Date
Nitesh Yadav 05c5adb034 update code saving product add on client 2026-04-21 17:30:57 +05:30
Nitesh Yadav 98dd941712 some update logic update on showing option 2026-04-21 13:19:19 +05:30
Nitesh Yadav 800e114a4d update RD Prodcut code 2026-04-20 12:51:35 +05:30
Nitesh Yadav 2facd3744d update current product code and RD code 2026-04-15 20:34:12 +05:30
Nitesh Yadav d7821c7824 update saving product code 2026-04-13 13:26:33 +05:30
AdityaandClaude Opus 4.6 011239f399 Fix KYC update on verified records and client address duplication
- Allow KYC updates on VERIFIED records with mandatory remarks for audit trail;
  reset PAN verification when PAN number changes, moving status to IN_PROGRESS
- Fix client address duplicates: deactivate old addresses of same type on
  create/update, persist isActive flag (missing save), filter reads by is_active

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 15:00:37 +05:30
AdityaandClaude Opus 4.6 87e132f93d Add extended fields to ClientNonPersonDetails: authorizedSignatory, additionalInfo, dateOfRegistration
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 15:06:45 +05:30
AdityaandClaude Opus 4.6 90c21d40c1 Add CIF number, Occupation Category & Occupation fields to Client module
- Added mandatory unique CIF number (auto-generated as CIF+padded ID)
- Added Occupation Category dropdown (6 categories: Salaried, Business, Professional, Agriculture, Student, Others)
- Added Occupation dropdown (54 occupations mapped to categories)
- Both stored in m_code/m_code_value tables (same pattern as Gender)
- Visible in client create/update API and personal data view
- Includes Liquibase migrations 0227 & 0228
- Added Postman collection for User Management APIs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 18:51:26 +05:30
AdityaandClaude Opus 4.6 ba5365d4af Add all CBS custom modules: KYC, Sanctions, RBI Feed, OpenProject, Mobile Lookup, Charges, Avro schemas
Includes all prior work not yet committed on this branch:
- KYC module (LincPay eKYC: PAN, Aadhaar OTP, GSTIN verification)
- Sanctions screening (UN Security Council consolidated list)
- RBI Feed integration with scheduled jobs
- OpenProject API integration
- Mobile lookup service
- Charge module enhancements (current account support)
- Client family member nominee fields
- Avro schema updates
- Liquibase migrations 0216-0224
- Postman collections for OpenProject, RBI Feeds, Sanctions
- SQL seed scripts

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 17:54:10 +05:30
AdityaandClaude Opus 4.6 78f37257a7 Add CFCFRMS (MHA/I4C) Bank API and Simulator module
CFCFRMS integration for cyber fraud complaint management:
- Bank-side: complaint CRUD, lien/freeze/resolve actions, escalation, audit trail, dashboard stats
- Simulator (I4C/MHA): push complaints, hold directives, bulk push, receive updates/escalations, account/transaction verification, bank performance metrics
- Domain: ComplaintTicket, ComplaintAuditLog, CfcfrmsSimulatorLog entities
- Liquibase 0226: 3 tables (MySQL+PostgreSQL), indexes, permissions
- Seed data: 13 realistic complaint tickets + 5 simulator log entries
- JAX-RS endpoints at /v1/cfcfrms/complaints/* and /v1/simulator/cfcfrms/*
- Full Swagger @Operation annotations

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 17:49:54 +05:30
AdityaandClaude Opus 4.6 6a464291d5 Add Current Account module mirroring Savings Account infrastructure
- CurrentAccount entity (@DiscriminatorValue 400) extending SavingsAccount
- 4 JAX-RS API resources: /v1/currentaccounts, /v1/currentproducts, transactions, charges
- 38 command handlers delegating to existing savings services
- ~35 CommandWrapperBuilder methods for current account commands
- DB migration 0225 with 67 permissions (CURRENTACCOUNT, CURRENTPRODUCT, CURRENTACCOUNTCHARGE)
- DepositsApiConstants and DepositAccountType enum updated for CURRENT_DEPOSIT

Reuses existing m_savings_account table (deposit_type_enum=400), GL accounting,
interest calculation, and all savings write/read services — no code duplication.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 18:16:36 +05:30
yuwatidoraandAleksandar Vidakovic 701cfae60b FINERACT 2289: New command processing - Working Days
command base test fix
2026-02-20 21:39:41 +01:00
Ralph HopmanandAdam Saghy 4467f91382 FINERACT-2496: Add Batch API Support for Creating Savings Account Charges 2026-02-19 11:33:27 +00:00
airajenaandAdam Saghy 41da36b1f4 FINERACT-2028: Add audit logging for manual scheduler job execution 2026-02-19 11:25:49 +00:00
Satish11012007andAdam Saghy 89487a8ace FINERACT-1266: Fix potential NPE in determineInterestPostingPeriods 2026-02-19 11:23:42 +00:00
DeathGun44andAdam Saghy ca3e980543 FINERACT-2003: Enforce password reset on first login
:wq
2026-02-19 11:14:17 +00:00
Aleksandar VidakovicandAleksandar Vidakovic ae3e2a6343 FINERACT-2245: New command processing - mix taxonomy 2026-02-18 20:26:51 +01:00
Ashhar Ahmad KhanandAdam Saghy a8ba79d19a FINERACT-2468: Fix datatable operations in PostgreSQL non-public schemas
Use current_schema instead of hardcoded 'public' in getTableIndexes()
and isTablePresent() methods to support multi-tenant PostgreSQL
deployments where datatables reside in tenant-specific schemas.

This fixes:
- GET /datatables returning 404 for new datatables
- Datatable save operations failing with 'Datatable not found'

Root cause: Index metadata queries were looking in 'public' schema
while table columns query correctly used current_schema, causing
inconsistent behavior in GenericDataServiceImpl.

Changes:
- PostgreSQLQueryService.getTableIndexes(): Use current_schema
- PostgreSQLQueryService.isTablePresent(): Use current_schema

Testing:
- All unit tests pass (93/93 in fineract-core)
- Manual PostgreSQL verification confirms fix works correctly
2026-02-18 15:38:50 +00:00
Aleksandar VidakovicandGitHub 3a842ecb9a FINERACT-2243: New command processing - payment type (#5506) 2026-02-18 08:19:29 -06:00
Prakash M SandAdam Saghy 9ca717ffd2 Added empty Line after Class name to pass spotlessJavaCheck 2026-02-18 09:11:08 +00:00
Prakash M SandAdam Saghy b0ec0a667c Removed Trailing spaces in empty lines 2026-02-18 09:11:08 +00:00
Prakash M SandAdam Saghy 2c008e0e65 Aligned formatting with Spotless requirements 2026-02-18 09:11:08 +00:00
Prakash M SandAdam Saghy 8e376c097a Add unit test for SavingsHelper to handle null posting type 2026-02-18 09:11:08 +00:00
Prakash M SandAdam Saghy 2f17c20dfd Add null check for postingPeriodType in SavingsHelper 2026-02-18 09:11:08 +00:00
Abdelrahman MostafaandAdam Saghy 92f8b3d0d4 FINERACT-2491: Refactor SavingsEnumerations to use switch expression 2026-02-17 14:11:32 +00:00
airajenaandAdam Saghy 7daf4b8a84 FINERACT-2005: Prohibit password re-use with configurable global setting 2026-02-17 11:57:28 +00:00
054d18b020 FINERACT-2461: Replace SQL string concatenation with parameterized queries
Fix ~30 SQL injection vulnerabilities across datatable services by
replacing string concatenation with JDBC parameterized queries (?).

Files changed:
- DatatableWriteServiceImpl: parameterized DELETE, INSERT, SELECT queries
- DatatableUtil: parameterized dataScopedSQL, office join conditions
- GenericDataService/Impl: added parameterized fillResultsetRowData overload
- DatatableReadServiceImpl: parameterized countDatatableEntries
- WriteSurveyServiceImpl: removed duplicate vulnerable getPermissionSql
- DepositAccountReadPlatformServiceImpl: added pagination validation

Tests added:
- DatatableUtilTest: 11 tests for parameterized dataScopedSQL and joins
- DatatableWriteServiceImplTest: 7 tests for parameterized CRUD queries
- DatatableReadServiceImplCountTest: 1 test for parameterized count query

Do good with AI.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 11:51:55 +00:00
Aleksandar VidakovicandAleksandar Vidakovic 2ff0c62f40 FINERACT-2246: New command processing - document management 2026-02-16 14:56:40 +01:00
Ralph HopmanandGitHub 05662e64d5 FINERACT-2473: Add available balance to group accounts endpoint (#5468) 2026-02-14 16:15:34 -06:00
Ralph HopmanandGitHub 4bb5c02b19 FINERACT-2488: Fix duplicate results in /api/v2/clients/search (#5485) 2026-02-14 13:05:13 -06:00
Jose Alberto HernandezandAleksandar Vidakovic 356dd07ca0 FINERACT-1932: Fineract modularization - fineract-security 2026-02-12 14:01:38 +01:00
Jose Alberto HernandezandAdam Saghy 955222ee82 FINERACT-2421: External Asset Owner create api 2026-02-12 10:58:24 +01:00
Aleksandar VidakovicandAleksandar Vidakovic 02fb166b5b FINERACT-2239: New command processing - resource notes 2026-02-11 00:15:27 +01:00
Jose Alberto HernandezandAdam Saghy 28f63cc20e FINERACT-2418: Loan Originator data with codevalues 2026-02-09 16:42:53 +01:00
8d064ddf6c FINERACT-2452: New command processing - audit
Co-Authored-By: Adam Saghy <adam.saghy@dpc.hu>
Co-Authored-By: Yu Wati Nyi <nyi22y@mtholyoke.edu>
2026-02-05 12:55:05 +01:00
Jose Alberto HernandezandAdam Saghy 1d1876edfd FINERACT-2421: Disbursement charge amount incorrect calculation 2026-02-05 10:41:19 +01:00
Attila BudaiandAdam Saghy 2620c61afa FINERACT-2418: add originator global config 2026-02-05 10:39:41 +01:00
Attila BudaiandAdam Saghy ef12056e5d FINERACT-2418: add originatior association 2026-02-03 14:58:28 +01:00
Attila BudaiandAdam Saghy 3b5ea96f5e FINERACT-2418: add originatior loan mapping 2026-02-03 14:58:28 +01:00
Aman MittalandAdam Saghy 1c90880b7a FINERACT-2421: Refractor - remove ApiResponses annotations (Phase 7) 2026-02-02 19:27:39 +01:00
Adam Saghy 0fd0f977eb FINERACT-2421: Allow hyphens in query params of Batch API calls 2026-01-30 11:37:58 +01:00
Aman-MittalandAdam Saghy 8b24325f84 FINERACT-2421: Refractor redundant and some deprecated code as per new Java 21 style (Phase 5) 2026-01-23 12:15:46 +01:00
Attila BudaiandAdam Saghy 87cad91aa8 FINERACT-2418: add origination-api-skeleton 2026-01-21 13:13:04 +01:00
Adam Saghy 0cb23ac5c5 FINERACT-2437: Decrease the number of compilation warnings 2026-01-20 11:35:33 +01:00
Attila BudaiandAdam Saghy f83ea7ea15 FINERACT-2418: create the loan origination module 2026-01-19 14:14:20 +01:00
Adam Saghy 0891adb267 FINERACT-2421: Rework code value handling in E2E 2026-01-16 17:59:14 +01:00
Adam Saghy 633acf204b FINERACT-2421: Allow reage preview API via Batch API 2026-01-15 13:35:54 +01:00
airajenaandAdam Saghy 07d67493df FINERACT-1266: Fix NullPointerException in SavingsHelper.determineInterestPostingPeriods 2026-01-15 10:10:29 +01:00
airajenaandAdam Saghy d94050d476 FINERACT-2421: Add unit tests for SQLBuilder 2026-01-15 10:08:15 +01:00
Aira JenaandGitHub 3ba476fdc4 FINERACT-2421: Add unit tests for ExternalIdFactory (#5276)
* FINERACT-2421: Add unit tests for ExternalIdFactory

* FINERACT-2421: Fix ambiguous method reference in ExternalIdFactoryTest

Cast null to String to resolve ambiguous method call between
produce(String) and produce(List<String>) overloads.
2026-01-15 10:07:17 +01:00