This commit is contained in:
Muhammad Shahzad 2024-06-05 22:58:34 +05:00
parent 7e451af7a2
commit 1342de520d
5 changed files with 191 additions and 49 deletions

View File

@ -1,55 +1,131 @@
<script setup> <script setup>
import LogisticsCardStatistics from '@/views/apps/logistics/LogisticsCardStatistics.vue' import AnalyticsAward from '@/views/dashboards/analytics/AnalyticsAward.vue'
import LogisticsDeliveryExpectations from '@/views/apps/logistics/LogisticsDeliveryExpectations.vue' import AnalyticsDepositWithdraw from '@/views/dashboards/analytics/AnalyticsDepositWithdraw.vue'
import LogisticsDeliveryPerformance from '@/views/apps/logistics/LogisticsDeliveryPerformance.vue' import AnalyticsPerformance from '@/views/dashboards/analytics/AnalyticsPerformance.vue'
import LogisticsOrderByCountries from '@/views/apps/logistics/LogisticsOrderByCountries.vue' import AnalyticsSalesByCountries from '@/views/dashboards/analytics/AnalyticsSalesByCountries.vue'
import LogisticsOverviewTable from '@/views/apps/logistics/LogisticsOverviewTable.vue' import AnalyticsSessionBarCharts from '@/views/dashboards/analytics/AnalyticsSessionsBarCharts.vue'
import LogisticsShipmentStatistics from '@/views/apps/logistics/LogisticsShipmentStatistics.vue' import AnalyticsTotalEarning from '@/views/dashboards/analytics/AnalyticsTotalEarning.vue'
import LogisticsVehicleOverview from '@/views/apps/logistics/LogisticsVehicleOverview.vue' import AnalyticsTotalProfit from '@/views/dashboards/analytics/AnalyticsTotalProfit.vue'
import AnalyticsTransactions from '@/views/dashboards/analytics/AnalyticsTransactions.vue'
import AnalyticsUserTable from '@/views/dashboards/analytics/AnalyticsUserTable.vue'
import AnalyticsWeeklyOverview from '@/views/dashboards/analytics/AnalyticsWeeklyOverview.vue'
const totalProfit = {
title: 'Total Profit',
color: 'secondary',
icon: 'ri-pie-chart-2-line',
stats: '$25.6k',
change: 42,
subtitle: 'Weekly Project',
}
const newProject = {
title: 'New Project',
color: 'primary',
icon: 'ri-file-word-2-line',
stats: '862',
change: -18,
subtitle: 'Yearly Project',
}
</script> </script>
<template> <template>
<VRow class="match-height"> <VRow class="match-height">
<VCol cols="12">
<LogisticsCardStatistics />
</VCol>
<VCol <VCol
cols="12" cols="12"
md="6" md="4"
> >
<LogisticsVehicleOverview /> <AnalyticsAward />
</VCol> </VCol>
<VCol <VCol
cols="12" cols="12"
md="6" md="8"
> >
<LogisticsShipmentStatistics /> <AnalyticsTransactions />
</VCol>
<VCol
cols="12"
md="4"
sm="6"
>
<AnalyticsWeeklyOverview />
</VCol>
<VCol
cols="12"
md="4"
sm="6"
>
<AnalyticsTotalEarning />
</VCol> </VCol>
<VCol <VCol
cols="12" cols="12"
md="4" md="4"
> >
<LogisticsDeliveryPerformance /> <VRow class="match-height">
<VCol
cols="12"
sm="6"
>
<AnalyticsTotalProfit />
</VCol>
<VCol
cols="12"
sm="6"
>
<CardStatisticsVertical v-bind="totalProfit" />
</VCol>
<VCol
cols="12"
sm="6"
>
<CardStatisticsVertical v-bind="newProject" />
</VCol>
<VCol
cols="12"
sm="6"
>
<AnalyticsSessionBarCharts />
</VCol>
</VRow>
</VCol> </VCol>
<VCol <VCol
cols="12" cols="12"
md="4" md="4"
> >
<LogisticsDeliveryExpectations /> <AnalyticsPerformance />
</VCol>
<VCol
cols="12"
md="8"
>
<AnalyticsDepositWithdraw />
</VCol> </VCol>
<VCol <VCol
cols="12" cols="12"
md="4" md="4"
> >
<LogisticsOrderByCountries /> <AnalyticsSalesByCountries />
</VCol> </VCol>
<VCol cols="12"> <VCol
<LogisticsOverviewTable /> cols="12"
md="8"
>
<AnalyticsUserTable />
</VCol> </VCol>
</VRow> </VRow>
</template> </template>
<style lang="scss">
@use "@core-scss/template/libs/apex-chart.scss";
</style>

View File

@ -58,7 +58,18 @@ const formatDateDate = (date) => {
}; };
return messageDate.toLocaleDateString('en-US', options).replace(/\//g, '-'); return messageDate.toLocaleDateString('en-US', options).replace(/\//g, '-');
}; };
const breadcrums = [
{
title: 'Meeting',
disabled: false,
to: '/admin/patient/meetings/'+patientId,
},
{
title: 'Notes',
disabled: false,
}
];
const downloadFile = (fileUrl) => { const downloadFile = (fileUrl) => {
const link = document.createElement('a'); const link = document.createElement('a');
link.href = fileUrl; link.href = fileUrl;
@ -70,32 +81,70 @@ const downloadFile = (fileUrl) => {
</script> </script>
<template> <template>
<v-breadcrumbs :items="breadcrums" class="text-primary pt-0 pb-0 mb-5">
<template v-slot:divider style="padding-top:0px; padding-bottom:0px">
>
</template>
</v-breadcrumbs>
<VCard title="Notes"> <VCard title="Notes">
<VList class="pb-0" lines="two" v-if="notes.length > 0"> <VCardText>
<VTimeline
side="end"
align="start"
line-inset="8"
truncate-line="both"
density="compact"
>
<!-- SECTION Timeline Item: Flight -->
<template v-for="(p_note, index) in notes" :key="index"> <template v-for="(p_note, index) in notes" :key="index">
<VListItem class="pb-0"> <VTimelineItem
<VListItemTitle> dot-color="primary"
<span class="pb-0">{{ p_note.note }}</span> size="x-small"
<span v-if="p_note.file_url" style="font-size: 12px;float: right;"> >
<a type="button" @click="downloadFile(p_note.file_url)"> <!-- 👉 Header -->
<VIcon>ri-file-download-line</VIcon> <div class="d-flex justify-space-between align-center gap-2 flex-wrap">
</a> <span class="app-timeline-title">
{{p_note.note}}
</span> </span>
<p class="text-start fs-5 mb-0 pb-0 text-grey"> <span class="app-timeline-meta">{{ p_note.date }}</span>
<small>{{ p_note.doctor }}</small> <!-- <span></span> -->
</p> </div>
<p class="text-end fs-5 mb-0 pb-0 text-grey"><small>{{ p_note.date }}</small></p>
</VListItemTitle> <!-- 👉 Content -->
</VListItem> <div class="app-timeline-text mb-1">
<VDivider v-if="index !== notes.length - 1" /> <span>{{ p_note.doctor }}</span>
</template> <VIcon
</VList> size="20"
<template v-else> icon="tabler-arrow-right"
<VCard> class="mx-2 flip-in-rtl"
<VAlert border="start" color="#003152" variant="tonal"> />
<div class="text-center">No data found</div> <!-- <span>Heathrow Airport, London</span> -->
</VAlert> </div>
</VCard>
<!-- <p class="app-timeline-meta mb-2">
6:30 AM
</p> -->
<!-- <div class="app-timeline-text d-flex align-center gap-2">
<div>
<VImg
:src="pdf"
:width="22"
/>
</div>
<span>booking-card.pdf</span>
</div> -->
</VTimelineItem>
</template> </template>
<!-- !SECTION -->
<!-- !SECTION -->
</VTimeline>
</VCardText>
</VCard> </VCard>
</template> </template>

View File

@ -136,8 +136,25 @@ const close = () => {
prescriptionIndex.value = -1 prescriptionIndex.value = -1
prescriptionItem.value = { ...defaultItem.value } prescriptionItem.value = { ...defaultItem.value }
} }
const breadcrums = [
{
title: 'Meeting',
disabled: false,
to: '/admin/patient/meetings/'+patientId,
},
{
title: 'Prescription',
disabled: false,
}
];
</script> </script>
<template> <template>
<v-breadcrumbs :items="breadcrums" class="text-primary pt-0 pb-0 mb-5">
<template v-slot:divider style="padding-top:0px; padding-bottom:0px">
>
</template>
</v-breadcrumbs>
<v-row> <v-row>
<v-col cols="12" md="12" v-if="itemsPrescriptions"> <v-col cols="12" md="12" v-if="itemsPrescriptions">
<v-card title="Prescriptions" v-if="prescription"> <v-card title="Prescriptions" v-if="prescription">

View File

@ -162,7 +162,7 @@ const options = [
> >
<template #activator="{ props }"> <template #activator="{ props }">
<i class="ri-more-2-line cursor-pointer" v-bind="props"></i> <i class="ri-more-2-line cursor-pointer" style="font-size: 32px;" v-bind="props"></i>
</template> </template>

View File

@ -36,7 +36,7 @@ export const routes = [
{ {
path: '/admin/dashboard', path: '/admin/dashboard',
name: 'admin-dashboard', name: 'admin-dashboard',
component: () => import('@/pages/dashboards/crm.vue'), component: () => import('@/pages/dashboards/analytics.vue'),
}, },
{ {
path: '/admin/patients', path: '/admin/patients',