Files
api-antrian-operasi/internal/domain/antrian_operasi/request.go
T

77 lines
3.0 KiB
Go

package antrianoperasi
import (
"time"
)
type FormDataRequest struct {
NoRekamMedis string `json:"noRekamMedis" binding:"required"`
NoKtp string `json:"noKtp" binding:"required"`
NamaPasien string `json:"namaPasien" binding:"required"`
JenisKelamin string `json:"jenisKelamin" binding:"required,oneof=L P"`
TglLahir *string `json:"tanggalLahir"`
Umur *string `json:"umur"`
Alamat *string `json:"alamat"`
NoTelepon []string `json:"nomorTelepon"`
}
type DiagnosisItemRequest struct {
KodeDiagnosa string `json:"kodeDiagnosa" binding:"required"`
Diagnosa string `json:"diagnosa" binding:"required"`
JenisDiagnosa string `json:"jenisDiagnosa" binding:"required"`
}
type TindakanItemRequest struct {
KodeTindakan *string `json:"kodeTindakan" binding:"required"`
Tindakan *string `json:"tindakan" binding:"required"`
TindakanTambahan *string `json:"tindakanTambahan" binding:"required"`
}
type RencanaOperasiRequest struct {
Spesialis int `json:"spesialis" binding:"required"`
SpesialisName *string
SubSpesialis int `json:"subSpesialis" binding:"required"`
SubSpesialisName *string
TanggalDaftar *time.Time `json:"tanggalDaftar"`
KategoriOperasi int `json:"kategoriOperasi"`
KategoriName *string `json:"kategoriName"`
RencanaOperasi *string `json:"rencanaOperasi"`
Keterangan *string `json:"keterangan"`
}
type DokterPelaksanaItemRequest struct {
Id string `json:"id"`
Nip *string `json:"nip"`
Nama *string `json:"nama"`
SatuanKerja *string `json:"satuan_kerja"`
}
type StatusPasienRequest struct {
TglSelesai *time.Time `json:"tanggalSelesai"`
StatusOperasi string `json:"statusOperasi" binding:"required,oneof=1 2 3 4"`
KeteranganStatus *string `json:"keteranganStatus"`
}
type CreatePasienOperasiRequest struct {
FormData FormDataRequest `json:"formData"`
DiagnosisItem []DiagnosisItemRequest `json:"diagnosisItems" binding:"required,min=1,dive"`
TindakanItems []TindakanItemRequest `json:"tindakanItems" binding:"required,min=1,dive"`
RencanaOperasiData RencanaOperasiRequest `json:"rencanaOperasiData"`
DokterPelaksanaItems []DokterPelaksanaItemRequest `json:"dokterPelaksanaItems"`
StatusPasienData StatusPasienRequest `json:"statusPasienData"`
}
type AntrianQuery struct {
Id string `form:"id"`
Search string `form:"search"`
Type string `form:"type,default=all" binding:"omitempty,oneof=all kategori spesialis sub-spesialis"`
TypeID int `form:"type_id,default=0"`
Status string `form:"status" binding:"omitempty,oneof=1 2 3 4"`
Limit int `form:"limit,default=10"`
Offset int `form:"offset,default=0"`
SortBy string `form:"sort_by" binding:"omitempty,oneof=tanggal_daftar no_urut_kategori no_urut_spesialis"`
SortOrder string `form:"sort_order" binding:"omitempty,oneof=ASC DESC"`
KategoriId int `form:"kategori_id"`
DokterId string `form:"dokter_id"`
}