Revision 777 (by ahitrov, 2019/05/07 09:43:31) Get with items

<style>

  .number { text-align:right; padding-right:5px; }
  .blue { color:blue; }
  input.text { border:1px solid gray; }

</style>
% if ( @$basket ) {
<form action="recount.html" method="post">
<table width="100%" border="0" cellpadding="4" cellspacing="0" class="tlistdocs" bgcolor="white">
<tr bgcolor="#efefef">
<th><% $context ? '&nbsp;' : '<img src="/contenido/i/actions/delete.gif">' %></th>
<th>Артикул</th>
<th>1С</th>
<th>Название</th>
<th>Цвет</th>
<th>Размер</th>
<th>Цена</th>
<th>Кол-во</th>
<th>Сумма</th>
</tr>

%	foreach my $obj ( @$basket ) {
%		$total_num += $obj->number;
%		$total_sum += $obj->number * $obj->price;
<tr><td>\
%		if ( $context ) {
&nbsp;\
%		} else {
<input type="checkbox" name="delete" value="<% $obj->id %>">\
%		}
</td>
<td><% $obj->articul %></td>
<td><% exists $obj->{item} ? $obj->{item}->ext_id : '' %></td>
<td><a href="/contenido/document.html?class=<% $obj->class %>&id=<% $obj->id %>" target="_blank"><% $obj->name %></a></td>
<td><% $obj->colour || '&nbsp;' %></td>
<td><% $obj->size || '&nbsp;' %></td>
%		if ( $context ) {
<td class="number"><% $obj->price %></td>
<td class="number"><% $obj->number %></td>
%		} else {
<td class="number"><input type="text" class="text number" size="8" name="item_<% $obj->id %>.price" value="<% $obj->price %>"></td>
<td class="number"><input type="text" class="text number" size="5" name="item_<% $obj->id %>.num" value="<% $obj->number %>"></td>
%		}
<td class="number"><% $obj->number * $obj->price %></td>
</tr>
%	}

<tr>
<td colspan="6" align="right"><b>Итого товаров</b></td>
<td class="number"><b class="blue"><% $total_num %></b></td>
<td class="number"><b class="blue"><% $total_sum %></b></td>
</tr>
<tr>
<td colspan="6" align="right"><b>Доставка</b></td>
<td class="number" colspan="2"><b class="blue"><% $order->sum_delivery %></b></td>
</tr>
<tr>
<td colspan="6" align="right"><b>Скидка</b></td>
<td class="number" colspan="2"><b class="blue"><% $order->sum_discount || 0 %></b></td>
</tr>
<tr>
<td colspan="6" align="right"><b>Итого с доставкой</b></td>
<td class="number" colspan="2"><b class="blue"><% $order->sum_total %></b></td>
</tr>

</table>
%	unless ( $context ) {
<div class="number"><input type="submit" name="update" value="Пересчитать" class="input_btn"></div>
%	}
%	if ( ref $filter_params eq 'HASH' ) {
%		while ( my ($key, $value) = each %$filter_params ) {
%			next    if grep { $_->{attr} eq $key } $order->structure();
<input type="hidden" name="<% $key %>" value="<% $value %>">
%		}
%	}
<input type="hidden" name="id" value="<% $order->id %>">
</form>

%	if ( @coupons ) {
<table width="100%" border="0" cellpadding="4" cellspacing="0" class="tlistdocs" bgcolor="white">
<tr bgcolor="#efefef">
<th>Использованные купоны</th>
<th>Скидка</th>
</tr>

%		foreach my $coupon ( @coupons ) {
<tr>
<td><% $coupon->code %></td>
<td class="number" colspan="2"><b class="blue"><% $coupon->discount %></b></td>
</tr>
%		}

</table>
%	}

% } else {
<div style="color:red; font-size:110%; margin:20px 0;">Заказ пустой</div>
% }
<%args>

	$order	=> undef
	$filter_params	=> undef
	$context	=> undef

</%args>
<%init>

   return	unless ref $order;
   my $basket = $keeper->{webshop}->get_basket(
		order_id	=> $order->id,
		status		=> 1,
		with_products	=> 1,
	) // [];
   my $total_sum = 0;
   my $total_num = 0;

   my @coupons = $keeper->get_documents (
			class	=> 'webshop::Coupon',
			lclass	=> 'webshop::OrderCouponLink',
			lsource	=> $order->id,
	)	if $order->sum_discount;

</%init>