From 6afea5cbdf8cf795525c7988b204031f04274f66 Mon Sep 17 00:00:00 2001 From: Reginaldo Date: Fri, 21 Jul 2023 14:21:17 -0300 Subject: [PATCH] ajuste query presenca --- app/controllers/Controller.php | 48 ++++++++++++++++++-------- app/controllers/PresencaController.php | 14 ++++++++ routes/router.php | 1 + 3 files changed, 49 insertions(+), 14 deletions(-) create mode 100644 app/controllers/PresencaController.php diff --git a/app/controllers/Controller.php b/app/controllers/Controller.php index be0145e..d08d40e 100644 --- a/app/controllers/Controller.php +++ b/app/controllers/Controller.php @@ -3,18 +3,18 @@ namespace app\controllers; use League\Plates\Engine; use PDO; class Controller extends DBA{ - public static function view(string $view, array $data = []){ + public static function view(string $view, array $data = []){ - $viewsPath = dirname(__FILE__,2)."/views"; + $viewsPath = dirname(__FILE__,2)."/views"; - if(!file_exists($viewsPath . DIRECTORY_SEPARATOR . $view.".php")){ - throw new \Exception("A view {$view} não existe"); + if(!file_exists($viewsPath . DIRECTORY_SEPARATOR . $view.".php")){ + throw new \Exception("A view {$view} não existe"); + } + + $templates = new Engine($viewsPath); + echo $templates-> render($view,$data); } - - $templates = new Engine($viewsPath); - echo $templates-> render($view,$data); - } - public function getSTMT($CIDADE,$SQL){ + public function getSTMT($CIDADE,$SQL){ $SMTM; if($CIDADE=='AGUASDELINDOIA'){ $SMTM = self::$instAGUA->prepare($SQL); @@ -27,8 +27,8 @@ class Controller extends DBA{ die('cidade não cadastrada'); } return $SMTM; - } - public function getAcessoFirebird($LOGIN,$CIDADE){ + } + public function getAcessoFirebird($LOGIN,$CIDADE){ $this->sql = "SELECT * FROM LOGIN WHERE NO_USERNAME LIKE ?"; $Con = new Controller(); $this->stmt = $Con -> getSTMT($CIDADE,$this->sql); @@ -36,8 +36,8 @@ class Controller extends DBA{ $this->stmt->execute(); $this->res = $this->stmt->fetchAll(PDO::FETCH_ASSOC); return $this-> res; - } - public function getAcessoMariaDB($LOGIN,$CIDADE){ + } + public function getAcessoMariaDB($LOGIN,$CIDADE){ $this->sql = "SELECT * FROM acessos WHERE ID_USUARIO LIKE ? AND CIDADE = ?"; $Con = new Controller(); $this->stmt = self::$instMARIA->prepare($this->sql); @@ -47,7 +47,7 @@ class Controller extends DBA{ $this->res = $this->stmt->fetchAll(PDO::FETCH_ASSOC); return $this-> res; } - public function getLoginControle($NO_USERNAME,$CIDADE){ + public function getLoginControle($NO_USERNAME,$CIDADE){ if(!$NO_USERNAME==''){ $this->sql = "SELECT * FROM LOGIN WHERE NO_USERNAME = ?"; $Con = new Controller(); @@ -131,6 +131,26 @@ class Controller extends DBA{ die('informação incompleta...'); } } + public function getPresenca($CD_MATRICULA,$DATA,$CIDADE){ + if(!$CD_MATRICULA==''){ + $this->sql = "SELECT SDCA.DT_DIARIO_CLASSE,SDCA.FL_PRESENTE_AUSENTE,SDC.CD_DISCIPLINA, SD.DESCRICAO + FROM SEC_DIARIO_CLASSE_AUSENCIA SDCA + INNER JOIN SEC_DIARIO_CLASSE SDC ON SDC.CD_AULA = SDCA.CD_AULA + INNER JOIN SEC_DISCIPLINAS SD ON SDC.CD_DISCIPLINA = SD.CD_DISCIPLINA + WHERE SDCA.CD_MATRICULA = ? AND SDCA.DT_DIARIO_CLASSE = ? + GROUP BY SDCA.DT_DIARIO_CLASSE, SDCA.FL_PRESENTE_AUSENTE, SDC.CD_DISCIPLINA, SD.DESCRICAO "; + $Con = new Controller(); + $this->stmt = $Con -> getSTMT($CIDADE,$this->sql); + $this->stmt->bindValue(1,$CD_MATRICULA); + $this->stmt->bindValue(2,$DATA); + $this->stmt->execute(); + $this->res = $this->stmt->fetchAll(PDO::FETCH_OBJ); + return $this-> res; + }else{ + //caso o id não foi passado recebe essa mensagem + die('informação incompleta...'); + } + } public function getOcorrencia($MATRICULA,$CIDADE){ if(!$MATRICULA==''){ $this->sql = "SELECT FIRST 1 * FROM SEC_OCORRENCIA WHERE CD_MATRICULA = ?"; diff --git a/app/controllers/PresencaController.php b/app/controllers/PresencaController.php new file mode 100644 index 0000000..e0748ee --- /dev/null +++ b/app/controllers/PresencaController.php @@ -0,0 +1,14 @@ +CD_MATRICULA; + $cidade = $params->CIDADE; + $data = $params->DATA; + $Log = new Controller(); + $Logins = $Log->getPresenca($cd,$data,$cidade); + echo json_encode($Logins); + return json_encode($Logins); + } +} \ No newline at end of file diff --git a/routes/router.php b/routes/router.php index 0f72ada..4b28e74 100644 --- a/routes/router.php +++ b/routes/router.php @@ -38,6 +38,7 @@ $router= [ "/passe" => fn()=> load("PasseController","buscarPasse"), "/frequencia" => fn()=> load("PasseController","buscarFrequencia"), "/carteira" => fn()=> load("PasseController","buscarCarteira"), + "/presenca" => fn()=> load("PresencaController","buscarPresenca"), ], "POST"=>[ "/inserirpais" => fn()=> load("PaisController","insert"),