commit 72ce2260c50597f782f07d29db3985607ecc2f34 Author: hasyim_kai <[email protected]> Date: Mon Nov 17 15:19:36 2025 +0700 Feat: add doc preview in Therpay protocol List commit 7032cd2409a660d40899ffd421137e4158cfde4a Author: hasyim_kai <[email protected]> Date: Wed Nov 12 15:34:30 2025 +0700 Fix: prepare API integration protokol terapi verification commit dbf6f78d00afc818baf2b34d128ee2153814cc88 Author: hasyim_kai <[email protected]> Date: Wed Nov 12 14:09:28 2025 +0700 Feat: add basic CRUD therapy protocol commit 46a44e90fe4d4097b5460d2d4e5689b2a5389467 Author: hasyim_kai <[email protected]> Date: Tue Nov 11 15:57:54 2025 +0700 Fix: Prepare protokol terapi API Integration commit 4674090566727cebd947e50e2c06c44e8c7afa7e Author: hasyim_kai <[email protected]> Date: Mon Nov 10 15:33:22 2025 +0700 Fix: hotfix style add protokol terapi commit 919c91abd8ef8b4cd193012eed7f5e8cf635cda2 Author: hasyim_kai <[email protected]> Date: Mon Nov 10 15:17:14 2025 +0700 Fix: Typo drpodown-action-p in protokol-terapi commit e21d30eacf1a08118e289d4bb64889e708d5023a Author: hasyim_kai <[email protected]> Date: Mon Nov 10 15:14:33 2025 +0700 Fix: add diagnose & procedure dialog picker in add protokol terapi commit 9a3d73b72b0dceea778d83e7630c5ead110a6a4c Author: hasyim_kai <[email protected]> Date: Tue Nov 4 10:21:24 2025 +0700 Fix: Add Schema therapy protocol rehab medik commit 4d8d2d633bbbd78038b1cc607558c1ceb31c5986 Author: hasyim_kai <[email protected]> Date: Tue Nov 4 09:30:55 2025 +0700 Fix: refactor Actions Btn ba-dr-su commit 5f290a6e4bd1559c0e5864a508c5ab650cfae6e8 Author: hasyim_kai <[email protected]> Date: Mon Nov 3 17:08:20 2025 +0700 Feat: UI protokol terapi in Rehab medik commit 63010f69ff30532bb8ac91443112f31d4942b221 Author: Khafid Prayoga <[email protected]> Date: Tue Oct 21 09:54:13 2025 +0700 wip: list protokol terapi commit 44eedc298680a5255fee0ee8feee3e24beda93dd Author: Khafid Prayoga <[email protected]> Date: Mon Oct 20 12:54:01 2025 +0700 feat(therapy-protocol): init form entry feat(therapy-protocol): init page routes wip: init entry form wip: form entry protokol terapi todo: table procedure, and diagnose picker wip: schema form new entry todo: picker/modal yang relateds ke form entry
63 lines
2.3 KiB
Vue
63 lines
2.3 KiB
Vue
<script setup lang="ts">
|
|
import DiagnosisListDialog from './diagnosis-list.vue'
|
|
import type { FormErrors } from '~/types/error'
|
|
import { toTypedSchema } from '@vee-validate/zod'
|
|
import { Form } from '~/components/pub/ui/form'
|
|
import { FieldArray } from 'vee-validate'
|
|
import InputBase from '~/components/pub/my-ui/form/input-base.vue'
|
|
import * as DE from '~/components/pub/my-ui/doc-entry'
|
|
import TextAreaInput from '~/components/pub/my-ui/form/text-area-input.vue'
|
|
import { cn } from '~/lib/utils'
|
|
import TableHeader from '~/components/pub/ui/table/TableHeader.vue'
|
|
import { is } from 'date-fns/locale'
|
|
|
|
interface Props {
|
|
fieldName: string
|
|
title: string
|
|
}
|
|
const props = defineProps<Props>()
|
|
|
|
const isFunctionalPickerDialogOpen = ref<boolean>(false)
|
|
provide(`isFunctionalPickerDialogOpen`, isFunctionalPickerDialogOpen)
|
|
</script>
|
|
|
|
<template>
|
|
<div class="">
|
|
<div class="mb-2 flex items-center justify-between">
|
|
<h1 class="mb-2 font-medium">{{ title }}</h1>
|
|
<Button @click="isFunctionalPickerDialogOpen = true" size="xs" variant="outline"
|
|
class="text-orange-400 border-orange-400 bg-transparent">
|
|
<Icon name="i-lucide-search" class="h-4 w-4 align-middle transition-colors" />
|
|
Pilih Diagnosis
|
|
</Button>
|
|
</div>
|
|
|
|
<FieldArray v-slot="{ fields, push, remove }" :name="fieldName">
|
|
<DiagnosisListDialog :process-fn="push" />
|
|
|
|
<div class="border border-gray-200 rounded-lg overflow-hidden">
|
|
<Table>
|
|
<TableHeader class="bg-gray-100">
|
|
<TableRow>
|
|
<TableHead class="w-1/2">Diagnosis</TableHead>
|
|
<TableHead class="w-1/2">ICD-X</TableHead>
|
|
<TableHead class="w-1/2">Action</TableHead>
|
|
</TableRow>
|
|
</TableHeader>
|
|
<TableBody>
|
|
<TableRow v-for="(field, idx) in fields" :key="idx">
|
|
<TableCell class="">{{ field.value?.name }}</TableCell>
|
|
<TableCell class="">{{ field.value?.code }}</TableCell>
|
|
<TableCell class="">
|
|
<Button type="button" variant="destructive" size="sm" @click="remove(idx)">
|
|
<Icon name="i-lucide-trash-2" class="h-4 w-4" />
|
|
</Button>
|
|
</TableCell>
|
|
</TableRow>
|
|
</TableBody>
|
|
</Table>
|
|
</div>
|
|
</FieldArray>
|
|
</div>
|
|
</template>
|