Merge pull request #24742 from deepeshgarg007/project_filter_search_fields
fix: Add searchfields in project query
This commit is contained in:
commit
d7a81be56d
@ -224,13 +224,20 @@ def check_if_child_exists(name):
|
|||||||
@frappe.validate_and_sanitize_search_inputs
|
@frappe.validate_and_sanitize_search_inputs
|
||||||
def get_project(doctype, txt, searchfield, start, page_len, filters):
|
def get_project(doctype, txt, searchfield, start, page_len, filters):
|
||||||
from erpnext.controllers.queries import get_match_cond
|
from erpnext.controllers.queries import get_match_cond
|
||||||
return frappe.db.sql(""" select name from `tabProject`
|
meta = frappe.get_meta(doctype)
|
||||||
|
searchfields = meta.get_search_fields()
|
||||||
|
search_columns = ", " + ", ".join(searchfields) if searchfields else ''
|
||||||
|
search_cond = " or " + " or ".join([field + " like %(txt)s" for field in searchfields])
|
||||||
|
|
||||||
|
return frappe.db.sql(""" select name {search_columns} from `tabProject`
|
||||||
where %(key)s like %(txt)s
|
where %(key)s like %(txt)s
|
||||||
%(mcond)s
|
%(mcond)s
|
||||||
|
{search_condition}
|
||||||
order by name
|
order by name
|
||||||
limit %(start)s, %(page_len)s""" % {
|
limit %(start)s, %(page_len)s""".format(search_columns = search_columns,
|
||||||
|
search_condition=search_cond), {
|
||||||
'key': searchfield,
|
'key': searchfield,
|
||||||
'txt': frappe.db.escape('%' + txt + '%'),
|
'txt': '%' + txt + '%',
|
||||||
'mcond':get_match_cond(doctype),
|
'mcond':get_match_cond(doctype),
|
||||||
'start': start,
|
'start': start,
|
||||||
'page_len': page_len
|
'page_len': page_len
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user