107 lines
5.1 KiB
Go
107 lines
5.1 KiB
Go
package dto
|
||
|
||
import (
|
||
"fmt"
|
||
"hospital-admin-api/api/model"
|
||
)
|
||
|
||
// OrderServicePackageCaseDto 订单-服务包病例表
|
||
type OrderServicePackageCaseDto struct {
|
||
OrderServiceCaseId string `json:"order_service_case_id"` // 主键id
|
||
UserId string `json:"user_id"` // 用户id; NOT NULL
|
||
PatientId string `json:"patient_id"` // 患者id; NOT NULL
|
||
OrderId string `json:"order_id"` // 订单id; NOT NULL
|
||
OrderServiceId string `json:"order_service_id"` // 订单-服务包id; NOT NULL
|
||
FamilyId string `json:"family_id"` // 家庭成员id; NOT NULL
|
||
DiseaseClassId string `json:"disease_class_id"` // 疾病分类id-系统
|
||
Relation int `json:"relation"` // 与患者关系(1:本人 2:父母 3:爱人 4:子女 5:亲戚 6:其他 )
|
||
Status int `json:"status"` // 状态(1:正常 2:删除)
|
||
Name string `json:"name"` // 患者名称
|
||
Sex int `json:"sex"` // 患者性别(0:未知 1:男 2:女)
|
||
Age int `json:"age"` // 患者年龄
|
||
DiseaseClassName string `json:"disease_class_name"` // 疾病名称-系统
|
||
DiagnosisDate model.LocalTime `json:"diagnosis_date"` // 确诊日期
|
||
DiseaseDesc string `json:"disease_desc"` // 病情描述(主诉)
|
||
DiagnoseImages string `json:"diagnose_images"` // 复诊凭证(多个使用逗号分隔)
|
||
IsAllergyHistory int `json:"is_allergy_history"` // 是否存在过敏史(0:否 1:是)
|
||
AllergyHistory string `json:"allergy_history"` // 过敏史描述
|
||
IsFamilyHistory int `json:"is_family_history"` // 是否存在家族病史(0:否 1:是)
|
||
FamilyHistory string `json:"family_history"` // 家族病史描述
|
||
IsPregnant int `json:"is_pregnant"` // 是否备孕、妊娠、哺乳期(0:否 1:是)
|
||
Pregnant string `json:"pregnant"` // 备孕、妊娠、哺乳期描述
|
||
CreatedAt model.LocalTime `json:"created_at"` // 创建时间
|
||
UpdatedAt model.LocalTime `json:"updated_at"` // 修改时间
|
||
}
|
||
|
||
// GetOrderServicePackageCaseDto 服务包订单病例详情
|
||
func GetOrderServicePackageCaseDto(m *model.OrderServicePackageCase) *OrderServicePackageCaseDto {
|
||
return &OrderServicePackageCaseDto{
|
||
OrderServiceCaseId: fmt.Sprintf("%d", m.OrderServiceCaseId),
|
||
UserId: fmt.Sprintf("%d", m.UserId),
|
||
PatientId: fmt.Sprintf("%d", m.PatientId),
|
||
OrderId: fmt.Sprintf("%d", m.OrderId),
|
||
OrderServiceId: fmt.Sprintf("%d", m.OrderServiceId),
|
||
FamilyId: fmt.Sprintf("%d", m.FamilyId),
|
||
DiseaseClassId: fmt.Sprintf("%d", m.DiseaseClassId),
|
||
Relation: m.Relation,
|
||
Status: m.Status,
|
||
Name: m.Name,
|
||
Sex: m.Sex,
|
||
Age: m.Age,
|
||
DiseaseClassName: m.DiseaseClassName,
|
||
DiagnosisDate: m.DiagnosisDate,
|
||
DiseaseDesc: m.DiseaseDesc,
|
||
DiagnoseImages: m.DiagnoseImages,
|
||
IsAllergyHistory: m.IsAllergyHistory,
|
||
AllergyHistory: m.AllergyHistory,
|
||
IsFamilyHistory: m.IsFamilyHistory,
|
||
FamilyHistory: m.FamilyHistory,
|
||
IsPregnant: m.IsPregnant,
|
||
Pregnant: m.Pregnant,
|
||
CreatedAt: m.CreatedAt,
|
||
UpdatedAt: m.UpdatedAt,
|
||
}
|
||
}
|
||
|
||
// GetOrderServicePackageCaseListDto 服务包订单病例列表
|
||
func GetOrderServicePackageCaseListDto(m []*model.OrderServicePackageCase) []*OrderServicePackageCaseDto {
|
||
// 处理返回值
|
||
responses := make([]*OrderServicePackageCaseDto, len(m))
|
||
|
||
if len(m) > 0 {
|
||
for i, v := range m {
|
||
response := &OrderServicePackageCaseDto{
|
||
OrderServiceCaseId: fmt.Sprintf("%d", v.OrderServiceCaseId),
|
||
UserId: fmt.Sprintf("%d", v.UserId),
|
||
PatientId: fmt.Sprintf("%d", v.PatientId),
|
||
OrderId: fmt.Sprintf("%d", v.OrderId),
|
||
OrderServiceId: fmt.Sprintf("%d", v.OrderServiceId),
|
||
FamilyId: fmt.Sprintf("%d", v.FamilyId),
|
||
DiseaseClassId: fmt.Sprintf("%d", v.DiseaseClassId),
|
||
Relation: v.Relation,
|
||
Status: v.Status,
|
||
Name: v.Name,
|
||
Sex: v.Sex,
|
||
Age: v.Age,
|
||
DiseaseClassName: v.DiseaseClassName,
|
||
DiagnosisDate: v.DiagnosisDate,
|
||
DiseaseDesc: v.DiseaseDesc,
|
||
DiagnoseImages: v.DiagnoseImages,
|
||
IsAllergyHistory: v.IsAllergyHistory,
|
||
AllergyHistory: v.AllergyHistory,
|
||
IsFamilyHistory: v.IsFamilyHistory,
|
||
FamilyHistory: v.FamilyHistory,
|
||
IsPregnant: v.IsPregnant,
|
||
Pregnant: v.Pregnant,
|
||
CreatedAt: v.CreatedAt,
|
||
UpdatedAt: v.UpdatedAt,
|
||
}
|
||
|
||
// 将转换后的结构体添加到新切片中
|
||
responses[i] = response
|
||
}
|
||
}
|
||
|
||
return responses
|
||
}
|