get_employee_search_test_logic.go 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package employee
  2. import (
  3. "context"
  4. "time"
  5. "wechat-api/internal/svc"
  6. "wechat-api/internal/types"
  7. "wechat-api/internal/utils/jwt"
  8. "github.com/zeromicro/go-zero/core/logx"
  9. )
  10. type GetEmployeeSearchTestLogic struct {
  11. logx.Logger
  12. ctx context.Context
  13. svcCtx *svc.ServiceContext
  14. }
  15. func NewGetEmployeeSearchTestLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetEmployeeSearchTestLogic {
  16. return &GetEmployeeSearchTestLogic{
  17. Logger: logx.WithContext(ctx),
  18. ctx: ctx,
  19. svcCtx: svcCtx}
  20. }
  21. func (l *GetEmployeeSearchTestLogic) GetEmployeeSearchTest(req *types.AuthReq) (*types.AuthResp, error) {
  22. var token, secretKey string
  23. var err error
  24. var decryptData map[string]interface{}
  25. var ok bool
  26. var userId interface{}
  27. secretKey = l.svcCtx.Config.Auth.AccessSecret
  28. data := req.Data
  29. dataArray := make([]jwt.Option, 0)
  30. dataArray = append(dataArray, jwt.Option{
  31. Key: "userId",
  32. Val: data,
  33. })
  34. token, err = jwt.NewJwtToken(
  35. l.svcCtx.Config.Auth.AccessSecret,
  36. time.Now().Unix(),
  37. 86400*14,
  38. dataArray...,
  39. )
  40. decryptData, err = jwt.ParseJwtToken(l.svcCtx.Config.Auth.AccessSecret, token)
  41. if err != nil {
  42. return nil, err
  43. }
  44. userId, ok = decryptData["userId"]
  45. return &types.AuthResp{
  46. Token: &token,
  47. Data: &data,
  48. Original: userId,
  49. OK: ok,
  50. SecretKey: secretKey,
  51. }, nil
  52. }