sys_login_log_controller.go 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. package controller
  2. import (
  3. "gas-cylinder-api/common/actions"
  4. "github.com/gin-gonic/gin"
  5. "github.com/gin-gonic/gin/binding"
  6. "gogs.baozhida.cn/zoie/OAuth-core/api"
  7. "gogs.baozhida.cn/zoie/OAuth-core/pkg/jwtauth/user"
  8. _ "gogs.baozhida.cn/zoie/OAuth-core/pkg/response"
  9. "gas-cylinder-api/app/admin/model"
  10. "gas-cylinder-api/app/admin/service"
  11. "gas-cylinder-api/app/admin/service/dto"
  12. )
  13. type SysLoginLogController struct {
  14. api.Api
  15. }
  16. // GetPage 登录日志列表
  17. // @Summary 登录日志列表
  18. // @Description 登录日志列表
  19. // @Tags 登录日志
  20. // @Param username query string false "用户名"
  21. // @Param ipaddr query string false "ip地址"
  22. // @Param loginLocation query string false "归属地"
  23. // @Param status query string false "状态"
  24. // @Param beginTime query string false "开始时间"
  25. // @Param endTime query string false "结束时间"
  26. // @Param pageSize query int false "页条数"
  27. // @Param pageIndex query int false "页码"
  28. // @Success 200 {object} response.Response{data=response.Page{list=[]model.SysLoginLog}} "{"code": 200, "data": [...]}"
  29. // @Router /api/sys-login-log [get]
  30. // @Security Bearer
  31. func (e SysLoginLogController) GetPage(c *gin.Context) {
  32. s := service.SysLoginLogService{}
  33. req := dto.SysLoginLogGetPageReq{}
  34. err := e.MakeContext(c).
  35. MakeOrm().
  36. Bind(&req, binding.Form).
  37. MakeService(&s.Service).
  38. Errors
  39. if err != nil {
  40. e.Logger.Error(err)
  41. e.Error(500, err, err.Error())
  42. return
  43. }
  44. //数据权限检查
  45. p := actions.GetPermissionFromContext(c)
  46. list := make([]model.SysLoginLog, 0)
  47. var count int64
  48. err = s.GetPage(&req, &list, &count, p)
  49. if err != nil {
  50. e.Error(500, err, err.Error())
  51. return
  52. }
  53. e.PageOK(list, int(count), req.GetPageIndex(), req.GetPageSize(), "查询成功")
  54. }
  55. // Get 通过id获取登录日志
  56. // @Summary 通过id获取登录日志
  57. // @Description 通过id获取登录日志
  58. // @Tags 登录日志
  59. // @Param id path string true "登录日志id"
  60. // @Success 200 {object} response.Response{data=model.SysLoginLog} "{"code": 200, "data": [...]}"
  61. // @Router /api/sys-login-log/{id} [get]
  62. // @Security Bearer
  63. func (e SysLoginLogController) Get(c *gin.Context) {
  64. s := service.SysLoginLogService{}
  65. req := dto.SysLoginLogGetReq{}
  66. err := e.MakeContext(c).
  67. MakeOrm().
  68. Bind(&req).
  69. MakeService(&s.Service).
  70. Errors
  71. if err != nil {
  72. e.Logger.Error(err)
  73. e.Error(500, err, err.Error())
  74. return
  75. }
  76. //数据权限检查
  77. p := actions.GetPermissionFromContext(c)
  78. var object model.SysLoginLog
  79. err = s.Get(&req, &object, p)
  80. if err != nil {
  81. e.Error(500, err, err.Error())
  82. return
  83. }
  84. e.OK(object, "查询成功")
  85. }
  86. // Delete 删除登录日志
  87. // @Summary 删除登录日志
  88. // @Description 删除登录日志
  89. // @Tags 登录日志
  90. // @Param data body dto.SysLoginLogDeleteReq true "body"
  91. // @Success 200 {object} response.Response "{"code": 200, "data": [...]}"
  92. // @Router /api/sys-login-log [delete]
  93. // @Security Bearer
  94. func (e SysLoginLogController) Delete(c *gin.Context) {
  95. s := service.SysLoginLogService{}
  96. req := dto.SysLoginLogDeleteReq{}
  97. err := e.MakeContext(c).
  98. MakeOrm().
  99. Bind(&req, binding.JSON, nil).
  100. MakeService(&s.Service).
  101. Errors
  102. if err != nil {
  103. e.Logger.Error(err)
  104. e.Error(500, err, err.Error())
  105. return
  106. }
  107. //数据权限检查
  108. p := actions.GetPermissionFromContext(c)
  109. req.SetUpdateBy(user.GetUserId(c))
  110. err = s.Remove(&req, p)
  111. if err != nil {
  112. e.Error(500, err, err.Error())
  113. return
  114. }
  115. e.OK(req.GetId(), "删除成功")
  116. }