MCPcopy Index your code
hub / github.com/diffgram/diffgram / task_user_modify_core

Function task_user_modify_core

default/methods/task/task/task_user_modify.py:39–73  ·  view source on GitHub ↗
(session, task_id, project_string_id, user_id_list, relation, log)

Source from the content-addressed store, hash-verified

37
38
39def task_user_modify_core(session, task_id, project_string_id, user_id_list, relation, log):
40 result = {}
41 users_to_remove = session.query(TaskUser).filter(TaskUser.task_id == task_id).filter(
42 TaskUser.relation == relation)
43 if (len(user_id_list) > 0):
44 users_to_remove = users_to_remove.filter(TaskUser.user_id.notin_(user_id_list))
45
46 for user_to_remove in users_to_remove.all():
47 user_to_remove_id = user_to_remove.__dict__["id"]
48
49 if len(log["error"].keys()) >= 1:
50 return jsonify(log = log), 400
51
52 result, log = task_user_remove_core(
53 session = session,
54 task_user_id = user_to_remove_id,
55 project_string_id = project_string_id,
56 log = log
57 )
58
59 for user in user_id_list:
60 user_already_assigned = session.query(TaskUser).filter(TaskUser.user_id == user).filter(
61 TaskUser.task_id == task_id).filter(TaskUser.relation == relation).all()
62 if (len(user_already_assigned) > 0):
63 continue
64
65 result, log = api_task_user_add_core(
66 session = session,
67 task_id = task_id,
68 user_id = user,
69 relation = relation,
70 project_string_id = project_string_id,
71 log = log
72 )
73 return result, log
74
75
76def api_task_user_add_core(session: 'Session',

Callers 1

api_task_user_modifyFunction · 0.85

Calls 2

task_user_remove_coreFunction · 0.70
api_task_user_add_coreFunction · 0.70

Tested by

no test coverage detected