@@ -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'
|
||||
|
||||
// Types
|
||||
import type { Infra } from '~/models/infra'
|
||||
|
||||
const path = '/api/v1/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)
|
||||
}
|
||||
|
||||
@@ -20,7 +17,7 @@ export function getDetail(id: number | string) {
|
||||
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)
|
||||
}
|
||||
|
||||
@@ -28,15 +25,26 @@ export function remove(id: number | string) {
|
||||
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 }[] = []
|
||||
const result = await getList(params)
|
||||
if (result.success) {
|
||||
const resultData = result.body?.data || []
|
||||
data = resultData.map((item: Infra) => ({
|
||||
value: item.id ? Number(item.id) : item.code,
|
||||
label: item.name,
|
||||
}))
|
||||
data = !useId ?
|
||||
resultData.map((item: Infra) => ({ value: item.code, label: item.name })) :
|
||||
resultData.map((item: Infra) => ({ value: item.id, label: item.name }))
|
||||
}
|
||||
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