Merge branch 'migration-vanilia' of https://github.com/dikstub-rssa/simrs-be into feat/sync-seeder

# Conflicts:
#	internal/interface/main-handler/main-handler.go
This commit is contained in:
vanilia
2025-12-11 18:44:36 +07:00
89 changed files with 562 additions and 2780 deletions
+9 -10
View File
@@ -2,7 +2,7 @@ package chemo
import (
ed "simrs-vx/internal/domain/main-entities/doctor"
// std
es "simrs-vx/internal/domain/main-entities/specialist"
"time"
// internal - lib
@@ -14,14 +14,13 @@ import (
// internal - domain - main-entities
ecore "simrs-vx/internal/domain/base-entities/core"
ee "simrs-vx/internal/domain/main-entities/encounter"
eun "simrs-vx/internal/domain/main-entities/unit"
eus "simrs-vx/internal/domain/main-entities/user"
)
type CreateDto struct {
Encounter_Id *uint `json:"encounter_id"`
Status_Code erc.DataVerifiedCode `json:"status_code"`
SrcUnit_Code *string `json:"srcUnit_code"`
Encounter_Id *uint `json:"encounter_id"`
Status_Code erc.DataVerifiedCode `json:"status_code"`
Specialist_Code *string `json:"specialist_code"`
}
type ReadListDto struct {
@@ -34,7 +33,7 @@ type FilterDto struct {
Encounter_Id *uint `json:"encounter-id"`
Status_Code *erc.DataVerifiedCode `json:"status-code"`
VerifiedBy_User_Id *uint `json:"verifiedBy-user-id"`
SrcUnit_Code *string `json:"srcUnit-code"`
Specialist_Code *string `json:"specialist-code"`
}
type ReadDetailDto struct {
@@ -75,8 +74,8 @@ type ResponseDto struct {
VerifiedAt *time.Time `json:"verifiedAt"`
VerifiedBy_User_Id *uint `json:"verifiedBy_user_id"`
VerifiedBy *eus.User `json:"verifiedBy,omitempty"`
SrcUnit_Code *string `json:"srcUnit_code"`
SrcUnit *eun.Unit `json:"srcUnit,omitempty"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist,omitempty"`
Doctor_Code *string `json:"doctor_code"`
Doctor *ed.Doctor `json:"doctor,omitempty"`
NextChemoDate *time.Time `json:"nextChemoDate"`
@@ -90,8 +89,8 @@ func (d Chemo) ToResponse() ResponseDto {
VerifiedAt: d.VerifiedAt,
VerifiedBy_User_Id: d.VerifiedBy_User_Id,
VerifiedBy: d.VerifiedBy,
SrcUnit_Code: d.SrcUnit_Code,
SrcUnit: d.SrcUnit,
Specialist_Code: d.Specialist_Code,
Specialist: d.Specialist,
Doctor_Code: d.Doctor_Code,
Doctor: d.Doctor,
NextChemoDate: d.NextChemoDate,
@@ -9,7 +9,7 @@ import (
ed "simrs-vx/internal/domain/main-entities/doctor"
ee "simrs-vx/internal/domain/main-entities/encounter"
eun "simrs-vx/internal/domain/main-entities/unit"
es "simrs-vx/internal/domain/main-entities/specialist"
eus "simrs-vx/internal/domain/main-entities/user"
)
@@ -21,8 +21,8 @@ type Chemo struct {
VerifiedAt *time.Time `json:"verifiedAt"`
VerifiedBy_User_Id *uint `json:"verifiedBy_user_id"`
VerifiedBy *eus.User `json:"verifiedBy,omitempty" gorm:"foreignKey:VerifiedBy_User_Id;references:Id"`
SrcUnit_Code *string `json:"src_unit_code"` // klinik asal
SrcUnit *eun.Unit `json:"src_unit,omitempty" gorm:"foreignKey:SrcUnit_Code;references:Code"`
Specialist_Code *string `json:"specialist_code"` // klinik asal
Specialist *es.Specialist `json:"specialist,omitempty" gorm:"foreignKey:Specialist_Code;references:Code"`
Bed *string `json:"bed" gorm:"size:1024"`
Needs *string `json:"needs" gorm:"size:2048"`
Doctor_Code *string `json:"doctor_code"`
@@ -13,14 +13,14 @@ import (
// internal - domain - main-entities
ed "simrs-vx/internal/domain/main-entities/doctor"
ee "simrs-vx/internal/domain/main-entities/encounter"
eu "simrs-vx/internal/domain/main-entities/unit"
es "simrs-vx/internal/domain/main-entities/specialist"
)
type CreateDto struct {
Encounter_Id *uint `json:"encounter_id"`
Date *time.Time `json:"date"`
Problem *string `json:"problem" validate:"maxLength=10240"`
DstUnit_Code *string `json:"dstUnit_code"`
Encounter_Id *uint `json:"encounter_id"`
Date *time.Time `json:"date"`
Problem *string `json:"problem" validate:"maxLength=10240"`
Specialist_Code *string `json:"dstSpecialist_code"`
}
type ReadListDto struct {
@@ -30,9 +30,9 @@ type ReadListDto struct {
}
type FilterDto struct {
Encounter_Id *uint `json:"encounter-id"`
DstUnit_Code *string `json:"dstUnit-code"`
DstDoctor_Code *string `json:"dstDoctor-code"`
Encounter_Id *uint `json:"encounter-id"`
Specialist_Code *string `json:"dstSpecialist-code"`
Doctor_Code *string `json:"doctor-code"`
}
type ReadDetailDto struct {
@@ -63,29 +63,29 @@ type MetaDto struct {
type ResponseDto struct {
ecore.Main
Encounter_Id *uint `json:"encounter_id"`
Encounter *ee.Encounter `json:"encounter,omitempty"`
Date *time.Time `json:"date"`
Problem *string `json:"problem"`
Solution *string `json:"solution"`
DstUnit_Code *string `json:"dstUnit_code"`
DstUnit *eu.Unit `json:"dstUnit,omitempty"`
DstDoctor_Code *string `json:"dstDoctor_code"`
DstDoctor *ed.Doctor `json:"dstDoctor,omitempty"`
RepliedAt *time.Time `json:"repliedAt"`
Encounter_Id *uint `json:"encounter_id"`
Encounter *ee.Encounter `json:"encounter,omitempty"`
Date *time.Time `json:"date"`
Problem *string `json:"problem"`
Solution *string `json:"solution"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist,omitempty"`
Doctor_Code *string `json:"doctor_code"`
Doctor *ed.Doctor `json:"doctor,omitempty"`
RepliedAt *time.Time `json:"repliedAt"`
}
func (d Consultation) ToResponse() ResponseDto {
resp := ResponseDto{
Encounter_Id: d.Encounter_Id,
Encounter: d.Encounter,
Date: d.Date,
Problem: d.Problem,
Solution: d.Solution,
DstUnit_Code: d.DstUnit_Code,
DstUnit: d.DstUnit,
DstDoctor_Code: d.DstDoctor_Code,
DstDoctor: d.DstDoctor,
Encounter_Id: d.Encounter_Id,
Encounter: d.Encounter,
Date: d.Date,
Problem: d.Problem,
Solution: d.Solution,
Specialist_Code: d.Specialist_Code,
Specialist: d.Specialist,
Doctor_Code: d.Doctor_Code,
Doctor: d.Doctor,
}
resp.Main = d.Main
return resp
@@ -6,7 +6,7 @@ import (
ecore "simrs-vx/internal/domain/base-entities/core"
ed "simrs-vx/internal/domain/main-entities/doctor"
ee "simrs-vx/internal/domain/main-entities/encounter"
eu "simrs-vx/internal/domain/main-entities/unit"
es "simrs-vx/internal/domain/main-entities/specialist"
)
type Consultation struct {
@@ -15,11 +15,11 @@ type Consultation struct {
Encounter *ee.Encounter `json:"encounter" gorm:"foreignKey:Encounter_Id;references:Id"`
Date *time.Time `json:"date"`
Problem *string `json:"case" gorm:"size:10240"`
Solution *string `json:"solution" gorm:"size:10240"`
DstUnit_Code *string `json:"dstUnit_code"`
DstUnit *eu.Unit `json:"dstUnit" gorm:"foreignKey:DstUnit_Code;references:Code"`
DstDoctor_Code *string `json:"dstDoctor_code"`
DstDoctor *ed.Doctor `json:"dstDoctor" gorm:"foreignKey:DstDoctor_Code;references:Code"`
RepliedAt *time.Time `json:"repliedAt"`
Problem *string `json:"case" gorm:"size:10240"`
Solution *string `json:"solution" gorm:"size:10240"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist" gorm:"foreignKey:Specialist_Code;references:Code"`
Doctor_Code *string `json:"doctor_code"`
Doctor *ed.Doctor `json:"doctor" gorm:"foreignKey:Doctor_Code;references:Code"`
RepliedAt *time.Time `json:"repliedAt"`
}
@@ -15,7 +15,6 @@ import (
ee "simrs-vx/internal/domain/main-entities/encounter"
es "simrs-vx/internal/domain/main-entities/specialist"
ess "simrs-vx/internal/domain/main-entities/subspecialist"
eu "simrs-vx/internal/domain/main-entities/unit"
)
type CreateDto struct {
@@ -66,8 +65,6 @@ type ResponseDto struct {
ecore.Main
Encounter_Id *uint `json:"encounter_id"`
Encounter *ee.Encounter `json:"encounter,omitempty"`
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit,omitempty"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist,omitempty"`
Subspecialist_Code *string `json:"subspecialist_code"`
@@ -81,8 +78,6 @@ func (d ControlLetter) ToResponse() ResponseDto {
resp := ResponseDto{
Encounter_Id: d.Encounter_Id,
Encounter: d.Encounter,
Unit_Code: d.Unit_Code,
Unit: d.Unit,
Specialist_Code: d.Specialist_Code,
Specialist: d.Specialist,
Subspecialist_Code: d.Subspecialist_Code,
@@ -8,15 +8,12 @@ import (
ee "simrs-vx/internal/domain/main-entities/encounter"
es "simrs-vx/internal/domain/main-entities/specialist"
ess "simrs-vx/internal/domain/main-entities/subspecialist"
eu "simrs-vx/internal/domain/main-entities/unit"
)
type ControlLetter struct {
ecore.Main // adjust this according to the needs
Encounter_Id *uint `json:"encounter_id"`
Encounter *ee.Encounter `json:"encounter" gorm:"foreignKey:Encounter_Id;references:Id"`
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit" gorm:"foreignKey:Unit_Code;references:Code"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist" gorm:"foreignKey:Specialist_Code;references:Code"`
Subspecialist_Code *string `json:"subspecialist_code"`
@@ -5,7 +5,6 @@ import (
ee "simrs-vx/internal/domain/main-entities/employee"
es "simrs-vx/internal/domain/main-entities/specialist"
ess "simrs-vx/internal/domain/main-entities/subspecialist"
eu "simrs-vx/internal/domain/main-entities/unit"
"time"
)
@@ -69,8 +68,6 @@ type ResponseDto struct {
Employee *ee.Employee `json:"employee,omitempty"`
IHS_Number *string `json:"ihs_number"`
SIP_Number *string `json:"sip_number"`
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit,omitempty"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist,omitempty" `
Subspecialist_Code *string `json:"subspecialist_code"`
@@ -84,8 +81,6 @@ func (d Doctor) ToResponse() ResponseDto {
Employee: d.Employee,
IHS_Number: d.IHS_Number,
SIP_Number: d.SIP_Number,
Unit_Code: d.Unit_Code,
Unit: d.Unit,
Specialist_Code: d.Specialist_Code,
Specialist: d.Specialist,
Subspecialist_Code: d.Subspecialist_Code,
@@ -5,7 +5,6 @@ import (
ee "simrs-vx/internal/domain/main-entities/employee"
es "simrs-vx/internal/domain/main-entities/specialist"
ess "simrs-vx/internal/domain/main-entities/subspecialist"
eu "simrs-vx/internal/domain/main-entities/unit"
"time"
)
@@ -17,8 +16,6 @@ type Doctor struct {
IHS_Number *string `json:"ihs_number" gorm:"unique;size:20"`
SIP_Number *string `json:"sip_number" gorm:"unique;size:20"`
SIP_ExpiredDate *time.Time `json:"sip_expiredDate"`
Unit_Code *string `json:"unit_code" gorm:"size:10"`
Unit *eu.Unit `json:"unit,omitempty" gorm:"foreignKey:Unit_Code;references:Code"`
Specialist_Code *string `json:"specialist_code" gorm:"size:10"`
Specialist *es.Specialist `json:"specialist,omitempty" gorm:"foreignKey:Specialist_Code;references:Code"`
Subspecialist_Code *string `json:"subspecialist_code" gorm:"size:10"`
@@ -30,7 +30,6 @@ import (
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"
)
type CreateDto struct {
@@ -39,7 +38,6 @@ type CreateDto struct {
Class_Code ere.EncounterClassCode `json:"class_code" validate:"maxLength=10"`
SubClass_Code *string `json:"subClass_code" validate:"maxLength=10"` // for sub
Infra_Code *string `json:"infra_code"` // for inpatient
Unit_Code *string `json:"unit_code"`
Specialist_Code *string `json:"specialist_code"`
Subspecialist_Code *string `json:"subspecialist_code"`
VisitDate time.Time `json:"visitDate"`
@@ -96,7 +94,7 @@ type ReadListDto struct {
EndDate *string `json:"end-date"`
PaymentMethod_Code *string `json:"paymentMethod-code"`
Status_Code *string `json:"status-code"`
Unit_Code *string `json:"unit-code"`
Specialist_Code *string `json:"specialist-code"`
pa.AuthInfo
}
@@ -170,7 +168,7 @@ type CheckinDto struct {
pa.AuthInfo
}
type SwitchUnitDto struct {
type SwitchSpecialistDto struct {
Id uint `json:"id"`
PolySwitchCode *ere.PolySwitchCode `json:"polySwitchCode"`
InternalReferences *[]eir.CreateDto `json:"internalReferences" validate:"required"`
@@ -180,7 +178,7 @@ type SwitchUnitDto struct {
pa.AuthInfo
}
type ApproveCancelUnitDto struct {
type ApproveCancelSpecialistDto struct {
Id uint `json:"id"`
InternalReferences_Id uint `json:"internalReferences_id" validate:"required"`
Dst_Doctor_Code *string `json:"dst_doctor_code"`
@@ -194,12 +192,10 @@ type ResponseDto struct {
Patient *ep.Patient `json:"patient,omitempty"`
RegisteredAt *time.Time `json:"registeredAt"`
Class_Code ere.EncounterClassCode `json:"class_code"`
Unit_Code *string `json:"unit_code"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist,omitempty"`
Subspecialist_Code *string `json:"subspecialist_code"`
Subspecialist *ess.Subspecialist `json:"subspecialist,omitempty"`
Unit *eu.Unit `json:"unit,omitempty"`
VisitDate time.Time `json:"visitDate"`
PaymentMethod_Code ere.AllPaymentMethodCode `json:"paymentMethod_code"`
InsuranceCompany_Code *string `json:"insuranceCompany_code"`
@@ -244,8 +240,6 @@ func (d Encounter) ToResponse() ResponseDto {
Patient: d.Patient,
RegisteredAt: d.RegisteredAt,
Class_Code: d.Class_Code,
Unit_Code: d.Unit_Code,
Unit: d.Unit,
Specialist_Code: d.Specialist_Code,
Specialist: d.Specialist,
Subspecialist_Code: d.Subspecialist_Code,
@@ -297,3 +291,8 @@ func ToResponseList(data []Encounter) []ResponseDto {
}
return resp
}
type CreateWithPatientDto struct {
Encounter CreateDto `json:"encounter"`
Patient ep.CreateDto `json:"patient"`
}
@@ -25,7 +25,6 @@ import (
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"
)
type Encounter struct {
@@ -34,8 +33,6 @@ type Encounter struct {
Patient *ep.Patient `json:"patient,omitempty" gorm:"foreignKey:Patient_Id;references:Id"`
RegisteredAt *time.Time `json:"registeredAt"`
Class_Code ere.EncounterClassCode `json:"class_code" gorm:"not null;size:10"`
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit,omitempty" gorm:"foreignKey:Unit_Code;references:Code"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist,omitempty" gorm:"foreignKey:Specialist_Code;references:Code"`
Subspecialist_Code *string `json:"subspecialist_code"`
@@ -5,17 +5,17 @@ import (
ecore "simrs-vx/internal/domain/base-entities/core"
ed "simrs-vx/internal/domain/main-entities/doctor"
eu "simrs-vx/internal/domain/main-entities/unit"
es "simrs-vx/internal/domain/main-entities/specialist"
)
type CreateDto struct {
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"`
Encounter_Id *uint `json:"-"`
Specialist_Code *string `json:"specialist_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 {
@@ -25,10 +25,10 @@ type ReadListDto struct {
}
type FilterDto struct {
Encounter_Id *uint `json:"encounter-id"`
Unit_Code *uint `json:"unit-code"`
Doctor_Code *uint `json:"doctor-code"`
Status_Code erc.DataApprovalCode `json:"status-code"`
Encounter_Id *uint `json:"encounter-id"`
Specialist_Code *uint `json:"specialist-code"`
Doctor_Code *uint `json:"doctor-code"`
Status_Code erc.DataApprovalCode `json:"status-code"`
}
type ReadDetailDto struct {
@@ -53,22 +53,22 @@ type MetaDto struct {
type ResponseDto struct {
ecore.Main
Encounter_Id *uint `json:"encounter_id"`
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit,omitempty"`
Doctor_Code *string `json:"doctor_id"`
Doctor *ed.Doctor `json:"doctor,omitempty"`
Status_Code *erc.DataApprovalCode `json:"status_code"`
Encounter_Id *uint `json:"encounter_id"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist,omitempty"`
Doctor_Code *string `json:"doctor_id"`
Doctor *ed.Doctor `json:"doctor,omitempty"`
Status_Code *erc.DataApprovalCode `json:"status_code"`
}
func (d InternalReference) ToResponse() ResponseDto {
resp := ResponseDto{
Encounter_Id: d.Encounter_Id,
Unit_Code: d.Unit_Code,
Unit: d.Unit,
Doctor_Code: d.Doctor_Code,
Doctor: d.Doctor,
Status_Code: d.Status_Code,
Encounter_Id: d.Encounter_Id,
Specialist_Code: d.Specialist_Code,
Specialist: d.Specialist,
Doctor_Code: d.Doctor_Code,
Doctor: d.Doctor,
Status_Code: d.Status_Code,
}
resp.Main = d.Main
return resp
@@ -6,21 +6,21 @@ 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"
es "simrs-vx/internal/domain/main-entities/specialist"
)
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"`
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"`
Encounter_Id *uint `json:"encounter_id"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist,omitempty" gorm:"foreignKey:Specialist_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"`
}
+27 -27
View File
@@ -4,15 +4,15 @@ import (
ecore "simrs-vx/internal/domain/base-entities/core"
ee "simrs-vx/internal/domain/main-entities/employee"
ei "simrs-vx/internal/domain/main-entities/infra"
eu "simrs-vx/internal/domain/main-entities/unit"
es "simrs-vx/internal/domain/main-entities/specialist"
)
type CreateDto struct {
Code *string `json:"code" validate:"maxLength=20"`
Employee_Id *uint `json:"employee_id"`
IHS_Number *string `json:"ihs_number" validate:"maxLength=20"`
Unit_Code *string `json:"unit_code"`
Infra_Code *string `json:"infra_code"`
Code *string `json:"code" validate:"maxLength=20"`
Employee_Id *uint `json:"employee_id"`
IHS_Number *string `json:"ihs_number" validate:"maxLength=20"`
Specialist_Code *string `json:"specialist_code"`
Infra_Code *string `json:"infra_code"`
}
type ReadListDto struct {
@@ -22,11 +22,11 @@ type ReadListDto struct {
}
type FilterDto struct {
Code *string `json:"code"`
Employee_Id *uint `json:"employee-id"`
IHS_Number *string `json:"ihs-number"`
Unit_Code *string `json:"unit-code"`
Infra_Code *string `json:"infra-code"`
Code *string `json:"code"`
Employee_Id *uint `json:"employee-id"`
IHS_Number *string `json:"ihs-number"`
Specialist_Code *string `json:"specialist-code"`
Infra_Code *string `json:"infra-code"`
}
type ReadDetailDto struct {
Id *uint16 `json:"id"`
@@ -53,26 +53,26 @@ type MetaDto struct {
type ResponseDto struct {
ecore.Main
Code *string `json:"code"`
Employee_Id *uint `json:"employee_id"`
Employee *ee.Employee `json:"employee,omitempty"`
IHS_Number *string `json:"ihs_number"`
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit,omitempty"`
Infra_Code *string `json:"infra_code"`
Infra *ei.Infra `json:"infra,omitempty"`
Code *string `json:"code"`
Employee_Id *uint `json:"employee_id"`
Employee *ee.Employee `json:"employee,omitempty"`
IHS_Number *string `json:"ihs_number"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist,omitempty"`
Infra_Code *string `json:"infra_code"`
Infra *ei.Infra `json:"infra,omitempty"`
}
func (d Nurse) ToResponse() ResponseDto {
resp := ResponseDto{
Code: d.Code,
Employee_Id: d.Employee_Id,
Employee: d.Employee,
IHS_Number: d.IHS_Number,
Unit_Code: d.Unit_Code,
Unit: d.Unit,
Infra_Code: d.Infra_Code,
Infra: d.Infra,
Code: d.Code,
Employee_Id: d.Employee_Id,
Employee: d.Employee,
IHS_Number: d.IHS_Number,
Specialist_Code: d.Specialist_Code,
Specialist: d.Specialist,
Infra_Code: d.Infra_Code,
Infra: d.Infra,
}
resp.Main = d.Main
return resp
+10 -10
View File
@@ -4,17 +4,17 @@ import (
ecore "simrs-vx/internal/domain/base-entities/core"
ee "simrs-vx/internal/domain/main-entities/employee"
ei "simrs-vx/internal/domain/main-entities/infra"
eu "simrs-vx/internal/domain/main-entities/unit"
es "simrs-vx/internal/domain/main-entities/specialist"
)
type Nurse struct {
ecore.Main // adjust this according to the needs
Code *string `json:"code" gorm:"unique;size:20"`
Employee_Id *uint `json:"employee_id"`
Employee *ee.Employee `json:"employee,omitempty" gorm:"foreignKey:Employee_Id;references:Id"`
IHS_Number *string `json:"ihs_number" gorm:"unique;size:20"`
Unit_Code *string `json:"unit_code" gorm:"size:10"`
Unit *eu.Unit `json:"unit,omitempty" gorm:"foreignKey:Unit_Code;references:Code"`
Infra_Code *string `json:"infra_code" gorm:"size:10"`
Infra *ei.Infra `json:"infra,omitempty" gorm:"foreignKey:Infra_Code;references:Code"`
ecore.Main // adjust this according to the needs
Code *string `json:"code" gorm:"unique;size:20"`
Employee_Id *uint `json:"employee_id"`
Employee *ee.Employee `json:"employee,omitempty" gorm:"foreignKey:Employee_Id;references:Id"`
IHS_Number *string `json:"ihs_number" gorm:"unique;size:20"`
Specialist_Code *string `json:"specialist_code" gorm:"size:10"`
Specialist *es.Specialist `json:"specialist,omitempty" gorm:"foreignKey:Specialist_Code;references:Code"`
Infra_Code *string `json:"infra_code" gorm:"size:10"`
Infra *ei.Infra `json:"infra,omitempty" gorm:"foreignKey:Infra_Code;references:Code"`
}
@@ -6,11 +6,11 @@ import (
)
type CreateDto struct {
Doctor_Code *string `json:"doctor_code"`
Unit_Code *string `json:"unit_code"`
Day_Code *erc.DayCode `json:"day_code"`
StartTime *string `json:"startTime" validate:"maxLength=5"`
EndTime *string `json:"endTime" validate:"maxLength=5"`
Doctor_Code *string `json:"doctor_code"`
Specialist_Code *string `json:"specialist_code"`
Day_Code *erc.DayCode `json:"day_code"`
StartTime *string `json:"startTime" validate:"maxLength=5"`
EndTime *string `json:"endTime" validate:"maxLength=5"`
}
type ReadListDto struct {
@@ -20,11 +20,11 @@ type ReadListDto struct {
}
type FilterDto struct {
Doctor_Code *string `json:"doctor-code"`
Unit_Code *string `json:"unit-code"`
Day_Code *erc.DayCode `json:"day-code"`
StartTime *string `json:"startTime"`
EndTime *string `json:"endTime"`
Doctor_Code *string `json:"doctor-code"`
Specialist_Code *string `json:"specialist-code"`
Day_Code *erc.DayCode `json:"day-code"`
StartTime *string `json:"startTime"`
EndTime *string `json:"endTime"`
}
type ReadDetailDto struct {
@@ -48,20 +48,20 @@ type MetaDto struct {
type ResponseDto struct {
ecore.Main
Doctor_Code *string `json:"doctor_code"`
Unit_Code *string `json:"unit_code"`
Day_Code *erc.DayCode `json:"day_code"`
StartTime *string `json:"startTime"`
EndTime *string `json:"endTime"`
Doctor_Code *string `json:"doctor_code"`
Specialist_Code *string `json:"specialist_code"`
Day_Code *erc.DayCode `json:"day_code"`
StartTime *string `json:"startTime"`
EndTime *string `json:"endTime"`
}
func (d PracticeSchedule) ToResponse() ResponseDto {
resp := ResponseDto{
Doctor_Code: d.Doctor_Code,
Unit_Code: d.Unit_Code,
Day_Code: d.Day_Code,
StartTime: d.StartTime,
EndTime: d.EndTime,
Doctor_Code: d.Doctor_Code,
Specialist_Code: d.Specialist_Code,
Day_Code: d.Day_Code,
StartTime: d.StartTime,
EndTime: d.EndTime,
}
resp.Main = d.Main
return resp
@@ -3,17 +3,17 @@ package practiceschedule
import (
ecore "simrs-vx/internal/domain/base-entities/core"
ed "simrs-vx/internal/domain/main-entities/doctor"
eu "simrs-vx/internal/domain/main-entities/unit"
es "simrs-vx/internal/domain/main-entities/specialist"
erc "simrs-vx/internal/domain/references/common"
)
type PracticeSchedule struct {
ecore.Main // adjust this according to the needs
Doctor_Code *string `json:"doctor_code"`
Doctor *ed.Doctor `json:"doctor,omitempty" gorm:"foreignKey:Doctor_Code;references:Code"`
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit,omitempty" gorm:"foreignKey:Unit_Code;references:Code"`
Day_Code *erc.DayCode `json:"day_code"`
StartTime *string `json:"startTime" gorm:"size:5"`
EndTime *string `json:"endTime" gorm:"size:5"`
ecore.Main // adjust this according to the needs
Doctor_Code *string `json:"doctor_code"`
Doctor *ed.Doctor `json:"doctor,omitempty" gorm:"foreignKey:Doctor_Code;references:Code"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist,omitempty" gorm:"foreignKey:Specialist_Code;references:Code"`
Day_Code *erc.DayCode `json:"day_code"`
StartTime *string `json:"startTime" gorm:"size:5"`
EndTime *string `json:"endTime" gorm:"size:5"`
}
@@ -10,7 +10,6 @@ type ProcedureRoom struct {
Code string `json:"code" gorm:"unique;size:20"` // copied from infra code
Infra_Code *string `json:"infra_code" gorm:"size:20;unique"`
Type_Code *ero.ProdcedureRoomTypeCode `json:"type_code" gorm:"size:10"`
Unit_Code *string `json:"unit_code" gorm:"size:20"`
Specialist_Code *string `json:"specialist_code" gorm:"size:20"`
Subspecialist_Code *string `json:"subspecialist_code" gorm:"size:20"`
}
@@ -5,14 +5,12 @@ import (
ei "simrs-vx/internal/domain/main-entities/infra"
es "simrs-vx/internal/domain/main-entities/specialist"
ess "simrs-vx/internal/domain/main-entities/subspecialist"
eu "simrs-vx/internal/domain/main-entities/unit"
)
type CreateDto struct {
Code *string `json:"code"`
Infra_Code *string `json:"infra_code"`
Type_Code string `json:"type_code"`
Unit_Code *string `json:"unit_code"`
Specialist_Code *string `json:"specialist_code"`
Subspecialist_Code *string `json:"subspecialist_code"`
}
@@ -26,7 +24,6 @@ type ReadListDto struct {
type FilterDto struct {
Infra_Code *string `json:"infra-code"`
Type_Code string `json:"type-code"`
Unit_Code *string `json:"unit-code"`
Specialist_Code *string `json:"specialist-code"`
Subspecialist_Code *string `json:"subspecialist-code"`
}
@@ -56,8 +53,6 @@ type ResponseDto struct {
Type_Code *string `json:"type_code"`
Infra_Code *string `json:"infra_code"`
Infra *ei.Infra `json:"infra,omitempty"`
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit,omitempty"`
Specialist_Code *string `json:"specialist_code"`
Specialist *es.Specialist `json:"specialist,omitempty"`
Subspecialist_Code *string `json:"subspecialist_code"`
@@ -70,8 +65,6 @@ func (d ProcedureRoom) ToResponse() ResponseDto {
Infra_Code: d.Infra_Code,
Infra: d.Infra,
Type_Code: (*string)(d.Type_Code),
Unit_Code: d.Unit_Code,
Unit: d.Unit,
Specialist_Code: d.Specialist_Code,
Specialist: d.Specialist,
Subspecialist_Code: d.Subspecialist_Code,
@@ -5,13 +5,11 @@ import (
ebase "simrs-vx/internal/domain/main-entities/procedure-room/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"
)
type ProcedureRoom struct {
ebase.ProcedureRoom
Infra *ei.Infra `json:"infra,omitempty" gorm:"foreignKey:Infra_Code;references:Code"`
Unit *eu.Unit `json:"unit,omitempty" gorm:"foreignKey:Unit_Code;references:Code"`
Specialist *es.Specialist `json:"specialist,omitempty" gorm:"foreignKey:Specialist_Code;references:Code"`
Subspecialist *ess.Subspecialist `json:"subspecialist,omitempty" gorm:"foreignKey:Subspecialist_Code;references:Code"`
}
@@ -4,14 +4,13 @@ import (
ecore "simrs-vx/internal/domain/base-entities/core"
espb "simrs-vx/internal/domain/main-entities/specialist-position/base"
essb "simrs-vx/internal/domain/main-entities/subspecialist/base"
eu "simrs-vx/internal/domain/main-entities/unit"
)
type CreateDto struct {
Id *uint `json:"id"`
Code string `json:"code" validate:"maxLength=10"`
Name string `json:"name" validate:"maxLength=50"`
Unit_Code *string `json:"unit_code"`
Id *uint `json:"id"`
Installation_Code string `json:"installation_code"`
Code string `json:"code" validate:"maxLength=10"`
Name string `json:"name" validate:"maxLength=50"`
}
type ReadListDto struct {
@@ -22,10 +21,9 @@ type ReadListDto struct {
}
type FilterDto struct {
Code string `json:"code"`
Name string `json:"name"`
Unit_Code *string `json:"unit-code"`
Search string `json:"search" gormhelper:"searchColumns=Code,Name"`
Code string `json:"code"`
Name string `json:"name"`
Search string `json:"search" gormhelper:"searchColumns=Code,Name"`
}
type ReadDetailDto struct {
@@ -58,8 +56,6 @@ type ResponseDto struct {
ecore.SmallMain
Code string `json:"code"`
Name string `json:"name"`
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit,omitempty"`
SpecialistPositions []espb.Basic `json:"specialistPositions,omitempty"`
Subspecialists []essb.Basic `json:"subspecialists,omitempty"`
}
@@ -68,8 +64,6 @@ func (d Specialist) ToResponse() ResponseDto {
resp := ResponseDto{
Code: d.Code,
Name: d.Name,
Unit: d.Unit,
Unit_Code: d.Unit_Code,
SpecialistPositions: d.SpecialistPositions,
Subspecialists: d.Subspecialists,
}
@@ -2,17 +2,17 @@ package specialist
import (
ecore "simrs-vx/internal/domain/base-entities/core"
ei "simrs-vx/internal/domain/main-entities/installation"
eub "simrs-vx/internal/domain/main-entities/specialist-position/base"
essb "simrs-vx/internal/domain/main-entities/subspecialist/base"
eu "simrs-vx/internal/domain/main-entities/unit"
)
type Specialist struct {
ecore.SmallMain // adjust this according to the needs
Code string `json:"code" gorm:"unique;size:20"`
Name string `json:"name" gorm:"size:50"`
Unit_Code *string `json:"unit_code" gorm:"size:20"`
Unit *eu.Unit `json:"unit,omitempty" gorm:"foreignKey:Unit_Code;references:Code"`
SpecialistPositions []eub.Basic `json:"specialistPositions,omitempty" gorm:"foreignKey:Specialist_Code;references:Code"`
Subspecialists []essb.Basic `json:"subspecialists,omitempty" gorm:"foreignKey:Specialist_Code;references:Code"`
ecore.SmallMain // adjust this according to the needs
Code string `json:"code" gorm:"unique;size:20"`
Name string `json:"name" gorm:"size:50"`
Installation_Code string `json:"installation_code" gorm:"size:20"`
Installation *ei.Installation `json:"installation,omitempty" gorm:"foreignKey:Installation_Code;references:Code"`
SpecialistPositions []eub.Basic `json:"specialistPositions,omitempty" gorm:"foreignKey:Specialist_Code;references:Code"`
Subspecialists []essb.Basic `json:"subspecialists,omitempty" gorm:"foreignKey:Specialist_Code;references:Code"`
}
@@ -7,7 +7,7 @@ import (
type Basic struct {
ecore.SmallMain // adjust this according to the needs
Code string `json:"code" gorm:"unique;size:20"`
Name string `json:"name" gorm:"size:50"`
Name string `json:"name" gorm:"size:100"`
Specialist_Code *string `json:"specialist_code" gorm:"size:20"`
}
@@ -1,20 +0,0 @@
package base
import (
ecore "simrs-vx/internal/domain/base-entities/core"
ee "simrs-vx/internal/domain/main-entities/employee"
)
type Basic struct {
ecore.SmallMain // adjust this according to the needs
Unit_Code *string `json:"unit_code" gorm:"size:10"`
Code string `json:"code" gorm:"unique;size:10;not null"`
Name string `json:"name" gorm:"size:30;not null"`
HeadStatus bool `json:"headStatus"`
Employee_Id *uint `json:"employee_id"`
Employee *ee.Employee `json:"employee,omitempty" gorm:"foreignKey:Employee_Id;references:Id"`
}
func (Basic) TableName() string {
return "UnitPosition"
}
@@ -1,85 +0,0 @@
package unit_position
import (
ecore "simrs-vx/internal/domain/base-entities/core"
ee "simrs-vx/internal/domain/main-entities/employee"
eu "simrs-vx/internal/domain/main-entities/unit"
)
type CreateDto struct {
Unit_Code *string `json:"unit_code" validate:"required"`
Code string `json:"code" validate:"maxLength=10;required"`
Name string `json:"name" validate:"maxLength=30;required"`
HeadStatus bool `json:"headStatus"`
Employee_Id *uint `json:"employee_id"`
}
type ReadListDto struct {
FilterDto
Includes string `json:"includes"`
Sort string `json:"sort"`
Pagination ecore.Pagination
}
type FilterDto struct {
Unit_Code *string `json:"unit-code"`
Code string `json:"code"`
Name string `json:"name"`
HeadStatus *bool `json:"head-status"`
Employee_Id *uint `json:"employee-id"`
Search string `json:"search" gormhelper:"searchColumns=Code,Name"`
}
type ReadDetailDto struct {
Id *uint16 `json:"id"`
Code *string `json:"code"`
}
type UpdateDto struct {
Id *uint16 `json:"id"`
CreateDto
}
type DeleteDto struct {
Id *uint16 `json:"id"`
Code *string `json:"code"`
}
type MetaDto struct {
PageNumber int `json:"page_number"`
PageSize int `json:"page_size"`
Count int `json:"count"`
}
type ResponseDto struct {
ecore.SmallMain
Unit_Code *string `json:"unit_code"`
Unit *eu.Unit `json:"unit,omitempty"`
Code string `json:"code"`
Name string `json:"name"`
HeadStatus bool `json:"headStatus"`
Employee_Id *uint `json:"employee_id"`
Employee *ee.Employee `json:"employee,omitempty"`
}
func (d UnitPosition) ToResponse() ResponseDto {
resp := ResponseDto{
Unit_Code: d.Unit_Code,
Unit: d.Unit,
Code: d.Code,
Name: d.Name,
HeadStatus: d.HeadStatus,
Employee_Id: d.Employee_Id,
Employee: d.Employee,
}
resp.SmallMain = d.SmallMain
return resp
}
func ToResponseList(data []UnitPosition) []ResponseDto {
resp := make([]ResponseDto, len(data))
for i, u := range data {
resp[i] = u.ToResponse()
}
return resp
}
@@ -1,11 +0,0 @@
package unit_position
import (
eu "simrs-vx/internal/domain/main-entities/unit"
eub "simrs-vx/internal/domain/main-entities/unit-position/base"
)
type UnitPosition struct {
eub.Basic
Unit *eu.Unit `json:"unit,omitempty" gorm:"foreignKey:Unit_Code;references:Code"`
}
-82
View File
@@ -1,82 +0,0 @@
package unit
import (
ecore "simrs-vx/internal/domain/base-entities/core"
ei "simrs-vx/internal/domain/main-entities/installation"
eipb "simrs-vx/internal/domain/main-entities/unit-position/base"
)
type CreateDto struct {
Id *uint `json:"id"`
Installation_Code *string `json:"installation_code"`
Code string `json:"code" validate:"maxLength=20"`
Name string `json:"name" validate:"maxLength=50"`
}
type ReadListDto struct {
FilterDto
Includes string `json:"includes"`
Sort string `json:"sort"`
Pagination ecore.Pagination
}
type FilterDto struct {
Installation_Code *string `json:"installation-code"`
Code string `json:"code"`
Name string `json:"name"`
Search string `json:"search" gormhelper:"searchColumns=Code,Name"`
}
type ReadDetailDto struct {
Id *uint16 `json:"id"`
Installation_Code *string `json:"installation_code"`
Code *string `json:"code"`
Includes string `json:"includes"`
}
type UpdateDto struct {
Id *uint16 `json:"id"`
CreateDto
}
type DeleteDto struct {
Id *uint16 `json:"id"`
Code *string `json:"code"`
}
type MetaDto struct {
PageNumber int `json:"page_number"`
PageSize int `json:"page_size"`
Count int `json:"count"`
}
type ResponseDto struct {
ecore.SmallMain
Installation_Code *string `json:"installation_code"`
Installation *ei.Installation `json:"installation,omitempty"`
Code string `json:"code"`
Name string `json:"name"`
UnitPositions []eipb.Basic `json:"unitPositions,omitempty"`
}
func (d Unit) ToResponse() ResponseDto {
resp := ResponseDto{
Installation_Code: d.Installation_Code,
Code: d.Code,
Name: d.Name,
UnitPositions: d.UnitPositions,
}
resp.SmallMain = d.SmallMain
if d.Installation != nil {
resp.Installation = d.Installation
}
return resp
}
func ToResponseList(data []Unit) []ResponseDto {
resp := make([]ResponseDto, len(data))
for i, u := range data {
resp[i] = u.ToResponse()
}
return resp
}
@@ -1,18 +0,0 @@
package unit
import (
ecore "simrs-vx/internal/domain/base-entities/core"
ei "simrs-vx/internal/domain/main-entities/installation"
eub "simrs-vx/internal/domain/main-entities/unit-position/base"
ero "simrs-vx/internal/domain/references/organization"
)
type Unit struct {
ecore.SmallMain // adjust this according to the needs
Installation_Code *string `json:"installation_code" gorm:"size:20"`
Installation *ei.Installation `json:"installation" gorm:"foreignKey:Installation_Code;references:Code"`
Code string `json:"code" gorm:"unique;size:20"`
Name string `json:"name" gorm:"size:50"`
Type_Code *ero.UnitTypeCode `json:"type_code"`
UnitPositions []eub.Basic `json:"unitPositions,omitempty" gorm:"foreignKey:Unit_Code;references:Code"`
}