@@ -0,0 +1,9 @@
|
|||||||
|
<template>
|
||||||
|
<div class="mb-5">
|
||||||
|
<div class="font-semibold text-sm 2xl:text-base mb-2">
|
||||||
|
Daftar Ruang Tindakan
|
||||||
|
</div>
|
||||||
|
<div class="-mx-1 [&_button]:mx-1 ">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
<template>
|
||||||
|
<div class="mb-5">
|
||||||
|
<div class="font-semibold text-sm 2xl:text-base mb-2">
|
||||||
|
Daftar Ruang Operasi
|
||||||
|
</div>
|
||||||
|
<div class="-mx-1 [&_button]:mx-1 ">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import { procedureRoomTypeCodes } from '~/const/key-val/clinical'
|
||||||
|
|
||||||
|
const model = defineModel()
|
||||||
|
model.value = 'procedure'
|
||||||
|
|
||||||
|
const emit = defineEmits<{
|
||||||
|
pick: [type_code: string]
|
||||||
|
}>()
|
||||||
|
|
||||||
|
function pick(type_code: string) {
|
||||||
|
model.value = type_code
|
||||||
|
emit('pick', type_code)
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="mb-5">
|
||||||
|
<div class="font-semibold text-sm 2xl:text-base mb-2">
|
||||||
|
Jenis Ruang Tindakan
|
||||||
|
</div>
|
||||||
|
<div class="-mx-1 [&_button]:mx-1 ">
|
||||||
|
<Button v-for="item, key in procedureRoomTypeCodes" :variant="model === key ? 'default' : 'outline'" @click="pick(key)">
|
||||||
|
{{ item }}
|
||||||
|
</Button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
import { type Base, genBase } from "./_base";
|
||||||
|
import type { Infra } from "./infra";
|
||||||
|
|
||||||
|
export interface ProcedureRoom extends Base {
|
||||||
|
code: string
|
||||||
|
infra_code: string
|
||||||
|
infra?: Infra
|
||||||
|
type_code: string
|
||||||
|
unit_code: string
|
||||||
|
specialist_code?: string | null
|
||||||
|
subspecialist_code?: string | null
|
||||||
|
}
|
||||||
|
|
||||||
|
export function genProcedureRoom(): ProcedureRoom {
|
||||||
|
return {
|
||||||
|
...genBase(),
|
||||||
|
code: '',
|
||||||
|
infra_code: '',
|
||||||
|
type_code: '',
|
||||||
|
unit_code: '',
|
||||||
|
specialist_code: null,
|
||||||
|
subspecialist_code: null,
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,14 +1,11 @@
|
|||||||
|
|
||||||
// Base
|
|
||||||
import * as base from './_crud-base'
|
import * as base from './_crud-base'
|
||||||
|
|
||||||
// Types
|
|
||||||
import type { Infra } from '~/models/infra'
|
import type { Infra } from '~/models/infra'
|
||||||
|
|
||||||
const path = '/api/v1/infra'
|
|
||||||
const name = 'infra'
|
const name = 'infra'
|
||||||
|
const path = `/api/v1/${name}`
|
||||||
|
|
||||||
export function create(data: any) {
|
export function create(data: Infra) {
|
||||||
return base.create(path, data, name)
|
return base.create(path, data, name)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -20,7 +17,7 @@ export function getDetail(id: number | string) {
|
|||||||
return base.getDetail(path, id, name)
|
return base.getDetail(path, id, name)
|
||||||
}
|
}
|
||||||
|
|
||||||
export function update(id: number | string, data: any) {
|
export function update(id: number | string, data: Infra) {
|
||||||
return base.update(path, id, data, name)
|
return base.update(path, id, data, name)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -28,15 +25,26 @@ export function remove(id: number | string) {
|
|||||||
return base.remove(path, id, name)
|
return base.remove(path, id, name)
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function getValueLabelList(params: any = null): Promise<{ value: string; label: string }[]> {
|
export async function getValueLabelList(params: any = null, useId = false): Promise<{ value: string; label: string }[]> {
|
||||||
let data: { value: string; label: string }[] = []
|
let data: { value: string; label: string }[] = []
|
||||||
const result = await getList(params)
|
const result = await getList(params)
|
||||||
if (result.success) {
|
if (result.success) {
|
||||||
const resultData = result.body?.data || []
|
const resultData = result.body?.data || []
|
||||||
data = resultData.map((item: Infra) => ({
|
data = !useId ?
|
||||||
value: item.id ? Number(item.id) : item.code,
|
resultData.map((item: Infra) => ({ value: item.code, label: item.name })) :
|
||||||
label: item.name,
|
resultData.map((item: Infra) => ({ value: item.id, label: item.name }))
|
||||||
}))
|
|
||||||
}
|
}
|
||||||
return data
|
return data
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// export async function getProcedureRoomValueLabelList(params: any = null, useId = false): Promise<{ value: string; label: string }[]> {
|
||||||
|
// let data: { value: string; label: string }[] = []
|
||||||
|
// const result = await getList({ 'infraGroup_code': 'procedure-room' ,...params})
|
||||||
|
// if (result.success) {
|
||||||
|
// const resultData = result.body?.data || []
|
||||||
|
// data = !useId ?
|
||||||
|
// resultData.map((item: Infra) => ({ value: item.code, label: item.name })) :
|
||||||
|
// resultData.map((item: Infra) => ({ value: item.id, label: item.name }))
|
||||||
|
// }
|
||||||
|
// return data
|
||||||
|
// }
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
// Base
|
||||||
|
import type { ProcedureRoom } from '~/models/procedure-room'
|
||||||
|
import * as base from './_crud-base'
|
||||||
|
|
||||||
|
const name = 'procedure-room'
|
||||||
|
const path = `/api/v1/${name}`
|
||||||
|
|
||||||
|
export function create(data: ProcedureRoom) {
|
||||||
|
return base.create(path, data, name)
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getList(params: any = null) {
|
||||||
|
return base.getList(path, params, name)
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getDetail(id: number | string) {
|
||||||
|
return base.getDetail(path, id, name)
|
||||||
|
}
|
||||||
|
|
||||||
|
export function update(id: number | string, data: ProcedureRoom) {
|
||||||
|
return base.update(path, id, data, name)
|
||||||
|
}
|
||||||
|
|
||||||
|
export function remove(id: number | string) {
|
||||||
|
return base.remove(path, id, name)
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user