First Commit
This commit is contained in:
+47
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Erp\Controllers;
|
||||
|
||||
use App\Controllers\BaseAdminController;
|
||||
use Modules\Erp\Models\Customer;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
|
||||
class CustomerController extends BaseAdminController
|
||||
{
|
||||
public function index(Request $request): Response
|
||||
{
|
||||
$page = (int)$request->query->get('page', 1);
|
||||
$perPage = 15;
|
||||
$offset = ($page - 1) * $perPage;
|
||||
|
||||
$query = Customer::query();
|
||||
|
||||
// Busca
|
||||
$search = $request->query->get('q');
|
||||
if (!empty($search)) {
|
||||
$query->where(function($q) use ($search) {
|
||||
$q->where('cliente_razaosocial', 'like', "%{$search}%")
|
||||
->orWhere('cliente_nfantasia', 'like', "%{$search}%")
|
||||
->orWhere('cliente_email', 'like', "%{$search}%")
|
||||
->orWhere('cliente_cnpj', 'like', "%{$search}%")
|
||||
->orWhere('cliente_ccpf', 'like', "%{$search}%");
|
||||
});
|
||||
}
|
||||
|
||||
$total = $query->count();
|
||||
$customers = $query->orderBy('cliente_id', 'desc')
|
||||
->skip($offset)
|
||||
->take($perPage)
|
||||
->get();
|
||||
|
||||
return $this->renderAdminView('@erp/admin/customers/index.twig', [
|
||||
'customers' => $customers,
|
||||
'total' => $total,
|
||||
'page' => $page,
|
||||
'perPage' => $perPage,
|
||||
'totalPages' => ceil($total / $perPage),
|
||||
'search' => $search
|
||||
]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user