|
|
|
@ -15,32 +15,37 @@ class QueueRepository extends Repository
|
|
|
|
|
function list(array $params = []): array |
|
|
|
|
{ |
|
|
|
|
$table = $this->table; |
|
|
|
|
$this->query = "SELECT id, |
|
|
|
|
nome, |
|
|
|
|
(select count(*)from supervisor ms where fila = pqg.nome) as agentes_logados |
|
|
|
|
FROM $table pqg WHERE 1=1 "; |
|
|
|
|
$this->query = "SELECT q.id, |
|
|
|
|
q.nome, |
|
|
|
|
(select count(*)from supervisor ms where fila = q.nome) as agentes_logados |
|
|
|
|
FROM $table q INNER JOIN empresa e on q.id_empresa = e.id WHERE 1=1 "; |
|
|
|
|
|
|
|
|
|
if ($params['status']) { |
|
|
|
|
$this->query .= " AND status = :status "; |
|
|
|
|
$this->query .= " AND q.status = :status "; |
|
|
|
|
$data['status'] = $params['status']; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ($params['id']) { |
|
|
|
|
$this->query .= " AND id = :id "; |
|
|
|
|
$this->query .= " AND q.id = :id "; |
|
|
|
|
$data['id'] = $params['id']; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ($params['id_empresa']) { |
|
|
|
|
$this->query .= " AND id_empresa = :id_empresa "; |
|
|
|
|
$this->query .= " AND q.id_empresa = :id_empresa "; |
|
|
|
|
$data['id_empresa'] = $params['id_empresa']; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ($params['token_empresa']) { |
|
|
|
|
$this->query .= " AND e.token = :token_empresa "; |
|
|
|
|
$data['token_empresa'] = $params['token_empresa']; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ($params['nome']) { |
|
|
|
|
$params['nome'] = strtolower($params['nome']); |
|
|
|
|
$this->query .= " AND lower(nome) LIKE lower('%{$params['nome']}%') "; |
|
|
|
|
$this->query .= " AND lower(q.nome) LIKE lower('%{$params['nome']}%') "; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$this->query .= " ORDER BY nome LIMIT 10 "; |
|
|
|
|
$this->query .= " ORDER BY q.nome "; |
|
|
|
|
return $this->db->read($this->query, $data)->fetchAll(); |
|
|
|
|
} |
|
|
|
|
} |