Commit Graph

2 Commits

Author SHA1 Message Date
gsinghpal
b7817b752c feat(fusion_planning): hide Role field from Add Shift dialog
Role is still auto-pulled from the employee's Default Role on the
employee profile (planning.slot._compute_role_id reads
resource_id.default_role_id). Hiding the manual Role field declutters
the Add Shift dialog so the manager doesn't have to think about it on
each shift.

If a shift needs a one-off role override, an admin can still set it
via the backend list view or by editing the resource's default role.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 07:52:13 -04:00
gsinghpal
d5e954d45c feat(fusion_planning): auto-publish new shifts + bulk-assign to many employees
Two manager-side time savers on the Add Shift dialog:

1. Auto-publish on create
   Override planning.slot.create() to default state='published' for
   every new shift (was: 'draft', requiring a separate Publish step
   per slot — painful with recurrence which can generate dozens at
   a time). Recurrency-generated copies inherit the parent slot's
   state, so a single recurring shift now publishes the whole series
   in one save. Manager can still pass state='draft' explicitly to
   opt out.

2. Apply Also To (multi-resource bulk create)
   New x_fc_additional_resource_ids m2m on planning.slot. When set,
   create() splits the vals into one slot per additional resource
   (deduped against the primary). Combined with recurrence, picking
   N employees and a date range now creates the full N x M shift
   matrix in a single Save instead of N manual repeats.

   Field appears in the Add Shift dialog under Role, hidden once
   the slot is saved (it's a create-time helper, not ongoing data),
   and gated to planning.group_planning_manager.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 23:08:04 -04:00