Browse Source

新增数据管理员数据

userxzz 8 months ago
parent
commit
8864d0df65

+ 17 - 1
game/game_cluster/nodes/webadmin/entity/admin.go

@@ -17,7 +17,23 @@ type AdminAddReq struct {
 	Status   int    `json:"status"`
 }
 
-// Admin \game\game_cluster\nodes\webadmin\entity\admin.go
+type AdminListResp struct {
+	Id            interface{} `json:"id" bson:"_id"`                          // 自增ID
+	Username      string      `json:"username" bson:"username"`               // 用户名
+	Password      string      `json:"password" bson:"password"`               // 密码
+	RealName      string      `json:"real_name" bson:"real_name"`             // 真实姓名
+	Pid           any         `json:"pid" bson:"pid"`                         // 父级ID
+	RoleId        string      `json:"role_id" bson:"role_id"`                 // 角色ID
+	Status        int         `json:"status" bson:"status"`                   // 状态 0:禁用 1:启用
+	ManagerAuth   int8        `json:"manager_auth" bson:"manager_auth"`       // 管理员权限
+	LastLoginIp   string      `json:"last_login_ip" bson:"last_login_ip"`     // 最后登录IP
+	LastLoginTime int64       `json:"last_login_time" bson:"last_login_time"` // 最后登录时间
+	RoleName      string      `json:"role_name" bson:"role_name"`             // 角色名
+	CreatedAt     int64       `json:"created_at" bson:"created_at"`
+	UpdatedAt     int64       `json:"updated_at" bson:"updated_at"`
+	DeletedAt     int64       `json:"deleted_at" bson:"deleted_at"`
+}
+
 type AdminChangePasswordReq struct {
 	Password string `json:"
 

+ 31 - 2
game/game_cluster/nodes/webadmin/service/admin.go

@@ -247,7 +247,7 @@ func (a *Admin) UpdateStatus(ctx context.Context, username string, status int) e
 }
 
 // FindAll 查找所有管理员信息
-func (a *Admin) FindAll(ctx context.Context, page int, pageSize int, username string) ([]*model.Admin, int64, error) {
+func (a *Admin) FindAll(ctx context.Context, page int, pageSize int, username string) ([]*entity.AdminListResp, int64, error) {
 	// 日志记录
 	log.Printf("Finding admins with page %d and page size %d, username: %s", page, pageSize, maskUsername(username))
 
@@ -301,7 +301,36 @@ func (a *Admin) FindAll(ctx context.Context, page int, pageSize int, username st
 		return nil, 0, err
 	}
 
-	return admins, count, nil
+	var data []*entity.AdminListResp
+	for _, admin := range admins {
+		roleName := ""
+		roleName, _ = a.GetRoleName(admin.RoleId)
+
+		data = append(data, &entity.AdminListResp{
+			Id:            admin.GetID(),
+			Username:      admin.Username,
+			RealName:      admin.RealName,
+			RoleId:        admin.RoleId,
+			RoleName:      roleName,
+			Status:        admin.Status,
+			CreatedAt:     admin.CreatedAt,
+			UpdatedAt:     admin.UpdatedAt,
+			LastLoginIp:   admin.LastLoginIp,
+			LastLoginTime: admin.LastLoginTime,
+		})
+	}
+
+	return data, count, nil
+}
+
+func (a *Admin) GetRoleName(roleID string) (string, error) {
+	objID, err := primitive.ObjectIDFromHex(roleID)
+	if err != nil {
+		return "", err
+	}
+	var role models.Roles
+	err = mdb.MDB.Collection(role.TableName()).FindOne(context.Background(), bson.M{"_id": objID}).Decode(&role)
+	return role.Name, err
 }
 
 // GetServerStatus 获取服务器状态