Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class AutorizacaoController extends MainController
- {
- public $form;
- public $moduloMenu;
- public $rubrica_nome;
- public function __construct()
- {
- parent::__construct();
- $this->form = (empty($this->form)) ? TRequest::getFormValues(0) : $this->form;
- $this->moduloMenu = TSession::menu(TSession::menuLoaded(0), 'modulo_menu');
- }
- /*
- * Função da chamada das actions
- */
- public function isAccess($action)
- {
- if (in_array($action, array('comprovante', 'imprimir', 'uploadDocumento', 'visualizarDocumentos', 'anexarDocumento'))) {
- $action = 'pesquisa';
- } else if (in_array($action, array('regulacao', 'autorizar', 'criticaAutorizar', 'criticaRubricaLaudo'))) {
- $action = 'cadastrar';
- }
- return parent::isAccess($action);
- }
- public function actionMenu($mId, $id = null, $manutencao = false)
- {
- $_SESSION['licenca']['liberarReenvio'] = array();
- unset($_SESSION['licenca']['liberarReenvio']);
- $this->limparSession();
- parent::actionMenu($mId, $id, $manutencao);
- }
- public function actionLimpar($div = 'div_filtro', $opcao = 1)
- {
- parent::actionLimpar($div, $opcao);
- TView::script("Aih.autorizacaoSih.functions.fieldCarater();");
- }
- public function actionForm($id = null, $fecha_sem_verificacao = null)
- {
- $_SESSION['licenca']['liberarReenvio'] = array();
- unset($_SESSION['licenca']['liberarReenvio']);
- $this->limparSession();
- parent::actionForm($id, $fecha_sem_verificacao);
- }
- /**
- * Action responsável pelas inclusões e alterações genéricas do sistema
- */
- public function actionGravar()
- {
- $situacao_anterior = TSession::get(TSession::menu(TSession::menuLoaded(0), 'modulo_menu'), TSession::menu(TSession::menuLoaded(0), 'nome') . SEPARADOR_CAMPO . 'valor_anterior', 'situacao', 'valor');
- $situacao = $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'situacao'];
- if ($situacao_anterior == '4' && $situacao != '5') {
- //throw new TException('A situaçao somente pode ser alterada para cancelada.');
- }
- if ((!empty($this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'aih']) && (isset($_SESSION['licenca']['autorizarRubricaTeto']) && ($this->verificarRubricaTeto() || (string) $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'situacao'] === '5' || (string) $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'situacao'] === '4'))) || (((!empty($this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'mudanca_laudo_id']) && isset($_SESSION['licenca']['autorizarRubricaTeto'])) || empty($this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'aih'])) && (isset($_SESSION['licenca']['autorizarRubricaTeto']) || !$this->verificarRubricaTeto()))) {
- parent::actionGravar();
- } else {
- if (!isset($this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'aih']) || empty($this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'aih'])) {
- $btn = array(
- 1 => array('type' => 'script-close', 'lbl' => 'NÃO', 'rota' => 'autorizacao/criticaRubricaLaudo/0'),
- 2 => array('type' => 'script-close', 'lbl' => 'SIM', 'rota' => 'autorizacao/criticaRubricaLaudo/1')
- );
- TView::dialog(
- "Deseja gerar nº da AIH específica para o(a) rubrica? <br/><b>{$this->rubrica_nome}</b>", 'error', 'Confirmação', $btn, '450', null, true, true, false, false
- );
- } else {
- if (substr($this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'aih'], 4, 1) === '5') {
- $this->actionCriticaRubricaLaudo(1);
- } else {
- $this->actionCriticaRubricaLaudo(0);
- }
- }
- }
- }
- /*
- * Depois de gravar vai chamar essa função
- */
- public function posGravar()
- {
- if ($this->success) {
- if ((string) TRequest::input('situacao') !== (string) $_SESSION[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu']]['autoriza_sih' . SEPARADOR_CAMPO . 'valor_anterior']['situacao']['valor']) {
- $sql = "insert into autoriza_sih_historico (
- laudo_sih_id,
- profissional_autorizador_cpf,
- data_analise,
- motivo_id,
- resposta,
- situacao,
- mensagem_validacao,
- data_cadastro,
- usuario_cadastro,
- mudanca_laudo_id,
- justificativa
- ) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
- $binds = array(
- TRequest::input('laudo_sih_id'),
- TFn::strMaskRemove($_SESSION['licenca']['profissional_cpf']),
- TDate::convert(TRequest::input('data_analise')),
- TRequest::input('motivo_id'),
- TRequest::input('resposta'),
- TRequest::input('situacao'),
- TRequest::input('mensagem_validacao'),
- date('Y-m-d H:i:s'),
- $_SESSION['licenca']['usuario_id'],
- TRequest::input('mudanca_laudo_id'),
- TRequest::input('justificativa_nao_internacao')
- );
- TModel::conn('cliente')->exec($sql, $binds);
- if (TRequest::input('mudanca_laudo_id') !== null) {
- $idAutorizaSihHistorico = TModel::conn('cliente')->insert_id('autoriza_sih_historico_id_seq');
- $sql = "UPDATE mudanca_laudo
- SET autoriza_sih_historico_id = ?
- WHERE id = ?";
- $binds = array(
- $idAutorizaSihHistorico,
- (int) TRequest::input('mudanca_laudo_id')
- );
- TModel::conn('cliente')->exec($sql, $binds);
- }
- }
- if ((isset($_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload']) && !empty($_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload']))) {
- $_SESSION['licenca']['liberarReenvio'] = true;
- }
- TSession::set(TSession::menu(TSession::menuLoaded(0), 'modulo_menu'), 'gravacao', true);
- $this->limparSession();
- if ((string) TRequest::input('situacao') === '1' && (string) TSession::get(TSession::menu(TSession::get('menu_carregado', 0), 'modulo_menu'), TSession::menu(TSession::get('menu_carregado', 0), 'nome') . '__valor_anterior', 'situacao', 'valor') === '5') {
- parent::posGravar();
- } else {
- /* salvar log */
- if (((isset($_SESSION['menu_carregado'][0]) && isset($_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu']) && isset($_SESSION['incluir'][$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu']]))) && (empty($_SESSION['incluir'][$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu']]) && $this->success)) {
- $model = $_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['model'];
- TLog::inserirRegistroLog($model, null, true);
- if (!empty($_SESSION['menu_carregado'][1])) {
- if (empty($_SESSION['incluir'][$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu']]) && empty($_SESSION['incluir'][$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][1]]['modulo_menu']]) && $this->success) {
- $model = $_SESSION['menu']['itens'][$_SESSION['menu_carregado'][1]]['model'];
- TLog::inserirRegistroLog($model, null, true);
- }
- }
- }
- //$this->actionComprovante(null, false);
- if (TRequest::input('anaminese_laudo') === '1' && TRequest::input('aih') !== null && TRequest::input('situacao') == '4') {
- UAih::imprimirLaudo(null, TRequest::input('laudo_sih_id'));
- } else {
- $this->actionComprovante(null, false);
- }
- $this->actionForm(TRequest::input('id'));
- }
- } else {
- parent::posGravar();
- }
- }
- /**
- * Executada quando o usuário autorizador clica no botão confirmar do dialog de autorização
- */
- public function actionAutorizar()
- {
- $values[0] = strtoupper(trim(TRequest::post('usuario')));
- $values[1] = trim(TRequest::post('senha'));
- $values[1] = md5($values[0] . '.' . $values[1]);
- $sql = "select
- profissional.autorizador,
- usuario.senha,
- usuario.nome
- from
- usuario
- join profissional on usuario.cpf = profissional.cpf
- where
- upper(usuario.nome) = ?
- and usuario.senha = ?
- and usuario.ativo = '1'";
- $binds = array(
- strtoupper($values[0]),
- $values[1]
- );
- $usuarioConsulta = TModel::conn('cliente')->query($sql, $binds)->fetch(PDO::FETCH_ASSOC);
- if (empty($usuarioConsulta)) {
- $this->view->dialog('Usuário ou senha inválidos.', 'error', 'Autorização');
- } else {
- if ((string) $usuarioConsulta['autorizador'] !== '1') {
- $this->view->dialog('Usuário/Profissional não é autorizador.', 'error', 'Autorização');
- } else {
- $_SESSION['licenca']['gravacaoAutorizada'] = true;
- $this->forward("autorizacao/gravar/{$_SESSION['licenca']['sessaoID']}");
- }
- }
- }
- /**
- * Usado na validação de autoriza_critica onde tem que ser colocado usuario e senha
- */
- public function actionCriticaAutorizar()
- {
- }
- /**
- * Verifica com o usuario se ele quer utilizar o AIH da rubrica
- * @name criticaRubricaLaudo
- * @return boolean
- * @author Alisson Alexandre <alissonplus@gmail.com>.
- * @since 4.0 [08-09-2015].
- */
- public function actionCriticaRubricaLaudo($autorizaRubricaTeto)
- {
- $_SESSION['licenca']['autorizarRubricaTeto'] = $autorizaRubricaTeto;
- $this->forward("autorizacao/gravar/{$_SESSION['licenca']['sessaoID']}");
- }
- /**
- * Verifica se a rubrica teto existe para o laudo, atualizando ou inserindo quando necesserario
- * @name verificarRubricaTeto
- * @return boolean
- * @author Alisson Alexandre <alissonplus@gmail.com>.
- * @since 4.0 [19-08-2015].
- */
- public function verificarRubricaTeto()
- {
- $flag = false;
- $competenciaLaudo = str_replace("/", "", $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'competencia_laudo']);
- $competencia = empty($competenciaLaudo) ? $_SESSION['parametro']['itens']['competencia']['valor'] : $competenciaLaudo;
- if ($this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'situacao'] === '4' || (TSession::get('aih_autoriza_sih', 'autoriza_sih__valor_anterior', 'situacao', 'valor') === '4' && $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'situacao'] === '5')) {
- $sql = "select
- rt.id,
- rt.rubrica_codigo,
- tc.id rubrica_teto_competencia_id,
- tc.competencia,
- tc.quantidade_teto,
- tc.valor_teto,
- tc.quantidade_produzido,
- tc.valor_produzido,
- r.nome rubrica_nome
- from
- rubrica_teto rt
- left join rubrica_teto_competencia tc on (tc.rubrica_teto_id = rt.id)
- left join rubrica r on (r.codigo = rt.rubrica_codigo)
- where
- rt.estabelecimento_cnes = ?
- and rt.procedimento_codigo = ?
- and tc.competencia::integer >= (substr(?, 0,5)::integer - 1 || substr(?, 5))::integer
- and rt.ativo = '1'
- order by tc.competencia asc";
- $binds = array(
- $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'estabelecimento_cnes'],
- (!$this->form[$this->moduloMenu . SEPARADOR_CAMPO . 'procedimento_codigo_atual']) ? $this->form[$this->moduloMenu . SEPARADOR_CAMPO . 'procedimento_codigo'] : $this->form[$this->moduloMenu . SEPARADOR_CAMPO . 'procedimento_codigo_atual'],
- $competencia,
- $competencia
- );
- $rubricaTetoConsulta = TModel::conn('cliente')->query($sql, $binds)->fetchAll(PDO::FETCH_ASSOC);
- if (!empty($rubricaTetoConsulta)) {
- $flag = true;
- $this->rubrica_nome = $rubricaTetoConsulta[0]['rubrica_nome'];
- }
- }
- return $flag;
- }
- public function actionUploadDocumento()
- {
- /* $data = array(
- "configUpload" => array(
- "acao" => 1
- ),
- "configMenu" => array(
- "menu" => "autorizacao",
- "sessao" => "autorizaSih",
- "documento" => "uploadDocumentoEmAnalise"
- )
- );
- UGestorSaude::uploadDocumento($data); */
- $situacao_anterior = TSession::get(TSession::menu(TSession::menuLoaded(0), 'modulo_menu'), TSession::menu(TSession::menuLoaded(0), 'nome') . SEPARADOR_CAMPO . 'valor_anterior', 'situacao', 'valor');
- $menuId = (int) TRequest::input('id');
- $data = array(
- 'config' => array(
- 'upload' => array(
- 'menuNome' => 'autorizacao',
- 'menuId' => $menuId,
- 'btnExcluir' => '1',
- 'btnUpload' => ((in_array($situacao_anterior, array(null, '1', '2', 'Rejeitado', 'Em Análise'))) ? '1' : '0')
- ),
- 'sql' => array(
- 'tabela' => 'laudo_sih_imagem',
- 'whereCampoSelect' => 'laudo_sih_id',
- 'whereCampoDelete' => 'id',
- 'deleteBinds' => array($menuId),
- 'selectBinds' => array($menuId)
- )
- )
- );
- UGestorSaude::uploadControl($data);
- }
- /**
- * abre o menu de visualização dos documentos anexados.
- * @name actionVisualizarDocumentos.
- * @author Almí Filho <almifilho@supratecnologia.com>, Alisson Alexandre <alissonplus@gmail.com>
- * @since 4.0 [12-06-2015], [20-07-2017].
- */
- public function actionVisualizarDocumentos()
- {
- $situacaoAnt = TSession::get('aih_autoriza_sih', 'autoriza_sih__valor_anterior', 'situacao', 'valor');
- $data = array(
- "configMenu" => array(
- "sessao" => "autorizaSih",
- "menu" => "autorizacao"
- ),
- "configSql" => array(
- "from" => "laudo_sih_imagem",
- "where" => "laudo_sih_id = ?",
- "bind" => "laudo_sih_id"
- ),
- "configExclusao" => array(
- "situacaoAnterior" => 2//($situacaoAnt == '4' || strtoupper($situacaoAnt) == 'AUTORIZADO')? false : true,
- ),
- "objetoForm" => $this
- );
- UGestorSaude::visualizarDocumento($data);
- }
- public function actionAnexarDocumento($flag, $tamanho = null, $imgw = null, $imgh = null, $boxw = null, $boxh = null, $b64 = null, $rotation = null, $file = null, $blobUrl = null)
- {
- $data = array(
- "configAnexo" => array(
- "flag" => $flag,
- "base64" => $b64,
- "rodar" => $rotation,
- "file" => $file,
- "blobUrl" => $blobUrl,
- "tamanho" => array(
- "marca" => $tamanho,
- "imagem" => array(
- "largura" => $imgw,
- "altura" => $imgh
- ),
- "modal" => array(
- "largura" => $boxw,
- "altura" => $boxh
- )
- )
- ),
- "configMenu" => array(
- "sessao" => "autorizaSih",
- "menu" => "autorizacao"
- ),
- "objetoForm" => $this
- );
- UGestorSaude::anexarDocumento($data);
- }
- private function limparSession()
- {
- $_SESSION['licenca']['gravacaoAutorizada'] = array();
- $_SESSION['licenca']['critica'] = array();
- $_SESSION['licenca']['autorizarRubricaTeto'] = array();
- $_SESSION['licenca']['anexo']['autorizaSih'] = array();
- unset($_SESSION['licenca']['gravacaoAutorizada']);
- unset($_SESSION['licenca']['critica']);
- unset($_SESSION['licenca']['autorizarRubricaTeto']);
- unset($_SESSION['licenca']['anexo']['autorizaSih']);
- }
- /*
- * Emite o comprovante
- */
- /* public function actionComprovante($id = null, $updateEmissao = true) {
- $mId = TSession::menuLoaded(0);
- $moduloMenu = TSession::menu($mId, 'modulo_menu');
- if ($updateEmissao == true && TSession::campo($moduloMenu, 'situacao', 'valor') == 1) {
- throw new TException('Comprovante não disponível. Autorização em análise.');
- }
- $laudo_id = '';
- if ($mId == 55) {
- $laudo_id = (TRequest::input('id')) ? TRequest::input('id') : $this->model[$mId]->id;
- } else {
- $laudo_id = (TRequest::input('laudo_sih_id')) ? TRequest::input('laudo_sih_id') : $this->model[$mId]->laudo_sih_id;
- }
- $dt = AutorizaSih::$_atual;
- if (!$dt) {
- $dt = AutorizaSih::find(TRequest::input('id'));
- }
- getInfoComprovanteRegulacao($id, null, $dt, 'comprovante', $laudo_id, null);
- } */
- /**
- * Emite o comprovante A4 ou matricial.
- * @name actionComprovante.
- * @author Alisson Alexandre <alissonplus@gmail.com>.
- * @since 4.0 [18-09-2015].
- */
- public function actionComprovante($id = null)
- {
- $btn = false;
- $this->form = (empty($this->form)) ? TRequest::getFormValues(0) : $this->form;
- $id = (empty($this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'id']) && empty($_SESSION['incluir']['laudo_sih'])) ? Laudo::connection()->insert_id(Laudo::table()->sequence) : $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'id'];
- if (empty($id)) {
- TView::dialog('Conclua a autorizacao e clique no botão "Gravar".', 'alert', 'Comprovante da autorizacao');
- return false;
- }
- if ((string) $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'situacao'] === '1') {
- throw new TException('Sem comprovante para situação em analise.');
- }
- if (isset($_SESSION['licenca']['tipo_impressao_aih']) && $_SESSION['licenca']['tipo_impressao_aih'] === '1') {
- $_SESSION['parametro']['itens']['usuario_id']['valor'] = (int) TSession::user('usuario_id');
- // if ($_SESSION['licenca']['quantidade_coluna'] === 2) {
- // $_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['ireport_nome'] = "comprovante_autorizacao_duplo";
- // } else {
- // $_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['ireport_nome'] = "comprovante_autorizacao";
- // }
- $_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['ireport_param'] = "param;subtitulo;param__orgao_emissor;user__usuario;param__usuario_id;";
- $situacao = $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'situacao'];
- if ($situacao != '4' && $situacao != '1' && strtoupper(remover_acentos($situacao)) != 'EM ANALISE' && strtoupper(remover_acentos($situacao)) != 'AUTORIZADO') {
- $_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['ireport_nome'] = "comprovante_sem_autorizacao";
- $_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['ireport_param'] = "param;subtitulo;";
- $conteudo = 'comprovante';
- } else {
- $conteudo = UAih::comprovanteAutorizacao((int) $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'laudo_sih_id']);
- if ($_SESSION['licenca']['quantidade_coluna'] === 2) {
- $conteudo .= '<br/><br/><br/><br/><br/>' . $conteudo;
- }
- }
- $_SESSION['licenca']['ireport_form'] = array(' laudo_sih.id=' . (int) $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'laudo_sih_id'], strtoupper(TFn::strRemAccent($_SESSION['parametro']['itens']['nome']['valor'])), 'I');
- //$conteudo = 'comprovante';
- $dimensao = array(750, 380);
- $btn = array(
- 1 => array('type' => 'script', 'lbl' => 'IMPRIMIR', 'func' => "System.functions.printContent('Requerimento', 'dlogbox');"),
- 2 => array('type' => 'script-close', 'lbl' => 'FECHAR', 'rota' => "autorizacao/pesquisa/{$_SESSION['licenca']['sessaoID']}")
- );
- // }else if(in_array((string)$_SESSION['licenca']['tipo_impressao_aih'], array('2', '3'))){
- // $cp = array(
- // 'secretaria' => strtoupper($_SESSION['parametro']['itens']['nome']['valor']),
- // 'id' => $id,
- // 'orgao_emissor' => $_SESSION['parametro']['itens']['orgao_emissor']['valor'],
- // 'paciente_nome' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'paciente_nome'],
- // 'data_nascimento' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'data_nascimento'],
- // 'cartao_sus' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'cartao_sus'],
- // 'procedimento_nome' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'procedimento_nome'],
- // 'procedimento_codigo' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'procedimento_codigo'],
- // 'cid_nome' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'cid_nome'],
- // 'cid_codigo' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'cid_codigo'],
- // 'data_solicitacao' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'data_solicitacao'],
- // 'data_autorizacao' => (!empty($this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'data_autorizacao']))? $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'data_autorizacao'] : '___/___/____',
- // 'aih' => (!empty($this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'aih']))? $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'aih'] : '|__|__|__|__|__|__|__|__|__|__|__|__-__|',
- // 'estabelecimento' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'estabelecimento_executante'],
- // 'profissional_autorizador_nome' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'profissional_autorizador'],
- // 'usuario' => $_SESSION['licenca']['usuario'],
- // 'dataEmissao' => date('d/m/Y H:i:s')
- // );
- // $conteudo = TView::outputStatic('autorizacao/comprovante', $cp, true);
- //
- // if(!in_array($this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'situacao'], array('4','1'))){
- // $situacao = array(
- // '5' => 'CANCELADO',
- // '2' => 'PENDENTE',
- // '3' => 'NEGADA',
- // );
- //
- // $cp = array(
- // 'secretaria' => strtoupper($_SESSION['parametro']['itens']['nome']['valor']),
- // 'id' => $id,
- // 'situacao' => $situacao[$this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'situacao']],
- // 'nome' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'paciente_nome'],
- // 'resposta' => $this->form[$_SESSION['menu']['itens'][$_SESSION['menu_carregado'][0]]['modulo_menu'] . SEPARADOR_CAMPO . 'resposta']
- // );
- // $conteudo = TView::outputStatic('autorizacao/comprovante_nao_autorizado', $cp, true);
- // }
- //
- // $cp['tipoComprovante'] = $_SESSION['licenca']['tipo_impressao_aih'];
- //
- // $dimensao = array(400,290);
- } else {
- TView::dialog('Tipo de Comprovante não configurado.', 'alert', 'Comprovante do laudo');
- return false;
- }
- TView::dialog(
- $conteudo, null, 'comprovante da autorizacao', $btn, $dimensao[0], $dimensao[1], true, true, "function() {fnex('autorizacao/pesquisa/{$_SESSION['licenca']['sessaoID']}');$('#dlogmod').remove();}", false
- );
- }
- /**
- * Emite o comprovante para 40col.
- * @name actionImprimirComprovante.
- * @author Alisson Alexandre <alissonplus@gmail.com>.
- * @since 4.0 [27-01-2015].
- */
- public function actionImprimir($id = null)
- {
- if (!empty($_SESSION['licenca']['applet'])) {
- $altura = $_SESSION['licenca']['altura'];
- $largura = $_SESSION['licenca']['largura'];
- } else {
- $altura = 30;
- $largura = 30;
- }
- // if (!empty($_SESSION['licenca']['tipo_impressao_aih']) && in_array($_SESSION['licenca']['tipo_impressao_aih'], array('3', '2'))) {
- // $laudoId = (!empty($this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'laudo_sih_id']))? $this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'laudo_sih_id'] : ((!empty($id))? $id : $this->model[$_SESSION['menu_carregado'][0]]->id);
- // $id = (!empty($this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'id']))? $this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'id'] : "";
- // $aih = (!empty($this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'aih']))? $this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'aih'] : "";
- //
- // $porta = array(
- // '1' => 'LPT1',
- // '2' => 'LPT2',
- // '3' => 'USB001',
- // '4' => '/dev/lp0',
- // '5' => '/dev/lp1',
- // '6' => '/dev/lp2',
- // '7' => '/dev/ttyS0',
- // '8' => '/dev/ttyS1',
- // '9' => 'COM1',
- // '10' => 'COM2',
- // '11' => 'COM3',
- // '12' => 'COM4'
- // );
- //
- // if(array_key_exists($_SESSION['licenca']['porta_impressao'], $porta)){
- // $applet = "<applet
- // code=\"impressao/Comprovante.class\"
- // archive=\"web/impress.jar\"
- // width=\"{$altura}\"
- // height=\"{$largura}\"
- // mayscriptname=\"Comprovante Admissao\"
- // alt=\"Comprovante Admissao applet\">
- // <param name=\"txt\" value=\"{$_SESSION['parametro']['itens']['nome']['valor']} |Comprovante de Admissao | |Laudo : {$laudoId} " . ((!empty($aih))? "AIH: {$aih}" : '') . " |Orgao Emissor: {$_SESSION['parametro']['itens']['orgao_emissor']['valor']} |Estabelecimento: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'estabelecimento_nome']} |Paciente: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'paciente_nome']} |Nascimento: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'data_nascimento']} |Cartao SUS: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'cartao_sus']} |Procedimento: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'procedimento_codigo']} - {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'procedimento_nome_usual']} |CID: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'cid_codigo']} - {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'cid_nome']} |Data Solicitacao: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'data_solicitacao']} |Data Autorizacao: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'data_analise']} |Operador: {$_SESSION['licenca']['usuario_id']} Atendimento: " . date('d/m/Y H:i:G') . " | | # ____________________________________________| # # # # # # #Autorizador | | | | | | | |\">
- // <param name=\"tipo_impressao\" value=\"6\">
- // <param name=\"porta_impressao\" value=\"{$porta[$_SESSION['licenca']['porta_impressao']]}\">
- // </applet>";
- //
- // TView::addHtml($applet, TView::$_divImpress);
- // }else{
- // throw new TException('E_S0080');
- // }
- // }
- }
- /**
- * Emite o comprovante para etiqueta simples ou completa.
- * @name actionImprimirEtiqueta.
- * @author Alisson Alexandre <alissonplus@gmail.com>.
- * @since 4.0 [02-02-2015].
- */
- public function actionImprimirEtiqueta($id = null)
- {
- $moduloMenu = TSession::menu(null, 'modulo_menu');
- if (!empty($_SESSION['licenca']['applet'])) {
- $altura = $_SESSION['licenca']['altura'];
- $largura = $_SESSION['licenca']['largura'];
- } else {
- $altura = 30;
- $largura = 30;
- }
- $porta = array(
- '1' => 'LPT1',
- '2' => 'LPT2',
- '3' => 'USB001',
- '4' => '/dev/lp0',
- '5' => '/dev/lp1',
- '6' => '/dev/lp2',
- '7' => '/dev/ttyS0',
- '8' => '/dev/ttyS1',
- '9' => 'COM1',
- '10' => 'COM2',
- '11' => 'COM3',
- '12' => 'COM4'
- );
- if (array_key_exists($_SESSION['licenca']['porta_impressao'], $porta) && in_array($_SESSION['licenca']['tipo_impressao_aih'], array('4', '5'))) {
- $laudoId = (!empty($this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'laudo_sih_id'])) ? $this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'laudo_sih_id'] : ((!empty($id)) ? $id : $this->model[$_SESSION['menu_carregado'][0]]->id);
- $maximoColuna = (($porta[$_SESSION['licenca']['porta_impressao']] === '4') ? '55' : '70');
- $aih = (!empty($this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'aih'])) ? $this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'aih'] : $this->model[$_SESSION['menu_carregado'][0]]->aih;
- if ($_SESSION['licenca']['tipo_impressao_aih'] === '5') {
- $texto = substr("###################ORGAO EMISSOR: {$_SESSION['parametro']['itens']['orgao_emissor']['valor']}", 0, $maximoColuna) . "|"
- . substr("¬AIH: {$aih}", 0, $maximoColuna) . "|"
- . substr("¬UNI: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'estabelecimento_executante']}", 0, $maximoColuna) . "||"
- . substr($this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'paciente_nome'], 0, $maximoColuna) . "|"
- . substr("NASCIMENTO: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'data_nascimento']}#####CARTAO SUS: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'cartao_sus']}", 0, $maximoColuna) . "|"
- . substr("D.LIBERA: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'data_liberacao']}#####DT.LAUDO: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'data_cadastro']}", 0, $maximoColuna) . "|"
- . substr("PROCED.: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'procedimento_codigo']} - {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'procedimento_nome']}", 0, $maximoColuna) . "|"
- . substr("OP.SISTEMA: {$_SESSION['licenca']['usuario_id']}", 0, $maximoColuna) . "|"
- . substr("CID: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'cid_codigo']}", 0, $maximoColuna) . "|"
- . substr("###############_______________________", 0, $maximoColuna) . "|"
- . substr("###############ASS. MEDICO RESPONSAVEL", 0, $maximoColuna) . "|";
- } else {
- $moduloAdmissao = (strpos($moduloMenu, 'hospitalar') !== false) ? 'hospitalar_admissao' : 'aih_admissao';
- $texto = substr("AIH: {$aih}", 0, $maximoColuna) . "|"
- . substr("HOSPITAL: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'estabelecimento_executante']}", 0, $maximoColuna) . "|"
- . substr($this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'paciente_nome'] . "########{$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'data_nascimento']}", 0, $maximoColuna) . "|"
- . substr("CARTAO SUS: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'cartao_sus']}", 0, $maximoColuna) . "|"
- . substr("AUTORIZACAO: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'data_analise']}", 0, $maximoColuna) . "|"
- . substr("PROCED.: {$this->form['aih_autoriza_sih' . SEPARADOR_CAMPO . 'procedimento_codigo']} - {$this->form[$moduloAdmissao . SEPARADOR_CAMPO . 'procedimento_nome']}", 0, $maximoColuna) . "|"
- . substr("#____________________________________________", 0, $maximoColuna) . "||"
- . substr("#######AUTORIZADOR", 0, $maximoColuna) . "|";
- }
- validarImpressaoMatricial($texto, $_SESSION['licenca']['tipo_impressao_aih']);
- $applet = "<applet
- code=\"impressao/Comprovante.class\"
- archive=\"web/impress.jar\"
- width=\"{$altura}\"
- height=\"{$largura}\"
- mayscriptname=\"Comprovante Admissao\"
- alt=\"Comprovante Admissao applet\">
- <param name=\"txt\" value=\"{$texto}\">
- <param name=\"maximoColuna\" value=\"{$maximoColuna}\">
- <param name=\"quantidadeEspacamento\" value=\"" . ((isset($_SESSION['licenca']['espacos_etiqueta'])) ? $_SESSION['licenca']['espacos_etiqueta'] : null) . "\">
- <param name=\"quantidadeColuna\" value=\"{$_SESSION['licenca']['quantidade_coluna']}\">
- <param name=\"tipo_impressao\" value=\"7\">
- <param name=\"porta_impressao\" value=\"{$porta[$_SESSION['licenca']['porta_impressao']]}\">
- </applet>";
- TView::addHtml($applet, TView::$_divImpress);
- } else {
- throw new TException('E_S0080');
- }
- }
- public function actionRegulacao()
- {
- $msg = TSession::get('msgAutorizar');
- gera_regulacao($msg);
- TSession::delete('msgAutorizar');
- }
- /**
- * Verifica se existe anexos para o registro (será usado para printar no botao(Anexos) a qntd de anexos que o registro possui)
- * @name verificaPossuiAnexosLaudo
- * @author CArlos Henrique <kaic@supratecnologia.com>.
- * @since 4.0 [27-01-2017].
- */
- public static function verificaPossuiAnexosLaudo($id)
- {
- $sql = "select count(laudo_sih_imagem) qntd from laudo_sih
- left join laudo_sih_imagem on laudo_sih_imagem.laudo_sih_id = laudo_sih.id WHERE laudo_sih.autoriza_sih_id = ?";
- $binds = array((int) $id);
- $qt_imagem = TModel::conn('cliente')->query($sql, $binds)->fetchAll(PDO::FETCH_ASSOC);
- return $qt_imagem[0]['qntd'];
- }
- /**
- * Exclui as imagens selecionadas para excluir.
- * @name actionExcluirMenuImagem.
- * @param boolean $confirm Verifica se foi confirmada a exclusão.
- * @author Carlos Henrique <kaic@supratecnologia.com>
- * @since 4.0 [30-01-2017].
- */
- public function actionExcluirImagem($confirm = null)
- {
- $conteudo = $excluir = false;
- $status = 'alert';
- if (isset($_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload'])) {
- foreach ($_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload'] as $key => $value) {
- if (!empty($this->form['autorizaSih_imagens' . SEPARADOR_CAMPO . "excluir_anexo{$value['id']}"]) || !empty($_SESSION['licenca']['anexo']['autorizaSih']['formExclusao']["excluir_anexo{$value['id']}"])) {
- $excluir = true;
- break;
- }
- }
- } else if (isset($_SESSION['licenca']['anexo']['autorizaSih']['base64']['banco'])) {
- foreach ($_SESSION['licenca']['anexo']['autorizaSih']['base64']['banco'] as $key => $value) {
- if (!empty($this->form['autorizaSih_imagens' . SEPARADOR_CAMPO . "excluir_anexo{$value['id']}"]) || !empty($_SESSION['licenca']['anexo']['autorizaSih']['formExclusao']["excluir_anexo{$value['id']}"])) {
- $excluir = true;
- break;
- }
- }
- }
- if ($excluir) {
- if ($confirm == 'null') {
- $_SESSION['licenca']['anexo']['autorizaSih']['formExclusao'] = TRequest::input();
- $conteudo = SP::strings('S0109');
- $btn = array(
- 1 => array('type' => 'script-close', 'lbl' => 'CANCELAR', 'rota' => 'autorizacao/visualizarDocumentos/'),
- 2 => array('type' => 'script-close', 'lbl' => 'CONFIRMAR', 'rota' => 'autorizacao/excluirImagem/1/')
- );
- } else {
- $ids = array();
- if (isset($_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload'])) {
- foreach ($_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload'] as $key => $value) {
- if (!empty($_SESSION['licenca']['anexo']['autorizaSih']['formExclusao']["excluir_anexo{$value['id']}"])) {
- if (strpos($value['id'], 'session') === false) {
- $ids[] = $value['id'];
- }
- $_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload'][$key] = array();
- unset($_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload'][$key]);
- if (count($_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload']) == 0) {
- unset($_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload']);
- }
- }
- }
- }
- if (isset($_SESSION['licenca']['anexo']['autorizaSih']['base64']['banco'])) {
- foreach ($_SESSION['licenca']['anexo']['autorizaSih']['base64']['banco'] as $key => $value) {
- if (!empty($_SESSION['licenca']['anexo']['autorizaSih']['formExclusao']["excluir_anexo{$value['id']}"])) {
- if (strpos($value['id'], 'session') === false) {
- $ids[] = $value['id'];
- }
- $_SESSION['licenca']['anexo']['autorizaSih']['base64']['banco'][$key] = array();
- unset($_SESSION['licenca']['anexo']['autorizaSih']['base64']['banco'][$key]);
- if (count($_SESSION['licenca']['anexo']['autorizaSih']['base64']['banco']) == 0) {
- unset($_SESSION['licenca']['anexo']['autorizaSih']['base64']['banco']);
- }
- }
- }
- }
- $_SESSION['licenca']['anexo']['autorizaSih']['formExclusao'] = array();
- unset($_SESSION['licenca']['anexo']['autorizaSih']['formExclusao']);
- if (!empty($ids)) {
- $sql = "delete from laudo_sih_imagem where id in (" . implode(',', $ids) . ")";
- $laudoImagemDelete = TModel::conn('cliente')->exec($sql)->rowCount();
- if (empty($laudoImagemDelete)) {
- throw new TException('E_S0011');
- }
- }
- $rota = (isset($_SESSION['licenca']['anexo']['autorizaSih']['base64']) && count($_SESSION['licenca']['anexo']['autorizaSih']['base64'])) ? 'autorizacao/visualizarDocumentos' : 'autorizacao/uploadDocumento';
- $conteudo = SP::strings('S0010');
- $btn = array(
- 1 => array('type' => 'script-close', 'lbl' => 'FECHAR', 'rota' => "autorizacao/uploadDocumento/"),
- 2 => array('type' => 'script-close', 'lbl' => 'OK', 'rota' => $rota)
- );
- $status = 'ok';
- }
- } else {
- $conteudo = SP::strings('S0016');
- $btn = array(
- 1 => array('type' => 'script-close', 'lbl' => 'FECHAR', 'rota' => 'autorizacao/uploadDocumento/'),
- 2 => array('type' => 'script-close', 'lbl' => 'OK', 'rota' => 'autorizacao/visualizarDocumentos')
- );
- }
- if (!empty($conteudo)) {
- TView::dialog(
- $conteudo, $status, SP::strings('S0095'), $btn, null, null, true, true, null, false
- );
- }
- $qt = (isset($_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload'])) ? count($_SESSION['licenca']['anexo']['autorizaSih']['base64']['upload']) : 0;
- TView::script("$('#btnUploadImg').html('Imagens ($qt)');");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement