From fa5c3389f6de381313fa85d20d4b21abf79f2aed Mon Sep 17 00:00:00 2001 From: Ibnu Maksum Date: Sat, 22 Jun 2024 11:21:31 +0700 Subject: [PATCH] Filter in Active Customer --- system/controllers/plan.php | 44 ++++++++-- system/lan/indonesia.json | 9 +- ui/ui/customers.tpl | 8 +- ui/ui/hotspot.tpl | 6 +- ui/ui/plan.tpl | 162 +++++++++++++++++++++--------------- ui/ui/pppoe.tpl | 16 ++-- version.json | 2 +- 7 files changed, 153 insertions(+), 94 deletions(-) diff --git a/system/controllers/plan.php b/system/controllers/plan.php index a2f480e8..ab4b4164 100644 --- a/system/controllers/plan.php +++ b/system/controllers/plan.php @@ -850,18 +850,44 @@ switch ($action) { $ui->assign('xfooter', ''); $ui->assign('_title', Lang::T('Customer')); $search = _post('search'); - if ($search != '') { - $query = ORM::for_table('tbl_user_recharges') - ->whereRaw("username LIKE '%$search%' OR namebp LIKE '%$search%' OR method LIKE '%$search%' OR routers LIKE '%$search%' OR type LIKE '%$search%'") - ->order_by_desc('id'); - $d = Paginator::findMany($query, ['search' => $search]); - } else { - $query = ORM::for_table('tbl_user_recharges')->order_by_desc('id'); - $d = Paginator::findMany($query); + $status = _req('status'); + $router = _req('router'); + $plan = _req('plan'); + $append_url = "&search=" . urlencode($search) + . "&status=" . urlencode($status) + . "&router=" . urlencode($type3) + . "&plan=" . urlencode($plan); + $ui->assign('append_url', $append_url); + $ui->assign('plan', $plan); + $ui->assign('status', $status); + $ui->assign('router', $router); + $ui->assign('search', $search); + $ui->assign('routers', array_column(ORM::for_table('tbl_user_recharges')->distinct()->select("routers")->whereNotEqual('routers', '')->findArray(), 'routers')); + + $plns = ORM::for_table('tbl_user_recharges')->distinct()->select("plan_id")->findArray(); + $ids = array_column($plns, 'plan_id'); + if(count($ids)){ + $ui->assign('plans', ORM::for_table('tbl_plans')->select("id")->select('name_plan')->where_id_in($ids)->findArray()); + }else{ + $ui->assign('plans', []); } + $query = ORM::for_table('tbl_user_recharges')->order_by_desc('id'); + + if ($search != '') { + $query->where_like("username","%$search%"); + } + if (!empty($router)) { + $query->where('routers', $router); + } + if (!empty($plan)) { + $query->where('plan_id', $plan); + } + if (!empty($status) && $status != '-') { + $query->where('status', $status); + } + $d = Paginator::findMany($query, ['search' => $search], 25, $append_url); run_hook('view_list_billing'); #HOOK $ui->assign('d', $d); - $ui->assign('search', $search); $ui->display('plan.tpl'); break; } diff --git a/system/lan/indonesia.json b/system/lan/indonesia.json index 06ae1708..1a1e1cf5 100644 --- a/system/lan/indonesia.json +++ b/system/lan/indonesia.json @@ -514,8 +514,13 @@ "Router_Name___Location": "Nama\/Lokasi Router", "Extend": "Memperpanjang", "City": "Kota", - "": "", "District": "Daerah", "State": "Negara", - "Zip": "Ritsleting" + "Zip": "Kode Pos", + "ago": "yang lalu", + "Created_Date": "Tanggal Dibuat", + "Ascending": "Naik", + "Descending": "Menurun", + "Query": "Query", + "Add": "Menambahkan" } \ No newline at end of file diff --git a/ui/ui/customers.tpl b/ui/ui/customers.tpl index 8a4591ec..534b5941 100644 --- a/ui/ui/customers.tpl +++ b/ui/ui/customers.tpl @@ -66,7 +66,7 @@
- +
- - {Lang::T('Add')} + + +
diff --git a/ui/ui/hotspot.tpl b/ui/ui/hotspot.tpl index f60082e3..3181c6d7 100644 --- a/ui/ui/hotspot.tpl +++ b/ui/ui/hotspot.tpl @@ -70,7 +70,7 @@
-
- -
+ placeholder="{Lang::T('Search')}..." value="{$search}">
- + +
+ +
+
+ +
+
+ +
+
+ +
+
+ + {Lang::T('Recharge Account')} +
-
- {Lang::T('Recharge Account')} -
  -
- - - - - - - - - - - + +
+
{Lang::T('Username')}{Lang::T('Plan Name')}{Lang::T('Type')}{Lang::T('Created On')}{Lang::T('Expires On')}{Lang::T('Method')}{Lang::T('Routers')}{Lang::T('Manage')}
+ + + + + + + + + + + + + + {foreach $d as $ds} + + + + + + + + + - - - {foreach $d as $ds} - - - - - - - - - - - {/foreach} - -
{Lang::T('Username')}{Lang::T('Plan Name')}{Lang::T('Type')}{Lang::T('Created On')}{Lang::T('Expires On')}{Lang::T('Method')}{Lang::T('Location')}{Lang::T('Manage')}
{$ds['username']}{$ds['namebp']}{$ds['type']}{Lang::dateAndTimeFormat($ds['recharged_on'],$ds['recharged_time'])}{Lang::dateAndTimeFormat($ds['expiration'],$ds['time'])}{$ds['method']}{$ds['routers']} + {Lang::T('Edit')} + {if in_array($_admin['user_type'],['SuperAdmin','Admin'])} + + {/if} + {if $ds['status']=='off' && $_c['extend_expired']} + {Lang::T('Extend')} + {/if} +
{$ds['username']}{$ds['namebp']}{$ds['type']}{Lang::dateAndTimeFormat($ds['recharged_on'],$ds['recharged_time'])}{Lang::dateAndTimeFormat($ds['expiration'],$ds['time'])}{$ds['method']}{$ds['routers']} - {Lang::T('Edit')} - {if in_array($_admin['user_type'],['SuperAdmin','Admin'])} - - {/if} - {if $ds['status']=='off' && $_c['extend_expired']} - {Lang::T('Extend')} - {/if} -
-
- {include file="pagination.tpl"} + {/foreach} + + + {include file="pagination.tpl"} -{include file="sections/footer.tpl"} +{include file="sections/footer.tpl"} \ No newline at end of file diff --git a/ui/ui/pppoe.tpl b/ui/ui/pppoe.tpl index 4413ea54..a35904e0 100644 --- a/ui/ui/pppoe.tpl +++ b/ui/ui/pppoe.tpl @@ -70,7 +70,7 @@