feat: 添加用户认证模块

- main.go: 初始化 User/Role 模型、UserRepository、AuthService 和 AuthHandler
- 添加 /auth/register、/auth/login、/auth/me 路由
- auth_handler.go: 新增 GetCurrentUser 接口获取当前用户信息
- .gitignore: 添加 .bitfun/ 目录忽略

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-11 10:25:50 +08:00
parent cea49bb685
commit 51a1202168
3 changed files with 46 additions and 1 deletions

View File

@@ -78,3 +78,27 @@ func (h *AuthHandler) Register(c *gin.Context) {
"email": user.Email,
})
}
// GetCurrentUser 获取当前登录用户信息
func (h *AuthHandler) GetCurrentUser(c *gin.Context) {
userID, exists := c.Get("user_id")
if !exists {
c.JSON(http.StatusUnauthorized, gin.H{"error": "user not found in context"})
return
}
user, err := h.authService.GetUserByID(userID.(string))
if err != nil {
c.JSON(http.StatusNotFound, gin.H{"error": "user not found"})
return
}
c.JSON(http.StatusOK, gin.H{
"id": user.ID,
"username": user.Username,
"email": user.Email,
"role_id": user.RoleID,
"is_active": user.IsActive,
"created_at": user.CreatedAt,
})
}