package handler import ( "context" "sghgogs.com/sghblog/authorization-service/domain/service" pb "sghgogs.com/sghblog/authorization-service/proto" "sghgogs.com/sghblog/common/errorcode" ) type AdminUser struct { Service service.IService } func (svc *AdminUser) GetAdminUser(ctx context.Context, user *pb.GetAdminUserRequest, rsp *pb.GetAdminUserResponse) error { if user.Id <= 0 { return errorcode.New("authorization service", "UserId 不存在", 500) } adminUser, err := svc.Service.GetAdminUser(user.Id) if err != nil { return err } rsp.Data = adminUser return nil } func (svc *AdminUser) ListAdminUsers(ctx context.Context, query *pb.ListAdminUsersRequest, rsp *pb.ListAdminUsersResponse) error { users, i, err := svc.Service.ListAdminUsers(query) if err != nil { return nil } rsp.Items = users rsp.TotalCount = i return nil } // RetrieveEnabledUsers 获取所有启用管理员 func (svc *AdminUser) RetrieveEnabledUsers(ctx context.Context, userReq *pb.RetrieveEnabledUsersRequest, rsp *pb.RetrieveEnabledUsersResponse) error { if users, err := svc.Service.RetrieveEnabledUsers(); err != nil { return nil } else { rsp.Users = users } return nil } func (svc *AdminUser) CreateAdminUser(ctx context.Context, reqUser *pb.CreateAdminUserRequest, rsp *pb.CreateAdminUserResponse) error { if err := svc.Service.CreateAdminUser(reqUser); err != nil { return err } return nil } // func (svc *AdminUser) AssociateAdminUserWithRole(ctx context.Context, associate *pb.AssociateAdminUserWithRoleRequest, rsp *pb.AssociateAdminUserWithRoleResponse) error { // if err := svc.Service.AssociateUserWithRole(ctx, associate); err != nil { // return err // } // return nil // } // // func (svc *AdminUser) RevokeAdminUserWithRole(ctx context.Context, roleRequest *pb.RevokeAdminUserWithRoleRequest, rsp *pb.RevokeAdminUserWithRoleResponse) error { // if err := svc.Service.RevokeAdminUserWithRole(ctx, roleRequest); err != nil { // return err // } // return nil // } func (svc *AdminUser) UpdateAdminUser(ctx context.Context, user *pb.UpdateAdminUserRequest, rsp *pb.UpdateAdminUserResponse) error { if err := svc.Service.UpdateAdminUser(user); err != nil { return err } return nil } func (svc *AdminUser) DeleteAdminUser(ctx context.Context, user *pb.DeleteAdminUserRequest, rsp *pb.DeleteAdminUserResponse) error { if err := svc.Service.DeleteAdminUser(ctx, user.UserId); err != nil { return err } return nil } // // func (svc *AdminUser) GetUnassignedAdminRoles(ctx context.Context, user *pb.GetUnassignedAdminRolesRequest, rsp *pb.GetUnassignedAdminRolesResponse) error { // roles, i, err := svc.Service.GetUnassignedAdminRoles(user.UserId) // if err != nil { // return err // } // rsp.Items = roles // rsp.TotalCount = i // return nil // } // // func (svc *AdminUser) GetAdminUserAssociatedRoles(ctx context.Context, user *pb.GetAdminUserAssociatedRolesRequest, rsp *pb.GetAdminUserAssociatedRolesResponse) error { // roles, err := svc.Service.GetAdminUserAssociatedRoles(user.Username) // if err != nil { // return err // } // rsp.Items = roles // return nil // } func (svc *AdminUser) ToggleAdminUser(ctx context.Context, user *pb.ToggleAdminUserRequest, rsp *pb.ToggleAdminUserResponse) error { err := svc.Service.ToggleAdminUser(user) if err != nil { return err } return nil }