wbcrm 1.49.3__tar.gz → 1.49.5__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.
Potentially problematic release.
This version of wbcrm might be problematic. Click here for more details.
- {wbcrm-1.49.3 → wbcrm-1.49.5}/PKG-INFO +1 -1
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/models/activities.py +17 -8
- {wbcrm-1.49.3 → wbcrm-1.49.5}/.gitignore +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/pyproject.toml +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/admin/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/admin/accounts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/admin/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/admin/events.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/admin/groups.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/admin/products.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/apps.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/configurations/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/configurations/base.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/dynamic_preferences_registry.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/factories/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/factories/accounts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/factories/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/factories/groups.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/factories/products.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/filters/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/filters/accounts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/filters/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/filters/groups.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/filters/products.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/filters/signals.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/fixtures/wbcrm.json +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/kpi_handlers/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/locale/de/LC_MESSAGES/django.po +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0001_initial_squashed_squashed_0032_productcompanyrelationship_alter_product_prospects_and_more.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0002_alter_activity_repeat_choice.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0003_remove_activity_external_id_and_more.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0004_alter_activity_status.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0005_account_accountrole_accountroletype_and_more.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0006_alter_activity_location.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0007_alter_account_status.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0008_alter_activity_options.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0009_alter_account_is_public.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0010_alter_account_reference_id.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0011_activity_summary.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0012_alter_activity_summary.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0013_account_action_plan_account_relationship_status_and_more.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0014_alter_account_relationship_status.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0015_alter_activity_type.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0016_auto_20241205_1015.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0017_event.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/models/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/models/accounts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/models/events.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/models/groups.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/models/llm/activity_summaries.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/models/llm/analyze_relationship.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/models/products.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/models/recurrence.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/preferences.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/report/activity_report.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/serializers/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/serializers/accounts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/serializers/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/serializers/groups.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/serializers/products.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/serializers/recurrence.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/serializers/signals.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/static/wbcrm/markdown/documentation/activity.md +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/static/wbcrm/markdown/documentation/activitytype.md +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/static/wbcrm/markdown/documentation/group.md +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/static/wbcrm/markdown/documentation/product.md +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/admin.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backend.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/google_calendar_backend.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/request_utils/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/request_utils/external_to_internal/create.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/request_utils/external_to_internal/delete.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/request_utils/external_to_internal/update.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/request_utils/internal_to_external/update.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/tasks.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/tests/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/tests/conftest.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/tests/test_data.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/tests/test_google_backend.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/tests/test_utils.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/typing_informations.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/utils.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/backend.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/msgraph.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/parser.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/conftest.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/fixtures.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/test_admin.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/test_backend.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/test_controller.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/test_parser.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/controller.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/dynamic_preferences_registry.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/preferences.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/shortcuts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/tasks.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/urls.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/utils.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/views.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/admin.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/apps.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/dynamic_preferences_registry.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/management.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/tasks.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/urls.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tasks.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/templates/email/activity.html +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/templates/email/activity_report.html +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/templates/email/daily_summary.html +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/templates/email/global_daily_summary.html +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/accounts/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/accounts/test_models.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/accounts/test_viewsets.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/conftest.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/disable_signals.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/e2e/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/e2e/e2e_wbcrm_utility.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/e2e/test_e2e.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/test_assignee_methods.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/test_chartviewsets.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/test_dto.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/test_filters.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/test_models.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/test_recurrence.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/test_report.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/test_serializers.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/test_tasks.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/test_viewsets.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/tests/tests.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/typings.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/urls.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/accounts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/buttons/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/buttons/accounts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/buttons/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/buttons/signals.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/display/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/display/accounts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/display/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/display/groups.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/display/products.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/endpoints/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/endpoints/accounts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/endpoints/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/endpoints/groups.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/endpoints/products.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/groups.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/menu/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/menu/accounts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/menu/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/menu/groups.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/menu/products.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/mixins.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/previews/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/previews/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/products.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/recurrence.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/titles/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/titles/accounts.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/titles/activities.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/titles/products.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/viewsets/titles/utils.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/workflows/__init__.py +0 -0
- {wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/workflows/assignee_methods.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: wbcrm
|
|
3
|
-
Version: 1.49.
|
|
3
|
+
Version: 1.49.5
|
|
4
4
|
Summary: A workbench module that contains all the functionality related to a customer relationship management.
|
|
5
5
|
Author-email: Christopher Wittlinger <c.wittlinger@stainly.com>
|
|
6
6
|
Requires-Dist: django-eventtools==1.*
|
|
@@ -9,7 +9,7 @@ from celery import shared_task
|
|
|
9
9
|
from dateutil.rrule import rrulestr
|
|
10
10
|
from django.conf import settings
|
|
11
11
|
from django.db import models, transaction
|
|
12
|
-
from django.db.models import Q
|
|
12
|
+
from django.db.models import Exists, OuterRef, Q
|
|
13
13
|
from django.db.models.query import QuerySet
|
|
14
14
|
from django.db.models.signals import m2m_changed, post_delete, post_save
|
|
15
15
|
from django.dispatch import receiver
|
|
@@ -687,6 +687,20 @@ class Activity(Recurrence):
|
|
|
687
687
|
self.last_event_id = last_event.id
|
|
688
688
|
self.save()
|
|
689
689
|
|
|
690
|
+
def get_participants_for_employer(self, employer: Entry) -> QuerySet[Person]:
|
|
691
|
+
rels = (
|
|
692
|
+
ActivityParticipant.objects.filter(activity=self)
|
|
693
|
+
.annotate(
|
|
694
|
+
is_employee=Exists(
|
|
695
|
+
EmployerEmployeeRelationship.objects.filter(
|
|
696
|
+
employee=OuterRef("participant"), employer=employer, primary=True
|
|
697
|
+
)
|
|
698
|
+
)
|
|
699
|
+
)
|
|
700
|
+
.filter(is_employee=True)
|
|
701
|
+
)
|
|
702
|
+
return Person.objects.filter(id__in=rels.values("participant"))
|
|
703
|
+
|
|
690
704
|
@staticmethod
|
|
691
705
|
def get_inrange_activities(
|
|
692
706
|
queryset: QuerySet["Activity"], start_date: date, end_date: date
|
|
@@ -857,7 +871,7 @@ def m2m_changed_companies(sender, instance: Activity, action: str, pk_set: set[i
|
|
|
857
871
|
entry = Entry.objects.get(id=company_id)
|
|
858
872
|
if action == "post_add":
|
|
859
873
|
instance.entities.add(entry)
|
|
860
|
-
elif not instance.
|
|
874
|
+
elif not instance.get_participants_for_employer(entry).exists():
|
|
861
875
|
instance.entities.remove(entry)
|
|
862
876
|
if action == "post_add":
|
|
863
877
|
for company_id in pk_set:
|
|
@@ -1099,12 +1113,7 @@ class ActivityParticipant(models.Model):
|
|
|
1099
1113
|
with suppress(EmployerEmployeeRelationship.DoesNotExist):
|
|
1100
1114
|
rel = EmployerEmployeeRelationship.objects.get(employee=self.participant, primary=True)
|
|
1101
1115
|
# delete only if no other participants are of the same company
|
|
1102
|
-
if (
|
|
1103
|
-
not self.activity.participants.annotate_all()
|
|
1104
|
-
.exclude(id=rel.employee.id)
|
|
1105
|
-
.filter(primary_employer=rel.employer)
|
|
1106
|
-
.exists()
|
|
1107
|
-
):
|
|
1116
|
+
if not self.activity.get_participants_for_employer(rel.employer).exclude(id=rel.employee.id).exists():
|
|
1108
1117
|
self.activity.companies.remove(rel.employer)
|
|
1109
1118
|
self.activity.entities.remove(rel.employer.entry_ptr)
|
|
1110
1119
|
if self.activity.is_active:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/migrations/0005_account_accountrole_accountroletype_and_more.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/tests/__init__.py
RENAMED
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/tests/conftest.py
RENAMED
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/tests/test_data.py
RENAMED
|
File without changes
|
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/tests/test_utils.py
RENAMED
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/google/typing_informations.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/__init__.py
RENAMED
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/conftest.py
RENAMED
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/fixtures.py
RENAMED
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/test_admin.py
RENAMED
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/test_backend.py
RENAMED
|
File without changes
|
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/backends/outlook/tests/test_parser.py
RENAMED
|
File without changes
|
|
File without changes
|
{wbcrm-1.49.3 → wbcrm-1.49.5}/wbcrm/synchronization/activity/dynamic_preferences_registry.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|