hook.go 848 B

123456789101112131415161718192021222324252627282930313233343536
  1. package hook
  2. import (
  3. "gfast/app/model/admin/auth_rule"
  4. "gfast/app/service/admin/auth_service"
  5. "gfast/app/service/admin/monitor_service"
  6. "gfast/app/service/admin/user_service"
  7. "gfast/library/utils"
  8. "github.com/gogf/gf/frame/g"
  9. "github.com/gogf/gf/net/ghttp"
  10. "github.com/gogf/gf/text/gstr"
  11. )
  12. func OperationLog(r *ghttp.Request) {
  13. user := user_service.GetLoginAdminInfo(r)
  14. if user == nil {
  15. return
  16. }
  17. url := r.Request.URL //请求地址
  18. //获取菜单
  19. //获取地址对应的菜单id
  20. menuList, err := auth_service.GetMenuList()
  21. if err != nil {
  22. g.Log().Error(err)
  23. return
  24. }
  25. var menu *auth_rule.Entity
  26. path := gstr.TrimLeft(url.Path, "/")
  27. for _, m := range menuList {
  28. if gstr.Equal(m.Name, path) {
  29. menu = m
  30. break
  31. }
  32. }
  33. go monitor_service.OperationLogAdd(user, menu, url, r.GetMap(), r.Method, utils.GetClientIp(r))
  34. }