src/Controller/KmapiController.php line 22

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use Doctrine\ORM\Query\AST\Functions\UpperFunction;
  4. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  5. use Symfony\Component\HttpFoundation\Response;
  6. use Symfony\Component\Routing\Annotation\Route;
  7. use Symfony\Component\HttpFoundation\Request;
  8. use Doctrine\Persistence\ManagerRegistry;
  9. use function PHPUnit\Framework\isEmpty;
  10.  /**
  11.      * @Route("/kmapi")
  12.      */
  13. class KmapiController extends AbstractController
  14. {
  15.     /**
  16.      * @Route("/", name="app_kmapi")
  17.      */
  18.     public function index(Request $requestManagerRegistry $registry): Response // ManagerRegistry como argumento
  19.     {
  20.         $entityManager $registry->getManager();
  21.         $data         = new \DateTime();
  22.         $dataIni      = ( $request->get('dataIni') ?? '01/'.$data->format('m').'/'.$data->format('Y') );
  23.         $dataFim      = ( $request->get('dataFim') ?? $data->format('d/m/Y') );
  24.         $fornecedor   =  ( $request->get('nomForne') ?? '' );
  25.         $tipoOperacao =  ( $request->get('tipoOperacao') ?? '' );
  26.         $realtime     =  ( $request->get('realtime') ?? '' );
  27.         $sqlScript ='';
  28.         
  29.         $tpRealTime = ( $realtime  ==  '1' '' '2' );
  30.         //  dd($tpRealTime);
  31.         if ($tipoOperacao == 'pagamento')
  32.             {    
  33.             if ($fornecedor =='')
  34.                 { $sqlScript "select * from pagtos$tpRealTime where DATEMI 
  35.                                 between CONVERT(DATETIME, '$dataIni' ) AND  CONVERT(DATETIME, '$dataFim' )";
  36.                 }
  37.                 else
  38.                 { $sqlScript "select * from pagtos$tpRealTime where DATEMI 
  39.                     between CONVERT(DATETIME, '$dataIni' ) AND  CONVERT(DATETIME, '$dataFim' )
  40.                     and UPPER(NOMFOR) LIKE '%".strtoupper($fornecedor)."%'";
  41.                 }
  42.             }
  43.             elseif ($tipoOperacao == 'recebimentos')
  44.             {    
  45.                 if ($fornecedor =='')
  46.                    { $sqlScript "select * from recbtos$tpRealTime where DATEMI 
  47.                                    between CONVERT(DATETIME, '$dataIni' ) AND  CONVERT(DATETIME, '$dataFim' )";
  48.                    }
  49.                    else
  50.                    { $sqlScript "select * from recbtos$tpRealTime where DATEMI 
  51.                        between CONVERT(DATETIME, '$dataIni' ) AND  CONVERT(DATETIME, '$dataFim' )
  52.                        and UPPER(NOMCLI) LIKE '%".strtoupper($fornecedor)."%'";
  53.                    }
  54.                }
  55. elseif ($tipoOperacao == 'baixas')
  56.             {    
  57.                 if ($fornecedor =='')
  58.                    { $sqlScript "select * from baixas$tpRealTime where DATEMI 
  59.                                    between CONVERT(DATETIME, '$dataIni' ) AND  CONVERT(DATETIME, '$dataFim' )";
  60.                    }
  61.                    else
  62.                    { $sqlScript "select * from baixas$tpRealTime where DATEMI 
  63.                        between CONVERT(DATETIME, '$dataIni' ) AND  CONVERT(DATETIME, '$dataFim' )
  64.                        and UPPER(NOMCLI) LIKE '%".strtoupper($fornecedor)."%'";
  65.                    }
  66.                }
  67. //echo $sqlScript;
  68. //   dd($sqlScript);
  69. if ($sqlScript <> '')
  70.     {
  71.         $tabela $entityManager->getConnection()->fetchAllAssociative($sqlScript);
  72.     }
  73.     else
  74.     {
  75.         $tabela = [];
  76.     }
  77.         return $this->render('kmapi/index.html.twig', [
  78.             'table' => $tabela,
  79.             'controller_name' => 'KmapiController',
  80.             'dini'       => trim($dataIni),
  81.             'dfim'       => trim($dataFim),
  82.             'nomForne'   => strtoupper($fornecedor),
  83.             'tipoOperacao' => $tipoOperacao,
  84.             'realtime'  => $realtime,
  85.         ]);
  86.     }
  87. }