fix: get default view api
This commit is contained in:
parent
1ca4d0bd4b
commit
dc61df1717
@ -8,9 +8,14 @@ def get_views(doctype):
|
|||||||
query = (
|
query = (
|
||||||
frappe.qb.from_(View)
|
frappe.qb.from_(View)
|
||||||
.select("*")
|
.select("*")
|
||||||
.where(Criterion.any([View.user == '', View.user == frappe.session.user]))
|
.where(Criterion.any([View.user == "", View.user == frappe.session.user]))
|
||||||
)
|
)
|
||||||
if doctype:
|
if doctype:
|
||||||
query = query.where(View.dt == doctype)
|
query = query.where(View.dt == doctype)
|
||||||
views = query.run(as_dict=True)
|
views = query.run(as_dict=True)
|
||||||
return views
|
return views
|
||||||
|
|
||||||
|
|
||||||
|
@frappe.whitelist()
|
||||||
|
def get_default_view():
|
||||||
|
return frappe.db.get_single_value("FCRM Settings", "default_view") or None
|
||||||
|
|||||||
@ -6,7 +6,14 @@ export const viewsStore = defineStore('crm-views', (doctype) => {
|
|||||||
let viewsByName = reactive({})
|
let viewsByName = reactive({})
|
||||||
let pinnedViews = ref([])
|
let pinnedViews = ref([])
|
||||||
let publicViews = ref([])
|
let publicViews = ref([])
|
||||||
let defaultView = ref({})
|
let standardViews = ref({})
|
||||||
|
|
||||||
|
// Default view
|
||||||
|
const defaultView = createResource({
|
||||||
|
url: 'crm.api.views.get_default_view',
|
||||||
|
cache: 'crm-default-view',
|
||||||
|
auto: true,
|
||||||
|
})
|
||||||
|
|
||||||
// Views
|
// Views
|
||||||
const views = createResource({
|
const views = createResource({
|
||||||
@ -28,7 +35,7 @@ export const viewsStore = defineStore('crm-views', (doctype) => {
|
|||||||
publicViews.value?.push(view)
|
publicViews.value?.push(view)
|
||||||
}
|
}
|
||||||
if (view.is_default && view.dt) {
|
if (view.is_default && view.dt) {
|
||||||
defaultView.value[view.dt + ' ' + view.type] = view
|
standardViews.value[view.dt + ' ' + view.type] = view
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return views
|
return views
|
||||||
@ -38,7 +45,7 @@ export const viewsStore = defineStore('crm-views', (doctype) => {
|
|||||||
function getView(view, type, doctype = null) {
|
function getView(view, type, doctype = null) {
|
||||||
type = type || 'list'
|
type = type || 'list'
|
||||||
if (!view && doctype) {
|
if (!view && doctype) {
|
||||||
return defaultView.value[doctype + ' ' + type] || null
|
return standardViews.value[doctype + ' ' + type] || null
|
||||||
}
|
}
|
||||||
return viewsByName[view]
|
return viewsByName[view]
|
||||||
}
|
}
|
||||||
@ -60,6 +67,7 @@ export const viewsStore = defineStore('crm-views', (doctype) => {
|
|||||||
return {
|
return {
|
||||||
views,
|
views,
|
||||||
defaultView,
|
defaultView,
|
||||||
|
standardViews,
|
||||||
getPinnedViews,
|
getPinnedViews,
|
||||||
getPublicViews,
|
getPublicViews,
|
||||||
reload,
|
reload,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user