1 reports page to rule them all

This commit is contained in:
Ibnu Maksum
2024-07-24 15:56:02 +07:00
parent c0a232797a
commit e53fe225cc
7 changed files with 277 additions and 71 deletions

View File

@ -22,7 +22,7 @@
<div class="row">
<div class="col-md-12">
<div id="printable">
<h4>{Lang::T('All Transactions at Date')}: {date($_c['date_format'], strtotime($mdate))}</h4>
<h4>{Lang::T('All Transactions at Date')}: {Lang::dateAndTimeFormat($sd, $ts)} - {Lang::dateAndTimeFormat($ed, $te)}</h4>
<div class="table-responsive">
<table class="table table-bordered table-condensed table-bordered" style="background: #ffffff">
<th class="text-center">{Lang::T('Username')}</th>

View File

@ -1,29 +1,65 @@
{include file="sections/header.tpl"}
<!-- reports-daily -->
<div class="row">
<div class="col-md-12">
<div class="invoice-wrap">
<div class="clearfix invoice-head">
<h3 class="brand-logo text-uppercase text-bold left mt15">
<span class="text">{Lang::T('Daily Reports')}</span>
</h3>
</div>
<div class="clearfix invoice-subhead mb20">
<div class="group clearfix left">
<p class="text-bold mb5">{Lang::T('All Transactions at Date')}:</p>
<p class="small">{date($_c['date_format'], strtotime($mdate))} {$mtime}</p>
<div class="col-lg-3">
<form method="get" class="form">
<div class="box box-primary box-solid">
<div class="box-header" onclick="showFilter()" style=" cursor: pointer;">
<h3 class="box-title">{Lang::T('Filter')}</h3>
</div>
<div class="group clearfix right">
<a href="{$_url}export/print-by-date" class="btn btn-default" target="_blank"><i
class="ion ion-printer"></i>{Lang::T('Export for Print')}</a>
<a href="{$_url}export/pdf-by-date" class="btn btn-default"><i
class="fa fa-file-pdf-o"></i>{Lang::T('Export to PDF')}</a>
<div id="filter_box" class="box-body hidden-xs hidden-sm hidden-md">
<input type="hidden" name="_route" value="reports">
<label>{Lang::T('Start Date')}</label>
<input type="date" class="form-control" name="sd" value="{$sd}">
<label>{Lang::T('Start time')}</label>
<input type="time" class="form-control" name="ts" value="{$ts}">
<label>{Lang::T('End Date')}</label>
<input type="date" class="form-control" name="ed" value="{$ed}">
<label>{Lang::T('End Time')}</label>
<input type="time" class="form-control" name="te" value="{$te}">
<label>{Lang::T('Type')}</label>
<select class="form-control" name="tps[]" multiple>
{foreach $types as $type}
<option value="{$type}" {if in_array($type, $tps)}selected{/if}>{$type}</option>
{/foreach}
</select>
<label>{Lang::T('Internet Plans')}</label>
<select class="form-control" name="plns[]" multiple>
{foreach $plans as $plan}
<option value="{$plan}" {if in_array($plan, $plns)}selected{/if}>{$plan}</option>
{/foreach}
</select>
<label>{Lang::T('Methods')}</label>
<select class="form-control" name="mts[]" multiple>
{foreach $methods as $method}
<option value="{$method}" {if in_array($method, $mts)}selected{/if}>{$method}</option>
{/foreach}
</select>
<label>{Lang::T('Routers')}</label>
<select class="form-control" name="rts[]" multiple>
{foreach $routers as $router}
<option value="{$router}" {if in_array($router, $rts)}selected{/if}>{Lang::T($router)}</option>
{/foreach}
</select>
<input type="submit" class="btn btn-success btn-block">
</div>
</div>
</form>
</div>
<div class="col-lg-9">
<div class="box box-primary box-solid">
<div class="table-responsive">
<table class="table table-bordered table-condensed">
<thead>
<tr>
<th>
<a href="{$_url}export/print-by-date&{$filter}" class="btn btn-default" target="_blank"><i
class="ion ion-printer"></i></a>
<a href="{$_url}export/pdf-by-date&{$filter}" class="btn btn-default"><i
class="fa fa-file-pdf-o"></i></a>
</th>
<th colspan="7"></th>
</tr>
<tr>
<th>{Lang::T('Username')}</th>
<th>{Lang::T('Type')}</th>
@ -48,19 +84,47 @@
<td>{$ds['routers']}</td>
</tr>
{/foreach}
<tr>
<th>{Lang::T('Total')}</th>
<td colspan="2"></td>
<th class="text-right">{Lang::moneyFormat($dr)}</th>
<td colspan="4"></td>
</tr>
</tbody>
</table>
</div>
{include file="pagination.tpl"}
<div class="clearfix text-right total-sum mb10">
<h4 class="text-uppercase text-bold">{Lang::T('Total Income')}:</h4>
<h3 class="sum">{Lang::moneyFormat($dr)}</h3>
<div class="box-footer">
<p class="text-center small text-info">{Lang::T('All Transactions at Date')}:
{Lang::dateAndTimeFormat($sd, $ts)} - {Lang::dateAndTimeFormat($ed, $te)}</p>
</div>
<p class="text-center small text-info">{Lang::T('All Transactions at Date')}:
{date($_c['date_format'], strtotime($mdate))} {$mtime}</p>
</div>
</div>
</div>
{include file="pagination.tpl"}
<div class="bs-callout bs-callout-warning bg-gray">
<h4>Information</h4>
<p>Export and Print will show all data without pagination.</p>
</div>
<script>
var isShow = false;
function showFilter() {
if (isShow) {
$("#filter_box").addClass("hidden-xs");
$("#filter_box").addClass("hidden-sm");
$("#filter_box").addClass("hidden-md");
isShow = false;
} else {
// remove class
$("#filter_box").removeClass("hidden-xs");
$("#filter_box").removeClass("hidden-sm");
$("#filter_box").removeClass("hidden-md");
isShow = true;
}
}
</script>
{include file="sections/footer.tpl"}

View File

@ -336,10 +336,8 @@
</span>
</a>
<ul class="treeview-menu">
<li {if $_routes[1] eq 'daily-report' }class="active" {/if}><a
href="{$_url}reports/daily-report">{Lang::T('Daily Reports')}</a></li>
<li {if $_routes[1] eq 'by-period' }class="active" {/if}><a
href="{$_url}reports/by-period">{Lang::T('Period Reports')}</a></li>
<li {if $_system_menu eq 'reports' }class="active" {/if}><a
href="{$_url}reports">{Lang::T('Daily Reports')}</a></li>
<li {if $_routes[1] eq 'activation' }class="active" {/if}><a
href="{$_url}reports/activation">{Lang::T('Activation History')}</a></li>
{$_MENU_REPORTS}