diff --git a/api/controller/orderInquiry.go b/api/controller/orderInquiry.go index d898390..f29e09b 100644 --- a/api/controller/orderInquiry.go +++ b/api/controller/orderInquiry.go @@ -37,6 +37,27 @@ func (r *OrderInquiry) GetOrderInquiryPage(c *gin.Context) { req.PageSize = 20 } + // 特殊处理 + // 获取配置 + systemConfigDao := dao.SystemConfigDao{} + systemConfig, err := systemConfigDao.GetSystemConfigById(1) + if err != nil { + responses.FailWithMessage(err.Error(), c) + return + } + + // 年度审查 + if systemConfig.IsAnnualReview == 1 { + // 后台用户id + adminUserId := c.GetInt64("UserId") + // 正式lixiumei user_id 测试 lixiumei user_id + if adminUserId == 1845704393354121216 || adminUserId == 1732273543535661056 { + status := 1 + req.MultiPointStatus = &status + } + + } + orderInquiryDao := dao.OrderInquiryDao{} orderInquiry, total, err := orderInquiryDao.GetOrderInquiryPageSearch(req, req.Page, req.PageSize) if err != nil { diff --git a/api/dao/orderInquiry.go b/api/dao/orderInquiry.go index 4aa7a39..9f903da 100644 --- a/api/dao/orderInquiry.go +++ b/api/dao/orderInquiry.go @@ -106,6 +106,15 @@ func (r *OrderInquiryDao) GetOrderInquiryPageSearch(req requests.GetOrderInquiry query = query.Where(gorm.Expr("doctor_id IN (?)", subQuery)) } + // 多点执业状态 + if req.MultiPointStatus != nil { + subQuery := global.Db.Model(&model.UserDoctor{}). + Select("doctor_id"). + Where("multi_point_status = ?", req.MultiPointStatus) + + query = query.Where(gorm.Expr("doctor_id IN (?)", subQuery)) + } + // 用户 query = query.Preload("User", func(db *gorm.DB) *gorm.DB { return db.Select("user_id", "user_name", "mobile") diff --git a/api/requests/orderInquiry.go b/api/requests/orderInquiry.go index 30c8c95..d29f422 100644 --- a/api/requests/orderInquiry.go +++ b/api/requests/orderInquiry.go @@ -15,6 +15,7 @@ type GetOrderInquiryPage struct { Page int `json:"page" form:"page" label:"页码"` PageSize int `json:"page_size" form:"page_size" label:"每页个数"` DoctorName string `json:"doctor_name" form:"doctor_name" label:"医生姓名"` + MultiPointStatus *int `json:"multi_point_status" form:"multi_point_status" label:"多点执业状态"` // 医生多点执业认证状态 InquiryType *int `json:"inquiry_type" form:"inquiry_type" label:"订单类型"` // (1:专家问诊 2:快速问诊 3:公益问诊 4:问诊购药 5:检测) InquiryMode *int `json:"inquiry_mode" form:"inquiry_mode" label:"订单问诊方式"` // (1:图文 2:视频 3:语音 4:电话 5:会员) InquiryStatus *int `json:"inquiry_status" form:"inquiry_status" label:"问诊订单状态"` // 1:待支付 2:待分配 3:待接诊 4:已接诊 5:已完成 6:已结束 7:已取消