workdesktopclearuserinfologic.go 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  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. if in.UserIds != "" {
  30. for _, uv := range strings.Split(in.UserIds, ",") {
  31. go entity.ClearUserPowerFunc(uv, in.AppId)
  32. }
  33. }
  34. } else {
  35. r.ErrorCode = -1
  36. r.ErrorMsg = "暂无权限"
  37. }
  38. return &pb.WorkDesktopComprehensiveResp{}, nil
  39. }