<?php
namespace App\Controller;
use Doctrine\ORM\Query\AST\Functions\UpperFunction;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\HttpFoundation\Request;
use Doctrine\Persistence\ManagerRegistry;
use function PHPUnit\Framework\isEmpty;
/**
* @Route("/kmapi")
*/
class KmapiController extends AbstractController
{
/**
* @Route("/", name="app_kmapi")
*/
public function index(Request $request, ManagerRegistry $registry): Response // ManagerRegistry como argumento
{
$entityManager = $registry->getManager();
$data = new \DateTime();
$dataIni = ( $request->get('dataIni') ?? '01/'.$data->format('m').'/'.$data->format('Y') );
$dataFim = ( $request->get('dataFim') ?? $data->format('d/m/Y') );
$fornecedor = ( $request->get('nomForne') ?? '' );
$tipoOperacao = ( $request->get('tipoOperacao') ?? '' );
$realtime = ( $request->get('realtime') ?? '' );
$sqlScript ='';
$tpRealTime = ( $realtime == '1' ? '' : '2' );
// dd($tpRealTime);
if ($tipoOperacao == 'pagamento')
{
if ($fornecedor =='')
{ $sqlScript = "select * from pagtos$tpRealTime where DATEMI
between CONVERT(DATETIME, '$dataIni' ) AND CONVERT(DATETIME, '$dataFim' )";
}
else
{ $sqlScript = "select * from pagtos$tpRealTime where DATEMI
between CONVERT(DATETIME, '$dataIni' ) AND CONVERT(DATETIME, '$dataFim' )
and UPPER(NOMFOR) LIKE '%".strtoupper($fornecedor)."%'";
}
}
elseif ($tipoOperacao == 'recebimentos')
{
if ($fornecedor =='')
{ $sqlScript = "select * from recbtos$tpRealTime where DATEMI
between CONVERT(DATETIME, '$dataIni' ) AND CONVERT(DATETIME, '$dataFim' )";
}
else
{ $sqlScript = "select * from recbtos$tpRealTime where DATEMI
between CONVERT(DATETIME, '$dataIni' ) AND CONVERT(DATETIME, '$dataFim' )
and UPPER(NOMCLI) LIKE '%".strtoupper($fornecedor)."%'";
}
}
elseif ($tipoOperacao == 'baixas')
{
if ($fornecedor =='')
{ $sqlScript = "select * from baixas$tpRealTime where DATEMI
between CONVERT(DATETIME, '$dataIni' ) AND CONVERT(DATETIME, '$dataFim' )";
}
else
{ $sqlScript = "select * from baixas$tpRealTime where DATEMI
between CONVERT(DATETIME, '$dataIni' ) AND CONVERT(DATETIME, '$dataFim' )
and UPPER(NOMCLI) LIKE '%".strtoupper($fornecedor)."%'";
}
}
//echo $sqlScript;
// dd($sqlScript);
if ($sqlScript <> '')
{
$tabela = $entityManager->getConnection()->fetchAllAssociative($sqlScript);
}
else
{
$tabela = [];
}
return $this->render('kmapi/index.html.twig', [
'table' => $tabela,
'controller_name' => 'KmapiController',
'dini' => trim($dataIni),
'dfim' => trim($dataFim),
'nomForne' => strtoupper($fornecedor),
'tipoOperacao' => $tipoOperacao,
'realtime' => $realtime,
]);
}
}