package impl import ( "health-ai/internal/database" "health-ai/internal/model" ) type UserRepositoryImpl struct{} func NewUserRepository() *UserRepositoryImpl { return &UserRepositoryImpl{} } func (r *UserRepositoryImpl) Create(user *model.User) error { return database.DB.Create(user).Error } func (r *UserRepositoryImpl) GetByID(id uint) (*model.User, error) { var user model.User err := database.DB.First(&user, id).Error return &user, err } func (r *UserRepositoryImpl) GetByPhone(phone string) (*model.User, error) { var user model.User err := database.DB.Where("phone = ?", phone).First(&user).Error return &user, err } func (r *UserRepositoryImpl) GetByEmail(email string) (*model.User, error) { var user model.User err := database.DB.Where("email = ?", email).First(&user).Error return &user, err } func (r *UserRepositoryImpl) Update(user *model.User) error { return database.DB.Save(user).Error } func (r *UserRepositoryImpl) UpdateSurveyStatus(userID uint, completed bool) error { return database.DB.Model(&model.User{}).Where("id = ?", userID).Update("survey_completed", completed).Error }