feat:完善项目
This commit is contained in:
@ -28,7 +28,7 @@ func (m *SysRole) UserRole(uid uint64) ([]*SysRoleUserInfo, error) {
|
||||
mSysUserRole := NewSysUserRole()
|
||||
|
||||
db := orm.GetDB().Table(m.TableName()+" AS r").
|
||||
Select("r.is", "r.parent_id", "r.name", "u_r.id AS user_role_id").
|
||||
Select("r.id", "r.parent_id", "r.name", "u_r.id AS user_role_id").
|
||||
Joins(fmt.Sprintf("LEFT JOIN %s AS u_r ON r.id = u_r.role_id AND u_r.uid = %d AND u_r.is_deleted = %d",
|
||||
mSysUserRole.TableName(), uid, model.DeleteStatusForNot)).
|
||||
Where("r.is_deleted = ?", model.DeleteStatusForNot)
|
||||
|
@ -47,7 +47,8 @@ func (m *SysUser) GetByAccountOrMobile(param string) (bool, error) {
|
||||
func (m *SysUser) Users(page, pageSize int, count *int64, where ...*model.ModelWhere) ([]*SysUserInfo, error) {
|
||||
mSysTenant := model.NewSysTenant()
|
||||
|
||||
db := orm.GetDB().Table(m.TableName()+" As u").Select("u.*", "t.name AS tenant_name").
|
||||
db := orm.GetDB().Table(m.TableName()+" As u").Select("u.id", "u.uuid", "u.name", "u.avatar",
|
||||
"u.mobile", "u.email", "u.status", "t.name AS tenant_name").
|
||||
Joins(fmt.Sprintf("LEFT JOIN %s AS t ON u.tenant_id = t.id", mSysTenant.TableName())).
|
||||
Where("u.is_deleted = ?", model.DeleteStatusForNot)
|
||||
|
||||
|
@ -2,12 +2,36 @@ package model
|
||||
|
||||
import (
|
||||
"ArmedPolice/app/common/model"
|
||||
"ArmedPolice/serve/orm"
|
||||
"fmt"
|
||||
)
|
||||
|
||||
type SysUserRole struct {
|
||||
*model.SysUserRole
|
||||
}
|
||||
|
||||
// SysUserRoleInfo 用户角色信息
|
||||
type SysUserRoleInfo struct {
|
||||
ID uint64 `json:"id"`
|
||||
Name string `json:"name"`
|
||||
}
|
||||
|
||||
// Roles 用户角色信息
|
||||
func (m *SysUserRole) Roles(uid uint64) ([]*SysUserRoleInfo, error) {
|
||||
db := orm.GetDB().Table(m.TableName()+" AS u_r").
|
||||
Select("r.id", "r.name").
|
||||
Joins(fmt.Sprintf("LEFT JOIN %s AS r ON u_r.role_id = r.id",
|
||||
model.NewSysRole().TableName())).
|
||||
Where("u_r.uid = ? AND u_r.is_deleted = ?", uid, model.DeleteStatusForNot)
|
||||
|
||||
out := make([]*SysUserRoleInfo, 0)
|
||||
|
||||
if err := db.Order("r.sort " + model.OrderModeToDesc).Order("r.id " + model.OrderModeToDesc).Scan(&out).Error; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func NewSysUserRole() *SysUserRole {
|
||||
return &SysUserRole{SysUserRole: model.NewSysUserRole()}
|
||||
}
|
||||
|
Reference in New Issue
Block a user