41 lines
1.0 KiB
Go
41 lines
1.0 KiB
Go
package v1
|
|
|
|
import (
|
|
"github.com/gin-gonic/gin"
|
|
"hospital-open-api/api/dao"
|
|
"hospital-open-api/api/requests/v1"
|
|
"hospital-open-api/api/responses"
|
|
"hospital-open-api/api/responses/v1/userDoctorResponse"
|
|
"hospital-open-api/global"
|
|
"hospital-open-api/utils"
|
|
)
|
|
|
|
type UserDoctor struct{}
|
|
|
|
// GetMultiDoctor 获取多点执业医生详情
|
|
func (r *UserDoctor) GetMultiDoctor(c *gin.Context) {
|
|
req := v1.UserDoctorRequest{}
|
|
if err := c.ShouldBind(&req.GetMultiDoctor); err != nil {
|
|
responses.FailWithMessage(err.Error(), c)
|
|
return
|
|
}
|
|
|
|
// 参数验证
|
|
if err := global.Validate.Struct(req.GetMultiDoctor); err != nil {
|
|
responses.FailWithMessage(utils.Translate(err), c)
|
|
return
|
|
}
|
|
|
|
// 获取数据
|
|
userDoctorDao := dao.UserDoctorDao{}
|
|
userDoctor, err := userDoctorDao.GetUserDoctor(req.GetMultiDoctor)
|
|
if err != nil && userDoctor == nil {
|
|
responses.Ok(c)
|
|
return
|
|
}
|
|
|
|
// 处理返回值
|
|
getMultiDoctorResponse := userDoctorResponse.GetMultiDoctorResponse(userDoctor)
|
|
responses.OkWithData(getMultiDoctorResponse, c)
|
|
}
|