48 lines
1.2 KiB
Go
48 lines
1.2 KiB
Go
package dao
|
|
|
|
import (
|
|
"hospital-admin-api/api/model"
|
|
"hospital-admin-api/global"
|
|
)
|
|
|
|
type AdminRoleDao struct {
|
|
}
|
|
|
|
// GetAdminRoleFirstById 角色id获取用户角色
|
|
// roleId 角色id
|
|
func (r *AdminRoleDao) GetAdminRoleFirstById(roleId int64) (m model.AdminRole, err error) {
|
|
err = global.Db.First(&m, roleId).Error
|
|
if err != nil {
|
|
return m, err
|
|
}
|
|
return m, nil
|
|
}
|
|
|
|
// GetAdminRolePageSearch 搜索角色列表-分页
|
|
func (r *AdminRoleDao) GetAdminRolePageSearch(roleName string, page, pageSize int) (m []model.AdminRole, err error) {
|
|
// 计算偏移量
|
|
offset := (page - 1) * pageSize
|
|
|
|
if roleName != "" {
|
|
err = global.Db.Where("role_name = ?", roleName).Offset(offset).Limit(pageSize).Find(&m).Error
|
|
if err != nil {
|
|
return m, err
|
|
}
|
|
} else {
|
|
err = global.Db.Offset(offset).Limit(pageSize).Find(&m).Error
|
|
if err != nil {
|
|
return m, err
|
|
}
|
|
}
|
|
return m, nil
|
|
}
|
|
|
|
// EditAdminRoleStatusById 角色启用/禁用-角色id
|
|
func (r *AdminRoleDao) EditAdminRoleStatusById(roleId int64, roleStatus int) error {
|
|
err := global.Db.Model(&model.AdminRole{}).Where("role_id = ?", roleId).Update("role_status", roleStatus).Error
|
|
if err != nil {
|
|
return err
|
|
}
|
|
return nil
|
|
}
|