feat(shares): add Share Account Closure maker-checker workflow
Clerk submits a closure request only once a share account holds zero shares; manager validates (shares still zero, account active, no active loan/guarantee, KYC/AML standing, maker!=checker) and approves, which executes the real Fineract "close" command. The direct native "Close" action is removed from the account menu — it silently force-redeemed any remaining shares, bypassing the withdrawal approval flow entirely — and replaced with an "Eligible for Closure" banner. When a withdrawal approval brings a share account's holding to zero, a closure request is now auto-submitted (still requires manager approval) so the clerk doesn't have to separately open "New Share Closure Request". Also fixes an unrelated build break introduced by a merged commit: a missing `suppressMonthlyAnnualLink` property declaration, and two files (branch-scope.service.ts, gl-reports-data.ts) that existed on `demo` but were never brought into `dev` alongside the new TDS report components that depend on them. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -100,11 +100,11 @@ export class SharesButtonsConfiguration {
|
||||
{
|
||||
name: 'Share Certificate',
|
||||
taskPermissionName: 'READ_SHAREACCOUNTPURCHASE'
|
||||
},
|
||||
{
|
||||
name: 'Close',
|
||||
taskPermissionName: 'CLOSE_SHAREACCOUNT'
|
||||
}
|
||||
// 'Close' is intentionally not offered here — closing a share account must go through
|
||||
// the Clerk Dashboard maker-checker flow (Clerk Dashboard > My Share Closures), never a
|
||||
// direct one-step action from this view. The native close command also force-redeems any
|
||||
// remaining shares, bypassing the governed Share Withdrawal approval flow entirely.
|
||||
];
|
||||
break;
|
||||
case 'Submitted and pending approval':
|
||||
|
||||
Reference in New Issue
Block a user