Revision 637 (by ahitrov, 2017/01/01 20:51:20) |
Coupon usage report
|
<fieldset>
<legend>Отчет по купонам</legend>
<form name="searchdoc" action="coupons_report.html" method="GET" target="_blank">
<table width="100%" border="0" cellpadding="0" cellspacing="6" class="tform">
<tr><td><b>Выберите статус:</b></td></tr>
<tr><td><& "/contenido/components/select.msn", name=>'status', values => \@status_values, check => $status, style=>'width:100%;font-size:8pt;' &></td>
<%doc>
<tr><td><b>Сортировать:</b></td></tr>
<tr><td><& "/contenido/components/select.msn", name=>'sort', values => \@sorts, style=>'width:100%;font-size:8pt;' &></td>
<tr><td height="5"></td></tr>
</%doc>
<tr><td><b>Диапазон дат:</b></td></tr>
<tr><td><& "/contenido/components/inputs/date.msn", name => 'from' &></td></tr>
<tr><td><& "/contenido/components/inputs/date.msn", name => 'to' &></td></tr>
<tr><td><b>Отобразить:</b></td></tr>
<tr><td><& "/contenido/components/select.msn", name=>'show', values => \@shows, style=>'width:100%;font-size:8pt;' &></td>
<tr><td><input type="submit" value="Отобрать" class="btn"></td></tr>
</table>
</form>
</fieldset>
<%once>
my @sorts = (
'id' => 'по номеру заказа',
'uid' => 'по пользователю',
);
my @shows = (
'html' => 'В виде HTML',
'tsv' => 'Tab-separated текст',
);
my @status_values = (
'', 'Без учета статуса',
'1', 'Активные',
'0', 'Неактивные',
'3', 'Использованные',
'2', 'Прототипы',
'4', 'Обработанные',
);
</%once>
<%args>
$status => ''
</%args>
<%init>
my @props = webshop::Coupon->new($keeper)->structure;
my ($prop_status) = grep { $_->{attr} eq 'status' } @props;
my @coupons = ('' => 'без учета купонов');
my $sql = "select id, name from webshop_coupons where class = 'webshop::Coupon' and ( status in (0, 4) or (status in (1,3) and pid = 0) ) order by status = 1 desc, status, dtime desc";
my $que = $keeper->SQL->prepare($sql);
$que->execute();
while ( my $ln = $que->fetchrow_hashref ) {
push @coupons, ($ln->{id}, $ln->{name});
}
</%init>