Squashed commit of the following:
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
This commit is contained in:
No files matched your search
@@ -0,0 +1,159 @@
|
||||
import { z } from 'zod'
|
||||
|
||||
const TherapyProtocolSchema = z.object({
|
||||
examinationDate: z.string({
|
||||
required_error: 'Pilih tanggal pemeriksaan',
|
||||
}),
|
||||
relationshipToInsured: z.enum(['spouse', 'child'], {
|
||||
required_error: 'Pilih hubungan',
|
||||
}),
|
||||
anamnesis: z.string({
|
||||
required_error: 'Mohon lengkapi catatan anamnesa',
|
||||
}),
|
||||
medicalHistory: z.string({
|
||||
required_error: 'Mohon lengkapi catatan riwayat penyakit',
|
||||
}),
|
||||
medicationHistory: z.string({
|
||||
required_error: 'Mohon lengkapi catatan riwayat obat',
|
||||
}),
|
||||
|
||||
supportDiagnosis: z.array(
|
||||
z.object({
|
||||
diagnosis: z.string({
|
||||
required_error: 'Isi diagnosis',
|
||||
}),
|
||||
}),
|
||||
{
|
||||
required_error: 'Isi diagnosis',
|
||||
},
|
||||
),
|
||||
functionalDiagnosis: z.array(
|
||||
z
|
||||
.object({
|
||||
diagnosis: z.string({}),
|
||||
})
|
||||
.optional(),
|
||||
{
|
||||
required_error: 'Isi diagnosis',
|
||||
},
|
||||
),
|
||||
treatmentDiagnosis: z.array(
|
||||
z.object({
|
||||
diagnosis: z.string({
|
||||
required_error: 'Isi diagnosis',
|
||||
}),
|
||||
}),
|
||||
{
|
||||
required_error: 'Isi diagnosis',
|
||||
},
|
||||
),
|
||||
supportExamination: z.string({
|
||||
required_error: 'Mohon lengkapi catatan pemeriksaan penunjang',
|
||||
}),
|
||||
|
||||
recommendation: z.string({
|
||||
required_error: 'Mohon lengkapi catatan anjuran',
|
||||
}),
|
||||
evaluation: z.string({
|
||||
required_error: 'Mohon lengkapi catatan evaluasi',
|
||||
}),
|
||||
isWorkRelatedDisease: z.string({
|
||||
required_error: 'Pilih apakah penyakit berkaitan dengan pekerjaan',
|
||||
}),
|
||||
})
|
||||
|
||||
|
||||
|
||||
const PickerItemSchema = z.object({
|
||||
id: z.number().optional(),
|
||||
code: z.string(),
|
||||
name: z.string()
|
||||
})
|
||||
|
||||
const TherapyProtocolMedicRehabilitationSchema = z.object({
|
||||
form1ExaminationDate: z.string({
|
||||
required_error: 'Pilih tanggal pemeriksaan',
|
||||
}),
|
||||
form1Diagnose: z.string({
|
||||
required_error: 'Mohon lengkapi catatan diagnosa',
|
||||
}),
|
||||
form1TherapyRequest: z.string({
|
||||
required_error: 'Mohon lengkapi catatan terapi',
|
||||
}),
|
||||
form1TargetPeriod: z.number({
|
||||
required_error: 'Mohon lengkapi catatan terapi',
|
||||
}),
|
||||
form1TherapyTarget: z.string({
|
||||
required_error: 'Mohon lengkapi catatan terapi',
|
||||
}),
|
||||
|
||||
form2RelationshipToInsured: z.enum(['spouse', 'child'], {
|
||||
required_error: 'Pilih hubungan',
|
||||
}),
|
||||
anamnesis: z.string({
|
||||
required_error: 'Mohon lengkapi catatan anamnesa',
|
||||
}),
|
||||
form2PhysicalExamination: z.string({
|
||||
required_error: 'Mohon lengkapi catatan pemeriksaan fisik',
|
||||
}),
|
||||
|
||||
medicalDiagnoses: z.array(PickerItemSchema).default([]),
|
||||
functionDiagnoses: z.array(PickerItemSchema).default([]),
|
||||
procedures: z.array(PickerItemSchema).default([]),
|
||||
|
||||
supportingExams: z.string({
|
||||
required_error: 'Mohon lengkapi catatan pemeriksaan penunjang',
|
||||
}),
|
||||
evaluation: z.string({
|
||||
required_error: 'Mohon lengkapi catatan evaluasi',
|
||||
}),
|
||||
instruction: z.string({
|
||||
required_error: 'Mohon lengkapi catatan anjuran',
|
||||
}),
|
||||
workCauseStatus: z.enum(['YA', 'TIDAK'], {
|
||||
required_error: 'Pilih apakah penyakit berkaitan dengan pekerjaan',
|
||||
}),
|
||||
|
||||
form3ExaminationDate: z.string({
|
||||
required_error: 'Pilih tanggal pemeriksaan',
|
||||
}),
|
||||
form3Diagnose: z.string({
|
||||
required_error: 'Mohon lengkapi catatan diagnosa',
|
||||
}),
|
||||
form3TherapyRequest: z.string({
|
||||
required_error: 'Mohon lengkapi catatan terapi',
|
||||
}),
|
||||
form3ProgramActivities: z.array(
|
||||
z.string({
|
||||
required_error: 'Mohon lengkapi Program/Kegiatan',
|
||||
}),
|
||||
{
|
||||
required_error: 'Isi Program/Kegiatan',
|
||||
},
|
||||
).default(['']),
|
||||
})
|
||||
|
||||
|
||||
// {
|
||||
// "encounter_id": 4,
|
||||
// "doctor_code": "doc-3",
|
||||
// "anamnesis": "",
|
||||
// "medicalDiagnoses": "", //json
|
||||
// "functionDiagnoses": "", //json
|
||||
// "procedures":"",
|
||||
// "supportingExams":"",
|
||||
// "instruction":"",
|
||||
// "evaluation":"",
|
||||
// "workCauseStatus":"YA",
|
||||
// "frequency":1,
|
||||
// "intervalUnit_code":"day",
|
||||
// "duration":30,
|
||||
// "durationUnit_code":"min"
|
||||
// }
|
||||
|
||||
|
||||
type TherapyProtocolFormData = z.infer<typeof TherapyProtocolSchema>
|
||||
type TherapyProtocolMedicRehabilitationFormData = z.infer<typeof TherapyProtocolMedicRehabilitationSchema>
|
||||
|
||||
export { TherapyProtocolSchema, TherapyProtocolMedicRehabilitationSchema }
|
||||
export type { TherapyProtocolFormData, TherapyProtocolMedicRehabilitationFormData }
|
||||
@@ -0,0 +1,19 @@
|
||||
import { z } from 'zod'
|
||||
|
||||
const VerificationSchema = z.object({
|
||||
name: z.string({
|
||||
required_error: 'Mohon lengkapi Nama Anda',
|
||||
}),
|
||||
email: z.string({
|
||||
required_error: 'Mohon lengkapi email',
|
||||
}),
|
||||
password: z.string({
|
||||
required_error: 'Mohon lengkapi password',
|
||||
}),
|
||||
})
|
||||
|
||||
|
||||
type VerificationFormData = z.infer<typeof VerificationSchema>
|
||||
|
||||
export { VerificationSchema, }
|
||||
export type { VerificationFormData, }
|
||||
Reference in New Issue
Block a user