monitor_login_log.go 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package admin
  2. import (
  3. "gfast/app/model/admin/sys_login_log"
  4. "gfast/app/service/admin/dict_service"
  5. "gfast/app/service/admin/monitor_service"
  6. "gfast/library/response"
  7. "github.com/gogf/gf/frame/g"
  8. "github.com/gogf/gf/net/ghttp"
  9. "github.com/gogf/gf/util/gvalid"
  10. )
  11. type MonitorLoginLog struct{}
  12. // @Summary 登录日志列表
  13. // @Description 登录日志列表
  14. // @Tags 登录日志
  15. // @Param data body sys_login_log.SelectPageReq true "data"
  16. // @Success 0 {object} response.Response "{"code": 200, "data": [...]}"
  17. // @Router /system/monitor/loginlog/list [get]
  18. // @Security
  19. func (c *MonitorLoginLog) List(r *ghttp.Request) {
  20. var req *sys_login_log.SelectPageReq
  21. //获取参数
  22. if err := r.Parse(&req); err != nil {
  23. response.FailJson(true, r, err.(*gvalid.Error).FirstString())
  24. }
  25. total, page, list, err := monitor_service.LoginLogListByPage(req)
  26. if err != nil {
  27. response.FailJson(true, r, err.Error())
  28. }
  29. //获取相关选项
  30. logStatus, err := dict_service.GetDictWithDataByType("admin_login_status", "", "全部")
  31. if err != nil {
  32. response.FailJson(true, r, err.Error())
  33. }
  34. result := g.Map{
  35. "currentPage": page,
  36. "total": total,
  37. "list": list,
  38. "searchStatus": logStatus,
  39. }
  40. response.SusJson(true, r, "登录日志列表", result)
  41. }
  42. // @Summary 删除登录日志
  43. // @Description 删除登录日志
  44. // @Tags 登录日志
  45. // @Param ids body integer true "ids[]"
  46. // @Success 0 {object} response.Response "{"code": 200, "data": [...]}"
  47. // @Router /system/monitor/loginlog/delete [delete]
  48. // @Security
  49. func (c *MonitorLoginLog) Delete(r *ghttp.Request) {
  50. ids := r.GetInts("ids")
  51. err := monitor_service.DeleteLoginLogByIds(ids)
  52. if err != nil {
  53. response.FailJson(true, r, err.Error())
  54. }
  55. response.SusJson(true, r, "删除成功")
  56. }
  57. // @Summary 清空登录日志
  58. // @Description 清空登录日志
  59. // @Tags 登录日志
  60. // @Success 0 {object} response.Response "{"code": 200, "data": [...]}"
  61. // @Router /system/monitor/loginlog/clear [post]
  62. // @Security
  63. func (c *MonitorLoginLog) Clear(r *ghttp.Request) {
  64. err := monitor_service.ClearLoginLog()
  65. if err != nil {
  66. response.FailJson(true, r, err.Error())
  67. }
  68. response.SusJson(true, r, "清除成功")
  69. }