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:
@@ -11,6 +11,7 @@ func toUserResponse(user *models.User) UserResponse {
|
|||||||
Email: user.Email,
|
Email: user.Email,
|
||||||
FirstName: user.FirstName,
|
FirstName: user.FirstName,
|
||||||
LastName: user.LastName,
|
LastName: user.LastName,
|
||||||
|
Avatar: user.Avatar,
|
||||||
Phone: user.Phone,
|
Phone: user.Phone,
|
||||||
Experience: user.Experience,
|
Experience: user.Experience,
|
||||||
Goals: user.Goals,
|
Goals: user.Goals,
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import (
|
|||||||
type Handler struct {
|
type Handler struct {
|
||||||
healthHandler *HealthHandler
|
healthHandler *HealthHandler
|
||||||
authHandler *AuthHandler
|
authHandler *AuthHandler
|
||||||
|
userHandler *UserHandler
|
||||||
// Здесь будут добавлены другие обработчики
|
// Здесь будут добавлены другие обработчики
|
||||||
// userHandler *UserHandler
|
// userHandler *UserHandler
|
||||||
// eventHandler *EventHandler
|
// eventHandler *EventHandler
|
||||||
@@ -29,14 +30,17 @@ func NewHandler(db *gorm.DB, cfg *config.Config) *Handler {
|
|||||||
// Инициализация сервисов
|
// Инициализация сервисов
|
||||||
jwtService := service.NewJWTService(cfg.JWTSecret)
|
jwtService := service.NewJWTService(cfg.JWTSecret)
|
||||||
authService := service.NewAuthService(userRepo, jwtService, baseLogger)
|
authService := service.NewAuthService(userRepo, jwtService, baseLogger)
|
||||||
|
userService := service.NewUserService(userRepo, jwtService, baseLogger)
|
||||||
|
|
||||||
// Инициализация обработчиков
|
// Инициализация обработчиков
|
||||||
healthHandler := NewHealthHandler()
|
healthHandler := NewHealthHandler()
|
||||||
authHandler := NewAuthHandler(authService, jwtService)
|
authHandler := NewAuthHandler(authService, jwtService)
|
||||||
|
userHandler := NewUserHandler(&userService)
|
||||||
|
|
||||||
return &Handler{
|
return &Handler{
|
||||||
healthHandler: healthHandler,
|
healthHandler: healthHandler,
|
||||||
authHandler: authHandler,
|
authHandler: authHandler,
|
||||||
|
userHandler: userHandler,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -48,3 +52,7 @@ func (h *Handler) HealthHandler() *HealthHandler {
|
|||||||
func (h *Handler) AuthHandler() *AuthHandler {
|
func (h *Handler) AuthHandler() *AuthHandler {
|
||||||
return h.authHandler
|
return h.authHandler
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (h *Handler) UserHandler() *UserHandler { // ДОБАВЛЕН геттер для UserHandler
|
||||||
|
return h.userHandler
|
||||||
|
}
|
||||||
|
|||||||
@@ -44,6 +44,7 @@ type UserResponse struct {
|
|||||||
Email string `json:"email"`
|
Email string `json:"email"`
|
||||||
FirstName string `json:"firstName"`
|
FirstName string `json:"firstName"`
|
||||||
LastName string `json:"lastName"`
|
LastName string `json:"lastName"`
|
||||||
|
Avatar string `json:"avatar"`
|
||||||
Phone string `json:"phone"`
|
Phone string `json:"phone"`
|
||||||
Experience string `json:"experience"`
|
Experience string `json:"experience"`
|
||||||
Goals string `json:"goals"`
|
Goals string `json:"goals"`
|
||||||
@@ -53,6 +54,7 @@ type UserResponse struct {
|
|||||||
UpdatedAt time.Time `json:"updated_at"`
|
UpdatedAt time.Time `json:"updated_at"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
func (h *UserHandler) GetProfile(w http.ResponseWriter, r *http.Request) {
|
func (h *UserHandler) GetProfile(w http.ResponseWriter, r *http.Request) {
|
||||||
|
|
||||||
h.logger.Info("handling get profile 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",
|
h.logger.Info("profile retrieved successfully",
|
||||||
zap.Uint("user_id", user.ID),
|
zap.Uint("user_id", user.ID),
|
||||||
zap.String("email", user.Email),
|
zap.String("email", user.Email),
|
||||||
|
zap.String("avatar", user.Avatar),
|
||||||
)
|
)
|
||||||
|
|
||||||
utils.RespondWithJSON(w, http.StatusOK, toUserResponse(user))
|
utils.RespondWithJSON(w, http.StatusOK, toUserResponse(user))
|
||||||
|
|||||||
@@ -54,11 +54,13 @@ func (s *authService) UpdateProfile(user *models.User) error {
|
|||||||
|
|
||||||
// Убеждаемся, что email не меняется
|
// Убеждаемся, что email не меняется
|
||||||
user.Email = existingUser.Email
|
user.Email = existingUser.Email
|
||||||
|
user.Avatar = existingUser.Avatar
|
||||||
|
|
||||||
updateData := &models.User{
|
updateData := &models.User{
|
||||||
ID: user.ID,
|
ID: user.ID,
|
||||||
FirstName: user.FirstName,
|
FirstName: user.FirstName,
|
||||||
LastName: user.LastName,
|
LastName: user.LastName,
|
||||||
|
Avatar: user.Avatar,
|
||||||
Phone: user.Phone,
|
Phone: user.Phone,
|
||||||
Experience: user.Experience,
|
Experience: user.Experience,
|
||||||
Goals: user.Goals,
|
Goals: user.Goals,
|
||||||
|
|||||||
Reference in New Issue
Block a user