modified: serv_nginx/api_bb/internal/handlers/handler_util.go

modified:   serv_nginx/api_bb/internal/handlers/handlers.go
	modified:   serv_nginx/api_bb/internal/handlers/user.go
	modified:   serv_nginx/api_bb/internal/service/user_service.go
change responseData for getProfile endPoint api_bb
This commit is contained in:
2025-10-13 04:55:37 +05:00
parent 61e8415f8b
commit 82c644dc9c
4 changed files with 14 additions and 0 deletions
@@ -11,6 +11,7 @@ func toUserResponse(user *models.User) UserResponse {
Email: user.Email,
FirstName: user.FirstName,
LastName: user.LastName,
Avatar: user.Avatar,
Phone: user.Phone,
Experience: user.Experience,
Goals: user.Goals,
@@ -13,6 +13,7 @@ import (
type Handler struct {
healthHandler *HealthHandler
authHandler *AuthHandler
userHandler *UserHandler
// Здесь будут добавлены другие обработчики
// userHandler *UserHandler
// eventHandler *EventHandler
@@ -29,14 +30,17 @@ func NewHandler(db *gorm.DB, cfg *config.Config) *Handler {
// Инициализация сервисов
jwtService := service.NewJWTService(cfg.JWTSecret)
authService := service.NewAuthService(userRepo, jwtService, baseLogger)
userService := service.NewUserService(userRepo, jwtService, baseLogger)
// Инициализация обработчиков
healthHandler := NewHealthHandler()
authHandler := NewAuthHandler(authService, jwtService)
userHandler := NewUserHandler(&userService)
return &Handler{
healthHandler: healthHandler,
authHandler: authHandler,
userHandler: userHandler,
}
}
@@ -48,3 +52,7 @@ func (h *Handler) HealthHandler() *HealthHandler {
func (h *Handler) AuthHandler() *AuthHandler {
return h.authHandler
}
func (h *Handler) UserHandler() *UserHandler { // ДОБАВЛЕН геттер для UserHandler
return h.userHandler
}
@@ -44,6 +44,7 @@ type UserResponse struct {
Email string `json:"email"`
FirstName string `json:"firstName"`
LastName string `json:"lastName"`
Avatar string `json:"avatar"`
Phone string `json:"phone"`
Experience string `json:"experience"`
Goals string `json:"goals"`
@@ -53,6 +54,7 @@ type UserResponse struct {
UpdatedAt time.Time `json:"updated_at"`
}
func (h *UserHandler) GetProfile(w http.ResponseWriter, r *http.Request) {
h.logger.Info("handling get profile request",
@@ -71,6 +73,7 @@ func (h *UserHandler) GetProfile(w http.ResponseWriter, r *http.Request) {
h.logger.Info("profile retrieved successfully",
zap.Uint("user_id", user.ID),
zap.String("email", user.Email),
zap.String("avatar", user.Avatar),
)
utils.RespondWithJSON(w, http.StatusOK, toUserResponse(user))
@@ -54,11 +54,13 @@ func (s *authService) UpdateProfile(user *models.User) error {
// Убеждаемся, что email не меняется
user.Email = existingUser.Email
user.Avatar = existingUser.Avatar
updateData := &models.User{
ID: user.ID,
FirstName: user.FirstName,
LastName: user.LastName,
Avatar: user.Avatar,
Phone: user.Phone,
Experience: user.Experience,
Goals: user.Goals,