D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
var
/
www
/
html
/
crsys_ant
/
adm
/
app
/
gre
/
Models
/
Medicao
/
Filename :
ModListarMedicaoIndicar.php
back
Copy
<?php namespace App\gre\Models\Medicao; if (!defined('URL')) { header("Location: /"); exit(); } /** * Description of GreCriarOrdemMedicao * * @copyright (c) year, Carlos Marques - CM */ class ModListarMedicaoIndicar { private $Resultado; private $Dados; private $DadosId; private $substituicao = array( ' ' => '', '_' => '', '-' => '', '/' => '', '.' => '', ',' => '', '(' => '', ')' => '' ); function getResultado() { return $this->Resultado; } public function listarMedicaoIndicar($Dados) { $this->DadosId = $Dados; unset($this->DadosId['botao']); // var_dump($this->DadosId); $verOrdemMedicao= new \App\adms\Models\helper\AdmsRead(); $verOrdemMedicao->fullRead("SELECT med.orca_id, med.num_revisao, med.num_contrato, med.obra nome_obra, CASE WHEN med.complemento IS NOT NULL AND med.complemento <> '' THEN CONVERT(CONCAT( med.endereco_obra, ', ', med.numero_obra, ' - ', med.complemento, ' - ', med.bairro, ' - ', med.municipio_obra, '/', med.uf_obra, ' - CEP: ', MASK(LPAD(med.cep_obra, 8, '0'), '#####-###') ) USING utf8mb4) ELSE CONVERT(CONCAT( med.endereco_obra, ', ', med.numero_obra, ' - ', med.bairro, ' - ', med.municipio_obra, '/', med.uf_obra, ' - CEP: ', MASK(LPAD(med.cep_obra, 8, '0'), '#####-###') ) USING utf8mb4) END endereco, med.contato_obra nome_contato, med.data_medicao, med.medidor_id, v.nome nome_vend, date_format(med.data_agenda_medicao, '%Y-%m-%d') data_agendada, date_format(med.data_agenda_medicao, '%d/%m/%Y')data_agendadam, case when length(med.telefone_obra) < 11 then MASK(LPAD(med.telefone_obra,10,0),'(##) ####-##.##') else MASK(LPAD(med.telefone_obra,11,0),'(##) #####-##.##') end tel_obra, case when length(med.tel_vend) < 11 then MASK(LPAD(med.tel_vend,10,0),'(##) ####-##.##') else MASK(LPAD(med.tel_vend,11,0),'(##) #####-##.##') end tel_vend, med.nome_cliente, sit.nome nome_sit, cr.cor cor_cr FROM gre_cab_orcamento med inner join adms_usuarios v on v.id = med.vend INNER JOIN gre_status sit ON sit.id=med.status_id INNER JOIN adms_cors cr ON cr.id=sit.cor_id where med.status_id in (8) and med.num_contrato = :num_contrato and med.empr_id = :empr_id", "num_contrato=" . $this->DadosId['num_contrato']."&empr_id=" . $_SESSION['id_user']); $this->Resultado = $verOrdemMedicao->getResultado(); //var_dump($this->Resultado); return $this->Resultado; } public function verOrdemMedicaoIndicar($DadosId) { $this->DadosId = $DadosId; //var_dump($this->DadosId); $verOrdemMedicao= new \App\adms\Models\helper\AdmsRead(); $verOrdemMedicao->fullRead("SELECT med.orca_id, med.num_revisao, med.num_contrato, med.obra nome_obra, med.contato_obra nome_contato, med.data_medicao, med.medidor_id, v.nome nome_vend, date_format(med.data_agenda_medicao, '%Y-%m-%d') data_agendada, date_format(med.data_agenda_medicao, '%d/%m/%Y')data_agendadam, MASK(LPAD(med.telefone_obra,11,0),'(##) #####-##.##') tel_obra, MASK(LPAD(med.tel_vend,11,0),'(##) #####-##.##') tel_vend, med.nome_cliente, sit.nome nome_sit, cr.cor cor_cr FROM gre_cab_orcamento med inner join adms_usuarios v on v.id = med.vend INNER JOIN gre_status sit ON sit.id=med.status_id INNER JOIN adms_cors cr ON cr.id=sit.cor_id where med.status_id in (8,9,10) and med.num_contrato = :num_contrato and med.empr_id = :empr_id", "num_contrato=" . $this->DadosId['num_contrato']."&empr_id=" . $_SESSION['id_user']); $this->Resultado = $verOrdemMedicao->getResultado(); return $this->Resultado; } public function listarMedidorAmbiente($Dados){ $this->DadosId = $Dados[0]; // var_dump($this->DadosId); $listarMedAmbiente= new \App\adms\Models\helper\AdmsRead(); $listarMedAmbiente->fullRead("SELECT ag.funcionario_id, date_format(ag.data_inicio, '%Y-%m-%d') data_agendada, a.nome FROM gre_agenda ag inner join gre_ambientes a on a.id = ag.ambiente_id WHERE ag.empr_id = :empr_id AND ag.orca_id = :orca_id and ag.num_revisao = :num_revisao", "orca_id=" . $this->DadosId['orca_id']."&num_revisao=" . $this->DadosId['num_revisao']."&empr_id=" . $_SESSION['id_user']); $this->Resultado = $listarMedAmbiente->getResultado(); // var_dump($this->Resultado); // die; return $this->Resultado; } public function listarAmbiente($Dados){ $this->DadosId = $Dados[0]; var_dump($this->DadosId); $listarAmbiente= new \App\adms\Models\helper\AdmsRead(); $listarAmbiente->fullRead("SELECT i.ambiente_id, a.nome FROM gre_item_orcamento i INNER JOIN gre_ambientes a ON i.ambiente_id = a.id WHERE i.orca_id = :orca_id AND i.num_revisao = :num_revisao AND i.empr_id = :empr_id AND NOT EXISTS ( SELECT 1 FROM gre_agenda ag WHERE ag.empr_id = i.empr_id AND ag.orca_id = i.orca_id AND ag.num_revisao = i.num_revisao AND ag.ambiente_id = i.ambiente_id AND ag.medidor_agendado = 'S' ) GROUP BY i.ambiente_id, a.nome;", "orca_id=" . $this->DadosId['orca_id']."&num_revisao=" . $this->DadosId['num_revisao']."&empr_id=" . $_SESSION['id_user']); } public function listarAgendaMedidor($Dados) { $this->DadosId = $Dados[0]; // var_dump($this->DadosId); $this->DadosId['data_agendada'] = date('Y-m-d', strtotime('+1 days')); $ultimoDiaDoMes = date('Y-m-d', strtotime('+30 days')); //var_dump($this->DadosId); //var_dump($ultimoDiaDoMes); $listarMedicao = new \App\adms\Models\helper\AdmsRead(); $listarMedicao->fullRead("SELECT f.id, f.nome medidor, a.num_contrato AS num_contrato, DATE(a.data_inicio) AS data_raw, :ultimodia AS ultimo_dia, :data_agenda AS data_agenda FROM crsys.gre_funcionario f LEFT JOIN crsys.gre_agenda a ON f.id = a.funcionario_id AND a.tarefa IN (7,8) AND a.sit_fase_id IN (1,2) AND a.data_inicio BETWEEN :data_inicio AND :data_fim AND a.empr_id = :empr_id WHERE f.cargo_id = 13 GROUP BY f.id, f.nome, data_raw ORDER BY f.nome, data_raw", "data_inicio=" . $this->DadosId['data_agendada']."&ultimodia=" . $ultimoDiaDoMes."&data_agenda=" . $this->DadosId['data_agendada']."&data_fim=" . $ultimoDiaDoMes."&empr_id=" . $_SESSION['id_user']); $this->Resultado = $listarMedicao->getResultado(); // var_dump($this->Resultado); // die; return $this->Resultado; } public function altOrdemMedicaoIndicar($Dados) { $this->Dados = $Dados[0]; // var_dump($this->Dados); // die; $listarQtde = new \App\adms\Models\helper\AdmsRead(); $listarQtde->fullRead("select count(a.ambiente_id) qtde_amb from gre_agenda a where a.num_contrato = :num_contrato and a.empr_id = :empr_id", "num_contrato=" . $this->Dados['num_contrato']."&empr_id=" . $_SESSION['id_user']); $this->QtdeAgenda = $listarQtde->getResultado(); // var_dump($this->QtdeAgenda ); $qtdSolicitado = isset($this->Dados['ambiente']) && is_array($this->Dados['ambiente']) ? count($this->Dados['ambiente']) : 0; // var_dump('$qtdSolicitado: '.$qtdSolicitado); $this->Dados['sit_fase_id'] = 2; $this->Dados['data_inicio'] = $this->Dados['data_agendou']; $this->Dados['data_fim'] = $this->Dados['data_agendou']; date_default_timezone_set ("America/Sao_Paulo"); $this->Dados['modified'] = date("Y-m-d H:i:s"); $this->Dados['usu_modified'] = $_SESSION['usuario_id']; $this->Dados['empr_id'] = $_SESSION['id_user']; $this->DadosOrca['data_medicao'] = $this->Dados['data_agendou']; $this->DadosOrca['medidor_id'] = $this->Dados['funcionario_id']; unset($this->Dados['data_agendou']); //var_dump($this->Dados); // die; $ambientes = $this->Dados['ambiente']; unset($this->Dados['ambiente']); unset($this->Dados['nome_funcionario']); foreach ($ambientes as $ambId) { unset($this->Dados['opcao']); $this->Dados['medidor_agendado'] = 'S'; $upAltOrdemMedicao = new \App\adms\Models\helper\AdmsUpdate(); $upAltOrdemMedicao->exeUpdate( "gre_agenda", $this->Dados, "WHERE empr_id = :empr_id AND num_contrato = :num_contrato AND ambiente_id = :ambiente_id", "empr_id={$this->Dados['empr_id']}&num_contrato={$this->Dados['num_contrato']}&ambiente_id={$ambId}" ); } $listarQtdeSim = new \App\adms\Models\helper\AdmsRead(); $listarQtdeSim->fullRead("select count(a.ambiente_id) qtde_sim from gre_agenda a where a.num_contrato = :num_contrato and a.empr_id = :empr_id and a.medidor_agendado = 'S'", "num_contrato=" . $this->Dados['num_contrato']."&empr_id=" . $_SESSION['id_user']); $this->QtdeSim = $listarQtdeSim->getResultado(); // var_dump($this->QtdeAgenda[0]['qtde_amb']); // var_dump($this->QtdeSim); // die; if ($this->QtdeAgenda[0]['qtde_amb'] == $this->QtdeSim[0]['qtde_sim']) { $this->DadosOrca['status_id'] = 10; }else{ $this->DadosOrca['status_id'] = 9; } $upStatusCab= new \App\adms\Models\helper\AdmsUpdate(); $upStatusCab->exeUpdate("gre_cab_orcamento", $this->DadosOrca, "WHERE empr_id =:empr_id and num_contrato = :num_contrato", "empr_id=" . $this->Dados['empr_id']."&num_contrato=" . $this->Dados['num_contrato']); if ($upAltOrdemMedicao->getResultado()) { $_SESSION['msg'] = "<div class='alert alert-success alert-dismissible fade show' role='alert'> OrdemMedicao alterada com sucesso! <button type='button' class='btn-close' data-bs-dismiss='alert' aria-label='Close'> </button> </div>"; $this->Resultado = true; } else { $_SESSION['msg'] = "<div class='alert alert-danger alert-dismissible fade show' role='alert'> Erro: OrdemMedicao não foi alterada! <button type='button' class='btn-close' data-bs-dismiss='alert' aria-label='Close'> </button> </div>"; $this->Resultado = false; } } public function listarAgendaFeriado($ano){ $listarAgendaFeriado = new \App\adms\Models\helper\AdmsRead(); $listarAgendaFeriado->fullRead("SELECT data feriado FROM gre_feriado where date_format(data, '%Y') = {$ano} ORDER BY data ASC"); $this->Resultado = $listarAgendaFeriado->getResultado(); return $this->Resultado; // var_dump($this->Resultado); } public function listarCadastrar() { $listar = new \App\adms\Models\helper\AdmsRead(); $listar->fullRead("SELECT id id_sit, nome nome_sit FROM adms_sits ORDER BY nome ASC"); $registro['sit'] = $listar->getResultado(); $listar->fullRead("SELECT id id_pessoa, nome nome_pessoa FROM gre_tipo_pessoa"); $registro['pessoa'] = $listar->getResultado(); $listar->fullRead("SELECT v.id id_vend, v.nome nome_vend FROM adms_usuarios v INNER JOIN gre_cargos c ON c.id = v.adms_cargo_id WHERE v.adms_empr_id = {$_SESSION['id_user']} and c.nome like '%Medidor%' AND v.adms_sit_id = 1 ORDER BY v.nome"); $registro['medidor'] = $listar->getResultado(); $this->Resultado = ['sit' => $registro['sit'], 'medidor' => $registro['medidor']]; return $this->Resultado; } private function retiraMasc() { if(isset($this->Dados['cnpj'])) { $this->Dados['cnpj'] = strtr($this->Dados['cnpj'] , $this->substituicao); } if(isset($this->Dados['cpf'])) { $this->Dados['cpf'] = strtr($this->Dados['cpf'] , $this->substituicao); } $this->Dados['cep'] = strtr($this->Dados['cep'] , $this->substituicao); $this->Dados['cep_cobra'] = strtr($this->Dados['cep_cobra'] , $this->substituicao); $this->Dados['fone'] = strtr($this->Dados['fone'] , $this->substituicao); $this->Dados['celular'] = strtr($this->Dados['celular'] , $this->substituicao); } public function altIndicacao($Dados){ $this->Dados['funcionario_id'] = $Dados['medidor_selecionado']; $this->Dados['num_contrato'] = $Dados['num_contrato']; $this->Dados['empr_id'] = $_SESSION['id_user']; $upAltAgenda = new \App\adms\Models\helper\AdmsUpdate(); $upAltAgenda->exeUpdate("gre_agenda", $this->Dados, "WHERE num_contrato =:num_contrato and empr_id = :empr_id", "num_contrato=" . $this->Dados['num_contrato']."&empr_id=" . $this->Dados['empr_id']); $upAltIndicacao = new \App\adms\Models\helper\AdmsUpdate(); $this->Dados['status_id'] = 9; $this->Dados['medidor_id'] = $this->Dados['funcionario_id']; unset($this->Dados['funcionario_id']); $upAltIndicacao->exeUpdate("gre_cab_orcamento", $this->Dados, "WHERE num_contrato =:num_contrato and empr_id = :empr_id", "num_contrato=" . $this->Dados['num_contrato']."&empr_id=" . $this->Dados['empr_id']); if ($upAltIndicacao->getResultado()) { $_SESSION['msg'] = "<div class='alert alert-success alert-dismissible fade show' role='alert'> Indicação incluida com sucesso! <button type='button' class='btn-close' data-bs-dismiss='alert' aria-label='Close'> </button> </div>"; $this->Resultado = true; } else { $_SESSION['msg'] = "<div class='alert alert-success alert-dismissible fade show' role='alert'> Erro: Indicação não foi incluida ! <button type='button' class='btn-close' data-bs-dismiss='alert' aria-label='Close'> </button> </div>"; $this->Resultado = false; } } }