1
0
forked from test/crm

fix: remove multiple assignees not working

(cherry picked from commit 58f09331b0076d9faf46deba694c934b8ac72821)
This commit is contained in:
Shariq Ansari 2025-06-05 18:52:39 +05:30 committed by Mergify
parent 260a9d8230
commit 90c2832f44
2 changed files with 24 additions and 7 deletions

View File

@ -3,6 +3,7 @@ import json
import frappe
from frappe import _
from frappe.custom.doctype.property_setter.property_setter import make_property_setter
from frappe.desk.form.assign_to import set_status
from frappe.model import no_value_fields
from frappe.model.document import get_controller
from frappe.utils import make_filter_tuple
@ -658,6 +659,24 @@ def get_fields_meta(doctype, restricted_fieldtypes=None, as_array=False, only_re
return fields_meta
@frappe.whitelist()
def remove_assignments(doctype, name, assignees, ignore_permissions=False):
assignees = json.loads(assignees)
if not assignees:
return
for assign_to in assignees:
set_status(
doctype,
name,
todo=None,
assign_to=assign_to,
status="Cancelled",
ignore_permissions=ignore_permissions,
)
@frappe.whitelist()
def get_assigned_users(doctype, name, default_assigned_to=None):
assigned_users = frappe.get_all(
"ToDo",

View File

@ -145,13 +145,11 @@ function updateAssignees() {
.map((assignee) => assignee.name)
if (removedAssignees.length) {
for (let a of removedAssignees) {
call('frappe.desk.form.assign_to.remove', {
doctype: props.doctype,
name: props.doc.name,
assign_to: a,
})
}
call('crm.api.doc.remove_assignments', {
doctype: props.doctype,
name: props.doc.name,
assignees: JSON.stringify(removedAssignees),
})
}
if (addedAssignees.length) {