Corp/backend/employees/constants.py

106 lines
3.2 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# backend\employees\constants.py
GENDER_CHOICES = (
(1, "Мужской"),
(2, "Женский"),
(0, "Не указан"),
)
ACTION_WORKING = "working"
ACTION_REMOTE = "remote"
ACTION_HIRED = "hired"
ACTION_DISMISSED = "dismissed"
ACTION_ON_LEAVE = "on_leave"
ACTION_RETURNED_FROM_LEAVE = "returned_from_leave"
ACTION_ON_SICK_LEAVE = "on_sick_leave"
ACTION_RETURNED_FROM_SICK_LEAVE = "returned_from_sick_leave"
ACTION_ON_DAY_OFF = "on_day_off"
ACTION_RETURNED_FROM_DAY_OFF = "returned_from_day_off"
ACTION_ON_MATERNITY = "on_maternity"
ACTION_RETURNED_FROM_MATERNITY = "returned_from_maternity"
ACTION_TRANSFERRED = "transferred"
ACTION_REHIRED = "rehired"
ACTION_LABELS = {
ACTION_WORKING: "Работает",
ACTION_REMOTE: "На удалёнке",
ACTION_HIRED: "Принят",
ACTION_DISMISSED: "Уволен",
ACTION_ON_LEAVE: "В отпуске",
ACTION_RETURNED_FROM_LEAVE: "Вернулся из отпуска",
ACTION_ON_SICK_LEAVE: "На больничном",
ACTION_RETURNED_FROM_SICK_LEAVE: "Вернулся с больничного",
ACTION_ON_DAY_OFF: "В отгуле",
ACTION_RETURNED_FROM_DAY_OFF: "Вернулся из отгула",
ACTION_ON_MATERNITY: "В декрете",
ACTION_RETURNED_FROM_MATERNITY: "Вернулся из декрета",
ACTION_TRANSFERRED: "Переведен",
ACTION_REHIRED: "Восстановлен",
}
PERMANENT_ACTIONS = {
ACTION_WORKING,
ACTION_REMOTE,
ACTION_DISMISSED,
}
PERIOD_ACTIONS = {
ACTION_ON_LEAVE,
ACTION_ON_SICK_LEAVE,
ACTION_ON_DAY_OFF,
ACTION_ON_MATERNITY,
}
MARKER_ACTIONS = {
ACTION_HIRED,
ACTION_TRANSFERRED,
ACTION_REHIRED,
ACTION_RETURNED_FROM_LEAVE,
ACTION_RETURNED_FROM_SICK_LEAVE,
ACTION_RETURNED_FROM_DAY_OFF,
ACTION_RETURNED_FROM_MATERNITY,
}
ACTIVATING_MARKER_ACTIONS = {
ACTION_HIRED,
ACTION_REHIRED,
}
RETURN_MARKER_ACTIONS = {
ACTION_RETURNED_FROM_LEAVE,
ACTION_RETURNED_FROM_SICK_LEAVE,
ACTION_RETURNED_FROM_DAY_OFF,
ACTION_RETURNED_FROM_MATERNITY,
}
TEMPORARY_START_ACTIONS = PERIOD_ACTIONS
TEMPORARY_RETURN_ACTIONS = RETURN_MARKER_ACTIONS
TEMPORARY_ACTION_PRIORITIES = {
ACTION_ON_SICK_LEAVE: 0,
ACTION_ON_MATERNITY: 1,
ACTION_ON_LEAVE: 2,
ACTION_ON_DAY_OFF: 3,
}
ACTION_CHOICES = [(action, ACTION_LABELS[action]) for action in ACTION_LABELS]
class DeptPerm:
MANAGE = "manage_department"
CHANGE_HEAD = "change_department_head"
ASSIGN_ROLE = "assign_department_role"
MANAGE_FEED = "manage_department_feed"
CAN_PROCESS_REQUESTS = "can_process_requests"
APPROVE_PROCUREMENT = CAN_PROCESS_REQUESTS
MANAGE_EQUIPMENT = "manage_department_equipment"
CHOICES = (
(MANAGE, "Управлять отделом"),
(CHANGE_HEAD, "Назначать руководителя"),
(ASSIGN_ROLE, "Назначать роли участникам"),
(MANAGE_FEED, "Редактировать публикации отдела"),
(APPROVE_PROCUREMENT, "Согласование закупок отдела"),
(MANAGE_EQUIPMENT, "Управлять оборудованием отдела"),
)