add search and pagination at Customer maps, fix query
This commit is contained in:
parent
980af58eb1
commit
b6fde35eb6
@ -2,6 +2,13 @@
|
|||||||
|
|
||||||
# CHANGELOG
|
# CHANGELOG
|
||||||
|
|
||||||
|
## 2024.4.29
|
||||||
|
|
||||||
|
- Maps Pagination
|
||||||
|
- Maps Search
|
||||||
|
- Fix extend logic
|
||||||
|
- Fix logic customer recharge to not delete when customer not change the plan
|
||||||
|
|
||||||
## 2024.4.23
|
## 2024.4.23
|
||||||
|
|
||||||
- Fix Pagination Voucher
|
- Fix Pagination Voucher
|
||||||
|
@ -20,7 +20,6 @@ class Paginator
|
|||||||
}
|
}
|
||||||
$url .= '&p=';
|
$url .= '&p=';
|
||||||
$totalReq = $query->count();
|
$totalReq = $query->count();
|
||||||
$next = $page + 1;
|
|
||||||
$lastpage = ceil($totalReq / $per_page);
|
$lastpage = ceil($totalReq / $per_page);
|
||||||
$lpm1 = $lastpage - 1;
|
$lpm1 = $lastpage - 1;
|
||||||
$limit = $per_page;
|
$limit = $per_page;
|
||||||
|
@ -17,8 +17,14 @@ if (empty($action)) {
|
|||||||
|
|
||||||
switch ($action) {
|
switch ($action) {
|
||||||
case 'customer':
|
case 'customer':
|
||||||
|
if(!empty(_req('search'))){
|
||||||
$c = ORM::for_table('tbl_customers')->find_many();
|
$search = _req('search');
|
||||||
|
$query = ORM::for_table('tbl_customers')->whereRaw("coordinates != '' AND fullname LIKE '%$search%' OR username LIKE '%$search%' OR email LIKE '%$search%' OR phonenumber LIKE '%$search%'")->order_by_desc('fullname');
|
||||||
|
$c = Paginator::findMany($query, ['search' => $search], 50);
|
||||||
|
}else{
|
||||||
|
$query = ORM::for_table('tbl_customers')->where_not_equal('coordinates','');
|
||||||
|
$c = Paginator::findMany($query, ['search'=>''], 50);
|
||||||
|
}
|
||||||
$customerData = [];
|
$customerData = [];
|
||||||
|
|
||||||
foreach ($c as $customer) {
|
foreach ($c as $customer) {
|
||||||
@ -34,7 +40,7 @@ switch ($action) {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$ui->assign('search', $search);
|
||||||
$ui->assign('customers', $customerData);
|
$ui->assign('customers', $customerData);
|
||||||
$ui->assign('xheader', '<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.3/dist/leaflet.css">');
|
$ui->assign('xheader', '<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.3/dist/leaflet.css">');
|
||||||
$ui->assign('_title', Lang::T('Customer Geo Location Information'));
|
$ui->assign('_title', Lang::T('Customer Geo Location Information'));
|
||||||
|
@ -12,7 +12,8 @@
|
|||||||
<div class="input-group-addon">
|
<div class="input-group-addon">
|
||||||
<span class="fa fa-search"></span>
|
<span class="fa fa-search"></span>
|
||||||
</div>
|
</div>
|
||||||
<input type="text" name="name" class="form-control" placeholder="{Lang::T('Search by Name')}...">
|
<input type="text" name="name" class="form-control"
|
||||||
|
placeholder="{Lang::T('Search by Name')}...">
|
||||||
<div class="input-group-btn">
|
<div class="input-group-btn">
|
||||||
<button class="btn btn-success" type="submit">{Lang::T('Search')}</button>
|
<button class="btn btn-success" type="submit">{Lang::T('Search')}</button>
|
||||||
</div>
|
</div>
|
||||||
@ -20,7 +21,8 @@
|
|||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<a href="{$_url}bandwidth/add" class="btn btn-primary btn-block"><i class="ion ion-android-add"> </i> {Lang::T('New Bandwidth')}</a>
|
<a href="{$_url}bandwidth/add" class="btn btn-primary btn-block"><i class="ion ion-android-add">
|
||||||
|
</i> {Lang::T('New Bandwidth')}</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
@ -37,11 +39,16 @@
|
|||||||
{foreach $d as $ds}
|
{foreach $d as $ds}
|
||||||
<tr>
|
<tr>
|
||||||
<td>{$ds['name_bw']}</td>
|
<td>{$ds['name_bw']}</td>
|
||||||
<td>{$ds['rate_down']} {$ds['rate_down_unit']} / {$ds['rate_up']} {$ds['rate_up_unit']}</td>
|
<td>{$ds['rate_down']} {$ds['rate_down_unit']} / {$ds['rate_up']} {$ds['rate_up_unit']}
|
||||||
|
</td>
|
||||||
<td>{$ds['burst']}</td>
|
<td>{$ds['burst']}</td>
|
||||||
<td>
|
<td>
|
||||||
<a href="{$_url}bandwidth/edit/{$ds['id']}" class="btn btn-sm btn-warning">{Lang::T('Edit')}</a>
|
<a href="{$_url}bandwidth/edit/{$ds['id']}"
|
||||||
<a href="{$_url}bandwidth/delete/{$ds['id']}" id="{$ds['id']}" class="btn btn-danger btn-sm" onclick="return confirm('{Lang::T('Delete')}?')" ><i class="glyphicon glyphicon-trash"></i></a>
|
class="btn btn-sm btn-warning">{Lang::T('Edit')}</a>
|
||||||
|
<a href="{$_url}bandwidth/delete/{$ds['id']}" id="{$ds['id']}"
|
||||||
|
class="btn btn-danger btn-sm"
|
||||||
|
onclick="return confirm('{Lang::T('Delete')}?')"><i
|
||||||
|
class="glyphicon glyphicon-trash"></i></a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{/foreach}
|
{/foreach}
|
||||||
|
@ -1,8 +1,24 @@
|
|||||||
{include file="sections/header.tpl"}
|
{include file="sections/header.tpl"}
|
||||||
|
|
||||||
<!-- Map container div -->
|
|
||||||
|
|
||||||
<div id="map" class="well" style="width: '100%'; height: 78vh; margin: 20px auto"></div>
|
<form id="site-search" method="post" action="{$_url}map/customer/">
|
||||||
|
<input type="hidden" name="_route" value="map/customer">
|
||||||
|
<div class="input-group">
|
||||||
|
<div class="input-group-addon">
|
||||||
|
<span class="fa fa-search"></span>
|
||||||
|
</div>
|
||||||
|
<input type="text" name="search" class="form-control" value="{$search}"
|
||||||
|
placeholder="{Lang::T('Search')}...">
|
||||||
|
<div class="input-group-btn">
|
||||||
|
<button class="btn btn-success" type="submit">{Lang::T('Search')}</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<!-- Map container div -->
|
||||||
|
<div id="map" class="well" style="width: '100%'; height: 70vh; margin: 20px auto"></div>
|
||||||
|
|
||||||
|
{include file="pagination.tpl"}
|
||||||
|
|
||||||
{literal}
|
{literal}
|
||||||
<script>
|
<script>
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
{
|
{
|
||||||
"version": "2024.4.23"
|
"version": "2024.4.29"
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user