Perbaikan Lanjutan
This commit is contained in:
53
internal/models/vclaim/peserta/peserta.go
Normal file
53
internal/models/vclaim/peserta/peserta.go
Normal file
@@ -0,0 +1,53 @@
|
||||
package peserta
|
||||
|
||||
import "api-service/internal/models"
|
||||
|
||||
// === PESERTA MODELS ===
|
||||
|
||||
// PesertaRequest represents peserta lookup request
|
||||
type PesertaRequest struct {
|
||||
models.BaseRequest
|
||||
NoKartu string `json:"nokartu" validate:"required,min=13,max=13"`
|
||||
NIK string `json:"nik,omitempty" validate:"omitempty,min=16,max=16"`
|
||||
TanggalSEP string `json:"tglsep" validate:"required" example:"2024-01-15"`
|
||||
NoTelepon string `json:"notelp,omitempty" validate:"omitempty,max=15"`
|
||||
}
|
||||
|
||||
// PesertaData represents peserta information from BPJS
|
||||
type PesertaData struct {
|
||||
NoKartu string `json:"noKartu"`
|
||||
NIK string `json:"nik"`
|
||||
Nama string `json:"nama"`
|
||||
Pisa string `json:"pisa"`
|
||||
Sex string `json:"sex"`
|
||||
TanggalLahir string `json:"tglLahir"`
|
||||
TelephoneMsisdn string `json:"tglTAT"`
|
||||
TelephoneAsat string `json:"tglTMT"`
|
||||
KodeCabang string `json:"kdCabang"`
|
||||
NamaCabang string `json:"nmCabang"`
|
||||
KodeJenisPeserta string `json:"kdJnsPst"`
|
||||
NamaJenisPeserta string `json:"nmJnsPst"`
|
||||
KelasRawat string `json:"klsRawat"`
|
||||
Status string `json:"statusPeserta"`
|
||||
Aktif string `json:"aktif"`
|
||||
KeteranganAktif string `json:"ketAktif"`
|
||||
NoSKTM string `json:"noSKTM,omitempty"`
|
||||
NoKTP string `json:"noKtp"`
|
||||
Asuransi string `json:"asuransi,omitempty"`
|
||||
CoB string `json:"cob,omitempty"`
|
||||
TunggakanIuran string `json:"tglTunggak,omitempty"`
|
||||
MR struct {
|
||||
NoMR string `json:"noMR"`
|
||||
NamaMR string `json:"nmMR"`
|
||||
Sex string `json:"sex"`
|
||||
TglLahir string `json:"tglLahir"`
|
||||
TglMeninggal string `json:"tglMeninggal,omitempty"`
|
||||
} `json:"mr,omitempty"`
|
||||
}
|
||||
|
||||
// PesertaResponse represents peserta API response
|
||||
type PesertaResponse struct {
|
||||
models.BaseResponse
|
||||
Data *PesertaData `json:"data,omitempty"`
|
||||
MetaData interface{} `json:"metaData,omitempty"`
|
||||
}
|
||||
42
internal/models/vclaim/rujukan/rujukan.go
Normal file
42
internal/models/vclaim/rujukan/rujukan.go
Normal file
@@ -0,0 +1,42 @@
|
||||
package vclaim
|
||||
|
||||
import "api-service/internal/models"
|
||||
|
||||
// === RUJUKAN MODELS ===
|
||||
|
||||
// RujukanRequest represents rujukan lookup request
|
||||
type RujukanRequest struct {
|
||||
models.BaseRequest
|
||||
NoRujukan string `json:"noRujukan" validate:"required"`
|
||||
NoKartu string `json:"noKartu,omitempty"`
|
||||
}
|
||||
|
||||
// RujukanData represents rujukan information
|
||||
type RujukanData struct {
|
||||
NoRujukan string `json:"noRujukan"`
|
||||
TglRujukan string `json:"tglRujukan"`
|
||||
NoKartu string `json:"noKartu"`
|
||||
Nama string `json:"nama"`
|
||||
KelasRawat string `json:"kelasRawat"`
|
||||
Diagnosa struct {
|
||||
KodeDiagnosa string `json:"kdDiagnosa"`
|
||||
NamaDiagnosa string `json:"nmDiagnosa"`
|
||||
} `json:"diagnosa"`
|
||||
PoliRujukan struct {
|
||||
KodePoli string `json:"kdPoli"`
|
||||
NamaPoli string `json:"nmPoli"`
|
||||
} `json:"poliRujukan"`
|
||||
ProvPerujuk struct {
|
||||
KodeProvider string `json:"kdProvider"`
|
||||
NamaProvider string `json:"nmProvider"`
|
||||
} `json:"provPerujuk"`
|
||||
PelayananInfo string `json:"pelayanan"`
|
||||
StatusRujukan string `json:"statusRujukan"`
|
||||
}
|
||||
|
||||
// RujukanResponse represents rujukan API response
|
||||
type RujukanResponse struct {
|
||||
models.BaseResponse
|
||||
Data *RujukanData `json:"data,omitempty"`
|
||||
List []RujukanData `json:"list,omitempty"`
|
||||
}
|
||||
59
internal/models/vclaim/sep/sep.go
Normal file
59
internal/models/vclaim/sep/sep.go
Normal file
@@ -0,0 +1,59 @@
|
||||
package sep
|
||||
|
||||
import (
|
||||
"api-service/internal/models"
|
||||
"api-service/internal/models/vclaim/peserta"
|
||||
)
|
||||
|
||||
// === SEP (Surat Eligibilitas Peserta) MODELS ===
|
||||
|
||||
// SEPRequest represents SEP creation/update request
|
||||
type SepRequest struct {
|
||||
models.BaseRequest
|
||||
NoKartu string `json:"noKartu" validate:"required"`
|
||||
TglSep string `json:"tglSep" validate:"required"`
|
||||
PPKPelayanan string `json:"ppkPelayanan" validate:"required"`
|
||||
JnsPelayanan string `json:"jnsPelayanan" validate:"required,oneof=1 2"`
|
||||
KlsRawat string `json:"klsRawat" validate:"required,oneof=1 2 3"`
|
||||
NoMR string `json:"noMR" validate:"required"`
|
||||
Rujukan *SepRujukan `json:"rujukan"`
|
||||
Catatan string `json:"catatan,omitempty"`
|
||||
Diagnosa string `json:"diagnosa" validate:"required"`
|
||||
PoliTujuan string `json:"poli" validate:"required"`
|
||||
ExternalUser string `json:"user" validate:"required"`
|
||||
NoTelp string `json:"noTelp,omitempty"`
|
||||
}
|
||||
|
||||
// SEPRujukan represents rujukan information in SEP
|
||||
type SepRujukan struct {
|
||||
AsalRujukan string `json:"asalRujukan" validate:"required,oneof=1 2"`
|
||||
TglRujukan string `json:"tglRujukan" validate:"required"`
|
||||
NoRujukan string `json:"noRujukan" validate:"required"`
|
||||
PPKRujukan string `json:"ppkRujukan" validate:"required"`
|
||||
}
|
||||
|
||||
// SEPData represents SEP response data
|
||||
type SepData struct {
|
||||
NoSep string `json:"noSep"`
|
||||
TglSep string `json:"tglSep"`
|
||||
JnsPelayanan string `json:"jnsPelayanan"`
|
||||
PoliTujuan string `json:"poli"`
|
||||
KlsRawat string `json:"klsRawat"`
|
||||
NoMR string `json:"noMR"`
|
||||
Rujukan SepRujukan `json:"rujukan"`
|
||||
Catatan string `json:"catatan"`
|
||||
Diagnosa string `json:"diagnosa"`
|
||||
Peserta peserta.PesertaData `json:"peserta"`
|
||||
Informasi struct {
|
||||
NoSKDP string `json:"noSKDP,omitempty"`
|
||||
DPJPLayan string `json:"dpjpLayan"`
|
||||
NoTelepon string `json:"noTelp"`
|
||||
SubSpesialis string `json:"subSpesialis,omitempty"`
|
||||
} `json:"informasi"`
|
||||
}
|
||||
|
||||
// SEPResponse represents SEP API response
|
||||
type SepResponse struct {
|
||||
models.BaseResponse
|
||||
Data *SepData `json:"data,omitempty"`
|
||||
}
|
||||
Reference in New Issue
Block a user