Skip to content

People catalogues — departments & contract types

For admins

The catalogues page is the trust-wide reference data for the people module. Two related lists on one screen.

People catalogues — departments and contract types on one screen

A department is a grouping people belong to — English faculty, senior leadership, premises team, finance. The department register feeds the picker on every engagement form and drives report breakdowns.

Each department has:

  • Name — sentence case. “English faculty”, not “English Faculty”.
  • Sort order — integer; lower numbers appear first in the dropdown. Default 100.
  • Active — inactive departments are hidden from the dropdown but retained on existing engagement records.

Contract types describe the engagement basis. When no catalogue entries exist, the engagement form falls back to the built-in values: permanent, fixed-term, supply, casual. Each catalogue entry you add has:

  • Name“Permanent — full-time”, “Supply — daily rate”.
  • Slug — auto-generated from the name when the type is first created; immutable thereafter. This is the value stored on engagement records.
  • Sort order — integer; lower numbers appear first in the dropdown.
  • Active — inactive types are hidden from the dropdown but retained on existing records.

Add a new department when there’s a genuine organisational unit not currently captured. Don’t add departments for project teams, working groups, or ad-hoc groupings — those go on people directly as tags, not as departments.

Add a contract type when none of the existing types fit the legal basis of a new engagement. “Casual hourly” vs “Permanent part-time” are real distinctions; “Mike’s special arrangement” is not.

  • Both catalogues are installation-wide — there is no per-workspace or per-school scoping. All academies in the trust share the same department and contract-type lists.
  • Engagements store the department name and contract-type slug as strings at the time of save. Renaming a department in the catalogue does not rewrite historical engagement records — those keep the name that was current when they were created.
  • The whole catalogues route group — including just reading the lists — is gated on people::admin. A people agent without people::admin can’t open the screen at all, not merely “view but not edit”. (The screen lives in the People rail’s manage group; the old /admin/people path remains as a 301 redirect to it.)
  • Deleting a department or contract type removes it from the dropdown for new entries, but existing engagement records retain their stored value.