diff --git a/.env.example b/.env.example index b6721291..884ee1fb 100644 --- a/.env.example +++ b/.env.example @@ -1 +1,4 @@ -API_ORIGIN= +NUXT_MAIN_API_ORIGIN= +NUXT_BPJS_API_ORIGIN= +NUXT_SYNC_API_ORIGIN= +NUXT_API_ORIGIN= diff --git a/.gitignore b/.gitignore index 5bdfc11f..a3d94e0b 100644 --- a/.gitignore +++ b/.gitignore @@ -23,4 +23,6 @@ logs .env.* !.env.example -.vscode \ No newline at end of file +# editor +.vscode +*.swp diff --git a/app/assets/css/main.css b/app/assets/css/main.css index 17502027..a25bddcb 100644 --- a/app/assets/css/main.css +++ b/app/assets/css/main.css @@ -16,8 +16,8 @@ --primary-hover: 26, 92%, 65%; /* Secondary - Clean Blue */ - --secondary: 210 50% 96%; - --secondary-foreground: 210 20% 20%; + --secondary: 40 70% 60%; + --secondary-foreground: 210 20% 100%; --muted: 210 25% 95%; --muted-foreground: 210 15% 50%; diff --git a/app/components/app/chemotherapy/action-proses.vue b/app/components/app/chemotherapy/action-proses.vue new file mode 100644 index 00000000..4e2efeb3 --- /dev/null +++ b/app/components/app/chemotherapy/action-proses.vue @@ -0,0 +1,30 @@ + + + + diff --git a/app/components/app/chemotherapy/dialog-verification.vue b/app/components/app/chemotherapy/dialog-verification.vue new file mode 100644 index 00000000..2d617445 --- /dev/null +++ b/app/components/app/chemotherapy/dialog-verification.vue @@ -0,0 +1,164 @@ + + + + diff --git a/app/components/app/chemotherapy/dropdown-action-process.vue b/app/components/app/chemotherapy/dropdown-action-process.vue new file mode 100644 index 00000000..56e14886 --- /dev/null +++ b/app/components/app/chemotherapy/dropdown-action-process.vue @@ -0,0 +1,63 @@ + + + diff --git a/app/components/app/chemotherapy/entry-form.vue b/app/components/app/chemotherapy/entry-form.vue new file mode 100644 index 00000000..39113d63 --- /dev/null +++ b/app/components/app/chemotherapy/entry-form.vue @@ -0,0 +1,302 @@ + + + diff --git a/app/components/app/chemotherapy/list-admin.vue b/app/components/app/chemotherapy/list-admin.vue new file mode 100644 index 00000000..a201f2a1 --- /dev/null +++ b/app/components/app/chemotherapy/list-admin.vue @@ -0,0 +1,37 @@ + + + + diff --git a/app/components/app/chemotherapy/list-cfg.admin.ts b/app/components/app/chemotherapy/list-cfg.admin.ts new file mode 100644 index 00000000..38d77121 --- /dev/null +++ b/app/components/app/chemotherapy/list-cfg.admin.ts @@ -0,0 +1,80 @@ +import type { Config, RecComponent } from '~/components/pub/my-ui/data-table' +import { defineAsyncComponent } from 'vue' + +type SmallDetailDto = any + +const action = defineAsyncComponent(() => import('./dropdown-action-process.vue')) + +export const config: Config = { + cols: [ + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 50 }, + ], + + headers: [ + [ + { label: 'TANGGAL' }, + { label: 'NO. RM' }, + { label: 'NO. BILL' }, + { label: 'JK' }, + { label: 'ALAMAT' }, + { label: 'KLINIK ASAL' }, + { label: 'NAMA DOKTER' }, + { label: 'CARA BAYAR' }, + { label: 'RUJUKAN' }, + { label: 'KET. RUJUKAN' }, + { label: 'ASAL' }, + { label: '' }, + ], + ], + + keys: [ + 'tanggal', + 'noRm', + 'noBill', + 'jk', + 'alamat', + 'klinik', + 'dokter', + 'caraBayar', + 'rujukan', + 'ketRujukan', + 'asal', + 'action', + ], + + delKeyNames: [ + { key: 'code', label: 'Kode' }, + { key: 'name', label: 'Nama' }, + ], + + parses: { + parent: (rec: unknown): unknown => { + const recX = rec as SmallDetailDto + return recX.parent?.name || '-' + }, + }, + + components: { + action(rec, idx) { + const res: RecComponent = { + idx, + rec: rec as object, + component: action, + } + return res + }, + }, + + htmls: {}, +} diff --git a/app/components/app/chemotherapy/list-cfg.medicine.ts b/app/components/app/chemotherapy/list-cfg.medicine.ts new file mode 100644 index 00000000..103452f5 --- /dev/null +++ b/app/components/app/chemotherapy/list-cfg.medicine.ts @@ -0,0 +1,69 @@ +import type { Config, RecComponent } from '~/components/pub/my-ui/data-table' +import { defineAsyncComponent } from 'vue' + +type SmallDetailDto = any + +const action = defineAsyncComponent(() => import('~/components/pub/my-ui/data/dropdown-action-dud.vue')) + +export const config: Config = { + cols: [ + { width: 60 }, + { width: 200 }, + { width: 100 }, + { width: 100 }, + { width: 150 }, + { width: 80 }, + { width: 200 }, + { width: 120 }, + ], + + headers: [ + [ + { label: 'NO.' }, + { label: 'NAMA OBAT' }, + { label: 'DOSIS' }, + { label: 'SATUAN' }, + { label: 'RUTE PEMBERIAN' }, + { label: 'HARI' }, + { label: 'CATATAN' }, + { label: '' }, + ], + ], + + keys: [ + 'number', + 'namaObat', + 'dosis', + 'satuan', + 'rute', + 'hari', + 'catatan', + 'action', + ], + + delKeyNames: [ + { key: 'code', label: 'Kode' }, + { key: 'name', label: 'Nama' }, + ], + + parses: { + parent: (rec: unknown): unknown => { + const recX = rec as SmallDetailDto + return recX.parent?.name || '-' + }, + }, + + components: { + action(rec, idx) { + const res: RecComponent = { + idx, + rec: rec as object, + component: action, + } + return res + }, + }, + + htmls: {}, +} + diff --git a/app/components/app/chemotherapy/list-cfg.protocol.ts b/app/components/app/chemotherapy/list-cfg.protocol.ts new file mode 100644 index 00000000..da678c0f --- /dev/null +++ b/app/components/app/chemotherapy/list-cfg.protocol.ts @@ -0,0 +1,62 @@ +import type { Config, RecComponent } from '~/components/pub/my-ui/data-table' +import { defineAsyncComponent } from 'vue' + +type SmallDetailDto = any + +const action = defineAsyncComponent(() => import('~/components/pub/my-ui/data/dropdown-action-dud.vue')) + +export const config: Config = { + cols: [ + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 50 }, + ], + + headers: [ + [ + { label: 'NO.' }, + { label: 'TANGGAL' }, + { label: 'SIKLUS' }, + { label: 'PERIODE KEMOTERAPI' }, + { label: 'KEHADIRAN' }, + { label: '' }, + ], + ], + + keys: [ + 'number', + 'tanggal', + 'siklus', + 'periode', + 'kehadiran', + 'action', + ], + + delKeyNames: [ + { key: 'code', label: 'Kode' }, + { key: 'name', label: 'Nama' }, + ], + + parses: { + parent: (rec: unknown): unknown => { + const recX = rec as SmallDetailDto + return recX.parent?.name || '-' + }, + }, + + components: { + action(rec, idx) { + const res: RecComponent = { + idx, + rec: rec as object, + component: action, + } + return res + }, + }, + + htmls: {}, +} diff --git a/app/components/app/chemotherapy/list-cfg.ts b/app/components/app/chemotherapy/list-cfg.ts new file mode 100644 index 00000000..29c24e6f --- /dev/null +++ b/app/components/app/chemotherapy/list-cfg.ts @@ -0,0 +1,80 @@ +import type { Config, RecComponent } from '~/components/pub/my-ui/data-table' +import { defineAsyncComponent } from 'vue' + +type SmallDetailDto = any + +const action = defineAsyncComponent(() => import('~/components/pub/my-ui/data/dropdown-action-dud.vue')) + +export const config: Config = { + cols: [ + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 120 }, + { width: 50 }, + ], + + headers: [ + [ + { label: 'TANGGAL' }, + { label: 'NO. RM' }, + { label: 'NO. BILL' }, + { label: 'JK' }, + { label: 'ALAMAT' }, + { label: 'KLINIK ASAL' }, + { label: 'NAMA DOKTER' }, + { label: 'CARA BAYAR' }, + { label: 'RUJUKAN' }, + { label: 'KET. RUJUKAN' }, + { label: 'ASAL' }, + { label: '' }, + ], + ], + + keys: [ + 'tanggal', + 'noRm', + 'noBill', + 'jk', + 'alamat', + 'klinik', + 'dokter', + 'caraBayar', + 'rujukan', + 'ketRujukan', + 'asal', + 'action', + ], + + delKeyNames: [ + { key: 'code', label: 'Kode' }, + { key: 'name', label: 'Nama' }, + ], + + parses: { + parent: (rec: unknown): unknown => { + const recX = rec as SmallDetailDto + return recX.parent?.name || '-' + }, + }, + + components: { + action(rec, idx) { + const res: RecComponent = { + idx, + rec: rec as object, + component: action, + } + return res + }, + }, + + htmls: {}, +} diff --git a/app/components/app/chemotherapy/list-cfg.verification.ts b/app/components/app/chemotherapy/list-cfg.verification.ts new file mode 100644 index 00000000..e75aa615 --- /dev/null +++ b/app/components/app/chemotherapy/list-cfg.verification.ts @@ -0,0 +1,78 @@ +import type { Config, RecComponent } from '~/components/pub/my-ui/data-table' +import { defineAsyncComponent } from 'vue' + +type SmallDetailDto = any + +const statusBadge = defineAsyncComponent(() => import('./status-badge.vue')) +const verifyButton = defineAsyncComponent(() => import('./verify-button.vue')) + +export const config: Config = { + cols: [ + { width: 120 }, + { width: 150 }, + { width: 150 }, + { width: 150 }, + { width: 150 }, + { width: 180 }, + { width: 150 }, + { width: 100 }, + ], + + headers: [ + [ + { label: 'TANGGAL MASUK' }, + { label: 'PJ BERKAS RM' }, + { label: 'DOKTER' }, + { label: 'JENIS RUANGAN' }, + { label: 'JENIS TINDAKAN' }, + { label: 'TANGGAL JADWAL TINDAKAN' }, + { label: 'STATUS' }, + { label: 'AKSI' }, + ], + ], + + keys: [ + 'tanggalMasuk', + 'pjBerkasRm', + 'dokter', + 'jenisRuangan', + 'jenisTindakan', + 'tanggalJadwalTindakan', + 'status', + 'action', + ], + + delKeyNames: [ + { key: 'code', label: 'Kode' }, + { key: 'name', label: 'Nama' }, + ], + + parses: { + parent: (rec: unknown): unknown => { + const recX = rec as SmallDetailDto + return recX.parent?.name || '-' + }, + }, + + components: { + status(rec, idx) { + const res: RecComponent = { + idx, + rec: rec as object, + component: statusBadge, + } + return res + }, + action(rec, idx) { + const res: RecComponent = { + idx, + rec: rec as object, + component: verifyButton, + } + return res + }, + }, + + htmls: {}, +} + diff --git a/app/components/app/chemotherapy/list-cfg.visit.ts b/app/components/app/chemotherapy/list-cfg.visit.ts new file mode 100644 index 00000000..cb242d62 --- /dev/null +++ b/app/components/app/chemotherapy/list-cfg.visit.ts @@ -0,0 +1,99 @@ +import type { Config, RecComponent } from '~/components/pub/my-ui/data-table' +import { defineAsyncComponent } from 'vue' +import { format, parseISO } from 'date-fns' +import { id as localeID } from 'date-fns/locale' + +type VisitDto = any + +const statusBadge = defineAsyncComponent(() => import('./status-badge.vue')) +const verifyButton = defineAsyncComponent(() => import('./verify-button.vue')) + +export const config: Config = { + cols: [ + { width: 150 }, // TANGGAL MASUK + { width: 180 }, // PJ BERKAS RM + { width: 200 }, // DOKTER + { width: 150 }, // JENIS RUANGAN + { width: 150 }, // JENIS TINDAKAN + { width: 180 }, // TANGGAL JADWAL TINDAKAN + { width: 150 }, // STATUS + { width: 120 }, // AKSI + ], + + headers: [ + [ + { label: 'TANGGAL MASUK' }, + { label: 'PJ BERKAS RM' }, + { label: 'DOKTER' }, + { label: 'JENIS RUANGAN' }, + { label: 'JENIS TINDAKAN' }, + { label: 'TANGGAL JADWAL TINDAKAN' }, + { label: 'STATUS' }, + { label: 'AKSI' }, + ], + ], + + keys: [ + 'tanggal_masuk', + 'pj_berkas_rm', + 'dokter', + 'jenis_ruangan', + 'jenis_tindakan', + 'tanggal_jadwal_tindakan', + 'status', + 'action', + ], + + delKeyNames: [ + { key: 'id', label: 'ID' }, + { key: 'nama', label: 'Nama' }, + ], + + parses: { + tanggal_masuk: (rec: unknown): string => { + const recX = rec as VisitDto + if (!recX.tanggal_masuk) return '-' + try { + const date = typeof recX.tanggal_masuk === 'string' ? parseISO(recX.tanggal_masuk) : recX.tanggal_masuk + return format(date, 'dd MMMM yyyy', { locale: localeID }) + } catch { + return recX.tanggal_masuk.toString() + } + }, + tanggal_jadwal_tindakan: (rec: unknown): string => { + const recX = rec as VisitDto + if (!recX.tanggal_jadwal_tindakan) return '-' + try { + const date = + typeof recX.tanggal_jadwal_tindakan === 'string' + ? parseISO(recX.tanggal_jadwal_tindakan) + : recX.tanggal_jadwal_tindakan + return format(date, 'dd MMMM yyyy', { locale: localeID }) + } catch { + return recX.tanggal_jadwal_tindakan.toString() + } + }, + }, + + components: { + status(rec, idx) { + const res: RecComponent = { + idx, + rec: rec as object, + component: statusBadge, + } + return res + }, + action(rec, idx) { + const res: RecComponent = { + idx, + rec: rec as object, + component: verifyButton, + } + return res + }, + }, + + htmls: {}, +} + diff --git a/app/components/app/chemotherapy/list-verification.vue b/app/components/app/chemotherapy/list-verification.vue new file mode 100644 index 00000000..93120f69 --- /dev/null +++ b/app/components/app/chemotherapy/list-verification.vue @@ -0,0 +1,37 @@ + + + + diff --git a/app/components/app/chemotherapy/list.medicine.vue b/app/components/app/chemotherapy/list.medicine.vue new file mode 100644 index 00000000..748c8cb9 --- /dev/null +++ b/app/components/app/chemotherapy/list.medicine.vue @@ -0,0 +1,76 @@ + + + + diff --git a/app/components/app/chemotherapy/list.protocol.vue b/app/components/app/chemotherapy/list.protocol.vue new file mode 100644 index 00000000..7b5c3234 --- /dev/null +++ b/app/components/app/chemotherapy/list.protocol.vue @@ -0,0 +1,75 @@ + + + diff --git a/app/components/app/chemotherapy/list.register.vue b/app/components/app/chemotherapy/list.register.vue new file mode 100644 index 00000000..131afc04 --- /dev/null +++ b/app/components/app/chemotherapy/list.register.vue @@ -0,0 +1,71 @@ + + + diff --git a/app/components/app/chemotherapy/list.visit.vue b/app/components/app/chemotherapy/list.visit.vue new file mode 100644 index 00000000..de451f31 --- /dev/null +++ b/app/components/app/chemotherapy/list.visit.vue @@ -0,0 +1,45 @@ + + + + diff --git a/app/components/app/chemotherapy/list.vue b/app/components/app/chemotherapy/list.vue new file mode 100644 index 00000000..19642581 --- /dev/null +++ b/app/components/app/chemotherapy/list.vue @@ -0,0 +1,36 @@ + + + \ No newline at end of file diff --git a/app/components/app/chemotherapy/sample.ts b/app/components/app/chemotherapy/sample.ts new file mode 100644 index 00000000..082cde66 --- /dev/null +++ b/app/components/app/chemotherapy/sample.ts @@ -0,0 +1,49 @@ +export type ChemotherapyData = { + id: number + tanggal: string + noRm: string + noBill: string + nama: string + jk: string + alamat: string + klinik: string + dokter: string + caraBayar: string + rujukan: string + ketRujukan: string + asal: string +} + +export const sampleRows: ChemotherapyData[] = [ + { + id: 1, + tanggal: '12 Agustus 2025', + noRm: 'RM23311224', + noBill: '-', + nama: 'Ahmad Baidowi', + jk: 'L', + alamat: 'Jl Jaksa Agung S. No. 9', + klinik: 'Penyakit dalam', + dokter: 'Dr. Andreas Sutaji', + caraBayar: 'JKN', + rujukan: 'Faskes BPJS', + ketRujukan: 'RUMAH SAKIT - RS Lawang Medika - Malang', + asal: 'Rawat Jalan Reguler', + }, + { + id: 2, + tanggal: '11 Agustus 2025', + noRm: 'RM23455667', + noBill: '-', + nama: 'Abraham Sulaiman', + jk: 'L', + alamat: 'Purwantoro, Blimbing', + klinik: 'Penyakit dalam', + dokter: 'Dr. Andreas Sutaji', + caraBayar: 'JKN', + rujukan: 'Faskes BPJS', + ketRujukan: 'RUMAH SAKIT - RS Lawang Medika - Malang', + asal: 'Rawat Jalan Reguler', + }, + // tambahkan lebih banyak baris contoh jika perlu +] diff --git a/app/components/app/chemotherapy/status-badge.vue b/app/components/app/chemotherapy/status-badge.vue new file mode 100644 index 00000000..1a7d94ca --- /dev/null +++ b/app/components/app/chemotherapy/status-badge.vue @@ -0,0 +1,28 @@ + + + + diff --git a/app/components/app/chemotherapy/verify-button.vue b/app/components/app/chemotherapy/verify-button.vue new file mode 100644 index 00000000..1d9c2d3a --- /dev/null +++ b/app/components/app/chemotherapy/verify-button.vue @@ -0,0 +1,31 @@ + + + + diff --git a/app/components/app/division-position/entry.vue b/app/components/app/division-position/entry.vue new file mode 100644 index 00000000..da4782c0 --- /dev/null +++ b/app/components/app/division-position/entry.vue @@ -0,0 +1,192 @@ + + + diff --git a/app/components/app/division-position/list-cfg.ts b/app/components/app/division-position/list-cfg.ts index e35627d2..cc153cc5 100644 --- a/app/components/app/division-position/list-cfg.ts +++ b/app/components/app/division-position/list-cfg.ts @@ -1,5 +1,6 @@ import type { Config, RecComponent } from '~/components/pub/my-ui/data-table' import { defineAsyncComponent } from 'vue' +import type { DivisionPosition } from '~/models/division-position' type SmallDetailDto = any @@ -10,9 +11,9 @@ export const config: Config = { headers: [ [ - { label: 'Kode' }, - { label: 'Nama' }, - { label: 'Divisi Induk' }, + { label: 'Kode Posisi' }, + { label: 'Nama Posisi' }, + { label: 'Nama Divisi ' }, { label: 'Karyawan' }, { label: 'Status Kepala' }, { label: '' }, @@ -32,8 +33,13 @@ export const config: Config = { return recX.division?.name || '-' }, employee: (rec: unknown): unknown => { - const recX = rec as SmallDetailDto - return recX.employee?.name || '-' + const recX = rec as DivisionPosition + const fullName = [recX.employee?.person.frontTitle, recX.employee?.person.name, recX.employee?.person.endTitle] + .filter(Boolean) + .join(' ') + .trim() + + return fullName || '-' }, head: (rec: unknown): unknown => { const recX = rec as SmallDetailDto diff --git a/app/components/app/division/detail/index.vue b/app/components/app/division/detail/index.vue new file mode 100644 index 00000000..dd5a4c59 --- /dev/null +++ b/app/components/app/division/detail/index.vue @@ -0,0 +1,34 @@ + + + + + diff --git a/app/components/app/division/detail/list-cfg.ts b/app/components/app/division/detail/list-cfg.ts new file mode 100644 index 00000000..76c3b9c8 --- /dev/null +++ b/app/components/app/division/detail/list-cfg.ts @@ -0,0 +1,65 @@ +import type { Config, RecComponent } from '~/components/pub/my-ui/data-table' +import { defineAsyncComponent } from 'vue' +import type { DivisionPosition } from '~/models/division-position' + +type SmallDetailDto = any + +const action = defineAsyncComponent(() => import('~/components/pub/my-ui/data/dropdown-action-ud.vue')) + +export const config: Config = { + cols: [{}, {}, {}, {}, {}, { width: 50 }], + + headers: [ + [ + { label: '#' }, + { label: 'Kode Jabatan' }, + { label: 'Nama Jabatan' }, + { label: 'Pengisi Jabatan' }, + { label: 'Status Kepala' }, + { label: '' }, + ], + ], + + keys: ['index', 'code', 'name', 'employee', 'head', 'action'], + + delKeyNames: [ + { key: 'code', label: 'Kode' }, + { key: 'name', label: 'Nama' }, + ], + + parses: { + division: (rec: unknown): unknown => { + const recX = rec as SmallDetailDto + return recX.division?.name || '-' + }, + employee: (rec: unknown): unknown => { + const recX = rec as DivisionPosition + const fullName = [recX.employee?.person.frontTitle, recX.employee?.person.name, recX.employee?.person.endTitle] + .filter(Boolean) + .join(' ') + .trim() + + return fullName || '-' + }, + head: (rec: unknown): unknown => { + const recX = rec as SmallDetailDto + return recX.headStatus ? 'Ya' : 'Tidak' + }, + }, + + components: { + action(rec, idx) { + const res: RecComponent = { + idx, + rec: rec as object, + component: action, + props: { + size: 'sm', + }, + } + return res + }, + }, + + htmls: {}, +} diff --git a/app/components/app/division/detail/list.vue b/app/components/app/division/detail/list.vue new file mode 100644 index 00000000..4bbebb57 --- /dev/null +++ b/app/components/app/division/detail/list.vue @@ -0,0 +1,45 @@ + + + diff --git a/app/components/app/division/list-cfg.ts b/app/components/app/division/list-cfg.ts index 54ed06a6..2d7f93ba 100644 --- a/app/components/app/division/list-cfg.ts +++ b/app/components/app/division/list-cfg.ts @@ -3,17 +3,12 @@ import { defineAsyncComponent } from 'vue' type SmallDetailDto = any -const action = defineAsyncComponent(() => import('~/components/pub/my-ui/data/dropdown-action-ud.vue')) +const action = defineAsyncComponent(() => import('~/components/pub/my-ui/data/dropdown-action-dud.vue')) export const config: Config = { cols: [{}, {}, {}, { width: 50 }], - headers: [[ - { label: 'Kode' }, - { label: 'Nama' }, - { label: 'Divisi Induk' }, - { label: '' }, - ]], + headers: [[{ label: 'Kode' }, { label: 'Nama' }, { label: 'Divisi Induk' }, { label: '' }]], keys: ['code', 'name', 'parent', 'action'], @@ -44,4 +39,4 @@ export const config: Config = { }, htmls: {}, -} \ No newline at end of file +} diff --git a/app/components/app/employee/entry-form.vue b/app/components/app/employee/entry-form.vue index 8ccf0916..006f8eff 100644 --- a/app/components/app/employee/entry-form.vue +++ b/app/components/app/employee/entry-form.vue @@ -27,19 +27,31 @@ const data = computed({ - - - diff --git a/app/components/app/encounter/check-in-entry.vue b/app/components/app/encounter/check-in-entry.vue new file mode 100644 index 00000000..ad7de5d6 --- /dev/null +++ b/app/components/app/encounter/check-in-entry.vue @@ -0,0 +1,107 @@ + + + + + \ No newline at end of file diff --git a/app/components/app/encounter/check-in-view.vue b/app/components/app/encounter/check-in-view.vue new file mode 100644 index 00000000..a3b6ab53 --- /dev/null +++ b/app/components/app/encounter/check-in-view.vue @@ -0,0 +1,56 @@ + + + + + \ No newline at end of file diff --git a/app/components/app/encounter/check-out-entry.vue b/app/components/app/encounter/check-out-entry.vue new file mode 100644 index 00000000..fb8b4333 --- /dev/null +++ b/app/components/app/encounter/check-out-entry.vue @@ -0,0 +1,187 @@ + + + + + \ No newline at end of file diff --git a/app/components/app/encounter/check-out-view.vue b/app/components/app/encounter/check-out-view.vue new file mode 100644 index 00000000..37cd2bbe --- /dev/null +++ b/app/components/app/encounter/check-out-view.vue @@ -0,0 +1,90 @@ + + + + + \ No newline at end of file diff --git a/app/components/app/encounter/entry-form.vue b/app/components/app/encounter/entry-form.vue index 25bdf9d8..9c24a0c6 100644 --- a/app/components/app/encounter/entry-form.vue +++ b/app/components/app/encounter/entry-form.vue @@ -1,354 +1,493 @@ diff --git a/app/components/app/encounter/quick-info.vue b/app/components/app/encounter/quick-info.vue index 37ed817f..4b223917 100644 --- a/app/components/app/encounter/quick-info.vue +++ b/app/components/app/encounter/quick-info.vue @@ -1,6 +1,6 @@