[CLAUDE] Office: P11-D ItTicket admin reassign-UI + P11-E AttendanceReport menu-key
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 4m21s
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 4m21s
Task C - ItTicket admin reassign-UI (fe-admin only):
- Per-card reassign dialog on ItTicketsPage kanban (admin override of round-robin auto-assign).
- Reuses existing PUT /it-tickets/{id}/assign (Admin-only) + GET /users picker. No new BE endpoint.
- fe-admin intentionally diverges from fe-user (read-only) — admin-management action.
Task D - AttendanceReport menu-key (P11-E promote, no migration):
- MenuKeys.OffAttendanceReport 'Báo cáo chấm công' leaf under Văn phòng số (order 8), Admin-perm auto via All[].
- DbInitializer idempotent seed + fe-admin menuKeys.ts/Layout staticMap -> existing /attendance/report route.
Pipeline: implementer-backend -> implementer-frontend -> reviewer (PASS, 0 issues). dotnet+npm builds clean. Tests 203 (unchanged - no new BE logic/schema).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@ -83,6 +83,8 @@ function resolvePath(key: string): string | null {
|
||||
Off_DatXe: '/workflow-apps/vehicle',
|
||||
Off_ItTicket: '/it-tickets',
|
||||
Off_ChamCong: '/attendance',
|
||||
// [P11-E S52] Báo cáo chấm công — admin-only leaf (route từ App.tsx S52).
|
||||
Off_AttendanceReport: '/attendance/report',
|
||||
Hrm_Dashboard: '/hr/dashboard',
|
||||
}
|
||||
if (staticMap[key]) return staticMap[key]
|
||||
|
||||
Reference in New Issue
Block a user