oss_handler.go 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package oauth
  2. import (
  3. "context"
  4. "dashoo.cn/common_definition/comm_def"
  5. "dashoo.cn/micro_libary/micro_srv"
  6. "github.com/gogf/gf/frame/g"
  7. "github.com/gogf/gf/os/glog"
  8. "github.com/gogf/gf/util/gconv"
  9. )
  10. type OssHandler struct{}
  11. // CallBack 单点登录
  12. func (c *OssHandler) CallBack(ctx context.Context, req map[string]string, rsp *comm_def.CommonMsg) error {
  13. // 获取租户码
  14. tenant, err := micro_srv.GetTenant(ctx)
  15. if err != nil {
  16. return err
  17. }
  18. glog.Info("单点登录req", req)
  19. server := NewOssService()
  20. res, err := server.GetAccessToken(ctx, req["code"])
  21. if err != nil {
  22. return err
  23. }
  24. glog.Info(res)
  25. UserInfoRes, err := server.GetUserInfo(ctx, gconv.String(res["access_token"]))
  26. if err != nil {
  27. return err
  28. }
  29. userInfo, err := server.GetToken(ctx, UserInfoRes, tenant)
  30. rsp.Data = userInfo
  31. rsp.Code = 200
  32. rsp.Msg = ""
  33. return nil
  34. }
  35. // CallBack 心跳检测
  36. func (c *OssHandler) GetCheckiam(ctx context.Context, req map[string]string, rsp *comm_def.CommonMsg) error {
  37. glog.Info("单点登录req", req)
  38. server := NewOssService()
  39. res, err := server.GetCheckiam(ctx)
  40. if err != nil {
  41. return err
  42. }
  43. rsp.Code = 200
  44. rsp.Msg = ""
  45. rsp.Data = g.Map{"response": res}
  46. glog.Info(res)
  47. return nil
  48. }
  49. func (c *OssHandler) GetToken(ctx context.Context, req map[string]string, rsp *comm_def.CommonMsg) error {
  50. // 获取租户码
  51. tenant, err := micro_srv.GetTenant(ctx)
  52. if err != nil {
  53. return err
  54. }
  55. glog.Info("单点登录req", req)
  56. server := NewOssService()
  57. var UserInfoRes map[string]interface{}
  58. userInfo, err := server.GetToken(ctx, UserInfoRes, tenant)
  59. rsp.Data = userInfo
  60. rsp.Code = 200
  61. rsp.Msg = ""
  62. return nil
  63. }