Skip to content

Commit

Permalink
Merge pull request #16 from anatelgovbr/utilidades_v2.3.0
Browse files Browse the repository at this point in the history
Atualizações para a versao 2.3.1 do Utilidades:
  • Loading branch information
gustavolc84 authored Jan 10, 2025
2 parents eca626b + 38f231c commit 69a825f
Show file tree
Hide file tree
Showing 3 changed files with 69 additions and 44 deletions.
2 changes: 1 addition & 1 deletion sei/web/modulos/utilidades/UtilidadesIntegracao.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ public function getNome()
public function getVersao()
{

return '2.3.0';
return '2.3.1';
}

public function getInstituicao()
Expand Down
10 changes: 5 additions & 5 deletions sei/web/modulos/utilidades/int/MdUtlMensagemINT.php
Original file line number Diff line number Diff line change
Expand Up @@ -48,13 +48,13 @@ class MdUtlMensagemINT extends InfraINT {
public static $MSG_UTL_33 = 'Não é possível @VALOR1@ este Tipo de Justificativa pois o mesmo está vinculado a uma Avaliação.';
public static $MSG_UTL_34 = 'Não é possível @VALOR1@ este Tipo de Documento pois o mesmo está vinculado a uma Atividade no Controle de Desempenho.';
public static $MSG_UTL_35 = 'Não é possível @VALOR1@ este Tipo de Produto pois o mesmo está vinculado a uma Atividade no Controle de Desempenho.';
public static $MSG_UTL_36 = 'Não é possível @VALOR1@ este Usuário pois o mesmo está vinculado a uma Parametrização no Tipo de Controle do Controle de Desempenho.';
public static $MSG_UTL_37 = 'Não é possível @VALOR1@ este Usuário pois o mesmo está vinculado a uma Jornada no Controle de Desempenho.';
public static $MSG_UTL_36 = 'Não é possível @VALOR1@ este Usuário, pois o mesmo está vinculado a pelo menos uma parametrização na Administração de algum Tipo de Controle de Desempenho:';
public static $MSG_UTL_37 = 'Não é possível @VALOR1@ este Usuário, pois o mesmo está vinculado a uma Jornada no Controle de Desempenho.';
public static $MSG_UTL_38 = 'Não é possível @VALOR1@ esta Fila pois a mesma está vinculada a um Grupo de Atividade.';
public static $MSG_UTL_39 = 'Não é possível @VALOR1@ este Tipo de Processo pois o mesmo está vinculado a um Tipo de Controle de Desempenho.';
public static $MSG_UTL_40 = 'Não é possível @VALOR1@ este Usuário pois o mesmo está vinculado a um Tipo de Controle de Desempenho.';
public static $MSG_UTL_41 = 'Não é possível @VALOR1@ este Usuário pois o mesmo está vinculado a um Fluxo de Atendimento Ativo no Controle de Desempenho.';
public static $MSG_UTL_42 = 'Não é possível @VALOR1@ este Usuário pois o mesmo está vinculado a um Fluxo de Atendimento no Controle de Desempenho.';
public static $MSG_UTL_40 = 'Não é possível @VALOR1@ este Usuário, pois o mesmo está vinculado como Gestor a pelo menos um Tipo de Controle de Desempenho:';
public static $MSG_UTL_41 = 'Não é possível @VALOR1@ este Usuário, pois está vinculado a Fluxos ativos em processos no Controle de Desempenho:';
public static $MSG_UTL_42 = 'Não é possível @VALOR1@ este Usuário, pois o mesmo está vinculado a um Fluxo de Atendimento no Controle de Desempenho.';
public static $MSG_UTL_43 = 'Não é possível @VALOR1@ esta Unidade pois a mesma está vinculada a um Tipo de Controle de Desempenho.';
public static $MSG_UTL_44 = 'Não é possível @VALOR1@ esta Atividade pois a mesma está vinculada a um Grupo de Atividade.';
public static $MSG_UTL_45 = 'Não é possível @VALOR1@ esta Unidade pois a mesma está vinculada um Fluxo de Atendimento no Controle de Desempenho.';
Expand Down
101 changes: 63 additions & 38 deletions sei/web/modulos/utilidades/rn/MdUtlRegrasGeraisRN.php
Original file line number Diff line number Diff line change
Expand Up @@ -116,12 +116,18 @@ private function _validarGestorTipoControle($arrIds, $acao)
$objMdUtlAdmRelTpCtrlUsuRN = new MdUtlAdmRelTpCtrlDesempUsuRN();
$objMdUtlAdmRelTpCtrlUsuDTO = new MdUtlAdmRelTpCtrlDesempUsuDTO();
$objMdUtlAdmRelTpCtrlUsuDTO->setNumIdUsuario($arrIds, InfraDTO::$OPER_IN);
$objMdUtlAdmRelTpCtrlUsuDTO->retStrNomeTipoControle();
$objMdUtlAdmRelTpCtrlUsuDTO->retTodos();

$existeGestor = $objMdUtlAdmRelTpCtrlUsuRN->contar($objMdUtlAdmRelTpCtrlUsuDTO) > 0;

if ($existeGestor) {
$msg = MdUtlMensagemINT::getMensagem(MdUtlMensagemINT::$MSG_UTL_40, array($acao));
$arrDados = $objMdUtlAdmRelTpCtrlUsuRN->listar($objMdUtlAdmRelTpCtrlUsuDTO);
$msg = MdUtlMensagemINT::getMensagem(MdUtlMensagemINT::$MSG_UTL_40, array($acao)) . "\n\n";

foreach ( $arrDados as $dadosDTO ) {
$msg .= "- {$dadosDTO->getStrNomeTipoControle()} \n";
}
}

return $msg;
Expand All @@ -133,73 +139,51 @@ private function _validarControleDsmp($arrIds, $acao)

$objMdUtlControleDsmpRN = new MdUtlControleDsmpRN();
$objMdUtlControleDsmpDTO = new MdUtlControleDsmpDTO();
$objMdUtlControleDsmpDTO->retTodos();
$objMdUtlControleDsmpDTO->retStrProtocoloProcedimentoFormatado();
$objMdUtlControleDsmpDTO->retStrSiglaUnidade();

$objMdUtlControleDsmpDTO->adicionarCriterio(array('IdUsuarioAtual', 'IdUsuarioDistribuicao'), array(InfraDTO::$OPER_IN, InfraDTO::$OPER_IN), array($arrIds, $arrIds), array(InfraDTO::$OPER_LOGICO_OR));
$existeControleDsmp = $objMdUtlControleDsmpRN->contar($objMdUtlControleDsmpDTO) > 0;
$qtd = $objMdUtlControleDsmpRN->contar($objMdUtlControleDsmpDTO);
$existeControleDsmp = $qtd > 0;

if ($existeControleDsmp) {
$msg = MdUtlMensagemINT::getMensagem(MdUtlMensagemINT::$MSG_UTL_41, array($acao));
$arrDados = $objMdUtlControleDsmpRN->listar($objMdUtlControleDsmpDTO);
$msg = MdUtlMensagemINT::getMensagem(MdUtlMensagemINT::$MSG_UTL_41, array($acao)) . "\n\n";
$loop = 0;
foreach ( $arrDados as $dadosDTO ) {
if ( $loop > 14 ) break;
$msg .= "- {$dadosDTO->getStrSiglaUnidade()}: {$dadosDTO->getStrProtocoloProcedimentoFormatado()} \n";
$loop++;
}
}

return $msg;

}

private function _validarHsControleDsmp($arrIds, $acao)
{

$msg = '';

$objMdUtlHistControleDsmpRN = new MdUtlHistControleDsmpRN();
$objMdUtlHistControleDsmpDTO = new MdUtlHistControleDsmpDTO();
$objMdUtlHistControleDsmpDTO->retTodos();

$objMdUtlHistControleDsmpDTO->adicionarCriterio(array('IdUsuarioAtual', 'IdUsuarioDistribuicao'), array(InfraDTO::$OPER_IN, InfraDTO::$OPER_IN), array($arrIds, $arrIds), array(InfraDTO::$OPER_LOGICO_OR));
$existeHsControleDsmp = $objMdUtlHistControleDsmpRN->contar($objMdUtlHistControleDsmpDTO) > 0;

if ($existeHsControleDsmp) {
$msg = MdUtlMensagemINT::getMensagem(MdUtlMensagemINT::$MSG_UTL_42, array($acao));
}

return $msg;

}

protected function verificarExistenciaUsuarioConectado($params)
{

$arrObjUsuarioAPI = $params[0];
$acao = $params[1];
$arrIds = array();
$msg = '';


foreach ($arrObjUsuarioAPI as $objUsuario) {
$arrIds[] = $objUsuario->getIdUsuario();
}


//Validar Controle DSMP
$msg = $this->_validarControleDsmp($arrIds, $acao);
if ($msg != '') {
return $msg;
}

//Validar Histórico Controle DSMP
$msg = $this->_validarHsControleDsmp($arrIds, $acao);
if ($msg != '') {
return $msg;
}


//Validar Gestor no Tipo de Controle
$msg = $this->_validarGestorTipoControle($arrIds, $acao);
if ($msg != '') {
return $msg;
}

//Validar Usuário Participante na Parametrização do Tipo de Controle
//Validar Usuário Participante na Parametrização do Tipo de Controle + Fila
$msg = $this->_validarUsuarioParticipanteParametrizacao($arrIds, $acao);
if ($msg != '') {
return $msg;
Expand All @@ -213,10 +197,51 @@ private function _validarUsuarioParticipanteParametrizacao($arrIds, $acao)
$objMdUtlAdmRelPrmGrUsuDTO->setNumIdUsuario($arrIds, InfraDTO::$OPER_IN);
$objMdUtlAdmRelPrmGrUsuDTO->retTodos();

$existeUsuarioParticipante = $objMdUtlAdmRelPrmGrUsuRN->contar($objMdUtlAdmRelPrmGrUsuDTO) > 0;
$qtd = $objMdUtlAdmRelPrmGrUsuRN->contar($objMdUtlAdmRelPrmGrUsuDTO);

$existeUsuarioParticipante = $qtd > 0;

if ($existeUsuarioParticipante) {
$msg = MdUtlMensagemINT::getMensagem(MdUtlMensagemINT::$MSG_UTL_36, array($acao));
$msg = MdUtlMensagemINT::getMensagem(MdUtlMensagemINT::$MSG_UTL_36, array($acao)) . "\n\n";
$arrDados = $objMdUtlAdmRelPrmGrUsuRN->listar($objMdUtlAdmRelPrmGrUsuDTO);
$arrIdsPrmGr = InfraArray::converterArrInfraDTO($arrDados,'IdMdUtlAdmPrmGr');
$arrIdsPrmGrUsu = InfraArray::converterArrInfraDTO($arrDados,'IdMdUtlAdmPrmGrUsu','IdMdUtlAdmPrmGr');

foreach ( $arrIdsPrmGr as $idPrmGr ) {
$objMdUtlAdmTpCtrlDTO = new MdUtlAdmTpCtrlDesempDTO();
$objMdUtlAdmTpCtrlDTO->setNumIdMdUtlAdmPrmGr($idPrmGr);
//$objMdUtlAdmTpCtrlDTO->setOrd('Nome',InfraDTO::$TIPO_ORDENACAO_ASC);
$objMdUtlAdmTpCtrlDTO->retStrNome();

$objTpCtrlDTO = ( new MdUtlAdmTpCtrlDesempRN() )->consultar($objMdUtlAdmTpCtrlDTO);

$msg .= "Tipo de Controle: {$objTpCtrlDTO->getStrNome()} \n";
$msg .= " - Membro Participante \n";

// Consulta os Ids das filas que o Usuario faz parte como Membro Participante
$objMdUtlAdmFilaPrmGrUsuDTO = new MdUtlAdmFilaPrmGrUsuDTO();
$objMdUtlAdmFilaPrmGrUsuDTO->setNumIdMdUtlAdmPrmGrUsu( $arrIdsPrmGrUsu[$idPrmGr] );
$objMdUtlAdmFilaPrmGrUsuDTO->retNumIdMdUtlAdmFila();

$objMdUtlAdmFilaPrmGrUsuDTO = ( new MdUtlAdmFilaPrmGrUsuRN() )->listar( $objMdUtlAdmFilaPrmGrUsuDTO );
$arrIdsFila = InfraArray::converterArrInfraDTO($objMdUtlAdmFilaPrmGrUsuDTO,'IdMdUtlAdmFila');

if ( $arrIdsFila ) {
// Consulta as Filas
$objMdUtlAdmFilaDTO = new MdUtlAdmFilaDTO();
$objMdUtlAdmFilaDTO->setNumIdMdUtlAdmFila($arrIdsFila, InfraDTO::$OPER_IN);
$objMdUtlAdmFilaDTO->retStrNome();
$objMdUtlAdmFilaDTO->retNumIdMdUtlAdmFila();
$objMdUtlAdmFilaDTO->setOrd('Nome', InfraDTO::$TIPO_ORDENACAO_ASC);

$strListaFilas = implode(
', ' ,
InfraArray::converterArrInfraDTO( ( new MdUtlAdmFilaRN() )->listar($objMdUtlAdmFilaDTO) , 'Nome')
);

$msg .= " - Filas: $strListaFilas \n\n";
}
}
}

return $msg;
Expand Down

0 comments on commit 69a825f

Please sign in to comment.