新增数据库主键处理

This commit is contained in:
2023-07-14 17:36:14 +08:00
parent 593ea49554
commit c9efce7bb6
28 changed files with 730 additions and 52 deletions
+8
View File
@@ -71,6 +71,14 @@ func (r *DoctorExpertiseDao) AddDoctorExpertise(tx *gorm.DB, model *model.Doctor
return model, nil
}
// AddDoctorExpertises 新增医生专长-多
func (r *DoctorExpertiseDao) AddDoctorExpertises(tx *gorm.DB, models []model.DoctorExpertise) error {
if err := tx.Create(&models).Error; err != nil {
return err
}
return nil
}
// AddDoctorExpertiseByMap 新增医生专长-map
func (r *DoctorExpertiseDao) AddDoctorExpertiseByMap(tx *gorm.DB, data map[string]interface{}) (*model.DoctorExpertise, error) {
userDoctorInfo := &model.DoctorExpertise{}
+60 -1
View File
@@ -212,7 +212,7 @@ func (r *UserDoctorDao) AddUserDoctor(tx *gorm.DB, model *model.UserDoctor) (*mo
return model, nil
}
// GetUserDoctorPendingPageSearch 审核-获取医生列表-分页
// GetUserDoctorPendingPageSearch 身份审核-获取医生列表-分页
func (r *UserDoctorDao) GetUserDoctorPendingPageSearch(p requests.GetUserDoctorPendingPage, page, pageSize int) (m []*model.UserDoctor, total int64, err error) {
var totalRecords int64
@@ -270,3 +270,62 @@ func (r *UserDoctorDao) GetUserDoctorPendingPageSearch(p requests.GetUserDoctorP
}
return m, totalRecords, nil
}
// GetUserDoctorMultiPageSearch 多点-获取医生列表-分页
func (r *UserDoctorDao) GetUserDoctorMultiPageSearch(p requests.GetMultiPage, page, pageSize int) (m []*model.UserDoctor, total int64, err error) {
var totalRecords int64
// 构建查询条件
query := global.Db.Model(&model.UserDoctor{}).Omit("open_id", "union_id", "wx_session_key")
// 用户
query = query.Preload("User", func(db *gorm.DB) *gorm.DB {
return db.Omit("user_password", "salt")
})
// 医院
query = query.Preload("Hospital", func(db *gorm.DB) *gorm.DB {
return db.Select("hospital_id,hospital_name,hospital_level_name")
})
// 手机号
if p.Mobile != "" {
subQuery := global.Db.Model(&model.User{}).
Select("user_id").
Where("mobile LIKE ?", "%"+p.Mobile+"%")
query = query.Where(gorm.Expr("user_id IN (?)", subQuery))
}
// 用户名称
if p.UserName != "" {
query = query.Where("user_name LIKE ?", "%"+p.UserName+"%")
}
// 身份认证状态
if p.MultiPointStatus != nil {
query = query.Where("multi_point_status = ?", p.MultiPointStatus)
} else {
query = query.Where("multi_point_status IN ?", []string{"2", "3"})
}
// 医院名称
if p.HospitalName != "" {
subQuery := global.Db.Model(&model.Hospital{}).
Select("hospital_id").
Where("hospital_name LIKE ?", "%"+p.HospitalName+"%")
query = query.Where(gorm.Expr("hospital_id IN (?)", subQuery))
}
// 查询总数量
if err := query.Count(&totalRecords).Error; err != nil {
return nil, 0, err
}
err = query.Scopes(model.Paginate(page, pageSize)).Find(&m).Error
if err != nil {
return nil, 0, err
}
return m, totalRecords, nil
}