Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony][SF][SF2] Obliczenia na podstawie dwóch encji
Forum PHP.pl > Forum > PHP > Frameworki
alfredNN
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
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"

  1. SELECT
  2. SUM(p.min),
  3. SUM(p.max)
  4. FROM prices p
  5. WHERE p.id IN (23,34);
alfredNN
Cen nie trzymam w bazie gdyż muszą być generowane z każdym zapytaniem, testuje jeszcze jedno rozwiązanie oparte o service.
Puszy
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
w bazie trzymam dane giełdy i dane analiz,
Puszy
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.