luchob/softuni-feb2023

Проблем с buy button и free forecast

Closed this issue · 3 comments

Здравей,
Ако може малко помощ тъй като имам проблем с buy button-а на проекта ми, защото когато един юзър си купи прогноза и ако реши и друг юзър да си купи същата прогноза тя изчезва от таблицата My Forecast на първия юзър, който вече си е купил прогнозата.
Също така имам проблем и не мога да визуализирам Free Forecast-ите и прогнозите които са безплатни. Мисля, че Рест контролера ми е наред, но незнам как да изкарам с free-forecast.html да ми излизат прогнозите в таблицата за тях.
Ето гитхъб линк към проекта ми: https://github.com/GeorgiPetrov4400/Trading-Forecasts/tree/main/TradingForecasts/TradingForecasts
Благодаря предварително :)

luchob commented

Здравей! Относно първия ти проблем, виждам как купуваш прогноза:

public void buyForecast(Long id, Principal principal) {
        Forecast forecast = forecastRepository.findById(id).orElse(null);

        Optional<User> buyerOptional = userRepository.findByUsername(principal.getName());

        if (buyerOptional.isPresent()) {
            User buyer = userRepository.findById(buyerOptional.get().getId()).orElse(null);

            buyer.getForecasts().add(forecast);
            forecast.setBuyer(List.of(buyer)); 
            forecastRepository.saveAndFlush(forecast);
            userRepository.save(buyer);
        }
    }

Интересният ред е тук:

            forecast.setBuyer(List.of(buyer)); 

На съществуващата прогноза се сетва купувач, който е единствен => тя ще изчезне от другия купувач.

luchob commented

Вторият ти въпрос... Доколкото разбирам, искаш да ги изтеглиш от рест контролер и да ги покажеш. Това може да стане с JavaScript и примерна реализация може да видиш ако разгледаш нашето демо с книгите.

Поздрави,
Л.

Благодаря :) Първия проблем го оправих, а втория ще ми отнеме повече време тъй като трябва да гледам пак Javascript :)