feat (soapi): integrate icd selection

This commit is contained in:
Abizrh
2025-10-30 20:47:11 +07:00
parent 2ea51c4ffb
commit da80d1a206
10 changed files with 250 additions and 124 deletions
+5 -5
View File
@@ -63,13 +63,13 @@ const validate = async () => {
}
defineExpose({ validate })
const icdPreview = inject('icdPreview')
const isExcluded = (key: string) => props.excludeFields?.includes(key)
</script>
<template>
<form id="entry-form">
{{ errors }}
<div class="mb-5 border-b border-b-slate-300 pb-3 text-lg xl:text-xl">
<Block>
<Cell>
@@ -285,7 +285,7 @@ const isExcluded = (key: string) => props.excludeFields?.includes(key)
<Button
class="rounded bg-orange-100 px-3 py-1 text-orange-600"
type="button"
@click="emits('modal', 'diagnosa')"
@click="emit('modal', 'diagnosa')"
>
+ Pilih Diagnosa
</Button>
@@ -298,7 +298,7 @@ const isExcluded = (key: string) => props.excludeFields?.includes(key)
<Button
class="rounded bg-orange-100 px-3 py-1 text-orange-600"
type="button"
@click="emits('modal', 'prosedur')"
@click="emit('modal', 'prosedur')"
>
+ Pilih Prosedur
</Button>
@@ -307,8 +307,8 @@ const isExcluded = (key: string) => props.excludeFields?.includes(key)
</Block>
<div class="mb-8 grid grid-cols-2 gap-4">
<AppIcdPreview />
<AppIcdPreview />
<AppIcdPreview v-model="icdPreview.diagnoses" />
<AppIcdPreview v-model="icdPreview.procedures" />
</div>
<Block :colCount="3">
+10 -1
View File
@@ -85,6 +85,7 @@ const validate = async () => {
}
defineExpose({ validate })
const icdPreview = inject('icdPreview')
const isExcluded = (key: string) => props.excludeFields?.includes(key)
</script>
@@ -452,10 +453,18 @@ const isExcluded = (key: string) => props.excludeFields?.includes(key)
<div class="my-2">
<h1 class="font-semibold">Diagnosa Fungsional (ICD-X)</h1>
<Button
class="rounded bg-orange-100 px-3 py-1 text-orange-600"
type="button"
@click="emit('click', 'fungsional')"
>
+ Pilih Prosedur
</Button>
</div>
<div class="mb-8 grid grid-cols-2 gap-4">
<AppIcdPreview />
<AppIcdPreview v-model="icdPreview.diagnoses" />
</div>
<div class="my-2">
+1
View File
@@ -43,5 +43,6 @@ defineExpose({ validate })
@click="$emit('click', $event)"
@submit="$emit('submit', $event)"
@cancel="$emit('cancel', $event)"
@modal="$emit('modal', $event)"
/>
</template>
+17 -15
View File
@@ -86,6 +86,8 @@ const validate = async () => {
defineExpose({ validate })
const icdPreview = inject('icdPreview')
const isExcluded = (key: string) => props.excludeFields?.includes(key)
const disorders = ref<string[]>([])
const therapies = ref<string[]>([])
@@ -558,33 +560,33 @@ const therapyOptions = ['Terapi Latihan', 'Modalitas Fisik', 'Protesa/Ortosa', '
<Button
class="my-2 rounded bg-orange-100 px-3 py-1 text-orange-600"
type="button"
@click="emits('click', 'prosedur')"
@click="emit('click', 'diagnosa')"
>
+ Pilih Prosedur
</Button>
<AppIcdPreview />
<AppIcdPreview v-model="icdPreview.diagnoses" />
</div>
<div>
<span class="text-md">Diagnosa Fungsional (ICD-X)</span>
<Button
class="my-2 rounded bg-orange-100 px-3 py-1 text-orange-600"
type="button"
@click="emit('click', 'fungsional')"
>
+ Pilih Prosedur
</Button>
<AppIcdPreview v-model="icdPreview.fungsional" />
</div>
<div>
<span class="text-md">Diagnosa Medis (ICD-X)</span>
<Button
class="my-2 rounded bg-orange-100 px-3 py-1 text-orange-600"
type="button"
@click="emits('click', 'prosedur')"
@click="emit('click', 'prosedur')"
>
+ Pilih Prosedur
</Button>
<AppIcdPreview />
</div>
<div>
<span class="text-md">Diagnosa Medis (ICD-X)</span>
<Button
class="my-2 rounded bg-orange-100 px-3 py-1 text-orange-600"
type="button"
@click="emits('click', 'prosedur')"
>
+ Pilih Prosedur
</Button>
<AppIcdPreview />
<AppIcdPreview v-model="icdPreview.procedures" />
</div>
</div>