workdesktopclearuserinfologic.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package logic
  2. import (
  3. "context"
  4. "strings"
  5. "userCenter/entity"
  6. "userCenter/rpc/internal/config"
  7. "userCenter/rpc/internal/svc"
  8. "userCenter/rpc/pb"
  9. "github.com/zeromicro/go-zero/core/logx"
  10. )
  11. type WorkDesktopClearUserInfoLogic struct {
  12. ctx context.Context
  13. svcCtx *svc.ServiceContext
  14. logx.Logger
  15. }
  16. func NewWorkDesktopClearUserInfoLogic(ctx context.Context, svcCtx *svc.ServiceContext) *WorkDesktopClearUserInfoLogic {
  17. return &WorkDesktopClearUserInfoLogic{
  18. ctx: ctx,
  19. svcCtx: svcCtx,
  20. Logger: logx.WithContext(ctx),
  21. }
  22. }
  23. // 手动清除用户功能内存信息
  24. func (l *WorkDesktopClearUserInfoLogic) WorkDesktopClearUserInfo(in *pb.WorkDesktopClearUserInfoReq) (*pb.WorkDesktopComprehensiveResp, error) {
  25. var r = &pb.WorkDesktopComprehensiveResp{}
  26. //是否是管理者账号
  27. if config.ManagerUserIdsMap[in.UserId] {
  28. //in.UserIds 不为空;清此用户内存信息
  29. //in.UserIds 为空;清全部
  30. if in.UserIds != "" {
  31. for _, uv := range strings.Split(in.UserIds, ",") {
  32. go entity.ClearUserPowerFunc(uv, in.AppId)
  33. }
  34. }
  35. } else {
  36. r.ErrorCode = -1
  37. r.ErrorMsg = "暂无权限"
  38. }
  39. return &pb.WorkDesktopComprehensiveResp{}, nil
  40. }