This commit is contained in:
Inshal 2024-06-01 04:28:22 +05:00
parent 88c2df5145
commit fc0c654595
5 changed files with 438 additions and 181 deletions

View File

@ -1,4 +1,22 @@
export const GET_BASE_PATH = "" export const GET_BASE_PATH = ""
let MAIN_DOMAIN = "http://127.0.0.1:8000"; let MAIN_DOMAIN = "http://127.0.0.1:8005";
export const ADMIN_LOGIN_API = MAIN_DOMAIN + "/api/admin/login" export const ADMIN_LOGIN_API = MAIN_DOMAIN + "/api/admin/login"
export const PATIENT_LIST_API = MAIN_DOMAIN + "/api/admin/patient-list" export const PATIENT_LIST_API = MAIN_DOMAIN + "/api/admin/patient-list"
export const PATIENT_INFO_API = MAIN_DOMAIN + "/api/admin/patient/"
export const PATIENT_UPDATE_API = MAIN_DOMAIN + "/api/admin/patient-update/"
export const PATIENT_DELETE_API = MAIN_DOMAIN + "/api/admin/patient-delete/"
export const PROVIDER_LIST_API = MAIN_DOMAIN + "/api/admin/telemed-pro-list"
export const PROVIDER_INFO_API = MAIN_DOMAIN + "/api/admin/telemed-pro/"
export const PROVIDER_UPDATE_API = MAIN_DOMAIN + "/api/admin/telemed-pro-update/"
export const PROVIDER_DELETE_API = MAIN_DOMAIN + "/api/admin/telemed-pro-delete/"
export const LABS_LIST_API = MAIN_DOMAIN + "/api/admin/labs-list"
export const LABS_INFO_API = MAIN_DOMAIN + "/api/admin/labs/"
export const LABS_UPDATE_API = MAIN_DOMAIN + "/api/admin/labs-update/"
export const LABS_DELETE_API = MAIN_DOMAIN + "/api/admin/labs-delete/"

View File

@ -1,78 +1,79 @@
<script setup> <script setup>
import data from '@/views/demos/forms/tables/data-table/datatable';
import { useStore } from 'vuex';
const store = useStore()
const editDialog = ref(false) const editDialog = ref(false)
const deleteDialog = ref(false) const deleteDialog = ref(false)
const search = ref('') const search = ref('')
const defaultItem = ref({ const defaultItem = ref({
responsiveId: '',
id: -1, id: -1,
avatar: '', avatar: '',
fullName: '', name: '',
post: '',
email: '', email: '',
city: '', // dob: '',
startDate: '', phone_no: '',
salary: -1,
age: '',
experience: '',
status: -1,
}) })
const editedItem = ref(defaultItem.value) const editedItem = ref(defaultItem.value)
const editedIndex = ref(-1) const editedIndex = ref(-1)
const userList = ref([]) const labsList = ref([])
const isLoading=ref(false) const isLoading=ref(false)
// status options // status options
const selectedOptions = [ const selectedOptions = [
{ {
text: 'Current', text: 'Active',
value: 1, value: 1,
}, },
{ {
text: 'Professional', text: 'InActive',
value: 2, value: 2,
}, },
{
text: 'Rejected',
value: 3,
},
{
text: 'Resigned',
value: 4,
},
{
text: 'Applied',
value: 5,
},
] ]
const refVForm = ref(null)
const formatPhoneNumber = () => {
console.log(editedItem.value)
// Remove non-numeric characters from the input
const numericValue = editedItem.value.contact_no.replace(/\D/g, '');
// Apply formatting logic
if (numericValue.length <= 10) {
editedItem.value.contact_no = numericValue.replace(/(\d{3})(\d{3})(\d{4})/, '($1) $2-$3');
} else {
// Limit the input to a maximum of 14 characters
const truncatedValue = numericValue.slice(0, 10);
editedItem.value.contact_no = truncatedValue.replace(/(\d{3})(\d{3})(\d{4})/, '($1) $2-$3');
}
};
// headers // headers
const headers = [ const headers = [
{
title: 'ID',
key: 'id',
},
{ {
title: 'NAME', title: 'NAME',
key: 'fullName', key: 'name',
}, },
{ {
title: 'EMAIL', title: 'ADDRESS',
key: 'email', key: 'address',
}, },
// {
// title: 'Date Of Birth',
// key: 'dob',
// },
{ {
title: 'DATE', title: 'CONTACT',
key: 'startDate', key: 'contact_no',
},
{
title: 'SALARY',
key: 'salary',
},
{
title: 'AGE',
key: 'age',
},
{
title: 'STATUS',
key: 'status',
}, },
{ {
title: 'ACTIONS', title: 'ACTIONS',
key: 'actions', key: 'actions',
@ -108,13 +109,13 @@ const resolveStatusVariant = status => {
} }
const editItem = item => { const editItem = item => {
editedIndex.value = userList.value.indexOf(item) editedIndex.value = labsList.value.indexOf(item)
editedItem.value = { ...item } editedItem.value = { ...item }
editDialog.value = true editDialog.value = true
} }
const deleteItem = item => { const deleteItem = item => {
editedIndex.value = userList.value.indexOf(item) editedIndex.value = labsList.value.indexOf(item)
editedItem.value = { ...item } editedItem.value = { ...item }
deleteDialog.value = true deleteDialog.value = true
} }
@ -131,34 +132,54 @@ const closeDelete = () => {
editedItem.value = { ...defaultItem.value } editedItem.value = { ...defaultItem.value }
} }
const save = () => { const save = async () => {
if (editedIndex.value > -1) const { valid } = await refVForm.value.validate()
Object.assign(userList.value[editedIndex.value], editedItem.value) console.log(valid)
else if (valid) {
userList.value.push(editedItem.value) if (editedIndex.value > -1){
await store.dispatch('labUpdate',{
id: editedItem.value.id,
name: editedItem.value.name,
address: editedItem.value.address,
contact_no: editedItem.value.contact_no,
})
Object.assign(labsList.value[editedIndex.value], editedItem.value)
}else{
labsList.value.push(editedItem.value)
}
close() close()
} }
const deleteItemConfirm = () => {
userList.value.splice(editedIndex.value, 1)
closeDelete()
} }
const deleteItemConfirm = async() => {
console.log('editedIndex.value',editedIndex.value,editedItem.value.id)
await store.dispatch('labDelete',{
id: editedItem.value.id
})
labsList.value.splice(editedIndex.value, 1)
closeDelete()
}
const getlabsList = computed(async () => {
store.dispatch('updateIsLoading', true)
await store.dispatch('labsList')
console.log('getLabsList',store.getters.getLabsList)
let list = store.getters.getLabsList
store.dispatch('updateIsLoading', false)
labsList.value = list
return labsList.value
});
onMounted(() => { onMounted(() => {
userList.value = JSON.parse(JSON.stringify(data))
}) })
</script> </script>
<template> <template>
<VOverlay <v-row>
v-model="isLoading" <v-col cols="12" md="12" v-if="getlabsList">
contained
persistent
scroll-strategy="none"
class="align-center justify-center"
>
<VProgressCircular indeterminate />
</VOverlay>
<VCardText > <VCardText >
<VRow> <VRow>
<VCol <VCol
@ -181,13 +202,13 @@ onMounted(() => {
</VCardText> </VCardText>
<VDataTable <VDataTable
:headers="headers" :headers="headers"
:items="userList" :items="labsList"
:search="search" :search="search"
:items-per-page="5" :items-per-page="5"
class="text-no-wrap" class="text-no-wrap"
> >
<!-- full name --> <!-- full name -->
<template #item.fullName="{ item }"> <template #item.name="{ item }">
<div class="d-flex align-center"> <div class="d-flex align-center">
<!-- avatar --> <!-- avatar -->
<VAvatar <VAvatar
@ -203,11 +224,11 @@ onMounted(() => {
<span <span
v-else v-else
class="text-sm" class="text-sm"
>{{ avatarText(item.fullName) }}</span> >{{ avatarText(item.name) }}</span>
</VAvatar> </VAvatar>
<div class="d-flex flex-column ms-3"> <div class="d-flex flex-column ms-3">
<span class="d-block font-weight-medium text-high-emphasis text-truncate">{{ item.fullName }}</span> <span class="d-block font-weight-medium text-high-emphasis text-truncate">{{ item.name }}</span>
<small>{{ item.post }}</small> <small>{{ item.post }}</small>
</div> </div>
</div> </div>
@ -241,88 +262,62 @@ onMounted(() => {
</div> </div>
</template> </template>
</VDataTable> </VDataTable>
</v-col>
</v-row>
<!-- 👉 Edit Dialog --> <!-- 👉 Edit Dialog -->
<VDialog <VDialog
v-model="editDialog" v-model="editDialog"
max-width="800px" max-width="600px"
> >
<VForm ref="refVForm" >
<VCard> <VCard>
<VCardTitle> <VCardTitle>
<span class="headline">Edit Item</span> <span class="headline">Edit Lab</span>
</VCardTitle> </VCardTitle>
<VCardText> <VCardText>
<VContainer > <VContainer >
<VRow> <VRow>
<!-- fullName --> <!-- fullName -->
<VCol <VCol cols="12" md="12">
cols="12"
sm="6"
md="4"
>
<VTextField <VTextField
v-model="editedItem.fullName" v-model="editedItem.name"
label="User name" label="Name"
:rules="[requiredValidator]"
/> />
</VCol> </VCol>
<!-- email --> <!-- email -->
<VCol <VCol cols="12" sm="12" md="12">
cols="12"
sm="6"
md="4"
>
<VTextField <VTextField
v-model="editedItem.email" v-model="editedItem.address"
label="Email" label="Address"
:rules="[requiredValidator]"
/> />
</VCol> </VCol>
<!-- salary -->
<VCol <!-- <VCol cols="12" sm="6" md="12">
cols="12"
sm="6"
md="4"
>
<VTextField <VTextField
v-model="editedItem.salary" v-model="editedItem.dob"
label="Salary" label="Date Of Birth"
prefix="$"
type="number"
/> />
</VCol> -->
<VCol cols="12" sm="6" md="12">
<VTextField v-model="editedItem.contact_no" label="Phone Number" pattern="^\(\d{3}\) \d{3}-\d{4}$"
:rules="[requiredPhone, validUSAPhone]" placeholder="i.e. (000) 000-0000"
@input="formatPhoneNumber" max="14" density="comfortable" />
</VCol> </VCol>
<!-- age -->
<VCol
cols="12"
sm="6"
md="4"
>
<VTextField
v-model="editedItem.age"
label="Age"
type="number"
/>
</VCol>
<!-- start date -->
<VCol
cols="12"
sm="6"
md="4"
>
<VTextField
v-model="editedItem.startDate"
label="Date"
/>
</VCol>
<!-- status --> <!-- status -->
<VCol <VCol
cols="12" cols="12"
sm="6"
md="4" md="12"
> >
<VSelect <VSelect
v-model="editedItem.status" v-model="editedItem.status"
@ -355,14 +350,16 @@ onMounted(() => {
> >
Save Save
</VBtn> </VBtn>
</VCardActions> </VCardActions>
</VCard> </VCard>
</VForm>
</VDialog> </VDialog>
<!-- 👉 Delete Dialog --> <!-- 👉 Delete Dialog -->
<VDialog <VDialog
v-model="deleteDialog" v-model="deleteDialog"
max-width="600px" max-width="500px"
> >
<VCard> <VCard>
<VCardTitle> <VCardTitle>

View File

@ -1,7 +1,5 @@
<script setup> <script setup>
import { onBeforeMount, onMounted, onUnmounted } from 'vue';
import { useStore } from 'vuex'; import { useStore } from 'vuex';
const store = useStore() const store = useStore()
const editDialog = ref(false) const editDialog = ref(false)
@ -36,7 +34,9 @@ const selectedOptions = [
const refVForm = ref(null) const refVForm = ref(null)
onBeforeMount(async () => {});
onMounted(async () => {});
onUnmounted(async () => {});
const formatPhoneNumber = () => { const formatPhoneNumber = () => {
console.log(editedItem.value) console.log(editedItem.value)
// Remove non-numeric characters from the input // Remove non-numeric characters from the input
@ -53,6 +53,10 @@ const formatPhoneNumber = () => {
}; };
// headers // headers
const headers = [ const headers = [
{
title: 'ID',
key: 'id',
},
{ {
title: 'NAME', title: 'NAME',
key: 'name', key: 'name',
@ -111,6 +115,7 @@ const editItem = item => {
} }
const deleteItem = item => { const deleteItem = item => {
console.log('del',item)
editedIndex.value = patientList.value.indexOf(item) editedIndex.value = patientList.value.indexOf(item)
editedItem.value = { ...item } editedItem.value = { ...item }
deleteDialog.value = true deleteDialog.value = true
@ -132,17 +137,32 @@ const save = async () => {
const { valid } = await refVForm.value.validate() const { valid } = await refVForm.value.validate()
console.log(valid) console.log(valid)
if (valid) { if (valid) {
console.log('editedItem.value',editedItem.value);
if (editedIndex.value > -1) if (editedIndex.value > -1)
{
await store.dispatch('patientUpdate',{
id: editedItem.value.id,
first_name: editedItem.value.first_name,
last_name: editedItem.value.last_name,
email: editedItem.value.email,
phone_no: editedItem.value.phone_no,
dob: editedItem.value.dob,
})
Object.assign(patientList.value[editedIndex.value], editedItem.value) Object.assign(patientList.value[editedIndex.value], editedItem.value)
else }else{
patientList.value.push(editedItem.value) patientList.value.push(editedItem.value)
}
close() close()
} }
} }
const deleteItemConfirm = () => { const deleteItemConfirm = async () => {
console.log('editedIndex.value',editedIndex.value,editedItem.value.id)
await store.dispatch('patientDelete',{
id: editedItem.value.id
})
patientList.value.splice(editedIndex.value, 1) patientList.value.splice(editedIndex.value, 1)
closeDelete() closeDelete()
} }
@ -192,6 +212,9 @@ onMounted(() => {
:items-per-page="5" :items-per-page="5"
class="text-no-wrap" class="text-no-wrap"
> >
<template #item.id="{ item }">
{{ item.id }}
</template>
<!-- full name --> <!-- full name -->
<template #item.name="{ item }"> <template #item.name="{ item }">
<div class="d-flex align-center"> <div class="d-flex align-center">

View File

@ -12,14 +12,14 @@ const defaultItem = ref({
avatar: '', avatar: '',
name: '', name: '',
email: '', email: '',
dob: '', // dob: '',
phone_no: '', phone_no: '',
}) })
const editedItem = ref(defaultItem.value) const editedItem = ref(defaultItem.value)
const editedIndex = ref(-1) const editedIndex = ref(-1)
const patientList = ref([]) const providersList = ref([])
const isLoading=ref(false) const isLoading=ref(false)
// status options // status options
const selectedOptions = [ const selectedOptions = [
@ -53,6 +53,10 @@ const formatPhoneNumber = () => {
}; };
// headers // headers
const headers = [ const headers = [
{
title: 'ID',
key: 'id',
},
{ {
title: 'NAME', title: 'NAME',
key: 'name', key: 'name',
@ -61,10 +65,10 @@ const headers = [
title: 'EMAIL', title: 'EMAIL',
key: 'email', key: 'email',
}, },
{ // {
title: 'Date Of Birth', // title: 'Date Of Birth',
key: 'dob', // key: 'dob',
}, // },
{ {
title: 'Phone', title: 'Phone',
key: 'phone_no', key: 'phone_no',
@ -105,13 +109,13 @@ const resolveStatusVariant = status => {
} }
const editItem = item => { const editItem = item => {
editedIndex.value = patientList.value.indexOf(item) editedIndex.value = providersList.value.indexOf(item)
editedItem.value = { ...item } editedItem.value = { ...item }
editDialog.value = true editDialog.value = true
} }
const deleteItem = item => { const deleteItem = item => {
editedIndex.value = patientList.value.indexOf(item) editedIndex.value = providersList.value.indexOf(item)
editedItem.value = { ...item } editedItem.value = { ...item }
deleteDialog.value = true deleteDialog.value = true
} }
@ -132,28 +136,39 @@ const save = async () => {
const { valid } = await refVForm.value.validate() const { valid } = await refVForm.value.validate()
console.log(valid) console.log(valid)
if (valid) { if (valid) {
if (editedIndex.value > -1) if (editedIndex.value > -1){
Object.assign(patientList.value[editedIndex.value], editedItem.value) await store.dispatch('providerUpdate',{
else id: editedItem.value.id,
patientList.value.push(editedItem.value) first_name: editedItem.value.first_name,
last_name: editedItem.value.last_name,
email: editedItem.value.email,
})
Object.assign(providersList.value[editedIndex.value], editedItem.value)
}else{
providersList.value.push(editedItem.value)
}
close() close()
} }
} }
const deleteItemConfirm = () => { const deleteItemConfirm = async() => {
patientList.value.splice(editedIndex.value, 1) console.log('editedIndex.value',editedIndex.value,editedItem.value.id)
await store.dispatch('providerDelete',{
id: editedItem.value.id
})
providersList.value.splice(editedIndex.value, 1)
closeDelete() closeDelete()
} }
const getPatientList = computed(async () => { const getprovidersList = computed(async () => {
store.dispatch('updateIsLoading', true) store.dispatch('updateIsLoading', true)
await store.dispatch('patientList') await store.dispatch('providersList')
console.log('patientList',store.getters.getPatientList) console.log('getProvidersList',store.getters.getProvidersList)
let list = store.getters.getPatientList let list = store.getters.getProvidersList
store.dispatch('updateIsLoading', false) store.dispatch('updateIsLoading', false)
patientList.value = list providersList.value = list
return patientList.value return providersList.value
}); });
onMounted(() => { onMounted(() => {
@ -164,7 +179,7 @@ onMounted(() => {
<template> <template>
<v-row> <v-row>
<v-col cols="12" md="12" v-if="getPatientList"> <v-col cols="12" md="12" v-if="getprovidersList">
<VCardText > <VCardText >
<VRow> <VRow>
<VCol <VCol
@ -187,7 +202,7 @@ onMounted(() => {
</VCardText> </VCardText>
<VDataTable <VDataTable
:headers="headers" :headers="headers"
:items="patientList" :items="providersList"
:search="search" :search="search"
:items-per-page="5" :items-per-page="5"
class="text-no-wrap" class="text-no-wrap"
@ -257,7 +272,7 @@ onMounted(() => {
<VForm ref="refVForm" > <VForm ref="refVForm" >
<VCard> <VCard>
<VCardTitle> <VCardTitle>
<span class="headline">Edit Patient</span> <span class="headline">Edit Provider</span>
</VCardTitle> </VCardTitle>
<VCardText> <VCardText>
@ -290,12 +305,12 @@ onMounted(() => {
</VCol> </VCol>
<VCol cols="12" sm="6" md="12"> <!-- <VCol cols="12" sm="6" md="12">
<VTextField <VTextField
v-model="editedItem.dob" v-model="editedItem.dob"
label="Date Of Birth" label="Date Of Birth"
/> />
</VCol> </VCol> -->
<VCol cols="12" sm="6" md="12"> <VCol cols="12" sm="6" md="12">
<VTextField v-model="editedItem.phone_no" label="Phone Number" pattern="^\(\d{3}\) \d{3}-\d{4}$" <VTextField v-model="editedItem.phone_no" label="Phone Number" pattern="^\(\d{3}\) \d{3}-\d{4}$"
:rules="[requiredPhone, validUSAPhone]" placeholder="i.e. (000) 000-0000" :rules="[requiredPhone, validUSAPhone]" placeholder="i.e. (000) 000-0000"

View File

@ -1,11 +1,23 @@
import axios from 'axios'; import axios from 'axios';
import { createStore } from 'vuex'; import { createStore } from 'vuex';
import { PATIENT_LIST_API } from './constants.js'; import {
LABS_DELETE_API,
LABS_LIST_API,
LABS_UPDATE_API,
PATIENT_DELETE_API,
PATIENT_LIST_API,
PATIENT_UPDATE_API,
PROVIDER_DELETE_API,
PROVIDER_LIST_API,
PROVIDER_UPDATE_API
} from './constants.js';
export default createStore({ export default createStore({
state: { state: {
isLoading: false, isLoading: false,
patientList:[] patientList:[],
providersList:[],
labsList:[]
}, },
mutations: { mutations: {
setLoading(state, payload) { setLoading(state, payload) {
@ -14,6 +26,12 @@ export default createStore({
}, },
setPtientList(state, payload) { setPtientList(state, payload) {
state.patientList = payload state.patientList = payload
},
setProvidersList(state, payload) {
state.providersList = payload
},
setLabsList(state, payload) {
state.labsList = payload
} }
}, },
actions: { actions: {
@ -40,7 +58,8 @@ export default createStore({
dataObject.email = data.email dataObject.email = data.email
dataObject.dob = data.dob dataObject.dob = data.dob
dataObject.phone_no = data.phone_no dataObject.phone_no = data.phone_no
dataObject.avatar = '' dataObject.avatar = '',
dataObject.id = data.id,
dataArray.push(dataObject) dataArray.push(dataObject)
} }
console.log(dataArray) console.log(dataArray)
@ -52,6 +71,185 @@ export default createStore({
console.error('Error:', error); console.error('Error:', error);
}); });
}, },
async patientUpdate({ commit }, payload) {
commit('setLoading', true)
await axios.post(PATIENT_UPDATE_API+payload.id, {
first_name: payload.first_name,
last_name: payload.last_name,
email: payload.email,
phone_no: payload.phone_no,
dob: payload.dob,
}, {
headers: {
'Authorization': `Bearer ${localStorage.getItem('admin_access_token')}`,
}
}) .then(response => {
commit('setLoading', false)
console.log('Response:', response.data);
})
.catch(error => {
commit('setLoading', false)
console.error('Error:', error);
});
},
async patientDelete({ commit }, payload) {
commit('setLoading', true)
console.log(localStorage.getItem('admin_access_token'))
await axios.post(PATIENT_DELETE_API+payload.id, {}, {
headers: {
'Authorization': `Bearer ${localStorage.getItem('admin_access_token')}`,
}
}) .then(response => {
commit('setLoading', false)
console.log('Response:', response.data);
})
.catch(error => {
commit('setLoading', false)
console.error('Error:', error);
});
},
async providersList({ commit }, payload) {
commit('setLoading', true)
console.log(localStorage.getItem('admin_access_token'))
await axios.post(PROVIDER_LIST_API, {}, {
headers: {
'Authorization': `Bearer ${localStorage.getItem('admin_access_token')}`,
}
}) .then(response => {
commit('setLoading', false)
console.log('Response:', response.data.patients);
let dataArray =[]
for (let data of response.data.patients) {
let dataObject = {}
dataObject.name = data.first_name + ' ' + data.last_name
dataObject.first_name = data.first_name
dataObject.last_name = data.last_name
dataObject.email = data.email
// dataObject.dob = data.dob
dataObject.phone_no = data.phone_number
dataObject.avatar = '',
dataObject.id = data.id,
dataArray.push(dataObject)
}
console.log(dataArray)
commit('setProvidersList',dataArray)
})
.catch(error => {
commit('setLoading', false)
console.error('Error:', error);
});
},
async providerUpdate({ commit }, payload) {
commit('setLoading', true)
await axios.post(PROVIDER_UPDATE_API+payload.id, {
first_name: payload.first_name,
last_name: payload.last_name,
email: payload.email,
phone_number: payload.phone_no,
}, {
headers: {
'Authorization': `Bearer ${localStorage.getItem('admin_access_token')}`,
}
}) .then(response => {
commit('setLoading', false)
console.log('Response:', response.data);
})
.catch(error => {
commit('setLoading', false)
console.error('Error:', error);
});
},
async providerDelete({ commit }, payload) {
commit('setLoading', true)
console.log(localStorage.getItem('admin_access_token'))
await axios.post(PROVIDER_DELETE_API+payload.id, {}, {
headers: {
'Authorization': `Bearer ${localStorage.getItem('admin_access_token')}`,
}
}) .then(response => {
commit('setLoading', false)
console.log('Response:', response.data);
})
.catch(error => {
commit('setLoading', false)
console.error('Error:', error);
});
},
async labsList({ commit }, payload) {
commit('setLoading', true)
console.log(localStorage.getItem('admin_access_token'))
await axios.post(LABS_LIST_API, {}, {
headers: {
'Authorization': `Bearer ${localStorage.getItem('admin_access_token')}`,
}
}) .then(response => {
commit('setLoading', false)
console.log('Response:', response.data);
let dataArray =[]
for (let data of response.data.patients) {
let dataObject = {}
dataObject.name = data.name
dataObject.address = data.address
dataObject.slot_date = data.slot_date
dataObject.slot_time = data.slot_time
dataObject.appointment_id = data.appointment_id
dataObject.booking_time = data.booking_time
dataObject.contact_no = data.contact_no
dataObject.avatar = '',
dataObject.id = data.id,
dataArray.push(dataObject)
}
console.log(dataArray)
commit('setLabsList',dataArray)
})
.catch(error => {
commit('setLoading', false)
console.error('Error:', error);
});
},
async labUpdate({ commit }, payload) {
commit('setLoading', true)
await axios.post(LABS_UPDATE_API+payload.id, {
name: payload.name,
address: payload.address,
contact_no: payload.contact_no,
}, {
headers: {
'Authorization': `Bearer ${localStorage.getItem('admin_access_token')}`,
}
}) .then(response => {
commit('setLoading', false)
console.log('Response:', response.data);
})
.catch(error => {
commit('setLoading', false)
console.error('Error:', error);
});
},
async labDelete({ commit }, payload) {
commit('setLoading', true)
console.log(localStorage.getItem('admin_access_token'))
await axios.post(LABS_DELETE_API+payload.id, {}, {
headers: {
'Authorization': `Bearer ${localStorage.getItem('admin_access_token')}`,
}
}) .then(response => {
commit('setLoading', false)
console.log('Response:', response.data);
})
.catch(error => {
commit('setLoading', false)
console.error('Error:', error);
});
},
}, },
getters: { getters: {
getIsLoading(state){ getIsLoading(state){
@ -60,5 +258,11 @@ export default createStore({
getPatientList(state){ getPatientList(state){
return state.patientList return state.patientList
}, },
getProvidersList(state){
return state.providersList
},
getLabsList(state){
return state.labsList
},
} }
}) })