PABX da Simples IP
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

46 lines
1.5 KiB

<?php
namespace app\controllers;
use app\models\Queue;
use app\traits\Validate;
use Slim\Routing\RouteCollectorProxy;
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Http\Message\ServerRequestInterface as Request;
use Exception;
class QueueController
{
use Validate;
static function route()
{
return function (RouteCollectorProxy $group) {
$group->post('/listar', [self::class, 'listarQueue']);
};
}
function listarQueue(Request $request, Response $response, array $args)
{
try {
$body = json_decode($request->getBody()->getContents(), true);
$dados = $this->validateData($request);
$dados['org_id'] = $body['org_id'];
$data = Queue::find($dados, [
'id', "REGEXP_REPLACE(nome, '@[0-9]+', '') AS nome", 'numero', 'musicclass', 'strategy', 'servicelevel',
'status', 'tempo_ring', 'modo_atendimento',
'disponivelfila', 'libera_pausa'
]);
if (!$data) {
$response->getBody()->write(json_encode(['status' => false, 'data' => ['message' => 'Nenhum resultado encontrado!']]));
} else {
$response->getBody()->write(json_encode(['status' => true, 'data' => $data]));
}
} catch (Exception $e) {
$response->getBody()->write(json_encode(['status' => false, 'data' => ["message" => "Nao foi possivel realizar a consulta! " . $e->getMessage()]]));
}
return $response;
}
}