alfredNN
10.03.2017, 11:23:10
Witam, mam problem z obliczeniem ceny z dwóch encji.
Potrzebuję obliczyć cenę tylko nie wiem gdzie i jak zrobić obliczenia, aby można było pobrać dane.
dane do pobrania to:
- cena
- cena minimalna
- cena maksymalna
- i kilka innych danych (prowizje itd)
Próbowałem umieścić logikę obliczeń w kontrolerze i service ale napotkałem wiele problemów, najłatwiej byłoby umieścić to w widoku twig, ale nie wiem czy to dobre rozwiązanie.
Puszy
10.03.2017, 12:52:19
Pobierz dwie encje np. poprzez findBy lub cusotmową funkcję w repo. Przeiteruj po tablicy wyników i zsumuj wartości a następnie przekaż je do widoku jeżeli tego potrzebujesz. Drugie rozwiązanie to napisz SQL który by to sumował, korzystając z query buildera lub "czystym SQL"
SELECT
SUM(p.min),
SUM(p.max)
FROM prices p
WHERE p.id IN (23,34);
alfredNN
10.03.2017, 12:56:35
Cen nie trzymam w bazie gdyż muszą być generowane z każdym zapytaniem, testuje jeszcze jedno rozwiązanie oparte o service.
Puszy
10.03.2017, 13:13:58
Jeżeli nie są w bazie a twierdzisz że chcesz obliczać dane z encji to skąd je bierzesz i w którym momencie?
alfredNN
10.03.2017, 14:01:50
w bazie trzymam dane giełdy i dane analiz,
Puszy
10.03.2017, 14:08:13
Jak dla mnie za mało powiedziałeś o swoim problemie. Jeżeli nie masz cen w encji to jak chcesz wyliczyć sumę cen z encji? Wstrzyknij dane, zawierające ceny, per encja do już pobranej encji i operuj dalej na encjach lub utwórz jakiś model w którym będziesz ładował dane z encji, dane o cenach i tam rób wyliczenia które zwrócisz do kontrolera a ten z kolei przepcha to do widoku. Ponadto pytanie czy potrzebujesz tutaj encje, jeżeli posiadasz ceny i wiesz która powinna być przypisana do której encji to powinieneś działać tylko w obrębie tych danych, wyjątkiem jest dociągnięcie dodatkowych danych z encji, np stawka VAT czy też waluta.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.