В моем проекте электронной коммерции Laravel
У меня есть 2 таблицы в базе данных:
cart [c_id(pk), laundry, l1, dryclean, dc1, dc2, dc3, shop_id]
price [p_id, p_l1, p_dc1, p_dc2, p_dc3, shop_id]
В контроллере я получаю цены на вход в магазин, то есть в одну строку
$price = DB::table('price')->where('price.shop_id', '=', auth()->id())->get();
также для получения строки из таблицы корзины. Я беру самую последнюю запись
$cart = DB::table('cart')->latest()->first();
Колонки для белья и химчистки из таблицы корзины могут иметь два значения: ДА и НЕТ. Если для белья указано «да», то пользователь также вводит l1 (это количество), иначе ноль.
аналогично, для сухой очистки столбец может иметь два значения YES и NO. Если ДА, то пользователь также вводит dc1, dc2, dc3 (количество предметов).
Теперь я хочу получить общую сумму на странице оформления заказа от контроллера, включая условия, при которых проверяются значения белья и химчистки.
До сих пор я вычислял сумму в файле просмотра.
@if ( $cart->dryclean == "no")
@php $c1=0;$c2=0;$c3=0; @endphp
@else
@if (is_null($cart->dc1))
@php $c1=0; @endphp
@else
@php
$a1= $cart->dc1;
$b1 =$price->p_dc1;
$c1= $a1*$b1;
@endphp
@endif
@if (is_null($cart->dc2))
@php $c2=0; @endphp
@else
@php
$a2= $cart->dc2;
$b2 =$price->p_dc2;
$c2= $a2*$b2;
@endphp
@endif
@if (is_null($cart->dc3))
@php $c3=0; @endphp
@else
@php
$a3= $cart->dc3;
$b3 =$price->p_dc3;
$c3= $a3*$b3;
@endphp
@endif
{{ $c1 + $c2 + $c3}} <!-- This is total amount -->
@endif
Пожалуйста, помогите мне написать запросы контроллера, чтобы вычислить общую сумму в самом контроллере и отобразить в представлении.
Заранее спасибо.