54 lines
1.8 KiB
Go
54 lines
1.8 KiB
Go
package dto
|
||
|
||
import (
|
||
"case-api/api/model"
|
||
"fmt"
|
||
)
|
||
|
||
// ProjectPlatformHospitalDto 关联平台-白名单-医院
|
||
type ProjectPlatformHospitalDto struct {
|
||
WhiteHospitalId string `json:"white_hospital_id"` // 主键id
|
||
ProjectPlatformId string `json:"project_platform_id"` // 关联id
|
||
HospitalId string `json:"hospital_id"` // 医院id
|
||
Status int `json:"status"` // 状态(1:正常 2:禁用)
|
||
CreatedAt model.LocalTime `json:"created_at"` // 创建时间
|
||
UpdatedAt model.LocalTime `json:"updated_at"` // 修改时间
|
||
BasicHospital []*BasicHospitalDto `json:"basic_hospital"` // 基础数据-医院
|
||
}
|
||
|
||
// GetProjectPlatformHospitalListDto 列表
|
||
func GetProjectPlatformHospitalListDto(m []*model.ProjectPlatformHospital) []*ProjectPlatformHospitalDto {
|
||
// 处理返回值
|
||
responses := make([]*ProjectPlatformHospitalDto, len(m))
|
||
|
||
if len(m) > 0 {
|
||
for i, v := range m {
|
||
response := &ProjectPlatformHospitalDto{
|
||
WhiteHospitalId: fmt.Sprintf("%d", v.WhiteHospitalId),
|
||
ProjectPlatformId: fmt.Sprintf("%d", v.ProjectPlatformId),
|
||
HospitalId: fmt.Sprintf("%d", v.HospitalId),
|
||
Status: v.Status,
|
||
CreatedAt: v.CreatedAt,
|
||
UpdatedAt: v.UpdatedAt,
|
||
}
|
||
|
||
// 加载数据-医院列表
|
||
response = response.LoadBasicHospital(v.BasicHospital)
|
||
|
||
// 将转换后的结构体添加到新切片中
|
||
responses[i] = response
|
||
}
|
||
}
|
||
|
||
return responses
|
||
}
|
||
|
||
// LoadBasicHospital 加载数据-医院列表
|
||
func (r *ProjectPlatformHospitalDto) LoadBasicHospital(m []*model.BasicHospital) *ProjectPlatformHospitalDto {
|
||
if len(m) > 0 {
|
||
r.BasicHospital = GetBasicHospitalListDto(m)
|
||
}
|
||
|
||
return r
|
||
}
|