From 44e5f56aac5d168a74ae55d6d17c77db081d7a33 Mon Sep 17 00:00:00 2001 From: wucongxing <815046773@qq.com> Date: Fri, 20 Oct 2023 16:05:44 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8C=BB=E7=94=9F=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/dao/userDoctor.go | 33 +++++++++++++++++++++++++++++++++ api/requests/userDoctor.go | 8 +++++++- 2 files changed, 40 insertions(+), 1 deletion(-) diff --git a/api/dao/userDoctor.go b/api/dao/userDoctor.go index 9e32d2b..410bb85 100644 --- a/api/dao/userDoctor.go +++ b/api/dao/userDoctor.go @@ -384,6 +384,39 @@ func (r *UserDoctorDao) GetUserDoctorListSearch(req requests.GetUserDoctorList) query = query.Where("user_name LIKE ?", "%"+req.UserName+"%") } + // 实名认证状态 + if req.IDCardStatus != nil { + query = query.Where("idcard_status = ?", req.IDCardStatus) + } + + // 身份认证状态 + if req.IdenAuthStatus != nil { + query = query.Where("iden_auth_status = ?", req.IdenAuthStatus) + } + + // 医生多点执业认证状态 + if req.MultiPointStatus != nil { + query = query.Where("multi_point_status = ?", req.MultiPointStatus) + } + + // 是否已绑定结算银行卡 + if req.IsBindBank != nil { + query = query.Where("is_bind_bank = ?", req.IsBindBank) + } + + // 医生问诊配置 + if req.UnInquiryType != "" { + result := strings.Split(req.UnInquiryType, ",") + if len(result) > 0 { + subQuery := global.Db.Model(&model.DoctorInquiryConfig{}). + Where("gdxz_doctor_inquiry_config.doctor_id = gdxz_user_doctor.doctor_id"). + Where("gdxz_doctor_inquiry_config.inquiry_type NOT IN (?)", req.UnInquiryType). + Where("gdxz_doctor_inquiry_config.inquiry_mode = ?", req.InquiryMode) + + query = query.Where("EXISTS (?)", subQuery) + } + } + // 排序 query = query.Order("created_at desc") diff --git a/api/requests/userDoctor.go b/api/requests/userDoctor.go index 973e91d..e004eeb 100644 --- a/api/requests/userDoctor.go +++ b/api/requests/userDoctor.go @@ -130,5 +130,11 @@ type PutMulti struct { // GetUserDoctorList 获取医生列表 type GetUserDoctorList struct { - UserName string `json:"user_name" form:"user_name" label:"医生姓名"` + UserName string `json:"user_name" form:"user_name" label:"医生姓名"` + IDCardStatus *int `json:"idcard_status" form:"idcard_status" label:"身份证状态"` // (0:未认证 1:认证通过 2:认证失败) + IdenAuthStatus *int `json:"iden_auth_status" form:"iden_auth_status" label:"认证状态"` // (0:未认证 1:认证通过 2:审核中 3:认证失败) + MultiPointStatus *int `json:"multi_point_status" form:"multi_point_status" label:"多点执业状态"` // 医生多点执业认证状态(0:未认证 1:认证通过 2:审核中 3:认证失败) + IsBindBank *int `json:"is_bind_bank" form:"is_bind_bank" label:"是否已绑定结算银行卡"` // (0:否 1:是) + UnInquiryType string `json:"un_inquiry_type" form:"un_inquiry_type" label:"非查询问诊类型"` // 逗号分隔(1:专家问诊 2:快速问诊 3:公益问诊 4:问诊购药 5:检测) + InquiryMode int `json:"inquiry_mode" form:"inquiry_mode" validate:"required" label:"问诊方式"` // (1:图文 2:视频 3:语音 4:电话 5:会员) }