Merge branch 'dev' of https://github.com/dikstub-rssa/simrs-be into feat/sync-setting-vanili

This commit is contained in:
vanilia
2025-11-28 12:23:34 +07:00
48 changed files with 1418 additions and 419 deletions

No files matched your search

+34 -23
View File
@@ -1,14 +1,6 @@
package encounter
import (
eam "simrs-vx/internal/domain/main-entities/ambulatory"
edc "simrs-vx/internal/domain/main-entities/death-cause"
eem "simrs-vx/internal/domain/main-entities/emergency"
eed "simrs-vx/internal/domain/main-entities/encounter-document"
eip "simrs-vx/internal/domain/main-entities/inpatient"
eir "simrs-vx/internal/domain/main-entities/internal-reference"
er "simrs-vx/internal/domain/main-entities/rehab/base"
// std
"time"
@@ -24,10 +16,18 @@ import (
// internal - domain - main-entities
evs "simrs-vx/internal/domain/bpjs-entities/vclaim-sep"
eam "simrs-vx/internal/domain/main-entities/ambulatory"
ea "simrs-vx/internal/domain/main-entities/appointment"
edc "simrs-vx/internal/domain/main-entities/death-cause"
ed "simrs-vx/internal/domain/main-entities/doctor"
eem "simrs-vx/internal/domain/main-entities/emergency"
ee "simrs-vx/internal/domain/main-entities/employee"
eed "simrs-vx/internal/domain/main-entities/encounter-document"
eip "simrs-vx/internal/domain/main-entities/inpatient"
eir "simrs-vx/internal/domain/main-entities/internal-reference"
en "simrs-vx/internal/domain/main-entities/nurse"
ep "simrs-vx/internal/domain/main-entities/patient"
er "simrs-vx/internal/domain/main-entities/rehab/base"
es "simrs-vx/internal/domain/main-entities/specialist"
ess "simrs-vx/internal/domain/main-entities/subspecialist"
eu "simrs-vx/internal/domain/main-entities/unit"
@@ -65,15 +65,15 @@ type CreateDto struct {
}
type TRujukan struct {
NoSep string `json:"noSep"`
NoSep string `json:"noSep"` // Surat Eligibilitas Peserta
TglRujukan string `json:"tglRujukan"`
PpkDirujuk string `json:"ppkDirujuk"`
JnsPelayanan string `json:"jnsPelayanan"`
PpkDirujuk string `json:"ppkDirujuk"` // PPK (Provider Pelayanan Kesehatan) -> kode RS tujuan
JnsPelayanan string `json:"jnsPelayanan"` // Jenis pelayanan yang dimintakan; 1 = RawatInap; 2 = RawatJalan
Catatan string `json:"catatan"`
DiagRujukan string `json:"diagRujukan"`
TipeRujukan string `json:"tipeRujukan"`
PoliRujukan string `json:"poliRujukan"`
User string `json:"user"`
DiagRujukan string `json:"diagRujukan"` // Kode Diagnosa
TipeRujukan string `json:"tipeRujukan"` // 0 = Rujukan Penuh; 1 = Rujukan Partial (hanya untuk tindakan tertentu); 2 = Balik (dikembalikan ke faskes asal)
PoliRujukan string `json:"poliRujukan"` // Kode Poli Tujuan
User string `json:"user"` // user yang membuat rujukan
}
type ReadListDto struct {
@@ -105,24 +105,24 @@ type FilterDto struct {
}
type ReadDetailDto struct {
Id uint16 `json:"id"`
Id uint `json:"id"`
Includes string `json:"includes"`
}
type UpdateDto struct {
Id uint16 `json:"id"`
Id uint `json:"id"`
CreateDto
}
type UpdateStatusDto struct {
Id uint16 `json:"id"`
Id uint `json:"id"`
StatusCode erc.DataStatusCode `json:"status_code"`
pa.AuthInfo
}
type DeleteDto struct {
Id uint16 `json:"id"`
Id uint `json:"id"`
pa.AuthInfo
}
@@ -147,7 +147,7 @@ type DischargeDto struct {
type CheckinDto struct {
Id uint `json:"id"`
Responsible_Doctor_Code *string `json:"responsible_doctor_code"`
Adm_Employee_Id *uint `json:"adm_employee_id"`
Responsible_Nurse_Code *string `json:"responsible_nurse_code"`
StartedAt *time.Time `json:"startedAt"`
FinishedAt *time.Time `json:"finishedAt"`
@@ -158,11 +158,18 @@ type SwitchUnitDto struct {
Id uint `json:"id"`
PolySwitchCode *ere.PolySwitchCode `json:"polySwitchCode"`
InternalReferences *[]eir.CreateDto `json:"internalReferences" validate:"required"`
Src_Doctor_Code *string `json:"-"`
Src_Nurse_Code *string `json:"-"`
pa.AuthInfo
}
type ApproveUnitDto struct {
Id uint `json:"id"`
InternalReferences_Id uint16 `json:"internalReferences_id" validate:"required"`
type ApproveCancelUnitDto struct {
Id uint `json:"id"`
InternalReferences_Id uint `json:"internalReferences_id" validate:"required"`
Dst_Doctor_Code *string `json:"dst_doctor_code"`
pa.AuthInfo
}
type ResponseDto struct {
@@ -211,6 +218,8 @@ type ResponseDto struct {
Rehab *er.Basic `json:"rehab,omitempty"`
RehabChildren *[]er.Basic `json:"rehabChildren,omitempty"`
EncounterDocuments *[]eed.EncounterDocument `json:"encounterDocuments,omitempty"`
Responsible_Nurse_Code *string `json:"responsible_nurse_code"`
Responsible_Nurse *en.Nurse `json:"responsible_nurse,omitempty"`
}
func (d Encounter) ToResponse() ResponseDto {
@@ -258,6 +267,8 @@ func (d Encounter) ToResponse() ResponseDto {
Rehab: d.Rehab,
RehabChildren: d.RehabChildren,
EncounterDocuments: d.EncounterDocuments,
Responsible_Nurse_Code: d.Responsible_Nurse_Code,
Responsible_Nurse: d.Responsible_Nurse,
}
resp.Main = d.Main
return resp
@@ -20,6 +20,7 @@ import (
eip "simrs-vx/internal/domain/main-entities/inpatient"
ei "simrs-vx/internal/domain/main-entities/insurance-company"
eir "simrs-vx/internal/domain/main-entities/internal-reference"
en "simrs-vx/internal/domain/main-entities/nurse"
ep "simrs-vx/internal/domain/main-entities/patient"
er "simrs-vx/internal/domain/main-entities/rehab/base"
es "simrs-vx/internal/domain/main-entities/specialist"
@@ -77,6 +78,8 @@ type Encounter struct {
EncounterDocuments *[]eed.EncounterDocument `json:"encounterDocuments,omitempty" gorm:"foreignKey:Encounter_Id;references:Id"`
GeneralConsents *[]egc.GeneralConsent `json:"generalConsents,omitempty" gorm:"foreignKey:Encounter_Id;references:Id"`
VclaimReference *evr.VclaimReference `json:"vclaimReference,omitempty" gorm:"foreignKey:Encounter_Id;references:Id"`
Responsible_Nurse_Code *string `json:"responsible_nurse_code"`
Responsible_Nurse *en.Nurse `json:"responsible_nurse,omitempty" gorm:"foreignKey:Responsible_Nurse_Code;references:Code"`
}
func (d Encounter) IsDone() bool {
@@ -9,10 +9,13 @@ import (
)
type CreateDto struct {
Encounter_Id *uint `json:"-"`
Unit_Code *string `json:"unit_code"`
Doctor_Code *string `json:"doctor_code"`
Status_Code erc.DataApprovalCode `json:"status_code"`
Encounter_Id *uint `json:"-"`
Unit_Code *string `json:"unit_code"`
Doctor_Code *string `json:"doctor_code"`
Nurse_Code *string `json:"nurse_code"`
Status_Code erc.DataApprovalCode `json:"status_code"`
SrcDoctor_Code *string `json:"srcDoctor_code"`
SrcNurse_Code *string `json:"srcNurse_code"`
}
type ReadListDto struct {
@@ -29,17 +32,17 @@ type FilterDto struct {
}
type ReadDetailDto struct {
Id uint16 `json:"id"`
Id uint `json:"id"`
Includes string `json:"includes"`
}
type UpdateDto struct {
Id uint16 `json:"id"`
Id uint `json:"id"`
CreateDto
}
type DeleteDto struct {
Id uint16 `json:"id"`
Id uint `json:"id"`
}
type MetaDto struct {
@@ -5,15 +5,22 @@ import (
ecore "simrs-vx/internal/domain/base-entities/core"
ed "simrs-vx/internal/domain/main-entities/doctor"
en "simrs-vx/internal/domain/main-entities/nurse"
eu "simrs-vx/internal/domain/main-entities/unit"
)
type InternalReference struct {
ecore.Main
Encounter_Id *uint `json:"encounter_id"`
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit,omitempty" gorm:"foreignKey:Unit_Code;references:Code"`
Doctor_Code *string `json:"doctor_code"`
Doctor *ed.Doctor `json:"doctor,omitempty" gorm:"foreignKey:Doctor_Code;references:Code"`
Status_Code *erc.DataApprovalCode `json:"status_code"`
Encounter_Id *uint `json:"encounter_id"`
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit,omitempty" gorm:"foreignKey:Unit_Code;references:Code"`
Doctor_Code *string `json:"doctor_code"`
Doctor *ed.Doctor `json:"doctor,omitempty" gorm:"foreignKey:Doctor_Code;references:Code"`
Status_Code *erc.DataApprovalCode `json:"status_code"`
SrcDoctor_Code *string `json:"srcDoctor_code"`
SrcDoctor *ed.Doctor `json:"srcDoctor,omitempty" gorm:"foreignKey:SrcDoctor_Code;references:Code"`
SrcNurse_Code *string `json:"srcNurse_code"`
SrcNurse *en.Nurse `json:"srcNurse,omitempty" gorm:"foreignKey:SrcNurse_Code;references:Code"`
Nurse_Code *string `json:"nurse_code"`
Nurse *en.Nurse `json:"nurse,omitempty" gorm:"foreignKey:Nurse_Code;references:Code"`
}
@@ -106,6 +106,7 @@ const (
DACNew DataApprovalCode = "new"
DACApproved DataApprovalCode = "approved"
DACRejected DataApprovalCode = "rejected"
DACCanceled DataApprovalCode = "canceled"
PSCSuccess ProcessStatusCode = "success"
PSCFailed ProcessStatusCode = "failed"
@@ -95,10 +95,10 @@ const (
RTCPrivate RefTypeCode = "private" // Swasta
RTCBpjs RefTypeCode = "bpjs" // BPJS
APMCJkn AllPaymentMethodCode = "jkn" // JKN
APMCJkmm AllPaymentMethodCode = "jkmm" // JKMM
APMCSpm AllPaymentMethodCode = "spm" // SPM
APMCPks AllPaymentMethodCode = "pks" // PKS
APMCJkn AllPaymentMethodCode = "jkn" // JKN -> Jaminan Kesehatan Nasional -> BPJS Kesehatan
APMCJkmm AllPaymentMethodCode = "jkmm" // JKMM -> Jaminan Kesehatan Masyarakat Miskin -> Dibiayai oleh APBD daerah
APMCSpm AllPaymentMethodCode = "spm" // SPM -> Surat Pernyataan Miskin
APMCPks AllPaymentMethodCode = "pks" // PKS -> Perjanjian Kerjasama -> Pembayaran melalui instansi atau perusahaan yang memiliki kontrak dengan rumah sakit
APMCUmum AllPaymentMethodCode = "umum"
SRTCInternal SEPRefTypeCode = "internal" // Rujukan Internal
@@ -1,4 +1,4 @@
package division
package m_polihfis
type MPolihfis struct {
Id uint `json:"id" gorm:"primaryKey;autoIncrement;column:id"`
@@ -1,7 +1,7 @@
package m_poly
type MPoly struct {
Kode uint `json:"kode" gorm:"primaryKey;autoIncrement;column:kode"`
Kode uint `json:"kode" gorm:"primaryKey;column:kode"`
Nama string `json:"nama" gorm:"column:nama"`
Jenispoly uint `json:"jenispoly" gorm:"column:jenispoly"`
}
@@ -82,7 +82,6 @@ type TPendaftaran struct {
DokterNameHfis *string `json:"dokter_name_hfis" gorm:"column:dokter_name_hfis"`
DokterIdHfis *string `json:"dokter_id_hfis" gorm:"column:dokter_id_hfis"`
StatusBridging *string `json:"status_bridging" gorm:"column:status_bridging"`
NoSpri *string `json:"no_spri" gorm:"column:no_spri"`
}
func (TPendaftaran) TableName() string {
@@ -0,0 +1,29 @@
package internal_reference
import (
ecore "simrs-vx/internal/domain/base-entities/core"
erc "simrs-vx/internal/domain/references/common"
"time"
)
type InternalReferenceLink struct {
ecore.Main
Simx_Id uint `json:"simx_id" gorm:"unique"`
Simgos_Id uint `json:"simgos_id" gorm:"unique"`
}
type InternalReferenceSimxLog struct {
ecore.Main
Value *string `json:"value"`
Date *time.Time `json:"date"`
Status erc.ProcessStatusCode `json:"status"`
ErrMessage *string `json:"errMessage"`
}
type InternalReferenceSimgosLog struct {
ecore.Main
Value *string `json:"value"`
Date *time.Time `json:"date"`
Status erc.ProcessStatusCode `json:"status"`
ErrMessage *string `json:"errMessage"`
}