fix: added is_view check to differentiate between standard view

This commit is contained in:
Shariq Ansari 2024-01-22 22:37:31 +05:30
parent a3b7f030f8
commit 196eb89154
4 changed files with 14 additions and 3 deletions

View File

@ -212,7 +212,7 @@ def get_list_data(
"page_length": page_length,
"page_length_count": page_length_count,
"is_default": is_default,
"views": get_views(doctype),
"views": get_views(doctype, is_view=True),
"total_count": frappe.client.get_count(doctype, filters=filters),
"row_count": len(data),
}

View File

@ -3,7 +3,7 @@ from pypika import Criterion
@frappe.whitelist()
def get_views(doctype):
def get_views(doctype, is_view=False):
if frappe.session.user == "Guest":
frappe.throw("Authentication failed", exc=frappe.AuthenticationError)
@ -13,6 +13,8 @@ def get_views(doctype):
.select("*")
.where(Criterion.any([View.user == '', View.user == frappe.session.user]))
)
if is_view:
query = query.where(View.is_view == True)
if doctype:
query = query.where(View.dt == doctype)
views = query.run(as_dict=True)

View File

@ -12,6 +12,7 @@
"route_name",
"pinned",
"public",
"is_view",
"columns_tab",
"load_default_columns",
"columns",
@ -104,11 +105,17 @@
"fieldname": "public",
"fieldtype": "Check",
"label": "Public"
},
{
"default": "0",
"fieldname": "is_view",
"fieldtype": "Check",
"label": "Is View"
}
],
"index_web_pages_for_search": 1,
"links": [],
"modified": "2024-01-19 21:44:52.285420",
"modified": "2024-01-22 21:44:41.733977",
"modified_by": "Administrator",
"module": "FCRM",
"name": "CRM View Settings",

View File

@ -24,6 +24,7 @@ def create(view):
doc = frappe.new_doc("CRM View Settings")
doc.name = view.label
doc.label = view.label
doc.is_view = True
doc.dt = view.doctype
doc.user = frappe.session.user
doc.route_name = view.route_name or ""
@ -49,6 +50,7 @@ def update(view):
doc = frappe.get_doc("CRM View Settings", view.name)
doc.label = view.label
doc.is_view = True
doc.route_name = view.route_name or ""
doc.load_default_columns = view.load_default_columns or False
doc.filters = json.dumps(filters)