hook.go 820 B

1234567891011121314151617181920212223242526272829303132333435
  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. "github.com/gogf/gf/frame/g"
  8. "github.com/gogf/gf/net/ghttp"
  9. "github.com/gogf/gf/text/gstr"
  10. )
  11. func OperationLog(r *ghttp.Request) {
  12. user := user_service.GetLoginAdminInfo(r)
  13. if user == nil {
  14. return
  15. }
  16. url := r.Request.URL //请求地址
  17. //获取菜单
  18. //获取地址对应的菜单id
  19. menuList, err := auth_service.GetMenuList()
  20. if err != nil {
  21. g.Log().Error(err)
  22. return
  23. }
  24. var menu *auth_rule.Entity
  25. path := gstr.TrimLeft(url.Path, "/")
  26. for _, m := range menuList {
  27. if gstr.Equal(m.Name, path) {
  28. menu = m
  29. break
  30. }
  31. }
  32. go monitor_service.OperationLogAdd(user, menu, url, r.GetMap(), r.Method, r.GetClientIp())
  33. }