package logic import ( "context" "errors" "spark-server/internal/pkg/errs" ) func (s *Service) PurgeUser(ctx context.Context, userID int64) error { if s == nil || s.repo == nil || userID <= 0 { return nil } rows, err := s.repo.ListAllByUser(ctx, userID) if err != nil { return err } for _, row := range rows { if row == nil { continue } if err := s.repo.Delete(ctx, userID, row.ID); err != nil && !errors.Is(err, errs.ErrNotFound) { return err } s.deleteFavoriteMedia(ctx, row.Content) } return nil }