Planning

Plannings et ressources

Place de marchéÉquipes et projetsVersion 0.2.0AGPL-3.0-or-latermanifest

À quoi elle sert ​

Plan shifts for employees from reusable templates. A shift with nobody assigned is an open shift; the workflow runs from open through published to confirmed by the employee.

Ce que fait et ne fait pas le paquet ​

Shifts for employees, with roles and reusable templates. A shift has a day and a start and end in minutes since midnight (0 to 1439; 540 is 09:00). A shift with no employee is an open shift. Workflow: open, published, confirmed by the employee. Needs the Human Resources package.

Détails du module ​

  • Version: 0.2.0
  • Auteur: SpaceCorps
  • Licence: AGPL-3.0-or-later
  • Noyau requis: ^0.2 (le noyau actuel est 0.2.0)
  • Maturité: Bêta
  • Catégories: Personnes

Modèles ​

planning_role ​

A role a shift is planned for, for example cashier or electrician

Groupe de lecture: planning.user. Groupe d'écriture: planning.manager.

ChampTypeClasse de donnéesDonnées personnellesGroupeVu par les agentsDescription
nametextnonenonplanning.useren clairRole name
notelongtextnonenonplanning.useren clairWhat the role involves

planning_template ​

A reusable shift pattern to copy into shifts

Groupe de lecture: planning.user. Groupe d'écriture: planning.manager.

ChampTypeClasse de donnéesDonnées personnellesGroupeVu par les agentsDescription
nametextnonenonplanning.useren clairTemplate name, for example Morning shift
role_idref → planning_rolenonenonplanning.useren clairThe role the template is for
start_minutenumbernonenonplanning.useren clairStart in minutes since midnight (540 is 09:00)
end_minutenumbernonenonplanning.useren clairEnd in minutes since midnight (1020 is 17:00)

planning_shift ​

A slot of work on one day for one role, optionally assigned to an employee

Groupe de lecture: planning.user. Groupe d'écriture: planning.manager.

ChampTypeClasse de donnéesDonnées personnellesGroupeVu par les agentsDescription
nametextnonenonplanning.useren clairShort title, for example Opening shift
role_idref → planning_rolenonenonplanning.useren clairThe role needed
employee_idref → hr_employeeinternalouiplanning.usermasquéEmployee the shift is assigned to; empty for an open shift
work_datedatenonenonplanning.useren clairDay of the shift (YYYY-MM-DD)
start_minutenumbernonenonplanning.useren clairStart in minutes since midnight, 0 to 1439 (540 is 09:00)
end_minutenumbernonenonplanning.useren clairEnd in minutes since midnight, 0 to 1439 (1020 is 17:00)
notelongtextnonenonplanning.useren clairInstructions for whoever works the shift
stateselect (open, published, confirmed)nonenonplanning.useren clairShift status: open, published, confirmed

Flux de travail ​

planning_shift ​

ActionTransitionQui peut l'exécuterApprobation
planning_shift.publishstate: open → publishedplanning.managernon
planning_shift.unpublishstate: published → openplanning.managernon
planning_shift.confirmstate: published → confirmedplanning.managernon

Groupes de permissions ​

Groupes utilisés par cette application :

  • planning.manager
  • planning.user

Étapes d'approbation ​

Aucune étape de cette application ne requiert d'approbation, hormis la suppression d'enregistrements.

Ce que les agents peuvent et ne peuvent pas faire ​

Un agent peut lire, rechercher, créer et modifier les enregistrements de cette application, et exécuter les actions qui ne requièrent pas d'approbation, dans les limites des groupes de permissions de son jeton.

Il ne peut que proposer ces étapes, qu'une personne doit approuver : planning_role.delete, planning_template.delete, planning_shift.delete.

Les données personnelles sont masquées sous forme de jetons de substitution : planning_shift.employee_id.

Dépendances ​

Chaque dépendance indique les versions qu’elle accepte. Les applications intégrées suivent les versions du noyau : une exigence à leur égard est donc vérifiée par rapport à la version du noyau.

  • HR: >=0.2, <1

Installer cette application depuis la place de marché installe aussi les dépendances manquantes, dans un seul plan à confirmer une fois.

Installation ​

Installez-la depuis l'application Customize (Place de marché), ou en ligne de commande :

bash
obop modules install-from planning

Nécessite une base de données et des droits d'administrateur.

Créer la vôtre ​

Le guide des modules montre comment sont écrites les applications de ce type