feat (mcu-order): adjust mcu dto and helper

This commit is contained in:
dpurbosakti
2025-09-18 14:47:11 +07:00
parent 3affc72cbf
commit e666a421f4
7 changed files with 75 additions and 29 deletions
@@ -5,6 +5,7 @@ import (
emo "simrs-vx/internal/domain/main-entities/mcu-order"
ems "simrs-vx/internal/domain/main-entities/mcu-src"
erc "simrs-vx/internal/domain/references/common"
"time"
)
type CreateDto struct {
@@ -51,22 +52,24 @@ type MetaDto struct {
type ResponseDto struct {
ecore.Main
McuOrder_Id *uint `json:"mcuOrder_id"`
McuOrder *emo.McuOrder `json:"mcuOrder,omitempty"`
McuSrc_Id *uint `json:"mcuSrc_id"`
McuSrc *ems.McuSrc `json:"mcuSrc,omitempty"`
Result *string `json:"result"`
Status_Code erc.DataStatusCode `json:"status_code"`
McuOrder_Id *uint `json:"mcuOrder_id"`
McuOrder *emo.McuOrder `json:"mcuOrder,omitempty"`
McuSrc_Id *uint `json:"mcuSrc_id"`
McuSrc *ems.McuSrc `json:"mcuSrc,omitempty"`
Result *string `json:"result"`
Status_Code erc.DataStatusCode `json:"status_code"`
ExaminationDate *time.Time `json:"examinationDate"`
}
func (d McuOrderItem) ToResponse() ResponseDto {
resp := ResponseDto{
McuOrder_Id: d.McuOrder_Id,
McuOrder: d.McuOrder,
McuSrc_Id: d.McuSrc_Id,
McuSrc: d.McuSrc,
Result: d.Result,
Status_Code: d.Status_Code,
McuOrder_Id: d.McuOrder_Id,
McuOrder: d.McuOrder,
McuSrc_Id: d.McuSrc_Id,
McuSrc: d.McuSrc,
Result: d.Result,
Status_Code: d.Status_Code,
ExaminationDate: d.ExaminationDate,
}
resp.Main = d.Main
return resp
+38 -16
View File
@@ -4,13 +4,20 @@ 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"
ercl "simrs-vx/internal/domain/references/clinical"
erc "simrs-vx/internal/domain/references/common"
"time"
)
type CreateDto struct {
Encounter_Id *uint `json:"encounter_id"`
Status_Code erc.DataStatusCode `json:"status_code" gorm:"not null;size:10"`
Doctor_Id *uint `json:"doctor_id"`
Encounter_Id *uint `json:"encounter_id"`
Status_Code erc.DataStatusCode `json:"status_code" gorm:"not null;size:10"`
Doctor_Id *uint `json:"doctor_id"`
SpecimenPickTime *time.Time `json:"specimenPickTime"`
ExaminationDate *time.Time `json:"examinationDate"`
Number uint8 `json:"number"`
Temperature float64 `json:"temperature"`
McuUrgencyLevel_Code ercl.McuUrgencyLevelCode `json:"mcuUrgencyLevel_code""`
}
type ReadListDto struct {
@@ -20,9 +27,14 @@ type ReadListDto struct {
}
type FilterDto struct {
Encounter_Id *uint `json:"encounter_id"`
Status_Code erc.DataStatusCode `json:"status_code" gorm:"not null;size:10"`
Doctor_Id *uint `json:"doctor_id"`
Encounter_Id *uint `json:"encounter_id"`
Status_Code erc.DataStatusCode `json:"status_code" gorm:"not null;size:10"`
Doctor_Id *uint `json:"doctor_id"`
SpecimenPickTime *time.Time `json:"specimenPickTime"`
ExaminationDate *time.Time `json:"examinationDate"`
Number uint8 `json:"number"`
Temperature float64 `json:"temperature"`
McuUrgencyLevel_Code ercl.McuUrgencyLevelCode `json:"mcuUrgencyLevel_code""`
Page int `json:"page"`
PageSize int `json:"page_size"`
@@ -49,20 +61,30 @@ type MetaDto struct {
type ResponseDto struct {
ecore.Main
Encounter_Id *uint `json:"encounter_id"`
Encounter *ee.Encounter `json:"encounter,omitempty"`
Status_Code erc.DataStatusCode `json:"status_code" gorm:"not null;size:10"`
Doctor_Id *uint `json:"doctor_id"`
Doctor *ed.Doctor `json:"doctor,omitempty"`
Encounter_Id *uint `json:"encounter_id"`
Encounter *ee.Encounter `json:"encounter,omitempty"`
Status_Code erc.DataStatusCode `json:"status_code" gorm:"not null;size:10"`
Doctor_Id *uint `json:"doctor_id"`
Doctor *ed.Doctor `json:"doctor,omitempty"`
SpecimenPickTime *time.Time `json:"specimenPickTime"`
ExaminationDate *time.Time `json:"examinationDate"`
Number uint8 `json:"number"`
Temperature float64 `json:"temperature"`
McuUrgencyLevel_Code ercl.McuUrgencyLevelCode `json:"mcuUrgencyLevel_code""`
}
func (d McuOrder) ToResponse() ResponseDto {
resp := ResponseDto{
Encounter_Id: d.Encounter_Id,
Encounter: d.Encounter,
Status_Code: d.Status_Code,
Doctor_Id: d.Doctor_Id,
Doctor: d.Doctor,
Encounter_Id: d.Encounter_Id,
Encounter: d.Encounter,
Status_Code: d.Status_Code,
Doctor_Id: d.Doctor_Id,
Doctor: d.Doctor,
SpecimenPickTime: d.SpecimenPickTime,
ExaminationDate: d.ExaminationDate,
Number: d.Number,
Temperature: d.Temperature,
McuUrgencyLevel_Code: d.McuUrgencyLevel_Code,
}
resp.Main = d.Main
return resp
@@ -84,7 +84,20 @@ type ResponseDto struct {
}
func (d *PersonRelative) ToResponse() ResponseDto {
resp := ResponseDto{}
resp := ResponseDto{
Person_Id: d.Person_Id,
Relationship_Code: d.Relationship_Code,
Name: d.Name,
Address: d.Address,
Village_Code: d.Village_Code,
Village: d.Village,
Gender_Code: d.Gender_Code,
PhoneNumber: d.PhoneNumber,
Education_Code: d.Education_Code,
Occupation_Code: d.Occupation_Code,
Occupation_Name: d.Occupation_Name,
Responsible: d.Responsible,
}
resp.Main = d.Main
return resp
}
@@ -31,6 +31,7 @@ func setData[T *e.CreateDto | *e.UpdateDto](input T, data *e.Device) {
data.Name = inputSrc.Name
data.Uom_Code = inputSrc.Uom_Code
data.Item_Id = inputSrc.Item_Id
data.Infra_Id = inputSrc.Infra_Id
}
func createItem(input *e.CreateDto, event *pl.Event, tx *gorm.DB) error {
@@ -31,6 +31,7 @@ func setData[T *e.CreateDto | *e.UpdateDto](input T, data *e.Material) {
data.Uom_Code = inputSrc.Uom_Code
data.Stock = inputSrc.Stock
data.Item_Id = inputSrc.Item_Id
data.Infra_Id = inputSrc.Infra_Id
}
func createItem(input *e.CreateDto, event *pl.Event, tx *gorm.DB) error {
@@ -20,4 +20,9 @@ func setData[T *e.CreateDto | *e.UpdateDto](input T, data *e.McuOrder) {
data.Encounter_Id = inputSrc.Encounter_Id
data.Status_Code = inputSrc.Status_Code
data.Doctor_Id = inputSrc.Doctor_Id
data.SpecimenPickTime = inputSrc.SpecimenPickTime
data.ExaminationDate = inputSrc.ExaminationDate
data.Number = inputSrc.Number
data.Temperature = inputSrc.Temperature
data.McuUrgencyLevel_Code = inputSrc.McuUrgencyLevel_Code
}
@@ -27,4 +27,5 @@ func setData[T *e.CreateDto | *e.UpdateDto](input T, data *e.PersonRelative) {
data.Education_Code = inputSrc.Education_Code
data.Occupation_Code = inputSrc.Occupation_Code
data.Occupation_Name = inputSrc.Occupation_Name
data.Responsible = inputSrc.Responsible
}