diff --git a/crm/api/doc.py b/crm/api/doc.py index 74227b68..afa2f2a6 100644 --- a/crm/api/doc.py +++ b/crm/api/doc.py @@ -663,7 +663,7 @@ def get_fields_meta(doctype, restricted_fieldtypes=None, as_array=False, only_re @frappe.whitelist() def remove_assignments(doctype, name, assignees, ignore_permissions=False): - assignees = json.loads(assignees) + assignees = frappe.parse_json(assignees) if not assignees: return diff --git a/frontend/src/components/AssignToBody.vue b/frontend/src/components/AssignToBody.vue index dc71dbea..223d1fb4 100644 --- a/frontend/src/components/AssignToBody.vue +++ b/frontend/src/components/AssignToBody.vue @@ -99,7 +99,6 @@ const oldAssignees = ref([]) const assignToMe = ref(false) const error = ref('') -const ownerRemoved = ref(false) const { users, getUser } = usersStore() @@ -143,7 +142,6 @@ watch(assignToMe, (val) => { watch( () => props.open, (val) => { - ownerRemoved.value = false if (val) { oldAssignees.value = [...(assignees.value || [])] @@ -170,15 +168,10 @@ async function updateAssignees() { .map((assignee) => assignee.name) if (removedAssignees.length) { - if (!ownerRemoved.value && removedAssignees.includes(owner.value)) { - ownerRemoved.value = true - return - } - await call('crm.api.doc.remove_assignments', { doctype: props.doctype, name: props.doc.name, - assignees: JSON.stringify(removedAssignees), + assignees: removedAssignees, }) toast.success(__('Assignees removed successfully.')) }