104 lines
2.2 KiB
TypeScript
104 lines
2.2 KiB
TypeScript
import type { Config } 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'))
|
|
|
|
const doctorStatus = {
|
|
0: 'Tidak Aktif',
|
|
1: 'Aktif',
|
|
}
|
|
|
|
export const config: Config = {
|
|
cols: [
|
|
{ width: 100 },
|
|
{ width: 250 },
|
|
{},
|
|
{ width: 100 },
|
|
{ width: 100 },
|
|
{},
|
|
{},
|
|
{},
|
|
{ width: 100 },
|
|
{ width: 100 },
|
|
{ width: 100 },
|
|
{ width: 50 },
|
|
],
|
|
|
|
headers: [
|
|
[
|
|
{ label: 'Kode JKN' },
|
|
{ label: 'Nama' },
|
|
{ label: 'No KTP' },
|
|
{ label: 'No SIP' },
|
|
{ label: 'No IHS' },
|
|
{ label: 'Telpon' },
|
|
{ label: 'Fee Ranap' },
|
|
{ label: 'Fee Rajal' },
|
|
{ label: 'Status' },
|
|
],
|
|
],
|
|
|
|
keys: [
|
|
'bpjs_code',
|
|
'name',
|
|
'identity_number',
|
|
'sip_no',
|
|
'ihs_number',
|
|
'phone',
|
|
'inPatient_itemPrice',
|
|
'outPatient_itemPrice',
|
|
'status',
|
|
'action',
|
|
],
|
|
|
|
delKeyNames: [
|
|
{ key: 'code', label: 'Kode' },
|
|
{ key: 'name', label: 'Nama' },
|
|
],
|
|
|
|
parses: {
|
|
name: (rec: unknown): unknown => {
|
|
console.log(rec)
|
|
const recX = rec as SmallDetailDto
|
|
return `${recX.frontTitle} ${recX.name} ${recX.endTitle}`.trim()
|
|
},
|
|
identity_number: (rec: unknown): unknown => {
|
|
const recX = rec as SmallDetailDto
|
|
if (recX.identity_number?.substring(0, 5) === 'BLANK') {
|
|
return '(TANPA NIK)'
|
|
}
|
|
return recX.identity_number
|
|
},
|
|
inPatient_itemPrice: (rec: unknown): unknown => {
|
|
const recX = rec as SmallDetailDto
|
|
return Number(recX.inPatient_itemPrice.price).toLocaleString('id-ID')
|
|
},
|
|
outPatient_itemPrice: (rec: unknown): unknown => {
|
|
const recX = rec as SmallDetailDto
|
|
return Number(recX.outPatient_itemPrice.price).toLocaleString('id-ID')
|
|
},
|
|
status: (rec: unknown): unknown => {
|
|
const recX = rec as SmallDetailDto
|
|
return doctorStatus[recX.status_code as keyof typeof doctorStatus]
|
|
},
|
|
},
|
|
|
|
components: {
|
|
action(rec, idx) {
|
|
return {
|
|
idx,
|
|
rec: rec as object,
|
|
component: action,
|
|
}
|
|
},
|
|
},
|
|
|
|
htmls: {
|
|
patient_address(_rec) {
|
|
return '-'
|
|
},
|
|
},
|
|
}
|