wbhuman_resources 1.59.4__tar.gz → 1.59.5rc0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/PKG-INFO +1 -1
  2. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/models/employee.py +2 -1
  3. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/models/review.py +6 -5
  4. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tasks.py +8 -7
  5. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/.gitignore +0 -0
  6. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/pyproject.toml +0 -0
  7. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/__init__.py +0 -0
  8. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/admin/__init__.py +0 -0
  9. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/admin/absence.py +0 -0
  10. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/admin/calendars.py +0 -0
  11. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/admin/employee.py +0 -0
  12. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/admin/kpi.py +0 -0
  13. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/admin/review.py +0 -0
  14. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/apps.py +0 -0
  15. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/dynamic_preferences_registry.py +0 -0
  16. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/factories/__init__.py +0 -0
  17. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/factories/absence.py +0 -0
  18. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/factories/calendars.py +0 -0
  19. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/factories/employee.py +0 -0
  20. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/factories/kpi.py +0 -0
  21. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/filters/__init__.py +0 -0
  22. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/filters/absence.py +0 -0
  23. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/filters/absence_graphs.py +0 -0
  24. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/filters/calendars.py +0 -0
  25. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/filters/employee.py +0 -0
  26. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/filters/kpi.py +0 -0
  27. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/filters/review.py +0 -0
  28. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/filters/signals.py +0 -0
  29. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/locale/de/LC_MESSAGES/django.mo +0 -0
  30. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/locale/de/LC_MESSAGES/django.po +0 -0
  31. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/locale/de/LC_MESSAGES/django.po.translated +0 -0
  32. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/locale/en/LC_MESSAGES/django.mo +0 -0
  33. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/locale/en/LC_MESSAGES/django.po +0 -0
  34. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/locale/fr/LC_MESSAGES/django.mo +0 -0
  35. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/locale/fr/LC_MESSAGES/django.po +0 -0
  36. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/management/__init__.py +0 -0
  37. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/migrations/0001_initial_squashed_squashed_0015_alter_absencerequest_calendaritem_ptr_and_more.py +0 -0
  38. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/migrations/0016_alter_employeehumanresource_options.py +0 -0
  39. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/migrations/0017_absencerequest_crossborder_country_and_more.py +0 -0
  40. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/migrations/0018_remove_position_group_position_groups.py +0 -0
  41. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/migrations/0019_alter_absencerequest_options_alter_kpi_options_and_more.py +0 -0
  42. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/migrations/0020_alter_employeeyearbalance_year_alter_review_year.py +0 -0
  43. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/migrations/0021_alter_position_color.py +0 -0
  44. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/migrations/0022_remove_review_editable_mode.py +0 -0
  45. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/migrations/__init__.py +0 -0
  46. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/models/__init__.py +0 -0
  47. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/models/absence.py +0 -0
  48. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/models/calendars.py +0 -0
  49. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/models/kpi.py +0 -0
  50. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/models/preferences.py +0 -0
  51. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/permissions/__init__.py +0 -0
  52. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/permissions/backend.py +0 -0
  53. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/serializers/__init__.py +0 -0
  54. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/serializers/absence.py +0 -0
  55. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/serializers/calendars.py +0 -0
  56. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/serializers/employee.py +0 -0
  57. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/serializers/kpi.py +0 -0
  58. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/serializers/review.py +0 -0
  59. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/signals.py +0 -0
  60. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/templates/review/review_report.html +0 -0
  61. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tests/__init__.py +0 -0
  62. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tests/conftest.py +0 -0
  63. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tests/models/__init__.py +0 -0
  64. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tests/models/test_absences.py +0 -0
  65. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tests/models/test_calendars.py +0 -0
  66. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tests/models/test_employees.py +0 -0
  67. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tests/models/test_review.py +0 -0
  68. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tests/models/test_utils.py +0 -0
  69. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tests/signals.py +0 -0
  70. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tests/test_permission.py +0 -0
  71. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/tests/test_tasks.py +0 -0
  72. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/urls.py +0 -0
  73. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/utils.py +0 -0
  74. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/__init__.py +0 -0
  75. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/absence.py +0 -0
  76. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/absence_charts.py +0 -0
  77. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/buttons/__init__.py +0 -0
  78. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/buttons/absence.py +0 -0
  79. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/buttons/employee.py +0 -0
  80. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/buttons/kpis.py +0 -0
  81. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/buttons/review.py +0 -0
  82. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/calendars.py +0 -0
  83. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/display/__init__.py +0 -0
  84. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/display/absence.py +0 -0
  85. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/display/calendars.py +0 -0
  86. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/display/employee.py +0 -0
  87. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/display/kpis.py +0 -0
  88. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/display/review.py +0 -0
  89. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/employee.py +0 -0
  90. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/endpoints/__init__.py +0 -0
  91. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/endpoints/absence.py +0 -0
  92. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/endpoints/calendars.py +0 -0
  93. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/endpoints/employee.py +0 -0
  94. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/endpoints/kpis.py +0 -0
  95. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/endpoints/review.py +0 -0
  96. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/kpi.py +0 -0
  97. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/menu/__init__.py +0 -0
  98. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/menu/absence.py +0 -0
  99. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/menu/administration.py +0 -0
  100. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/menu/calendars.py +0 -0
  101. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/menu/employee.py +0 -0
  102. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/menu/kpis.py +0 -0
  103. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/menu/review.py +0 -0
  104. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/mixins.py +0 -0
  105. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/review.py +0 -0
  106. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/titles/__init__.py +0 -0
  107. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/titles/absence.py +0 -0
  108. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/titles/employee.py +0 -0
  109. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/titles/kpis.py +0 -0
  110. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/titles/review.py +0 -0
  111. {wbhuman_resources-1.59.4 → wbhuman_resources-1.59.5rc0}/wbhuman_resources/viewsets/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: wbhuman_resources
3
- Version: 1.59.4
3
+ Version: 1.59.5rc0
4
4
  Summary: A workbench module for managing human resources.
5
5
  Author-email: Christopher Wittlinger <c.wittlinger@stainly.com>
6
6
  Requires-Dist: wbcore
@@ -50,6 +50,7 @@ from wbcore.contrib.notifications.utils import create_notification_type
50
50
  from wbcore.models import WBModel
51
51
  from wbcore.models.fields import YearField
52
52
  from wbcore.utils.models import ComplexToStringMixin
53
+ from wbcore.workers import Queue
53
54
 
54
55
  from wbhuman_resources.signals import add_employee_activity_to_daily_brief
55
56
 
@@ -1184,7 +1185,7 @@ def position_groups_to_employee(
1184
1185
  user.groups.remove(group)
1185
1186
 
1186
1187
 
1187
- @shared_task
1188
+ @shared_task(queue=Queue.DEFAULT.value)
1188
1189
  def deactivate_profile_as_task(requester_id: int, employee_id: int, substitute_id: Optional[int] = None):
1189
1190
  """
1190
1191
  Call the deactivation method as a async task
@@ -43,6 +43,7 @@ from wbcore.models import WBModel
43
43
  from wbcore.models.fields import YearField
44
44
  from wbcore.models.orderable import OrderableModel
45
45
  from wbcore.utils.models import CloneMixin, ComplexToStringMixin
46
+ from wbcore.workers import Queue
46
47
  from weasyprint import HTML
47
48
 
48
49
  from wbhuman_resources.models.employee import get_main_company
@@ -757,7 +758,7 @@ def pre_save_review(sender, instance, **kwargs):
757
758
  instance.validation()
758
759
 
759
760
 
760
- @shared_task
761
+ @shared_task(queue=Queue.DEFAULT.value)
761
762
  def finalize_review(review_id):
762
763
  review = Review.objects.get(id=review_id)
763
764
  ReviewAnswer.objects.filter(
@@ -768,7 +769,7 @@ def finalize_review(review_id):
768
769
  ).update(answer_number=1)
769
770
 
770
771
 
771
- @shared_task
772
+ @shared_task(queue=Queue.DEFAULT.value)
772
773
  def submit_reviews_from_group(group_id, user_id):
773
774
  user = get_user_model().objects.get(id=user_id)
774
775
 
@@ -783,7 +784,7 @@ def submit_reviews_from_group(group_id, user_id):
783
784
  review.save()
784
785
 
785
786
 
786
- @shared_task
787
+ @shared_task(queue=Queue.DEFAULT.value)
787
788
  def create_review_from_template(
788
789
  template_id, from_date, to_date, review_deadline, auto_apply_deadline, employees, include_kpi
789
790
  ):
@@ -884,7 +885,7 @@ What do you think of this result?
884
885
  ReviewQuestion.objects.create(**kwargs)
885
886
 
886
887
 
887
- @shared_task
888
+ @shared_task(queue=Queue.DEFAULT.value)
888
889
  def submit_review(review_id):
889
890
  review = Review.objects.get(id=review_id)
890
891
  questions = ReviewQuestion.objects.filter(review=review)
@@ -956,7 +957,7 @@ def submit_review(review_id):
956
957
  )
957
958
 
958
959
 
959
- @shared_task
960
+ @shared_task(queue=Queue.DEFAULT.value)
960
961
  def send_review_report_via_mail(user_id, review_id):
961
962
  user = get_user_model().objects.get(id=user_id)
962
963
  review = Review.objects.get(id=review_id)
@@ -15,6 +15,7 @@ from wbcore.contrib.directory.models import Person
15
15
  from wbcore.contrib.notifications.dispatch import send_notification
16
16
  from wbcore.utils.date import current_month_date_end
17
17
  from wbcore.utils.html import convert_html2text
18
+ from wbcore.workers import Queue
18
19
 
19
20
  from wbhuman_resources.models import KPI, DayOffCalendar, EmployeeHumanResource, Review
20
21
 
@@ -22,7 +23,7 @@ from .models.preferences import get_previous_year_balance_expiration_date
22
23
  from .signals import add_employee_activity_to_daily_brief
23
24
 
24
25
 
25
- @shared_task
26
+ @shared_task(queue=Queue.BACKGROUND.value)
26
27
  def create_future_public_holiday(today: date | None = None, forecast_year: int = 5):
27
28
  if not today:
28
29
  today = date.today()
@@ -31,7 +32,7 @@ def create_future_public_holiday(today: date | None = None, forecast_year: int =
31
32
  calendar.create_public_holidays(year)
32
33
 
33
34
 
34
- @shared_task
35
+ @shared_task(queue=Queue.BACKGROUND.value)
35
36
  def assign_balance(today=None):
36
37
  """
37
38
  Yearly periodic cron tasks that increase for an employee
@@ -46,7 +47,7 @@ def assign_balance(today=None):
46
47
  employee.assign_vacation_allowance_from_range(start_period.date(), end_period.date())
47
48
 
48
49
 
49
- @shared_task
50
+ @shared_task(queue=Queue.BACKGROUND.value)
50
51
  def check_and_warn_user_with_previous_year_available_balance(year=None):
51
52
  """
52
53
  When this task run, it will send a reminder Notification to user with still available balance for the previous year
@@ -69,7 +70,7 @@ def check_and_warn_user_with_previous_year_available_balance(year=None):
69
70
  )
70
71
 
71
72
 
72
- @shared_task
73
+ @shared_task(queue=Queue.BACKGROUND.value)
73
74
  def send_mail_to_accounting():
74
75
  global_preferences = global_preferences_registry.manager()
75
76
  accounting_company_emails = list(
@@ -111,7 +112,7 @@ def send_mail_to_accounting():
111
112
  msg.send()
112
113
 
113
114
 
114
- @shared_task
115
+ @shared_task(queue=Queue.BACKGROUND.value)
115
116
  def daily_automatic_application_deadline():
116
117
  for review in Review.objects.filter(
117
118
  Q(status=Review.Status.FILL_IN_REVIEW) & Q(review_deadline__lte=datetime.now().date())
@@ -150,7 +151,7 @@ def daily_automatic_application_deadline():
150
151
  )
151
152
 
152
153
 
153
- @shared_task
154
+ @shared_task(queue=Queue.BACKGROUND.value)
154
155
  def periodic_updating_kpi_task(kpi_id: list | None = None, start=None, end=None):
155
156
  intervals = {elt.name: KPI.Interval.get_frequence_correspondance(elt.name) for elt in KPI.Interval}
156
157
  for key, value in intervals.items():
@@ -168,7 +169,7 @@ def periodic_updating_kpi_task(kpi_id: list | None = None, start=None, end=None)
168
169
  kpi.generate_evaluation(date_evaluation.date())
169
170
 
170
171
 
171
- @shared_task
172
+ @shared_task(queue=Queue.BACKGROUND.value)
172
173
  def daily_brief(today: date | None = None, **kwargs):
173
174
  """Creates a summary of the daily brief for all internal employees
174
175
  Args: