feat: add login log record
This commit is contained in:
+14
-8
@@ -1,15 +1,16 @@
|
||||
package api
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
"fmt"
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/gin-gonic/gin"
|
||||
|
||||
"message-nest/pkg/app"
|
||||
"message-nest/pkg/e"
|
||||
"message-nest/pkg/util"
|
||||
"message-nest/service/auth_service"
|
||||
"message-nest/pkg/app"
|
||||
"message-nest/pkg/e"
|
||||
"message-nest/pkg/util"
|
||||
"message-nest/service/auth_service"
|
||||
"message-nest/models"
|
||||
)
|
||||
|
||||
type auth struct {
|
||||
@@ -51,7 +52,12 @@ func GetAuth(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
appG.CResponse(http.StatusOK, "登录成功!", map[string]string{
|
||||
// 查询用户ID并记录登录日志
|
||||
if u, _ := models.GetUserByUsername(req.Username); u != nil {
|
||||
_ = models.AddLoginLog(u.ID, req.Username, c.ClientIP(), c.GetHeader("User-Agent"))
|
||||
}
|
||||
|
||||
appG.CResponse(http.StatusOK, "登录成功!", map[string]string{
|
||||
"token": token,
|
||||
})
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
package v1
|
||||
|
||||
import (
|
||||
"github.com/gin-gonic/gin"
|
||||
"message-nest/pkg/app"
|
||||
"message-nest/pkg/e"
|
||||
"message-nest/models"
|
||||
)
|
||||
|
||||
// GetRecentLoginLogs 最近登录日志(默认8条)
|
||||
func GetRecentLoginLogs(c *gin.Context) {
|
||||
appG := app.Gin{C: c}
|
||||
logs, err := models.GetRecentLoginLogs(8)
|
||||
if err != nil {
|
||||
appG.CResponse(e.ERROR, err.Error(), nil)
|
||||
return
|
||||
}
|
||||
appG.CResponse(e.SUCCESS, "success", gin.H{
|
||||
"lists": logs,
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -82,6 +82,9 @@ func InitRouter(f embed.FS) *gin.Engine {
|
||||
apiV1.POST("/settings/reset", v1.RestDefaultSettings)
|
||||
apiV1.GET("/settings/getsetting", v1.GetUserSetting)
|
||||
|
||||
// login logs
|
||||
apiV1.GET("/loginlogs/recent", v1.GetRecentLoginLogs)
|
||||
|
||||
// statistic
|
||||
apiV1.GET("/statistic", v1.GetStatisticData)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user