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

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