From 738ee5b5173507b345597b319eb0e2129597282a Mon Sep 17 00:00:00 2001 From: dpurbosakti Date: Fri, 10 Oct 2025 14:05:59 +0700 Subject: [PATCH] change from postatlcode into postalregion, add location type into person address --- .../main-entities/division-position/entity.go | 2 +- .../main-entities/person-address/entity.go | 21 +++++++++++-------- .../base/entity.go | 0 .../{postal-code => postal-region}/dto.go | 6 +++--- .../{postal-code => postal-region}/entity.go | 6 +++--- internal/domain/main-entities/village/dto.go | 12 +++++------ .../domain/main-entities/village/entity.go | 6 +++--- internal/domain/references/person/person.go | 4 ++++ internal/interface/migration/main-entities.go | 4 ++-- 9 files changed, 34 insertions(+), 27 deletions(-) rename internal/domain/main-entities/{postal-code => postal-region}/base/entity.go (100%) rename internal/domain/main-entities/{postal-code => postal-region}/dto.go (89%) rename internal/domain/main-entities/{postal-code => postal-region}/entity.go (60%) diff --git a/internal/domain/main-entities/division-position/entity.go b/internal/domain/main-entities/division-position/entity.go index 3d1d2eca..5bb3160a 100644 --- a/internal/domain/main-entities/division-position/entity.go +++ b/internal/domain/main-entities/division-position/entity.go @@ -12,7 +12,7 @@ type DivisionPosition struct { Division *ed.Division `json:"division" gorm:"foreignKey:Division_Id"` Code string `json:"code" gorm:"unique;size:10"` Name string `json:"name" gorm:"size:50"` - HeadStatus bool `json:"head_status"` + HeadStatus bool `json:"headStatus"` Employee_Id *uint `json:"employee_id"` Employee *ee.Employee `json:"employee,omitempty" gorm:"foreignKey:Employee_Id;references:Id"` } diff --git a/internal/domain/main-entities/person-address/entity.go b/internal/domain/main-entities/person-address/entity.go index f3fc3bac..47c3d6e4 100644 --- a/internal/domain/main-entities/person-address/entity.go +++ b/internal/domain/main-entities/person-address/entity.go @@ -2,16 +2,19 @@ package personaddress import ( ecore "simrs-vx/internal/domain/base-entities/core" - epc "simrs-vx/internal/domain/main-entities/postal-code" + epr "simrs-vx/internal/domain/main-entities/postal-region" + + erp "simrs-vx/internal/domain/references/person" ) type PersonAddress struct { - ecore.Main // adjust this according to the needs - Person_Id uint `json:"person_id"` - Address string `json:"address" gorm:"size:150"` - Rt string `json:"rt" gorm:"size:2"` - Rw string `json:"rw" gorm:"size:2"` - PostalCode_Code string `json:"postalCode_code" gorm:"size:6"` - PostalCode *epc.PostalCode `json:"postalCode,omitempty" gorm:"foreignKey:PostalCode_Code;references:Code"` - Village_Code string `json:"village_code" gorm:"size:10"` + ecore.Main // adjust this according to the needs + Person_Id uint `json:"person_id"` + Address string `json:"address" gorm:"size:150"` + LocationType_Code erp.AddressLocationTypeCode `json:"locationType_code" gorm:"size:10"` + Rt string `json:"rt" gorm:"size:2"` + Rw string `json:"rw" gorm:"size:2"` + PostalRegion_Code string `json:"postalRegion_code" gorm:"size:6"` + PostalRegion *epr.PostalRegion `json:"postalRegion,omitempty" gorm:"foreignKey:PostalRegion_Code;references:Code"` + Village_Code string `json:"village_code" gorm:"size:10"` } diff --git a/internal/domain/main-entities/postal-code/base/entity.go b/internal/domain/main-entities/postal-region/base/entity.go similarity index 100% rename from internal/domain/main-entities/postal-code/base/entity.go rename to internal/domain/main-entities/postal-region/base/entity.go diff --git a/internal/domain/main-entities/postal-code/dto.go b/internal/domain/main-entities/postal-region/dto.go similarity index 89% rename from internal/domain/main-entities/postal-code/dto.go rename to internal/domain/main-entities/postal-region/dto.go index cb1e3d39..cb113c35 100644 --- a/internal/domain/main-entities/postal-code/dto.go +++ b/internal/domain/main-entities/postal-region/dto.go @@ -1,4 +1,4 @@ -package postalcode +package postalregion import ( ecore "simrs-vx/internal/domain/base-entities/core" @@ -42,7 +42,7 @@ type ResponseDto struct { Code string `json:"code"` } -func (d PostalCode) ToResponse() ResponseDto { +func (d PostalRegion) ToResponse() ResponseDto { resp := ResponseDto{ Id: d.Id, Village_Code: d.Village_Code, @@ -51,7 +51,7 @@ func (d PostalCode) ToResponse() ResponseDto { return resp } -func ToResponseList(data []PostalCode) []ResponseDto { +func ToResponseList(data []PostalRegion) []ResponseDto { resp := make([]ResponseDto, len(data)) for i, u := range data { resp[i] = u.ToResponse() diff --git a/internal/domain/main-entities/postal-code/entity.go b/internal/domain/main-entities/postal-region/entity.go similarity index 60% rename from internal/domain/main-entities/postal-code/entity.go rename to internal/domain/main-entities/postal-region/entity.go index 2825db9c..43f5971f 100644 --- a/internal/domain/main-entities/postal-code/entity.go +++ b/internal/domain/main-entities/postal-region/entity.go @@ -1,11 +1,11 @@ -package postalcode +package postalregion import ( - ep "simrs-vx/internal/domain/main-entities/postal-code/base" + ep "simrs-vx/internal/domain/main-entities/postal-region/base" ev "simrs-vx/internal/domain/main-entities/village" ) -type PostalCode struct { +type PostalRegion struct { ep.Basic Village *ev.Village `json:"village,omitempty" gorm:"foreignKey:Village_Code;references:Code"` } diff --git a/internal/domain/main-entities/village/dto.go b/internal/domain/main-entities/village/dto.go index 50f44a07..c56e60a5 100644 --- a/internal/domain/main-entities/village/dto.go +++ b/internal/domain/main-entities/village/dto.go @@ -3,7 +3,7 @@ package village import ( ecore "simrs-vx/internal/domain/base-entities/core" ed "simrs-vx/internal/domain/main-entities/district" - epb "simrs-vx/internal/domain/main-entities/postal-code/base" + epb "simrs-vx/internal/domain/main-entities/postal-region/base" evb "simrs-vx/internal/domain/main-entities/village/base" ) @@ -42,15 +42,15 @@ type MetaDto struct { type ResponseDto struct { evb.Basic - District *ed.District `json:"district,omitempty"` - PostalCodes []epb.Basic `json:"postalCodes,omitempty"` + District *ed.District `json:"district,omitempty"` + PostalRegions []epb.Basic `json:"postalRegions,omitempty"` } func (d Village) ToResponse() ResponseDto { resp := ResponseDto{ - Basic: d.Basic, - District: d.District, - PostalCodes: d.PostalCodes, + Basic: d.Basic, + District: d.District, + PostalRegions: d.PostalRegions, } return resp } diff --git a/internal/domain/main-entities/village/entity.go b/internal/domain/main-entities/village/entity.go index d7c549bc..ca5fb4af 100644 --- a/internal/domain/main-entities/village/entity.go +++ b/internal/domain/main-entities/village/entity.go @@ -2,12 +2,12 @@ package village import ( ed "simrs-vx/internal/domain/main-entities/district" - epb "simrs-vx/internal/domain/main-entities/postal-code/base" + epb "simrs-vx/internal/domain/main-entities/postal-region/base" evb "simrs-vx/internal/domain/main-entities/village/base" ) type Village struct { evb.Basic - District *ed.District `json:"district,omitempty" gorm:"foreignKey:District_Code;references:Code"` - PostalCodes []epb.Basic `json:"postalCodes,omitempty" gorm:"foreignKey:Village_Code;references:Code"` + District *ed.District `json:"district,omitempty" gorm:"foreignKey:District_Code;references:Code"` + PostalRegions []epb.Basic `json:"postalRegions,omitempty" gorm:"foreignKey:Village_Code;references:Code"` } diff --git a/internal/domain/references/person/person.go b/internal/domain/references/person/person.go index d21399d2..02d0f97e 100644 --- a/internal/domain/references/person/person.go +++ b/internal/domain/references/person/person.go @@ -12,6 +12,7 @@ type ( RelativeCode string ContactTypeCode string RelationshipCode string + AddressLocationTypeCode string ) const ( @@ -109,6 +110,9 @@ const ( RCNephew RelationshipCode = "nephew" // Keponakan RCGdChild RelationshipCode = "gd-child" // Cucu RCOther RelationshipCode = "other" // Lainnya + + ALTCIdn AddressLocationTypeCode = "identity" // Sesuai Identitas + ALTCDom AddressLocationTypeCode = "domicile" // Sesuai Domisili ) // func GetGenderCodes() map[GenderCode]string { diff --git a/internal/interface/migration/main-entities.go b/internal/interface/migration/main-entities.go index fcb3db9e..fc3161fa 100644 --- a/internal/interface/migration/main-entities.go +++ b/internal/interface/migration/main-entities.go @@ -57,7 +57,7 @@ import ( personrelative "simrs-vx/internal/domain/main-entities/person-relative" pharmacist "simrs-vx/internal/domain/main-entities/pharmacist" pharmacycompany "simrs-vx/internal/domain/main-entities/pharmacy-company" - postalcode "simrs-vx/internal/domain/main-entities/postal-code" + postalregion "simrs-vx/internal/domain/main-entities/postal-region" practiceschedule "simrs-vx/internal/domain/main-entities/practice-schedule" prescription "simrs-vx/internal/domain/main-entities/prescription" prescriptionitem "simrs-vx/internal/domain/main-entities/prescription-item" @@ -150,6 +150,6 @@ func getMainEntities() []any { &consultation.Consultation{}, &chemo.Chemo{}, &midwife.Midwife{}, - &postalcode.PostalCode{}, + &postalregion.PostalRegion{}, } }