|
@@ -584,6 +584,46 @@ func getRoleAccess(ctx context.Context, roleId string) (*models.RoleAccess, erro
|
|
|
|
|
|
func (r *Role) GetAdminRole(ctx context.Context, req *entity.AdminBindRoleReq) (*entity.AdminBindRoleResp, error) {
|
|
|
|
|
|
+ if req.RoleId == "admin" {
|
|
|
+
|
|
|
+ access := models.Access{}
|
|
|
+ collection := mdb.MDB.Collection(access.TableName())
|
|
|
+ filter := bson.M{}
|
|
|
+ cursor, err := collection.Find(ctx, filter)
|
|
|
+ defer cursor.Close(ctx)
|
|
|
+ if err != nil {
|
|
|
+ return nil, fmt.Errorf("查询权限失败: %v", err)
|
|
|
+ }
|
|
|
+ var accessList []*entity.AccessResp
|
|
|
+ for cursor.Next(ctx) {
|
|
|
+ var accesss *models.Access
|
|
|
+ err := cursor.Decode(&accesss)
|
|
|
+ if err != nil {
|
|
|
+ return nil, fmt.Errorf("解析权限数据失败: %v", err)
|
|
|
+ }
|
|
|
+ accessList = append(accessList, &entity.AccessResp{
|
|
|
+ ID: accesss.ID,
|
|
|
+ ActionName: accesss.ActionName,
|
|
|
+ Description: accesss.Description,
|
|
|
+ ModuleName: accesss.ModuleName,
|
|
|
+ ParentId: accesss.ParentId,
|
|
|
+ Sort: accesss.Sort,
|
|
|
+ Status: accesss.Status,
|
|
|
+ Type: accesss.Type,
|
|
|
+ URL: accesss.URL,
|
|
|
+ AddTime: accesss.AddTime,
|
|
|
+ })
|
|
|
+ }
|
|
|
+ return &entity.AdminBindRoleResp{
|
|
|
+ AdminId: "admin",
|
|
|
+ AdminName: "admin",
|
|
|
+ RoleId: "admin",
|
|
|
+ RoleName: "超级管理员",
|
|
|
+ AccessList: formatAccessData(accessList),
|
|
|
+ }, nil
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
role, err := getRole(ctx, req.RoleId)
|
|
|
if err != nil {
|
|
|
return nil, err
|