修正返回目录

This commit is contained in:
2023-09-28 08:40:43 +08:00
parent aedf61c31b
commit 70c35e0ce6
84 changed files with 3579 additions and 2007 deletions
+168
View File
@@ -0,0 +1,168 @@
package dto
import (
"fmt"
"hospital-admin-api/api/model"
"hospital-admin-api/utils"
)
type PatientFamilyDto struct {
FamilyId string `json:"family_id"` // 主键id
PatientId string `json:"patient_id"` // 患者id
Relation *int `json:"relation"` // 与患者关系(1:本人 2:父母 3:爱人 4:子女 5:亲戚 6:其他)
Status *int `json:"status"` // 状态(1:正常 2:删除)
IsDefault *int `json:"is_default"` // 是否默认(0:否 1:是)
CardName string `json:"card_name"` // 姓名
CardNameMask string `json:"card_name_mask"` // 姓名(掩码)
Mobile string `json:"mobile"` // 电话
MobileMask string `json:"mobile_mask"` // 电话(掩码)
Type *int `json:"type"` // 身份类型(1:身份证 2:护照 3:港澳通行证 4:台胞证)
IdNumber string `json:"id_number"` // 证件号码
IdNumberMask string `json:"id_number_mask"` // 证件号码(掩码)
Sex *int `json:"sex"` // 性别(0:未知 1:男 2:女)
Age int `json:"age"` // 年龄
ProvinceId string `json:"province_id"` // 省份id
Province string `json:"province"` // 省份
CityId string `json:"city_id"` // 城市id
City string `json:"city"` // 城市
CountyId string `json:"county_id"` // 区县id
County string `json:"county"` // 区县
Height string `json:"height"` // 身高(cm)
Weight string `json:"weight"` // 体重(kg)
MaritalStatus *int `json:"marital_status"` // 婚姻状况(0:未婚 1:已婚 2:离异)
NationId string `json:"nation_id"` // 民族
NationName string `json:"nation_name"` // 民族名称
JobId string `json:"job_id"` // 职业
JobName string `json:"job_name"` // 职业名称
UserName string `json:"user_name"` // 账号名称
User *UserDto `json:"user"` // 用户
CreatedAt model.LocalTime `json:"created_at"` // 创建时间
UpdatedAt model.LocalTime `json:"updated_at"` // 更新时间
}
type PatientFamilyMaskDto struct {
FamilyId string `json:"family_id"` // 主键id
PatientId string `json:"patient_id"` // 患者id
Relation *int `json:"relation"` // 与患者关系(1:本人 2:父母 3:爱人 4:子女 5:亲戚 6:其他)
Status *int `json:"status"` // 状态(1:正常 2:删除)
IsDefault *int `json:"is_default"` // 是否默认(0:否 1:是)
CardNameMask string `json:"card_name_mask"` // 姓名(掩码)
MobileMask string `json:"mobile_mask"` // 电话(掩码)
IdNumberMask string `json:"id_number_mask"` // 证件号码(掩码)
Sex *int `json:"sex"` // 性别(0:未知 1:男 2:女)
Age int `json:"age"` // 年龄
CreatedAt model.LocalTime `json:"created_at"` // 创建时间
UpdatedAt model.LocalTime `json:"updated_at"` // 更新时间
}
func GetPatientFamilyMaskDto(m *model.PatientFamily) *PatientFamilyMaskDto {
return &PatientFamilyMaskDto{
FamilyId: fmt.Sprintf("%d", m.FamilyId),
PatientId: fmt.Sprintf("%d", m.PatientId),
Relation: m.Relation,
Status: &m.Status,
IsDefault: &m.IsDefault,
CardNameMask: m.CardNameMask,
IdNumberMask: m.IdNumberMask,
Sex: &m.Sex,
Age: m.Age,
CreatedAt: m.CreatedAt,
UpdatedAt: m.UpdatedAt,
}
}
func GetPatientFamilyMaskListDto(m []*model.PatientFamily) []*PatientFamilyMaskDto {
// 处理返回值
responses := make([]*PatientFamilyMaskDto, len(m))
if len(m) > 0 {
for i, v := range m {
response := &PatientFamilyMaskDto{
FamilyId: fmt.Sprintf("%d", v.FamilyId),
PatientId: fmt.Sprintf("%d", v.PatientId),
Relation: v.Relation,
Status: &v.Status,
IsDefault: &v.IsDefault,
CardNameMask: v.CardNameMask,
IdNumberMask: v.IdNumberMask,
Sex: &v.Sex,
Age: v.Age,
CreatedAt: v.CreatedAt,
UpdatedAt: v.UpdatedAt,
}
// 将转换后的结构体添加到新切片中
responses[i] = response
}
}
return responses
}
func GetPatientFamilyDto(m *model.PatientFamily) *PatientFamilyDto {
return &PatientFamilyDto{
FamilyId: fmt.Sprintf("%d", m.FamilyId),
PatientId: fmt.Sprintf("%d", m.PatientId),
Relation: m.Relation,
Status: &m.Status,
IsDefault: &m.IsDefault,
CardName: m.CardName,
CardNameMask: m.CardNameMask,
MobileMask: m.MobileMask,
Type: &m.Type,
IdNumberMask: m.IdNumberMask,
Sex: &m.Sex,
Age: m.Age,
ProvinceId: fmt.Sprintf("%d", m.ProvinceId),
Province: m.Province,
CityId: fmt.Sprintf("%d", m.CityId),
City: m.City,
CountyId: fmt.Sprintf("%d", m.CountyId),
County: m.County,
Height: m.Height,
Weight: m.Weight,
MaritalStatus: &m.MaritalStatus,
NationId: fmt.Sprintf("%d", m.NationId),
NationName: m.NationName,
JobId: fmt.Sprintf("%d", m.JobId),
JobName: m.JobName,
CreatedAt: m.CreatedAt,
UpdatedAt: m.UpdatedAt,
}
}
func GetPatientFamilyListDto(m []*model.PatientFamily) []*PatientFamilyDto {
// 处理返回值
responses := make([]*PatientFamilyDto, len(m))
if len(m) > 0 {
for i, v := range m {
response := &PatientFamilyDto{
FamilyId: fmt.Sprintf("%d", v.FamilyId),
PatientId: fmt.Sprintf("%d", v.PatientId),
Relation: v.Relation,
Status: &v.Status,
CardName: v.CardName,
MobileMask: utils.MaskPhoneStr(v.UserPatient.User.Mobile),
UserName: v.UserPatient.UserName,
CreatedAt: v.CreatedAt,
UpdatedAt: v.UpdatedAt,
}
// 将转换后的结构体添加到新切片中
responses[i] = response
}
}
return responses
}
// LoadMaskUser 加载用户数据-加密
func (r *PatientFamilyDto) LoadMaskUser(m *model.User) *PatientFamilyDto {
if m != nil {
userDto := GetMaskUserDto(m)
r.User = userDto
}
return r
}