Merge branch 'dev' into feat/device-order-x

This commit is contained in:
Andrian Roshandy
2025-10-22 04:28:31 +07:00
2 changed files with 36 additions and 10 deletions

No files matched your search

+1 -1
View File
@@ -95,7 +95,7 @@ function onCancelForm() {
id="strUnit_id" id="strUnit_id"
v-model.number="unit_id" v-model.number="unit_id"
icon-name="i-lucide-chevron-down" icon-name="i-lucide-chevron-down"
placeholder="Pilih kelompok obat" placeholder="Pilih poliklinik tujuan"
v-bind="unitAttrs" v-bind="unitAttrs"
:items="props.units || []" :items="props.units || []"
:disabled="isLoading || isReadonly" :disabled="isLoading || isReadonly"
+35 -9
View File
@@ -23,6 +23,7 @@ import {
isProcessing, isProcessing,
isFormEntryDialogOpen, isFormEntryDialogOpen,
isRecordConfirmationOpen, isRecordConfirmationOpen,
onResetState,
handleActionSave, handleActionSave,
handleActionEdit, handleActionEdit,
handleActionRemove, handleActionRemove,
@@ -43,6 +44,7 @@ interface Props {
const props = defineProps<Props>() const props = defineProps<Props>()
let units = ref<{ value: string; label: string }[]>([]) let units = ref<{ value: string; label: string }[]>([])
const encounterId = ref<number>(props?.encounter?.id || 0)
const title = ref('') const title = ref('')
const { const {
@@ -57,7 +59,7 @@ const {
fetchFn: async ({ page, search }) => { fetchFn: async ({ page, search }) => {
const result = await getList({ 'encounter-id': props.encounter.id, includes: 'encounter,dstUnit', search, page }) const result = await getList({ 'encounter-id': props.encounter.id, includes: 'encounter,dstUnit', search, page })
if (result.success) { if (result.success) {
data.value = result.body.data; data.value = result.body.data
} }
return { success: result.success || false, body: result.body || {} } return { success: result.success || false, body: result.body || {} }
}, },
@@ -83,7 +85,7 @@ const headerPrep: HeaderPrep = {
icon: 'i-lucide-plus', icon: 'i-lucide-plus',
onClick: () => { onClick: () => {
recItem.value = { recItem.value = {
encounter_id: props.encounter.id, encounter_id: encounterId.value,
date: today.toISOString().slice(0, 10), date: today.toISOString().slice(0, 10),
unit_id: 0, unit_id: 0,
problem: '', problem: '',
@@ -144,13 +146,29 @@ onMounted(async () => {
@search="handleSearch" @search="handleSearch"
class="mb-4 xl:mb-5" class="mb-4 xl:mb-5"
/> />
<List :data="data" :pagination-meta="paginationMeta" @page-change="handlePageChange" />
<Dialog v-model:open="isFormEntryDialogOpen" :title="recItem?.id ? 'Edit Konsultasi' : 'Tambah Konsultasi'" size="xl" prevent-outside> <List
:data="data"
:pagination-meta="paginationMeta"
@page-change="handlePageChange"
/>
<Dialog
v-model:open="isFormEntryDialogOpen"
:title="recItem?.id ? 'Edit Konsultasi' : 'Tambah Konsultasi'"
size="xl"
prevent-outside
@update:open="
(value: any) => {
onResetState()
isFormEntryDialogOpen = value
}
"
>
<Entry <Entry
:schema="ConsultationSchema" :schema="ConsultationSchema"
:values="recItem" :values="recItem"
:encounter_id="props.encounter.id" :encounter_id="encounterId"
:units="units" :units="units"
:is-loading="isProcessing" :is-loading="isProcessing"
:is-readonly="isReadonly" :is-readonly="isReadonly"
@@ -168,7 +186,6 @@ onMounted(async () => {
</Dialog> </Dialog>
<!-- Record Confirmation Modal --> <!-- Record Confirmation Modal -->
{{ isRecordConfirmationOpen }}
<RecordConfirmation <RecordConfirmation
v-model:open="isRecordConfirmationOpen" v-model:open="isRecordConfirmationOpen"
action="delete" action="delete"
@@ -178,9 +195,18 @@ onMounted(async () => {
> >
<template #default="{ record }"> <template #default="{ record }">
<div class="text-sm"> <div class="text-sm">
<p><strong>ID:</strong> {{ record?.id }}</p> <p>
<p v-if="record?.name"><strong>Nama:</strong> {{ record.name }}</p> <strong>ID:</strong>
<p v-if="record?.code"><strong>Kode:</strong> {{ record.code }}</p> {{ record?.id }}
</p>
<p v-if="record?.name">
<strong>Nama:</strong>
{{ record.name }}
</p>
<p v-if="record?.code">
<strong>Kode:</strong>
{{ record.code }}
</p>
</div> </div>
</template> </template>
</RecordConfirmation> </RecordConfirmation>