feat: add patient info components and update navigation for encounter details

This commit is contained in:
riefive
2025-11-25 14:59:59 +07:00
parent 59a84d948a
commit b01510707c
10 changed files with 190 additions and 12 deletions
@@ -0,0 +1,43 @@
<script setup lang="ts">
import { computed, ref, onMounted } from 'vue'
import { useRoute, useRouter } from 'vue-router'
// Components
import EncounterPatientInfo from '~/components/app/encounter/patient-info.vue'
// Models
import { genEncounter } from '~/models/encounter'
// Handlers
import { getEncounterData } from '~/handlers/encounter-process.handler'
const route = useRoute()
const router = useRouter()
const id = typeof route.params.id == 'string' ? parseInt(route.params.id) : 0
const data = ref<any>(genEncounter())
const isShowPatient = computed(() => data.value && data.value?.patient?.person)
async function getData() {
data.value = await getEncounterData(id)
}
onMounted(async () => {
await getData()
})
function handleClick(type: string) {
if (type === 'draft') {
router.back()
}
}
</script>
<template>
<div class="w-full">
<div class="mb-4">
<PubMyUiNavContentBa label="Kembali ke Daftar Kunjungan" @click="handleClick" />
</div>
<EncounterPatientInfo v-if="isShowPatient" :data="data" />
</div>
</template>
+2 -2
View File
@@ -228,9 +228,9 @@ watch(
if (props.type === 'encounter') {
if (recAction.value === 'showDetail') {
navigateTo(`${basePath}/${recId.value}/process`)
navigateTo(`${basePath}/${recId.value}/detail`)
} else if (recAction.value === 'showEdit') {
navigateTo(`${basePath}/${recId.value}/edit`)
navigateTo(`${basePath}/${recId.value}/process`)
} else if (recAction.value === 'showPrint') {
console.log('print')
} else {
@@ -3,7 +3,7 @@ import { computed } from 'vue'
import { useRoute, useRouter } from 'vue-router'
// Components
import EncounterPatientInfo from '~/components/app/encounter/collapsible-patient-info.vue'
import EncounterPatientInfo from '~/components/app/encounter/patient-info-collapsible.vue'
import EncounterHistoryButtonMenu from '~/components/app/encounter/history-button-menu.vue'
import SubMenu from '~/components/pub/my-ui/menus/submenu.vue'