diff --git a/cmd/main-migration/migrations/20251118074929.sql b/cmd/main-migration/migrations/20251118074929.sql new file mode 100644 index 00000000..758110f2 --- /dev/null +++ b/cmd/main-migration/migrations/20251118074929.sql @@ -0,0 +1,2 @@ +-- Modify "GeneralConsent" table +ALTER TABLE "public"."GeneralConsent" DROP CONSTRAINT "fk_GeneralConsent_Encounter", ADD CONSTRAINT "fk_Encounter_GeneralConsents" FOREIGN KEY ("Encounter_Id") REFERENCES "public"."Encounter" ("Id") ON UPDATE NO ACTION ON DELETE NO ACTION; diff --git a/cmd/main-migration/migrations/atlas.sum b/cmd/main-migration/migrations/atlas.sum index 94a7b195..1b7a22ba 100644 --- a/cmd/main-migration/migrations/atlas.sum +++ b/cmd/main-migration/migrations/atlas.sum @@ -1,4 +1,4 @@ -h1:2JitBq/ClDO+w/9iPRmvv946fDfbSDFoHbpHL20aqNI= +h1:afszGTkDIE06d7AaxnxHvAka95f66k0PzwbeS26VK6I= 20250904105930.sql h1:MEM6blCgke9DzWQSTnLzasbPIrcHssNNrJqZpSkEo6k= 20250904141448.sql h1:J8cmYNk4ZrG9fhfbi2Z1IWz7YkfvhFqTzrLFo58BPY0= 20250908062237.sql h1:Pu23yEW/aKkwozHoOuROvHS/GK4ngARJGdO7FB7HZuI= @@ -119,4 +119,5 @@ h1:2JitBq/ClDO+w/9iPRmvv946fDfbSDFoHbpHL20aqNI= 20251113120533.sql h1:f3/U1Ve2yF2zSMhkt+xtwF8wUYfUKYwgbNeGfE37EW4= 20251114062746.sql h1:FInLaEFQByESEwFJKuKnuUSTKmcDpi3ZXaxkKwz2+D8= 20251117005942.sql h1:wD3BWrUSmo1HlW16V3lkaBkJvbAZ0fNk77te7J9NhOc= -20251117075427.sql h1:/PZovLaMdWILT6y1uNuBo9EyMHyxp3vQ7BwndRpQriY= +20251117075427.sql h1:TqU9VKZa3I8YNXUGQWY3WVBYN+1FvyyaKy0hB1jgAho= +20251118074929.sql h1:KQfYOHalnSiUPpKzSUDqdlEWMbRWyNu3PmCqsjuCUGU= diff --git a/internal/domain/main-entities/encounter/entity.go b/internal/domain/main-entities/encounter/entity.go index 3939f546..c188bb1a 100644 --- a/internal/domain/main-entities/encounter/entity.go +++ b/internal/domain/main-entities/encounter/entity.go @@ -10,6 +10,7 @@ import ( 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" + egc "simrs-vx/internal/domain/main-entities/general-consent" 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" @@ -72,6 +73,7 @@ type Encounter struct { Rehab *er.Basic `json:"rehab,omitempty" gorm:"foreignKey:Encounter_Id;references:Id"` RehabChildren *[]er.Basic `json:"rehabChildren,omitempty" gorm:"foreignKey:Parent_Encounter_Id;references:Id"` EncounterDocuments *[]eed.EncounterDocument `json:"encounterDocuments,omitempty" gorm:"foreignKey:Encounter_Id;references:Id"` + GeneralConsents *[]egc.GeneralConsent `json:"generalConsents,omitempty" gorm:"foreignKey:Encounter_Id;references:Id"` } func (d Encounter) IsDone() bool { diff --git a/internal/domain/main-entities/general-consent/entity.go b/internal/domain/main-entities/general-consent/entity.go index bf9381ec..7142f97e 100644 --- a/internal/domain/main-entities/general-consent/entity.go +++ b/internal/domain/main-entities/general-consent/entity.go @@ -2,13 +2,11 @@ package generalconsent import ( "simrs-vx/internal/domain/base-entities/core" - ee "simrs-vx/internal/domain/main-entities/encounter" ) type GeneralConsent struct { core.Main - Encounter_Id *uint `json:"encounter_id" gorm:"not null"` - Encounter *ee.Encounter `json:"encounter,omitempty" gorm:"foreignKey:Encounter_Id;references:Id"` - Value *string `json:"value"` - FileUrl *string `json:"fileUrl" gorm:"size:1024"` + Encounter_Id *uint `json:"encounter_id" gorm:"not null"` + Value *string `json:"value"` + FileUrl *string `json:"fileUrl" gorm:"size:1024"` } diff --git a/internal/domain/simgos-entities/division/entity.go b/internal/domain/simgos-entities/division/entity.go new file mode 100644 index 00000000..c10f5429 --- /dev/null +++ b/internal/domain/simgos-entities/division/entity.go @@ -0,0 +1,18 @@ +package division + +type MUnit struct { + KodeUnit uint `json:"kode_unit" gorm:"primaryKey;autoIncrement;column:kode_unit"` + NamaUnit string `json:"nama_unit" gorm:"column:nama_unit"` + GrupUnit uint `json:"grup_unit" gorm:"column:grup_unit"` + NamaGrupunit string `json:"nama_grupunit" gorm:"column:nama_grupunit"` + PendapatanUnit string `json:"pendapatan_unit" gorm:"column:pendapatan_unit"` + Smf string `json:"smf" gorm:"column:smf"` + HaveSubspecialis uint `json:"have_subspecialis" gorm:"column:have_subspecialis"` + KelSmfTarif string `json:"kel_smf_tarif" gorm:"column:kel_smf_tarif"` + IsPilihSatker uint `json:"is_pilih_satker" gorm:"column:is_pilih_satker"` + NamaTempatlayanan string `json:"nama_tempatlayanan" gorm:"column:nama_tempatlayanan"` +} + +func (MUnit) TableName() string { + return "m_unit" +} diff --git a/internal/domain/simgos-entities/specialist/entity.go b/internal/domain/simgos-entities/specialist/entity.go new file mode 100644 index 00000000..b9eb7b56 --- /dev/null +++ b/internal/domain/simgos-entities/specialist/entity.go @@ -0,0 +1,15 @@ +package division + +type MPolihfis struct { + Id uint `json:"id" gorm:"primaryKey;autoIncrement;column:id"` + Code string `json:"code" gorm:"column:code"` + Poliklinik string `json:"poliklinik" gorm:"column:poliklinik"` + CodePolirs string `json:"code_polirs" gorm:"column:code_polirs"` + Poliklinikrs string `json:"poliklinikrs" gorm:"column:poliklinikrs"` + Active uint `json:"active" gorm:"column:active"` + Status uint `json:"status" gorm:"column:status"` +} + +func (MPolihfis) TableName() string { + return "m_polihfis" +}