From 86984abd2b3ed5d1bcab17dfc3135bd8d2181309 Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Wed, 13 Dec 2023 15:32:55 +0530 Subject: [PATCH] fix: added communication status in statuses store --- frontend/src/stores/statuses.js | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/frontend/src/stores/statuses.js b/frontend/src/stores/statuses.js index e38a8ff1..cc0bf7d3 100644 --- a/frontend/src/stores/statuses.js +++ b/frontend/src/stores/statuses.js @@ -6,6 +6,7 @@ import IndicatorIcon from '@/components/Icons/IndicatorIcon.vue' export const statusesStore = defineStore('crm-statuses', () => { let leadStatusesByName = reactive({}) let dealStatusesByName = reactive({}) + let communicationStatusesByName = reactive({}) const leadStatuses = createListResource({ doctype: 'CRM Lead Status', @@ -41,6 +42,20 @@ export const statusesStore = defineStore('crm-statuses', () => { }, }) + const communicationStatuses = createListResource({ + doctype: 'CRM Communication Status', + fields: ['name'], + cache: 'communication-statuses', + initialData: [], + auto: true, + transform(statuses) { + for (let status of statuses) { + communicationStatusesByName[status.name] = status + } + return statuses + }, + }) + function colorClasses(color, onlyIcon = false) { let textColor = `!text-${color}-600` if (color == 'black') { @@ -62,6 +77,10 @@ export const statusesStore = defineStore('crm-statuses', () => { return dealStatusesByName[name] } + function getCommunicationStatus(name) { + return communicationStatuses[name] + } + function statusOptions(doctype, action) { let statusesByName = doctype == 'deal' ? dealStatusesByName : leadStatusesByName @@ -84,8 +103,10 @@ export const statusesStore = defineStore('crm-statuses', () => { return { leadStatuses, dealStatuses, + communicationStatuses, getLeadStatus, getDealStatus, + getCommunicationStatus, statusOptions, } })