41 lines
1.0 KiB
TypeScript
41 lines
1.0 KiB
TypeScript
|
|
import { IsString, IsNotEmpty, Length, IsJSON, IsEnum } from 'class-validator';
|
||
|
|
|
||
|
|
export class CreateLogDto {
|
||
|
|
@IsNotEmpty({ message: 'Event wajib diisi' })
|
||
|
|
@IsString({ message: 'Event harus berupa string' })
|
||
|
|
@IsEnum(
|
||
|
|
[
|
||
|
|
'tindakan_dokter_created',
|
||
|
|
'obat_given',
|
||
|
|
'rekam_medis_created',
|
||
|
|
'tindakan_dokter_updated',
|
||
|
|
'obat_updated',
|
||
|
|
'rekam_medis_updated',
|
||
|
|
'tindakan_dokter_deleted',
|
||
|
|
'obat_deleted',
|
||
|
|
'rekam_medis_deleted',
|
||
|
|
],
|
||
|
|
{
|
||
|
|
message: 'Event tidak valid',
|
||
|
|
},
|
||
|
|
)
|
||
|
|
@Length(1, 100, { message: 'Event maksimal 100 karakter' })
|
||
|
|
event: string;
|
||
|
|
|
||
|
|
@IsNotEmpty({ message: 'Payload wajib diisi' })
|
||
|
|
@IsJSON({ message: 'Payload harus berupa JSON yang valid' })
|
||
|
|
payload: {
|
||
|
|
dokter_id: number;
|
||
|
|
visit_id: string;
|
||
|
|
tindakan?: string;
|
||
|
|
kategori_tindakan?: string;
|
||
|
|
kelompok_tindakan?: string;
|
||
|
|
obat?: string;
|
||
|
|
jumlah_obat?: number;
|
||
|
|
aturan_pakai?: string;
|
||
|
|
anamnese?: string;
|
||
|
|
jenis_kasus?: string;
|
||
|
|
tindak_lanjut?: string;
|
||
|
|
};
|
||
|
|
}
|