|
32 | 32 | from app.iris_engine.utils.tracker import track_activity |
33 | 33 | from app.models.models import CaseTasks |
34 | 34 | from app.models.pagination_parameters import PaginationParameters |
35 | | -from app.schema.marshables import CaseTaskSchema |
36 | 35 | from app.business.errors import BusinessProcessingError |
37 | 36 | from app.business.errors import ObjectNotFoundError |
38 | | -from marshmallow.exceptions import ValidationError |
39 | | -from app.iris_engine.module_handler.module_handler import call_deprecated_on_preload_modules_hook |
40 | | - |
41 | | - |
42 | | -def _load(request_data, **kwargs): |
43 | | - try: |
44 | | - add_task_schema = CaseTaskSchema() |
45 | | - return add_task_schema.load(request_data, **kwargs) |
46 | | - except ValidationError as e: |
47 | | - raise BusinessProcessingError('Data error', e.messages) |
48 | 37 |
|
49 | 38 |
|
50 | 39 | def tasks_delete(task: CaseTasks): |
@@ -83,32 +72,18 @@ def tasks_filter(case_identifier, pagination_parameters: PaginationParameters) - |
83 | 72 | return get_filtered_tasks(case_identifier, pagination_parameters) |
84 | 73 |
|
85 | 74 |
|
86 | | -def tasks_update(task: CaseTasks, request_json): |
87 | | - case_identifier = task.task_case_id |
88 | | - request_data = call_deprecated_on_preload_modules_hook('task_update', request_json, case_identifier) |
89 | | - |
90 | | - if 'task_assignee_id' in request_data or 'task_assignees_id' not in request_data: |
91 | | - raise BusinessProcessingError('task_assignee_id is not valid anymore since v1.5.0') |
92 | | - |
93 | | - task_assignee_list = request_data['task_assignees_id'] |
94 | | - del request_data['task_assignees_id'] |
95 | | - |
96 | | - request_data['id'] = task.id |
97 | | - task = _load(request_data, instance=task) |
98 | | - |
| 75 | +def tasks_update(task: CaseTasks, task_assignee_list): |
99 | 76 | task.task_userid_update = iris_current_user.id |
100 | 77 | task.task_last_update = datetime.utcnow() |
101 | 78 |
|
102 | | - update_task_assignees(task.id, task_assignee_list, case_identifier) |
103 | | - |
104 | | - update_tasks_state(caseid=case_identifier) |
| 79 | + update_task_assignees(task.id, task_assignee_list, task.task_case_id) |
| 80 | + update_tasks_state(task.task_case_id) |
105 | 81 |
|
106 | 82 | db.session.commit() |
107 | 83 |
|
108 | | - task = call_modules_hook('on_postload_task_update', data=task, caseid=case_identifier) |
109 | | - |
| 84 | + task = call_modules_hook('on_postload_task_update', data=task, caseid=task.task_case_id) |
110 | 85 | if not task: |
111 | 86 | raise BusinessProcessingError('Unable to update task for internal reasons') |
112 | 87 |
|
113 | | - track_activity(f'updated task "{task.task_title}" (status {task.status.status_name})', caseid=case_identifier) |
| 88 | + track_activity(f'updated task "{task.task_title}" (status {task.status.status_name})', caseid=task.task_case_id) |
114 | 89 | return task |
0 commit comments