新增医生问诊配置详情
This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
||||
"errors"
|
||||
"gorm.io/gorm"
|
||||
"hospital-admin-api/api/dao"
|
||||
"hospital-admin-api/api/dto"
|
||||
"hospital-admin-api/api/model"
|
||||
"strconv"
|
||||
)
|
||||
@@ -102,3 +103,63 @@ func (r *DoctorInquiryConfigService) HandleDoctorInquiryConfig(tx *gorm.DB, doct
|
||||
|
||||
return true, nil
|
||||
}
|
||||
|
||||
// GetDoctorInquiryConfig 医生问诊配置详情
|
||||
func (r *DoctorInquiryConfigService) GetDoctorInquiryConfig(inquiryConfigId int64) (res *dto.DoctorInquiryConfigDto, err error) {
|
||||
doctorInquiryConfigDao := dao.DoctorInquiryConfigDao{}
|
||||
|
||||
// 获取医生问诊配置
|
||||
doctorInquiryConfig, err := doctorInquiryConfigDao.GetDoctorInquiryConfigById(inquiryConfigId)
|
||||
if err != nil || doctorInquiryConfig == nil {
|
||||
return nil, errors.New(err.Error())
|
||||
}
|
||||
|
||||
// 获取医生数据
|
||||
userDoctorDao := dao.UserDoctorDao{}
|
||||
userDoctor, err := userDoctorDao.GetUserDoctorById(doctorInquiryConfig.DoctorId)
|
||||
if err != nil || userDoctor == nil {
|
||||
return nil, errors.New(err.Error())
|
||||
}
|
||||
|
||||
// 获取医生医院数据
|
||||
hospitalDao := dao.Hospital{}
|
||||
hospital, err := hospitalDao.GetHospitalById(userDoctor.HospitalID)
|
||||
|
||||
// 获取系统问诊配置
|
||||
systemInquiryConfigDao := dao.SystemInquiryConfigDao{}
|
||||
|
||||
maps := make(map[string]interface{})
|
||||
maps["inquiry_type"] = doctorInquiryConfig.InquiryType
|
||||
maps["inquiry_mode"] = doctorInquiryConfig.InquiryMode
|
||||
systemInquiryConfig, err := systemInquiryConfigDao.GetSystemInquiryConfig(maps)
|
||||
if err != nil || systemInquiryConfig == nil {
|
||||
return nil, errors.New(err.Error())
|
||||
}
|
||||
|
||||
// 获取医生问诊时间
|
||||
doctorInquiryTimeDao := dao.DoctorInquiryTimeDao{}
|
||||
|
||||
maps = make(map[string]interface{})
|
||||
maps["doctor_id"] = doctorInquiryConfig.DoctorId
|
||||
maps["inquiry_type"] = doctorInquiryConfig.InquiryType
|
||||
maps["inquiry_mode"] = doctorInquiryConfig.InquiryMode
|
||||
doctorInquiryTimes, err := doctorInquiryTimeDao.GetDoctorInquiryTimeList(maps)
|
||||
|
||||
// 处理返回值
|
||||
res = dto.GetDoctorInquiryConfigDto(doctorInquiryConfig)
|
||||
|
||||
// 加载医生数据
|
||||
res.LoadUserDoctor(userDoctor)
|
||||
|
||||
// 加载医生医院
|
||||
if hospital != nil {
|
||||
res.LoadUserDoctorHospital(hospital)
|
||||
}
|
||||
|
||||
// 加载医生问诊时间
|
||||
if userDoctor.IsPlatformDeepCooperation == 1 {
|
||||
res.LoadDoctorInquiryTime(doctorInquiryTimes)
|
||||
}
|
||||
|
||||
return res, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user