Aman-Mittal opened a new issue, #181:
URL: https://github.com/apache/fineract-backoffice-ui/issues/181
## Business value
A center is the tier above a group in the Fineract hierarchy: it is where a
field officer's groups are collected, where the meeting that several groups
attend is scheduled, and where attendance and collection are organised in
practice. For institutions running centre-based lending, it is the unit of
daily work.
`centers.routes.ts` currently declares exactly three routes:
```ts
{ path: '' } // list
{ path: 'create' }
{ path: 'edit/:id' }
```
There is no detail view. A center can be created and renamed, and nothing
else. Its groups cannot be seen or managed, its meeting cannot be scheduled,
staff cannot be assigned, and it cannot be activated or closed from the UI.
Centers are gated behind institution type alongside Groups (`mfis` and
`universal`), so the same problem applies: enabling the mode that advertises
centre-based lending reveals a screen that cannot do the job.
## Describing the feature
A `/centers/view/:id` route presenting the center as a page with tabs and an
actions menu.
**Tabs**
- **General** — center summary (name, account number, status, office, staff)
and the list of groups belonging to it, each linking to its group detail view.
- **Notes** — read, add, edit and delete notes against the center.
- **Data tables** — entity datatables registered against `m_center`.
**Actions**
- Activate, close
- Assign and unassign staff, with staff assignment history
- Manage groups (attach and detach groups)
- Attach, edit and reschedule the center meeting
- Record attendance
## Relationship to Groups
This is deliberately raised as a sibling of the Group detail view rather
than folded into it. The two share a shell — the same tab layout, the same
notes tab, the same meeting and attendance dialogs, the same staff assignment —
so the Group issue is expected to land first and establish those pieces, and
this one to reuse them. Splitting them keeps each change reviewable; combining
them would produce one very large diff.
**Notes on approach**
- Follows the existing detail-view pattern in this repo
(`client-view.component.ts` with `tabs/` and an action dialog).
- Permission-gated with `*appHasPermission` per action; route stays gated by
institution feature.
- State held in signals, for the reason described in the Groups issue:
OnPush is the Angular 22 default, so plain fields assigned from HTTP callbacks
do not render.
## Scope
In scope: the view route, the three tabs, and the actions listed above.
Out of scope: collection sheet (already present separately), and
center-level GSIM accounts.
--
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]