hospital-admin-api/api/dto/OrderServicePackageInquiry.go

72 lines
2.5 KiB
Go

package dto
import (
"fmt"
"hospital-admin-api/api/model"
)
// OrderServicePackageInquiryDto 服务包关联问诊订单表
type OrderServicePackageInquiryDto struct {
ServiceInquiryId string `json:"service_inquiry_id"` // 主键id
OrderServiceId string `json:"order_service_id"` // 订单-服务包id
OrderInquiryId string `json:"order_inquiry_id"` // 订单-问诊id
OrderServiceNo string `json:"order_service_no"` // 服务包系统订单编号
InquiryNo string `json:"inquiry_no"` // 问诊系统订单编号
CreatedAt model.LocalTime `json:"created_at"` // 创建时间
UpdatedAt model.LocalTime `json:"updated_at"` // 修改时间
OrderInquiry *OrderInquiryDto `json:"order_inquiry"` // 问诊订单
}
// GetOrderServicePackageInquiryDto 服务包关联问诊订单详情
func GetOrderServicePackageInquiryDto(m *model.OrderServicePackageInquiry) *OrderServicePackageInquiryDto {
return &OrderServicePackageInquiryDto{
ServiceInquiryId: fmt.Sprintf("%d", m.ServiceInquiryId),
OrderServiceId: fmt.Sprintf("%d", m.OrderServiceId),
OrderInquiryId: fmt.Sprintf("%d", m.OrderInquiryId),
OrderServiceNo: m.OrderServiceNo,
InquiryNo: m.InquiryNo,
CreatedAt: m.CreatedAt,
UpdatedAt: m.UpdatedAt,
}
}
// GetOrderServicePackageInquiryListDto 服务包关联问诊订单列表
func GetOrderServicePackageInquiryListDto(m []*model.OrderServicePackageInquiry) []*OrderServicePackageInquiryDto {
// 处理返回值
responses := make([]*OrderServicePackageInquiryDto, len(m))
if len(m) > 0 {
for i, v := range m {
response := &OrderServicePackageInquiryDto{
ServiceInquiryId: fmt.Sprintf("%d", v.ServiceInquiryId),
OrderServiceId: fmt.Sprintf("%d", v.OrderServiceId),
OrderInquiryId: fmt.Sprintf("%d", v.OrderInquiryId),
OrderServiceNo: v.OrderServiceNo,
InquiryNo: v.InquiryNo,
CreatedAt: v.CreatedAt,
UpdatedAt: v.UpdatedAt,
}
// 加载问诊订单数据
if v.OrderInquiry != nil {
response = response.LoadOrderInquiry(v.OrderInquiry)
}
// 将转换后的结构体添加到新切片中
responses[i] = response
}
}
return responses
}
// LoadOrderInquiry 加载问诊订单数据
func (r *OrderServicePackageInquiryDto) LoadOrderInquiry(m *model.OrderInquiry) *OrderServicePackageInquiryDto {
if m != nil {
d := GetOrderInquiryDto(m)
r.OrderInquiry = d
}
return r
}