fix: implemented ViewControls for Call Logs
This commit is contained in:
parent
4dd53f8199
commit
1e3e898a97
@ -4,21 +4,16 @@
|
|||||||
<Breadcrumbs :items="breadcrumbs" />
|
<Breadcrumbs :items="breadcrumbs" />
|
||||||
</template>
|
</template>
|
||||||
</LayoutHeader>
|
</LayoutHeader>
|
||||||
<div class="flex items-center justify-between px-5 pb-4 pt-3">
|
<ViewControls v-model="callLogs" doctype="CRM Call Log" />
|
||||||
<div class="flex items-center gap-2">
|
|
||||||
<SortBy doctype="CRM Call Log" />
|
|
||||||
<Filter doctype="CRM Call Log" />
|
|
||||||
</div>
|
|
||||||
<div class="flex items-center gap-2">
|
|
||||||
<ViewSettings doctype="CRM Call Log" v-model="callLogs" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<CallLogsListView
|
<CallLogsListView
|
||||||
v-if="callLogs.data && rows.length"
|
v-if="callLogs.data && rows.length"
|
||||||
:rows="rows"
|
:rows="rows"
|
||||||
:columns="callLogs.data.columns"
|
:columns="callLogs.data.columns"
|
||||||
/>
|
/>
|
||||||
<div v-else-if="callLogs.data" class="flex h-full items-center justify-center">
|
<div
|
||||||
|
v-else-if="callLogs.data"
|
||||||
|
class="flex h-full items-center justify-center"
|
||||||
|
>
|
||||||
<div
|
<div
|
||||||
class="flex flex-col items-center gap-3 text-xl font-medium text-gray-500"
|
class="flex flex-col items-center gap-3 text-xl font-medium text-gray-500"
|
||||||
>
|
>
|
||||||
@ -31,9 +26,7 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
import PhoneIcon from '@/components/Icons/PhoneIcon.vue'
|
import PhoneIcon from '@/components/Icons/PhoneIcon.vue'
|
||||||
import LayoutHeader from '@/components/LayoutHeader.vue'
|
import LayoutHeader from '@/components/LayoutHeader.vue'
|
||||||
import SortBy from '@/components/SortBy.vue'
|
import ViewControls from '@/components/ViewControls.vue'
|
||||||
import Filter from '@/components/Filter.vue'
|
|
||||||
import ViewSettings from '@/components/ViewSettings.vue'
|
|
||||||
import CallLogsListView from '@/components/ListViews/CallLogsListView.vue'
|
import CallLogsListView from '@/components/ListViews/CallLogsListView.vue'
|
||||||
import {
|
import {
|
||||||
secondsToDuration,
|
secondsToDuration,
|
||||||
@ -43,36 +36,21 @@ import {
|
|||||||
} from '@/utils'
|
} from '@/utils'
|
||||||
import { usersStore } from '@/stores/users'
|
import { usersStore } from '@/stores/users'
|
||||||
import { contactsStore } from '@/stores/contacts'
|
import { contactsStore } from '@/stores/contacts'
|
||||||
import { createResource, Breadcrumbs } from 'frappe-ui'
|
import { Breadcrumbs } from 'frappe-ui'
|
||||||
import { computed } from 'vue'
|
import { computed, ref } from 'vue'
|
||||||
|
|
||||||
const { getUser } = usersStore()
|
const { getUser } = usersStore()
|
||||||
const { getContact } = contactsStore()
|
const { getContact } = contactsStore()
|
||||||
|
|
||||||
const breadcrumbs = [{ label: 'Call Logs', route: { name: 'Call Logs' } }]
|
const breadcrumbs = [{ label: 'Call Logs', route: { name: 'Call Logs' } }]
|
||||||
|
|
||||||
function getParams() {
|
const callLogs = ref({})
|
||||||
const filters = {}
|
|
||||||
const order_by = 'creation desc'
|
|
||||||
|
|
||||||
return {
|
|
||||||
doctype: 'CRM Call Log',
|
|
||||||
filters: filters,
|
|
||||||
order_by: order_by,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const callLogs = createResource({
|
|
||||||
url: 'crm.api.doc.get_list_data',
|
|
||||||
params: getParams(),
|
|
||||||
auto: true,
|
|
||||||
})
|
|
||||||
|
|
||||||
const rows = computed(() => {
|
const rows = computed(() => {
|
||||||
if (!callLogs.data?.data) return []
|
if (!callLogs.value?.data?.data) return []
|
||||||
return callLogs.data.data.map((callLog) => {
|
return callLogs.value?.data.data.map((callLog) => {
|
||||||
let _rows = {}
|
let _rows = {}
|
||||||
callLogs.data.rows.forEach((row) => {
|
callLogs.value?.data.rows.forEach((row) => {
|
||||||
_rows[row] = callLog[row]
|
_rows[row] = callLog[row]
|
||||||
|
|
||||||
let incoming = callLog.type === 'Incoming'
|
let incoming = callLog.type === 'Incoming'
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user