diff --git a/crm/api/doc.py b/crm/api/doc.py index 05d5623e..346b563e 100644 --- a/crm/api/doc.py +++ b/crm/api/doc.py @@ -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), } diff --git a/crm/api/views.py b/crm/api/views.py index 6a95adbf..ac69b46a 100644 --- a/crm/api/views.py +++ b/crm/api/views.py @@ -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) diff --git a/crm/fcrm/doctype/crm_view_settings/crm_view_settings.json b/crm/fcrm/doctype/crm_view_settings/crm_view_settings.json index d4574d55..a1cd5875 100644 --- a/crm/fcrm/doctype/crm_view_settings/crm_view_settings.json +++ b/crm/fcrm/doctype/crm_view_settings/crm_view_settings.json @@ -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", diff --git a/crm/fcrm/doctype/crm_view_settings/crm_view_settings.py b/crm/fcrm/doctype/crm_view_settings/crm_view_settings.py index a7eb8595..82fff89c 100644 --- a/crm/fcrm/doctype/crm_view_settings/crm_view_settings.py +++ b/crm/fcrm/doctype/crm_view_settings/crm_view_settings.py @@ -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)