{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./node_modules/moment/locale sync ^\\.\\/.*$","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/core/guards/Calendario.guard.ts","./src/app/core/guards/Indicador.guard.ts","./src/app/core/guards/auth.guard.ts","./src/app/core/guards/categoriaRisco.guard.ts","./src/app/core/guards/coordenacao.guard.ts","./src/app/core/guards/criterio.guard.ts","./src/app/core/guards/custoRecurso.guard.ts","./src/app/core/guards/faseAtividade.guard.ts","./src/app/core/guards/matrizPlanejamento.guard.ts","./src/app/core/guards/modeloRelatorio.guard.ts","./src/app/core/guards/naturezaResponsabilidade.guard.ts","./src/app/core/guards/paa.guard.ts","./src/app/core/guards/pea.guard.ts","./src/app/core/guards/pergunta.guard.ts","./src/app/core/guards/periodo.guard.ts","./src/app/core/guards/procedimentoAuditoria.guard.ts","./src/app/core/guards/questao.guard.ts","./src/app/core/guards/questionario.guard.ts","./src/app/core/guards/recomendacao.guard.ts","./src/app/core/guards/riscos.guard.ts","./src/app/core/guards/subtipoAuditoria.guard.ts","./src/app/core/guards/tecnicaAuditoria.guard.ts","./src/app/core/guards/tipoAuditoria.guard.ts","./src/app/core/guards/tipoCriterio.guard.ts","./src/app/core/guards/tipoDispensa.guard.ts","./src/app/core/guards/tipoEnfase.guard.ts","./src/app/core/helpers/date.helper.ts","./src/app/core/helpers/filterby.ts","./src/app/core/helpers/mat-sort-data-accessor.ts","./src/app/core/helpers/number.helper.ts","./src/app/core/helpers/ptbr-paginator-intl.ts","./src/app/core/http/auth.interceptor.ts","./src/app/core/http/loading.interceptor.ts","./src/app/models/enum/acao-recurso.enum.ts","./src/app/models/enum/questionario-ug-situacao.enum.ts","./src/app/models/enum/recurso-perfil.enum.ts","./src/app/models/enum/riscos-chaves-situacao.ts","./src/app/models/enum/status-avaliacao-questionario-ug.enum.ts","./src/app/models/enum/status-solicitcao-tecnica.enum.ts","./src/app/models/enum/tipo-avaliacao-questionario-ug.enum.ts","./src/app/models/enum/tipo-documento-aprovacao.enum.ts","./src/app/models/enum/tipo-feriado.enum.ts","./src/app/models/enum/tipo-questionario-ug.enum.ts","./src/app/models/enum/tipo-universo.enum.ts","./src/app/models/enum/universo-auditavel-situacao.ts","./src/app/models/filtro.model.ts","./src/app/models/permissao.model.ts","./src/app/pages/agente-publico-form/aba-dados-basicos/aba-dados-basicos.component.ts","./src/app/pages/agente-publico-form/aba-dados-basicos/aba-dados-basicos.component.html","./src/app/pages/agente-publico-form/aba-dispensas/aba-dispensas.component.ts","./src/app/pages/agente-publico-form/aba-dispensas/aba-dispensas.component.html","./src/app/pages/agente-publico-form/aba-dispensas/modal-adicionar-dispensa/modal-adicionar-dispensa.component.ts","./src/app/pages/agente-publico-form/aba-dispensas/modal-adicionar-dispensa/modal-adicionar-dispensa.component.html","./src/app/pages/agente-publico-form/aba-disponibilidade/aba-disponibilidade.component.ts","./src/app/pages/agente-publico-form/aba-disponibilidade/aba-disponibilidade.component.html","./src/app/pages/agente-publico-form/agente-publico-form.component.ts","./src/app/pages/agente-publico-form/agente-publico-form.component.html","./src/app/pages/agente-publico-list/agente-publico-list.component.ts","./src/app/pages/agente-publico-list/agente-publico-list.component.html","./src/app/pages/aprovacao-list/aprovacao-list.component.ts","./src/app/pages/aprovacao-list/aprovacao-list.component.html","./src/app/pages/aprovacao-list/modal-avaliar/modal-avaliar.component.ts","./src/app/pages/aprovacao-list/modal-avaliar/modal-avaliar.component.html","./src/app/pages/auditoria-list/auditoria-list.component.ts","./src/app/pages/auditoria-list/auditoria-list.component.html","./src/app/pages/calendario-form/calendario-form.component.ts","./src/app/pages/calendario-form/calendario-form.component.html","./src/app/pages/calendario-list/calendario-list.component.ts","./src/app/pages/calendario-list/calendario-list.component.html","./src/app/pages/capitulo-relatorio-form/capitulo-relatorio-form.component.ts","./src/app/pages/capitulo-relatorio-form/capitulo-relatorio-form.component.html","./src/app/pages/capitulo-relatorio-list/capitulo-relatorio-list.component.ts","./src/app/pages/capitulo-relatorio-list/capitulo-relatorio-list.component.html","./src/app/pages/categoria-risco-form/categoria-risco-form.component.ts","./src/app/pages/categoria-risco-form/categoria-risco-form.component.html","./src/app/pages/categoria-risco-list/categoria-risco-list.component.ts","./src/app/pages/categoria-risco-list/categoria-risco-list.component.html","./src/app/pages/constatacao-form/constatacao-form.component.ts","./src/app/pages/constatacao-form/constatacao-form.component.html","./src/app/pages/constatacao-form/modal-constatacao/modal-constatacao.component.ts","./src/app/pages/constatacao-form/modal-constatacao/modal-constatacao.component.html","./src/app/pages/constatacao-form/modal-recomendacao/modal-recomendacao.component.ts","./src/app/pages/constatacao-form/modal-recomendacao/modal-recomendacao.component.html","./src/app/pages/constatacao-list/constatacao-list.component.ts","./src/app/pages/constatacao-list/constatacao-list.component.html","./src/app/pages/coordenacao-form/coordenacao-form.component.ts","./src/app/pages/coordenacao-form/coordenacao-form.component.html","./src/app/pages/coordenacao-form/modal-tipo-trabalho/modal-tipo-trabalho.component.ts","./src/app/pages/coordenacao-form/modal-tipo-trabalho/modal-tipo-trabalho.component.html","./src/app/pages/coordenacao-list/coordenacao-list.component.ts","./src/app/pages/coordenacao-list/coordenacao-list.component.html","./src/app/pages/criterio-form/criterio-form.component.ts","./src/app/pages/criterio-form/criterio-form.component.html","./src/app/pages/criterio-form/modal-metrica-numerico/modal-metrica-numerico.component.ts","./src/app/pages/criterio-form/modal-metrica-numerico/modal-metrica-numerico.component.html","./src/app/pages/criterio-form/modal-metrica-opcoes/modal-metrica-opcoes.component.ts","./src/app/pages/criterio-form/modal-metrica-opcoes/modal-metrica-opcoes.component.html","./src/app/pages/criterio-list/criterio-list.component.ts","./src/app/pages/criterio-list/criterio-list.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-controles/criterios-avaliacao-form-controles.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-controles/criterios-avaliacao-form-controles.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-controles/modal-controle/modal-controle.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-controles/modal-controle/modal-controle.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-dados/criterios-avaliacao-form-dados.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-dados/criterios-avaliacao-form-dados.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-niveis-risco-residual/criterios-avaliacao-form-niveis-risco-residual.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-niveis-risco-residual/criterios-avaliacao-form-niveis-risco-residual.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-niveis-risco-residual/formula-risco-residual/formula-risco-residual.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-niveis-risco-residual/formula-risco-residual/formula-risco-residual.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-niveis-risco-residual/modal-risco-residual/modal-risco-residual.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-niveis-risco-residual/modal-risco-residual/modal-risco-residual.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/criterios-avaliacao-form-risco-inerente.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/criterios-avaliacao-form-risco-inerente.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-escalas/form-magnitude-escala/form-magnitude-escala.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-escalas/form-magnitude-escala/form-magnitude-escala.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-escalas/grid-magnitude-escala/grid-magnitude-escala.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-escalas/grid-magnitude-escala/grid-magnitude-escala.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-escalas/modal-escalas.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-escalas/modal-escalas.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-formula-risco-inerente/modal-formula-risco-inerente.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-formula-risco-inerente/modal-formula-risco-inerente.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-risco-inerente/modal-risco-inerente.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-risco-inerente/modal-risco-inerente.component.html","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form.component.ts","./src/app/pages/criterios-avaliacao-form/criterios-avaliacao-form.component.html","./src/app/pages/criterios-avaliacao-list/criterios-avaliacao-list.component.ts","./src/app/pages/criterios-avaliacao-list/criterios-avaliacao-list.component.html","./src/app/pages/custo-recurso-form/custo-recurso-form.component.ts","./src/app/pages/custo-recurso-form/custo-recurso-form.component.html","./src/app/pages/custo-recurso-list/custo-recurso-list.component.ts","./src/app/pages/custo-recurso-list/custo-recurso-list.component.html","./src/app/pages/erro/erro.component.ts","./src/app/pages/erro/erro.component.html","./src/app/pages/faixa-classificacao-form/faixa-classificacao-form.component.ts","./src/app/pages/faixa-classificacao-form/faixa-classificacao-form.component.html","./src/app/pages/fase-atividade-form/fase-atividade-form.component.ts","./src/app/pages/fase-atividade-form/fase-atividade-form.component.html","./src/app/pages/fase-atividade-list/fase-atividade-list.component.ts","./src/app/pages/fase-atividade-list/fase-atividade-list.component.html","./src/app/pages/fluxo-aprovacao-form/fluxo-aprovacao-form.component.ts","./src/app/pages/fluxo-aprovacao-form/fluxo-aprovacao-form.component.html","./src/app/pages/fluxo-aprovacao-list/fluxo-aprovacao-list.component.ts","./src/app/pages/fluxo-aprovacao-list/fluxo-aprovacao-list.component.html","./src/app/pages/indicador-form/indicador-form.component.ts","./src/app/pages/indicador-form/indicador-form.component.html","./src/app/pages/indicador-list/indicador-list.component.ts","./src/app/pages/indicador-list/indicador-list.component.html","./src/app/pages/inicial/inicial.component.ts","./src/app/pages/inicial/inicial.component.html","./src/app/pages/log-sistema-form/log-form.component.ts","./src/app/pages/log-sistema-form/log-form.component.html","./src/app/pages/log-sistema-list/log-list.component.ts","./src/app/pages/log-sistema-list/log-list.component.html","./src/app/pages/matriz-planejamento-form/matriz-planejamento-form.component.ts","./src/app/pages/matriz-planejamento-form/matriz-planejamento-form.component.html","./src/app/pages/matriz-planejamento-list/matriz-planejamento-list.component.ts","./src/app/pages/matriz-planejamento-list/matriz-planejamento-list.component.html","./src/app/pages/matriz-planejamento-relatorio/matriz-planejamento-relatorio.component.ts","./src/app/pages/matriz-planejamento-relatorio/matriz-planejamento-relatorio.component.html","./src/app/pages/modelo-questionario-form/modal-cancelar/modal-cancelar.component.ts","./src/app/pages/modelo-questionario-form/modal-cancelar/modal-cancelar.component.html","./src/app/pages/modelo-questionario-form/modal-pergunta/modal-pergunta.component.ts","./src/app/pages/modelo-questionario-form/modal-pergunta/modal-pergunta.component.html","./src/app/pages/modelo-questionario-form/modal-secao/modal-secao.component.ts","./src/app/pages/modelo-questionario-form/modal-secao/modal-secao.component.html","./src/app/pages/modelo-questionario-form/modelo-questionario-form.component.ts","./src/app/pages/modelo-questionario-form/modelo-questionario-form.component.html","./src/app/pages/modelo-questionario-list/modelo-questionario-list.component.ts","./src/app/pages/modelo-questionario-list/modelo-questionario-list.component.html","./src/app/pages/modelo-relatorio-form/modal-capitulo/modal-capitulo.component.ts","./src/app/pages/modelo-relatorio-form/modal-capitulo/modal-capitulo.component.html","./src/app/pages/modelo-relatorio-form/modelo-relatorio-form.component.ts","./src/app/pages/modelo-relatorio-form/modelo-relatorio-form.component.html","./src/app/pages/modelo-relatorio-list/modelo-relatorio-list.component.ts","./src/app/pages/modelo-relatorio-list/modelo-relatorio-list.component.html","./src/app/pages/natureza-responsabilidade-form/natureza-responsabilidade-form.component.ts","./src/app/pages/natureza-responsabilidade-form/natureza-responsabilidade-form.component.html","./src/app/pages/natureza-responsabilidade-list/natureza-responsabilidade-list.component.ts","./src/app/pages/natureza-responsabilidade-list/natureza-responsabilidade-list.component.html","./src/app/pages/opa/form/opa-form.component.ts","./src/app/pages/opa/form/opa-form.component.html","./src/app/pages/opa/list/opa-list.component.ts","./src/app/pages/opa/list/opa-list.component.html","./src/app/pages/opa/modal/modal-alocar-equipe/modal-alocar-equipe-opa.component.ts","./src/app/pages/opa/modal/modal-alocar-equipe/modal-alocar-equipe-opa.component.html","./src/app/pages/opa/relatorio/opa-relatorio.component.ts","./src/app/pages/opa/relatorio/opa-relatorio.component.html","./src/app/pages/osa/filtro-component/filtro-component.component.ts","./src/app/pages/osa/filtro-component/filtro-component.component.html","./src/app/pages/osa/osa-form/aba-informacoes-basicas/aba-informacoes-basicas.component.ts","./src/app/pages/osa/osa-form/aba-informacoes-basicas/aba-informacoes-basicas.component.html","./src/app/pages/osa/osa-form/osa-abas/osa-abas.component.ts","./src/app/pages/osa/osa-form/osa-abas/osa-abas.component.html","./src/app/pages/osa/osa-form/osa-form.component.ts","./src/app/pages/osa/osa-form/osa-form.component.html","./src/app/pages/osa/osa-imprimir/osa-imprimir.component.ts","./src/app/pages/osa/osa-imprimir/osa-imprimir.component.html","./src/app/pages/osa/osa-list/osa-list.component.ts","./src/app/pages/osa/osa-list/osa-list.component.html","./src/app/pages/osa/osa.component.ts","./src/app/pages/osa/osa.component.html","./src/app/pages/paa-elaborar/aba-alocacao/paa-aba-alocacao.component.ts","./src/app/pages/paa-elaborar/aba-alocacao/paa-aba-alocacao.component.html","./src/app/pages/paa-elaborar/aba-capacidade/modal-capacidade/modal-capacidade-paa.component.ts","./src/app/pages/paa-elaborar/aba-capacidade/modal-capacidade/modal-capacidade-paa.component.html","./src/app/pages/paa-elaborar/aba-capacidade/paa-aba-capacidade.component.ts","./src/app/pages/paa-elaborar/aba-capacidade/paa-aba-capacidade.component.html","./src/app/pages/paa-elaborar/aba-dados/paa-aba-dados-basicos.component.ts","./src/app/pages/paa-elaborar/aba-dados/paa-aba-dados-basicos.component.html","./src/app/pages/paa-elaborar/aba-distribuicao/paa-aba-distribuicao.component.ts","./src/app/pages/paa-elaborar/aba-distribuicao/paa-aba-distribuicao.component.html","./src/app/pages/paa-elaborar/aba-indices-criterios/paa-aba-indices-criterios.component.ts","./src/app/pages/paa-elaborar/aba-indices-criterios/paa-aba-indices-criterios.component.html","./src/app/pages/paa-elaborar/modal-alocar-equipe/modal-alocar-equipe.component.ts","./src/app/pages/paa-elaborar/modal-alocar-equipe/modal-alocar-equipe.component.html","./src/app/pages/paa-elaborar/modal-alterar-tipo-auditoria/modal-alterar-tipo-auditoria.component.ts","./src/app/pages/paa-elaborar/modal-alterar-tipo-auditoria/modal-alterar-tipo-auditoria.component.html","./src/app/pages/paa-elaborar/modal-alterar-tipo-enfase/modal-alterar-tipo-enfase.component.ts","./src/app/pages/paa-elaborar/modal-alterar-tipo-enfase/modal-alterar-tipo-enfase.component.html","./src/app/pages/paa-elaborar/modal-cadastrar-criterio/modal-cadastrar-criterio.component.ts","./src/app/pages/paa-elaborar/modal-cadastrar-criterio/modal-cadastrar-criterio.component.html","./src/app/pages/paa-elaborar/modal-cadastrar-indicador/modal-cadastrar-indicador.component.ts","./src/app/pages/paa-elaborar/modal-cadastrar-indicador/modal-cadastrar-indicador.component.html","./src/app/pages/paa-elaborar/modal-capacidade-dispensa/modal-capacidade-dispensa.component.ts","./src/app/pages/paa-elaborar/modal-capacidade-dispensa/modal-capacidade-dispensa.component.html","./src/app/pages/paa-elaborar/modal-confirmar-reativacao-distribuicao/modal-confirmar-reativacao-distribuicao.component.ts","./src/app/pages/paa-elaborar/modal-confirmar-reativacao-distribuicao/modal-confirmar-reativacao-distribuicao.component.html","./src/app/pages/paa-elaborar/modal-descricao-paac/modal-descricao-paac.component.ts","./src/app/pages/paa-elaborar/modal-descricao-paac/modal-descricao-paac.component.html","./src/app/pages/paa-elaborar/modal-entranhar/modal-entranhar.component.ts","./src/app/pages/paa-elaborar/modal-entranhar/modal-entranhar.component.html","./src/app/pages/paa-elaborar/modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component.ts","./src/app/pages/paa-elaborar/modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component.html","./src/app/pages/paa-elaborar/modal-grafico-distribuicao/modal-grafico-distribuicao.component.ts","./src/app/pages/paa-elaborar/modal-grafico-distribuicao/modal-grafico-distribuicao.component.html","./src/app/pages/paa-elaborar/modal-grafico-distribuicao/template-impressao.ts","./src/app/pages/paa-elaborar/modal-importar-arquivo-criterio-paa/modal-importar-arquivo-criterio-paa.component.ts","./src/app/pages/paa-elaborar/modal-importar-arquivo-criterio-paa/modal-importar-arquivo-criterio-paa.component.html","./src/app/pages/paa-elaborar/modal-preencher-formulario/modal-preencher-formulario-paa.component.ts","./src/app/pages/paa-elaborar/modal-preencher-formulario/modal-preencher-formulario-paa.component.html","./src/app/pages/paa-elaborar/modal-ranking-prioridade/modal-ranking-prioridade.component.ts","./src/app/pages/paa-elaborar/modal-ranking-prioridade/modal-ranking-prioridade.component.html","./src/app/pages/paa-elaborar/modal-selecionar-colunas/modal-selecionar-colunas.component.ts","./src/app/pages/paa-elaborar/modal-selecionar-colunas/modal-selecionar-colunas.component.html","./src/app/pages/paa-elaborar/modal-selecionar-ug/modal-selecionar-ug.component.ts","./src/app/pages/paa-elaborar/modal-selecionar-ug/modal-selecionar-ug.component.html","./src/app/pages/paa-elaborar/modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component.ts","./src/app/pages/paa-elaborar/modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component.html","./src/app/pages/paa-elaborar/paa-elaborar.component.ts","./src/app/pages/paa-elaborar/paa-elaborar.component.html","./src/app/pages/paa-list/paa-list.component.ts","./src/app/pages/paa-list/paa-list.component.html","./src/app/pages/paa-relatorio/paa-relatorio.component.ts","./src/app/pages/paa-relatorio/paa-relatorio.component.html","./src/app/pages/parametrizacao-documento-edocs-form/parametrizacao-documento-edocs-form.component.ts","./src/app/pages/parametrizacao-documento-edocs-form/parametrizacao-documento-edocs-form.component.html","./src/app/pages/parametrizacao-list/modal-parametrizacao-form/modal-parametrizacao-form.component.ts","./src/app/pages/parametrizacao-list/modal-parametrizacao-form/modal-parametrizacao-form.component.html","./src/app/pages/parametrizacao-list/parametrizacao-list.component.ts","./src/app/pages/parametrizacao-list/parametrizacao-list.component.html","./src/app/pages/pea-form/modal-autuacao/modal-autuacao.component.ts","./src/app/pages/pea-form/modal-autuacao/modal-autuacao.component.html","./src/app/pages/pea-form/modal-capacidade/modal-capacidade.component.ts","./src/app/pages/pea-form/modal-capacidade/modal-capacidade.component.html","./src/app/pages/pea-form/modal-descricao-dias-uteis/modal-descricao-dias-uteis.component.ts","./src/app/pages/pea-form/modal-descricao-dias-uteis/modal-descricao-dias-uteis.component.html","./src/app/pages/pea-form/modal-descricao-peac/modal-descricao-peac.component.ts","./src/app/pages/pea-form/modal-descricao-peac/modal-descricao-peac.component.html","./src/app/pages/pea-form/modal-detalhar-valor-risco/modal-detalhar-valor-risco.component.ts","./src/app/pages/pea-form/modal-detalhar-valor-risco/modal-detalhar-valor-risco.component.html","./src/app/pages/pea-form/modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component.ts","./src/app/pages/pea-form/modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component.html","./src/app/pages/pea-form/modal-importar-arquivo-criterio/modal-importar-arquivo-criterio.component.ts","./src/app/pages/pea-form/modal-importar-arquivo-criterio/modal-importar-arquivo-criterio.component.html","./src/app/pages/pea-form/modal-preencher-formulario/modal-preencher-formulario.component.ts","./src/app/pages/pea-form/modal-preencher-formulario/modal-preencher-formulario.component.html","./src/app/pages/pea-form/modal-selecionar-coordenacoes/modal-selecionar-coordenacoes.component.ts","./src/app/pages/pea-form/modal-selecionar-coordenacoes/modal-selecionar-coordenacoes.component.html","./src/app/pages/pea-form/modal-selecionar-ug/modal-selecionar-ug.component.ts","./src/app/pages/pea-form/modal-selecionar-ug/modal-selecionar-ug.component.html","./src/app/pages/pea-form/modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component.ts","./src/app/pages/pea-form/modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component.html","./src/app/pages/pea-form/modal-visualizar-respostas/modal-visualizar-respostas.component.ts","./src/app/pages/pea-form/modal-visualizar-respostas/modal-visualizar-respostas.component.html","./src/app/pages/pea-form/pea-form.component.ts","./src/app/pages/pea-form/pea-form.component.html","./src/app/pages/pea-list/pea-list.component.ts","./src/app/pages/pea-list/pea-list.component.html","./src/app/pages/pea-relatorio/pea-relatorio.component.ts","./src/app/pages/pea-relatorio/pea-relatorio.component.html","./src/app/pages/pendencia-list/pendencia-list.component.ts","./src/app/pages/pendencia-list/pendencia-list.component.html","./src/app/pages/pergunta-form/modal-metrica-pergunta/modal-excluir-metrica/modal-excluir-metrica.component.ts","./src/app/pages/pergunta-form/modal-metrica-pergunta/modal-excluir-metrica/modal-excluir-metrica.component.html","./src/app/pages/pergunta-form/modal-metrica-pergunta/modal-metrica-pergunta.component.ts","./src/app/pages/pergunta-form/modal-metrica-pergunta/modal-metrica-pergunta.component.html","./src/app/pages/pergunta-form/pergunta-form.component.ts","./src/app/pages/pergunta-form/pergunta-form.component.html","./src/app/pages/pergunta-list/pergunta-list.component.ts","./src/app/pages/pergunta-list/pergunta-list.component.html","./src/app/pages/periodo-form/periodo-form.component.ts","./src/app/pages/periodo-form/periodo-form.component.html","./src/app/pages/periodo-list/periodo-list.component.ts","./src/app/pages/periodo-list/periodo-list.component.html","./src/app/pages/planejamento-form/imprimir/imprimir.component.ts","./src/app/pages/planejamento-form/imprimir/imprimir.component.html","./src/app/pages/planejamento-form/matriz-planejamento-visualizar/matriz-planejamento-visualizar.component.ts","./src/app/pages/planejamento-form/matriz-planejamento-visualizar/matriz-planejamento-visualizar.component.html","./src/app/pages/planejamento-form/modal-alocar-equipe/modal-alocar-equipe-planejamento.component.ts","./src/app/pages/planejamento-form/modal-alocar-equipe/modal-alocar-equipe-planejamento.component.html","./src/app/pages/planejamento-form/modal-ug-planejamento/modal-ug-planejamento.component.ts","./src/app/pages/planejamento-form/modal-ug-planejamento/modal-ug-planejamento.component.html","./src/app/pages/planejamento-form/planejamento-form.component.ts","./src/app/pages/planejamento-form/planejamento-form.component.html","./src/app/pages/planejamento-list/planejamento-list.component.ts","./src/app/pages/planejamento-list/planejamento-list.component.html","./src/app/pages/pre-planejamento-list/pre-planejamento-list.component.ts","./src/app/pages/pre-planejamento-list/pre-planejamento-list.component.html","./src/app/pages/pre-planejamento-resposta-form/modal-concordar/modal-concordar.component.ts","./src/app/pages/pre-planejamento-resposta-form/modal-concordar/modal-concordar.component.html","./src/app/pages/pre-planejamento-resposta-form/modal-contestar/modal-contestar.component.ts","./src/app/pages/pre-planejamento-resposta-form/modal-contestar/modal-contestar.component.html","./src/app/pages/pre-planejamento-resposta-form/modal-delegar/modal-delegar.component.ts","./src/app/pages/pre-planejamento-resposta-form/modal-delegar/modal-delegar.component.html","./src/app/pages/pre-planejamento-resposta-form/pre-planejamento-resposta-form.component.ts","./src/app/pages/pre-planejamento-resposta-form/pre-planejamento-resposta-form.component.html","./src/app/pages/procedimento-auditoria-form/modal-procedimento-auditoria/modal-procedimento-auditoria.component.ts","./src/app/pages/procedimento-auditoria-form/modal-procedimento-auditoria/modal-procedimento-auditoria.component.html","./src/app/pages/procedimento-auditoria-form/procedimento-auditoria-form.component.ts","./src/app/pages/procedimento-auditoria-form/procedimento-auditoria-form.component.html","./src/app/pages/procedimento-auditoria-list/procedimento-auditoria-list.component.ts","./src/app/pages/procedimento-auditoria-list/procedimento-auditoria-list.component.html","./src/app/pages/questao-form/questao-form.component.ts","./src/app/pages/questao-form/questao-form.component.html","./src/app/pages/questao-list/questao-list.component.ts","./src/app/pages/questao-list/questao-list.component.html","./src/app/pages/questionario-form/modal-delegar/modal-delegar-component.ts","./src/app/pages/questionario-form/modal-delegar/modal-delegar-component.html","./src/app/pages/questionario-form/questionario-form.component.ts","./src/app/pages/questionario-form/questionario-form.component.html","./src/app/pages/questionario-list/questionario-list.component.ts","./src/app/pages/questionario-list/questionario-list.component.html","./src/app/pages/recomendacao-form/recomendacao-form.component.ts","./src/app/pages/recomendacao-form/recomendacao-form.component.html","./src/app/pages/recomendacao-list/recomendacao-list.component.ts","./src/app/pages/recomendacao-list/recomendacao-list.component.html","./src/app/pages/riscos-form/riscos-form.component.ts","./src/app/pages/riscos-form/riscos-form.component.html","./src/app/pages/riscos-list/riscos-list.component.ts","./src/app/pages/riscos-list/riscos-list.component.html","./src/app/pages/rol-responsaveis-form/modal-incluir-periodo-exercicio/modal-incluir-periodo-exercicio.component.ts","./src/app/pages/rol-responsaveis-form/modal-incluir-periodo-exercicio/modal-incluir-periodo-exercicio.component.html","./src/app/pages/rol-responsaveis-form/modal-incluir-responsaveis/modal-incluir-responsavel.component.ts","./src/app/pages/rol-responsaveis-form/modal-incluir-responsaveis/modal-incluir-responsavel.component.html","./src/app/pages/rol-responsaveis-form/modal-selecionar-responsavel/modal-selecionar-responsavel.component.ts","./src/app/pages/rol-responsaveis-form/modal-selecionar-responsavel/modal-selecionar-responsavel.component.html","./src/app/pages/rol-responsaveis-form/rol-responsaveis-form.component.ts","./src/app/pages/rol-responsaveis-form/rol-responsaveis-form.component.html","./src/app/pages/rol-responsaveis-list/rol-responsaveis-list.component.ts","./src/app/pages/rol-responsaveis-list/rol-responsaveis-list.component.html","./src/app/pages/rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/imprimir-rol-responsavel-unidade-gestora.component.ts","./src/app/pages/rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/imprimir-rol-responsavel-unidade-gestora.component.html","./src/app/pages/rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/modal-selecionar-ug-imprimir/modal-selecionar-ug-imprimir.component.ts","./src/app/pages/rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/modal-selecionar-ug-imprimir/modal-selecionar-ug-imprimir.component.html","./src/app/pages/rol-responsavel-relatoria/imprimir-rol-responsaveis/imprimir-rol-responsaveis.component.ts","./src/app/pages/rol-responsavel-relatoria/imprimir-rol-responsaveis/imprimir-rol-responsaveis.component.html","./src/app/pages/solicitacao-tecnica/list/solicitacao-tecnica-list.component.ts","./src/app/pages/solicitacao-tecnica/list/solicitacao-tecnica-list.component.html","./src/app/pages/solicitacao-tecnica/modal-delegar-item/modal-delegar-item/modal-delegar-item.component.ts","./src/app/pages/solicitacao-tecnica/modal-delegar-item/modal-delegar-item/modal-delegar-item.component.html","./src/app/pages/solicitacao-tecnica/modal-item-solicitacao/modal-item-solicitacao.component.ts","./src/app/pages/solicitacao-tecnica/modal-item-solicitacao/modal-item-solicitacao.component.html","./src/app/pages/solicitacao-tecnica/solicitacao-tecnica-form/solicitacao-tecnica-form.component.ts","./src/app/pages/solicitacao-tecnica/solicitacao-tecnica-form/solicitacao-tecnica-form.component.html","./src/app/pages/subtipo-auditoria-form/subtipo-auditoria-form.component.ts","./src/app/pages/subtipo-auditoria-form/subtipo-auditoria-form.component.html","./src/app/pages/subtipo-auditoria-list/subtipo-auditoria-list.component.ts","./src/app/pages/subtipo-auditoria-list/subtipo-auditoria-list.component.html","./src/app/pages/tecnica-auditoria-form/tecnica-auditoria-form.component.ts","./src/app/pages/tecnica-auditoria-form/tecnica-auditoria-form.component.html","./src/app/pages/tecnica-auditoria-list/tecnica-auditoria-list.component.ts","./src/app/pages/tecnica-auditoria-list/tecnica-auditoria-list.component.html","./src/app/pages/tipo-auditoria-form/tipo-auditoria-form.component.ts","./src/app/pages/tipo-auditoria-form/tipo-auditoria-form.component.html","./src/app/pages/tipo-auditoria-list/tipo-auditoria-list.component.ts","./src/app/pages/tipo-auditoria-list/tipo-auditoria-list.component.html","./src/app/pages/tipo-criterio-form/tipo-criterio-form.component.ts","./src/app/pages/tipo-criterio-form/tipo-criterio-form.component.html","./src/app/pages/tipo-criterio-list/tipo-criterio-list.component.ts","./src/app/pages/tipo-criterio-list/tipo-criterio-list.component.html","./src/app/pages/tipo-dispensa-form/tipo-dispensa-form.component.ts","./src/app/pages/tipo-dispensa-form/tipo-dispensa-form.component.html","./src/app/pages/tipo-dispensa-list/tipo-dispensa-list.component.ts","./src/app/pages/tipo-dispensa-list/tipo-dispensa-list.component.html","./src/app/pages/tipo-enfase-form/tipo-enfase-form.component.ts","./src/app/pages/tipo-enfase-form/tipo-enfase-form.component.html","./src/app/pages/tipo-enfase-list/tipo-enfase-list.component.ts","./src/app/pages/tipo-enfase-list/tipo-enfase-list.component.html","./src/app/pages/tipo-universo-form/modal-tipo-universo-item/modal-tipo-universo-item-descricao/modal-tipo-universo-item-descricao.component.ts","./src/app/pages/tipo-universo-form/modal-tipo-universo-item/modal-tipo-universo-item-descricao/modal-tipo-universo-item-descricao.component.html","./src/app/pages/tipo-universo-form/modal-tipo-universo-item/modal-tipo-universo-item.component.ts","./src/app/pages/tipo-universo-form/modal-tipo-universo-item/modal-tipo-universo-item.component.html","./src/app/pages/tipo-universo-form/tipo-universo-form.component.ts","./src/app/pages/tipo-universo-form/tipo-universo-form.component.html","./src/app/pages/tipo-universo-list/tipo-universo-list.component.ts","./src/app/pages/tipo-universo-list/tipo-universo-list.component.html","./src/app/pages/unidade-gestora-form/aba-dados/aba-dados.component.ts","./src/app/pages/unidade-gestora-form/aba-dados/aba-dados.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/aba-entendendo-entidade.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/aba-entendendo-entidade.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/editar-entendendo-entidade/editar-entendendo-entidade.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/editar-entendendo-entidade/editar-entendendo-entidade.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/editar-entendendo-entidade/modal-pergunta/modal-pergunta.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/editar-entendendo-entidade/modal-pergunta/modal-pergunta.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/editar-entendendo-entidade/modal-secao/modal-secao.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/editar-entendendo-entidade/modal-secao/modal-secao.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/gerar-questionario/gerar-questionario.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/gerar-questionario/gerar-questionario.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/importacao-arquivo-questionario/importacao-arquivo-questionario.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/importacao-arquivo-questionario/importacao-arquivo-questionario.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/imprimir-entendendo-entidade/imprimir-entendendo-entidade.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/imprimir-entendendo-entidade/imprimir-entendendo-entidade.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/modal-questionario-importa-dados/modal-questionario-importa-dados.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/modal-questionario-importa-dados/modal-questionario-importa-dados.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/modal-questionario-nova-versao/modal-questionario-nova-versao.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/modal-questionario-nova-versao/modal-questionario-nova-versao.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/modal-selecao-questionario/modal-selecao-questionario.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/modal-selecao-questionario/modal-selecao-questionario.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component.html","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/visualizar-entendendo-entidade/visualizar-entendendo-entidade.component.ts","./src/app/pages/unidade-gestora-form/aba-entendendo-entidade/visualizar-entendendo-entidade/visualizar-entendendo-entidade.component.html","./src/app/pages/unidade-gestora-form/aba-maturidade-risco/aba-maturidade-risco.component.ts","./src/app/pages/unidade-gestora-form/aba-maturidade-risco/aba-maturidade-risco.component.html","./src/app/pages/unidade-gestora-form/aba-maturidade-risco/visualizar-maturidade-de-risco/visualizar-maturidade-de-risco.component.ts","./src/app/pages/unidade-gestora-form/aba-maturidade-risco/visualizar-maturidade-de-risco/visualizar-maturidade-de-risco.component.html","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/aba-riscos-chaves.component.ts","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/aba-riscos-chaves.component.html","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/gerar/gerar.component.ts","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/gerar/gerar.component.html","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/importar-arquivo-riscos-chaves/importar-arquivo-risco-chaves.component.ts","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/importar-arquivo-riscos-chaves/importar-arquivo-risco-chaves.component.html","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/modal-selecao-criterio-avaliacao/modal-selecao-criterio-avaliacao.component.ts","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/modal-selecao-criterio-avaliacao/modal-selecao-criterio-avaliacao.component.html","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/modal-selecao-risco/modal-selecao-risco.component.ts","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/modal-selecao-risco/modal-selecao-risco.component.html","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/modal-selecao-universo-auditavel/modal-selecao-universo-auditavel.component.ts","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/modal-selecao-universo-auditavel/modal-selecao-universo-auditavel.component.html","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component.ts","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component.html","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/preenchimento-riscos-criterios/preenchimento-riscos-criterios.component.ts","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/preenchimento-riscos-criterios/preenchimento-riscos-criterios.component.html","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/riscos-chaves-form/riscos-chaves-form.component.ts","./src/app/pages/unidade-gestora-form/aba-riscos-chaves/riscos-chaves-form/riscos-chaves-form.component.html","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/aba-univserso-auditavel.component.ts","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/aba-univserso-auditavel.component.html","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/gerar-universo-auditavel/gerar-universo-auditavel.component.ts","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/gerar-universo-auditavel/gerar-universo-auditavel.component.html","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/importar-arquivo-universo-auditavel/importar-arquivo-universo-auditavel.component.ts","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/importar-arquivo-universo-auditavel/importar-arquivo-universo-auditavel.component.html","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/modal-selecao-tipo-universo/modal-selecao-tipo-universo.component.ts","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/modal-selecao-tipo-universo/modal-selecao-tipo-universo.component.html","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component.ts","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component.html","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/universo-auditavel-form/universo-auditavel-form.component.ts","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/universo-auditavel-form/universo-auditavel-form.component.html","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/universo-auditavel-preechimento-form/universo-auditavel-preechimento-form.component.ts","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/universo-auditavel-preechimento-form/universo-auditavel-preechimento-form.component.html","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/visualizar-universo-auditavel/visualizar-universo-auditavel.component.ts","./src/app/pages/unidade-gestora-form/aba-universo-auditavel/visualizar-universo-auditavel/visualizar-universo-auditavel.component.html","./src/app/pages/unidade-gestora-form/shared/avaliar-questionario/avaliar-questionario.component.ts","./src/app/pages/unidade-gestora-form/shared/avaliar-questionario/avaliar-questionario.component.html","./src/app/pages/unidade-gestora-form/shared/editar-questionario/editar-questionario.component.ts","./src/app/pages/unidade-gestora-form/shared/editar-questionario/editar-questionario.component.html","./src/app/pages/unidade-gestora-form/shared/editar-questionario/modal-pergunta/modal-pergunta.component.ts","./src/app/pages/unidade-gestora-form/shared/editar-questionario/modal-pergunta/modal-pergunta.component.html","./src/app/pages/unidade-gestora-form/shared/editar-questionario/modal-secao/modal-secao.component.ts","./src/app/pages/unidade-gestora-form/shared/editar-questionario/modal-secao/modal-secao.component.html","./src/app/pages/unidade-gestora-form/shared/gerar-questionario/gerar-questionario.component.ts","./src/app/pages/unidade-gestora-form/shared/gerar-questionario/gerar-questionario.component.html","./src/app/pages/unidade-gestora-form/shared/importacao-arquivo-questionario/importacao-arquivo-questionario.component.ts","./src/app/pages/unidade-gestora-form/shared/importacao-arquivo-questionario/importacao-arquivo-questionario.component.html","./src/app/pages/unidade-gestora-form/shared/imprimir-questionario/imprimir-questionario.component.ts","./src/app/pages/unidade-gestora-form/shared/imprimir-questionario/imprimir-questionario.component.html","./src/app/pages/unidade-gestora-form/shared/modal-avaliar-questionario/modal-avaliar-questionario.component.ts","./src/app/pages/unidade-gestora-form/shared/modal-avaliar-questionario/modal-avaliar-questionario.component.html","./src/app/pages/unidade-gestora-form/shared/modal-questionario-importa-dados/modal-questionario-importa-dados.component.ts","./src/app/pages/unidade-gestora-form/shared/modal-questionario-importa-dados/modal-questionario-importa-dados.component.html","./src/app/pages/unidade-gestora-form/shared/modal-questionario-nova-versao/modal-questionario-nova-versao.component.ts","./src/app/pages/unidade-gestora-form/shared/modal-questionario-nova-versao/modal-questionario-nova-versao.component.html","./src/app/pages/unidade-gestora-form/shared/modal-riscos-chaves-importacao/modal-riscos-chaves-importacao.component.ts","./src/app/pages/unidade-gestora-form/shared/modal-riscos-chaves-importacao/modal-riscos-chaves-importacao.component.html","./src/app/pages/unidade-gestora-form/shared/modal-selecao-questionario/modal-selecao-questionario.component.ts","./src/app/pages/unidade-gestora-form/shared/modal-selecao-questionario/modal-selecao-questionario.component.html","./src/app/pages/unidade-gestora-form/shared/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component.ts","./src/app/pages/unidade-gestora-form/shared/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component.html","./src/app/pages/unidade-gestora-form/shared/modal-universo-auditavel-importa-dados/modal-universo-auditavel-importa-dados.component.ts","./src/app/pages/unidade-gestora-form/shared/modal-universo-auditavel-importa-dados/modal-universo-auditavel-importa-dados.component.html","./src/app/pages/unidade-gestora-form/shared/modal-universo-auditavel-importacao/modal-universo-auditavel-importacao.component.ts","./src/app/pages/unidade-gestora-form/shared/modal-universo-auditavel-importacao/modal-universo-auditavel-importacao.component.html","./src/app/pages/unidade-gestora-form/shared/modal-universo-auditavel-nova-versao/modal-universo-auditavel-nova-versao.component.ts","./src/app/pages/unidade-gestora-form/shared/modal-universo-auditavel-nova-versao/modal-universo-auditavel-nova-versao.component.html","./src/app/pages/unidade-gestora-form/shared/visualizar-questionario/visualizar-questionario.component.ts","./src/app/pages/unidade-gestora-form/shared/visualizar-questionario/visualizar-questionario.component.html","./src/app/pages/unidade-gestora-form/unidade-gestora-form.component.ts","./src/app/pages/unidade-gestora-form/unidade-gestora-form.component.html","./src/app/pages/unidade-gestora-list/modal-associar/modal-associar.component.ts","./src/app/pages/unidade-gestora-list/modal-associar/modal-associar.component.html","./src/app/pages/unidade-gestora-list/modal-importacao/modal-importacao.component.ts","./src/app/pages/unidade-gestora-list/modal-importacao/modal-importacao.component.html","./src/app/pages/unidade-gestora-list/unidade-gestora-list.component.ts","./src/app/pages/unidade-gestora-list/unidade-gestora-list.component.html","./src/app/services/acesso-cidadao.service.ts","./src/app/services/agente-publico.service.ts","./src/app/services/amostra.service.ts","./src/app/services/aprovacao.service.ts","./src/app/services/auditoria.service.ts","./src/app/services/auth.service.ts","./src/app/services/avaliacao.service.ts","./src/app/services/base.service.ts","./src/app/services/calendario.service.ts","./src/app/services/capitulo-relatorio.service.ts","./src/app/services/categoria-risco.service.ts","./src/app/services/constatacao.service.ts","./src/app/services/controle.service.ts","./src/app/services/coordenacao.service.ts","./src/app/services/criterio.service.ts","./src/app/services/criterios-avaliacao-risco.service.ts","./src/app/services/cronograma.service.ts","./src/app/services/custo-recurso-planejamento.service.ts","./src/app/services/custo-recurso.service.ts","./src/app/services/edocs.service.ts","./src/app/services/entendendo-entidade.service.ts","./src/app/services/escalas.service.ts","./src/app/services/faixa-classificacao.service.ts","./src/app/services/fase-atividade.service.ts","./src/app/services/fluxo-aprovacao.service.ts","./src/app/services/formula-risco-inerente.service.ts","./src/app/services/formula-risco-residual.service.ts","./src/app/services/indicador.service.ts","./src/app/services/log.service.ts","./src/app/services/magnitudes-escala-risco.service.ts","./src/app/services/manter-matriz-planejamento.service.ts","./src/app/services/matriz-planejamento.service.ts","./src/app/services/menu.service.ts","./src/app/services/modelo-questionario.service.ts","./src/app/services/modelo-relatorio.service.ts","./src/app/services/natureza-responsabilidade.service.ts","./src/app/services/niveis-risco-inerente.service.ts","./src/app/services/niveis-risco-residual.service.ts","./src/app/services/opa.service.ts","./src/app/services/organograma.service.ts","./src/app/services/osa.service.ts","./src/app/services/paa.service.ts","./src/app/services/paa/paa-aba-capacidade.service.ts","./src/app/services/paa/paa-aba-dados-basicos.service.ts","./src/app/services/paa/paa-aba-distribuicao.service.ts","./src/app/services/paa/paa-aba-indices-criterios.service.ts","./src/app/services/parametrizacao-documento-edocs.service.ts","./src/app/services/parametrizacao.service.ts","./src/app/services/pea.service.ts","./src/app/services/pendencia.service.ts","./src/app/services/pergunta.service.ts","./src/app/services/periodo-exercicio.service.ts","./src/app/services/periodo.service.ts","./src/app/services/planejamento.service.ts","./src/app/services/procedimento-auditoria.service.ts","./src/app/services/questao.service.ts","./src/app/services/questionario.service.ts","./src/app/services/questionarioug-resposta.service.ts","./src/app/services/questionarioug.service.ts","./src/app/services/ranking-prioridade.service.ts","./src/app/services/recomendacao.service.ts","./src/app/services/relatoria-capitulo.service.ts","./src/app/services/relatoria.service.ts","./src/app/services/responsaveis.service .ts","./src/app/services/riscos-chaves.service.ts","./src/app/services/riscos.service.ts","./src/app/services/rol-responsaveis.service.ts","./src/app/services/shared.service.ts","./src/app/services/solicitacao-tecnica.service.ts","./src/app/services/subtipo-auditoria.service.ts","./src/app/services/tabela-dominio.service.ts","./src/app/services/tecnica-auditoria.service.ts","./src/app/services/tipo-auditoria.service.ts","./src/app/services/tipo-criterio.service.ts","./src/app/services/tipo-dispensa.service.ts","./src/app/services/tipo-enfase.service.ts","./src/app/services/tipo-trabalho.service.ts","./src/app/services/tipo-universo.service.ts","./src/app/services/unidade-gestora-maturidadeGR.service.ts","./src/app/services/unidade-gestora-maturidadeGRHistorico.service.ts","./src/app/services/unidade-gestora.service.ts","./src/app/services/universo-auditavel-item-resposta.service.ts","./src/app/services/universo-auditavel.service.ts","./src/app/shared/components/aba-amostra/aba-amostra.component.ts","./src/app/shared/components/aba-amostra/aba-amostra.component.html","./src/app/shared/components/aba-amostra/imprimir-amostra/imprimir-amostra.component.ts","./src/app/shared/components/aba-amostra/imprimir-amostra/imprimir-amostra.component.html","./src/app/shared/components/aba-amostra/inserir-amostra/inserir-amostra.component.ts","./src/app/shared/components/aba-amostra/inserir-amostra/inserir-amostra.component.html","./src/app/shared/components/aba-cronograma/aba-cronograma.component.ts","./src/app/shared/components/aba-cronograma/aba-cronograma.component.html","./src/app/shared/components/aba-cronograma/modal-atividade-subatividade/modal-atividade-subatividade.component.ts","./src/app/shared/components/aba-cronograma/modal-atividade-subatividade/modal-atividade-subatividade.component.html","./src/app/shared/components/aba-matriz-planejamento/aba-matriz-planejamento.component.ts","./src/app/shared/components/aba-matriz-planejamento/aba-matriz-planejamento.component.html","./src/app/shared/components/aba-matriz-planejamento/listagem-questoes/listagem-questoes.component.ts","./src/app/shared/components/aba-matriz-planejamento/listagem-questoes/listagem-questoes.component.html","./src/app/shared/components/aba-matriz-planejamento/modal-adicionar-questoes/modal-adicionar-questoes.component.ts","./src/app/shared/components/aba-matriz-planejamento/modal-adicionar-questoes/modal-adicionar-questoes.component.html","./src/app/shared/components/aba-matriz-planejamento/modal-editar-questao/modal-editar-questao.component.ts","./src/app/shared/components/aba-matriz-planejamento/modal-editar-questao/modal-editar-questao.component.html","./src/app/shared/components/aba-matriz-planejamento/modal-ug/modal-ug.component.ts","./src/app/shared/components/aba-matriz-planejamento/modal-ug/modal-ug.component.html","./src/app/shared/components/aba-solicitacao-tecnica/aba-solicitacao-tecnica.component.ts","./src/app/shared/components/aba-solicitacao-tecnica/aba-solicitacao-tecnica.component.html","./src/app/shared/components/aba-solicitacao-tecnica/imprimir-solicitacao/imprimir-solicitacao.component.ts","./src/app/shared/components/aba-solicitacao-tecnica/imprimir-solicitacao/imprimir-solicitacao.component.html","./src/app/shared/components/aba-solicitacao-tecnica/modal-avaliar-prorrogacao/modal-avaliar-prorrogacao.component.ts","./src/app/shared/components/aba-solicitacao-tecnica/modal-avaliar-prorrogacao/modal-avaliar-prorrogacao.component.html","./src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-item/modal-incluir-item.component.ts","./src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-item/modal-incluir-item.component.html","./src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-solicitacao/modal-incluir-solicitacao.component.ts","./src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-solicitacao/modal-incluir-solicitacao.component.html","./src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-ug/modal-incluir-ug.component.ts","./src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-ug/modal-incluir-ug.component.html","./src/app/shared/components/aba-solicitacao-tecnica/modal-visualizar-item/modal-visualizar-item.component.ts","./src/app/shared/components/aba-solicitacao-tecnica/modal-visualizar-item/modal-visualizar-item.component.html","./src/app/shared/components/aba-solicitacao-tecnica/modal-visualizar-resposta/modal-visualizar-resposta.component.ts","./src/app/shared/components/aba-solicitacao-tecnica/modal-visualizar-resposta/modal-visualizar-resposta.component.html","./src/app/shared/components/alocar-equipe/alocar-equipe.component.ts","./src/app/shared/components/alocar-equipe/alocar-equipe.component.html","./src/app/shared/components/app-button/app-button.component.ts","./src/app/shared/components/app-button/app-button.component.html","./src/app/shared/components/base-form/base-form.component.ts","./src/app/shared/components/base-list/base-list.component.ts","./src/app/shared/components/capitulo/capitulo.component.ts","./src/app/shared/components/capitulo/capitulo.component.html","./src/app/shared/components/capitulo/modal-historico-relatoria/modal-historico-relatoria.component.ts","./src/app/shared/components/capitulo/modal-historico-relatoria/modal-historico-relatoria.component.html","./src/app/shared/components/capitulo/modal-historico-relatoria/modal-visualizar-historico/modal-visualizar-historico.component.ts","./src/app/shared/components/capitulo/modal-historico-relatoria/modal-visualizar-historico/modal-visualizar-historico.component.html","./src/app/shared/components/capitulo/modal-relatoria-capitulo/modal-relatoria-capitulo.component.ts","./src/app/shared/components/capitulo/modal-relatoria-capitulo/modal-relatoria-capitulo.component.html","./src/app/shared/components/custos-recursos/custos-recursos.component.ts","./src/app/shared/components/custos-recursos/custos-recursos.component.html","./src/app/shared/components/custos-recursos/modal-custo-recurso-planejamento/custo-recurso.ts","./src/app/shared/components/custos-recursos/modal-custo-recurso-planejamento/modal-custo-recurso-planejamento.component.ts","./src/app/shared/components/custos-recursos/modal-custo-recurso-planejamento/modal-custo-recurso-planejamento.component.html","./src/app/shared/components/faixa-classificacao-component/faixa-classificacao-component.component.ts","./src/app/shared/components/faixa-classificacao-component/faixa-classificacao-component.component.html","./src/app/shared/components/historico-modal/historico-modal.component.ts","./src/app/shared/components/historico-modal/historico-modal.component.html","./src/app/shared/components/linha-do-tempo/linha-do-tempo.component.ts","./src/app/shared/components/linha-do-tempo/linha-do-tempo.component.html","./src/app/shared/components/lookup-modal/lookup-modal.component.ts","./src/app/shared/components/lookup-modal/lookup-modal.component.html","./src/app/shared/components/lookup-multiselect-modal/lookup-multiselect-modal.component.ts","./src/app/shared/components/lookup-multiselect-modal/lookup-multiselect-modal.component.html","./src/app/shared/components/modal-arquivo/modal-arquivo.component.ts","./src/app/shared/components/modal-arquivo/modal-arquivo.component.html","./src/app/shared/components/modal-cancelar/modal-cancelar-component.ts","./src/app/shared/components/modal-cancelar/modal-cancelar.component.html","./src/app/shared/components/modal-confirma-cancelar/modal-confirma-cancelar.component.ts","./src/app/shared/components/modal-confirma-cancelar/modal-confirma-cancelar.component.html","./src/app/shared/components/modal-confirmacao-rejeitar/modal-confirmacao-rejeitar.component.ts","./src/app/shared/components/modal-confirmacao-rejeitar/modal-confirmacao-rejeitar.component.html","./src/app/shared/components/modal-confirmar-inativacao/modal-confirmar-inativacao.component.ts","./src/app/shared/components/modal-confirmar-inativacao/modal-confirmar-inativacao.component.html","./src/app/shared/components/modal-justificativa/modal-justificativa.component.ts","./src/app/shared/components/modal-justificativa/modal-justificativa.component.html","./src/app/shared/components/pdf-export/pdf-export.component.ts","./src/app/shared/components/pdf-export/pdf-export.component.html","./src/app/shared/components/print-layout/print-layout.component.ts","./src/app/shared/components/print-layout/print-layout.component.html","./src/app/shared/components/ranking-prioridade/ranking-prioridade.component.ts","./src/app/shared/components/ranking-prioridade/ranking-prioridade.component.html","./src/app/shared/components/relatoria/imprimir-linha-do-tempo/imprimir-linha-do-tempo.component.ts","./src/app/shared/components/relatoria/imprimir-linha-do-tempo/imprimir-linha-do-tempo.component.html","./src/app/shared/components/relatoria/imprimir-relatoria/imprimir-relatoria.component.ts","./src/app/shared/components/relatoria/imprimir-relatoria/imprimir-relatoria.component.html","./src/app/shared/components/relatoria/relatoria.component.ts","./src/app/shared/components/relatoria/relatoria.component.html","./src/app/shared/components/relatoria/visualizar-relatoria/visualizar-relatoria.component.ts","./src/app/shared/components/relatoria/visualizar-relatoria/visualizar-relatoria.component.html","./src/app/shared/components/sanitized-html/sanitized-html.pipe.ts","./src/app/shared/components/unidade-gestora/modal-incluir-ug-component/modal-incluir-ug-component.component.ts","./src/app/shared/components/unidade-gestora/modal-incluir-ug-component/modal-incluir-ug-component.component.html","./src/app/shared/components/unidade-gestora/unidade-gestora.component.ts","./src/app/shared/components/unidade-gestora/unidade-gestora.component.html","./src/app/shared/directives/keyboardlock.directive.ts","./src/app/shared/layout/footer/footer.component.ts","./src/app/shared/layout/footer/footer.component.html","./src/app/shared/layout/header/header.component.ts","./src/app/shared/layout/header/header.component.html","./src/app/shared/layout/header/user-dropdown-menu/user-dropdown-menu.component.ts","./src/app/shared/layout/header/user-dropdown-menu/user-dropdown-menu.component.html","./src/app/shared/layout/main/main.component.ts","./src/app/shared/layout/main/main.component.html","./src/app/shared/layout/menuitem/menuitem.component.ts","./src/app/shared/layout/menuitem/menuitem.component.html","./src/app/shared/layout/sidebar/sidebar.component.ts","./src/app/shared/layout/sidebar/sidebar.component.html","./src/app/shared/pipes/groupby-pipe.ts","./src/app/shared/util/angularEditorConfig.ts","./src/app/shared/util/formatDate.ts","./src/app/shared/util/toFormatValue.ts","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,wE;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6E;;;;;;;;;;;;;;;;;;;;;;;ACvSA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAyC;AACc;AACF;AAC8D;AACA;AACpB;AACA;AACH;AACA;AACN;AACA;AACgC;AACZ;AACA;AACjB;AACA;AACpB;AACwC;AACA;AACyC;AAC9C;AACjC;AACA;AACe;AACA;AACA;AACA;AACH;AACA;AACe;AACA;AACK;AACA;AACH;AACA;AACA;AACA;AACM;AACA;AACtC;AACG;AACY;AACM;AAClB;AACyC;AACA;AACjC;AACqB;AACA;AAC2B;AACA;AAChD;AACmB;AACA;AACH;AACA;AACZ;AACA;AACZ;AAC+C;AACA;AACe;AAClF;AACkB;AACV;AACU;AACR;AACE;AACQ;AACF;AACE;AACJ;AACQ;AACd;AACsF;AACtC;AAC2B;AACA;AAC3C;AAC5B;AAC+C;AACA;AACnC;AACR;AACkB;AAC5B;AACsB;AACZ;AACQ;AACqB;AACZ;AACuB;AACkF;AAC7F;AACK;AAC9C;AACkB;AAC4B;AAChC;AACgB;AACgC;AAC9B;AACkC;AAClC;AAC6B;AACoB;AACK;AACrD;AACpB;AACJ;AACwF;AAC5D;AACA;AAC7B;AACsC;AACA;AACpD;AACuD;AACA;AAC1B;AACP;AAC6C;AACA;AAC4B;AAEuB;AACY;AACN;AACS;AAE3E;AAC0B;AAE9E;AACuB;AAEuD;AACH;AACY;AAC6B;AACnC;AACH;AACN;AACO;AACpC;AACA;AAC6E;AAGxD;AAGsB;AAGxB;AAG0B;AAGd;AACb;AACA;AAGxC;AAC6D;AACrB;AACyD;AAGhD;;;AAG/H,+DAA+D;AAE/D,MAAM,MAAM,GAAW;IACtB;QACC,IAAI,EAAE,EAAE;QACR,SAAS,EAAE,iFAAa;QACxB,gBAAgB,EAAE,CAAC,iEAAS,CAAC;QAC7B,QAAQ,EAAE;YACT;gBACC,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE;oBACL,OAAO,EAAE,oFAAiB,CAAC,SAAS;oBACpC,IAAI,EAAE,gFAAe,CAAC,SAAS;iBAC/B;gBACD,SAAS,EAAE,sEAAY;aACvB;YACD;gBACC,IAAI,EAAE,kBAAkB;gBACxB,IAAI,EAAE;oBACL,OAAO,EAAE,oFAAiB,CAAC,SAAS;oBACpC,IAAI,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AA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkJ;AAG1F;AACJ;AACe;AACQ;AAC7B;AAC6B;AACT;AACH;AAK7B;AAIG;AACkB;AACA;AACE;AACI;AACH;AACqB;AAChC;AACQ;AACmB;AACT;AACQ;AACpB;AACS;AACZ;AACA;AACH;AACL;AACc;AACT;AAC2B;AACX;AACoD;AACA;AACpB;AACA;AACH;AACA;AACN;AACwC;AACN;AAClC;AAC1B;AAC0D;AACZ;AACA;AACjB;AACA;AACpB;AACwC;AACA;AACyC;AACT;AACrC;AACA;AAC2C;AACd;AACS;AAC9B;AACqB;AAC9D;AACA;AACe;AACA;AACA;AACA;AACH;AACA;AACe;AACA;AACK;AACA;AACH;AACA;AACA;AACA;AACM;AACI;AACM;AACV;AACpD;AACmC;AACH;AACA;AACS;AACrB;AACA;AACyC;AAC/C;AACS;AACN;AAChB;AACE;AACS;AACiB;AACxB;AAC2E;AAClB;AACA;AACe;AACA;AACG;AACyC;AACtF;AACgD;AAC5E;AACyE;AACzE;AACmF;AACzE;AACpB;AACkB;AAC+C;AACf;AAChC;AACR;AACF;AACI;AACQ;AACF;AACE;AACJ;AAC+B;AACO;AACO;AACA;AACjC;AACqB;AACA;AAC2B;AACA;AAChD;AACmB;AACA;AACH;AACA;AACuB;AACnC;AACA;AACgC;AAC2C;AACvF;AAC2D;AACV;AACF;AACA;AACe;AACc;AACtC;AACmC;AACZ;AACI;AACzB;AAC6C;AACY;AACO;AAC7B;AACjF;AAC4B;AAChC;AACc;AACqC;AACA;AACwB;AAC/E;AACA;AAC+E;AAClF;AAC4C;AACrB;AACR;AACkB;AAC5B;AACsB;AACZ;AACQ;AACqB;AAC6B;AACzC;AAC4E;AACV;AACQ;AACnD;AACkF;AACM;AAC5G;AAClC;AACI;AAC0C;AACE;AAC9C;AACkB;AACe;AACf;AACS;AAC4C;AACzB;AAChC;AAC8B;AACwD;AACtE;AACK;AACwB;AACG;AACoB;AACvD;AACG;AACuD;AAC6B;AAChD;AACvB;AACT;AACsD;AAChC;AACkB;AAC9D;AACc;AACe;AACT;AACsC;AACyB;AACpC;AACoB;AACT;AACO;AACuB;A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","file":"main-es2015.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","var map = {\n\t\"./af\": \"./node_modules/moment/locale/af.js\",\n\t\"./af.js\": \"./node_modules/moment/locale/af.js\",\n\t\"./ar\": \"./node_modules/moment/locale/ar.js\",\n\t\"./ar-dz\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-dz.js\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-kw\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-kw.js\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-ly\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ly.js\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ma\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ma.js\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ps\": \"./node_modules/moment/locale/ar-ps.js\",\n\t\"./ar-ps.js\": \"./node_modules/moment/locale/ar-ps.js\",\n\t\"./ar-sa\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-sa.js\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-tn\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar-tn.js\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar.js\": \"./node_modules/moment/locale/ar.js\",\n\t\"./az\": \"./node_modules/moment/locale/az.js\",\n\t\"./az.js\": \"./node_modules/moment/locale/az.js\",\n\t\"./be\": \"./node_modules/moment/locale/be.js\",\n\t\"./be.js\": \"./node_modules/moment/locale/be.js\",\n\t\"./bg\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bg.js\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bm\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bm.js\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bn\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bn-bd\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn-bd.js\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn.js\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bo\": \"./node_modules/moment/locale/bo.js\",\n\t\"./bo.js\": \"./node_modules/moment/locale/bo.js\",\n\t\"./br\": \"./node_modules/moment/locale/br.js\",\n\t\"./br.js\": \"./node_modules/moment/locale/br.js\",\n\t\"./bs\": \"./node_modules/moment/locale/bs.js\",\n\t\"./bs.js\": \"./node_modules/moment/locale/bs.js\",\n\t\"./ca\": \"./node_modules/moment/locale/ca.js\",\n\t\"./ca.js\": \"./node_modules/moment/locale/ca.js\",\n\t\"./cs\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cs.js\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cv\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cv.js\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cy\": \"./node_modules/moment/locale/cy.js\",\n\t\"./cy.js\": \"./node_modules/moment/locale/cy.js\",\n\t\"./da\": \"./node_modules/moment/locale/da.js\",\n\t\"./da.js\": \"./node_modules/moment/locale/da.js\",\n\t\"./de\": \"./node_modules/moment/locale/de.js\",\n\t\"./de-at\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-at.js\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-ch\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de-ch.js\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de.js\": \"./node_modules/moment/locale/de.js\",\n\t\"./dv\": \"./node_modules/moment/locale/dv.js\",\n\t\"./dv.js\": \"./node_modules/moment/locale/dv.js\",\n\t\"./el\": \"./node_modules/moment/locale/el.js\",\n\t\"./el.js\": \"./node_modules/moment/locale/el.js\",\n\t\"./en-au\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-au.js\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-ca\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-ca.js\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-gb\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-gb.js\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-ie\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-ie.js\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-il\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-il.js\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-in\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-in.js\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-nz\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-nz.js\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-sg\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./en-sg.js\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./eo\": \"./node_modules/moment/locale/eo.js\",\n\t\"./eo.js\": \"./node_modules/moment/locale/eo.js\",\n\t\"./es\": \"./node_modules/moment/locale/es.js\",\n\t\"./es-do\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-do.js\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-mx\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-mx.js\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-us\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es-us.js\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es.js\": \"./node_modules/moment/locale/es.js\",\n\t\"./et\": \"./node_modules/moment/locale/et.js\",\n\t\"./et.js\": \"./node_modules/moment/locale/et.js\",\n\t\"./eu\": \"./node_modules/moment/locale/eu.js\",\n\t\"./eu.js\": \"./node_modules/moment/locale/eu.js\",\n\t\"./fa\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fa.js\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fi\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fi.js\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fil\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fil.js\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fo\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fo.js\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fr\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fr-ca\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ca.js\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ch\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr-ch.js\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr.js\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fy\": \"./node_modules/moment/locale/fy.js\",\n\t\"./fy.js\": \"./node_modules/moment/locale/fy.js\",\n\t\"./ga\": \"./node_modules/moment/locale/ga.js\",\n\t\"./ga.js\": \"./node_modules/moment/locale/ga.js\",\n\t\"./gd\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gd.js\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gl\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gl.js\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gom-deva\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-deva.js\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-latn\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gom-latn.js\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gu\": \"./node_modules/moment/locale/gu.js\",\n\t\"./gu.js\": \"./node_modules/moment/locale/gu.js\",\n\t\"./he\": \"./node_modules/moment/locale/he.js\",\n\t\"./he.js\": \"./node_modules/moment/locale/he.js\",\n\t\"./hi\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hi.js\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hr\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hr.js\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hu\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hu.js\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hy-am\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./hy-am.js\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./id\": \"./node_modules/moment/locale/id.js\",\n\t\"./id.js\": \"./node_modules/moment/locale/id.js\",\n\t\"./is\": \"./node_modules/moment/locale/is.js\",\n\t\"./is.js\": \"./node_modules/moment/locale/is.js\",\n\t\"./it\": \"./node_modules/moment/locale/it.js\",\n\t\"./it-ch\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it-ch.js\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it.js\": \"./node_modules/moment/locale/it.js\",\n\t\"./ja\": \"./node_modules/moment/locale/ja.js\",\n\t\"./ja.js\": \"./node_modules/moment/locale/ja.js\",\n\t\"./jv\": \"./node_modules/moment/locale/jv.js\",\n\t\"./jv.js\": \"./node_modules/moment/locale/jv.js\",\n\t\"./ka\": \"./node_modules/moment/locale/ka.js\",\n\t\"./ka.js\": \"./node_modules/moment/locale/ka.js\",\n\t\"./kk\": \"./node_modules/moment/locale/kk.js\",\n\t\"./kk.js\": \"./node_modules/moment/locale/kk.js\",\n\t\"./km\": \"./node_modules/moment/locale/km.js\",\n\t\"./km.js\": \"./node_modules/moment/locale/km.js\",\n\t\"./kn\": \"./node_modules/moment/locale/kn.js\",\n\t\"./kn.js\": \"./node_modules/moment/locale/kn.js\",\n\t\"./ko\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ko.js\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ku\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ku-kmr\": \"./node_modules/moment/locale/ku-kmr.js\",\n\t\"./ku-kmr.js\": \"./node_modules/moment/locale/ku-kmr.js\",\n\t\"./ku.js\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ky\": \"./node_modules/moment/locale/ky.js\",\n\t\"./ky.js\": \"./node_modules/moment/locale/ky.js\",\n\t\"./lb\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lb.js\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lo\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lo.js\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lt\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lt.js\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lv\": \"./node_modules/moment/locale/lv.js\",\n\t\"./lv.js\": \"./node_modules/moment/locale/lv.js\",\n\t\"./me\": \"./node_modules/moment/locale/me.js\",\n\t\"./me.js\": \"./node_modules/moment/locale/me.js\",\n\t\"./mi\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mi.js\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mk\": \"./node_modules/moment/locale/mk.js\",\n\t\"./mk.js\": \"./node_modules/moment/locale/mk.js\",\n\t\"./ml\": \"./node_modules/moment/locale/ml.js\",\n\t\"./ml.js\": \"./node_modules/moment/locale/ml.js\",\n\t\"./mn\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mn.js\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mr\": \"./node_modules/moment/locale/mr.js\",\n\t\"./mr.js\": \"./node_modules/moment/locale/mr.js\",\n\t\"./ms\": \"./node_modules/moment/locale/ms.js\",\n\t\"./ms-my\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms-my.js\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms.js\": \"./node_modules/moment/locale/ms.js\",\n\t\"./mt\": \"./node_modules/moment/locale/mt.js\",\n\t\"./mt.js\": \"./node_modules/moment/locale/mt.js\",\n\t\"./my\": \"./node_modules/moment/locale/my.js\",\n\t\"./my.js\": \"./node_modules/moment/locale/my.js\",\n\t\"./nb\": \"./node_modules/moment/locale/nb.js\",\n\t\"./nb.js\": \"./node_modules/moment/locale/nb.js\",\n\t\"./ne\": \"./node_modules/moment/locale/ne.js\",\n\t\"./ne.js\": \"./node_modules/moment/locale/ne.js\",\n\t\"./nl\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nl-be\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl-be.js\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl.js\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nn\": \"./node_modules/moment/locale/nn.js\",\n\t\"./nn.js\": \"./node_modules/moment/locale/nn.js\",\n\t\"./oc-lnc\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./oc-lnc.js\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./pa-in\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pa-in.js\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pl\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pl.js\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pt\": \"./node_modules/moment/locale/pt.js\",\n\t\"./pt-br\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt-br.js\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt.js\": \"./node_modules/moment/locale/pt.js\",\n\t\"./ro\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ro.js\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ru\": \"./node_modules/moment/locale/ru.js\",\n\t\"./ru.js\": \"./node_modules/moment/locale/ru.js\",\n\t\"./sd\": \"./node_modules/moment/locale/sd.js\",\n\t\"./sd.js\": \"./node_modules/moment/locale/sd.js\",\n\t\"./se\": \"./node_modules/moment/locale/se.js\",\n\t\"./se.js\": \"./node_modules/moment/locale/se.js\",\n\t\"./si\": \"./node_modules/moment/locale/si.js\",\n\t\"./si.js\": \"./node_modules/moment/locale/si.js\",\n\t\"./sk\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sk.js\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sl\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sl.js\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sq\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sq.js\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sr\": \"./node_modules/moment/locale/sr.js\",\n\t\"./sr-cyrl\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr-cyrl.js\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr.js\": \"./node_modules/moment/locale/sr.js\",\n\t\"./ss\": \"./node_modules/moment/locale/ss.js\",\n\t\"./ss.js\": \"./node_modules/moment/locale/ss.js\",\n\t\"./sv\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sv.js\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sw\": \"./node_modules/moment/locale/sw.js\",\n\t\"./sw.js\": \"./node_modules/moment/locale/sw.js\",\n\t\"./ta\": \"./node_modules/moment/locale/ta.js\",\n\t\"./ta.js\": \"./node_modules/moment/locale/ta.js\",\n\t\"./te\": \"./node_modules/moment/locale/te.js\",\n\t\"./te.js\": \"./node_modules/moment/locale/te.js\",\n\t\"./tet\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tet.js\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tg\": \"./node_modules/moment/locale/tg.js\",\n\t\"./tg.js\": \"./node_modules/moment/locale/tg.js\",\n\t\"./th\": \"./node_modules/moment/locale/th.js\",\n\t\"./th.js\": \"./node_modules/moment/locale/th.js\",\n\t\"./tk\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tk.js\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tl-ph\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tl-ph.js\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tlh\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tlh.js\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tr\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tr.js\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tzl\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzl.js\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzm\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./tzm-latn\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm-latn.js\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm.js\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./ug-cn\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./ug-cn.js\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./uk\": \"./node_modules/moment/locale/uk.js\",\n\t\"./uk.js\": \"./node_modules/moment/locale/uk.js\",\n\t\"./ur\": \"./node_modules/moment/locale/ur.js\",\n\t\"./ur.js\": \"./node_modules/moment/locale/ur.js\",\n\t\"./uz\": \"./node_modules/moment/locale/uz.js\",\n\t\"./uz-latn\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz-latn.js\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz.js\": \"./node_modules/moment/locale/uz.js\",\n\t\"./vi\": \"./node_modules/moment/locale/vi.js\",\n\t\"./vi.js\": \"./node_modules/moment/locale/vi.js\",\n\t\"./x-pseudo\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./x-pseudo.js\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./yo\": \"./node_modules/moment/locale/yo.js\",\n\t\"./yo.js\": \"./node_modules/moment/locale/yo.js\",\n\t\"./zh-cn\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-cn.js\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-hk\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-hk.js\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-mo\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-mo.js\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-tw\": \"./node_modules/moment/locale/zh-tw.js\",\n\t\"./zh-tw.js\": \"./node_modules/moment/locale/zh-tw.js\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/moment/locale sync recursive ^\\\\.\\\\/.*$\";","import { NgModule } from \"@angular/core\";\r\nimport { RouterModule, Routes } from \"@angular/router\";\r\nimport { AuthGuard } from \"./core/guards/auth.guard\";\r\nimport { CapituloRelatorioFormComponent } from \"./pages/capitulo-relatorio-form/capitulo-relatorio-form.component\";\r\nimport { CapituloRelatorioListComponent } from \"./pages/capitulo-relatorio-list/capitulo-relatorio-list.component\";\r\nimport { CoordenacaoFormComponent } from \"./pages/coordenacao-form/coordenacao-form.component\";\r\nimport { CoordenacaoListComponent } from \"./pages/coordenacao-list/coordenacao-list.component\";\r\nimport { CalendarioFormComponent } from \"./pages/calendario-form/calendario-form.component\";\r\nimport { CalendarioListComponent } from \"./pages/calendario-list/calendario-list.component\";\r\nimport { CriterioFormComponent } from \"./pages/criterio-form/criterio-form.component\";\r\nimport { CriterioListComponent } from \"./pages/criterio-list/criterio-list.component\";\r\nimport { FaixaClassificacaoFormComponent } from \"./pages/faixa-classificacao-form/faixa-classificacao-form.component\";\r\nimport { FluxoAprovacaoFormComponent } from \"./pages/fluxo-aprovacao-form/fluxo-aprovacao-form.component\";\r\nimport { FluxoAprovacaoListComponent } from \"./pages/fluxo-aprovacao-list/fluxo-aprovacao-list.component\";\r\nimport { IndicadorFormComponent } from \"./pages/indicador-form/indicador-form.component\";\r\nimport { IndicadorListComponent } from \"./pages/indicador-list/indicador-list.component\";\r\nimport { InicialComponent } from \"./pages/inicial/inicial.component\";\r\nimport { ModeloRelatorioFormComponent } from \"./pages/modelo-relatorio-form/modelo-relatorio-form.component\";\r\nimport { ModeloRelatorioListComponent } from \"./pages/modelo-relatorio-list/modelo-relatorio-list.component\";\r\nimport { ParametrizacaoDocumentoEdocsFormComponent } from \"./pages/parametrizacao-documento-edocs-form/parametrizacao-documento-edocs-form.component\";\r\nimport { ParametrizacaoListComponent } from \"./pages/parametrizacao-list/parametrizacao-list.component\";\r\nimport { PeaFormComponent } from \"./pages/pea-form/pea-form.component\";\r\nimport { PeaListComponent } from \"./pages/pea-list/pea-list.component\";\r\nimport { PeaRelatorioComponent } from \"./pages/pea-relatorio/pea-relatorio.component\";\r\nimport { PaaRelatorioComponent } from \"./pages/paa-relatorio/paa-relatorio.component\";\r\nimport { PerguntaFormComponent } from \"./pages/pergunta-form/pergunta-form.component\";\r\nimport { PerguntaListComponent } from \"./pages/pergunta-list/pergunta-list.component\";\r\nimport { PeriodoFormComponent } from \"./pages/periodo-form/periodo-form.component\";\r\nimport { PeriodoListComponent } from \"./pages/periodo-list/periodo-list.component\";\r\nimport { QuestionarioFormComponent } from \"./pages/questionario-form/questionario-form.component\";\r\nimport { QuestionarioListComponent } from \"./pages/questionario-list/questionario-list.component\";\r\nimport { TipoAuditoriaFormComponent } from \"./pages/tipo-auditoria-form/tipo-auditoria-form.component\";\r\nimport { TipoAuditoriaListComponent } from \"./pages/tipo-auditoria-list/tipo-auditoria-list.component\";\r\nimport { TipoCriterioFormComponent } from \"./pages/tipo-criterio-form/tipo-criterio-form.component\";\r\nimport { TipoCriterioListComponent } from \"./pages/tipo-criterio-list/tipo-criterio-list.component\";\r\nimport { TipoDispensaFormComponent } from \"./pages/tipo-dispensa-form/tipo-dispensa-form.component\";\r\nimport { TipoDispensaListComponent } from \"./pages/tipo-dispensa-list/tipo-dispensa-list.component\";\r\nimport { UnidadeGestoraFormComponent } from \"./pages/unidade-gestora-form/unidade-gestora-form.component\";\r\nimport { UnidadeGestoraListComponent } from \"./pages/unidade-gestora-list/unidade-gestora-list.component\";\r\nimport { MainComponent } from \"./shared/layout/main/main.component\";\r\nimport { PaaListComponent } from \"./pages/paa-list/paa-list.component\";\r\nimport { PaaElaborarComponent } from \"./pages/paa-elaborar/paa-elaborar.component\";\r\nimport { PendenciaListComponent } from \"./pages/pendencia-list/pendencia-list.component\";\r\nimport { OpaListComponent } from \"./pages/opa/list/opa-list.component\";\r\nimport { TecnicaAuditoriaListComponent } from \"./pages/tecnica-auditoria-list/tecnica-auditoria-list.component\";\r\nimport { TecnicaAuditoriaFormComponent } from \"./pages/tecnica-auditoria-form/tecnica-auditoria-form.component\";\r\nimport { LogListComponent } from \"./pages/log-sistema-list/log-list.component\";\r\nimport { CustoRecursoListComponent } from \"./pages/custo-recurso-list/custo-recurso-list.component\";\r\nimport { CustoRecursoFormComponent } from \"./pages/custo-recurso-form/custo-recurso-form.component\";\r\nimport { ProcedimentoAuditoriaListComponent } from \"./pages/procedimento-auditoria-list/procedimento-auditoria-list.component\";\r\nimport { ProcedimentoAuditoriaFormComponent } from \"./pages/procedimento-auditoria-form/procedimento-auditoria-form.component\";\r\nimport { LogFormComponent } from \"./pages/log-sistema-form/log-form.component\";\r\nimport { RecomendacaoListComponent } from \"./pages/recomendacao-list/recomendacao-list.component\";\r\nimport { RecomendacaoFormComponent } from \"./pages/recomendacao-form/recomendacao-form.component\";\r\nimport { ConstatacaoListComponent } from \"./pages/constatacao-list/constatacao-list.component\";\r\nimport { ConstatacaoFormComponent } from \"./pages/constatacao-form/constatacao-form.component\";\r\nimport { QuestaoListComponent } from \"./pages/questao-list/questao-list.component\";\r\nimport { QuestaoFormComponent } from \"./pages/questao-form/questao-form.component\";\r\nimport { OpaFormComponent } from \"./pages/opa/form/opa-form.component\";\r\nimport { MatrizPlanejamentoListComponent } from \"./pages/matriz-planejamento-list/matriz-planejamento-list.component\";\r\nimport { MatrizPlanejamentoFormComponent } from \"./pages/matriz-planejamento-form/matriz-planejamento-form.component\";\r\nimport { MatrizPlanejamentoRelatorioComponent } from \"./pages/matriz-planejamento-relatorio/matriz-planejamento-relatorio.component\";\r\nimport { PeaGuard } from \"./core/guards/pea.guard\";\r\nimport { QuestionarioGuard } from \"./core/guards/questionario.guard\";\r\nimport { PeriodoGuard } from \"./core/guards/periodo.guard\";\r\nimport { TipoCriterioGuard } from \"./core/guards/tipoCriterio.guard\";\r\nimport { CriterioGuard } from \"./core/guards/criterio.guard\";\r\nimport { IndicadorGuard } from \"./core/guards/Indicador.guard\";\r\nimport { TipoAuditoriaGuard } from \"./core/guards/tipoAuditoria.guard\";\r\nimport { TipoDispensaGuard } from \"./core/guards/tipoDispensa.guard\";\r\nimport { UnidadeGestoraGuard } from \"./core/guards/tipoDispensa.guard\";\r\nimport { CoordenacaoGuard } from \"./core/guards/coordenacao.guard\";\r\nimport { ModeloRelatorioGuard } from \"./core/guards/modeloRelatorio.guard\";\r\nimport { PerguntaGuard } from \"./core/guards/pergunta.guard\";\r\nimport { ImprimirRolResponsaveisComponent } from \"./pages/rol-responsavel-relatoria/imprimir-rol-responsaveis/imprimir-rol-responsaveis.component\";\r\nimport { RolResponsaveisFormComponent } from \"./pages/rol-responsaveis-form/rol-responsaveis-form.component\";\r\nimport { NaturezaResponsabilidadeListComponent } from \"./pages/natureza-responsabilidade-list/natureza-responsabilidade-list.component\";\r\nimport { NaturezaResponsabilidadeFormComponent } from \"./pages/natureza-responsabilidade-form/natureza-responsabilidade-form.component\";\r\nimport { NaturezaResponsabilidadeGuard } from \"./core/guards/naturezaResponsabilidade.guard\";\r\nimport { CalendarioGuard } from \"./core/guards/Calendario.guard\";\r\nimport { SubtipoAuditoriaListComponent } from \"./pages/subtipo-auditoria-list/subtipo-auditoria-list.component\";\r\nimport { SubtipoAuditoriaFormComponent } from \"./pages/subtipo-auditoria-form/subtipo-auditoria-form.component\";\r\nimport { TecnicaAuditoriaGuard } from \"./core/guards/tecnicaAuditoria.guard\";\r\nimport { CustoRecursoGuard } from \"./core/guards/custoRecurso.guard\";\r\nimport { ProcedimentoAuditoriaGuard } from \"./core/guards/procedimentoAuditoria.guard\";\r\nimport { QuestaoGuard } from \"./core/guards/questao.guard\";\r\nimport { MatrizPlanejamentoGuard } from \"./core/guards/matrizPlanejamento.guard\";\r\nimport { RecomendacaoGuard } from \"./core/guards/recomendacao.guard\";\r\nimport { SubtipoAuditoriaGuard } from \"./core/guards/subtipoAuditoria.guard\";\r\nimport { PlanejamentoFormComponent } from \"./pages/planejamento-form/planejamento-form.component\";\r\nimport { OpaRelatorioComponent } from \"./pages/opa/relatorio/opa-relatorio.component\";\r\nimport { RolResponsaveisListComponent } from \"./pages/rol-responsaveis-list/rol-responsaveis-list.component\";\r\nimport { ImprimirRolResponsavelUnidadeGestoraComponent } from \"./pages/rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/imprimir-rol-responsavel-unidade-gestora.component\";\r\nimport { PlanejamentoListComponent } from \"./pages/planejamento-list/planejamento-list.component\";\r\nimport { FaseAtividadeListComponent } from \"./pages/fase-atividade-list/fase-atividade-list.component\";\r\nimport { OsaComponent } from \"./pages/osa/osa.component\";\r\nimport { OsaFormComponent } from \"./pages/osa/osa-form/osa-form.component\";\r\nimport { FaseAtividadeFormComponent } from \"./pages/fase-atividade-form/fase-atividade-form.component\";\r\nimport { FaseAtividadeGuard } from \"./core/guards/faseAtividade.guard\";\r\nimport { OsaImprimirComponent } from \"./pages/osa/osa-imprimir/osa-imprimir.component\";\r\nimport { ImprimirAmostraComponent } from \"./shared/components/aba-amostra/imprimir-amostra/imprimir-amostra.component\";\r\nimport { AprovacaoListComponent } from \"./pages/aprovacao-list/aprovacao-list.component\";\r\nimport { ImprimirRelatoriaComponent } from \"./shared/components/relatoria/imprimir-relatoria/imprimir-relatoria.component\";\r\nimport { AuditoriaListComponent } from \"./pages/auditoria-list/auditoria-list.component\";\r\nimport { SolicitacaoTecnicaListComponent } from \"./pages/solicitacao-tecnica/list/solicitacao-tecnica-list.component\";\r\nimport { SolicitacaoTecnicaFormComponent } from \"./pages/solicitacao-tecnica/solicitacao-tecnica-form/solicitacao-tecnica-form.component\";\r\nimport { ImprimirSolicitacaoComponent } from \"./shared/components/aba-solicitacao-tecnica/imprimir-solicitacao/imprimir-solicitacao.component\";\r\nimport { ImprimirComponent } from \"./pages/planejamento-form/imprimir/imprimir.component\";\r\nimport { EnumRecursoPerfil } from \"./models/enum/recurso-perfil.enum\";\r\nimport { EnumAcaoRecurso } from \"./models/enum/acao-recurso.enum\";\r\nimport { MatrizPlanejamentoVisualizarComponent } from \"./pages/planejamento-form/matriz-planejamento-visualizar/matriz-planejamento-visualizar.component\";\r\nimport { TipoEnfaseListComponent } from \"./pages/tipo-enfase-list/tipo-enfase-list.component\";\r\nimport { TipoEnfaseFormComponent } from \"./pages/tipo-enfase-form/tipo-enfase-form.component\";\r\nimport { TipoEnfaseGuard } from \"./core/guards/tipoEnfase.guard\";\r\nimport { AgentePublicoListComponent } from \"./pages/agente-publico-list/agente-publico-list.component\";\r\nimport { AgentePublicoFormComponent } from \"./pages/agente-publico-form/agente-publico-form.component\";\r\nimport { PaaGuard } from \"./core/guards/paa.guard\";\r\nimport { CategoriaRiscoListComponent } from \"./pages/categoria-risco-list/categoria-risco-list.component\";\r\nimport { CategoriaRiscoFormComponent } from \"./pages/categoria-risco-form/categoria-risco-form.component\";\r\nimport { RiscosFormComponent } from \"./pages/riscos-form/riscos-form.component\";\r\nimport { CategoriaRiscoGuard } from \"./core/guards/categoriaRisco.guard\";\r\nimport { ModeloQuestionarioListComponent } from \"./pages/modelo-questionario-list/modelo-questionario-list.component\";\r\nimport { ModeloQuestionarioFormComponent } from \"./pages/modelo-questionario-form/modelo-questionario-form.component\";\r\nimport { GerarQuestionarioComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/gerar-questionario/gerar-questionario.component\";\r\nimport { AbaEntendendoEntidadeComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/aba-entendendo-entidade.component\";\r\nimport { EditarEntendendoEntidadeComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/editar-entendendo-entidade/editar-entendendo-entidade.component\";\r\nimport { VisualizarEntendendoEntidadeComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/visualizar-entendendo-entidade/visualizar-entendendo-entidade.component\";\r\nimport { ImprimirEntendendoEntidadeComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/imprimir-entendendo-entidade/imprimir-entendendo-entidade.component\";\r\nimport { ImportacaoArquivoQuestionarioComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/importacao-arquivo-questionario/importacao-arquivo-questionario.component\";\r\n\r\nimport { PrePlanejamentoListComponent } from \"./pages/pre-planejamento-list/pre-planejamento-list.component\";\r\nimport { PrePlanejamentoRespostaFormComponent } from \"./pages/pre-planejamento-resposta-form/pre-planejamento-resposta-form.component\";\r\n\r\nimport { RiscosGuard } from \"./core/guards/riscos.guard\";\r\nimport { RiscosListComponent } from \"./pages/riscos-list/riscos-list.component\";\r\nimport { AbaMaturidadeRiscoComponent } from \"./pages/unidade-gestora-form/aba-maturidade-risco/aba-maturidade-risco.component\";\r\nimport { GerarQuestionarioSharedComponent } from \"./pages/unidade-gestora-form/shared/gerar-questionario/gerar-questionario.component\";\r\nimport { EditarQuestionarioComponent } from \"./pages/unidade-gestora-form/shared/editar-questionario/editar-questionario.component\";\r\nimport { VisualizarQuestionarioComponent } from \"./pages/unidade-gestora-form/shared/visualizar-questionario/visualizar-questionario.component\";\r\nimport { ImportacaoArquivoQuestionarioSharedComponent } from \"./pages/unidade-gestora-form/shared/importacao-arquivo-questionario/importacao-arquivo-questionario.component\";\r\nimport { ImprimirQuestionarioComponent } from \"./pages/unidade-gestora-form/shared/imprimir-questionario/imprimir-questionario.component\";\r\nimport { AvaliarQuestionarioComponent } from \"./pages/unidade-gestora-form/shared/avaliar-questionario/avaliar-questionario.component\";\r\nimport { VisualizarRelatoriaComponent } from \"./shared/components/relatoria/visualizar-relatoria/visualizar-relatoria.component\";\r\nimport { imprimirLinhaDoTempoComponent } from \"./shared/components/relatoria/imprimir-linha-do-tempo/imprimir-linha-do-tempo.component\";\r\nimport { TipoUniversoListComponent } from \"./pages/tipo-universo-list/tipo-universo-list.component\";\r\nimport { TipoUniversoFormComponent } from \"./pages/tipo-universo-form/tipo-universo-form.component\";\r\nimport { VisualizarMaturidadeDeRiscoComponent } from \"./pages/unidade-gestora-form/aba-maturidade-risco/visualizar-maturidade-de-risco/visualizar-maturidade-de-risco.component\";\r\nimport {\r\n GerarUniversoAuditavelComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/gerar-universo-auditavel/gerar-universo-auditavel.component\";\r\nimport {\r\n ImportarArquivoUniversoAuditavelComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/importar-arquivo-universo-auditavel/importar-arquivo-universo-auditavel.component\";\r\nimport {\r\n UniversoAuditavelFormComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/universo-auditavel-form/universo-auditavel-form.component\";\r\nimport {\r\n UniversoAuditavelPreechimentoFormComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/universo-auditavel-preechimento-form/universo-auditavel-preechimento-form.component\";\r\nimport {\r\n VisualizarUniversoAuditavelComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/visualizar-universo-auditavel/visualizar-universo-auditavel.component\";\r\nimport { CriteriosAvaliacaoListComponent } from \"./pages/criterios-avaliacao-list/criterios-avaliacao-list.component\";\r\nimport { CriteriosAvaliacaoFormComponent } from \"./pages/criterios-avaliacao-form/criterios-avaliacao-form.component\";\r\nimport {\r\n\tGerarComponent\r\n} from \"./pages/unidade-gestora-form/aba-riscos-chaves/gerar/gerar.component\";\r\nimport { RiscosChavesFormComponent } from \"./pages/unidade-gestora-form/aba-riscos-chaves/riscos-chaves-form/riscos-chaves-form.component\";\r\nimport { AbaRiscosChavesComponent } from \"./pages/unidade-gestora-form/aba-riscos-chaves/aba-riscos-chaves.component\";\r\nimport { PreenchimentoRiscosCriteriosComponent } from \"./pages/unidade-gestora-form/aba-riscos-chaves/preenchimento-riscos-criterios/preenchimento-riscos-criterios.component\";\r\nimport {\r\n ImportarArquivoRiscosChavesComponent\r\n} from \"./pages/unidade-gestora-form/aba-riscos-chaves/importar-arquivo-riscos-chaves/importar-arquivo-risco-chaves.component\";\r\n\r\n\r\n//A ordem das rotas importa: primeiro /novo, depois os próximos\r\n\r\nconst routes: Routes = [\r\n\t{\r\n\t\tpath: \"\",\r\n\t\tcomponent: MainComponent,\r\n\t\tcanActivateChild: [AuthGuard],\r\n\t\tchildren: [\r\n\t\t\t{\r\n\t\t\t\tpath: \"osa\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOSA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OsaComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"osa/:id/elaborar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOSA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Elaborar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OsaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"osa/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOSA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OsaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"osa/:id/imprimir\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOSA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OsaImprimirComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"osa/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOSA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OsaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"imprimir-relatoria/:id/tipo-trabalho/:tipoTrabalho\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aprovacoes,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Relatoria,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImprimirRelatoriaComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"imprimir-relatoria/:id/espelho-relatorio\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aprovacoes,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Relatoria,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImprimirRelatoriaComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"visualizar-relatoria/:id/tipo-trabalho/:tipoTrabalho\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aprovacoes,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Relatoria,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: VisualizarRelatoriaComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"imprimir-linha-do-tempo/:id/tipo-trabalho/:tipoTrabalho\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aprovacoes,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Relatoria,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: imprimirLinhaDoTempoComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"faixa-classificacao\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: FaixaClassificacaoFormComponent,\r\n\t\t\t},\r\n\r\n\t\t\t{\r\n\t\t\t\tpath: \"indicadores\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: IndicadorListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"indicadores/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: IndicadorFormComponent,\r\n\t\t\t\tcanDeactivate: [IndicadorGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"indicadores/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: IndicadorFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"indicadores/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: IndicadorFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-dispensa\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoDispensaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-dispensa/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoDispensaFormComponent,\r\n\t\t\t\tcanDeactivate: [TipoDispensaGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-dispensa/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoDispensaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-dispensa/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoDispensaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"periodos\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeriodoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"periodos/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeriodoFormComponent,\r\n\t\t\t\tcanDeactivate: [PeriodoGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"periodos/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeriodoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"criterios\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CriterioListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"criterios/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CriterioFormComponent,\r\n\t\t\t\tcanDeactivate: [CriterioGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"criterios/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CriterioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"criterio/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CriterioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-criterio\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoCriterioListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-criterio/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoCriterioFormComponent,\r\n\t\t\t\tcanDeactivate: [TipoCriterioGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-criterio/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoCriterioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-criterio/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoCriterioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"aprovacao\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aprovacoes,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: AprovacaoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"aprovacao/:tipoDocumentoAprovacao/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aprovacoes,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: AprovacaoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"perguntas\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PerguntaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"perguntas/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PerguntaFormComponent,\r\n\t\t\t\tcanDeactivate: [PerguntaGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"perguntas/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PerguntaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"perguntas/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PerguntaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"coordenacoes\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CoordenacaoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"coordenacoes/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CoordenacaoFormComponent,\r\n\t\t\t\tcanDeactivate: [CoordenacaoGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"coordenacoes/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CoordenacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"coordenacoes/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CoordenacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"fase-atividade\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: FaseAtividadeListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"fase-atividade/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: FaseAtividadeFormComponent,\r\n\t\t\t\tcanDeactivate: [FaseAtividadeGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"fase-atividade/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: FaseAtividadeFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"fase-atividade/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: FaseAtividadeFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"natureza-responsabilidade\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: NaturezaResponsabilidadeListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"natureza-responsabilidade/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: NaturezaResponsabilidadeFormComponent,\r\n\t\t\t\tcanDeactivate: [NaturezaResponsabilidadeGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"natureza-responsabilidade/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: NaturezaResponsabilidadeFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"natureza-responsabilidade/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: NaturezaResponsabilidadeFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"calendario\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CalendarioListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"calendario/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CalendarioFormComponent,\r\n\t\t\t\tcanDeactivate: [CalendarioGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"calendario/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CalendarioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"calendario/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CalendarioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tecnica-auditoria\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TecnicaAuditoriaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tecnica-auditoria/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TecnicaAuditoriaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tecnica-auditoria/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TecnicaAuditoriaFormComponent,\r\n\t\t\t\tcanDeactivate: [TecnicaAuditoriaGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tecnica-auditoria/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TecnicaAuditoriaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"recomendacao\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: RecomendacaoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"recomendacao/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: RecomendacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"recomendacao/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: RecomendacaoFormComponent,\r\n\t\t\t\tcanDeactivate: [RecomendacaoGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"recomendacao/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: RecomendacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"custo-recurso\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CustoRecursoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"custo-recurso/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CustoRecursoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"custo-recurso/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CustoRecursoFormComponent,\r\n\t\t\t\tcanDeactivate: [CustoRecursoGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"custo-recurso/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CustoRecursoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"procedimento-auditoria\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ProcedimentoAuditoriaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"procedimento-auditoria/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ProcedimentoAuditoriaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"procedimento-auditoria/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ProcedimentoAuditoriaFormComponent,\r\n\t\t\t\tcanDeactivate: [ProcedimentoAuditoriaGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"procedimento-auditoria/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ProcedimentoAuditoriaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-auditoria\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoAuditoriaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-auditoria/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoAuditoriaFormComponent,\r\n\t\t\t\tcanDeactivate: [TipoAuditoriaGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-auditoria/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoAuditoriaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipos-auditoria/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoAuditoriaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"capitulos-relatorio\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CapituloRelatorioListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"capitulos-relatorio/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CapituloRelatorioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"capitulos-relatorio/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CapituloRelatorioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"parametrizacao-documento-edocs\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Configuracoes,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ParametrizacaoDocumentoEdocsFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"modelos-relatorio\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ModeloRelatorioListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"modelos-relatorio/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ModeloRelatorioFormComponent,\r\n\t\t\t\tcanDeactivate: [ModeloRelatorioGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"modelos-relatorio/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ModeloRelatorioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"modelos-relatorio/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ModeloRelatorioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"pea\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPEA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"pea/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPEA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeaFormComponent,\r\n\t\t\t\tcanDeactivate: [PeaGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"pea/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPEA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"pea/:id/editar-relatoria\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPEA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"pea/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPEA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"fluxos-aprovacao\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Configuracoes,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: FluxoAprovacaoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"fluxos-aprovacao/novo\",\r\n\t\t\t\tdata: { recurso: EnumRecursoPerfil.Configuracoes },\r\n\t\t\t\tcomponent: FluxoAprovacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"fluxos-aprovacao/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Configuracoes,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: FluxoAprovacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"fluxos-aprovacao/:id/visualizar\",\r\n\t\t\t\tdata: { recurso: EnumRecursoPerfil.Configuracoes },\r\n\t\t\t\tcomponent: FluxoAprovacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"pea/:id/relatorio-simplificado\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPEA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeaRelatorioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"pea/:id/relatorio-consolidado\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPEA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeaRelatorioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"pea/:id/espelho-relatorio-consolidado\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPEA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeaRelatorioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"rolresponsaveis\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: RolResponsaveisListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"rolresponsaveis/relatorio\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImprimirRolResponsaveisComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"rolresponsaveis/relatorio/unidades-gestoras\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImprimirRolResponsavelUnidadeGestoraComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"rolresponsaveis/:id/responsaveis\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: RolResponsaveisFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"rolresponsaveis/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: RolResponsaveisFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"unidades-gestoras\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: UnidadeGestoraListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"unidades-gestoras/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: UnidadeGestoraFormComponent,\r\n\t\t\t\tcanDeactivate: [UnidadeGestoraGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"unidades-gestoras/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacoes: [EnumAcaoRecurso.Editar, EnumAcaoRecurso.Visualizar, , EnumAcaoRecurso.Consultar]\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: UnidadeGestoraFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"unidades-gestoras/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: UnidadeGestoraFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questionario/pea\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: QuestionarioListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questionario/pea/:id/criterio/:criterioId/ug/:unidadeGestoraId\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: QuestionarioFormComponent,\r\n\t\t\t\tcanDeactivate: [QuestionarioGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questionario/pea/:id/criterio/:criterioId/ug/:unidadeGestoraId/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: QuestionarioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questionario/paa\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: QuestionarioListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questionario/paa/:id/criterio/:criterioId/ug/:unidadeGestoraId\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: QuestionarioFormComponent,\r\n\t\t\t\tcanDeactivate: [QuestionarioGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questionario/paa/:id/criterio/:criterioId/ug/:unidadeGestoraId/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: QuestionarioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"parametrizacoes\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Configuracoes,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ParametrizacaoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"\",\r\n\t\t\t\tcomponent: InicialComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"paa\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPAA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PaaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"paa/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPAA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PaaElaborarComponent,\r\n\t\t\t\tcanDeactivate: [PaaGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"paa/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPAA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PaaElaborarComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"paa/:id/editar-relatoria\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPAA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PaaElaborarComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"paa/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPAA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PaaElaborarComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"pendencias\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PendenciaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"opa\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOPA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OpaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"opa/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOPA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OpaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"opa/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOPA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OpaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"opa/:id/nova-versao\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOPA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.GerarNovaVersao,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OpaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"opa/:id/editar-relatoria\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOPA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OpaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"opa/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOPA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OpaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"opa/:id/relatorio\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOPA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OpaRelatorioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"opa/:id/relatorio-consolidado\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOPA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OpaRelatorioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"paa/:id/relatorio\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPAA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PaaRelatorioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"log\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.LogsDoSistema,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: LogListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"log/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.LogsDoSistema,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Detalhar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: LogFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"constatacao\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ConstatacaoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"constatacao/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ConstatacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"constatacao/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ConstatacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"constatacao/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ConstatacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questao\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: QuestaoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questao/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: QuestaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questao/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: QuestaoFormComponent,\r\n\t\t\t\tcanDeactivate: [QuestaoGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questao/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: QuestaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"paa/:id/espelho-relatorio\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterPAA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PaaRelatorioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"opa/:id/espelho-relatorio\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOPA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OpaRelatorioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"osa/:id/espelho-relatorio\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOSA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: OsaImprimirComponent,\r\n\t\t\t},\r\n\r\n\t\t\t{\r\n\t\t\t\tpath: \"periodos/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PeriodoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"matriz-planejamento\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: MatrizPlanejamentoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"matriz-planejamento/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: MatrizPlanejamentoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"matriz-planejamento/:id/edicao\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: MatrizPlanejamentoFormComponent,\r\n\t\t\t\tcanDeactivate: [MatrizPlanejamentoGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"matriz-planejamento/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: MatrizPlanejamentoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"matriz-planejamento/relatorio/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: MatrizPlanejamentoRelatorioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"subtipo-auditoria\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: SubtipoAuditoriaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"subtipo-auditoria/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: SubtipoAuditoriaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"subtipo-auditoria/:id/edicao\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: SubtipoAuditoriaFormComponent,\r\n\t\t\t\tcanDeactivate: [SubtipoAuditoriaGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"subtipo-auditoria/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: SubtipoAuditoriaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"planejamento\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Planejamento,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PlanejamentoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"planejamento/:id/planejar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Planejamento,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Planejar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PlanejamentoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"planejamento/:id/editar-relatoria\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Planejamento,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Planejar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PlanejamentoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"planejamento/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Planejamento,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: PlanejamentoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"planejamento/:id/imprimir\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Planejamento,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImprimirComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"planejamento/:id/planejar/amostra/:amostraId/imprimir\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Planejamento,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImprimirAmostraComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \":tipoTrabalho/:id/solicitacao-tecnica/:solicitacaotecnicaId/imprimir\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImprimirSolicitacaoComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"osa/:id/editar-relatoria\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOSA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImprimirAmostraComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"osa/:id/planejar/amostra/:amostraId/imprimir\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.ManterOSA,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImprimirAmostraComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"auditoria\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Auditoria,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Consultar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: AuditoriaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"solicitacao-tecnica\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: SolicitacaoTecnicaListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"solicitacao-tecnica/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: SolicitacaoTecnicaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"solicitacao-tecnica/:id/responder\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: SolicitacaoTecnicaFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"matriz-planejamento-visualizar/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: MatrizPlanejamentoVisualizarComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipo-enfase\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoEnfaseListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipo-enfase/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoEnfaseFormComponent,\r\n\t\t\t\tcanDeactivate: [TipoEnfaseGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipo-enfase/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoEnfaseFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipo-enfase/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoEnfaseFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"agente-publico\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: AgentePublicoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"agente-publico/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: AgentePublicoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"agente-publico/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: AgentePublicoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"categoria-risco\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.CadastroCategoriaRisco,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CategoriaRiscoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"categoria-risco/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.CadastroCategoriaRisco,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CategoriaRiscoFormComponent,\r\n\t\t\t\tcanDeactivate: [CategoriaRiscoGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"categoria-risco/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.CadastroCategoriaRisco,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CategoriaRiscoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"categoria-risco/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.CadastroCategoriaRisco,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CategoriaRiscoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"riscos\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.CadastroRiscos,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: RiscosListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"riscos/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.CadastroRiscos,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: RiscosFormComponent,\r\n\t\t\t\tcanDeactivate: [RiscosGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"riscos/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.CadastroRiscos,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: RiscosFormComponent,\r\n\t\t\t\tcanDeactivate: [RiscosGuard],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"riscos/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.CadastroRiscos,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: RiscosFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"criteriosAvaliacao\",\r\n\t\t\t\t// data: {\r\n\t\t\t\t// \trecurso: EnumRecursoPerfil.CriteriosAvaliacaoRiscos,\r\n\t\t\t\t// \tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t// },\r\n\t\t\t\tcomponent: CriteriosAvaliacaoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"criteriosAvaliacao/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.CriteriosAvaliacaoRiscos,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CriteriosAvaliacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"criteriosAvaliacao/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.CriteriosAvaliacaoRiscos,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CriteriosAvaliacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"criteriosAvaliacao/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.CriteriosAvaliacaoRiscos,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: CriteriosAvaliacaoFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"modelo-questionario\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ModeloQuestionarioListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"modelo-questionario/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ModeloQuestionarioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"modelo-questionario/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ModeloQuestionarioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"modelo-questionario/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ModeloQuestionarioFormComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"gerar-questionario\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: GerarQuestionarioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"gerar-questionario-shared\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: GerarQuestionarioSharedComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"editar-entendendo-entidade/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: EditarEntendendoEntidadeComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"visualizar-entendendo-entidade/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: VisualizarEntendendoEntidadeComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"imprimir-entendendo-entidade/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImprimirEntendendoEntidadeComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"importacao-arquivo-questionario\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImportacaoArquivoQuestionarioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"unidades-gestoras/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Cadastros,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: UnidadeGestoraFormComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"visualizar-maturidade-de-risco/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: VisualizarMaturidadeDeRiscoComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questionario/pre-planejamento\",\r\n\t\t\t\tdata: { recurso: EnumRecursoPerfil.PrePlanejamento, acao: EnumAcaoRecurso.Visualizar},\r\n\t\t\t\tcomponent: PrePlanejamentoListComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questionario/pre-planejamento-resposta/:id\",\r\n\t\t\t\tdata: { recurso: EnumRecursoPerfil.PrePlanejamento, acao: EnumAcaoRecurso.Editar},\r\n\t\t\t\tcomponent: PrePlanejamentoRespostaFormComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questionario/pre-planejamento-resposta/:id/visualizar\",\r\n\t\t\t\tdata: { recurso: EnumRecursoPerfil.PrePlanejamento, acao: EnumAcaoRecurso.Visualizar},\r\n\t\t\t\tcomponent: PrePlanejamentoRespostaFormComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"questionario/pre-planejamento-resposta/:id/imprimir\",\r\n\t\t\t\tdata: { recurso: EnumRecursoPerfil.PrePlanejamento,\r\n\t\t\t\t\t acao: EnumAcaoRecurso.Imprimir,\r\n\t\t\t\t\t\t imprimir: true},\r\n\t\t\t\tcomponent: PrePlanejamentoRespostaFormComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"editar-questionario/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: EditarQuestionarioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"visualizar-questionario/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: VisualizarQuestionarioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"importacao-arquivo-questionario-shared\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImportacaoArquivoQuestionarioSharedComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"imprimir-questionario/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: ImprimirQuestionarioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"avaliar-questionario/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: AvaliarQuestionarioComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipo-universo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.Aberto,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoUniversoListComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipo-universo/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.TipoUniversoAuditavel,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoUniversoFormComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipo-universo/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.TipoUniversoAuditavel,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoUniversoFormComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"tipo-universo/:id/visualizar\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.TipoUniversoAuditavel,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: TipoUniversoFormComponent\r\n\t\t\t},\r\n {\r\n\t\t\t\tpath: \"tipo-universo-auditavel/novo\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.TipoUniversoAuditavel,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: GerarUniversoAuditavelComponent\r\n\t\t\t},\r\n {\r\n\t\t\t\tpath: \"universo-auditavel-form/:id\",\r\n\t\t\t\tdata: {\r\n\t\t\t\t\trecurso: EnumRecursoPerfil.TipoUniversoAuditavel,\r\n\t\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t\t},\r\n\t\t\t\tcomponent: UniversoAuditavelFormComponent\r\n\t\t\t},\r\n {\r\n path: \"universo-auditavel-preechimento-form\",\r\n data: {\r\n recurso: EnumRecursoPerfil.TipoUniversoAuditavel,\r\n acao: EnumAcaoRecurso.Inserir,\r\n },\r\n component: UniversoAuditavelPreechimentoFormComponent\r\n },\r\n {\r\n path: \"visualizar-universo-auditavel/:id\",\r\n data: {\r\n recurso: EnumRecursoPerfil.TipoUniversoAuditavel,\r\n acao: EnumAcaoRecurso.Visualizar,\r\n },\r\n component: VisualizarUniversoAuditavelComponent\r\n },\r\n {\r\n path: \"importar-arquivo-universo-auditavel/novo\",\r\n data: {\r\n recurso: EnumRecursoPerfil.TipoUniversoAuditavel,\r\n acao: EnumAcaoRecurso.Inserir,\r\n },\r\n component: ImportarArquivoUniversoAuditavelComponent\r\n },\r\n\t {\r\n\t\tpath: \"riscos-chaves\",\r\n\t\tdata: {\r\n\t\t\trecurso: EnumRecursoPerfil.Aberto ,\r\n\t\t\tacao: EnumAcaoRecurso.Visualizar,\r\n\t\t},\r\n\t\tcomponent: AbaRiscosChavesComponent\r\n\t },\r\n\t {\r\n\t\tpath: \"gerar\",\r\n\t\tdata: {\r\n\t\t\trecurso: EnumRecursoPerfil.QuestionarioEntentendoEntidade ,\r\n\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t},\r\n\t\tcomponent: GerarComponent\r\n\t },\r\n\t {\r\n\t\tpath: \"riscos-chaves-form/:id\",\r\n\t\tdata: {\r\n\t\t\trecurso: EnumRecursoPerfil.QuestionarioEntentendoEntidade ,\r\n\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t},\r\n\t\t\tcomponent: RiscosChavesFormComponent\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: \"riscos-chaves-form/novo\",\r\n\t\t\tdata: {\r\n\t\t\t\trecurso: EnumRecursoPerfil.QuestionarioEntentendoEntidade ,\r\n\t\t\t\tacao: EnumAcaoRecurso.Inserir,\r\n\t\t\t},\r\n\t\t\t\tcomponent: RiscosChavesFormComponent\r\n\t\t\t},\r\n\t\t{\r\n\t\t\tpath: \"preenchimento-riscos-criterios/:id/:processoId\",\r\n\t\t\tdata: {\r\n\t\t\t\trecurso: EnumRecursoPerfil.QuestionarioEntentendoEntidade ,\r\n\t\t\t\tacao: EnumAcaoRecurso.Editar,\r\n\t\t\t},\r\n\t\t\t\tcomponent: PreenchimentoRiscosCriteriosComponent\r\n\t\t\t},\r\n {\r\n path: \"importar-arquivo-riscos-chaves/novo\",\r\n data: {\r\n recurso: EnumRecursoPerfil.TipoUniversoAuditavel,\r\n acao: EnumAcaoRecurso.Inserir,\r\n },\r\n component: ImportarArquivoRiscosChavesComponent\r\n },\r\n\t\t]\r\n\t},\r\n\r\n\t{ path: \"**\", redirectTo: \"\" },\r\n];\r\n\r\n@NgModule({\r\n\tdeclarations: [],\r\n\timports: [RouterModule.forRoot(routes)],\r\n\texports: [RouterModule],\r\n})\r\nexport class AppRoutingModule {}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from './services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss'],\r\n})\r\nexport class AppComponent implements OnInit {\r\n title = 'secont-siac-app';\r\n\r\n constructor(private authService: AuthService) { }\r\n\r\n ngOnInit() {\r\n this.authService.obterPerfilUsuario();\r\n }\r\n}\r\n","\r\n\r\n

Processando...

\r\n\r\n\r\n","import { ModalExcluirMetricaComponent } from \"./pages/pergunta-form/modal-metrica-pergunta/modal-excluir-metrica/modal-excluir-metrica.component\";\r\ndefineLocale(\"pt-br\", ptBrLocale);\r\n\r\nimport { DragDropModule } from \"@angular/cdk/drag-drop\";\r\nimport { CdkTableModule } from \"@angular/cdk/table\";\r\nimport { CommonModule, registerLocaleData } from \"@angular/common\";\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from \"@angular/common/http\";\r\nimport ptBr from \"@angular/common/locales/pt\";\r\nimport { DEFAULT_CURRENCY_CODE, LOCALE_ID, NgModule } from \"@angular/core\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { MatCheckboxModule } from \"@angular/material/checkbox\";\r\nimport {\r\n\tMatDialogModule,\r\n\tMatDialogRef,\r\n\tMAT_DIALOG_DATA,\r\n} from \"@angular/material/dialog\";\r\nimport {\r\n\tMatPaginatorIntl,\r\n\tMatPaginatorModule,\r\n} from \"@angular/material/paginator\";\r\nimport { MatSortModule } from \"@angular/material/sort\";\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatTableModule } from \"@angular/material/table\";\r\nimport { MatToolbarModule } from \"@angular/material/toolbar\";\r\nimport { BrowserModule } from \"@angular/platform-browser\";\r\nimport { BrowserAnimationsModule } from \"@angular/platform-browser/animations\";\r\nimport { RouterModule } from \"@angular/router\";\r\nimport { NgbModule } from \"@ng-bootstrap/ng-bootstrap\";\r\nimport { LoadingBarHttpClientModule } from \"@ngx-loading-bar/http-client\";\r\nimport { LoadingBarRouterModule } from \"@ngx-loading-bar/router\";\r\nimport { ConfirmationPopoverModule } from \"angular-confirmation-popover\";\r\nimport { defineLocale } from \"ngx-bootstrap/chronos\";\r\nimport { BsDatepickerModule } from \"ngx-bootstrap/datepicker\";\r\nimport { ptBrLocale } from \"ngx-bootstrap/locale\";\r\nimport { ModalModule } from \"ngx-bootstrap/modal\";\r\nimport { NgxSpinnerModule } from \"ngx-spinner\";\r\nimport { ToastrModule } from \"ngx-toastr\";\r\nimport { AppRoutingModule } from \"./app-routing.module\";\r\nimport { AppComponent } from \"./app.component\";\r\nimport { getPtBrPaginatorIntl } from \"./core/helpers/ptbr-paginator-intl\";\r\nimport { AuthInterceptor } from \"./core/http/auth.interceptor\";\r\nimport { CapituloRelatorioFormComponent } from \"./pages/capitulo-relatorio-form/capitulo-relatorio-form.component\";\r\nimport { CapituloRelatorioListComponent } from \"./pages/capitulo-relatorio-list/capitulo-relatorio-list.component\";\r\nimport { CoordenacaoFormComponent } from \"./pages/coordenacao-form/coordenacao-form.component\";\r\nimport { CoordenacaoListComponent } from \"./pages/coordenacao-list/coordenacao-list.component\";\r\nimport { CalendarioFormComponent } from \"./pages/calendario-form/calendario-form.component\";\r\nimport { CalendarioListComponent } from \"./pages/calendario-list/calendario-list.component\";\r\nimport { CriterioFormComponent } from \"./pages/criterio-form/criterio-form.component\";\r\nimport { ModalMetricaNumericoComponent } from \"./pages/criterio-form/modal-metrica-numerico/modal-metrica-numerico.component\";\r\nimport { ModalMetricaOpcoesComponent } from \"./pages/criterio-form/modal-metrica-opcoes/modal-metrica-opcoes.component\";\r\nimport { CriterioListComponent } from \"./pages/criterio-list/criterio-list.component\";\r\nimport { ErroComponent } from \"./pages/erro/erro.component\";\r\nimport { FaixaClassificacaoFormComponent } from \"./pages/faixa-classificacao-form/faixa-classificacao-form.component\";\r\nimport { FluxoAprovacaoFormComponent } from \"./pages/fluxo-aprovacao-form/fluxo-aprovacao-form.component\";\r\nimport { FluxoAprovacaoListComponent } from \"./pages/fluxo-aprovacao-list/fluxo-aprovacao-list.component\";\r\nimport { IndicadorFormComponent } from \"./pages/indicador-form/indicador-form.component\";\r\nimport { IndicadorListComponent } from \"./pages/indicador-list/indicador-list.component\";\r\nimport { InicialComponent } from \"./pages/inicial/inicial.component\";\r\nimport { ModeloRelatorioFormComponent } from \"./pages/modelo-relatorio-form/modelo-relatorio-form.component\";\r\nimport { ModeloRelatorioListComponent } from \"./pages/modelo-relatorio-list/modelo-relatorio-list.component\";\r\nimport { ParametrizacaoDocumentoEdocsFormComponent } from \"./pages/parametrizacao-documento-edocs-form/parametrizacao-documento-edocs-form.component\";\r\nimport { ModalParametrizacaoFormComponent } from \"./pages/parametrizacao-list/modal-parametrizacao-form/modal-parametrizacao-form.component\";\r\nimport { ParametrizacaoListComponent } from \"./pages/parametrizacao-list/parametrizacao-list.component\";\r\nimport { ModalCapacidadeComponent } from \"./pages/pea-form/modal-capacidade/modal-capacidade.component\";\r\nimport { ModalImportarArquivoCriterioComponent } from \"./pages/pea-form/modal-importar-arquivo-criterio/modal-importar-arquivo-criterio.component\";\r\nimport { ModalPreencherFormularioComponent } from \"./pages/pea-form/modal-preencher-formulario/modal-preencher-formulario.component\";\r\nimport { ModalSelecionarCoordenacoesComponent } from \"./pages/pea-form/modal-selecionar-coordenacoes/modal-selecionar-coordenacoes.component\";\r\nimport { ModalSelecionarUgComponent } from \"./pages/pea-form/modal-selecionar-ug/modal-selecionar-ug.component\";\r\nimport { ModalVisualizarRespostasComponent } from \"./pages/pea-form/modal-visualizar-respostas/modal-visualizar-respostas.component\";\r\nimport { PeaFormComponent } from \"./pages/pea-form/pea-form.component\";\r\nimport { PeaListComponent } from \"./pages/pea-list/pea-list.component\";\r\nimport { PeaRelatorioComponent } from \"./pages/pea-relatorio/pea-relatorio.component\";\r\nimport { PaaRelatorioComponent } from \"./pages/paa-relatorio/paa-relatorio.component\";\r\nimport { PerguntaFormComponent } from \"./pages/pergunta-form/pergunta-form.component\";\r\nimport { PerguntaListComponent } from \"./pages/pergunta-list/pergunta-list.component\";\r\nimport { PeriodoFormComponent } from \"./pages/periodo-form/periodo-form.component\";\r\nimport { PeriodoListComponent } from \"./pages/periodo-list/periodo-list.component\";\r\nimport { QuestionarioFormComponent } from \"./pages/questionario-form/questionario-form.component\";\r\nimport { QuestionarioListComponent } from \"./pages/questionario-list/questionario-list.component\";\r\nimport { TipoAuditoriaFormComponent } from \"./pages/tipo-auditoria-form/tipo-auditoria-form.component\";\r\nimport { TipoAuditoriaListComponent } from \"./pages/tipo-auditoria-list/tipo-auditoria-list.component\";\r\nimport { TipoCriterioFormComponent } from \"./pages/tipo-criterio-form/tipo-criterio-form.component\";\r\nimport { TipoCriterioListComponent } from \"./pages/tipo-criterio-list/tipo-criterio-list.component\";\r\nimport { TipoDispensaFormComponent } from \"./pages/tipo-dispensa-form/tipo-dispensa-form.component\";\r\nimport { TipoDispensaListComponent } from \"./pages/tipo-dispensa-list/tipo-dispensa-list.component\";\r\nimport { UnidadeGestoraFormComponent } from \"./pages/unidade-gestora-form/unidade-gestora-form.component\";\r\nimport { ModalAssociarComponent } from \"./pages/unidade-gestora-list/modal-associar/modal-associar.component\";\r\nimport { ModalImportacaoComponent } from \"./pages/unidade-gestora-list/modal-importacao/modal-importacao.component\";\r\nimport { UnidadeGestoraListComponent } from \"./pages/unidade-gestora-list/unidade-gestora-list.component\";\r\nimport { AuthService } from \"./services/auth.service\";\r\nimport { AppButtonComponent } from \"./shared/components/app-button/app-button.component\";\r\nimport { BaseFormComponent } from \"./shared/components/base-form/base-form.component\";\r\nimport { BaseListComponent } from \"./shared/components/base-list/base-list.component\";\r\nimport { LookupModalComponent } from \"./shared/components/lookup-modal/lookup-modal.component\";\r\nimport { FooterComponent } from \"./shared/layout/footer/footer.component\";\r\nimport { HeaderComponent } from \"./shared/layout/header/header.component\";\r\nimport { UserDropdownMenuComponent } from \"./shared/layout/header/user-dropdown-menu/user-dropdown-menu.component\";\r\nimport { MainComponent } from \"./shared/layout/main/main.component\";\r\nimport { SidebarComponent } from \"./shared/layout/sidebar/sidebar.component\";\r\nimport { PaaListComponent } from \"./pages/paa-list/paa-list.component\";\r\nimport { MatTabsModule } from \"@angular/material/tabs\";\r\nimport { MatInputModule } from \"@angular/material/input\";\r\nimport { MatFormFieldModule } from \"@angular/material/form-field\";\r\nimport { PaaElaborarComponent } from \"./pages/paa-elaborar/paa-elaborar.component\";\r\nimport { MatSelectModule } from \"@angular/material/select\";\r\nimport { ModalCapacidadeDispensaComponent } from \"./pages/paa-elaborar/modal-capacidade-dispensa/modal-capacidade-dispensa.component\";\r\nimport { ModalAlocarEquipeComponent } from \"./pages/paa-elaborar/modal-alocar-equipe/modal-alocar-equipe.component\";\r\nimport { ModalSelecionarUGComponent } from \"./pages/paa-elaborar/modal-selecionar-ug/modal-selecionar-ug.component\";\r\nimport { ModalSelecionarColunasComponent } from \"./pages/paa-elaborar/modal-selecionar-colunas/modal-selecionar-colunas.component\";\r\nimport { ModalCadastrarCriterioComponent } from \"./pages/paa-elaborar/modal-cadastrar-criterio/modal-cadastrar-criterio.component\";\r\nimport { ModalCadastrarIndicadorComponent } from \"./pages/paa-elaborar/modal-cadastrar-indicador/modal-cadastrar-indicador.component\";\r\nimport { ModalConfirmarReativacaoDistribuicaoComponent } from \"./pages/paa-elaborar/modal-confirmar-reativacao-distribuicao/modal-confirmar-reativacao-distribuicao.component\";\r\nimport { PendenciaListComponent } from \"./pages/pendencia-list/pendencia-list.component\";\r\nimport { ModalGraficoDistribuicaoComponent } from \"./pages/paa-elaborar/modal-grafico-distribuicao/modal-grafico-distribuicao.component\";\r\nimport { MatTooltipModule } from \"@angular/material/tooltip\";\r\nimport { ModalConfirmarRejeitarComponent } from \"./shared/components/modal-confirmacao-rejeitar/modal-confirmacao-rejeitar.component\";\r\nimport { AngularEditorModule } from \"@kolkov/angular-editor\";\r\nimport { ModalPreencherFormularioPaaComponent } from \"./pages/paa-elaborar/modal-preencher-formulario/modal-preencher-formulario-paa.component\";\r\nimport { OpaListComponent } from \"./pages/opa/list/opa-list.component\";\r\nimport { PeaGuard } from \"./core/guards/pea.guard\";\r\nimport { QuestionarioGuard } from \"./core/guards/questionario.guard\";\r\nimport { ModalDelegarQuestionarioComponent } from \"./pages/questionario-form/modal-delegar/modal-delegar-component\";\r\nimport { ModalCancelarComponent } from \"./shared/components/modal-cancelar/modal-cancelar-component\";\r\nimport { TipoCriterioGuard } from \"./core/guards/tipoCriterio.guard\";\r\nimport { CriterioGuard } from \"./core/guards/criterio.guard\";\r\nimport { PeriodoGuard } from \"./core/guards/periodo.guard\";\r\nimport { IndicadorGuard } from \"./core/guards/Indicador.guard\";\r\nimport { TipoAuditoriaGuard } from \"./core/guards/tipoAuditoria.guard\";\r\nimport { TipoDispensaGuard } from \"./core/guards/tipoDispensa.guard\";\r\nimport { UnidadeGestoraGuard } from \"./core/guards/tipoDispensa.guard\";\r\nimport { CoordenacaoGuard } from \"./core/guards/coordenacao.guard\";\r\nimport { ModalAutuacaoComponent } from \"./pages/pea-form/modal-autuacao/modal-autuacao.component\";\r\nimport { ModalEntranharComponent } from \"./pages/paa-elaborar/modal-entranhar/modal-entranhar.component\";\r\nimport { TecnicaAuditoriaListComponent } from \"./pages/tecnica-auditoria-list/tecnica-auditoria-list.component\";\r\nimport { TecnicaAuditoriaFormComponent } from \"./pages/tecnica-auditoria-form/tecnica-auditoria-form.component\";\r\nimport { LogListComponent } from \"./pages/log-sistema-list/log-list.component\";\r\nimport { CustoRecursoListComponent } from \"./pages/custo-recurso-list/custo-recurso-list.component\";\r\nimport { CustoRecursoFormComponent } from \"./pages/custo-recurso-form/custo-recurso-form.component\";\r\nimport { ProcedimentoAuditoriaListComponent } from \"./pages/procedimento-auditoria-list/procedimento-auditoria-list.component\";\r\nimport { ProcedimentoAuditoriaFormComponent } from \"./pages/procedimento-auditoria-form/procedimento-auditoria-form.component\";\r\nimport { LogFormComponent } from \"./pages/log-sistema-form/log-form.component\";\r\nimport { RecomendacaoListComponent } from \"./pages/recomendacao-list/recomendacao-list.component\";\r\nimport { RecomendacaoFormComponent } from \"./pages/recomendacao-form/recomendacao-form.component\";\r\nimport { ConstatacaoListComponent } from \"./pages/constatacao-list/constatacao-list.component\";\r\nimport { ConstatacaoFormComponent } from \"./pages/constatacao-form/constatacao-form.component\";\r\nimport { ModalRecomendacaoComponent } from \"./pages/constatacao-form/modal-recomendacao/modal-recomendacao.component\";\r\nimport { QuestaoListComponent } from \"./pages/questao-list/questao-list.component\";\r\nimport { QuestaoFormComponent } from \"./pages/questao-form/questao-form.component\";\r\nimport { ModalConstatacaoComponent } from \"./pages/constatacao-form/modal-constatacao/modal-constatacao.component\";\r\nimport { ModalProcedimentoAuditoriaComponent } from \"./pages/procedimento-auditoria-form/modal-procedimento-auditoria/modal-procedimento-auditoria.component\";\r\nimport { OpaFormComponent } from \"./pages/opa/form/opa-form.component\";\r\nimport { LookupMultiselectModalComponent } from \"./shared/components/lookup-multiselect-modal/lookup-multiselect-modal.component\";\r\nimport { ModalAlocarEquipeOpaComponent } from \"./pages/opa/modal/modal-alocar-equipe/modal-alocar-equipe-opa.component\";\r\nimport { MatrizPlanejamentoListComponent } from \"./pages/matriz-planejamento-list/matriz-planejamento-list.component\";\r\nimport { MatrizPlanejamentoFormComponent } from \"./pages/matriz-planejamento-form/matriz-planejamento-form.component\";\r\nimport { MatrizPlanejamentoRelatorioComponent } from \"./pages/matriz-planejamento-relatorio/matriz-planejamento-relatorio.component\";\r\nimport { ImprimirRolResponsaveisComponent } from \"./pages/rol-responsavel-relatoria/imprimir-rol-responsaveis/imprimir-rol-responsaveis.component\";\r\nimport { RolResponsaveisFormComponent } from \"./pages/rol-responsaveis-form/rol-responsaveis-form.component\";\r\nimport { ModalIncluirResponsavelComponent } from \"./pages/rol-responsaveis-form/modal-incluir-responsaveis/modal-incluir-responsavel.component\";\r\nimport { ModalDetalharValorRiscoComponent } from \"./pages/pea-form/modal-detalhar-valor-risco/modal-detalhar-valor-risco.component\";\r\nimport { NaturezaResponsabilidadeFormComponent } from \"./pages/natureza-responsabilidade-form/natureza-responsabilidade-form.component\";\r\nimport { ModalCapituloComponent } from \"./pages/modelo-relatorio-form/modal-capitulo/modal-capitulo.component\";\r\nimport { ModalEnviarQuestionarioCriterioComponent } from \"./pages/pea-form/modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component\";\r\nimport { ModalVisualizarQuestionarioCriterioComponent } from \"./pages/pea-form/modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component\";\r\nimport { ModalVisualizarQuestionarioCriterioPaaComponent } from \"./pages/paa-elaborar/modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component\";\r\nimport { ModalAlocarEquipePlanejamentoComponent } from \"./pages/planejamento-form/modal-alocar-equipe/modal-alocar-equipe-planejamento.component\";\r\nimport { CalendarioGuard } from \"./core/guards/Calendario.guard\";\r\nimport { NaturezaResponsabilidadeGuard } from \"./core/guards/naturezaResponsabilidade.guard\";\r\nimport { PerguntaGuard } from \"./core/guards/pergunta.guard\";\r\nimport { ModeloRelatorioGuard } from \"./core/guards/modeloRelatorio.guard\";\r\nimport { SubtipoAuditoriaListComponent } from \"./pages/subtipo-auditoria-list/subtipo-auditoria-list.component\";\r\nimport { SubtipoAuditoriaFormComponent } from \"./pages/subtipo-auditoria-form/subtipo-auditoria-form.component\";\r\nimport { NaturezaResponsabilidadeListComponent } from \"./pages/natureza-responsabilidade-list/natureza-responsabilidade-list.component\";\r\nimport { MatChipsModule } from \"@angular/material/chips\";\r\nimport { MatRadioModule } from \"@angular/material/radio\";\r\nimport { ModalConfirmarInativacaoComponent } from \"./shared/components/modal-confirmar-inativacao/modal-confirmar-inativacao.component\";\r\nimport { NgSelectModule } from \"@ng-select/ng-select\";\r\nimport { PlanejamentoListComponent } from \"./pages/planejamento-list/planejamento-list.component\";\r\nimport { TecnicaAuditoriaGuard } from \"./core/guards/tecnicaAuditoria.guard\";\r\nimport { CustoRecursoGuard } from \"./core/guards/custoRecurso.guard\";\r\nimport { ProcedimentoAuditoriaGuard } from \"./core/guards/procedimentoAuditoria.guard\";\r\nimport { QuestaoGuard } from \"./core/guards/questao.guard\";\r\nimport { MatrizPlanejamentoGuard } from \"./core/guards/matrizPlanejamento.guard\";\r\nimport { RecomendacaoGuard } from \"./core/guards/recomendacao.guard\";\r\nimport { SubtipoAuditoriaGuard } from \"./core/guards/subtipoAuditoria.guard\";\r\nimport { PlanejamentoFormComponent } from \"./pages/planejamento-form/planejamento-form.component\";\r\nimport { ModalUgPlanejamentoComponent } from \"./pages/planejamento-form/modal-ug-planejamento/modal-ug-planejamento.component\";\r\nimport { OpaRelatorioComponent } from \"./pages/opa/relatorio/opa-relatorio.component\";\r\nimport { ModalImportarArquivoCriterioPaaComponent } from \"./pages/paa-elaborar/modal-importar-arquivo-criterio-paa/modal-importar-arquivo-criterio-paa.component\";\r\nimport { ModalSelecionarResponsavelComponent } from \"./pages/rol-responsaveis-form/modal-selecionar-responsavel/modal-selecionar-responsavel.component\";\r\nimport { ModalIncluirPeriodoExercicioComponent } from \"./pages/rol-responsaveis-form/modal-incluir-periodo-exercicio/modal-incluir-periodo-exercicio.component\";\r\nimport { RolResponsaveisListComponent } from \"./pages/rol-responsaveis-list/rol-responsaveis-list.component\";\r\nimport { ImprimirRolResponsavelUnidadeGestoraComponent } from \"./pages/rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/imprimir-rol-responsavel-unidade-gestora.component\";\r\nimport { ModalSelecionarUgImprimirComponent } from \"./pages/rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/modal-selecionar-ug-imprimir/modal-selecionar-ug-imprimir.component\";\r\nimport { AprovacaoListComponent } from \"./pages/aprovacao-list/aprovacao-list.component\";\r\nimport { MatIconModule } from \"@angular/material/icon\";\r\nimport { MatButtonModule } from \"@angular/material/button\";\r\nimport { ModalAvaliarComponent } from \"./pages/aprovacao-list/modal-avaliar/modal-avaliar.component\";\r\nimport { FaseAtividadeListComponent } from \"./pages/fase-atividade-list/fase-atividade-list.component\";\r\nimport { OsaComponent } from \"./pages/osa/osa.component\";\r\nimport { OsaListComponent } from \"./pages/osa/osa-list/osa-list.component\";\r\nimport { FiltroComponent } from \"./pages/osa/filtro-component/filtro-component.component\";\r\nimport { OsaFormComponent } from \"./pages/osa/osa-form/osa-form.component\";\r\nimport { OsaAbasComponent } from \"./pages/osa/osa-form/osa-abas/osa-abas.component\";\r\nimport { AbaInformacoesBasicasComponent } from \"./pages/osa/osa-form/aba-informacoes-basicas/aba-informacoes-basicas.component\";\r\nimport { FaseAtividadeFormComponent } from \"./pages/fase-atividade-form/fase-atividade-form.component\";\r\nimport { FaseAtividadeGuard } from \"./core/guards/faseAtividade.guard\";\r\nimport { AbaCronogramaComponent } from \"./shared/components/aba-cronograma/aba-cronograma.component\";\r\nimport { ModalAtividadeSubatividadeComponent } from \"./shared/components/aba-cronograma/modal-atividade-subatividade/modal-atividade-subatividade.component\";\r\nimport { OsaImprimirComponent } from \"./pages/osa/osa-imprimir/osa-imprimir.component\";\r\nimport { AbaAmostraComponent } from \"./shared/components/aba-amostra/aba-amostra.component\";\r\nimport { InserirAmostraComponent } from \"./shared/components/aba-amostra/inserir-amostra/inserir-amostra.component\";\r\nimport { ImprimirAmostraComponent } from \"./shared/components/aba-amostra/imprimir-amostra/imprimir-amostra.component\";\r\nimport { ModalRelatoriaCapituloComponent } from \"./shared/components/capitulo/modal-relatoria-capitulo/modal-relatoria-capitulo.component\";\r\nimport { CapituloComponent } from \"./shared/components/capitulo/capitulo.component\";\r\nimport { RelatoriaComponent } from \"./shared/components/relatoria/relatoria.component\";\r\nimport { ModalHistoricoRelatoriaComponent } from \"./shared/components/capitulo/modal-historico-relatoria/modal-historico-relatoria.component\";\r\nimport { ModalVisualizarHistoricoComponent } from \"./shared/components/capitulo/modal-historico-relatoria/modal-visualizar-historico/modal-visualizar-historico.component\";\r\nimport { ImprimirRelatoriaComponent } from \"./shared/components/relatoria/imprimir-relatoria/imprimir-relatoria.component\";\r\nimport { LinhaDoTempoComponent } from \"./shared/components/linha-do-tempo/linha-do-tempo.component\";\r\nimport { SanitizedHtmlPipe } from \"./shared/components/sanitized-html/sanitized-html.pipe\";\r\nimport { FaixaClassificacaoComponentComponent } from \"./shared/components/faixa-classificacao-component/faixa-classificacao-component.component\";\r\nimport { RankingPrioridadeComponent } from \"./shared/components/ranking-prioridade/ranking-prioridade.component\";\r\nimport { ModalRankingPrioridadeComponent } from \"./pages/paa-elaborar/modal-ranking-prioridade/modal-ranking-prioridade.component\";\r\nimport { LoadingInterceptor } from \"./core/http/loading.interceptor\";\r\nimport { KeyboardlockDirective } from \"./shared/directives/keyboardlock.directive\";\r\nimport { AlocarEquipeComponent } from \"./shared/components/alocar-equipe/alocar-equipe.component\";\r\nimport { AuditoriaListComponent } from \"./pages/auditoria-list/auditoria-list.component\";\r\nimport { AbaSolicitacaoTecnicaComponent } from \"./shared/components/aba-solicitacao-tecnica/aba-solicitacao-tecnica.component\";\r\nimport { IncluirSolicitacaoComponent } from \"./shared/components/aba-solicitacao-tecnica/modal-incluir-solicitacao/modal-incluir-solicitacao.component\";\r\nimport { ModalJustificativaComponent } from \"./shared/components/modal-justificativa/modal-justificativa.component\";\r\nimport { ModalIncluirItemComponent } from \"./shared/components/aba-solicitacao-tecnica/modal-incluir-item/modal-incluir-item.component\";\r\nimport { AbaMatrizPlanejamentoComponent } from \"./shared/components/aba-matriz-planejamento/aba-matriz-planejamento.component\";\r\nimport { ListagemQuestoesComponent } from \"./shared/components/aba-matriz-planejamento/listagem-questoes/listagem-questoes.component\";\r\nimport { ModalVisualizarRespostaComponent } from \"./shared/components/aba-solicitacao-tecnica/modal-visualizar-resposta/modal-visualizar-resposta.component\";\r\nimport { ModalAdicionarQuestoesComponent } from \"./shared/components/aba-matriz-planejamento/modal-adicionar-questoes/modal-adicionar-questoes.component\";\r\nimport { SolicitacaoTecnicaListComponent } from \"./pages/solicitacao-tecnica/list/solicitacao-tecnica-list.component\";\r\nimport { ModalVisualizarItemComponent } from \"./shared/components/aba-solicitacao-tecnica/modal-visualizar-item/modal-visualizar-item.component\";\r\nimport { ModalArquivoComponent } from \"./shared/components/modal-arquivo/modal-arquivo.component\";\r\nimport { ModalEditarQuestaoComponent } from \"./shared/components/aba-matriz-planejamento/modal-editar-questao/modal-editar-questao.component\";\r\nimport { SolicitacaoTecnicaFormComponent } from \"./pages/solicitacao-tecnica/solicitacao-tecnica-form/solicitacao-tecnica-form.component\";\r\nimport { ImprimirSolicitacaoComponent } from \"./shared/components/aba-solicitacao-tecnica/imprimir-solicitacao/imprimir-solicitacao.component\";\r\nimport { ModalItemSolicitacaoComponent } from \"./pages/solicitacao-tecnica/modal-item-solicitacao/modal-item-solicitacao.component\";\r\nimport { ModalIncluirUgComponent } from \"./shared/components/aba-solicitacao-tecnica/modal-incluir-ug/modal-incluir-ug.component\";\r\nimport { ModalIncluirUgComponentComponent } from \"./shared/components/unidade-gestora/modal-incluir-ug-component/modal-incluir-ug-component.component\";\r\nimport { UnidadeGestoraComponent } from \"./shared/components/unidade-gestora/unidade-gestora.component\";\r\nimport { ModalUgComponent } from \"./shared/components/aba-matriz-planejamento/modal-ug/modal-ug.component\";\r\nimport { ModalDelegarItemComponent } from \"./pages/solicitacao-tecnica/modal-delegar-item/modal-delegar-item/modal-delegar-item.component\";\r\nimport { CustosRecursosComponent } from \"./shared/components/custos-recursos/custos-recursos.component\";\r\nimport { ModalCustoRecursoPlanejamentoComponent } from \"./shared/components/custos-recursos/modal-custo-recurso-planejamento/modal-custo-recurso-planejamento.component\";\r\nimport { ImprimirComponent } from \"./pages/planejamento-form/imprimir/imprimir.component\";\r\nimport { ModalAvaliarProrrogacaoComponent } from \"./shared/components/aba-solicitacao-tecnica/modal-avaliar-prorrogacao/modal-avaliar-prorrogacao.component\";\r\nimport { MatrizPlanejamentoVisualizarComponent } from \"./pages/planejamento-form/matriz-planejamento-visualizar/matriz-planejamento-visualizar.component\";\r\nimport { TipoEnfaseListComponent } from \"./pages/tipo-enfase-list/tipo-enfase-list.component\";\r\nimport { TipoEnfaseFormComponent } from \"./pages/tipo-enfase-form/tipo-enfase-form.component\";\r\nimport { TipoEnfaseGuard } from \"./core/guards/tipoEnfase.guard\";\r\nimport { HistoricoModalComponent } from \"./shared/components/historico-modal/historico-modal.component\";\r\nimport { GroupByPipe } from \"./shared/pipes/groupby-pipe\";\r\nimport { ModalEnviarQuestionarioCriterioPaaComponent } from \"./pages/paa-elaborar/modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component\";\r\nimport { MenuItemComponent } from \"./shared/layout/menuitem/menuitem.component\";\r\nimport { AgentePublicoListComponent } from \"./pages/agente-publico-list/agente-publico-list.component\";\r\nimport { AgentePublicoFormComponent } from \"./pages/agente-publico-form/agente-publico-form.component\";\r\nimport { AgentePublicoAbaDadosBasicosComponent } from \"./pages/agente-publico-form/aba-dados-basicos/aba-dados-basicos.component\";\r\nimport { AgentePublicoAbaDisponibilidadeComponent } from \"./pages/agente-publico-form/aba-disponibilidade/aba-disponibilidade.component\";\r\nimport { AgentePublicoAbaDispensasComponent } from \"./pages/agente-publico-form/aba-dispensas/aba-dispensas.component\";\r\nimport { ModalAdicionarDispensaComponent } from \"./pages/agente-publico-form/aba-dispensas/modal-adicionar-dispensa/modal-adicionar-dispensa.component\";\r\nimport { ModalCoordenacaoTipoTrabalhoComponent } from \"./pages/coordenacao-form/modal-tipo-trabalho/modal-tipo-trabalho.component\";\r\nimport { PaaGuard } from \"./core/guards/paa.guard\";\r\nimport { PaaAbaIndicesCriteriosComponent } from \"./pages/paa-elaborar/aba-indices-criterios/paa-aba-indices-criterios.component\";\r\nimport { PaaAbaDadosBasicosComponent } from \"./pages/paa-elaborar/aba-dados/paa-aba-dados-basicos.component\";\r\nimport { PaaAbaCapacidadeComponent } from \"./pages/paa-elaborar/aba-capacidade/paa-aba-capacidade.component\";\r\nimport { PaaAbaDistribuicaoComponent } from \"./pages/paa-elaborar/aba-distribuicao/paa-aba-distribuicao.component\";\r\nimport { ModalCapacidadePaaComponent } from \"./pages/paa-elaborar/aba-capacidade/modal-capacidade/modal-capacidade-paa.component\";\r\nimport { PaaAbaAlocacaoComponent } from \"./pages/paa-elaborar/aba-alocacao/paa-aba-alocacao.component\";\r\nimport { CategoriaRiscoListComponent } from \"./pages/categoria-risco-list/categoria-risco-list.component\";\r\nimport { CategoriaRiscoFormComponent } from \"./pages/categoria-risco-form/categoria-risco-form.component\";\r\nimport { CategoriaRiscoGuard } from \"./core/guards/categoriaRisco.guard\";\r\nimport { ModeloQuestionarioListComponent } from \"./pages/modelo-questionario-list/modelo-questionario-list.component\";\r\nimport { ModeloQuestionarioFormComponent } from \"./pages/modelo-questionario-form/modelo-questionario-form.component\";\r\nimport { ModalModeloQuestionarioSecaoComponent } from \"./pages/modelo-questionario-form/modal-secao/modal-secao.component\";\r\nimport { ModalModeloQuestionarioPerguntaComponent } from \"./pages/modelo-questionario-form/modal-pergunta/modal-pergunta.component\";\r\nimport { AbaDadosComponent } from \"./pages/unidade-gestora-form/aba-dados/aba-dados.component\";\r\nimport { AbaEntendendoEntidadeComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/aba-entendendo-entidade.component\";\r\nimport { GerarQuestionarioComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/gerar-questionario/gerar-questionario.component\";\r\nimport { ModalSelecaoQuestionarioComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/modal-selecao-questionario/modal-selecao-questionario.component\";\r\nimport { EditarEntendendoEntidadeComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/editar-entendendo-entidade/editar-entendendo-entidade.component\";\r\nimport { ModalQuestionarioUGPerguntaComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/editar-entendendo-entidade/modal-pergunta/modal-pergunta.component\";\r\nimport { ModalQuestionarioUGSecaoComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/editar-entendendo-entidade/modal-secao/modal-secao.component\";\r\nimport { ModalQuestionarioNovaVersaoComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/modal-questionario-nova-versao/modal-questionario-nova-versao.component\";\r\nimport { ModalQuestionarioImportaDadosComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/modal-questionario-importa-dados/modal-questionario-importa-dados.component\";\r\nimport { VisualizarEntendendoEntidadeComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/visualizar-entendendo-entidade/visualizar-entendendo-entidade.component\";\r\nimport { ImprimirEntendendoEntidadeComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/imprimir-entendendo-entidade/imprimir-entendendo-entidade.component\";\r\nimport { ModalSolicitarPreenchimentoComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component\";\r\nimport { ImportacaoArquivoQuestionarioComponent } from \"./pages/unidade-gestora-form/aba-entendendo-entidade/importacao-arquivo-questionario/importacao-arquivo-questionario.component\";\r\nimport { RiscosFormComponent } from \"./pages/riscos-form/riscos-form.component\";\r\nimport { RiscosListComponent } from \"./pages/riscos-list/riscos-list.component\";\r\nimport { RiscosGuard } from \"./core/guards/riscos.guard\";\r\nimport { PrePlanejamentoListComponent } from './pages/pre-planejamento-list/pre-planejamento-list.component';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { PrePlanejamentoRespostaFormComponent } from './pages/pre-planejamento-resposta-form/pre-planejamento-resposta-form.component';\r\n\r\n\r\nimport { ModalMetricaPerguntaComponent } from \"./pages/pergunta-form/modal-metrica-pergunta/modal-metrica-pergunta.component\";\r\nimport { MatAutocompleteModule } from \"@angular/material/autocomplete\";\r\nimport { ModalDelegarComponent } from './pages/pre-planejamento-resposta-form/modal-delegar/modal-delegar.component';\r\nimport { AbaMaturidadeRiscoComponent } from \"./pages/unidade-gestora-form/aba-maturidade-risco/aba-maturidade-risco.component\";\r\nimport { GerarQuestionarioSharedComponent } from \"./pages/unidade-gestora-form/shared/gerar-questionario/gerar-questionario.component\";\r\nimport { ModalQuestionarioImportaDadosSharedComponent } from \"./pages/unidade-gestora-form/shared/modal-questionario-importa-dados/modal-questionario-importa-dados.component\";\r\nimport { ModalQuestionarioNovaVersaoSharedComponent } from \"./pages/unidade-gestora-form/shared/modal-questionario-nova-versao/modal-questionario-nova-versao.component\";\r\nimport { ModalSelecaoQuestionarioSharedComponent } from \"./pages/unidade-gestora-form/shared/modal-selecao-questionario/modal-selecao-questionario.component\";\r\nimport { ModalSolicitarPreenchimentoSharedComponent } from \"./pages/unidade-gestora-form/shared/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component\";\r\nimport { EditarQuestionarioModalSecaoComponent } from \"./pages/unidade-gestora-form/shared/editar-questionario/modal-secao/modal-secao.component\";\r\nimport { EditarQuestionarioModalPerguntaComponent } from \"./pages/unidade-gestora-form/shared/editar-questionario/modal-pergunta/modal-pergunta.component\";\r\nimport { EditarQuestionarioComponent } from \"./pages/unidade-gestora-form/shared/editar-questionario/editar-questionario.component\";\r\nimport { VisualizarQuestionarioComponent } from \"./pages/unidade-gestora-form/shared/visualizar-questionario/visualizar-questionario.component\";\r\nimport { ImportacaoArquivoQuestionarioSharedComponent } from \"./pages/unidade-gestora-form/shared/importacao-arquivo-questionario/importacao-arquivo-questionario.component\";\r\nimport { ImprimirQuestionarioComponent } from \"./pages/unidade-gestora-form/shared/imprimir-questionario/imprimir-questionario.component\";\r\nimport { ModalContestarComponent } from './pages/pre-planejamento-resposta-form/modal-contestar/modal-contestar.component';\r\nimport { ModalConcordarComponent } from './pages/pre-planejamento-resposta-form/modal-concordar/modal-concordar.component';\r\nimport { AvaliarQuestionarioComponent } from './pages/unidade-gestora-form/shared/avaliar-questionario/avaliar-questionario.component';\r\nimport { ModalAvaliarQuestionarioComponent } from './pages/unidade-gestora-form/shared/modal-avaliar-questionario/modal-avaliar-questionario.component';\r\nimport { ModalConfirmaCancelarComponent } from './shared/components/modal-confirma-cancelar/modal-confirma-cancelar.component';\r\nimport { ModalAlterarTipoAuditoriaComponent } from './pages/paa-elaborar/modal-alterar-tipo-auditoria/modal-alterar-tipo-auditoria.component';\r\nimport { ModalDescricaoDiasUteisComponent } from \"./pages/pea-form/modal-descricao-dias-uteis/modal-descricao-dias-uteis.component\";\r\nimport { ModalAlterarTipoEnfaseComponent } from \"./pages/paa-elaborar/modal-alterar-tipo-enfase/modal-alterar-tipo-enfase.component\";\r\nimport { VisualizarMaturidadeDeRiscoComponent } from \"./pages/unidade-gestora-form/aba-maturidade-risco/visualizar-maturidade-de-risco/visualizar-maturidade-de-risco.component\";\r\nimport { VisualizarRelatoriaComponent } from \"./shared/components/relatoria/visualizar-relatoria/visualizar-relatoria.component\";\r\nimport { imprimirLinhaDoTempoComponent } from \"./shared/components/relatoria/imprimir-linha-do-tempo/imprimir-linha-do-tempo.component\";\r\n\r\nimport { TipoUniversoListComponent } from \"./pages/tipo-universo-list/tipo-universo-list.component\";\r\nimport { TipoUniversoFormComponent } from \"./pages/tipo-universo-form/tipo-universo-form.component\";\r\nimport { ModalTipoUniversoItemComponent } from \"./pages/tipo-universo-form/modal-tipo-universo-item/modal-tipo-universo-item.component\";\r\nimport { ModalTipoUniversoItemDescricaoComponent } from \"./pages/tipo-universo-form/modal-tipo-universo-item/modal-tipo-universo-item-descricao/modal-tipo-universo-item-descricao.component\";\r\nimport { CriteriosAvaliacaoListComponent } from './pages/criterios-avaliacao-list/criterios-avaliacao-list.component';\r\nimport { CriteriosAvaliacaoFormComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form.component';\r\nimport { CriteriosAvaliacaoFormDadosComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-dados/criterios-avaliacao-form-dados.component';\r\nimport { CriteriosAvaliacaoFormRiscoInerenteComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/criterios-avaliacao-form-risco-inerente.component';\r\nimport { CriteriosAvaliacaoFormControlesComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-controles/criterios-avaliacao-form-controles.component';\r\nimport { CriteriosAvaliacaoFormNiveisRiscoResidualComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-niveis-risco-residual/criterios-avaliacao-form-niveis-risco-residual.component';\r\nimport { ModalEscalasComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-escalas/modal-escalas.component';\r\nimport { ModalControleComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-controles/modal-controle/modal-controle.component';\r\nimport { ModalRiscoInerenteComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-risco-inerente/modal-risco-inerente.component';\r\nimport { ModalRiscoResidualComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-niveis-risco-residual/modal-risco-residual/modal-risco-residual.component';\r\nimport { ModalFormulaRiscoInerenteComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-formula-risco-inerente/modal-formula-risco-inerente.component';\r\nimport { FormulaRiscoResidualComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-niveis-risco-residual/formula-risco-residual/formula-risco-residual.component';\r\nimport { FormMagnitudeEscalaComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-escalas/form-magnitude-escala/form-magnitude-escala.component';\r\nimport { GridMagnitudeEscalaComponent } from './pages/criterios-avaliacao-form/criterios-avaliacao-form-risco-inerente/modal-escalas/grid-magnitude-escala/grid-magnitude-escala.component';\r\nimport { PrintLayoutComponent } from './shared/components/print-layout/print-layout.component';\r\nimport { PdfExportComponent } from \"./shared/components/pdf-export/pdf-export.component\";\r\nimport {\r\n AbaUniversoAuditavelComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/aba-univserso-auditavel.component\";\r\nimport {\r\n ModalSelecaoTipoUniversoComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/modal-selecao-tipo-universo/modal-selecao-tipo-universo.component\";\r\nimport {\r\n GerarUniversoAuditavelComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/gerar-universo-auditavel/gerar-universo-auditavel.component\";\r\nimport {\r\n ModalUniversoAuditavelNovaVersaoComponent\r\n} from \"./pages/unidade-gestora-form/shared/modal-universo-auditavel-nova-versao/modal-universo-auditavel-nova-versao.component\";\r\nimport {\r\n ModalUniversoAuditavelImportaDadosComponent\r\n} from \"./pages/unidade-gestora-form/shared/modal-universo-auditavel-importa-dados/modal-universo-auditavel-importa-dados.component\";\r\nimport {\r\n ModalSolicitarPreenchimentoUniversoComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component\";\r\nimport {\r\n UniversoAuditavelFormComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/universo-auditavel-form/universo-auditavel-form.component\";\r\nimport {\r\n ImportarArquivoUniversoAuditavelComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/importar-arquivo-universo-auditavel/importar-arquivo-universo-auditavel.component\";\r\nimport {\r\n ModalUniversoAuditavelImportacaoComponent\r\n} from \"./pages/unidade-gestora-form/shared/modal-universo-auditavel-importacao/modal-universo-auditavel-importacao.component\";\r\nimport {\r\n UniversoAuditavelPreechimentoFormComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/universo-auditavel-preechimento-form/universo-auditavel-preechimento-form.component\";\r\nimport {\r\n VisualizarUniversoAuditavelComponent\r\n} from \"./pages/unidade-gestora-form/aba-universo-auditavel/visualizar-universo-auditavel/visualizar-universo-auditavel.component\";\r\n\r\nimport { AbaRiscosChavesComponent\r\n } from \"./pages/unidade-gestora-form/aba-riscos-chaves/aba-riscos-chaves.component\";\r\nimport { GerarComponent } from './pages/unidade-gestora-form/aba-riscos-chaves/gerar/gerar.component';\r\nimport { RiscosChavesFormComponent } from './pages/unidade-gestora-form/aba-riscos-chaves/riscos-chaves-form/riscos-chaves-form.component';\r\nimport { ModalSelecaoUniversoAuditavelComponent } from \"./pages/unidade-gestora-form/aba-riscos-chaves/modal-selecao-universo-auditavel/modal-selecao-universo-auditavel.component\";\r\nimport { PreenchimentoRiscosCriteriosComponent } from './pages/unidade-gestora-form/aba-riscos-chaves/preenchimento-riscos-criterios/preenchimento-riscos-criterios.component';\r\nimport { ModalSelecaoCriterioAvaliacaoComponent } from './pages/unidade-gestora-form/aba-riscos-chaves/modal-selecao-criterio-avaliacao/modal-selecao-criterio-avaliacao.component';\r\nimport { ModalSelecaoRiscoComponent } from './pages/unidade-gestora-form/aba-riscos-chaves/modal-selecao-risco/modal-selecao-risco.component';\r\nimport {\r\n ModalSolicitarPreenchimentoRiscosChavesComponent\r\n} from \"./pages/unidade-gestora-form/aba-riscos-chaves/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component\";\r\nimport {\r\n ModalRiscosChavesImportacaoComponent\r\n} from \"./pages/unidade-gestora-form/shared/modal-riscos-chaves-importacao/modal-riscos-chaves-importacao.component\";\r\nimport {\r\n ImportarArquivoRiscosChavesComponent\r\n} from \"./pages/unidade-gestora-form/aba-riscos-chaves/importar-arquivo-riscos-chaves/importar-arquivo-risco-chaves.component\";\r\n\r\n\r\n\r\ndefineLocale(\"pt-br\", ptBrLocale);\r\n\r\nregisterLocaleData(ptBr);\r\n\r\n@NgModule({\r\n\tdeclarations: [\r\n\t\tAppComponent,\r\n\t\tInicialComponent,\r\n\t\tPeriodoListComponent,\r\n\t\tPeriodoFormComponent,\r\n\t\tTipoCriterioListComponent,\r\n\t\tTipoCriterioFormComponent,\r\n\t\tNaturezaResponsabilidadeListComponent,\r\n\t\tMainComponent,\r\n\t\tHeaderComponent,\r\n\t\tFooterComponent,\r\n\t\tSidebarComponent,\r\n\t\tAppButtonComponent,\r\n\t\tUserDropdownMenuComponent,\r\n\t\tBaseFormComponent,\r\n\t\tBaseListComponent,\r\n\t\tErroComponent,\r\n\t\tPerguntaFormComponent,\r\n\t\tPerguntaListComponent,\r\n\t\tCriterioListComponent,\r\n\t\tCriterioFormComponent,\r\n\t\tLookupModalComponent,\r\n\t\tLookupMultiselectModalComponent,\r\n\t\tIndicadorListComponent,\r\n\t\tIndicadorFormComponent,\r\n\t\tRolResponsaveisListComponent,\r\n\t\tRolResponsaveisFormComponent,\r\n\t\tTipoDispensaListComponent,\r\n\t\tTipoDispensaFormComponent,\r\n\t\tFaixaClassificacaoFormComponent,\r\n\t\tCoordenacaoListComponent,\r\n\t\tCoordenacaoFormComponent,\r\n\t\tCalendarioListComponent,\r\n\t\tCalendarioFormComponent,\r\n\t\tTipoAuditoriaListComponent,\r\n\t\tTipoAuditoriaFormComponent,\r\n\t\tCapituloRelatorioListComponent,\r\n\t\tCapituloRelatorioFormComponent,\r\n\t\tParametrizacaoDocumentoEdocsFormComponent,\r\n\t\tModeloRelatorioListComponent,\r\n\t\tModeloRelatorioFormComponent,\r\n\t\tPeaListComponent,\r\n\t\tPeaFormComponent,\r\n\t\tUnidadeGestoraListComponent,\r\n\t\tUnidadeGestoraFormComponent,\r\n\t\tQuestionarioListComponent,\r\n\t\tQuestionarioFormComponent,\r\n\t\tFluxoAprovacaoListComponent,\r\n\t\tFluxoAprovacaoFormComponent,\r\n\t\tModalImportacaoComponent,\r\n\t\tModalSelecionarUgComponent,\r\n\t\tModalSelecionarCoordenacoesComponent,\r\n\t\tModalImportarArquivoCriterioComponent,\r\n\t\tModalPreencherFormularioComponent,\r\n\t\tModalCapacidadeComponent,\r\n\t\tPeaRelatorioComponent,\r\n\t\tModalVisualizarRespostasComponent,\r\n\t\tModalAssociarComponent,\r\n\t\tModalMetricaNumericoComponent,\r\n\t\tModalMetricaOpcoesComponent,\r\n\t\tParametrizacaoListComponent,\r\n\t\tModalParametrizacaoFormComponent,\r\n\t\tPaaListComponent,\r\n\t\tPaaElaborarComponent,\r\n\t\tModalCapacidadeDispensaComponent,\r\n\t\tModalAlocarEquipeComponent,\r\n\t\tModalSelecionarUGComponent,\r\n\t\tModalSelecionarColunasComponent,\r\n\t\tModalCadastrarCriterioComponent,\r\n\t\tModalCadastrarIndicadorComponent,\r\n\t\tModalConfirmarInativacaoComponent,\r\n\t\tModalConfirmarReativacaoDistribuicaoComponent,\r\n\t\tPendenciaListComponent,\r\n\t\tModalGraficoDistribuicaoComponent,\r\n\t\tModalConfirmarRejeitarComponent,\r\n\t\tOpaListComponent,\r\n\t\tPaaRelatorioComponent,\r\n\t\tModalPreencherFormularioPaaComponent,\r\n\t\tOpaListComponent,\r\n\t\tOpaFormComponent,\r\n\t\tModalDelegarQuestionarioComponent,\r\n\t\tModalAutuacaoComponent,\r\n\t\tModalEntranharComponent,\r\n\t\tTecnicaAuditoriaListComponent,\r\n\t\tTecnicaAuditoriaFormComponent,\r\n\t\tLogListComponent,\r\n\t\tLogFormComponent,\r\n\t\tCustoRecursoListComponent,\r\n\t\tCustoRecursoFormComponent,\r\n\t\tProcedimentoAuditoriaListComponent,\r\n\t\tProcedimentoAuditoriaFormComponent,\r\n\t\tRecomendacaoListComponent,\r\n\t\tRecomendacaoFormComponent,\r\n\t\tConstatacaoListComponent,\r\n\t\tConstatacaoFormComponent,\r\n\t\tModalRecomendacaoComponent,\r\n\t\tQuestaoListComponent,\r\n\t\tQuestaoFormComponent,\r\n\t\tModalConstatacaoComponent,\r\n\t\tModalProcedimentoAuditoriaComponent,\r\n\t\tModalAlocarEquipeOpaComponent,\r\n\t\tMatrizPlanejamentoListComponent,\r\n\t\tMatrizPlanejamentoFormComponent,\r\n\t\tMatrizPlanejamentoRelatorioComponent,\r\n\t\tModalCapituloComponent,\r\n\t\tAprovacaoListComponent,\r\n\t\tModalAvaliarComponent,\r\n\t\tModalDetalharValorRiscoComponent,\r\n\t\tNaturezaResponsabilidadeFormComponent,\r\n\t\tModalCapituloComponent,\r\n\t\tModalEnviarQuestionarioCriterioComponent,\r\n\t\tModalVisualizarQuestionarioCriterioComponent,\r\n\t\tModalVisualizarQuestionarioCriterioPaaComponent,\r\n\t\tSubtipoAuditoriaListComponent,\r\n\t\tSubtipoAuditoriaFormComponent,\r\n\t\tPlanejamentoListComponent,\r\n\t\tPlanejamentoFormComponent,\r\n\t\tModalAlocarEquipePlanejamentoComponent,\r\n\t\tModalUgPlanejamentoComponent,\r\n\t\tOpaRelatorioComponent,\r\n\t\tModalCancelarComponent,\r\n\t\tModalImportarArquivoCriterioPaaComponent,\r\n\t\tModalCustoRecursoPlanejamentoComponent,\r\n\t\tModalIncluirResponsavelComponent,\r\n\t\tModalSelecionarResponsavelComponent,\r\n\t\tModalIncluirPeriodoExercicioComponent,\r\n\t\tImprimirRolResponsaveisComponent,\r\n\t\tImprimirRolResponsavelUnidadeGestoraComponent,\r\n\t\tModalSelecionarUgImprimirComponent,\r\n\t\tFaseAtividadeListComponent,\r\n\t\tOsaComponent,\r\n\t\tOsaListComponent,\r\n\t\tFiltroComponent,\r\n\t\tOsaFormComponent,\r\n\t\tOsaAbasComponent,\r\n\t\tAbaInformacoesBasicasComponent,\r\n\t\tFaseAtividadeFormComponent,\r\n\t\tAbaCronogramaComponent,\r\n\t\tModalAtividadeSubatividadeComponent,\r\n\t\tOsaImprimirComponent,\r\n\t\tAbaAmostraComponent,\r\n\t\tInserirAmostraComponent,\r\n\t\tImprimirAmostraComponent,\r\n\t\tModalRelatoriaCapituloComponent,\r\n\t\tModalHistoricoRelatoriaComponent,\r\n\t\tCapituloComponent,\r\n\t\tRelatoriaComponent,\r\n\t\tImprimirRelatoriaComponent,\r\n\t\tLinhaDoTempoComponent,\r\n\t\tSanitizedHtmlPipe,\r\n\t\tFaixaClassificacaoComponentComponent,\r\n\t\tRankingPrioridadeComponent,\r\n\t\tModalRankingPrioridadeComponent,\r\n\t\tKeyboardlockDirective,\r\n\t\tAlocarEquipeComponent,\r\n\t\tAuditoriaListComponent,\r\n\t\tAbaSolicitacaoTecnicaComponent,\r\n\t\tIncluirSolicitacaoComponent,\r\n\t\tModalJustificativaComponent,\r\n\t\tModalIncluirItemComponent,\r\n\t\tModalVisualizarRespostaComponent,\r\n\t\tAbaMatrizPlanejamentoComponent,\r\n\t\tListagemQuestoesComponent,\r\n\t\tModalAdicionarQuestoesComponent,\r\n\t\tSolicitacaoTecnicaListComponent,\r\n\t\tModalVisualizarItemComponent,\r\n\t\tModalArquivoComponent,\r\n\t\tModalEditarQuestaoComponent,\r\n\t\tImprimirSolicitacaoComponent,\r\n\t\tModalItemSolicitacaoComponent,\r\n\t\tModalIncluirUgComponent,\r\n\t\tUnidadeGestoraComponent,\r\n\t\tModalIncluirUgComponentComponent,\r\n\t\tSolicitacaoTecnicaFormComponent,\r\n\t\tModalUgComponent,\r\n\t\tModalDelegarItemComponent,\r\n\t\tCustosRecursosComponent,\r\n\t\tImprimirComponent,\r\n\t\tModalAvaliarProrrogacaoComponent,\r\n\t\tMatrizPlanejamentoVisualizarComponent,\r\n\t\tTipoEnfaseListComponent,\r\n\t\tTipoEnfaseFormComponent,\r\n\t\tGroupByPipe,\r\n\t\tModalEnviarQuestionarioCriterioPaaComponent,\r\n\t\tHistoricoModalComponent,\r\n\t\tMenuItemComponent,\r\n\t\tAgentePublicoListComponent,\r\n\t\tAgentePublicoFormComponent,\r\n\t\tAgentePublicoAbaDadosBasicosComponent,\r\n\t\tAgentePublicoAbaDisponibilidadeComponent,\r\n\t\tAgentePublicoAbaDispensasComponent,\r\n\t\tModalAdicionarDispensaComponent,\r\n\t\tModalCoordenacaoTipoTrabalhoComponent,\r\n\t\tPaaAbaIndicesCriteriosComponent,\r\n\t\tPaaAbaDadosBasicosComponent,\r\n\t\tPaaAbaCapacidadeComponent,\r\n\t\tPaaAbaDistribuicaoComponent,\r\n\t\tModalCapacidadePaaComponent,\r\n\t\tPaaAbaAlocacaoComponent,\r\n\t\tCategoriaRiscoListComponent,\r\n\t\tCategoriaRiscoFormComponent,\r\n\t\tModeloQuestionarioListComponent,\r\n\t\tModeloQuestionarioFormComponent,\r\n\t\tModalModeloQuestionarioSecaoComponent,\r\n\t\tModalModeloQuestionarioPerguntaComponent,\r\n\t\tAbaDadosComponent,\r\n\t\tAbaEntendendoEntidadeComponent,\r\n\t\tGerarQuestionarioComponent,\r\n\t\tModalSelecaoQuestionarioComponent,\r\n\t\tEditarEntendendoEntidadeComponent,\r\n\t\tModalQuestionarioUGPerguntaComponent,\r\n\t\tModalQuestionarioUGSecaoComponent,\r\n\t\tModalQuestionarioNovaVersaoComponent,\r\n\t\tModalQuestionarioImportaDadosComponent,\r\n\t\tVisualizarEntendendoEntidadeComponent,\r\n\t\tImprimirEntendendoEntidadeComponent,\r\n\t\tModalSolicitarPreenchimentoComponent,\r\n\t\tImportacaoArquivoQuestionarioComponent,\r\n\t\tRiscosFormComponent,\r\n\t\tRiscosListComponent,\r\n\t\tModalMetricaPerguntaComponent,\r\n\t\tModalExcluirMetricaComponent,\r\n\t\tPrePlanejamentoListComponent,\r\n PrePlanejamentoRespostaFormComponent,\r\n ModalDelegarComponent,\r\n\t\tAbaMaturidadeRiscoComponent,\r\n\t\tGerarQuestionarioSharedComponent,\r\n\t\tModalQuestionarioImportaDadosSharedComponent,\r\n\t\tModalQuestionarioNovaVersaoSharedComponent,\r\n\t\tModalSelecaoQuestionarioSharedComponent,\r\n\t\tModalSolicitarPreenchimentoSharedComponent,\r\n\t\tEditarQuestionarioModalPerguntaComponent,\r\n\t\tEditarQuestionarioModalSecaoComponent,\r\n\t\tEditarQuestionarioComponent,\r\n\t\tVisualizarQuestionarioComponent,\r\n\t\tImportacaoArquivoQuestionarioSharedComponent,\r\n\t\tImprimirQuestionarioComponent,\r\n\t\tModalContestarComponent,\r\n\t\tModalConcordarComponent,\r\n\t\tAvaliarQuestionarioComponent,\r\n\t\tModalAvaliarQuestionarioComponent,\r\n\t\tModalConfirmaCancelarComponent,\r\n\t\tModalAlterarTipoAuditoriaComponent,\r\n\t\tModalDescricaoDiasUteisComponent,\r\n\t\tVisualizarRelatoriaComponent,\r\n\t\timprimirLinhaDoTempoComponent,\r\n\t\tTipoUniversoListComponent,\r\n\t\tTipoUniversoFormComponent,\r\n\t\tModalTipoUniversoItemComponent,\r\n\t\tModalTipoUniversoItemDescricaoComponent,\r\n\t\tModalAlterarTipoEnfaseComponent,\r\n\t\tVisualizarMaturidadeDeRiscoComponent,\r\n AbaUniversoAuditavelComponent,\r\n ModalSelecaoTipoUniversoComponent,\r\n GerarUniversoAuditavelComponent,\r\n ModalUniversoAuditavelNovaVersaoComponent,\r\n ModalUniversoAuditavelImportaDadosComponent,\r\n ModalSolicitarPreenchimentoUniversoComponent,\r\n UniversoAuditavelFormComponent,\r\n ImportarArquivoUniversoAuditavelComponent,\r\n ModalUniversoAuditavelImportacaoComponent,\r\n UniversoAuditavelPreechimentoFormComponent,\r\n VisualizarUniversoAuditavelComponent,\r\n\t\tVisualizarMaturidadeDeRiscoComponent,\r\n\t\tCriteriosAvaliacaoListComponent,\r\n\t\tCriteriosAvaliacaoFormComponent,\r\n\t\tCriteriosAvaliacaoFormDadosComponent,\r\n\t\tCriteriosAvaliacaoFormRiscoInerenteComponent,\r\n\t\tCriteriosAvaliacaoFormControlesComponent,\r\n\t\tCriteriosAvaliacaoFormNiveisRiscoResidualComponent,\r\n\t\tModalEscalasComponent,\r\n\t\tModalControleComponent,\r\n\t\tModalRiscoInerenteComponent,\r\n\t\tModalRiscoResidualComponent,\r\n\t\tModalFormulaRiscoInerenteComponent,\r\n\t\tFormulaRiscoResidualComponent,\r\n\t\tFormMagnitudeEscalaComponent,\r\n\t\tGridMagnitudeEscalaComponent,\r\n\t\tPrintLayoutComponent,\r\n\t\tPdfExportComponent,\r\n\t\tAbaRiscosChavesComponent,\r\n\t\tGerarComponent,\r\n\t\tRiscosChavesFormComponent,\r\n\t\tModalSelecaoUniversoAuditavelComponent,\r\n\t\tPreenchimentoRiscosCriteriosComponent,\r\n\t\tModalSelecaoCriterioAvaliacaoComponent,\r\n\t\tModalSelecaoRiscoComponent,\r\n ModalSolicitarPreenchimentoRiscosChavesComponent,\r\n ModalRiscosChavesImportacaoComponent,\r\n ImportarArquivoRiscosChavesComponent\r\n\r\n\r\n\r\n\t],\r\n\timports: [\r\n\t\tBrowserModule,\r\n\t\tCommonModule,\r\n\t\tAppRoutingModule,\r\n\t\tReactiveFormsModule,\r\n\t\tFormsModule,\r\n\t\tBrowserAnimationsModule,\r\n\t\tToastrModule.forRoot({\r\n\t\t\ttimeOut: 5000,\r\n\t\t\tpositionClass: \"toast-top-right\",\r\n\t\t\tpreventDuplicates: true,\r\n\t\t\tenableHtml: true,\r\n\t\t}),\r\n\t\tNgbModule,\r\n\t\tRouterModule,\r\n\t\tConfirmationPopoverModule.forRoot({\r\n\t\t\tappendToBody: true,\r\n\t\t\tconfirmButtonType: \"danger\",\r\n\t\t}),\r\n\t\tBsDatepickerModule.forRoot(),\r\n\t\tMatTableModule,\r\n\t\tCdkTableModule,\r\n\t\tMatPaginatorModule,\r\n\t\tMatSortModule,\r\n\t\tMatCardModule,\r\n\t\tMatToolbarModule,\r\n\t\tNgxSpinnerModule,\r\n\t\tHttpClientModule,\r\n\t\tMatCheckboxModule,\r\n\t\tLoadingBarHttpClientModule,\r\n\t\tLoadingBarRouterModule,\r\n\t\tMatDialogModule,\r\n\t\tDragDropModule,\r\n\t\tModalModule.forRoot(),\r\n\t\tMatTabsModule,\r\n\t\tMatSelectModule,\r\n\t\tMatTooltipModule,\r\n\t\tAngularEditorModule,\r\n\t\tMatRadioModule,\r\n\t\tMatChipsModule,\r\n\t\tNgSelectModule,\r\n\t\tMatButtonModule,\r\n\t\tMatIconModule,\r\n\t\tMatInputModule,\r\n\t\tMatFormFieldModule,\r\n\t\tMatGridListModule,\r\n\t\tMatAutocompleteModule,\r\n\t],\r\n\tproviders: [\r\n\t\t{ provide: LOCALE_ID, useValue: \"pt\" },\r\n\t\t{ provide: DEFAULT_CURRENCY_CODE, useValue: \"BRL\" },\r\n\t\t{ provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true },\r\n\t\t{\r\n\t\t\tprovide: HTTP_INTERCEPTORS,\r\n\t\t\tuseClass: LoadingInterceptor,\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{ provide: MatPaginatorIntl, useValue: getPtBrPaginatorIntl() },\r\n\t\t{ provide: MAT_DIALOG_DATA, useValue: {} },\r\n\t\t{ provide: MatDialogRef, useValue: {} },\r\n\t\tAuthService,\r\n\t\tPeaGuard,\r\n\t\tQuestionarioGuard,\r\n\t\tTipoCriterioGuard,\r\n\t\tCriterioGuard,\r\n\t\tIndicadorGuard,\r\n\t\tPeriodoGuard,\r\n\t\tTipoAuditoriaGuard,\r\n\t\tUnidadeGestoraGuard,\r\n\t\tTipoDispensaGuard,\r\n\t\tCoordenacaoGuard,\r\n\t\tModeloRelatorioGuard,\r\n\t\tPerguntaGuard,\r\n\t\tNaturezaResponsabilidadeGuard,\r\n\t\tCalendarioGuard,\r\n\t\tTecnicaAuditoriaGuard,\r\n\t\tCustoRecursoGuard,\r\n\t\tProcedimentoAuditoriaGuard,\r\n\t\tQuestaoGuard,\r\n\t\tMatrizPlanejamentoGuard,\r\n\t\tRecomendacaoGuard,\r\n\t\tSubtipoAuditoriaGuard,\r\n\t\tFaseAtividadeGuard,\r\n\t\tImprimirRelatoriaComponent,\r\n\t\tTipoEnfaseGuard,\r\n\t\tPaaGuard,\r\n\t\tCategoriaRiscoGuard,\r\n\t\tRiscosGuard,\r\n\t],\r\n\tentryComponents: [\r\n\t\tLookupModalComponent,\r\n\t\tLookupMultiselectModalComponent,\r\n\t\tModalImportacaoComponent,\r\n\t\tModalSelecionarUgComponent,\r\n\t\tModalSelecionarUgImprimirComponent,\r\n\t\tModalSelecionarCoordenacoesComponent,\r\n\t\tModalImportarArquivoCriterioComponent,\r\n\t\tModalEnviarQuestionarioCriterioComponent,\r\n\t\tModalVisualizarQuestionarioCriterioComponent,\r\n\t\tModalVisualizarQuestionarioCriterioPaaComponent,\r\n\t\tModalPreencherFormularioComponent,\r\n\t\tModalCapacidadeComponent,\r\n\t\tModalVisualizarRespostasComponent,\r\n\t\tModalAssociarComponent,\r\n\t\tModalMetricaNumericoComponent,\r\n\t\tModalMetricaOpcoesComponent,\r\n\t\tModalParametrizacaoFormComponent,\r\n\t\tModalPreencherFormularioPaaComponent,\r\n\t\tModalCancelarComponent,\r\n\t\tModalDelegarQuestionarioComponent,\r\n\t\tModalAutuacaoComponent,\r\n\t\tModalEntranharComponent,\r\n\t\tModalAlocarEquipeOpaComponent,\r\n\t\tModalAutuacaoComponent,\r\n\t\tModalEntranharComponent,\r\n\t\tModalVisualizarHistoricoComponent,\r\n\t\tImprimirRelatoriaComponent,\r\n\t\tModalEnviarQuestionarioCriterioPaaComponent,\r\n\t],\r\n\tbootstrap: [AppComponent],\r\n})\r\nexport class AppModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { CalendarioFormComponent } from 'src/app/pages/calendario-form/calendario-form.component';\r\n\r\n@Injectable()\r\nexport class CalendarioGuard\r\n implements CanDeactivate {\r\n canDeactivate(\r\n component: CalendarioFormComponent\r\n ): Observable | boolean {\r\n if (!component.visualizar) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n }\r\n else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { IndicadorFormComponent } from 'src/app/pages/indicador-form/indicador-form.component';\r\n\r\n@Injectable()\r\nexport class IndicadorGuard implements CanDeactivate {\r\n canDeactivate(component: IndicadorFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, CanActivateChild, Router, RouterStateSnapshot } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthGuard implements CanActivate, CanActivateChild {\r\n\r\n constructor(\r\n private authService: AuthService,\r\n public router: Router,\r\n private toastr: ToastrService) { }\r\n\r\n canActivate(next: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise {\r\n return this.permiteAcesso(next.data);\r\n }\r\n\r\n canActivateChild(next: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise {\r\n return this.permiteAcesso(next.data);\r\n }\r\n\r\n private permiteAcesso(routeData: any): Promise {\r\n return this.authService.obterEstado()\r\n .then(async (res) => {\r\n if (res.sucesso && res.dados.autenticado) {\r\n if (routeData && routeData.acao) {\r\n if (!this.authService.usuario) {\r\n await this.authService.obterPerfilUsuario();\r\n }\r\n\r\n if(routeData.recurso == EnumRecursoPerfil.Aberto){\r\n return true;\r\n }\r\n\t\t\t\r\n\t\t\tlet perm = this.authService.possuiPermissao(routeData.recurso, routeData.acao); \r\n\t\t\t\r\n\t\t\tif (perm) {\r\n return true;\r\n } else {\r\n perm = this.authService.possuiPerfis(routeData.perfis);\r\n\r\n if (perm) {\r\n return true;\r\n } else {\r\n this.toastr.error('Você não possui acesso a esse recurso.', 'Acesso negado!');\r\n this.router.navigate(['/']);\r\n return false;\r\n }\r\n }\r\n } else {\r\n return true;\r\n }\r\n } else {\r\n this.authService.login();\r\n return false;\r\n }\r\n })\r\n .catch((err) => {\r\n this.authService.login();\r\n return false;\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { CategoriaRiscoFormComponent } from 'src/app/pages/categoria-risco-form/categoria-risco-form.component';\r\n\r\n@Injectable()\r\nexport class CategoriaRiscoGuard implements CanDeactivate {\r\n canDeactivate(component: CategoriaRiscoFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { CoordenacaoFormComponent } from 'src/app/pages/coordenacao-form/coordenacao-form.component';\r\n\r\n@Injectable()\r\nexport class CoordenacaoGuard implements CanDeactivate {\r\n canDeactivate(component: CoordenacaoFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { CriterioFormComponent } from 'src/app/pages/criterio-form/criterio-form.component';\r\n\r\n@Injectable()\r\nexport class CriterioGuard implements CanDeactivate {\r\n canDeactivate(component: CriterioFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n \r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { CustoRecursoFormComponent } from 'src/app/pages/custo-recurso-form/custo-recurso-form.component';\r\n\r\n@Injectable()\r\nexport class CustoRecursoGuard\r\n implements CanDeactivate {\r\n canDeactivate(\r\n component: CustoRecursoFormComponent\r\n ): Observable | boolean {\r\n if (!component.visualizar) {\r\n if(component?.salvar) {return true;}\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n }\r\n else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { FaseAtividadeFormComponent } from 'src/app/pages/fase-atividade-form/fase-atividade-form.component';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\n\r\n@Injectable()\r\nexport class FaseAtividadeGuard implements CanDeactivate {\r\n canDeactivate(component: FaseAtividadeFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { MatrizPlanejamentoFormComponent } from 'src/app/pages/matriz-planejamento-form/matriz-planejamento-form.component';\r\n\r\n@Injectable()\r\nexport class MatrizPlanejamentoGuard\r\n implements CanDeactivate {\r\n canDeactivate(\r\n component: MatrizPlanejamentoFormComponent\r\n ): Observable | boolean {\r\n if (!component.visualizar) {\r\n if(component?.adicionarQuestão) { return true; }\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { ModeloRelatorioFormComponent } from 'src/app/pages/modelo-relatorio-form/modelo-relatorio-form.component';\r\n\r\n@Injectable()\r\nexport class ModeloRelatorioGuard implements CanDeactivate {\r\n canDeactivate(component: ModeloRelatorioFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { NaturezaResponsabilidadeFormComponent } from 'src/app/pages/natureza-responsabilidade-form/natureza-responsabilidade-form.component';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\n\r\n@Injectable()\r\nexport class NaturezaResponsabilidadeGuard implements CanDeactivate {\r\n canDeactivate(component: NaturezaResponsabilidadeFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { PaaElaborarComponent } from 'src/app/pages/paa-elaborar/paa-elaborar.component';\r\n\r\n@Injectable()\r\nexport class PaaGuard implements CanDeactivate {\r\n canDeactivate(component: PaaElaborarComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { PeaFormComponent } from 'src/app/pages/pea-form/pea-form.component';\r\n\r\n@Injectable()\r\nexport class PeaGuard implements CanDeactivate {\r\n canDeactivate(component: PeaFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { PerguntaFormComponent } from 'src/app/pages/pergunta-form/pergunta-form.component';\r\n\r\n@Injectable()\r\nexport class PerguntaGuard implements CanDeactivate {\r\n canDeactivate(component: PerguntaFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { PeriodoFormComponent } from 'src/app/pages/periodo-form/periodo-form.component';\r\n\r\n@Injectable()\r\nexport class PeriodoGuard implements CanDeactivate {\r\n canDeactivate(component: PeriodoFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { ProcedimentoAuditoriaFormComponent } from 'src/app/pages/procedimento-auditoria-form/procedimento-auditoria-form.component';\r\n\r\n@Injectable()\r\nexport class ProcedimentoAuditoriaGuard\r\n implements CanDeactivate {\r\n canDeactivate(\r\n component: ProcedimentoAuditoriaFormComponent\r\n ): Observable | boolean {\r\n if (!component.visualizar) {\r\n if (component?.salvar) { return true; }\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n }\r\n else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { QuestaoFormComponent } from 'src/app/pages/questao-form/questao-form.component';\r\n\r\n@Injectable()\r\nexport class QuestaoGuard\r\n implements CanDeactivate {\r\n canDeactivate(\r\n component: QuestaoFormComponent\r\n ): Observable | boolean {\r\n if (!component.visualizar) {\r\n if (component?.salvar) { return true; }\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n }\r\n else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { QuestionarioFormComponent } from 'src/app/pages/questionario-form/questionario-form.component';\r\n\r\n@Injectable()\r\nexport class QuestionarioGuard\r\n implements CanDeactivate {\r\n canDeactivate(\r\n component: QuestionarioFormComponent\r\n ): Observable | boolean {\r\n if (!component.visualizar) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n }\r\n else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { RecomendacaoFormComponent } from 'src/app/pages/recomendacao-form/recomendacao-form.component';\r\n\r\n@Injectable()\r\nexport class RecomendacaoGuard\r\n implements CanDeactivate {\r\n canDeactivate(\r\n component: RecomendacaoFormComponent\r\n ): Observable | boolean {\r\n if (!component.visualizar) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n }\r\n else { return true; }\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { CanDeactivate } from \"@angular/router\";\r\nimport { Observable } from \"rxjs\";\r\nimport { ModalCancelarComponent } from \"src/app/shared/components/modal-cancelar/modal-cancelar-component\";\r\nimport { ModalConfirmaCancelarComponent } from \"src/app/shared/components/modal-confirma-cancelar/modal-confirma-cancelar.component\";\r\nimport { RiscosFormComponent } from \"src/app/pages/riscos-form/riscos-form.component\";\r\n\r\n@Injectable()\r\nexport class RiscosGuard implements CanDeactivate {\r\n\tcanDeactivate(\r\n\t\tcomponent: RiscosFormComponent\r\n\t): Observable | boolean {\r\n\t\tif (component.novoRegistro) {\r\n\t\t\tif (component.submit) {\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\r\n\t\t\treturn component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n\r\n\t\t} else if (!component.visualizar) {\r\n\t\t\tif (component.submit) { return true; }\r\n\t\t\treturn component.matDialog.open(ModalConfirmaCancelarComponent).afterClosed();\r\n\t\t}\r\n\t}\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { SubtipoAuditoriaFormComponent } from 'src/app/pages/subtipo-auditoria-form/subtipo-auditoria-form.component';\r\n\r\n@Injectable()\r\nexport class SubtipoAuditoriaGuard\r\n implements CanDeactivate {\r\n canDeactivate(\r\n component: SubtipoAuditoriaFormComponent\r\n ): Observable | boolean {\r\n if (!component.visualizar) {\r\n if (component.submit) { return true; }\r\n if(component?.subTipoAuditoriaCancelar) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n }\r\n else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { TecnicaAuditoriaFormComponent } from 'src/app/pages/tecnica-auditoria-form/tecnica-auditoria-form.component';\r\n\r\n@Injectable()\r\nexport class TecnicaAuditoriaGuard\r\n implements CanDeactivate {\r\n canDeactivate(\r\n component: TecnicaAuditoriaFormComponent\r\n ): Observable | boolean {\r\n if (!component.visualizar) {\r\n if (component?.salvar) { return true; }\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n }\r\n else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { TipoAuditoriaFormComponent } from 'src/app/pages/tipo-auditoria-form/tipo-auditoria-form.component';\r\n\r\n@Injectable()\r\nexport class TipoAuditoriaGuard implements CanDeactivate {\r\n canDeactivate(component: TipoAuditoriaFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { TipoCriterioFormComponent } from 'src/app/pages/tipo-criterio-form/tipo-criterio-form.component';\r\n\r\n@Injectable()\r\nexport class TipoCriterioGuard implements CanDeactivate {\r\n canDeactivate(component: TipoCriterioFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { TipoDispensaFormComponent } from 'src/app/pages/tipo-dispensa-form/tipo-dispensa-form.component';\r\n\r\n@Injectable()\r\nexport class TipoDispensaGuard implements CanDeactivate {\r\n canDeactivate(component: TipoDispensaFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n\r\nimport { UnidadeGestoraFormComponent } from 'src/app/pages/unidade-gestora-form/unidade-gestora-form.component';\r\n\r\n@Injectable()\r\nexport class UnidadeGestoraGuard implements CanDeactivate {\r\n canDeactivate(component: UnidadeGestoraFormComponent): Observable | boolean {\r\n // if (component.novoRegistro) {\r\n // if (component.submit) { return true; }\r\n // return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n // } else { return true; }\r\n return true;\r\n } \r\n}","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { TipoEnfaseFormComponent } from 'src/app/pages/tipo-enfase-form/tipo-enfase-form.component';\r\n\r\n@Injectable()\r\nexport class TipoEnfaseGuard implements CanDeactivate {\r\n canDeactivate(component: TipoEnfaseFormComponent): Observable | boolean {\r\n if (component.novoRegistro) {\r\n if (component.submit) { return true; }\r\n return component.matDialog.open(ModalCancelarComponent).afterClosed();\r\n } else { return true; }\r\n }\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { Injectable } from '@angular/core';\r\nimport moment from 'moment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class DateHelper{\r\n private datePipe = new DatePipe('pt-BR');\r\n \r\n toDatePtBr(date: Date){\r\n if (date) {\r\n return this.truncateDate(moment(date, 'DD/MM/YYYY').toDate());\r\n }\r\n return date;\r\n }\r\n\r\n toStringPtBr(date: Date) {\r\n if (date) {\r\n return this.datePipe.transform(date, 'dd/MM/yyyy');\r\n } else {\r\n return '';\r\n }\r\n }\r\n\r\n toString(date: Date) {\r\n if (date) {\r\n return this.datePipe.transform(date, 'MM/dd/yyyy');\r\n } else {\r\n return '';\r\n }\r\n }\r\n\r\n truncateDate(date: Date){\r\n if (date) {\r\n return new Date(this.datePipe.transform(date, 'yyyy-MM-dd'));\r\n }\r\n return date;\r\n }\r\n}\r\n","export interface FilterByOptions {\r\n recursive?: boolean;\r\n dateSeparator?: string;\r\n}\r\n\r\nexport function filterBy(filter: any, url: string, options?: FilterByOptions) {\r\n const recursive = options && options.recursive;\r\n const dateSeparator = options && options.dateSeparator || '-';\r\n const joinParams = (obj: any, prepend?: string) => {\r\n const arr = [];\r\n Object.keys(obj)\r\n .filter(key => {\r\n const value = obj[key];\r\n return value !== null && value !== undefined && (value instanceof Date || typeof value !== 'object' || recursive);\r\n })\r\n .forEach(key => {\r\n const value = obj[key];\r\n let str: string;\r\n if (typeof value === 'object') {\r\n str = value instanceof Date\r\n ? `${prepend || ''}${key}=${dateToString(value, dateSeparator)}`\r\n : joinParams(value, `${prepend || ''}${key}.`);\r\n } else {\r\n str = `${prepend || ''}${key}=${value}`;\r\n }\r\n if (str) {\r\n arr.push(str);\r\n }\r\n });\r\n return arr.length ? arr.join('&') : null;\r\n };\r\n\r\n if (!filter || typeof filter !== 'object') {\r\n return url;\r\n }\r\n\r\n const filterUrl = joinParams(filter);\r\n if (!filterUrl) {\r\n return url;\r\n }\r\n\r\n const concatChar = url.indexOf('?') === -1 ? '?' : '&';\r\n return `${url}${concatChar}${filterUrl}`;\r\n}\r\n\r\nfunction dateToString(date: Date, separator: string) {\r\n return [\r\n ('0' + (date.getMonth() + 1)).slice(-2),\r\n ('0' + date.getDate()).slice(-2),\r\n date.getFullYear()\r\n ].join(separator);\r\n}\r\n","export function defaultDataAcessor(item: any, sortHeaderId: string) {\r\n if (typeof item[sortHeaderId] === 'string') {\r\n return item[sortHeaderId].toLocaleLowerCase().normalize('NFD').replace(/[\\u0300-\\u036f]/g, '');\r\n }\r\n\r\n return item[sortHeaderId];\r\n\r\n}\r\n","export function toIntlNumberString(brString: string): string {\r\n brString = brString || '';\r\n return brString.split('.').join('').replace(',', '.');\r\n}\r\n","import { MatPaginatorIntl } from '@angular/material/paginator';\r\n\r\nconst rangeLabel = (page: number, pageSize: number, length: number) => {\r\n if (length === 0 || pageSize === 0) {\r\n return `0 de ${length}`;\r\n }\r\n\r\n length = Math.max(length, 0);\r\n const startIndex = page * pageSize;\r\n const endIndex = startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize;\r\n\r\n return `${startIndex + 1} - ${endIndex} de ${length}`;\r\n};\r\n\r\nexport function getPtBrPaginatorIntl() {\r\n const paginatorIntl = new MatPaginatorIntl();\r\n\r\n paginatorIntl.itemsPerPageLabel = 'Registros por página';\r\n paginatorIntl.firstPageLabel = 'Primeira página';\r\n paginatorIntl.nextPageLabel = 'Próxima página';\r\n paginatorIntl.previousPageLabel = 'Voltar página';\r\n paginatorIntl.lastPageLabel = 'Última página';\r\n\r\n paginatorIntl.getRangeLabel = rangeLabel;\r\n\r\n return paginatorIntl;\r\n}\r\n","import { HttpHandler, HttpHeaderResponse, HttpInterceptor, HttpProgressEvent, HttpRequest, HttpResponse, HttpSentEvent, HttpUserEvent } from '@angular/common/http';\r\nimport { Injectable, Injector } from '@angular/core';\r\nimport { BehaviorSubject, Observable, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n\r\n@Injectable()\r\nexport class AuthInterceptor implements HttpInterceptor {\r\n isRefreshingToken = true;\r\n tokenSubject: BehaviorSubject = new BehaviorSubject(null);\r\n\r\n constructor(private injector: Injector) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable | HttpUserEvent> {\r\n const authService = this.injector.get(AuthService);\r\n\r\n return next.handle(request).pipe(\r\n catchError(error => {\r\n if (error.status === 401) {\r\n authService.login();\r\n return next.handle(null);\r\n }\r\n\r\n if (error.error instanceof ErrorEvent) {\r\n // A client-side or network error occurred\r\n // TODO: Implementar tratativas para erro client-side e de rede\r\n\r\n\r\n } else {\r\n // Se for um retorno padronizado do backend\r\n if (error.error && error.error.sucesso !== undefined && error.error.mensagem !== undefined) {\r\n return throwError(error.error as IBaseModel);\r\n }\r\n }\r\n\r\n // Retorno padrão\r\n return throwError({ sucesso: false, mensagem: { nome: 'ErroInterno', descricao: 'Ocorreu um erro ao tentar realizar a operação' } } as IBaseModel);\r\n }));\r\n }\r\n}\r\n","import { HttpEvent, HttpHandler, HttpHeaderResponse, HttpInterceptor, HttpProgressEvent, HttpRequest, HttpResponse, HttpSentEvent, HttpUserEvent } from '@angular/common/http';\r\nimport { Injectable, Injector } from '@angular/core';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { BehaviorSubject, Observable, throwError } from 'rxjs';\r\nimport { catchError, finalize, map, tap } from 'rxjs/operators';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\n\r\n\r\n@Injectable()\r\nexport class LoadingInterceptor implements HttpInterceptor {\r\n isRefreshingToken = true;\r\n tokenSubject: BehaviorSubject = new BehaviorSubject(null);\r\n\r\n constructor(private injector: Injector) { }\r\n \r\n intercept(request: HttpRequest, next: HttpHandler): Observable | HttpUserEvent> {\r\n const spinner = this.injector.get(NgxSpinnerService);\r\n spinner.show();\r\n\r\n return next.handle(request).pipe(\r\n finalize(() => { \r\n spinner.hide();\r\n })\r\n );\r\n }\r\n}\r\n","export enum EnumAcaoRecurso\r\n{\r\n Inserir = 'Inserir',\r\n Consultar = 'Consultar',\r\n Editar = 'Editar',\r\n Visualizar = 'Visualizar',\r\n AtivarInativar = 'Ativar-Inativar',\r\n Excluir = 'Excluir',\r\n Imprimir='Imprimir',\r\n EnviarParaAprovacao='Enviar para Aprovação',\r\n Planejar='Planejar',\r\n Elaborar='Elaborar',\r\n GerarNovaVersao='Gerar Nova Versão',\r\n Relatoria='Relatoria',\r\n Avaliar='Avaliar',\r\n Detalhar='Detalhar',\r\n Exportar='Exportar',\r\n GerarPAA='Gerar PAA',\r\n Importar='Importar'\r\n}","export enum EQuestionarioUGSituacao {\r\n EmElaboracao = 1,\r\n Pendente = 2,\r\n Avocado = 3,\r\n EmValidacao = 4,\r\n EmReplica = 5,\r\n Expirado = 6,\r\n Finalizado = 7,\r\n EmPreenchimento = 8,\r\n Enviado = 9,\r\n Contestado = 10\r\n }\r\n\r\n export const EQuestionarioUGSituacaoDescricao = {\r\n [EQuestionarioUGSituacao.EmElaboracao]: 'Em Elaboração',\r\n [EQuestionarioUGSituacao.Pendente]: 'Pendente',\r\n [EQuestionarioUGSituacao.Avocado]: 'Avocado',\r\n [EQuestionarioUGSituacao.EmValidacao]: 'Em validação',\r\n [EQuestionarioUGSituacao.EmReplica]: 'Em réplica',\r\n [EQuestionarioUGSituacao.Expirado]: 'Expirado',\r\n [EQuestionarioUGSituacao.Finalizado]: 'Finalizado',\r\n [EQuestionarioUGSituacao.EmPreenchimento]: 'Em preenchimento',\r\n [EQuestionarioUGSituacao.Enviado]: 'Enviado',\r\n [EQuestionarioUGSituacao.Contestado]: 'Contestado'\r\n };\r\n ","export enum EnumRecursoPerfil {\r\n\r\n Cadastros = 'CadastrosBasicos',\r\n ManterPAA = 'Manter PAA',\r\n ManterPEA = 'Manter PEA',\r\n ManterOPA = 'Manter OPA',\r\n Configuracoes = 'Configurações',\r\n Planejamento = 'Planejamento',\r\n ManterOSA='Manter OSA',\r\n Auditoria='Auditoria',\r\n Aprovacoes='Aprovações',\r\n LogsDoSistema='Logs do Sistema',\r\n Aberto='Aberto',\r\n CadastroCategoriaRisco='Cadastro - Categoria Risco',\r\n PrePlanejamento='RelacionamentoComUG - PrePlanejamento',\r\n\tCadastroRiscos = \"Cadastro - Riscos\",\r\n\tCriteriosAvaliacaoRiscos = \"Cadastro - Riscos\",\r\n ModeloQuestionario='ModeloQuestionario',\r\n QuestionarioMaturidade='QuestionarioMaturidade',\r\n QuestionarioEntentendoEntidade='QuestionarioEntentendoEntidade',\r\n TipoUniversoAuditavel = 'TipoUniversoAuditavel',\r\n RiscosChaves = 'RiscosChaves'\r\n\r\n}\r\n","import { EQuestionarioUGSituacao, EQuestionarioUGSituacaoDescricao } from \"./questionario-ug-situacao.enum\";\r\n\r\nexport enum ERiscosChavesSituacao{\r\n EmElaboracao = 1,\r\n Pendente = 2,\r\n Avocado = 3,\r\n Expirado = 4,\r\n Finalizado = 5,\r\n}\r\nexport const ERiscosChavesSituacaoDescricao = {\r\n [ERiscosChavesSituacao.EmElaboracao]: 'Em Elaboração',\r\n [ERiscosChavesSituacao.Pendente]: 'Pendente',\r\n [ERiscosChavesSituacao.Avocado]: 'Avocado',\r\n [ERiscosChavesSituacao.Expirado]: 'Expirado',\r\n [ERiscosChavesSituacao.Finalizado]: 'Finalizado',\r\n};\r\n","export enum EnumStatusAvaliacaoQuestionarioUG {\r\n concordo = 1,\r\n concordoParcialmente = 2,\r\n discordo = 3\r\n}","export enum EnumStatusSolicitacaoTecnica {\r\n EmElaboracao = 1,\r\n\tFinalizada = 2,\r\n Enviada = 3,\r\n Cancelada = 4,\r\n SolicitacaoProrrogacao = 5,\r\n Prorrogada = 6,\r\n AtendidaParcialmente = 7,\r\n AtendidaTotalmente = 8,\r\n NaoAtendidaParcialmente = 9,\r\n NaoAtendidaTotalmente = 10,\r\n Pendente = 11,\r\n ProrrogacaoRejeitada = 12\r\n}","export enum EnumTipoAvaliacaoQuestionarioUG {\r\n avaliacao = 1,\r\n replica = 2,\r\n avaliacaoFinal = 3\r\n}","export enum EnumTipoDocumentoAprovacao {\r\n NaoSelecionado = 0,\r\n PEAC = 1,\r\n PAAC = 2,\r\n OPA = 3,\r\n OSA = 4,\r\n MatrizConstatacoes = 5,\r\n RelatorioAuditoria = 6,\r\n Planejamento = 7,\r\n PAACEspecial =8,\r\n EntendendoEntidade = 9,\r\n MaturidadeGestaoRisco = 10\r\n}","export enum EnumTipoFeriado {\r\n Nacional = 'Nacional',\r\n Estadual = 'Estadual',\r\n Municipal = 'Municipal',\r\n PontoFacultativo = 'PontoFacultativo',\r\n Outros = 'Outros'\r\n }\r\n ","export enum EnumTipoQuestionarioUG {\r\n EntendendoEntidade = 1,\r\n MaturidadeRisco = 2\r\n}","export enum TipoUniversoEnum{\r\n Padronizado = 1,\r\n NaoPadronizado= 2\r\n}\r\n","import { EQuestionarioUGSituacao, EQuestionarioUGSituacaoDescricao } from \"./questionario-ug-situacao.enum\";\r\n\r\nexport enum EUniversoAuditavelSituacao{\r\n EmElaboracao = 1,\r\n EmPreenchimento = 2,\r\n Revisao = 3,\r\n Pendente = 4,\r\n Avocado = 5,\r\n Expirado = 6,\r\n Finalizado = 7,\r\n}\r\nexport const EUniversoAuditavelSituacaoDescricao = {\r\n [EUniversoAuditavelSituacao.EmElaboracao]: 'Em Elaboração',\r\n [EUniversoAuditavelSituacao.EmPreenchimento]: 'Em preenchimento',\r\n [EUniversoAuditavelSituacao.Pendente]: 'Pendente',\r\n [EUniversoAuditavelSituacao.Revisao]: 'Revisao',\r\n [EUniversoAuditavelSituacao.Avocado]: 'Avocado',\r\n [EUniversoAuditavelSituacao.Expirado]: 'Expirado',\r\n [EUniversoAuditavelSituacao.Finalizado]: 'Finalizado',\r\n};\r\n","export class FiltroModel {\r\n pagina: number;\r\n itensPorPagina: number;\r\n direcao: string;\r\n colunaOrder: string;\r\n pesquisa = '';\r\n ativo: boolean;\r\n }\r\n","export class IPermissaoModel {\r\n consultar: boolean;\r\n incluir: boolean;\r\n editar: boolean;\r\n excluir: boolean;\r\n visualizar: boolean;\r\n inativarReativar: boolean;\r\n imprimir: boolean;\r\n enviarParaAprovacao:boolean;\r\n planejar:boolean;\r\n elaborar:boolean;\r\n gerarNovaVersao:boolean;\r\n relatoria:boolean;\r\n avaliar:boolean;\r\n exportar:boolean;\r\n detalhar:boolean;\r\n gerarPAA:boolean;\r\n importar:boolean;\r\n}\r\n","import { AfterViewInit, Component, Input, OnInit, ViewChild } from \"@angular/core\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IAgentePublicoModel } from \"src/app/models/agente-publico.model\";\r\nimport { IAuditorCoordenacaoModel } from \"src/app/models/auditor-coordenacao.model\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogConfig,\r\n} from \"@angular/material/dialog\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { defaultDataAcessor } from \"src/app/core/helpers/mat-sort-data-accessor\";\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { AgentePublicoService } from \"src/app/services/agente-publico.service\";\r\nimport Swal from 'sweetalert2';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n\tswitch (property) {\r\n\t case 'nome':\r\n\t\treturn item.pessoa.nome;\r\n\t case 'cpfFormatted':\r\n\t\treturn item.pessoa.cpf;\r\n\t default:\r\n\t\treturn item[property];\r\n\t}\r\n };\r\n\r\n@Component({\r\n\tselector: \"app-aba-dados-basicos\",\r\n\ttemplateUrl: \"./aba-dados-basicos.component.html\",\r\n\tstyleUrls: [\"./aba-dados-basicos.component.scss\"],\r\n})\r\nexport class AgentePublicoAbaDadosBasicosComponent extends BaseFormComponent{\r\n\t@Input() public visualizar;\r\n\r\n\tpublic model : IAgentePublicoModel;\r\n\tpublic aba = 0;\r\n\tpublic auditorCoordenacoesDataSource = new MatTableDataSource([]);\r\n\tpublic auditorCoordenacaoSemDados = true;\r\n\tpublic displayedColumns: string[] = ['nome', 'cargo', 'situacao'];\r\n \r\n\tpublic form = new FormGroup({\r\n\t nome: new FormControl(null, Validators.required),\r\n\t cpf: new FormControl(null, Validators.required),\r\n\t numeroFuncional: new FormControl(null, Validators.required)\r\n\t});\r\n\r\n\r\n\tconstructor(\r\n\t\tpublic route: ActivatedRoute,\r\n\t\tpublic toastr: ToastrService,\r\n\t\tpublic router: Router,\r\n\t\tpublic localeService: BsLocaleService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate agentePublicoService: AgentePublicoService,\r\n\t\t\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\t\tthis.titulo = 'Agente público';\r\n\t\t\r\n\t}\r\n\r\n \r\n\tasync ngOnInit(): Promise {\r\n\t\tawait this.buscar();\r\n\t}\r\n\r\n\r\n public async buscar() {\r\n\r\n\tconst res = await this.agentePublicoService.getDadosBasicos(this.id);\r\n\tif (res.sucesso) {\r\n\t this.model = res.dados;\r\n\t this.auditorCoordenacoesDataSource = new MatTableDataSource(this.model.auditorCoordenacoes);\r\n\t this.auditorCoordenacaoSemDados = this.auditorCoordenacoesDataSource.filteredData.length === 0;\r\n\t} else {\r\n\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n \tthis.router.navigate(['/tipo-enfase']);\r\n\t return;\r\n\t}\r\n\r\n\tthis.form.controls['nome'].setValue(this.model.pessoa.nome);\r\n\tthis.form.controls['cpf'].setValue(this.model.pessoa.cpfFormatted);\r\n\tthis.form.controls['numeroFuncional'].setValue(this.model.numeroFuncional);\r\n\r\n\t}\r\n\r\n\tprivate atualizarModel(values: any) {\r\n\t\tObject.assign(this.model, values);\r\n\t }\r\n\t\r\n\t public onBack() {\r\n\t\tthis.router.navigate(['/agente-publico']);\r\n\t }\r\n\t \r\n\t public cancelar() {\r\n\t\tthis.router.navigate(['/agente-publico']);\r\n\t }\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n
\r\n\t\t\t
\r\n
\r\n\t\t\t
\r\n
\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tNome\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ element.coordenacao.nome }}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t \r\n\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t \r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t
Cargo\r\n\t\t\t\t\t\t\t Coordenador Titular\r\n\t\t\t\t\t\t\t Coordenador Substituindo\r\n\t\t\t\t\t\t\t Coordenador Respondendo\r\n\t\t\t\t\t\t\t Auditor do Estado\r\n\t\t\t\t\t\t\tSituação\r\n\t\t\t\t\t\t\t Ativo\r\n\t\t\t\t\t\t\t Inativo\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tAuditor sem coordenações\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n
\r\n","import { AfterViewInit, Component, Input, OnInit, ViewChild } from \"@angular/core\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IAgentePublicoModel } from \"src/app/models/agente-publico.model\";\r\nimport { IAuditorCoordenacaoModel } from \"src/app/models/auditor-coordenacao.model\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogConfig,\r\n} from \"@angular/material/dialog\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { defaultDataAcessor } from \"src/app/core/helpers/mat-sort-data-accessor\";\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { AgentePublicoService } from \"src/app/services/agente-publico.service\";\r\nimport Swal from 'sweetalert2';\r\nimport { IAgentePublicoDisponibilidadeModel } from \"src/app/models/agente-publico-disponibilidade.model\";\r\nimport { SharedService } from \"src/app/services/shared.service\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { IAgentePublicoDispensaModel } from \"src/app/models/agente-publico-dispensa.model\";\r\nimport { ModalAdicionarDispensaComponent } from \"./modal-adicionar-dispensa/modal-adicionar-dispensa.component\";\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n\tswitch (property) {\r\n\t case 'nome':\r\n\t\treturn item.pessoa.nome;\r\n\t case 'cpfFormatted':\r\n\t\treturn item.pessoa.cpf;\r\n\t default:\r\n\t\treturn item[property];\r\n\t}\r\n };\r\n\r\n@Component({\r\n\tselector: \"app-aba-dispensas\",\r\n\ttemplateUrl: \"./aba-dispensas.component.html\",\r\n\tstyleUrls: [\"./aba-dispensas.component.scss\"],\r\n})\r\nexport class AgentePublicoAbaDispensasComponent extends BaseFormComponent{\r\n\t\r\n\t@Input() public visualizar;\r\n\r\n\tclickEventSubscription: Subscription;\r\n\tpublic model : IAgentePublicoModel;\r\n\tpublic aba = 0;\r\n\tpublic selectedModelYears: Array = [];\r\n\tpublic selectedYear: number;\r\n\tpublic semDados = true;\r\n\tpublic dispensasDataSource = new MatTableDataSource([]);\r\n \r\n\tpublic form = new FormGroup({\r\n\t\tnome: new FormControl(null, Validators.required),\r\n\t});\r\n\r\n\r\n\tconstructor(\r\n\t\tpublic route: ActivatedRoute,\r\n\t\tpublic toastr: ToastrService,\r\n\t\tpublic router: Router,\r\n\t\tpublic localeService: BsLocaleService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate agentePublicoService: AgentePublicoService,\r\n\t\tprivate sharedService: SharedService,\r\n\t\t\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\t\tthis.titulo = 'Agente público';\r\n\t\tthis.clickEventSubscription = this.sharedService\r\n\t\t\t.getEvent()\r\n\t\t\t.subscribe(() => {\r\n\t\t\t\tthis.onSalvar();\r\n\t\t\t});\r\n\t}\r\n\r\n \r\n\tasync ngOnInit(): Promise {\r\n\t\tawait this.popularComboAnos();\r\n\t\tthis.buscar();\r\n\t}\r\n\r\n\r\n public async buscar() {\r\n\r\n\tconst res = await this.agentePublicoService.getDadosDispensas(this.id, this.selectedYear);\r\n\tif(res.sucesso){\r\n\t\tthis.model = res.dados;\r\n\t\tthis.titulo = \"Agente Público: \" + this.model.pessoa.nome;\r\n\t\tthis.dispensasDataSource = new MatTableDataSource(this.model.dispensas);\r\n\t\tthis.semDados = this.dispensasDataSource.filteredData.length === 0;\r\n\t}\r\n\r\n\t}\r\n\r\n\tprivate atualizarModel(values: any) {\r\n\t\tObject.assign(this.model, values);\r\n\t }\r\n\t\r\n\t public onBack() {\r\n\t\tthis.router.navigate(['/agente-publico']);\r\n\t }\r\n\t \r\n\t public cancelar() {\r\n\t\tthis.router.navigate(['/agente-publico']);\r\n\t }\r\n\r\n\t \r\n\t public excluirDispensa(id: number){\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Exclusão de dispensa',\r\n\t\t\ttext:\r\n\t\t\t `Deseja realmente excluir esta dispensa?`,\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Sim',\r\n\t\t\tcancelButtonText: 'Não',\r\n\t\t }).then(async (result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t this.agentePublicoService\r\n\t\t\t\t\t\t.excluirDispensa(id)\r\n\t\t\t\t\t\t.then((res) =>{\r\n\t\t\t\t\t\t if(res.sucesso){\r\n\t\t\t\t\t\t\tthis.exibirMensagemSucesso(res.mensagem.descricao);\r\n\t\t\t\t\t\t\tthis.buscar();\r\n\t\t\t\t\t\t }else{\r\n\t\t\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\t.catch((err)=>{\r\n\t\t\t\t\t\t this.exibirMensagemAlerta(err);\r\n\t\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t });\r\n\t }\r\n\r\n\t public async onSalvar(){\r\n\t\t\r\n\r\n\t }\r\n\r\n\t public abrirModalDispensa(element: IAgentePublicoDispensaModel){\r\n\t\t\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n\t\tid: element ? element.id : 0,\r\n agentePublicoId: this.model.idAgentePublico,\r\n\t\tanoSelecionado: this.selectedYear,\r\n\t\ttipoDispensaId: element? element.tipoDispensaId : 0,\r\n\t\tdataInicio: element ? element.dataInicio : null,\r\n\t\tdataFim: element ? element.dataFim : null,\r\n\t\tqtdDias : element ? element.qtdDias : 0\r\n };\r\n \r\n\t const modal = this.matDialog.open(\r\n ModalAdicionarDispensaComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.buscar();\r\n }\r\n });\r\n\t }\r\n\r\n\t public async popularComboAnos(){\r\n\t\tconst anoAtual = new Date().getFullYear();\r\n\t\tthis.selectedModelYears.push(anoAtual + 4);\r\n\t\tthis.selectedModelYears.push(anoAtual + 3);\r\n\t\tthis.selectedModelYears.push(anoAtual + 2);\r\n\t\tthis.selectedModelYears.push(anoAtual + 1);\r\n\t\tthis.selectedModelYears.push(anoAtual);\r\n\t\tthis.selectedModelYears.push(anoAtual - 1);\r\n\t\tthis.selectedModelYears.push(anoAtual - 2);\r\n\t\tthis.selectedYear = anoAtual;\r\n\t }\r\n\r\n\t public async onChangeSelectAno(element) {\r\n\t\tthis.buscar();\r\n\t }\r\n\r\n}\r\n\r\n","\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tAdicionar dispensa\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ item }}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
Descrição\r\n\t\t\t\t\t\t{{ element.tipoDispensa.nome }}\r\n\t\t\t\t\tInicio\r\n\t\t\t\t\t\t{{ element.dataInicioFormatted }}\r\n\t\t\t\t\tFim\r\n\t\t\t\t\t\t{{ element.dataFimFormatted }}\r\n\t\t\t\t\tQtd. Dias\r\n\t\t\t\t\t\t{{ element.qtdDias }}\r\n\t\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tSem dados a exibir\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\r\n","import { ToastrService } from 'ngx-toastr';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport {\r\n Component,\r\n OnInit,\r\n Inject,\r\n ViewChild,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { DateHelper } from 'src/app/core/helpers/date.helper';\r\nimport Swal from 'sweetalert2';\r\nimport { IAgentePublicoDispensaModel } from 'src/app/models/agente-publico-dispensa.model';\r\nimport { ITipoDispensaModel } from 'src/app/models/tipo-dispensa.model';\r\nimport { TipoDispensaService } from 'src/app/services/tipo-dispensa.service';\r\nimport { AgentePublicoService } from 'src/app/services/agente-publico.service';\r\n\r\n@Component({\r\n selector: 'app-modal-adicionar-dispensa',\r\n templateUrl: './modal-adicionar-dispensa.component.html',\r\n styleUrls: ['./modal-adicionar-dispensa.component.scss'],\r\n})\r\n\r\nexport class ModalAdicionarDispensaComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n \r\n public model = {} as IAgentePublicoDispensaModel;\r\n public minDate: Date;\r\n public maxDate: Date;\r\n public houveSugestaoData: boolean;\r\n public dataInvalida: boolean;\r\n public dataFinalSugerida: Date;\r\n public anoSelecionado: number;\r\n\r\n public dataObrigatoria = false;\r\n\r\n public tabelaTipoDispensa = [] as ITipoDispensaModel[];\r\n public selectedTipoDispensa = {} as ITipoDispensaModel;\r\n\r\n public qtdDias: number = 0;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n private tipoDispensaService: TipoDispensaService,\r\n private agentePublicoService: AgentePublicoService,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n \r\n \r\n if(data.id && data.id != 0){\r\n this.model.id = this.data.id;\r\n this.model.agentePublicoId = this.data.agentePublicoId;\r\n this.anoSelecionado = this.data.anoSelecionado;\r\n this.model.tipoDispensaId = this.data.tipoDispensaId;\r\n this.model.dataInicio = new Date(this.data.dataInicio);\r\n this.model.dataFim = new Date(this.data.dataFim);\r\n this.model.qtdDias = this.data.qtdDias;\r\n this.qtdDias = this.model.qtdDias;\r\n \r\n }else{\r\n this.model.agentePublicoId = data?.agentePublicoId;\r\n this.anoSelecionado = data?.anoSelecionado;\r\n\r\n this.minDate = new Date(data?.anoSelecionado, 1 - 1, 1);\r\n this.maxDate = new Date(data?.anoSelecionado, 12 - 1, 31);\r\n }\r\n \r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscarTiposDispensa();\r\n }\r\n\r\n\r\n ngOnChangeDataInicio(event:any): void {\r\n if(event)\r\n this.validaData(this.model.dataInicio, true);\r\n \r\n if(this.model.tipoDispensaId){\r\n const qtdDias = this.tabelaTipoDispensa.find(t => t.id === this.model.tipoDispensaId).quantidadeDiasPadrao;\r\n if(qtdDias > 0){\r\n const novaData = new Date(this.model.dataInicio);\r\n novaData.setDate(novaData.getDate() + qtdDias - 1);\r\n this.model.dataFim = new Date(novaData);\r\n }\r\n \r\n }\r\n }\r\n \r\n ngOnChangeDataFim(event:any): void {\r\n if(event)\r\n this.validaData(this.model.dataFim, false);\r\n }\r\n\r\n public async validaData(dataReferencia: Date, isDataInicial: boolean){\r\n if(!dataReferencia)\r\n return false;\r\n }\r\n\r\n\r\n\r\n \r\n ngAfterViewInit(): void {\r\n \r\n }\r\n\r\n public verificarDatas() {\r\n if (this.model.dataInicio == null || this.model.dataFim == null) {\r\n this.setDataObrigatoria();\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: 'Por favor, preencha os campo com a data incial e data fim',\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n public setDataObrigatoria() {\r\n this.dataObrigatoria = true;\r\n }\r\n\r\n public async concluir() {\r\n\r\n if(!this.verificarDatas()){\r\n return false;\r\n } \r\n\r\n if(this.model.dataInicio > this.model.dataFim){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: \"Data inicial não pode ser maior que a data final\",\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n return false;\r\n }\r\n\r\n if(this.dataInvalida == true){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: \"Data inválida\",\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n return false;\r\n }\r\n\r\n if(this.houveSugestaoData && this.model.dataFim > this.dataFinalSugerida)\r\n {\r\n Swal.fire({\r\n title: 'Atenção',\r\n text: \"O período informado é maior do que o definido para o tipo de auditoria. Deseja continuar?\",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n if (res.value) {\r\n if (this.verificarDatas()) {\r\n \r\n this.inserirAtualizar();\r\n }\r\n }\r\n });\r\n }else{\r\n if (this.verificarDatas()) {\r\n \r\n this.inserirAtualizar();\r\n }\r\n }\r\n\r\n }\r\n\r\n private async inserirAtualizar(){\r\n \r\n this.model.qtdDias = this.selectedTipoDispensa.quantidadeDiasPadrao;\r\n if(this.model.id && this.model.id != 0){\r\n this.atualizar();\r\n }else{\r\n this.inserir();\r\n }\r\n }\r\n\r\n private async inserir() {\r\n \r\n try{\r\n await this.agentePublicoService.inserirDispensa(this.model)\r\n .then(res => {\r\n if(res.sucesso){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"success\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n });\r\n this.dialogRef.close(true);\r\n }\r\n else{\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n }\r\n });\r\n }catch(err){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n text: err,\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n }\r\n \r\n }\r\n\r\n private async atualizar() {\r\n \r\n try{\r\n await this.agentePublicoService.atualizarDispensa(this.model)\r\n .then(res => {\r\n if(res.sucesso){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"success\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.dialogRef.close(true);\r\n }\r\n else{\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n }\r\n });\r\n }catch(err){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n text: err,\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n }\r\n \r\n }\r\n public async buscarTiposDispensa(){\r\n const tipos = await this.tipoDispensaService\r\n .obter('', true)\r\n .then(res => {\r\n if(res.sucesso)\r\n this.tabelaTipoDispensa = res.dados;\r\n \r\n });\r\n \r\n }\r\n\r\n nomeAcaoBotaoSalvar(): string{\r\n return this.model.id && this.model.id != 0 ? \"Atualizar\" : \"Inserir\"\r\n }\r\n \r\n\r\n public onSelectTpoDispensa(e) {\r\n this.selectedTipoDispensa = this.tabelaTipoDispensa.find(t => t.id === this.model.tipoDispensaId);\r\n this.qtdDias = this.selectedTipoDispensa.quantidadeDiasPadrao;\r\n if (this.model.dataInicio != null && this.model.dataInicio != undefined) {\r\n this.ngOnChangeDataInicio(null);\r\n }\r\n } \r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n \r\n}\r\n\r\n","
\r\n
\r\n
\r\n

{{nomeAcaoBotaoSalvar()}} dispensa

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ item.nome }}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Insira uma data de ínicio.\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Insira uma data de fim.\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
","import { AfterViewInit, Component, Input, OnInit, ViewChild } from \"@angular/core\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IAgentePublicoModel } from \"src/app/models/agente-publico.model\";\r\nimport { IAuditorCoordenacaoModel } from \"src/app/models/auditor-coordenacao.model\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogConfig,\r\n} from \"@angular/material/dialog\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { defaultDataAcessor } from \"src/app/core/helpers/mat-sort-data-accessor\";\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { AgentePublicoService } from \"src/app/services/agente-publico.service\";\r\nimport Swal from 'sweetalert2';\r\nimport { IAgentePublicoDisponibilidadeModel } from \"src/app/models/agente-publico-disponibilidade.model\";\r\nimport { SharedService } from \"src/app/services/shared.service\";\r\nimport { Subscription } from \"rxjs\";\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n\tswitch (property) {\r\n\t case 'nome':\r\n\t\treturn item.pessoa.nome;\r\n\t case 'cpfFormatted':\r\n\t\treturn item.pessoa.cpf;\r\n\t default:\r\n\t\treturn item[property];\r\n\t}\r\n };\r\n\r\n@Component({\r\n\tselector: \"app-aba-disponibilidade\",\r\n\ttemplateUrl: \"./aba-disponibilidade.component.html\",\r\n\tstyleUrls: [\"./aba-disponibilidade.component.scss\"],\r\n})\r\nexport class AgentePublicoAbaDisponibilidadeComponent extends BaseFormComponent{\r\n\t\r\n\t@Input() public visualizar;\r\n\r\n\tclickEventSubscription: Subscription;\r\n\tpublic model : IAgentePublicoModel;\r\n\tpublic aba = 0;\r\n\tpublic selectedModelYears: Array = [];\r\n\tpublic selectedYear: number;\r\n\tpublic tiposTrabalhosInputs: IAgentePublicoDisponibilidadeModel[] = [] as IAgentePublicoDisponibilidadeModel[];\r\n\tpublic disponibilidadeDataSource = new MatTableDataSource([]);\r\n \r\n\tpublic form = new FormGroup({\r\n\t\tnome: new FormControl(null, Validators.required),\r\n\t});\r\n\r\n\r\n\tconstructor(\r\n\t\tpublic route: ActivatedRoute,\r\n\t\tpublic toastr: ToastrService,\r\n\t\tpublic router: Router,\r\n\t\tpublic localeService: BsLocaleService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate agentePublicoService: AgentePublicoService,\r\n\t\tprivate sharedService: SharedService,\r\n\t\t\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\t\tthis.titulo = 'Agente público';\r\n\t\tthis.clickEventSubscription = this.sharedService\r\n\t\t\t.getEvent()\r\n\t\t\t.subscribe(() => {\r\n\t\t\t\tthis.onSalvar();\r\n\t\t\t});\r\n\t}\r\n\r\n \r\n\tasync ngOnInit(): Promise {\r\n\t\tawait this.popularComboAnos();\r\n\t\tthis.buscar();\r\n\t}\r\n\r\n\r\n public async buscar() {\r\n\r\n\tconst res = await this.agentePublicoService.getDadosDisponibilidade(this.id, this.selectedYear);\r\n\tif(res.sucesso){\r\n\t\tthis.model = res.dados;\r\n\t\tthis.titulo = \"Agente Público: \" + this.model.pessoa.nome;\r\n\t\tthis.tiposTrabalhosInputs = this.model.disponibilidades;\r\n\t\tthis.disponibilidadeDataSource = new MatTableDataSource(this.model.disponibilidades);\r\n\t}\r\n\r\n\t}\r\n\r\n\tprivate atualizarModel(values: any) {\r\n\t\tObject.assign(this.model, values);\r\n\t }\r\n\t\r\n\t public onBack() {\r\n\t\tthis.router.navigate(['/agente-publico']);\r\n\t }\r\n\t \r\n\t public cancelar() {\r\n\t\tthis.router.navigate(['/agente-publico']);\r\n\t }\r\n\r\n\t public async popularComboAnos(){\r\n\t\tconst anoAtual = new Date().getFullYear();\r\n\t\tthis.selectedModelYears.push(anoAtual + 4);\r\n\t\tthis.selectedModelYears.push(anoAtual + 3);\r\n\t\tthis.selectedModelYears.push(anoAtual + 2);\r\n\t\tthis.selectedModelYears.push(anoAtual + 1);\r\n\t\tthis.selectedModelYears.push(anoAtual);\r\n\t\tthis.selectedModelYears.push(anoAtual - 1);\r\n\t\tthis.selectedModelYears.push(anoAtual - 2);\r\n\t\tthis.selectedYear = anoAtual;\r\n\t }\r\n\r\n\t public calculateTotal() {\r\n\t\t\r\n\t\tlet total = 0;\r\n\t\tif(this.disponibilidadeDataSource.data.length > 0){\r\n\t\t\ttotal = this.disponibilidadeDataSource.data\r\n\t\t\t.map((item) => item.percentual)\r\n\t\t\t.reduce((acum, currentElement) => {\r\n\t\t\t\treturn acum + currentElement;\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\treturn total;\r\n\t }\r\n\r\n\t public async onSalvar(){\r\n\t\t\r\n\t\ttry{\r\n\t\t\tconst res = await this.agentePublicoService.salvarDadosDisponibilidade(this.model.disponibilidades);\r\n\t\t\tif(res.sucesso)\r\n\t\t\t\tthis.exibirMensagemSucesso(res.mensagem.descricao);\r\n\t\t\telse\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t}catch (err){\r\n\t\t\tthis.exibirMensagemErro(err);\r\n\t\t}\r\n\r\n\t }\r\n\r\n\t public async onSelectTipoAuditoria(element) {\r\n\t\tthis.buscar();\r\n\t }\r\n\r\n}\r\n\r\n","\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t\tTipo Trabalho\t\r\n\t\t\t\t\r\n\t\t\t\t\t{{ element.tipoTrabalho.nome }}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t\tPercentual\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t
TOTAL{{ calculateTotal() }}
\r\n\t\t
\r\n\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\r\n\r\n\t
\r\n\t
\r\n\r\n","import { Component, ViewChild, EventEmitter, Output } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IAgentePublicoModel } from 'src/app/models/agente-publico.model';\r\nimport { AgentePublicoService } from 'src/app/services/agente-publico.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-agente-publico-form',\r\n templateUrl: './agente-publico-form.component.html',\r\n styleUrls: ['./agente-publico-form.component.scss']\r\n})\r\nexport class AgentePublicoFormComponent extends BaseFormComponent {\r\n public model : IAgentePublicoModel;\r\n public aba = 0;\r\n public showBtnSalvar = false;\r\n @Output() public abaEmitter: EventEmitter = new EventEmitter();\r\n \r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n cpf: new FormControl('', Validators.required),\r\n numeroFuncional: new FormControl('', Validators.required)\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private agentePublicoService: AgentePublicoService,\r\n public matDialog: MatDialog,\r\n private sharedService: SharedService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n this.titulo = 'Agente público';\r\n }\r\n\r\n async ngOnInit() {\r\n await this.agentePublicoService.obterPorId(this.id).then(res => {\r\n if(res.sucesso){\r\n this.model = res.dados;\r\n this.titulo = `Agente público: ${this.model.pessoa.nome}`\r\n }\r\n })\r\n }\r\n\r\n public salvar(){\r\n this.sharedService.sendSalvarEvent();\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public mudarAba(ind: number) {\r\n this.aba = ind;\r\n this.abaEmitter.next(this.aba);\r\n this.showBtnSalvar = this.aba === 1 ? true : false;\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/agente-publico']);\r\n }\r\n \r\n public cancelar() {\r\n this.router.navigate(['/agente-publico']);\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Agente público\r\n
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n\r\n
    \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tDados básicos\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tDisponibilidade\r\n\t\t\t\t\t\t\t
  • \r\n
  • \r\n\t\t\t\t\t\t\t\tDispensas\r\n\t\t\t\t\t\t\t
  • \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\nimport { IAgentePublicoModel } from 'src/app/models/agente-publico.model';\r\nimport { IFiltroAgentePublico } from 'src/app/models/filtros/filtro-agente-publico.model';\r\nimport { AgentePublicoService } from 'src/app/services/agente-publico.service';\r\nimport { IAgentePublicoViewModel } from 'src/app/models/viewmodels/agente-publico-viewmodel';\r\nimport { formatDate } from '@angular/common';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'nome':\r\n return item.pessoa.nome;\r\n case 'cpfFormatted':\r\n return item.pessoa.cpf;\r\n default:\r\n return item[property];\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-agente-publico-list',\r\n templateUrl: './agente-publico-list.component.html',\r\n styleUrls: ['./agente-publico-list.component.scss']\r\n})\r\nexport class AgentePublicoListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IAgentePublicoModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'cpfFormatted', 'numeroFuncional', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n public filtro = {} as IFiltroAgentePublico;\r\n public totalItens: number;\r\n public pageEvent: any;\r\n public model : IAgentePublicoViewModel;\r\n\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private agentePublicoService: AgentePublicoService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n this.configurarFiltro();\r\n this.buscar();\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n public toolTipDataUltimaAtualizacao(){\r\n let toolTip = 'Última atualização: ';\r\n\r\n if(this.model && this.model.ultimaAtualizacao)\r\n toolTip += `${formatDate(this.model.ultimaAtualizacao,'dd/MM/yyyy HH:mm','pt-BR')}`;\r\n return toolTip;\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n this.agentePublicoService\r\n .obterViewModel(this.filtro)\r\n .then((res) => {\r\n this.model = res.dados;\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n this.configurarFiltro();\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemAlerta(err);\r\n })\r\n }\r\n\r\n public sincronizar() {\r\n \r\n Swal.fire({\r\n title: 'Atualização de agentes públicos',\r\n text:\r\n `${this.toolTipDataUltimaAtualizacao()}. Deseja realmente atualizar a base? (Isso pode levar um tempo).`,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(async (result) => {\r\n if (result.value) {\r\n this.agentePublicoService\r\n .sincronizar()\r\n .then((res) =>{\r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.toolTipDataUltimaAtualizacao();\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err)=>{\r\n this.exibirMensagemAlerta(err);\r\n });\r\n }\r\n });\r\n \r\n }\r\n\r\n \r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/agente-publico/${id}`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.idAgentePublico !== item.idAgentePublico ? item : null;\r\n }\r\n\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/agente-publico/${id}/visualizar`]);\r\n }\r\n\r\n private configurarFiltro() {\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchNome;\r\n this.filtro.direcao = this.sort.direction;\r\n this.filtro.colunaOrder = this.sort.active;\r\n }\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n}\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n\r\n public reativar(id: number) {\r\n this.agentePublicoService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Agente público reativado com sucesso.');\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.agentePublicoService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Agente público inativado com sucesso.');\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Agentes públicos
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Agentes públicos\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Nome {{element.pessoa.nome}} CPF {{element.pessoa.cpfFormatted}} Nº Funcional {{element.numeroFuncional}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { IAprovacaoModel } from 'src/app/models/aprovacao.model';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IFiltroAprovacao } from 'src/app/models/filtros/filtro-aprovacao.model';\r\nimport { IFiltroLog } from 'src/app/models/filtros/filtro-log.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AprovacaoService } from 'src/app/services/aprovacao.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\nimport { ModalAvaliarComponent } from './modal-avaliar/modal-avaliar.component';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'tipoTrabalho':\r\n return item.tipoDocumentoAprovacao.descricao;\r\n case 'situacao':\r\n return item.situacao.nome;\r\n default:\r\n return item[property];\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-aprovacao-list',\r\n templateUrl: './aprovacao-list.component.html',\r\n styleUrls: ['./aprovacao-list.component.scss'],\r\n})\r\nexport class AprovacaoListComponent extends BaseListComponent implements OnInit {\r\n public model: IAprovacaoModel = {} as IAprovacaoModel;\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IAprovacaoModel;\r\n public displayedColumns: string[] = ['selecao', 'tipoTrabalho', 'nome', 'situacao'];\r\n public searchNome: string;\r\n public searchTodos: string;\r\n public semDados = true;\r\n public searchSituacaoDocumento: number;\r\n public searchTipoDocumento: number;\r\n\r\n public pageEvent: any;\r\n private filtro: IFiltroAprovacao = {} as IFiltroAprovacao;\r\n public totalItens: number;\r\n\r\n public filtradoPor = 'Todos';\r\n public chamadaPendencia = false;\r\n\r\n @ViewChild('TableOnePaginator', { static: true })\r\n tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true })\r\n paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true })\r\n sort: MatSort;\r\n\r\n constructor(\r\n private aprovacaoService: AprovacaoService,\r\n private router: Router,\r\n public matDialog: MatDialog,\r\n public authService: AuthService,\r\n public route: ActivatedRoute\r\n ) {\r\n super();\r\n const id = this.route.snapshot.paramMap.get(\"id\");\r\n if (id != undefined && id != \"\") {\r\n this.chamadaPendencia = true;\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Aprovacoes,\r\n EnumAcaoRecurso.Consultar\r\n );\r\n this.permissoes.relatoria = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Aprovacoes,\r\n EnumAcaoRecurso.Relatoria\r\n );\r\n this.permissoes.avaliar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Aprovacoes,\r\n EnumAcaoRecurso.Avaliar\r\n );\r\n this.permissoes.visualizar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Aprovacoes,\r\n EnumAcaoRecurso.Visualizar\r\n );\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.configFiltro();\r\n this.buscar();\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n public buscar() {\r\n this.configFiltro();\r\n this.selectedModel = null;\r\n\r\n this.aprovacaoService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n if (this.chamadaPendencia) {\r\n var id = parseInt(this.route.snapshot.paramMap.get(\"id\"));\r\n var tipoDocumentoAprovacao = parseInt(this.route.snapshot.paramMap.get(\"tipoDocumentoAprovacao\"));\r\n this.selectedModel = res.dados.resultado.filter(d => d.id == id && d.tipoDocumentoAprovacao.codigo == tipoDocumentoAprovacao)[0];\r\n if (this.selectedModel == undefined) {\r\n this.tableOnePaginator.pageIndex = this.tableOnePaginator.pageIndex + 1;\r\n this.buscar();\r\n } else {\r\n this.chamadaPendencia = false;\r\n if (this.selectedModel?.situacao?.codigo != 4)\r\n this.modalAvaliar();\r\n else {\r\n var id = parseInt(this.route.snapshot.paramMap.get(\"id\"));\r\n this.linhaTempo(id);\r\n }\r\n }\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n })\r\n .finally(() => { });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n\r\n public modalAvaliar() {\r\n try {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-avaliar';\r\n dialogConfig.width = '700px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n id: this.selectedModel.id,\r\n tipoDocumento: this.selectedModel.tipoDocumentoAprovacao,\r\n };\r\n\r\n const modal = this.matDialog.open(ModalAvaliarComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n this.buscar();\r\n });\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } finally {\r\n }\r\n }\r\n\r\n public linhaTempo(id: number) {\r\n // PEAC\r\n if (this.selectedModel.tipoDocumentoAprovacao.codigo === 1) {\r\n this.router.navigate([`/pea/${id}/visualizar`], { queryParams: { aba: 6 } });\r\n }\r\n\r\n // PAAC\r\n if (this.selectedModel.tipoDocumentoAprovacao.codigo === 2) {\r\n this.router.navigate([`/paa/${id}/visualizar`], { queryParams: { aba: 6 } });\r\n }\r\n\r\n // OPA\r\n if (this.selectedModel.tipoDocumentoAprovacao.codigo === 3) {\r\n this.router.navigate([`/opa/${id}/visualizar`], { queryParams: { aba: 6 } });\r\n }\r\n\r\n // OSA\r\n if (this.selectedModel.tipoDocumentoAprovacao.codigo === 4) {\r\n this.router.navigate([`/osa/${id}/visualizar`], { queryParams: { aba: 6 } });\r\n }\r\n\r\n // Relatório de Auditoria\r\n if (this.selectedModel.tipoDocumentoAprovacao.codigo === 6) {\r\n this.router.navigate([`/auditoria/${id}/visualizar`], { queryParams: { aba: 6 } });\r\n }\r\n\r\n // Planejamento\r\n if (this.selectedModel.tipoDocumentoAprovacao.codigo === 7) {\r\n this.router.navigate([`/planejamento/${id}/visualizar`], { queryParams: { aba: 6 } });\r\n }\r\n }\r\n\r\n public relatoria(id: number) {\r\n if (this.selectedModel.tipoDocumentoAprovacao.codigo === 1) {\r\n this.router.navigate([`/pea/${id}/editar-relatoria`], { queryParams: { aba: 5 } });\r\n } else if (this.selectedModel.tipoDocumentoAprovacao.codigo === 2) {\r\n this.router.navigate([`/paa/${id}/editar-relatoria`], { queryParams: { aba: 5 } });\r\n } else if (this.selectedModel.tipoDocumentoAprovacao.codigo === 3) {\r\n this.router.navigate([`/opa/${id}/editar-relatoria`], { queryParams: { aba: 5 } });\r\n } else if (this.selectedModel.tipoDocumentoAprovacao.codigo === 7) {\r\n this.router.navigate([`/planejamento/${id}/editar-relatoria`], { queryParams: { aba: 5 } });\r\n } else if (this.selectedModel.tipoDocumentoAprovacao.codigo === 4) {\r\n this.router.navigate([`/osa/${id}/editar-relatoria`], { queryParams: { aba: 5 } });\r\n }\r\n }\r\n\r\n configFiltro() {\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.colunaOrder = this.sort.active;\r\n this.filtro.direcao = this.sort.direction;\r\n this.filtro.searchSituacaoDocumento = this.searchSituacaoDocumento;\r\n this.filtro.searchTipoDocumento = this.searchTipoDocumento;\r\n this.filtro.pesquisa = this.searchNome;\r\n }\r\n\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n }\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Avaliação do Tipo de Trabalho
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Avaliação do Tipo de Trabalho\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Avaliar\r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n Todos\r\n\r\n PEAC\r\n\r\n PAAC\r\n\r\n OPA\r\n\r\n OSA\r\n\r\n Planejamento\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n Todos\r\n\r\n Em aprovação\r\n\r\n Homologados\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Tipo de\r\n Trabalho \r\n {{element?.tipoDocumentoAprovacao?.descricao}} Nome\r\n {{element?.nome}} \r\n Situação \r\n Homologado\r\n Em\r\n Aprovação\r\n
\r\n
Nenhum registro\r\n encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport Inputmask from 'inputmask';\r\nimport { ModalCancelarComponent } from '../../../shared/components/modal-cancelar/modal-cancelar-component';\r\nimport Swal from 'sweetalert2';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { AprovacaoService } from 'src/app/services/aprovacao.service';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { ModalEntranharComponent } from '../../paa-elaborar/modal-entranhar/modal-entranhar.component';\r\nimport { Router } from '@angular/router';\r\nimport { PeaService } from 'src/app/services/pea.service';\r\nimport { PaaService } from 'src/app/services/paa.service';\r\nimport { OpaService } from 'src/app/services/opa.service';\r\nimport { ModalAutuacaoComponent } from '../../pea-form/modal-autuacao/modal-autuacao.component';\r\nimport { PlanejamentoService } from 'src/app/services/planejamento.service';\r\nimport { OsaService } from 'src/app/services/osa.service';\r\nimport { IEntranharDocumentoModel } from 'src/app/models/edocs/entranhar-documento.model';\r\nimport { IAutuacaoModel } from 'src/app/models/edocs/autuacao.model';\r\nimport { ParametrizacaoService } from 'src/app/services/parametrizacao.service';\r\n\r\n@Component({\r\n selector: 'app-modal-avaliar',\r\n templateUrl: './modal-avaliar.component.html',\r\n styleUrls: ['./modal-avaliar.component.scss'],\r\n})\r\nexport class ModalAvaliarComponent\r\n implements OnInit, AfterViewInit {\r\n public tipoDocumento: IEnumModel;\r\n public id: number;\r\n public situacaoAvaliacao = '2';\r\n public comentario: string;\r\n public ultimoNivel: boolean;\r\n public modelEntranhar = {} as IEntranharDocumentoModel;\r\n public modelAutuacao = {} as IAutuacaoModel;\r\n public semEntranhar: boolean;\r\n public comentarioHomologacao = {} as IEntranharDocumentoModel;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n public aprovacaoService: AprovacaoService,\r\n public peaService: PeaService,\r\n public paaService: PaaService,\r\n public opaService: OpaService,\r\n public osaService: OsaService,\r\n public parametrizacaoService: ParametrizacaoService,\r\n public planejamentoService: PlanejamentoService,\r\n public router: Router,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.id = data.id;\r\n this.tipoDocumento = data.tipoDocumento;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.parametrizacaoService.obterPorId('remove-edocs-opa')\r\n .then(res => {\r\n if (res.dados?.valor === 'true')\r\n this.semEntranhar = true;\r\n else this.semEntranhar = false;\r\n });\r\n }\r\n\r\n concluir() {\r\n\r\n if (!this.comentario) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: 'É necessário preencher o comentário.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n\r\n Swal.fire({\r\n title: 'Avaliação',\r\n text:\r\n `Deseja realmente ${this.situacaoAvaliacao.toString() === '1' ? 'aprovar' : 'reprovar'} esse ${this.tipoDocumento?.descricao}?`,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(async (result) => {\r\n if (result.value) {\r\n const verificacao = await this.verificarFluxoAprovacao();\r\n\r\n if (verificacao) {\r\n if (!this.ultimoNivel) {\r\n this.aprovarReprovarTipoTrabalho();\r\n }\r\n else if (this.ultimoNivel === true) {\r\n this.homologarTipoTrabalho();\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n public async verificarFluxoAprovacao() {\r\n let res;\r\n switch (this.tipoDocumento?.codigo) {\r\n case 1: { // Pea\r\n res = await this.peaService.verificarNivelAprovacao(this.id);\r\n break;\r\n }\r\n case 2: { // Paa\r\n res = await this.paaService.verificarNivelAprovacao(this.id);\r\n break;\r\n }\r\n case 3: { // Opa\r\n res = await this.opaService.verificarNivelAprovacao(this.id);\r\n break;\r\n }\r\n case 7: { // Planejamento\r\n res = await this.planejamentoService.verificarNivelAprovacao(this.id);\r\n break;\r\n }\r\n case 4: { // Osa\r\n res = await this.osaService.verificarNivelAprovacao(this.id);\r\n break;\r\n }\r\n }\r\n\r\n if (res.sucesso) {\r\n this.ultimoNivel = res.dados.ultimoNivel;\r\n return true;\r\n }\r\n else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.dados.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return false;\r\n }\r\n }\r\n\r\n public aprovarReprovarTipoTrabalho() {\r\n this.aprovacaoService.aprovarReprovar(this.id, this.tipoDocumento?.codigo, parseInt(this.situacaoAvaliacao, null), this.comentario)\r\n .then(res => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Tipo de trabalho atualizado com sucesso',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.dialogRef.close(true);\r\n }\r\n else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n });\r\n }\r\n\r\n public homologarTipoTrabalho() {\r\n if (this.situacaoAvaliacao === '1') {\r\n switch (this.tipoDocumento?.codigo) {\r\n case 1: { // Pea\r\n this.homologarPea();\r\n break;\r\n }\r\n case 2: { // Paa\r\n this.homologarPaa();\r\n break;\r\n }\r\n case 3: { // Opa\r\n this.homologarOpa();\r\n break;\r\n }\r\n case 7: { // Planejamento\r\n this.homologarPlanejamento();\r\n break;\r\n }\r\n case 4: { // Osa\r\n this.homologarOsa();\r\n break;\r\n }\r\n }\r\n }\r\n else {\r\n this.aprovarReprovarTipoTrabalho();\r\n }\r\n\r\n }\r\n\r\n public async homologarPaa() {\r\n\r\n //COMENTADO ATÉ DEFINIÇÃO DE V2 EDOCS\r\n // const dialogConfig = new MatDialogConfig();\r\n // dialogConfig.id = 'modal-component';\r\n // dialogConfig.width = '650px';\r\n // dialogConfig.hasBackdrop = true;\r\n // dialogConfig.disableClose = true;\r\n // dialogConfig.data = { tipoTrabalhoId: this.id,\r\n // tipoTrabalho: 1, comentario: this.comentario};\r\n // const modal = this.matDialog.open(ModalEntranharComponent, dialogConfig);\r\n // modal.afterClosed().subscribe((sucesso) => {\r\n // if (sucesso) {\r\n // this.router.navigate(['/pendencias']);\r\n // }\r\n // });\r\n\r\n this.modelEntranhar = {\r\n papelAutuadorId: '',\r\n comentario: this.comentario,\r\n }\r\n\r\n await this.paaService.homologar(this.id, this.modelEntranhar).then((res) =>{\r\n if(res.sucesso){\r\n this.exibirMensagem(true, 'Item homologado com sucesso!');\r\n this.dialogRef.close(true);\r\n this.router.navigate(['/pendencias']);\r\n }else{\r\n this.exibirMensagem(false, res.mensagem.descricao);\r\n }\r\n }).catch(err => this.exibirMensagem(false, err.mensagem.descricao));;\r\n\r\n }\r\n\r\n public async homologarOpa() {\r\n try {\r\n if (this.semEntranhar) {\r\n const res = await this.opaService.homologar(this.id, this.comentarioHomologacao);\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Item homologado com sucesso!',\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n this.dialogRef.close(true);\r\n this.matDialog.closeAll();\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n }\r\n } else {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n tipoTrabalhoId: this.id,\r\n tipoTrabalho: 2,\r\n comentario: this.comentario\r\n };\r\n\r\n const modal = this.matDialog.open(ModalEntranharComponent, dialogConfig);\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.router.navigate(['/pendencias']);\r\n }\r\n });\r\n }\r\n } catch (error) {\r\n console.error('Erro ao homologar:', error);\r\n }\r\n}\r\n\r\n\r\n\r\n public async homologarPlanejamento() {\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = { tipoTrabalhoId: this.id,\r\n tipoTrabalho: 3, comentario: this.comentario };\r\n const modal = this.matDialog.open(ModalEntranharComponent, dialogConfig);\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.router.navigate(['/pendencias']);\r\n }\r\n });\r\n }\r\n\r\n public async homologarOsa() {\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = { tipoTrabalhoId: this.id, tipoTrabalho: 4, comentario: this.comentario };\r\n const modal = this.matDialog.open(ModalEntranharComponent, dialogConfig);\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.router.navigate(['/pendencias']);\r\n }\r\n });\r\n }\r\n\r\n public async homologarPea() {\r\n await this.peaService.homologar(this.id, this.comentario).then((res) =>{\r\n if(res.sucesso){\r\n this.exibirMensagem(true, 'Item homologado com sucesso!');\r\n this.dialogRef.close(true);\r\n this.router.navigate(['/pendencias']);\r\n }else{\r\n this.exibirMensagem(false, res.mensagem.descricao);\r\n }\r\n }).catch(err => this.exibirMensagem(false, err.mensagem.descricao));\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n public cancelar() {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.data = { interno: true };\r\n this.matDialog.open(ModalCancelarComponent, dialogConfig).afterClosed();\r\n }\r\n\r\n exibirMensagem(sucesso: boolean,msg: string){\r\n if(sucesso){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: msg,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }else{\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: msg,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Avaliação

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { AuditoriaService } from 'src/app/services/auditoria.service';\r\n\r\n@Component({\r\n selector: 'app-auditoria-list',\r\n templateUrl: './auditoria-list.component.html',\r\n styleUrls: ['./auditoria-list.component.scss']\r\n})\r\nexport class AuditoriaListComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([])\r\n public selectedModel: any;\r\n public semDados!: boolean;\r\n public pageEvent: any;\r\n public totalItens: number;\r\n public searchPesquisa: string;\r\n public searchAtivo = true;\r\n public filtro = new FiltroModel();\r\n public displayedColumn: string[] = ['numero', 'ano', 'dataFim', 'dataInicio', 'status', 'ativo',];\r\n\r\n @ViewChild('TableOnePaginator', {static: true}) tableOnePaginator: MatPaginator;\r\n @ViewChild('tabela1') public tabela1: MatSort;\r\n\r\n constructor(\r\n public router: Router,\r\n public service: AuditoriaService\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.configurarFiltro();\r\n this.obter();\r\n this.configurarDatasource();\r\n }\r\n\r\n obter() {\r\n this.configurarFiltro()\r\n this.service.obterPorFiltros(this.filtro).subscribe((resultado) => {\r\n if(resultado.sucesso){\r\n this.dataSource = new MatTableDataSource(resultado?.dados?.resultado);\r\n this.dataSource.sort = this.tabela1;\r\n this.semDados = this.dataSource.data.length === 0;\r\n this.totalItens = resultado.dados.totalItens;\r\n }\r\n })\r\n }\r\n\r\n private configurarDatasource() {\r\n this.dataSource.sort = this.tabela1;\r\n }\r\n\r\n private configurarFiltro() {\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.colunaOrder = \"Id\";\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchPesquisa;\r\n }\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.obter();\r\n }\r\n\r\n selecionar(item: any): void {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Auditoria
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Auditoria\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Nº OSA {{element?.numero}} Ano {{element?.ano}} Data Inicio {{element?.dataInicio | date:'dd/MM/yyyy'}} Data Fim {{element?.dataFim | date:'dd/MM/yyyy'}} Status \r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n Situação \r\n Ativo\r\n Inativo\r\n
\r\n\r\n
Nenhum registro encontrado
\r\n\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ICalendarioModel } from 'src/app/models/calendario.model';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { AcessoCidadaoService } from 'src/app/services/acesso-cidadao.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { CalendarioService } from 'src/app/services/calendario.service';\r\nimport $ from 'jquery';\r\n\r\n@Component({\r\n selector: 'app-calendario-form',\r\n templateUrl: './calendario-form.component.html',\r\n styleUrls: ['./calendario-form.component.scss']\r\n})\r\nexport class CalendarioFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ICalendarioModel = {} as ICalendarioModel;\r\n public modelAuditor: ICalendarioModel = {} as ICalendarioModel;\r\n public auditoresDataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public fixo = '0';\r\n\r\n public emunTipoFeriado = [\r\n {\r\n codigo: 0,\r\n descricao: 'Selecione...'\r\n },\r\n {\r\n codigo: 3,\r\n descricao: 'Nacional'\r\n },\r\n {\r\n codigo: 1,\r\n descricao: 'Municipal'\r\n },\r\n {\r\n codigo: 2,\r\n descricao: 'Estadual'\r\n },\r\n {\r\n codigo: 4,\r\n descricao: 'Ponto Facultativo'\r\n },\r\n {\r\n codigo: 5,\r\n descricao: 'Outros'\r\n }] as IEnumModel[];\r\n\r\n public opcoesFixo = [\r\n {\r\n codigo: 1,\r\n descricao: 'Sim'\r\n },\r\n {\r\n codigo: 0,\r\n descricao: 'Não'\r\n }] as IEnumModel[];\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n fixo: new FormControl(''),\r\n data: new FormControl(null, Validators.required),\r\n tipoFeriadoId: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private calendarioService: CalendarioService,\r\n private acessoCidadaoService: AcessoCidadaoService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Calendário';\r\n } else {\r\n this.titulo = 'Editar Calendário #' + this.id;\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.calendarioService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n this.fixo = this.model.fixo;\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Calendário';\r\n } else {\r\n this.titulo = 'Editar Calendário - ' + this.model.nome;\r\n }\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Calendário - ' + this.model.nome;\r\n }\r\n\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/calendario']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(\r\n {\r\n fixo: this.model.fixo ? '1' : '0',\r\n nome: this.model.nome,\r\n tipoFeriado: this.model.tipoFeriado,\r\n data: this.model.data ? new Date(this.model.data) : null,\r\n ativo: this.model.ativo,\r\n tipoFeriadoId: this.model.tipoFeriado ? this.model.tipoFeriado.codigo : 0\r\n } as ICalendarioModel);\r\n } catch (err) {\r\n this.exibirMensagemAlerta(err);\r\n this.router.navigate(['/calendario']);\r\n } \r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean)\r\n {\r\n if (this.form.invalid) {\r\n this.exibirMensagemErro(\"Formulário invalido\");\r\n return;\r\n }\r\n\r\n this.submit = true;\r\n \r\n this.atualizarModel(this.form.value);\r\n const tipoFeriado = parseInt(this.form.get('tipoFeriadoId').value) ?? 0 as number;\r\n this.model.tipoFeriado = { codigo: tipoFeriado } as IEnumModel;\r\n this.model.fixo = this.model.fixo === '1' ? 'true' : 'false';\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.calendarioService.atualizar(this.model);\r\n } else {\r\n res = await this.calendarioService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n \r\n if(salvarEFechar == true){\r\n this.router.navigate(['/calendario']);\r\n }else{\r\n this.router.navigate([`/calendario/${res.dados.id}`]);\r\n }\r\n \r\n } else {\r\n this.submit = false;\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.submit = false;\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n } \r\n }\r\n\r\n public async onSubmit() {\r\n this.salvarDados(false);\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/calendario']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Calendário\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{ item.descricao }}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{ item.descricao }}\r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n Cancelar\r\n \r\n\r\n \r\n Sair\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { ICalendarioModel } from 'src/app/models/calendario.model';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CalendarioService } from 'src/app/services/calendario.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'tipoFeriado':\r\n return item.tipoFeriado.descricao;\r\n default:\r\n return item[property];\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-calendario-list',\r\n templateUrl: './calendario-list.component.html',\r\n styleUrls: ['./calendario-list.component.scss']\r\n})\r\nexport class CalendarioListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ICalendarioModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'data', 'tipoFeriado', 'fixo', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n \r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private calendarioservice: CalendarioService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar(); \r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n\r\n ngAfterViewInit() {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/calendario/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.calendarioservice\r\n .obter(this.searchNome, this.searchAtivo, false)\r\n .then((res) => { \r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.calendarioservice\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Feriado reativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.calendarioservice\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Feriado inativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/calendario/${id}`]);\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/calendario/${id}/visualizar`]);\r\n }\r\n\r\n public excluir(id: number){\r\n this.calendarioservice\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Feriado excluído com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }) \r\n .catch ((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally (() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Calendário\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Novo\r\n \r\n \r\n Editar\r\n \r\n \r\n \r\n Reativar\r\n \r\n \r\n \r\n Inativar\r\n \r\n \r\n \r\n Excluir\r\n \r\n\r\n \r\n\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Exibir todos\r\n Exibir somente ativos\r\n Exibir somente inativos\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Nome\r\n \r\n {{ element.nome }}\r\n \r\n\r\n \r\n \r\n Data\r\n \r\n \r\n
\r\n {{ element.data | date: \"dd/MM\" }}\r\n
\r\n
\r\n {{ element.data | date: \"dd/MM/yyyy\" }}\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n Tipo\r\n \r\n \r\n {{ element.tipoFeriado.descricao }}\r\n \r\n \r\n\r\n \r\n \r\n Fixo\r\n \r\n \r\n {{ element.fixo ? \"Sim\" : \"Não\" }}\r\n \r\n \r\n\r\n \r\n \r\n Situação\r\n \r\n \r\n Ativo\r\n Inativo\r\n \r\n \r\n \r\n \r\n
\r\n Nenhum registro encontrado.\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ICapituloRelatorioModel } from 'src/app/models/capitulo-relatorio.model';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { CapituloRelatorioService } from 'src/app/services/capitulo-relatorio.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-capitulo-relatorio-form',\r\n templateUrl: './capitulo-relatorio-form.component.html',\r\n styleUrls: ['./capitulo-relatorio-form.component.scss']\r\n})\r\nexport class CapituloRelatorioFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ICapituloRelatorioModel = {} as ICapituloRelatorioModel;\r\n public enumTipo = [] as IEnumModel[];\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n tipoId: new FormControl(null, Validators.required),\r\n conteudo: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private capituloRelatorioService: CapituloRelatorioService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Capitulo de Relatório';\r\n } else {\r\n this.titulo = 'Editar Capitulo de Relatório #' + this.id;\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.capituloRelatorioService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n } else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/capitulos-relatorio']);\r\n return;\r\n }\r\n }\r\n\r\n await this.tabelaDominioService.obterTipoCapituloRelatorio().then((res) => this.enumTipo = res.dados),\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/capitulos-relatorio']);\r\n } \r\n }\r\n\r\n public async onSubmit() {\r\n if (this.form.invalid) {\r\n this.toastr.warning('Formulário inválido!', 'Atenção');\r\n return;\r\n }\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.capituloRelatorioService.atualizar(this.model);\r\n } else {\r\n res = await this.capituloRelatorioService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n this.toastr.success(res.mensagem.descricao, 'Sucesso');\r\n this.router.navigate(['/capitulos-relatorio']);\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n\r\n this.toastr.warning(validacoes, res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n } \r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/capitulos-relatorio']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Tipos de Dispensa\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { ICapituloRelatorioModel } from 'src/app/models/capitulo-relatorio.model';\r\nimport { CapituloRelatorioService } from 'src/app/services/capitulo-relatorio.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\n\r\n@Component({\r\n selector: 'app-capitulo-relatorio-list',\r\n templateUrl: './capitulo-relatorio-list.component.html',\r\n styleUrls: ['./capitulo-relatorio-list.component.scss']\r\n})\r\nexport class CapituloRelatorioListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ICapituloRelatorioModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private capituloRelatorioService: CapituloRelatorioService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/capitulos-relatorio/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.capituloRelatorioService\r\n .obter(this.searchNome, this.searchAtivo, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.capituloRelatorioService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.toastr.success('Registro reativado com sucesso!', 'Sucesso');\r\n } else {\r\n this.toastr.warning(res.mensagem.descricao, 'Atenção');\r\n }\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.capituloRelatorioService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.toastr.success('Registro inativado com sucesso!', 'Sucesso');\r\n } else {\r\n this.toastr.warning(res.mensagem.descricao, 'Atenção');\r\n }\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/capitulos-relatorio/${id}`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Capítulos de Relatório
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Capítulos de Relatório\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nome {{element.nome}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ICategoriaRiscoModel } from 'src/app/models/categoria-risco.model';\r\nimport { CategoriaRiscoService } from 'src/app/services/categoria-risco.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\n\r\n@Component({\r\n selector: 'app-categoria-risco-form',\r\n templateUrl: './categoria-risco-form.component.html',\r\n styleUrls: ['./categoria-risco-form.component.scss']\r\n})\r\nexport class CategoriaRiscoFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ICategoriaRiscoModel = {} as ICategoriaRiscoModel;\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required)\r\n});\r\n\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private categoriaRiscoService: CategoriaRiscoService,\r\n public matDialog: MatDialog\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Categoria de Risco';\r\n }\r\n\r\n }\r\n\r\n async ngOnInit() {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.categoriaRiscoService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n if (this.visualizar){\r\n this.titulo = 'Visualizar Categoria de Risco - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Categoria de Risco - ' + this.model.nome;\r\n }\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n this.router.navigate(['/categoria-risco']);\r\n return;\r\n }\r\n }\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem);\r\n this.router.navigate(['/tipo-enfase']);\r\n }\r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean){\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n this.submit = true;\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.categoriaRiscoService.atualizar(this.model);\r\n } else {\r\n res = await this.categoriaRiscoService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n if(salvarEFechar == true)\r\n this.router.navigate(['/categoria-risco']);\r\n else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/categoria-risco/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem);\r\n } \r\n\r\n }\r\n\r\n public async onSubmit() {\r\n this.salvarDados(false);\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n if(this.form.dirty){\r\n const dialogConfig = new MatDialogConfig();\r\n \r\n const modal = this.matDialog.open(ModalCancelarComponent, dialogConfig);\r\n modal.afterClosed().subscribe((resultado) => {\r\n if (resultado == true) {\r\n this.router.navigate(['/categoria-risco']);\r\n }\r\n });\r\n\r\n }else{\r\n this.router.navigate(['/categoria-risco']);\r\n }\r\n }\r\n \r\n public cancelar() {\r\n this.router.navigate(['/categoria-risco']);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Categoria de Risco\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n ","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { ICategoriaRiscoModel } from 'src/app/models/categoria-risco.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CategoriaRiscoService } from 'src/app/services/categoria-risco.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'nome': return item.nome.trim().toLowerCase(); \r\n case 'descricao': return item.descricao.trim().toLowerCase(); \r\n case 'ativo':\r\n return item.ativo; \r\n default:\r\n return item.nome.trim().toLowerCase();\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-categoria-risco-list',\r\n templateUrl: './categoria-risco-list.component.html',\r\n styleUrls: ['./categoria-risco-list.component.scss']\r\n})\r\nexport class CategoriaRiscoListComponent extends BaseListComponent {\r\n// declarar aqui as variavis\r\npublic dataSource = new MatTableDataSource([]);\r\npublic selectedModel: ICategoriaRiscoModel;\r\npublic displayedColumns: string[] = ['selecao', 'nome', 'descricao','ativo'];\r\npublic searchNome: string;\r\npublic searchAtivo = true;\r\npublic semDados = true;\r\npublic permissoes: IPermissaoModel;\r\npublic filtro = {} as FiltroModel;\r\npublic totalItens: number;\r\npublic pageEvent: any;\r\n\r\n\r\n@ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n@ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private categoriaRiscoService: CategoriaRiscoService,\r\n private router: Router\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n this.configurarFiltro();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.configurarFiltro();\r\n this.buscar();\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n}\r\n\r\npublic novo() {\r\n this.router.navigate(['/categoria-risco/novo']);\r\n}\r\n\r\npublic buscar() {\r\n this.selectedModel = null;\r\n this.categoriaRiscoService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.totalItens = res.dados.totalItens;\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n}\r\n\r\npublic reativar(id: number) {\r\n this.categoriaRiscoService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Categoria de Risco reativado com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n}\r\n\r\npublic inativar(id: number) {\r\n this.categoriaRiscoService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Categoria de Risco inativado com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n}\r\n\r\npublic editar(id: number) {\r\n this.router.navigate([`/categoria-risco/${id}`]);\r\n}\r\n\r\npublic selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n}\r\n\r\npublic excluir(id: number) {\r\n this.categoriaRiscoService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Categoria de Risco excluído com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n}\r\n\r\npublic visualizar(id: number) {\r\n this.router.navigate([`/categoria-risco/${id}/visualizar`]);\r\n}\r\n\r\nprivate configurarFiltro() {\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.colunaOrder = this.sort.active;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchNome;\r\n this.filtro.direcao = this.sort.direction;\r\n}\r\n\r\nsortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n}\r\n\r\npageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n}\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Categoria de Risco
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Categoria de Risco\r\n

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Nome {{element.nome}} Descrição {{element.descricao}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n ","import { IRecomendacaoModel } from './../../models/recomendacao.model';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IQuestaoModel } from 'src/app/models/questao.model';\r\nimport { IQuestaoProcedimentoAuditoriaModel } from 'src/app/models/questao-procedimento-auditoria.model';\r\nimport { IConstatacaoModel } from 'src/app/models/constatacao.model';\r\nimport { IMatrizPlanejamentoModel } from 'src/app/models/matriz-planejamento.model';\r\nimport { IMatrizPlanejamentoQuestaoModel } from 'src/app/models/matriz-planejamento-questao.model';\r\nimport { IConstatacaoRecomendacaoModel } from 'src/app/models/constatacao-recomendacao.model';\r\nimport { ISubtipoAuditoriaMatrizPlanejamentoModel } from 'src/app/models/subtipo-auditoria-matriz-planejamento.model';\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { IQuestaoConstatacaoModel } from 'src/app/models/questao-constatacao.model';\r\nimport { RecomendacaoService } from 'src/app/services/recomendacao.service';\r\nimport { ConstatacaoService } from 'src/app/services/constatacao.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { ModalRecomendacaoComponent } from './modal-recomendacao/modal-recomendacao.component';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport Swal from 'sweetalert2';\r\n\r\n\r\n@Component({\r\n selector: 'app-constatacao-form',\r\n templateUrl: './constatacao-form.component.html',\r\n styleUrls: ['./constatacao-form.component.scss']\r\n})\r\nexport class ConstatacaoFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IConstatacaoModel = {} as IConstatacaoModel;\r\n public modelConstatacaoRecomendacao: IConstatacaoRecomendacaoModel = {} as IConstatacaoRecomendacaoModel;\r\n public recomendacaoDataSource = new MatTableDataSource([]);\r\n public modelQuestao: IQuestaoModel = {} as IQuestaoModel;\r\n public modelMatrizPlanejamento: IMatrizPlanejamentoModel = {} as IMatrizPlanejamentoModel;\r\n public modelSubtipoAuditoria: ISubtipoAuditoriaModel = {} as ISubtipoAuditoriaModel;\r\n public listaProcedimentoAuditoria = new MatTableDataSource([]);\r\n public listaQuestao = new MatTableDataSource([]);\r\n public listaConstatacao = [] as IQuestaoConstatacaoModel[];\r\n public listaMatrizPlanejamento = new MatTableDataSource([]);\r\n public listaRecomendacoes: any[] = [] as any[];\r\n public rotaPrefixoSubtipoAuditoria = undefined;\r\n public rotaPrefixoMatrizPlanejamento = undefined;\r\n public semDados = true;\r\n\r\n public isModal: boolean = false;\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n contaGovernador: new FormControl(false, Validators.required),\r\n contaOrdenador: new FormControl(false, Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private recomendacaoService: RecomendacaoService,\r\n private constatacaoService: ConstatacaoService,\r\n public matDialog: MatDialog,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n if(data?.isModal) {\r\n this.isModal = data?.isModal;\r\n }\r\n if (this.novoRegistro) {\r\n this.titulo = 'Nova Constatação';\r\n } \r\n }\r\n\r\n\r\n config: AngularEditorConfig = {\r\n editable: !this.visualizar,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n this.buscarRecomendacoes();\r\n this.state();\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.constatacaoService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n if (this.visualizar) {\r\n this.titulo = 'Visualização de Constatação - ' + this.model.nome;\r\n this.form.controls['contaGovernador'].disable();\r\n this.form.controls['contaOrdenador'].disable();\r\n } else {\r\n this.titulo = 'Editar Constatação - ' + this.model.nome;\r\n }\r\n\r\n this.recomendacaoDataSource = new MatTableDataSource\r\n (\r\n this.model.constatacaoRecomendacao\r\n );\r\n this.recomendacaoDataSource._updateChangeSubscription();\r\n this.semDados = this.recomendacaoDataSource.filteredData.length === 0;\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n this.router.navigate(['/constatacao']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n this.router.navigate(['/constatacao']);\r\n }\r\n }\r\n\r\n public async state() {\r\n // model questao\r\n this.modelQuestao = window.history.state.model;\r\n // model Subtipo Auditoria\r\n this.modelSubtipoAuditoria = window.history.state.modelSubtipoAuditoria;\r\n // model matriz planejamento\r\n this.modelMatrizPlanejamento = window.history.state.modelMatrizPlanejamento;\r\n // lista procedimento\r\n this.listaProcedimentoAuditoria = window.history.state.listaProcedimentoAuditoria;\r\n // lista questão\r\n this.listaQuestao = window.history.state.listaQuestao;\r\n // lista constatacao\r\n this.listaConstatacao = window.history.state.listaConstatacao;\r\n // lista Matriz Planejamento\r\n this.listaMatrizPlanejamento = window.history.state.listaMatrizPlanejamento;\r\n // rota\r\n if (window.history.state.rotaPrefixoSubtipoAuditoria) {\r\n this.rotaPrefixoSubtipoAuditoria = window.history.state.rotaPrefixoSubtipoAuditoria;\r\n }\r\n if (window.history.state.rotaPrefixoMatrizPlanejamento) {\r\n this.rotaPrefixoMatrizPlanejamento = window.history.state.rotaPrefixoMatrizPlanejamento;\r\n }\r\n }\r\n\r\n public async buscarRecomendacoes() {\r\n const res = await this.recomendacaoService.obter('', true);\r\n if(res.sucesso) this.listaRecomendacoes = res.dados;\r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido!');\r\n return;\r\n }\r\n\r\n this.atualizarModel(this.form.value);\r\n this.model.constatacaoRecomendacao = this.recomendacaoDataSource.data;\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n this.model.constatacaoRecomendacao = [];\r\n res = await this.constatacaoService.atualizar(this.model);\r\n this.model.id = res.dados.id;\r\n this.vincularConstatacaoRecomendacao(this.id);\r\n } else {\r\n res = await this.constatacaoService.inserir(this.model);\r\n this.model.id = res.dados.id;\r\n this.vincularConstatacaoRecomendacao(res.dados.id);\r\n }\r\n\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Registro salvo com sucesso!');\r\n if (salvarEFechar) {\r\n this.router.navigate(['/constatacao']);\r\n }else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/constatacao/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n title: validacoes,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n\r\n if (!this.modelQuestao || this.isModal) {\r\n // Se não houver questão ou se for um modal, fechar o modal\r\n this.dialogRef.close();\r\n } else {\r\n // Caso contrário, navegar para a página de questões\r\n this.listaConstatacao.push({ constatacaoId: this.model.id, constatacao: this.model, questaoId: this.modelQuestao.id } as IQuestaoConstatacaoModel);\r\n this.router.navigate(['/questao/' + this.modelQuestao.id], {\r\n state: {\r\n model: this.modelQuestao,\r\n modelMatrizPlanejamento: this.modelMatrizPlanejamento,\r\n modelSubtipoAuditoria: this.modelSubtipoAuditoria,\r\n listaProcedimentoAuditoria: this.listaProcedimentoAuditoria,\r\n listaQuestao: this.listaQuestao,\r\n listaConstatacao: this.listaConstatacao,\r\n listaMatrizPlanejamento: this.listaMatrizPlanejamento,\r\n rotaPrefixoSubtipoAuditoria: this.rotaPrefixoSubtipoAuditoria,\r\n rotaPrefixoMatrizPlanejamento: this.rotaPrefixoMatrizPlanejamento\r\n }\r\n });\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public vincularConstatacaoRecomendacao(id: number){\r\n this.constatacaoService.vincularConstatacaoRecomendacao(id, { recomendacoes: this.recomendacaoDataSource.data.map(item => item.recomendacaoId)})\r\n }\r\n\r\n public incluirRecomendacao() {\r\n if (this.recomendacaoDataSource.data.findIndex(a => a.recomendacaoId === this.modelConstatacaoRecomendacao.recomendacaoId) >= 0) {\r\n this.exibirMensagemAlerta('Recomendação já cadastrado nessa constatação');\r\n return;\r\n }\r\n\r\n this.recomendacaoDataSource.data.push(cloneDeep(this.modelConstatacaoRecomendacao));\r\n this.recomendacaoDataSource._updateChangeSubscription();\r\n this.modelConstatacaoRecomendacao = {} as IConstatacaoRecomendacaoModel;\r\n this.semDados = false;\r\n }\r\n\r\n public desvincularRecomendacao(element: IRecomendacaoModel, index: number) {\r\n if(element?.id) {\r\n this.constatacaoService.desvincularConstatacaoRecomendacao(this.id, element.id)\r\n .then((res) => {\r\n res.sucesso ? this.exibirMensagemSucesso(res.mensagem.descricao) : this.exibirMensagemErro(res.mensagem.descricao);\r\n this.ngOnInit();\r\n })\r\n }\r\n this.recomendacaoDataSource.data.splice(index, 1);\r\n this.recomendacaoDataSource._updateChangeSubscription();\r\n this.semDados = this.recomendacaoDataSource.filteredData.length === 0;\r\n }\r\n\r\n public async visualizarRecomendacao(ind: number) {\r\n try {\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = ind;\r\n this.matDialog.open(ModalRecomendacaoComponent, dialogConfig);\r\n\r\n } catch (err) {\r\n this.exibirMensagemErro(err);\r\n }\r\n }\r\n\r\n public async exibirModalRecomendacao() {\r\n try {\r\n const res = await this.recomendacaoService.obter('', true);\r\n if (res.sucesso) {\r\n const dadosFiltrados = res.dados.filter(recomendacao => {\r\n const encontrado = this.recomendacaoDataSource.data?.find(item => item.recomendacaoId === recomendacao.id)?.recomendacaoId;\r\n if(encontrado) {\r\n return false;\r\n }\r\n return true;\r\n });\r\n const modal = this.exibirModal('Selecionar Recomendação', dadosFiltrados);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.modelConstatacaoRecomendacao.recomendacaoId = data.id;\r\n this.modelConstatacaoRecomendacao.recomendacao = data;\r\n }\r\n }\r\n );\r\n } else {\r\n this.exibirMensagemAlerta('Ocorreu um erro ao busca recomendações');\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro('Ocorreu um erro ao busca recomendações');\r\n }\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n if(this.isModal) {\r\n this.dialogRef.close();\r\n return;\r\n }\r\n if (this.modelQuestao) {\r\n this.router.navigate(['/questao/novo'], {\r\n state: {\r\n model: this.modelQuestao,\r\n modelMatrizPlanejamento: this.modelMatrizPlanejamento,\r\n modelSubtipoAuditoria: this.modelSubtipoAuditoria,\r\n listaProcedimentoAuditoria: this.listaProcedimentoAuditoria,\r\n listaConstatacao: this.listaConstatacao,\r\n listaQuestao: this.listaQuestao,\r\n listaMatrizPlanejamento: this.listaMatrizPlanejamento,\r\n rotaPrefixoSubtipoAuditoria: this.rotaPrefixoSubtipoAuditoria,\r\n rotaPrefixoMatrizPlanejamento: this.rotaPrefixoMatrizPlanejamento\r\n }\r\n });\r\n } else {\r\n this.router.navigate(['/constatacao']);\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Constatação\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n Contas do Governador\r\n \r\n
\r\n
\r\n \r\n Contas dos Ordenadores\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Nome {{ element.recomendacao.nome }}\r\n
\r\n \r\n \r\n
\r\n
\r\n
Nenhuma recomendação cadastrada
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { IConstatacaoModel } from 'src/app/models/constatacao.model';\r\nimport { IQuestaoConstatacaoModel } from 'src/app/models/questao-constatacao.model';\r\nimport { ConstatacaoService } from 'src/app/services/constatacao.service';\r\nimport { IConstatacaoRecomendacaoModel } from 'src/app/models/constatacao-recomendacao.model';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport { angularEditorConfig } from 'src/app/shared/util/angularEditorConfig';\r\n\r\n@Component({\r\n selector: 'app-modal-constatacao',\r\n templateUrl: './modal-constatacao.component.html',\r\n styleUrls: ['./modal-constatacao.component.scss']\r\n})\r\n\r\nexport class ModalConstatacaoComponent implements OnInit {\r\n public modelQuestaoConstatacao: IQuestaoConstatacaoModel = {} as IQuestaoConstatacaoModel;\r\n public model: IConstatacaoModel = {} as IConstatacaoModel;\r\n public modelConstatacaoRecomendacao: IConstatacaoRecomendacaoModel = {} as IConstatacaoRecomendacaoModel;\r\n public recomendacaoDataSource = new MatTableDataSource([]);\r\n\r\n public semDados = true;\r\n public visualizacao = true;\r\n public titulo = '';\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n private constatacaoService: ConstatacaoService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n\r\n this.modelQuestaoConstatacao = data;\r\n\r\n this.titulo = 'Visualização de Constatação';\r\n\r\n }\r\n\r\n public config: AngularEditorConfig = angularEditorConfig('', '10rem', '100%', false);\r\n\r\n async ngOnInit() {\r\n\r\n if (this.modelQuestaoConstatacao !== null) {\r\n const res = await this.constatacaoService.obterPorId(this.modelQuestaoConstatacao.constatacaoId);\r\n\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n this.recomendacaoDataSource = new MatTableDataSource\r\n (\r\n this.model.constatacaoRecomendacao\r\n );\r\n this.recomendacaoDataSource._updateChangeSubscription();\r\n this.semDados = this.recomendacaoDataSource.filteredData.length === 0;\r\n }\r\n }\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

{{ titulo }}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n Constas do Governador\r\n \r\n
\r\n
\r\n \r\n Constas dos Ordenadores\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Nome {{ element.recomendacao.nome }}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IConstatacaoRecomendacaoModel } from 'src/app/models/constatacao-recomendacao.model';\r\nimport { IRecomendacaoModel } from 'src/app/models/recomendacao.model';\r\nimport { RecomendacaoService } from 'src/app/services/recomendacao.service';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\n\r\n@Component({\r\n selector: 'app-modal-recomendacao',\r\n templateUrl: './modal-recomendacao.component.html',\r\n styleUrls: ['./modal-recomendacao.component.scss']\r\n})\r\n\r\nexport class ModalRecomendacaoComponent implements OnInit {\r\n public modelConstatacaoRecomendacao: IConstatacaoRecomendacaoModel = {} as IConstatacaoRecomendacaoModel;\r\n public model: IRecomendacaoModel = {} as IRecomendacaoModel;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n private recomendacaoService: RecomendacaoService,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.modelConstatacaoRecomendacao = data;\r\n\r\n }\r\n\r\n config: AngularEditorConfig = {\r\n editable: false,\r\n spellcheck: false,\r\n sanitize: false,\r\n height: '10rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [[], []],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n const res = await this.recomendacaoService.obterPorId(this.modelConstatacaoRecomendacao.recomendacaoId);\r\n\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n }\r\n }\r\n\r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Visualização de recomendação

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { IConstatacaoModel } from 'src/app/models/constatacao.model';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { ConstatacaoService } from 'src/app/services/constatacao.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\n\r\n@Component({\r\n selector: 'app-constatacao-list',\r\n templateUrl: './constatacao-list.component.html',\r\n styleUrls: ['./constatacao-list.component.scss']\r\n})\r\nexport class ConstatacaoListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IConstatacaoModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private constatacaoService: ConstatacaoService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/constatacao/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.constatacaoService\r\n .obter(this.searchNome, this.searchAtivo, false)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao)\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.constatacaoService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Registro reativado com sucesso!')\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number){\r\n this.constatacaoService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Registro inativado com sucesso!');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/constatacao/${id}`]);\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/constatacao/${id}/visualizar`]);\r\n }\r\n\r\n public excluir(id: number) {\r\n this.constatacaoService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Registro excluído com sucesso!');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Constatação
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Constatação\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Constatação {{element.nome}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, OnInit, ViewChild } from \"@angular/core\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { MatDialog, MatDialogConfig } from \"@angular/material/dialog\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport * as cloneDeep from \"lodash/cloneDeep\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IAuditorCoordenacaoModel } from \"src/app/models/auditor-coordenacao.model\";\r\nimport { IBaseModel } from \"src/app/models/base.model\";\r\nimport { ICoordenacaoModel } from \"src/app/models/coordenacao.model\";\r\nimport { AcessoCidadaoService } from \"src/app/services/acesso-cidadao.service\";\r\nimport { CoordenacaoService } from \"src/app/services/coordenacao.service\";\r\nimport { BaseFormComponent } from \"../../shared/components/base-form/base-form.component\";\r\nimport Swal from \"sweetalert2\";\r\nimport { MatSort, MatSortable } from \"@angular/material/sort\";\r\nimport { ICoordenacaoTipoTrabalhoModel } from \"src/app/models/coordenacao-tipo-trabalho.model\";\r\nimport { ModalCoordenacaoTipoTrabalhoComponent } from \"./modal-tipo-trabalho/modal-tipo-trabalho.component\";\r\nimport { IAgentePublicoModel } from \"src/app/models/agente-publico.model\";\r\nimport { IAgentePublicoDisponibilidadeModel } from \"src/app/models/agente-publico-disponibilidade.model\";\r\nimport { defaultDataAcessor } from \"src/app/core/helpers/mat-sort-data-accessor\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { ICoordenacaoAgentePublicoDispensaModel } from \"src/app/models/coordenacao-agentepublico-dispensa.model\";\r\nimport { ICoordenacaoAgentePublicoDisponibilidadeModel } from \"src/app/models/coordenacao-agentepublico-disponibilidade.model\";\r\nimport { ChangeDetectorRef } from \"@angular/core\";\r\n\r\nconst sortingDataAccessorEquipe = (item, property) => {\r\n\tswitch (property) {\r\n\t\tdefault:\r\n\t\t\treturn item[property];\r\n\t}\r\n};\r\n\r\nconst sortingDataAccessorTipoTrabalho = (item, property) => {\r\n\tswitch (property) {\r\n\t\tcase \"nome\":\r\n\t\t\treturn item.tipoTrabalho.nome;\r\n\t\tdefault:\r\n\t\t\treturn item[property];\r\n\t}\r\n};\r\n\r\nconst sortingDataAccessorDispensa = (item, property) => {\r\n\tswitch (property) {\r\n case property:\r\n return item.nome.toUpperCase();\r\n case 'dataIn�cio':\r\n return item.dataInicioDate;\r\n case 'dataFim':\r\n return item.dataFimDate;\r\n\t default:\r\n\t\t\treturn item[property];\r\n\t}\r\n};\r\n\r\nconst sortingDataAccessorDisponibilidade = (item, property) => {\r\n\tswitch (property) {\r\n case 'nome':\r\n return item.nome.toUpperCase();\r\n\t\tdefault:\r\n\t\t\treturn item[property];\r\n\t}\r\n};\r\n\r\n@Component({\r\n\tselector: \"app-coordenacao-form\",\r\n\ttemplateUrl: \"./coordenacao-form.component.html\",\r\n\tstyleUrls: [\"./coordenacao-form.component.scss\"],\r\n})\r\nexport class CoordenacaoFormComponent\r\n\textends BaseFormComponent\r\n\timplements OnInit, AfterViewInit\r\n{\r\n\tpublic model: ICoordenacaoModel = {} as ICoordenacaoModel;\r\n\tpublic modelAgentePublico: IAgentePublicoModel;\r\n\tpublic modelAuditor: IAuditorCoordenacaoModel =\r\n\t\t{} as IAuditorCoordenacaoModel;\r\n\tpublic modelAuditorOld: IAuditorCoordenacaoModel =\r\n\t\t{} as IAuditorCoordenacaoModel;\r\n\tpublic auditoresDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic coordenacaoTipoTrabalhoDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic semDados = true;\r\n\tpublic semDadosTipoTrabalho = true;\r\n\tpublic openPoppup = false;\r\n\tpublic validateForm = false;\r\n\tpublic aba = 0;\r\n\tpublic displayedColumns: string[] = [\r\n\t\t\"nomeAuditor\",\r\n\t\t\"cargo\",\r\n\t\t\"ativo\",\r\n\t\t\"actions\",\r\n\t];\r\n\tpublic displayedTipoTrabalhoColumns: string[] = [\r\n\t\t\"nome\",\r\n\t\t\"qtdMediaDias\",\r\n\t\t\"qtdMembros\",\r\n\t\t\"ativo\",\r\n\t\t\"actions\",\r\n\t];\r\n\r\n\tpublic idTipoTrabalhoSelecionado = 0;\r\n\tpublic permiteAdicionarTipoTrabalho = true;\r\n\tpublic modelCoordenacaoTipoTrabalho: ICoordenacaoTipoTrabalhoModel =\r\n\t\t{} as ICoordenacaoTipoTrabalhoModel;\r\n\tpublic selectedYear: number;\r\n\tpublic selectedModelYears: Array = [];\r\n\tpublic selectedModelYearsAbaEquipe: Array = [];\r\n\tpublic tiposTrabalhosInputs: IAgentePublicoDisponibilidadeModel[] =\r\n\t\t[] as IAgentePublicoDisponibilidadeModel[];\r\n\tpublic disponibilidadeDataSource =\r\n\t\tnew MatTableDataSource(\r\n\t\t\t[]\r\n\t\t);\r\n\tpublic dispensaDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic columnsDistribuicao = [\r\n\t\t\"nome\",\r\n\t\t\"auditoria\",\r\n\t\t\"consultoria\",\r\n\t\t\"fiscalizaçãoPreventiva\",\r\n\t\t\"inspeção\",\r\n\t\t\"investigaçãoPreliminar\",\r\n\t\t\"outrasAtividades\",\r\n\t\t\"ouvidoria\",\r\n\t\t\"pad\",\r\n\t\t\"par\",\r\n\t\t\"sindicância\",\r\n\t\t\"total\",\r\n\t]; // Adicione mais se necessário\r\n\tpublic columnsDispensa = [\r\n\t\t\"nome\",\r\n\t\t\"descrição\",\r\n\t\t\"dataInício\",\r\n\t\t\"dataFim\",\r\n\t\t\"quantidadeDeDias\",\r\n\t]; // Adicione mais se necessário\r\n\tpublic disponibilidadeSemDados = true;\r\n\tpublic dispensaSemDados = true;\r\n\r\n\t@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\t@ViewChild(\"tabela1\") public sortTabela1: MatSort;\r\n\t@ViewChild(\"tabelaAuditores\") public sortTabelaAuditores: MatSort;\r\n\t@ViewChild(\"tabelaDispensa\") public sortTabelaDispensa: MatSort;\r\n\t@ViewChild(\"tabelaDisponibilidade\")\r\n\tpublic sortTabelaDisponibilidade: MatSort;\r\n\r\n\tpublic form = new FormGroup({\r\n\t\tsigla: new FormControl(\"\", Validators.required),\r\n\t\tnome: new FormControl(\"\", Validators.required),\r\n\t\tdescricao: new FormControl(\"\", Validators.required),\r\n\t\ttipoAuditoriaId: new FormControl(\"\"),\r\n\t});\r\n\r\n\tconstructor(\r\n\t\troute: ActivatedRoute,\r\n\t\ttoastr: ToastrService,\r\n\t\trouter: Router,\r\n\t\tlocaleService: BsLocaleService,\r\n\t\tprivate coordenacaoService: CoordenacaoService,\r\n\t\tprivate acessoCidadaoService: AcessoCidadaoService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate cdr: ChangeDetectorRef\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\r\n\t\tthis.form = new FormGroup({\r\n\t\t\tsigla: new FormControl(\"\", Validators.required),\r\n\t\t\tnome: new FormControl(\"\", Validators.required),\r\n\t\t\tdescricao: new FormControl(\"\", Validators.required),\r\n\t\t\ttipoAuditoriaId: new FormControl(\"\"),\r\n\t\t});\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\tawait this.popularComboAnos();\r\n\t\tawait this.popularComboAnosEquipe();\r\n\t\tthis.aba = 0;\r\n\t\tawait this.buscar();\r\n\t\tthis.atribuirTitulo();\r\n this.dispensaDataSource.sort = this.sort;\r\n\t}\r\n\r\n\tngAfterViewInit() {\r\n\r\n\t\tif (this.sortTabela1) {\r\n\t\t\tthis.sortTabela1.sort({ id: \"nome\", start: \"asc\" } as MatSortable);\r\n\t\t\tthis.coordenacaoTipoTrabalhoDataSource.sortingDataAccessor =\r\n\t\t\t\tsortingDataAccessorTipoTrabalho;\r\n\t\t\tthis.coordenacaoTipoTrabalhoDataSource.sort = this.sortTabela1;\r\n\t\t}\r\n\r\n this.disponibilidadeDataSource.sort = this.sortTabelaDisponibilidade;\r\n\r\n if(this.sortTabelaDispensa){\r\n this.sortTabelaDispensa.sort({ id: \"nome\", start: \"asc\" } as MatSortable);\r\n this.dispensaDataSource.sortingDataAccessor = sortingDataAccessorDispensa;\r\n this.dispensaDataSource.sort = this.sort;\r\n }\r\n\t}\r\n\r\n\tasync buscar() {\r\n\t\ttry {\r\n\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\tconst res = await this.coordenacaoService.obterPorIdAno(\r\n\t\t\t\t\tthis.id,\r\n\t\t\t\t\tthis.selectedYear\r\n\t\t\t\t);\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.model = res.dados;\r\n\r\n\t\t\t\t\tif (this.sortTabela1) {\r\n\t\t\t\t\t\tthis.coordenacaoTipoTrabalhoDataSource =\r\n\t\t\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\t\t\tthis.model.coordenacaoTipoTrabalho\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\tthis.coordenacaoTipoTrabalhoDataSource.sortingDataAccessor =\r\n\t\t\t\t\t\t\tsortingDataAccessorTipoTrabalho;\r\n\t\t\t\t\t\tthis.coordenacaoTipoTrabalhoDataSource.sort =\r\n\t\t\t\t\t\t\tthis.sortTabela1;\r\n\t\t\t\t\t\tthis.coordenacaoTipoTrabalhoDataSource._updateChangeSubscription();\r\n\t\t\t\t\t\tthis.semDadosTipoTrabalho =\r\n\t\t\t\t\t\t\tthis.coordenacaoTipoTrabalhoDataSource.data\r\n\t\t\t\t\t\t\t\t.length === 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.toastr.error(res.mensagem.descricao, \"Atenção\");\r\n\t\t\t\t\tthis.router.navigate([\"/coordenacoes\"]);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.form.patchValue(this.model);\r\n\t\t} catch (err) {\r\n\t\t\tthis.toastr.error(err.mensagem.descricao, \"Atenção\");\r\n\t\t\tthis.router.navigate([\"/coordenacoes\"]);\r\n\t\t}\r\n\t}\r\n\r\n\tprivate marcarTodosCamposComoTocados(formGroup: FormGroup) {\r\n\t\tObject.keys(formGroup.controls).forEach((field) => {\r\n\t\t\tconst control = formGroup.get(field);\r\n\t\t\tif (control instanceof FormControl) {\r\n\t\t\t\tcontrol.markAsTouched({ onlySelf: true });\r\n\t\t\t} else if (control instanceof FormGroup) {\r\n\t\t\t\tthis.marcarTodosCamposComoTocados(control);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic async salvarDados(salvarEFechar: boolean) {\r\n\t\tthis.marcarTodosCamposComoTocados(this.form); // Marcar todos os campos como tocados\r\n\t\tthis.cdr.detectChanges(); // Forçar a detecção de mudanças\r\n\r\n\t\tthis.validaForm();\r\n\r\n\t\tthis.submit = true;\r\n\r\n\t\tif (this.form.invalid) {\r\n\t\t\treturn; // Impedir a continuação se o formulário for inválido\r\n\t\t}\r\n\r\n\t\tthis.atualizarModel(this.form.value);\r\n this.model.ano = this.selectedYear;\r\n\r\n\t\tthis.model.auditorCoordenacao = this.auditoresDataSource.data;\r\n\r\n\t\tconst novoAno = this.selectedYear;\r\n\r\n\t\tthis.model.auditorCoordenacao = this.auditoresDataSource.data.map(\r\n\t\t\t(auditor: IAuditorCoordenacaoModel) => {\r\n\t\t\t\treturn {\r\n\t\t\t\t\t...auditor,\r\n\t\t\t\t\tano: novoAno,\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\ttry {\r\n\t\t\tlet res: IBaseModel = null;\r\n\r\n\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\tres = await this.coordenacaoService.atualizar(this.model);\r\n\t\t\t} else {\r\n\t\t\t\tres = await this.coordenacaoService.inserir(this.model);\r\n\t\t\t}\r\n\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tthis.exibirMensagemSucesso(res.mensagem.descricao);\r\n\r\n\t\t\t\tif (salvarEFechar == true) {\r\n\t\t\t\t\tthis.router.navigate([\"/coordenacoes\"]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.router.navigate([`/coordenacoes/${res.dados.id}`]);\r\n\t\t\t\t\tthis.buscar();\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tconst validacoes = this.montarMensagensValidacao(res);\r\n\t\t\t\tif (validacoes != \"\") {\r\n\t\t\t\t\tthis.exibirMensagemErro(validacoes);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.submit = false;\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tvalidaForm() {\r\n\t\tif (this.form.invalid) {\r\n\t\t\tthis.exibirMensagemErro(\"Formulário inválido\");\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (\r\n\t\t\t!this.novoRegistro &&\r\n\t\t\tthis.auditoresDataSource.data.filter((a) => a.cargo === 1)\r\n\t\t\t\t.length === 0\r\n\t\t) {\r\n\t\t\tthis.exibirMensagemErro(\r\n\t\t\t\t\"É necessário um auditor 'Coordenador Titular'\"\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async incluirNovoAuditor(e: Event) {\r\n\t\te.preventDefault();\r\n\t\tif (this.form.invalid) {\r\n\t\t\tthis.exibirMensagemAlerta(\"Formulário inválido\");\r\n\t\t\tthis.validateForm = true;\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (\r\n\t\t\tthis.auditoresDataSource.data.findIndex(\r\n\t\t\t\t(a) => a.auditorId === this.modelAuditor.auditorId\r\n\t\t\t) >= 0\r\n\t\t) {\r\n\t\t\tthis.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n\t\t\tthis.exibirMensagemErro(\"Auditor já associado à coordenação.\");\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (\r\n\t\t\tthis.modelAuditor.cargo === 1 &&\r\n\t\t\tthis.auditoresDataSource.data.filter(\r\n\t\t\t\t(_) => _.cargo === 1 && _.ativo === true\r\n\t\t\t).length > 0\r\n\t\t) {\r\n\t\t\tthis.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n\t\t\tthis.exibirMensagemAlerta(\r\n\t\t\t\t\"Já existe um auditor titular nesta coordenação.\"\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (\r\n\t\t\t(this.modelAuditor.cargo === 2 || this.modelAuditor.cargo === 3) &&\r\n\t\t\tthis.auditoresDataSource.data.filter(\r\n\t\t\t\t(_) => _.cargo === 2 || _.cargo === 3\r\n\t\t\t).length > 0\r\n\t\t) {\r\n\t\t\tthis.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n\t\t\tthis.exibirMensagemErro(\r\n\t\t\t\t\"Já existe um auditor substituindo ou respondendo nesta coordenação.\"\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\r\n\t\tconst jaCadastrado =\r\n\t\t\tawait this.coordenacaoService.obterAuditorPorCoordenacao(\r\n\t\t\t\tthis.id,\r\n\t\t\t\tthis.modelAuditor?.auditorId,\r\n\t\t\t\tthis.modelAuditor?.cargo,\r\n\t\t\t\tthis.selectedYear\r\n\t\t\t);\r\n\r\n\t\tif (jaCadastrado.sucesso) {\r\n\t\t\tif (\r\n\t\t\t\tthis.modelAuditor.cargo === 1 &&\r\n\t\t\t\tjaCadastrado.dados?.filter(\r\n\t\t\t\t\t(_) =>\r\n\t\t\t\t\t\t_.coordenacaoId !== this.id &&\r\n\t\t\t\t\t\t_.cargo === this.modelAuditor.cargo\r\n\t\t\t\t).length > 0\r\n\t\t\t) {\r\n\t\t\t\tlet storedToken: any = localStorage.getItem(\"auditorGrid\");\r\n\t\t\t\tthis.modelAuditorOld = JSON.parse(storedToken);\r\n\t\t\t\tthis.auditoresDataSource.data.push(\r\n\t\t\t\t\tcloneDeep(this.modelAuditorOld)\r\n\t\t\t\t);\r\n\t\t\t\tthis.auditoresDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n\t\t\t\tthis.exibirMensagemAlerta(\r\n\t\t\t\t\t\"Este servidor já está associado a outra coordenação com este cargo.\"\r\n\t\t\t\t);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n\t\t\tthis.exibirMensagemErro(jaCadastrado.mensagem.descricao);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.modelAuditor.ativo = true;\r\n\t\tthis.auditoresDataSource.data.push(cloneDeep(this.modelAuditor));\r\n\t\tthis.auditoresDataSource._updateChangeSubscription();\r\n\t\tthis.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n\t\tthis.semDados = false;\r\n\t}\r\n\r\n\tpublic excluirAuditor(element: IAuditorCoordenacaoModel) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: \"Excluir Auditor\",\r\n\t\t\ttext: \"Tem certeza que deseja excluir esse Auditor?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"N�o\",\r\n\t\t}).then(async (result) => {\r\n\r\n if (result.value) {\r\n\t\t\t\tthis.auditorExcluir(element);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\treturn;\r\n\t\t});\r\n\t}\r\n\r\n\tpublic auditorExcluir(element: IAuditorCoordenacaoModel) {\r\n\t\tvar indiceAuditorExcluir =\r\n\t\t\tthis.auditoresDataSource.data.indexOf(element);\r\n\r\n\t\tthis.auditoresDataSource.data.splice(indiceAuditorExcluir, 1);\r\n\r\n\t\tthis.auditoresDataSource._updateChangeSubscription();\r\n\t\tthis.semDados = this.auditoresDataSource.filteredData.length === 0;\r\n\t}\r\n\r\n\tpublic editarAuditor(element: IAuditorCoordenacaoModel, index: number) {\r\n\t\tthis.modelAuditor = element;\r\n\t\tthis.auditoresDataSource.data.splice(index, 1);\r\n\t\tthis.auditoresDataSource._updateChangeSubscription();\r\n\t\tthis.semDados = this.auditoresDataSource.filteredData.length === 0;\r\n\t\tlocalStorage.setItem(\"auditorGrid\", JSON.stringify(element));\r\n\t}\r\n\r\n\r\n public async inativarReativarAuditor(element: IAuditorCoordenacaoModel, index: number, acao: boolean) {\r\n\r\n if(acao == false\r\n && element.cargo == 1\r\n && this.auditoresDataSource.data.filter(x => x.cargo == 1 && x.ativo == true).length < 2){\r\n this.exibirMensagemAlerta('� necess�rio um auditor \\'Coordenador Titular\\'');\r\n }else{\r\n const jaCadastrado = await this.coordenacaoService.obterAuditorPorCoordenacao(element.coordenacaoId, element.auditorId, element.cargo, this.selectedYear);\r\n if (jaCadastrado.sucesso) {\r\n element.ativo = acao;\r\n\t\t\tthis.auditoresDataSource._updateChangeSubscription();\r\n\t\t\tthis.semDados = this.auditoresDataSource.filteredData.length === 0;\r\n\t\t}\r\n else {\r\n this.exibirMensagemErro(jaCadastrado.mensagem.descricao);\r\n return;\r\n }\r\n }\r\n\t}\r\n\r\n\tprivate atualizarModel(values: any) {\r\n\t\tObject.assign(this.model, values);\r\n\t}\r\n\r\n\tpublic onBack() {\r\n\t\tthis.router.navigate([\"/coordenacoes\"]);\r\n\t}\r\n\r\n\tpublic async exibirModalAuditor() {\r\n\t\ttry {\r\n\t\t\tconst res =\r\n\t\t\t\tawait this.acessoCidadaoService.ObterAgentesPublicosSecont();\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tconst idsExistentes = this.auditoresDataSource.data.map(\r\n\t\t\t\t\t(a) => a.auditorId\r\n\t\t\t\t);\r\n\t\t\t\tconst dadosFiltrados = res.dados.filter(\r\n\t\t\t\t\t(agente) => !idsExistentes.includes(agente.id)\r\n\t\t\t\t);\r\n\r\n\t\t\t\tconst modal = this.exibirModal(\r\n\t\t\t\t\t\"Selecionar Agente Público\",\r\n\t\t\t\t\tdadosFiltrados,\r\n\t\t\t\t\tfalse\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.modelAuditor.auditorId = data.id;\r\n\t\t\t\t\t\tthis.modelAuditor.nomeAuditor = data.nome;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.toastr.error(res.mensagem.descricao, \"Atenção\");\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.toastr.error(err.mensagem.descricao, \"Atenção\");\r\n\t\t}\r\n\t}\r\n\r\n\tpublic mudarAba(ind: number) {\r\n\t\tif (this.novoRegistro) {\r\n\t\t\tthis.exibirMensagemErro(\"Necessário salvar a coordenação.\");\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.aba = ind;\r\n\r\n\t\tswitch (ind) {\r\n\t\t\tcase 0:\r\n\t\t\t\tthis.buscar();\r\n\t\t\t\tbreak;\r\n\t\t\tcase 1:\r\n\t\t\t\tthis.obterAbaEquipe();\r\n\t\t\t\tbreak;\r\n\t\t\tcase 2:\r\n\t\t\t\tthis.buscarDisponibilidadeAgentePublico();\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tconsole.warn(\"Aba não implementada\");\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async obterAbaEquipe() {\r\n\t\tif (!this.novoRegistro) {\r\n\t\t\tconst res = await this.coordenacaoService.obterPorIdAno(\r\n\t\t\t\tthis.id,\r\n\t\t\t\tthis.selectedYear\r\n\t\t\t);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tthis.model = res.dados;\r\n\r\n\t\t\t\tif (this.sortTabelaAuditores) {\r\n\t\t\t\t\tthis.sortTabelaAuditores.sort({\r\n\t\t\t\t\t\tid: \"ativo\",\r\n\t\t\t\t\t\tstart: \"desc\",\r\n\t\t\t\t\t} as MatSortable);\r\n\t\t\t\t\tthis.auditoresDataSource =\r\n\t\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\t\tthis.model.auditorCoordenacao\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\tthis.auditoresDataSource.sortingDataAccessor =\r\n\t\t\t\t\t\tsortingDataAccessorEquipe;\r\n\t\t\t\t\tthis.auditoresDataSource.sort = this.sortTabelaAuditores;\r\n\t\t\t\t\tthis.auditoresDataSource._updateChangeSubscription();\r\n\t\t\t\t\tthis.semDados =\r\n\t\t\t\t\t\tthis.auditoresDataSource.filteredData.length === 0;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tthis.toastr.error(res.mensagem.descricao, \"Atenção\");\r\n\t\t\t\tthis.router.navigate([\"/coordenacoes\"]);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tpublic inativarReativarTipoTrabalho(\r\n\t\telement: ICoordenacaoTipoTrabalhoModel,\r\n\t\tacao: boolean\r\n\t) {\r\n\t\tconst titulo =\r\n\t\t\tacao == true ? \"Reativar \" : \"Inativar \" + \"Tipo de trabalho\";\r\n\t\tconst texto =\r\n\t\t\t\"Tem certeza que deseja \" +\r\n\t\t\t(acao == true ? \" reativar \" : \" inativar \") +\r\n\t\t\t\"esse tipo de trabalho?\";\r\n\t\tSwal.fire({\r\n\t\t\ttitle: titulo,\r\n\t\t\ttext: texto,\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then(async (result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.tipoTrabalhoInativarReativar(element.id, acao);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\treturn;\r\n\t\t});\r\n\t}\r\n\r\n\tpublic tipoTrabalhoInativarReativar(id: number, acao: boolean) {\r\n\t\tif (acao == true) {\r\n\t\t\tthis.coordenacaoService\r\n\t\t\t\t.reativarTipoTrabalho(id)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\tthis.exibirMensagemSucesso(\r\n\t\t\t\t\t\t\t\"Dados alterados com sucesso.\"\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\tthis.buscar();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao, true);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch((err) => {\r\n\t\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.coordenacaoService\r\n\t\t\t\t.inativarTipoTrabalho(id)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\tthis.exibirMensagemSucesso(\r\n\t\t\t\t\t\t\t\"Dados alterados com sucesso.\"\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\tthis.buscar();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch((err) => {\r\n\t\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tpublic excluirTipoTrabalho(element: ICoordenacaoTipoTrabalhoModel) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: \"Excluir Tipo trabalho\",\r\n\t\t\ttext: \"Tem certeza que deseja excluir esse tipo de trabalho?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then(async (result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.tipoTrabalhoExcluir(element);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\treturn;\r\n\t\t});\r\n\t}\r\n\r\n\tpublic tipoTrabalhoExcluir(element: ICoordenacaoTipoTrabalhoModel) {\r\n\t\tthis.coordenacaoService\r\n\t\t\t.excluirTipoTrabalho(element.id)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.exibirMensagemSucesso(\"Dados alterados com sucesso.\");\r\n\t\t\t\t\tthis.buscar();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic adicionarCoordenacaoTipoTrabalho() {\r\n\t\tthis.abrirModalTipoTrabalho();\r\n\t}\r\n\r\n\tpublic async onSelectTipoTrabalho(element) {\r\n\t\tawait this.buscarDisponibilidadeAgentePublico();\r\n\t\tif (\r\n\t\t\tthis.coordenacaoTipoTrabalhoDataSource.data.filter(\r\n\t\t\t\t(d) => d.tipoTrabalhoId == element.target.value\r\n\t\t\t).length > 0\r\n\t\t) {\r\n\t\t\tthis.permiteAdicionarTipoTrabalho = false;\r\n\t\t} else {\r\n\t\t\tthis.idTipoTrabalhoSelecionado = element.target.value;\r\n\t\t\tthis.permiteAdicionarTipoTrabalho = true;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async onSelectEquipe(element) {\r\n\t\tthis.obterAbaEquipe();\r\n\t}\r\n\r\n\tpublic abrirModalTipoTrabalho(element?: ICoordenacaoTipoTrabalhoModel) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component\";\r\n\t\tdialogConfig.width = \"650px\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = {\r\n\t\t\tid: element ? element.id : 0,\r\n\t\t\tanoSelecionado: this.selectedYear,\r\n\t\t\tidCoordenacao: this.id,\r\n\t\t\tqtdMediaDias: element ? element.qtdMediaDias : 1,\r\n\t\t\tqtdMembros: element ? element.qtdMembros : 1,\r\n\t\t\ttipoTrabalhoId: element ? element.tipoTrabalhoId : 0,\r\n\t\t};\r\n\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalCoordenacaoTipoTrabalhoComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\t\tmodal.afterClosed().subscribe((sucesso) => {\r\n\t\t\tif (sucesso) {\r\n\t\t\t\tthis.buscar();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic async popularComboAnos() {\r\n\t\tconst anoAtual = new Date().getFullYear();\r\n\t\tthis.selectedModelYears.push(anoAtual + 4);\r\n\t\tthis.selectedModelYears.push(anoAtual + 3);\r\n\t\tthis.selectedModelYears.push(anoAtual + 2);\r\n\t\tthis.selectedModelYears.push(anoAtual + 1);\r\n\t\tthis.selectedModelYears.push(anoAtual);\r\n\t\tthis.selectedModelYears.push(anoAtual - 1);\r\n\t\tthis.selectedYear = anoAtual;\r\n\t}\r\n\r\n\tpublic async popularComboAnosEquipe() {\r\n\t\tconst anoAtual = new Date().getFullYear();\r\n\t\tthis.selectedModelYearsAbaEquipe.push(anoAtual + 4);\r\n\t\tthis.selectedModelYearsAbaEquipe.push(anoAtual + 3);\r\n\t\tthis.selectedModelYearsAbaEquipe.push(anoAtual + 2);\r\n\t\tthis.selectedModelYearsAbaEquipe.push(anoAtual + 1);\r\n\t\tthis.selectedModelYearsAbaEquipe.push(anoAtual);\r\n\t\tthis.selectedYear = anoAtual;\r\n this.selectedModelYearsAbaEquipe.push(anoAtual - 1);\r\n\r\n\r\n\t}\r\n\r\n\tpublic async onChangeSelectAno(element) {\r\n\t\tthis.buscar();\r\n\t}\r\n\r\n\tpublic async buscarDisponibilidadeAgentePublico() {\r\n\t\tconst res = await this.coordenacaoService.getDadosDisponibilidade(\r\n\t\t\tthis.id,\r\n\t\t\tthis.selectedYear\r\n\t\t);\r\n\t\tif (res.sucesso) {\r\n if(this.sortTabelaDisponibilidade){\r\n this.disponibilidadeDataSource =\r\n new MatTableDataSource(\r\n res.dados\r\n );\r\n\r\n this.disponibilidadeDataSource.sort = this.sortTabelaDisponibilidade;\r\n this.disponibilidadeDataSource.sortingDataAccessor =\r\n sortingDataAccessorDisponibilidade;\r\n this.disponibilidadeDataSource._updateChangeSubscription();\r\n }\r\n\t\t\tthis.disponibilidadeSemDados =\r\n\t\t\t\tthis.disponibilidadeDataSource.data.length === 0;\r\n\t\t}\r\n\r\n\t\tconst retDispensa = await this.coordenacaoService.getDadosDispensa(\r\n\t\t\tthis.id,\r\n\t\t\tthis.selectedYear\r\n\t\t);\r\n\t\tif (res.sucesso) {\r\n\t\t\tthis.sortTabelaDispensa.sort({\r\n\t\t\t\tid: \"nome\",\r\n\t\t\t\tstart: \"asc\",\r\n\t\t\t} as MatSortable);\r\n\r\n\t\t\tthis.dispensaDataSource =\r\n\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\tretDispensa.dados\r\n\t\t\t\t);\r\n\t\t\tthis.dispensaDataSource.sortingDataAccessor =\r\n\t\t\t\tsortingDataAccessorDispensa;\r\n\t\t\tthis.dispensaDataSource.sort = this.sortTabelaDispensa;\r\n\t\t\tthis.dispensaSemDados = this.dispensaDataSource.data.length === 0;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic formatarNome(nome: string): string {\r\n\t\tconst palavrasSeparadas = nome\r\n\t\t\t.replace(/([a-z])([A-Z])/g, \"$1 $2\")\r\n\t\t\t.trim();\r\n\r\n\t\tconst nomeFormatado = palavrasSeparadas\r\n\t\t\t.split(\" \")\r\n\t\t\t.map(\r\n\t\t\t\t(palavra) =>\r\n\t\t\t\t\tpalavra.charAt(0).toUpperCase() +\r\n\t\t\t\t\tpalavra.slice(1).toLowerCase()\r\n\t\t\t)\r\n\t\t\t.join(\" \");\r\n\r\n\t\treturn nomeFormatado;\r\n\t}\r\n\r\n\tget desabilitaBotoesGridTipoTrabalho(): boolean {\r\n\t\tconst anoAtual = new Date().getFullYear();\r\n\t\treturn this.selectedYear < anoAtual;\r\n\t}\r\n\r\n\tget desabilitaBotoesGridEquipe(): boolean {\r\n\t\tconst anoAtual = new Date().getFullYear();\r\n\t\treturn this.selectedYear < anoAtual;\r\n\t}\r\n\r\n\tatribuirTitulo() {\r\n\t\tif (this.novoRegistro) {\r\n\t\t\tthis.titulo = \"Nova Coordenação\";\r\n\t\t} else {\r\n\t\t\tthis.titulo = \"Editar Coordenação - \" + this.model.nome;\r\n\t\t}\r\n\t\tif (this.visualizar) {\r\n\t\t\tthis.titulo = \"Visualizar Coordenação - \" + this.model.nome;\r\n\t\t}\r\n\t}\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
    \r\n\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tPágina Inicial\r\n\t\t\t\t\t
  2. \r\n\t\t\t\t\t
  3. \r\n\t\t\t\t\t\tCoordenações\r\n\t\t\t\t\t
  4. \r\n\t\t\t\t\t
  5. {{ titulo }}
  6. \r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{ titulo }}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\tDados\r\n\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\tEquipe\r\n\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\tDisponibilidade\r\n\t\t\t\t\t\t
  • \r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tTipos de\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrabalho\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ item }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAdicionar\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tNome\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.tipoTrabalho\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.nome\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tQtd. Média Dias\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.qtdMediaDias\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tQtd. Membros\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ element.qtdMembros }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tSituação\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAtivo\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tInativo\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tNenhum tipo de trabalho\r\n\t\t\t\t\t\t\t\t\t\t\t\tcadastrado.\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tAno\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ item }}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tServidor\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tCargo/Função\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tAdicionar\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tNome\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.nomeAuditor\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tCargo\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tCoordenador\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tTitular\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tCoordenador\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tSubstituindo\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tCoordenador\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tRespondendo\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAuditor do\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tEstado\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tSituação\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAtivo\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tInativo\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tNenhum auditor cadastrado.\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tAno\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{ item }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tDisponibilidade por Tipo de\r\n\t\t\t\t\t\t\t\t\t\tTrabalho(%)\r\n\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ formatarNome(column) }}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n {{ element[column] }}\r\n
\r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tNão existem dados de Disponibilidade por\r\n\t\t\t\t\t\t\t\t\t\tTipo de Trabalho para a Coordenação e o\r\n\t\t\t\t\t\t\t\t\t\tAno selecionado.\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tDispensa\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ formatarNome(column) }}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ element[column] }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tNão existem dados de Dispensa para a\r\n\t\t\t\t\t\t\t\t\t\tCoordenação e o Ano selecionado!\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tSalvar\r\n\t\t\t\t\t\t\t\t\tSalvar e fechar\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Cancelar\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Sair\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n","import { ToastrService } from 'ngx-toastr';\r\nimport { MatDialog,MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport {\r\n Component,\r\n OnInit,\r\n Inject,\r\n ViewChild,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport Swal from 'sweetalert2';\r\nimport { ICoordenacaoTipoTrabalhoModel } from 'src/app/models/coordenacao-tipo-trabalho.model';\r\nimport { TipoTrabalhoService } from 'src/app/services/tipo-trabalho.service';\r\nimport { ITipoTrabalhoModel } from 'src/app/models/tipo-trabalho.model';\r\nimport { CoordenacaoService } from 'src/app/services/coordenacao.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\n\r\n@Component({\r\n selector: 'app-modal-tipo-trabalho',\r\n templateUrl: './modal-tipo-trabalho.component.html',\r\n styleUrls: ['./modal-tipo-trabalho.component.scss'],\r\n})\r\n\r\nexport class ModalCoordenacaoTipoTrabalhoComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n \r\n public model = {} as ICoordenacaoTipoTrabalhoModel;\r\n public anoSelecionado: number;\r\n public tabelaTipoTrabalho = [] as ITipoTrabalhoModel[];\r\n public selectedTipoTrabalho = {} as ITipoTrabalhoModel;\r\n public txtBtnConcluir: string;\r\n public campoObrigatorio = false;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private tipoTrabalhoService: TipoTrabalhoService,\r\n private coordenacaoService: CoordenacaoService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n this.model.id = data?.id;\r\n this.model.ano = data?.anoSelecionado;\r\n this.model.coordenacaoId = data?.idCoordenacao;\r\n this.model.qtdMediaDias = data?.qtdMediaDias;\r\n this.model.qtdMembros = data?.qtdMembros;\r\n this.model.tipoTrabalhoId = data?.tipoTrabalhoId;\r\n\r\n if(!this.model.id || this.model.id==0)\r\n this.txtBtnConcluir = \"Inserir\"\r\n else\r\n this.txtBtnConcluir = \"Atualizar\"\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscarTiposTrabalho();\r\n }\r\n \r\n \r\n ngAfterViewInit(): void {\r\n \r\n }\r\n\r\n\r\n public async concluir() {\r\n try{\r\n this.campoObrigatorio = true;\r\n\r\n if(!this.model.tipoTrabalhoId \r\n || this.model.tipoTrabalhoId== 0\r\n || !this.model.qtdMediaDias\r\n || !this.model.qtdMembros)\r\n return false;\r\n\r\n let res: IBaseModel = null;\r\n\r\n if(!this.model.id || this.model.id == 0){\r\n res = await this.coordenacaoService.inserirTipoTrabalho(this.model);\r\n }else{\r\n res = await this.coordenacaoService.atualizarTipoTrabalho(this.model);\r\n }\r\n\r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.dialogRef.close(true);\r\n }\r\n else\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n\r\n \r\n }catch(err){\r\n this.exibirMensagemErro(err);\r\n }\r\n }\r\n\r\n public async buscarTiposTrabalho(){\r\n const tipos = await this.tipoTrabalhoService\r\n .obter()\r\n .then(res => {\r\n if(res.sucesso)\r\n this.tabelaTipoTrabalho = res.dados;\r\n });\r\n \r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Tipo de trabalho

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ item.nome }}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n = 48 && event.charCode <= 57\"\r\n min=\"1\"\r\n id=\"inputQtdMediaDias\" [(ngModel)]=\"model.qtdMediaDias\"/>\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n = 48 && event.charCode <= 57\"\r\n min=\"1\"\r\n id=\"inputQtdMembros\" [(ngModel)]=\"model.qtdMembros\"/>\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { ICoordenacaoModel } from 'src/app/models/coordenacao.model';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CoordenacaoService } from 'src/app/services/coordenacao.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-coordenacao-list',\r\n templateUrl: './coordenacao-list.component.html',\r\n styleUrls: ['./coordenacao-list.component.scss']\r\n})\r\nexport class CoordenacaoListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ICoordenacaoModel;\r\n public displayedColumns: string[] = ['selecao', 'sigla', 'nome', 'quantidadeAuditores', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private coordenacaoService: CoordenacaoService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/coordenacoes/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.coordenacaoService\r\n .obter(this.searchNome, this.searchAtivo, false)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.coordenacaoService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Coordenação reativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.coordenacaoService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Coordenação inativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/coordenacoes/${id}`]);\r\n }\r\n\r\n public excluir(id: number) {\r\n this.coordenacaoService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Coordenação excluída com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n console.log(\"passou aqui\");\r\n this.exibirMensagemAlerta(res.mensagem.descricao, true);\r\n }\r\n })\r\n .catch((err) => {\r\n console.log(\"passou no catch\");\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/coordenacoes/${id}/visualizar`]);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Coordenações
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Coordenações\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Id {{element.id}} Sigla {{element.sigla}} Nome {{element.nome}} Quantidade de Auditores {{element.quantidadeAuditores}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhuma coordenação encontrada.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ICriterioMetricaModel } from 'src/app/models/criterio-metrica.model';\r\nimport { ICriterioModel } from 'src/app/models/criterio.model';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { CriterioService } from 'src/app/services/criterio.service';\r\nimport { PerguntaService } from 'src/app/services/pergunta.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { TipoCriterioService } from 'src/app/services/tipo-criterio.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { ModalMetricaNumericoComponent } from './modal-metrica-numerico/modal-metrica-numerico.component';\r\nimport { ModalMetricaOpcoesComponent } from './modal-metrica-opcoes/modal-metrica-opcoes.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-criterio-form',\r\n templateUrl: './criterio-form.component.html',\r\n styleUrls: ['./criterio-form.component.scss']\r\n})\r\nexport class CriterioFormComponent extends BaseFormComponent implements OnInit {\r\n public enumTipoEntrada = [] as IEnumModel[];\r\n public enumTipoComparacao = [] as IEnumModel[];\r\n\r\n public model: ICriterioModel = {} as ICriterioModel;\r\n public metricasDataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public permitePergunta = false;\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n tipoCriterioId: new FormControl(null, Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n tipoEntradaId: new FormControl(null, Validators.required),\r\n unidade: new FormControl(null, Validators.required),\r\n perguntaId: new FormControl(null),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private criterioService: CriterioService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private tipoCriterioService: TipoCriterioService,\r\n private perguntaService: PerguntaService,\r\n public matDialog: MatDialog,\r\n private modalService: BsModalService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Critério';\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.criterioService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Critério - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Critério - ' + this.model.nome;\r\n }\r\n\r\n this.metricasDataSource = new MatTableDataSource(this.model.criterioMetrica.sort((a, b) => (a.ordem > b.ordem) ? 1 : -1));\r\n this.metricasDataSource._updateChangeSubscription();\r\n this.semDados = this.metricasDataSource.filteredData.length === 0;\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n this.router.navigate(['/criterios']);\r\n return;\r\n }\r\n }\r\n\r\n await Promise.all([\r\n this.tabelaDominioService.obterTipoEntradaCriterio().then((res) => this.enumTipoEntrada = res.dados),\r\n this.tabelaDominioService.obterTipoComparacao().then((res) => this.enumTipoComparacao = res.dados),\r\n ]);\r\n\r\n this.permitePergunta = this.model.tipoEntradaId === 3;\r\n this.form.updateValueAndValidity();\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n this.router.navigate(['/criterios']);\r\n } \r\n }\r\n\r\n public onChangeTipoEntrada(event: any) {\r\n if (event.target.value === '3') {\r\n this.permitePergunta = true;\r\n this.form.controls['perguntaId'].setValidators(Validators.required);\r\n } else {\r\n this.permitePergunta = false;\r\n this.form.controls['perguntaId'].setValue(null);\r\n this.model.pergunta = null;\r\n this.model.perguntaId = null;\r\n this.form.controls['perguntaId'].clearValidators();\r\n }\r\n\r\n if (this.form.controls['tipoEntradaId'].value && (event.target.value === '3') !== (this.model.tipoEntradaId === 3)) {\r\n this.metricasDataSource = new MatTableDataSource([]);\r\n this.metricasDataSource._updateChangeSubscription();\r\n this.semDados = true;\r\n }\r\n\r\n this.model.tipoEntradaId = parseInt(event.target.value, 10);\r\n\r\n this.form.controls['perguntaId'].updateValueAndValidity();\r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta(\"Formulário invalido\");\r\n return;\r\n }\r\n this.submit = true;\r\n\r\n if (this.metricasDataSource.data.length === 0) {\r\n this.exibirMensagemAlerta(\"É necessário incluir pelo menos uma métrica\");\r\n return;\r\n }\r\n\r\n Object.assign(this.model, this.form.value);\r\n this.model.criterioMetrica = this.metricasDataSource.data;\r\n\r\n if (this.model.tipoEntradaId.toString() !== '3') {\r\n delete (this.model.perguntaId);\r\n delete (this.model.pergunta);\r\n }\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.criterioService.atualizar(this.model);\r\n } else {\r\n res = await this.criterioService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (salvarEFechar) {\r\n this.router.navigate(['/criterios']);\r\n }\r\n else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/criterios/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n this.submit = false;\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.submit = false;\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n } \r\n }\r\n\r\n public excluirMetrica(ind: number) {\r\n this.metricasDataSource.data.splice(ind, 1);\r\n this.metricasDataSource._updateChangeSubscription();\r\n this.semDados = this.metricasDataSource.filteredData.length === 0;\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/criterios']);\r\n }\r\n\r\n public async exibirModalTipoCriterio() {\r\n try {\r\n const res = await this.tipoCriterioService.obter('', true);\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Tipo Criterio', res.dados, false, [\r\n {\r\n columnDef: 'selecao',\r\n header: ''\r\n },\r\n {\r\n columnDef: 'nome',\r\n header: 'Nome'\r\n }]);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.model.tipoCriterio = data;\r\n this.form.controls['tipoCriterioId'].setValue(data.id);\r\n }\r\n }\r\n );\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public async exibirModalPergunta() {\r\n try {\r\n const res = await this.perguntaService.obter('', true);\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Pergunta', res.dados, false, [\r\n {\r\n columnDef: 'selecao',\r\n header: ''\r\n },\r\n {\r\n columnDef: 'nome',\r\n header: 'Nome'\r\n }]);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n if (this.model.pergunta?.id !== data.id) {\r\n this.metricasDataSource = new MatTableDataSource([]);\r\n this.metricasDataSource._updateChangeSubscription();\r\n this.semDados = true;\r\n }\r\n\r\n this.model.pergunta = data;\r\n this.form.controls['perguntaId'].setValue(data.id);\r\n this.form.updateValueAndValidity();\r\n }\r\n }\r\n );\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public async exibirModalMetrica(element?: ICriterioMetricaModel, index?: number) {\r\n if (!this.model.tipoEntradaId) {\r\n this.exibirMensagemAlerta('É necessário selecionar o Tipo de Entrada antes de definir as métricas');\r\n return;\r\n }\r\n\r\n if (this.model.tipoEntradaId === 3 && !this.model.pergunta) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'É necessário selecionar uma pergunta antes de definir as métricas',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n\r\n let modal: any;\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n\r\n if (this.model.tipoEntradaId === 3 && this.model.pergunta.tipoEntradaId === 3) {\r\n const data = {\r\n listaOpcoes: this.model.pergunta.perguntaOpcao.filter(t => this.metricasDataSource.data.findIndex(d => d.perguntaOpcaoId.toString() === t.id.toString()) < 0),\r\n element\r\n };\r\n\r\n if (data.listaOpcoes.length === 0 && !element) {\r\n this.exibirMensagemAlerta('Todas as perguntas já possuem nota');\r\n return;\r\n }\r\n\r\n dialogConfig.data = data;\r\n modal = this.matDialog.open(\r\n ModalMetricaOpcoesComponent,\r\n dialogConfig\r\n );\r\n\r\n } else {\r\n const data = {\r\n tipoEntrada: this.model.pergunta?.tipoEntradaId === 1 ? 'inteiro' : 'decimal',\r\n enumTipoComparacao: this.enumTipoComparacao,\r\n element\r\n };\r\n\r\n dialogConfig.data = data;\r\n modal = this.matDialog.open(\r\n ModalMetricaNumericoComponent,\r\n dialogConfig\r\n );\r\n }\r\n\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n if (element) { this.metricasDataSource.data.splice(index, 1); }\r\n this.metricasDataSource.data.push(data);\r\n this.metricasDataSource._updateChangeSubscription();\r\n this.semDados = false;\r\n }\r\n });\r\n }\r\n\r\n public drop(event: CdkDragDrop) {\r\n moveItemInArray(this.metricasDataSource.data, event.previousIndex, event.currentIndex);\r\n for (let i = 0; i < this.metricasDataSource.data.length; i++) {\r\n this.metricasDataSource.data[i].ordem = i + 1;\r\n }\r\n\r\n this.metricasDataSource._updateChangeSubscription();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Critérios\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo\r\n obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n Campo\r\n obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo\r\n obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n /?])[a-zA-Zà-úÀ-Ú!@#$%^&*()\\-_+=\\[\\]{}|;:',.<>/?\\d]*$\"\r\n maxlength=\"50\" />\r\n
\r\n
Campo\r\n obrigatório (não são permitidos somente números)
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
Campo\r\n obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo\r\n obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Métricas \r\n \r\n {{element.perguntaOpcao.nome}}\r\n \r\n \r\n {{element.operacao1.descricao}}\r\n {{element.valorNumerico1 | number:'1.2':'pt'}}\r\n {{form.controls['unidade'].value}}\r\n \r\n e {{element.operacao2.descricao}}\r\n {{element.valorNumerico2 | number:'1.2':'pt'}}\r\n {{form.controls['unidade'].value}}\r\n \r\n \r\n Nota {{element.nota}}\r\n Adicionar\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
Nenhuma\r\n métrica cadastrada
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { AfterViewInit, Component, Inject, Input } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport Inputmask from 'inputmask';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { toIntlNumberString } from 'src/app/core/helpers/number.helper';\r\nimport { ICriterioMetricaModel } from 'src/app/models/criterio-metrica.model';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\n\r\n@Component({\r\n selector: 'app-modal-metrica-numerico',\r\n templateUrl: './modal-metrica-numerico.component.html',\r\n styleUrls: ['./modal-metrica-numerico.component.scss']\r\n})\r\nexport class ModalMetricaNumericoComponent implements AfterViewInit {\r\n public tipoEntrada: string;\r\n public enumTipoComparacao = [] as IEnumModel[];\r\n public element = {} as ICriterioMetricaModel;\r\n\r\n constructor(private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.element = data.element;\r\n this.tipoEntrada = data.tipoEntrada;\r\n this.enumTipoComparacao = data.enumTipoComparacao;\r\n\r\n this.formMetrica = new FormGroup({\r\n operacao1Id: new FormControl(this.element?.operacao1Id, Validators.required),\r\n valorNumerico1: new FormControl(this.element?.valorNumerico1, Validators.required),\r\n operacao2Id: new FormControl(this.element?.operacao2Id),\r\n valorNumerico2: new FormControl(this.element?.valorNumerico2),\r\n nota: new FormControl(this.element?.nota, Validators.required),\r\n }, { validators: [this.ValidateRequiredOperacao2.bind(this)] });\r\n }\r\n\r\n public formMetrica: FormGroup;\r\n\r\n ngAfterViewInit() {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n public concluir() {\r\n const operacao2Id = this.formMetrica.controls['operacao2Id'];\r\n\r\n const valorNumerico1 = parseFloat(toIntlNumberString(this.formMetrica.controls['valorNumerico1'].value.toString()));\r\n const valorNumerico2 = this.formMetrica.controls['valorNumerico2'].value\r\n ? parseFloat(toIntlNumberString(this.formMetrica.controls['valorNumerico2'].value.toString()))\r\n : null;\r\n\r\n operacao2Id.setErrors((!operacao2Id.value && this.formMetrica.controls['valorNumerico2'].value) ? { required: true } : null);\r\n this.formMetrica.controls['valorNumerico2'].setErrors((operacao2Id.value && !this.formMetrica.controls['valorNumerico2'].value) ? { required: true } : null);\r\n\r\n this.formMetrica.markAllAsTouched();\r\n\r\n if (!this.formMetrica.valid) {\r\n return;\r\n }\r\n\r\n const nota = parseFloat(toIntlNumberString(this.formMetrica.controls['nota'].value.toString()));\r\n\r\n const modelMetrica = {\r\n operacao1Id: parseInt(this.formMetrica.controls['operacao1Id'].value, null),\r\n operacao1: this.enumTipoComparacao.find(t => t.codigo === parseInt(this.formMetrica.controls['operacao1Id'].value, null)),\r\n operacao2Id: parseInt(this.formMetrica.controls['operacao2Id'].value, null),\r\n operacao2: this.enumTipoComparacao.find(t => t.codigo === parseInt(this.formMetrica.controls['operacao2Id'].value, null)),\r\n valorNumerico1,\r\n valorNumerico2,\r\n nota,\r\n } as ICriterioMetricaModel;\r\n\r\n this.dialogRef.close(modelMetrica);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n private ValidateRequiredOperacao2() {\r\n return (formGroup: FormGroup) => {\r\n const operacao2Id = formGroup.controls['operacao2Id'];\r\n const valorNumerico2 = formGroup.controls['valorNumerico2'];\r\n\r\n if (operacao2Id.value && !valorNumerico2.value) {\r\n operacao2Id.setErrors(null);\r\n valorNumerico2.setErrors({ required: true });\r\n } else if (!operacao2Id.value && valorNumerico2.value) {\r\n operacao2Id.setErrors({ required: true });\r\n valorNumerico2.setErrors(null);\r\n } else {\r\n operacao2Id.setErrors(null);\r\n valorNumerico2.setErrors(null);\r\n }\r\n };\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Adicionar Métrica

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, Inject, Input } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport Inputmask from 'inputmask';\r\nimport { toIntlNumberString } from 'src/app/core/helpers/number.helper';\r\nimport { ICriterioMetricaModel } from 'src/app/models/criterio-metrica.model';\r\nimport { IPerguntaOpcaoModel } from 'src/app/models/pergunta-opcao.model';\r\n\r\n@Component({\r\n selector: 'app-modal-metrica-opcoes',\r\n templateUrl: './modal-metrica-opcoes.component.html',\r\n styleUrls: ['./modal-metrica-opcoes.component.scss']\r\n})\r\nexport class ModalMetricaOpcoesComponent implements AfterViewInit {\r\n public listaOpcoes = [] as IPerguntaOpcaoModel[];\r\n public element = {} as ICriterioMetricaModel;\r\n\r\n constructor(private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.element = data.element;\r\n this.listaOpcoes = data.listaOpcoes;\r\n\r\n this.formMetrica = new FormGroup({\r\n opcaoId: new FormControl(this.element?.perguntaOpcaoId, Validators.required),\r\n nota: new FormControl(this.element?.nota, Validators.required),\r\n });\r\n }\r\n\r\n public formMetrica: FormGroup;\r\n\r\n ngAfterViewInit() {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n\r\n public concluir() {\r\n this.formMetrica.markAllAsTouched();\r\n\r\n if (!this.formMetrica.valid) {\r\n return;\r\n }\r\n\r\n const modelMetrica = {\r\n perguntaOpcaoId: this.formMetrica.controls['opcaoId'].value,\r\n perguntaOpcao: this.listaOpcoes.find(t => t.id.toString() === this.formMetrica.controls['opcaoId'].value),\r\n nota: parseFloat(toIntlNumberString(this.formMetrica.controls['nota'].value.toString())),\r\n } as ICriterioMetricaModel;\r\n\r\n this.dialogRef.close(modelMetrica);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Adicionar Métrica

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { ICriterioModel } from 'src/app/models/criterio.model';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CriterioService } from 'src/app/services/criterio.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseListComponent } from '../../shared/components/base-list/base-list.component';\r\n\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property){\r\n case 'tipoCriterio':\r\n return item.tipoCriterio.nome.trim().toLowerCase();\r\n case 'tipoEntrada':\r\n return item.tipoEntrada.nome.trim().toLowerCase();\r\n case 'nome': return item.nome.trim().toLowerCase(); \r\n default: \r\n return item[property];\r\n }\r\n}\r\n\r\n\r\n@Component({\r\n selector: 'app-criterio-list',\r\n templateUrl: './criterio-list.component.html',\r\n styleUrls: ['./criterio-list.component.scss']\r\n})\r\nexport class CriterioListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ICriterioModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'tipoCriterio', 'tipoEntrada', 'unidade', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public filtro = {} as FiltroModel;\r\n public searchPesquisa: string;\r\n public totalItens: number;\r\n public pageEvent: any;\r\n\r\n @ViewChild('TableOnePaginator', {static: true}) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private criterioService: CriterioService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.setarPermissoes();\r\n this.configurarFiltro();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Imprimir);\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/criterios/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.criterioService\r\n .obter(this.searchNome, this.searchAtivo, false)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.criterioService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Critério reativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.criterioService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Critério inativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/criterios/${id}`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public excluir(id: number) {\r\n this.criterioService\r\n .excluirCriterio(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Critério excluído com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n const msg = this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/criterio/${id}/visualizar`]);\r\n }\r\n\r\n private configurarFiltro() {\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchPesquisa;\r\n }\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Critérios
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Critérios\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nome\r\n {{element.nome}} Tipo de Critério\r\n {{element.tipoCriterio?.nome}} Tipo de Entrada\r\n {{element.tipoEntrada?.descricao}} Unidade\r\n {{element.unidade}} \r\n Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro\r\n encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IControle } from 'src/app/models/controle.model';\r\nimport { ControleService } from 'src/app/services/controle.service';\r\nimport { ModalControleComponent } from './modal-controle/modal-controle.component';\r\nimport Swal from 'sweetalert2';\r\nimport { CdkDrag, CdkDragDrop, moveItemInArray, transferArrayItem } from \"@angular/cdk/drag-drop\";\r\n\r\n@Component({\r\n selector: 'app-criterios-avaliacao-form-controles',\r\n templateUrl: './criterios-avaliacao-form-controles.component.html',\r\n styleUrls: ['./criterios-avaliacao-form-controles.component.scss']\r\n})\r\nexport class CriteriosAvaliacaoFormControlesComponent implements OnInit {\r\n\r\n criteriosAvaliacaoRiscosId: any;\r\n visualizar = false;\r\n dataSource = new MatTableDataSource([]);\r\n selectedModel: any;\r\n\r\n listRisco : any[]=[]\r\n\r\n displayedColumns: string[] = [\r\n \"avaliacao\",\r\n \"valorDoRisco\",\r\n \"actions\",\r\n ];\r\n\r\n searchNome: string;\r\n searchAtivo = true;\r\n semDados = true;\r\n constructor(\r\n public matDialog: MatDialog,\r\n private controleService: ControleService\r\n ) { }\r\n\r\n ngOnInit(): void { }\r\n\r\n salvarDados(e: any) {\r\n console.log(e);\r\n }\r\n\r\n adicionar() { }\r\n\r\n excluirControle(e: any) {\r\n Swal.fire({\r\n title: \"Excluir Controle\",\r\n text: \"Tem certeza que deseja excluir esse controle?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then(async (result) => {\r\n if (result.value) {\r\n this.controleService.excluir(e.id).then(() => {\r\n this.getControleByCriterios()\r\n })\r\n return;\r\n }\r\n return;\r\n });\r\n }\r\n\r\n setCriteriosAvaliacaoRiscosId(criteriosAvaliacaoRiscosId: number) {\r\n this.criteriosAvaliacaoRiscosId = criteriosAvaliacaoRiscosId\r\n this.getControleByCriterios()\r\n }\r\n\r\n getControleByCriterios() {\r\n this.controleService.obter(this.criteriosAvaliacaoRiscosId, true, true).then((res) => {\r\n // this.dataSource = new MatTableDataSource(res.dados);\r\n // this.dataSource._updateChangeSubscription();\r\n this.listRisco = res.dados\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n }\r\n\r\n abrirModalControle(element?: IControle) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = \"modal-component\";\r\n dialogConfig.width = \"650px\";\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n id: element ? element.id : 0,\r\n avaliacao: element?.avaliacao,\r\n valorDoRisco: element?.valorDoRisco,\r\n situacaoControle: element?.situacaoControle,\r\n nivelDaConfianca: element?.nivelDaConfianca,\r\n criteriosAvaliacaoRiscosId: this.criteriosAvaliacaoRiscosId,\r\n ativo: element?.ativo,\r\n listData : this.listRisco\r\n };\r\n const modal = this.matDialog.open(\r\n ModalControleComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.getControleByCriterios();\r\n }\r\n });\r\n }\r\n\r\n onDrop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(this.listRisco, event.previousIndex, event.currentIndex);\r\n }\r\n \r\n this.listRisco.forEach((element, idx) => {\r\n element.ordem = (idx + 1).toString();\r\n this.controleService.atualizar(element)\r\n })\r\n \r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
AvaliaçãoRisco de Controle - RCAções
{{element?.avaliacao}}{{element?.valorDoRisco}}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import { AfterViewInit, Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IControle } from 'src/app/models/controle.model';\r\nimport { ControleService } from 'src/app/services/controle.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-controle',\r\n templateUrl: './modal-controle.component.html',\r\n styleUrls: ['./modal-controle.component.scss']\r\n})\r\nexport class ModalControleComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n\r\n model = {} as IControle;\r\n anoSelecionado: number;\r\n txtBtnConcluir: string;\r\n campoObrigatorio = false;\r\n atualizando = false;\r\n\r\n listData: any[] = []\r\n\r\n avaliacaoList = [\r\n { id: 1, nome: 'Inexistente' },\r\n { id: 2, nome: 'Fraco' },\r\n { id: 2, nome: 'Mediano' },\r\n { id: 4, nome: 'Satisfatório' },\r\n { id: 5, nome: 'Forte' },\r\n ]\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private serviceControle: ControleService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.model.id = data?.id;\r\n this.model.avaliacao = data?.avaliacao;\r\n this.model.valorDoRisco = data?.valorDoRisco;\r\n this.model.situacaoControle = data?.situacaoControle;\r\n this.model.nivelDaConfianca = data?.nivelDaConfianca;\r\n this.model.criteriosAvaliacaoRiscosId = data?.criteriosAvaliacaoRiscosId;\r\n this.model.ativo = data?.ativo;\r\n this.listData = data?.listData\r\n\r\n if (!this.model.id || this.model.id == 0) {\r\n this.atualizando = false;\r\n this.txtBtnConcluir = \"Inserir\"\r\n }\r\n else {\r\n this.atualizando = true;\r\n this.txtBtnConcluir = \"Atualizar\"\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n concluir() {\r\n\r\n let dados = this.listData.find(o => o.avaliacao == this.model.avaliacao)\r\n dados = this.listData.find(o => o.valorDoRisco == this.model.valorDoRisco)\r\n\r\n if (dados) {\r\n this.exibirMensagemErro('Nome do Controle ou valor já adicionado! Informe outro nome ou valor para prosseguir.')\r\n return\r\n }\r\n\r\n\r\n if (this.atualizando) {\r\n this.serviceControle.atualizar(this.model).then((res) => { this.dialogRef.close(true); })\r\n } else {\r\n this.model.ordem = this.proximaOrdem(this.listData)\r\n this.serviceControle.inserir(this.model).then((res) => { this.dialogRef.close(true); })\r\n }\r\n }\r\n\r\n setNiveisConfianca() {\r\n if (this.model.avaliacao == 'Inexistente') {\r\n this.model.nivelDaConfianca = ''\r\n return\r\n }\r\n if (this.model.avaliacao == 'Fraco') {\r\n this.model.nivelDaConfianca = '20%'\r\n return\r\n }\r\n if (this.model.avaliacao == 'Mediano') {\r\n this.model.nivelDaConfianca = '40%'\r\n return\r\n }\r\n if (this.model.avaliacao == 'Satisfatório') {\r\n this.model.nivelDaConfianca = '60%'\r\n return\r\n }\r\n if (this.model.avaliacao == 'Forte') {\r\n this.model.nivelDaConfianca = '80%'\r\n return\r\n }\r\n }\r\n\r\n setValorRisco() {\r\n if (this.model.avaliacao == 'Inexistente') {\r\n this.model.valorDoRisco = '1,00'\r\n return\r\n }\r\n if (this.model.avaliacao == 'Fraco') {\r\n this.model.valorDoRisco = '0,8'\r\n return\r\n }\r\n if (this.model.avaliacao == 'Mediano') {\r\n this.model.valorDoRisco = '0,6'\r\n return\r\n }\r\n if (this.model.avaliacao == 'Satisfatório') {\r\n this.model.valorDoRisco = '0,4'\r\n return\r\n }\r\n if (this.model.avaliacao == 'Forte') {\r\n this.model.valorDoRisco = '0,2'\r\n return\r\n }\r\n }\r\n\r\n setValues() {\r\n this.setNiveisConfianca()\r\n this.setValorRisco()\r\n }\r\n\r\n proximaOrdem(array: any[]): number {\r\n if (array.length === 0) {\r\n return 1;\r\n }\r\n\r\n const maxOrdem = array.reduce((max, item) => {\r\n return item.ordem > max ? item.ordem : max;\r\n }, -Infinity);\r\n\r\n return maxOrdem + 1;\r\n }\r\n\r\n getRiscoControle(e: any) {\r\n let retorno = \"\"\r\n if (e.valor_1) {\r\n retorno = `${e.operador} ${e.valor} e ${e.operador_1} ${e.valor_1}`\r\n } else if (e.valor) {\r\n retorno = `${e.operador} ${e.valor}`\r\n }\r\n return retorno\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Adicionar Controle

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ICriteriosAvaliacaoRiscos } from 'src/app/models/criterios-avaliacao-riscos.model';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { CriteriosAvaliacaoRiscoService } from 'src/app/services/criterios-avaliacao-risco.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-criterios-avaliacao-form-dados',\r\n templateUrl: './criterios-avaliacao-form-dados.component.html',\r\n styleUrls: ['./criterios-avaliacao-form-dados.component.scss']\r\n})\r\nexport class CriteriosAvaliacaoFormDadosComponent implements OnInit {\r\n\r\n @Output() updateData: EventEmitter = new EventEmitter();\r\n\r\n criteriosList: any[] = []\r\n public filtro = {} as FiltroModel;\r\n\r\n id: number = 0\r\n form = new FormGroup({\r\n id: new FormControl({ value: '0', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required)\r\n });\r\n\r\n visualizar = false\r\n\r\n constructor(\r\n public route: ActivatedRoute,\r\n private service: CriteriosAvaliacaoRiscoService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.buscar();\r\n }\r\n\r\n getDataById(e: any) {\r\n if (e) {\r\n this.service.obterPorId(e).then((r) => {\r\n this.form.patchValue(r.dados)\r\n this.updateData.emit(r.dados)\r\n })\r\n }\r\n }\r\n\r\n salvarDados(e: any) {\r\n let dados = this.form.getRawValue() as ICriteriosAvaliacaoRiscos\r\n let hasData = this.criteriosList.find(o => o.nome == dados.nome)\r\n\r\n if (hasData && dados?.id == 0) {\r\n dados.id = 0\r\n dados.nome = ''\r\n dados.descricao = ''\r\n this.form.patchValue(dados)\r\n this.exibirMensagemErro(\"Este registro não poderá ser salvo! Informe outro nome!\");\r\n return\r\n }\r\n\r\n if (!dados.descricao || dados.descricao == '') {\r\n this.exibirMensagemErro(\"O campo descrição deve ser informado\");\r\n }\r\n\r\n if (dados?.id == 0) {\r\n this.service.inserir(dados).then((res: any) => {\r\n this.form.patchValue(res.dados)\r\n this.updateData.emit(res.dados)\r\n })\r\n } else {\r\n this.service.atualizar(dados)\r\n }\r\n\r\n // this.getListData()\r\n }\r\n\r\n // getListData() {\r\n // this.service.obter(this.filtro.pesquisa, this.filtro.ativo, false).then((res) => {\r\n // this.criteriosList = res.dados\r\n // })\r\n // }\r\n\r\n exibirMensagemErro(mensagem: string, html: boolean = false) {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n html: mensagem,\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n }\r\n\r\n async buscar() {\r\n this.service\r\n .obter(this.filtro.pesquisa, this.filtro.ativo, false)\r\n .then((res) => {\r\n this.criteriosList = res.dados\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { INiveisRiscoResidual } from 'src/app/models/niveis-risco-residual.model';\r\nimport { NiveisRiscoResidualService } from 'src/app/services/niveis-risco-residual.service';\r\nimport Swal from 'sweetalert2';\r\nimport { ModalRiscoResidualComponent } from './modal-risco-residual/modal-risco-residual.component';\r\nimport { FormulaRiscoResidualComponent } from './formula-risco-residual/formula-risco-residual.component';\r\nimport { FormulaRiscoResidualService } from 'src/app/services/formula-risco-residual.service';\r\nimport { CdkDrag, CdkDragDrop, moveItemInArray, transferArrayItem } from \"@angular/cdk/drag-drop\";\r\nimport { NiveisRiscoInerenteService } from 'src/app/services/niveis-risco-inerente.service';\r\nimport { ControleService } from 'src/app/services/controle.service';\r\n\r\n@Component({\r\n selector: 'app-criterios-avaliacao-form-niveis-risco-residual',\r\n templateUrl: './criterios-avaliacao-form-niveis-risco-residual.component.html',\r\n styleUrls: ['./criterios-avaliacao-form-niveis-risco-residual.component.scss']\r\n})\r\nexport class CriteriosAvaliacaoFormNiveisRiscoResidualComponent implements OnInit {\r\n\r\n criteriosAvaliacaoRiscosId: any;\r\n formulaRiscoResidual: any;\r\n riscoInerente: any;\r\n avaliacaoControle: any;\r\n visualizar = false;\r\n dataSource = new MatTableDataSource([]);\r\n selectedModel: any;\r\n\r\n listRisco: any[] = []\r\n\r\n displayedColumnsNiveisRisco: string[] = [\r\n \"nome\",\r\n \"operador_1\",\r\n \"actions\"\r\n ];\r\n\r\n searchNome: string;\r\n searchAtivo = true;\r\n semDados = true;\r\n constructor(\r\n private niveisRiscoService: NiveisRiscoResidualService,\r\n private formulaRiscoService: FormulaRiscoResidualService,\r\n private controleService: ControleService,\r\n private niveisRiscoServiceInerente: NiveisRiscoInerenteService,\r\n public matDialog: MatDialog,\r\n ) { }\r\n\r\n setCriteriosAvaliacaoRiscosId(criteriosAvaliacaoRiscosId: number) {\r\n this.criteriosAvaliacaoRiscosId = criteriosAvaliacaoRiscosId\r\n this.getRiscoResidualByCriterios()\r\n this.getFormulaRiscoResidual()\r\n\r\n this.getNiveisRiscoByCriterios()\r\n this.getControleByCriterios()\r\n }\r\n\r\n\r\n ngOnInit(): void { }\r\n\r\n salvarDados(e: any) { }\r\n\r\n abrirNiveisDeRisco(element?: INiveisRiscoResidual) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = \"modal-component\";\r\n dialogConfig.width = \"1000px\";\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n id: element ? element.id : 0,\r\n nome: element?.nome,\r\n operador: element?.operador,\r\n valor: element?.valor,\r\n operador_1: element?.operador_1,\r\n valor_1: element?.valor_1,\r\n ativo: element?.ativo,\r\n criteriosAvaliacaoRiscosId: this.criteriosAvaliacaoRiscosId,\r\n listData: this.listRisco\r\n };\r\n\r\n const modal = this.matDialog.open(\r\n ModalRiscoResidualComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.getRiscoResidualByCriterios();\r\n this.getFormulaRiscoResidual();\r\n this.getControleByCriterios();\r\n this.getNiveisRiscoByCriterios();\r\n }\r\n });\r\n }\r\n\r\n excluir(e: any) {\r\n Swal.fire({\r\n title: \"Excluir Risco Residual\",\r\n text: \"Tem certeza que deseja excluir esse Risco?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then(async (result) => {\r\n if (result.value) {\r\n this.niveisRiscoService.excluir(e.id).then(() => {\r\n this.getRiscoResidualByCriterios()\r\n })\r\n return;\r\n }\r\n return;\r\n });\r\n }\r\n\r\n getRiscoResidualByCriterios() {\r\n this.niveisRiscoService.obter(this.criteriosAvaliacaoRiscosId, true, true).then((res) => {\r\n // this.dataSource = new MatTableDataSource(res.dados);\r\n // this.dataSource._updateChangeSubscription();\r\n this.listRisco = res.dados\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n }\r\n\r\n getFormulaRiscoResidual() {\r\n this.formulaRiscoService.obter(this.criteriosAvaliacaoRiscosId, true, true).then((res) => {\r\n this.formulaRiscoResidual = res?.dados[0]\r\n })\r\n }\r\n\r\n getRiscoControle(e: any) {\r\n let retorno = \"\"\r\n if (e.valor_1) {\r\n retorno = `${e.operador} ${e.valor} e ${e.operador_1} ${e.valor_1}`\r\n } else if (e.valor) {\r\n retorno = `${e.operador} ${e.valor}`\r\n }\r\n return retorno\r\n }\r\n\r\n abrirFormulaRisco() {\r\n debugger\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = \"modal-component\";\r\n dialogConfig.width = \"1000px\";\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n id: this.formulaRiscoResidual ? this.formulaRiscoResidual.id : 0,\r\n campo_1: this.formulaRiscoResidual?.campo_1,\r\n operador: this.formulaRiscoResidual?.operador,\r\n campo_2: this.formulaRiscoResidual?.campo_2,\r\n criteriosAvaliacaoRiscosId: this.criteriosAvaliacaoRiscosId,\r\n ativo: this.formulaRiscoResidual?.ativo,\r\n riscoInerente: this.riscoInerente,\r\n avaliacaoControle: this.avaliacaoControle\r\n };\r\n\r\n const modal = this.matDialog.open(\r\n FormulaRiscoResidualComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.getFormulaRiscoResidual()\r\n }\r\n });\r\n }\r\n\r\n getControleByCriterios() {\r\n this.controleService.obter(this.criteriosAvaliacaoRiscosId, true, true).then((res) => {\r\n this.avaliacaoControle = res?.dados\r\n })\r\n }\r\n\r\n getNiveisRiscoByCriterios() {\r\n this.niveisRiscoServiceInerente.obter(this.criteriosAvaliacaoRiscosId, true, true).then((res) => {\r\n this.riscoInerente = res?.dados\r\n })\r\n }\r\n\r\n\r\n onDrop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(this.listRisco, event.previousIndex, event.currentIndex);\r\n }\r\n\r\n this.listRisco.forEach((element, idx) => {\r\n element.ordem = (idx + 1).toString();\r\n this.niveisRiscoService.atualizar(element)\r\n })\r\n\r\n }\r\n\r\n exibirMensagemErro(mensagem: string, html: boolean = false) {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n html: mensagem,\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ClassificaçãoValor RR
{{element.nome}}{{getRiscoControle(element)}}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Fórmula
\r\n \r\n
{{this.formulaRiscoResidual?.campo_1}}\r\n {{this.formulaRiscoResidual?.operador}} {{this.formulaRiscoResidual?.campo_2}}
\r\n
","import { AfterViewInit, Component, Inject, OnInit } from '@angular/core';\r\nimport { FormArray, FormBuilder, FormGroup } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IFormulaRiscoResidual } from 'src/app/models/formula-risco-residual.model';\r\nimport { FormulaRiscoResidualService } from 'src/app/services/formula-risco-residual.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\n\r\n@Component({\r\n selector: 'app-formula-risco-residual',\r\n templateUrl: './formula-risco-residual.component.html',\r\n styleUrls: ['./formula-risco-residual.component.scss']\r\n})\r\nexport class FormulaRiscoResidualComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n\r\n model = {} as IFormulaRiscoResidual;\r\n anoSelecionado: number;\r\n txtBtnConcluir: string;\r\n campoObrigatorio = false;\r\n atualizando = false;\r\n\r\n riscoInerente = [\r\n { nome: 'Valor do Risco Inerente' },\r\n { nome: 'Risco do Controle' }\r\n ]\r\n\r\n avaliacaoControle = [\r\n { nome: 'Valor do Risco Inerente' },\r\n { nome: 'Risco do Controle' }\r\n ]\r\n\r\n textoModal = 'Editar Fórmula do Risco Residual - RR'\r\n\r\n operadorList: any[] = [\r\n { id: '+', nome: 'Soma (+)' },\r\n { id: '/', nome: 'Divisão (/)' },\r\n { id: '*', nome: 'Multiplicação (*)' },\r\n { id: '-', nome: 'Subtração (-)' }\r\n ];\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private serviceFormulaRiscoResidual: FormulaRiscoResidualService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.model.id = data.id;\r\n this.model.campo_1 = data?.campo_1;\r\n this.model.campo_2 = data?.campo_2;\r\n this.model.operador = data?.operador;\r\n this.model.ativo = data?.ativo;\r\n this.model.criteriosAvaliacaoRiscosId = data?.criteriosAvaliacaoRiscosId;\r\n\r\n if (!this.model.id || this.model.id == 0) {\r\n this.atualizando = false;\r\n this.txtBtnConcluir = \"Salvar\"\r\n }\r\n else {\r\n this.atualizando = true;\r\n this.txtBtnConcluir = \"Salvar\"\r\n this.textoModal = 'Editar Fórmula do Risco Residual - RR'\r\n }\r\n\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n concluir() {\r\n if (this.atualizando) {\r\n this.serviceFormulaRiscoResidual.atualizar(this.model).then((res) => { this.dialogRef.close(true); })\r\n } else {\r\n this.serviceFormulaRiscoResidual.inserir(this.model).then((res) => { this.dialogRef.close(true); })\r\n }\r\n }\r\n\r\n cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

{{textoModal}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
","import { AfterViewInit, Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { INiveisRiscoResidual } from 'src/app/models/niveis-risco-residual.model';\r\nimport { NiveisRiscoResidualService } from 'src/app/services/niveis-risco-residual.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-risco-residual',\r\n templateUrl: './modal-risco-residual.component.html',\r\n styleUrls: ['./modal-risco-residual.component.scss']\r\n})\r\nexport class ModalRiscoResidualComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n\r\n model = {} as INiveisRiscoResidual;\r\n anoSelecionado: number;\r\n txtBtnConcluir: string;\r\n campoObrigatorio = false;\r\n atualizando = false;\r\n\r\n listData: any[] = []\r\n\r\n textoModal = 'Adicionar Classificação do Risco Residual'\r\n\r\n operadorList: any[] = [\r\n { id: '>=', nome: 'Maior ou Igual (>=)' },\r\n { id: '<=', nome: 'Menor ou Igual (<=)' },\r\n { id: '>', nome: 'Maior (>)' },\r\n { id: '<', nome: 'Menor (<)' },\r\n { id: '!=', nome: 'Diferente (!=)' },\r\n { id: '=', nome: 'Igual (=)' }\r\n ];\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private serviceRiscoResidual: NiveisRiscoResidualService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n this.model.id = data.id;\r\n this.model.nome = data?.nome;\r\n this.model.operador = data?.operador;\r\n this.model.valor = data?.valor;\r\n this.model.operador_1 = data?.operador_1;\r\n this.model.valor_1 = data?.valor_1;\r\n this.model.ativo = data?.ativo;\r\n this.model.criteriosAvaliacaoRiscosId = data?.criteriosAvaliacaoRiscosId;\r\n this.listData = data?.listData\r\n\r\n if (!this.model.id || this.model.id == 0) {\r\n this.atualizando = false;\r\n this.txtBtnConcluir = \"Inserir\"\r\n }\r\n else {\r\n this.atualizando = true;\r\n this.txtBtnConcluir = \"Atualizar\"\r\n this.textoModal = 'Editar Classificação do Risco Residual'\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n concluir() {\r\n\r\n let dados = this.listData.find(o => o.nome == this.model.nome)\r\n\r\n if (dados) {\r\n this.exibirMensagemErro('Nome da Classificação de Risco já adicionado! Informe outro nome para prosseguir')\r\n return\r\n }\r\n\r\n if (this.atualizando) {\r\n this.serviceRiscoResidual.atualizar(this.model).then((res) => { this.dialogRef.close(true); })\r\n } else {\r\n this.model.ordem = this.proximaOrdem(this.listData)\r\n this.serviceRiscoResidual.inserir(this.model).then((res) => { this.dialogRef.close(true); })\r\n }\r\n }\r\n\r\n cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n proximaOrdem(array: any[]): number {\r\n if (array.length === 0) {\r\n return 1;\r\n }\r\n\r\n const maxOrdem = array.reduce((max, item) => {\r\n return item.ordem > max ? item.ordem : max;\r\n }, -Infinity);\r\n\r\n return maxOrdem + 1;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

{{textoModal}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
Risco Residual
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IEscalas } from 'src/app/models/escalas.model';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { INiveisRiscoInerente } from 'src/app/models/niveis-risco-inerente.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { EscalasService } from 'src/app/services/escalas.service';\r\nimport { NiveisRiscoInerenteService } from 'src/app/services/niveis-risco-inerente.service';\r\nimport { ModalEscalasComponent } from './modal-escalas/modal-escalas.component';\r\nimport Swal from 'sweetalert2';\r\nimport { ModalRiscoInerenteComponent } from './modal-risco-inerente/modal-risco-inerente.component';\r\nimport { ModalFormulaRiscoInerenteComponent } from './modal-formula-risco-inerente/modal-formula-risco-inerente.component';\r\nimport { FormulaRiscoInerenteService } from 'src/app/services/formula-risco-inerente.service';\r\nimport { CdkDrag, CdkDragDrop, moveItemInArray, transferArrayItem } from \"@angular/cdk/drag-drop\";\r\n\r\n@Component({\r\n selector: 'app-criterios-avaliacao-form-risco-inerente',\r\n templateUrl: './criterios-avaliacao-form-risco-inerente.component.html',\r\n styleUrls: ['./criterios-avaliacao-form-risco-inerente.component.scss']\r\n})\r\nexport class CriteriosAvaliacaoFormRiscoInerenteComponent implements OnInit {\r\n\r\n criteriosAvaliacaoRiscosId: any;\r\n formulaRiscoInerente: any;\r\n visualizar = false;\r\n escalasDataSource = new MatTableDataSource([]);\r\n niveisRiscoDataSource = new MatTableDataSource([]);\r\n selectedModel: IEscalas;\r\n\r\n niveisRiscoList: any[] = []\r\n escalaList: any[] = []\r\n\r\n displayedEscalasColumns: string[] = [\r\n \"nome\",\r\n \"actions\",\r\n ];\r\n\r\n displayedColumnsNiveisRisco: string[] = [\r\n \"nome\",\r\n \"operador_1\",\r\n \"actions\"\r\n ];\r\n\r\n searchNome: string;\r\n searchAtivo = true;\r\n semDadosEscalas = true;\r\n semDadosNiveisRisco = true;\r\n permissoes: IPermissaoModel;\r\n filtro = {} as FiltroModel;\r\n totalItens: number;\r\n pageEvent: any;\r\n\r\n constructor(\r\n private escalasService: EscalasService,\r\n public matDialog: MatDialog,\r\n private formulaRiscoService: FormulaRiscoInerenteService,\r\n private niveisRiscoService: NiveisRiscoInerenteService\r\n ) { }\r\n\r\n setCriteriosAvaliacaoRiscosId(criteriosAvaliacaoRiscosId: number) {\r\n this.criteriosAvaliacaoRiscosId = criteriosAvaliacaoRiscosId\r\n this.getEscalasByCriterios();\r\n this.getNiveisRiscoByCriterios();\r\n this.getFormulaRiscoInerente();\r\n }\r\n\r\n ngOnInit(): void { }\r\n\r\n salvarDados(e: any) { }\r\n\r\n editarEscalas(e: any) {\r\n this.abrirModalEscalas(e)\r\n }\r\n\r\n visualizarEscalas(e: any) {\r\n this.abrirModalEscalas(e, true)\r\n }\r\n\r\n editarNivelInerente(e: any) {\r\n this.abrirNiveisDeRisco(e)\r\n }\r\n\r\n excluirRiscoInerente(e: any) {\r\n Swal.fire({\r\n title: \"Excluir Risco Inerente\",\r\n text: \"Tem certeza que deseja excluir esse Risco?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then(async (result) => {\r\n if (result.value) {\r\n this.niveisRiscoService.excluir(e.id).then(() => {\r\n this.getNiveisRiscoByCriterios()\r\n })\r\n return;\r\n }\r\n return;\r\n });\r\n }\r\n\r\n excluirEscalas(e: any) {\r\n Swal.fire({\r\n title: \"Excluir Escalas\",\r\n text: \"Tem certeza que deseja excluir essa escala?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then(async (result) => {\r\n if (result.value) {\r\n this.escalasService.excluir(e.id).then((res) => {\r\n if (!res?.sucesso) {\r\n this.exibirMensagemErro(res?.mensagem.descricao);\r\n }\r\n this.getEscalasByCriterios()\r\n })\r\n return;\r\n }\r\n return;\r\n });\r\n }\r\n\r\n abrirModalEscalas(element?: IEscalas, visualizar: boolean = false) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = \"modal-component\";\r\n dialogConfig.width = \"650px\";\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n id: element ? element.id : 0,\r\n nome: element?.nome,\r\n ativo: element?.ativo,\r\n criteriosAvaliacaoRiscosId: this.criteriosAvaliacaoRiscosId,\r\n visualizar: visualizar,\r\n };\r\n\r\n const modal = this.matDialog.open(\r\n ModalEscalasComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.getEscalasByCriterios();\r\n }\r\n });\r\n }\r\n\r\n\r\n abrirNiveisDeRisco(element?: INiveisRiscoInerente) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = \"modal-component\";\r\n dialogConfig.width = \"1000px\";\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n id: element ? element.id : 0,\r\n nome: element?.nome,\r\n operador: element?.operador,\r\n valor: element?.valor,\r\n operador_1: element?.operador_1,\r\n valor_1: element?.valor_1,\r\n ativo: element?.ativo,\r\n criteriosAvaliacaoRiscosId: this.criteriosAvaliacaoRiscosId,\r\n listData: this.niveisRiscoList\r\n };\r\n\r\n const modal = this.matDialog.open(\r\n ModalRiscoInerenteComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.getNiveisRiscoByCriterios();\r\n }\r\n });\r\n }\r\n\r\n\r\n getEscalasByCriterios() {\r\n this.escalasService.obter(this.criteriosAvaliacaoRiscosId, true, true).then((res) => {\r\n // this.escalasDataSource = new MatTableDataSource(res.dados);\r\n // this.escalasDataSource._updateChangeSubscription();\r\n this.escalaList = res.dados\r\n this.semDadosEscalas = this.escalasDataSource.filteredData.length === 0;\r\n })\r\n }\r\n\r\n getNiveisRiscoByCriterios() {\r\n this.niveisRiscoService.obter(this.criteriosAvaliacaoRiscosId, true, true).then((res) => {\r\n // this.niveisRiscoDataSource = new MatTableDataSource(res.dados);\r\n // this.niveisRiscoDataSource._updateChangeSubscription();\r\n this.semDadosNiveisRisco = this.niveisRiscoDataSource.filteredData.length === 0;\r\n this.niveisRiscoList = res.dados\r\n })\r\n }\r\n\r\n getRiscoControle(e: any) {\r\n let retorno = \"\"\r\n if (e.valor_1) {\r\n retorno = `${e.operador} ${e.valor} e ${e.operador_1} ${e.valor_1}`\r\n } else if (e.valor) {\r\n retorno = `${e.operador} ${e.valor}`\r\n }\r\n return retorno\r\n }\r\n\r\n abrirFormulaRisco() {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = \"modal-component\";\r\n dialogConfig.width = \"1000px\";\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n id: this.formulaRiscoInerente ? this.formulaRiscoInerente.id : 0,\r\n descricao: this.formulaRiscoInerente?.descricao,\r\n dadosFormula: this.formulaRiscoInerente?.dadosFormula,\r\n criteriosAvaliacaoRiscosId: this.criteriosAvaliacaoRiscosId,\r\n ativo: this.formulaRiscoInerente?.ativo\r\n };\r\n\r\n const modal = this.matDialog.open(\r\n ModalFormulaRiscoInerenteComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.getNiveisRiscoByCriterios();\r\n this.getFormulaRiscoInerente()\r\n }\r\n });\r\n }\r\n\r\n getFormulaRiscoInerente() {\r\n this.formulaRiscoService.obter(this.criteriosAvaliacaoRiscosId, true, true).then((res) => {\r\n this.formulaRiscoInerente = res?.dados[0]\r\n })\r\n }\r\n\r\n onDrop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(this.niveisRiscoList, event.previousIndex, event.currentIndex);\r\n }\r\n\r\n this.niveisRiscoList.forEach((element, idx) => {\r\n element.ordem = (idx + 1).toString();\r\n this.niveisRiscoService.atualizar(element)\r\n })\r\n }\r\n\r\n exibirMensagemErro(mensagem: string, html: boolean = false) {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n html: mensagem,\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{ element?.nome }}\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
AvaliaçãoRisco de ControleAções
{{ element?.nome }}{{getRiscoControle(element)}}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Fórmula
\r\n \r\n
{{this.formulaRiscoInerente?.descricao}}
\r\n
","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { IMaginitudesEscalaRisco } from 'src/app/models/maginitudes-escala-risco.model';\r\nimport { MagnitudesEscalaRiscoService } from 'src/app/services/magnitudes-escala-risco.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-form-magnitude-escala',\r\n templateUrl: './form-magnitude-escala.component.html',\r\n styleUrls: ['./form-magnitude-escala.component.scss']\r\n})\r\nexport class FormMagnitudeEscalaComponent implements OnInit {\r\n @Input() visualizar: boolean = false\r\n @Output() updateData = new EventEmitter();\r\n\r\n model = {} as IMaginitudesEscalaRisco;\r\n anoSelecionado: number;\r\n txtBtnConcluir: string;\r\n campoObrigatorio = false;\r\n atualizando = false;\r\n existsItem = false;\r\n escalaId: number\r\n\r\n listData: any[] = []\r\n\r\n magnitudeList = [\r\n { id: '1', nome: 'Muito Baixa' },\r\n { id: '2', nome: 'Baixa' },\r\n { id: '3', nome: 'Media' },\r\n { id: '4', nome: 'Alta' },\r\n { id: '5', nome: 'Muito Alta' }\r\n ]\r\n\r\n constructor(private serviceMagnitude: MagnitudesEscalaRiscoService) {\r\n this.model.descricao = ''\r\n }\r\n\r\n setListData(e: any) {\r\n this.listData = e\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n setEscalaId(escalaId: number) {\r\n this.escalaId = escalaId\r\n }\r\n\r\n concluir() {\r\n let dados = this.listData.find(o => o.magnitude == this.model.magnitude)\r\n if (!dados) { dados = this.listData.find(o => o.valor == this.model.valor) }\r\n\r\n if (dados) {\r\n this.existsItem = true;\r\n this.model.descricao = ''\r\n this.model.magnitude = null\r\n this.model.valor = 0\r\n return\r\n }\r\n\r\n if (this.model.id > 0) { this.model.id = undefined }\r\n\r\n if (this.model.magnitude == '0' || !this.model.magnitude) {\r\n Swal.fire({ title: \"Erro\", text: 'Magnitude não informada', icon: \"error\" });\r\n return\r\n }\r\n\r\n if (this.model.valor == 0 || !this.model.valor) {\r\n Swal.fire({ title: \"Erro\", text: 'Valor não informado', icon: \"error\" });\r\n return\r\n }\r\n\r\n this.model.escalasId = this.escalaId\r\n this.model.ordem = this.proximaOrdem(this.listData)\r\n this.serviceMagnitude.inserir(this.model).then((res) => {\r\n this.updateData.emit(this.escalaId)\r\n })\r\n }\r\n\r\n proximaOrdem(array: any[]): number {\r\n if (array.length === 0) {\r\n return 1;\r\n }\r\n\r\n const maxOrdem = array.reduce((max, item) => {\r\n return item.ordem > max ? item.ordem : max;\r\n }, -Infinity);\r\n\r\n return maxOrdem + 1;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Escala de Impacto já adicionada! Informe outro valor para\r\n prosseguir\r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { CdkDrag, CdkDragDrop, moveItemInArray, transferArrayItem } from \"@angular/cdk/drag-drop\";\r\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MagnitudesEscalaRiscoService } from 'src/app/services/magnitudes-escala-risco.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-grid-magnitude-escala',\r\n templateUrl: './grid-magnitude-escala.component.html',\r\n styleUrls: ['./grid-magnitude-escala.component.scss']\r\n})\r\nexport class GridMagnitudeEscalaComponent implements OnInit {\r\n\r\n @Input() visualizar: boolean = false;\r\n @Output() updatedData = new EventEmitter();\r\n @Output() viewData = new EventEmitter();\r\n\r\n\r\n escalaId: any;\r\n magnitudeList = [\r\n { id: '1', nome: 'Muito Baixa' },\r\n { id: '2', nome: 'Baixa' },\r\n { id: '3', nome: 'Media' },\r\n { id: '4', nome: 'Alta' },\r\n { id: '5', nome: 'Muito Alta' }\r\n ]\r\n criteriosAvaliacaoRiscosId: any;\r\n dataSource = new MatTableDataSource([]);\r\n selectedModel: any;\r\n displayedColumns: string[] = [\r\n \"avaliacao\",\r\n \"valorDoRisco\",\r\n \"actions\",\r\n ];\r\n\r\n listData: any[] = []\r\n\r\n searchNome: string;\r\n searchAtivo = true;\r\n semDados = true;\r\n constructor(\r\n private service: MagnitudesEscalaRiscoService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n excluir(e: any) {\r\n Swal.fire({\r\n title: \"Excluir\",\r\n text: \"Tem certeza que deseja excluir esse registro?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then(async (result) => {\r\n if (result.value) {\r\n this.service.excluir(e.id).then(() => {\r\n this.getMagnitudeByEscala()\r\n })\r\n return;\r\n }\r\n return;\r\n });\r\n }\r\n\r\n onViewData(e: any) {\r\n this.viewData.emit(e)\r\n }\r\n\r\n setEscalaId(escalaId: number) {\r\n this.escalaId = escalaId\r\n this.getMagnitudeByEscala()\r\n }\r\n\r\n getMagnitudeName(e: any) {\r\n return this.magnitudeList.find(o => o.id == e)?.nome\r\n }\r\n\r\n getMagnitudeByEscala() {\r\n this.service.obter(this.escalaId, true, true).then((res) => {\r\n // this.dataSource = new MatTableDataSource(res.dados);\r\n // this.dataSource._updateChangeSubscription();\r\n // this.semDados = this.dataSource.filteredData.length === 0;\r\n this.semDados = res.dados.length === 0;\r\n this.updatedData.emit(res.dados)\r\n this.listData = res.dados\r\n })\r\n }\r\n\r\n onDrop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(this.listData, event.previousIndex, event.currentIndex);\r\n }\r\n\r\n this.listData.forEach((element, idx) => {\r\n element.ordem = (idx + 1).toString();\r\n this.service.atualizar(element)\r\n })\r\n\r\n }\r\n\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ValorMagnitudeAções
{{ element?.valor }}{{element.magnitude}}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
","import { AfterViewInit, Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IEscalas } from 'src/app/models/escalas.model';\r\nimport { EscalasService } from 'src/app/services/escalas.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { FormMagnitudeEscalaComponent } from './form-magnitude-escala/form-magnitude-escala.component';\r\nimport { GridMagnitudeEscalaComponent } from './grid-magnitude-escala/grid-magnitude-escala.component';\r\n\r\n@Component({\r\n selector: 'app-modal-escalas',\r\n templateUrl: './modal-escalas.component.html',\r\n styleUrls: ['./modal-escalas.component.scss']\r\n})\r\nexport class ModalEscalasComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n\r\n @ViewChild(FormMagnitudeEscalaComponent, { static: false }) magnitudeEscalas!: FormMagnitudeEscalaComponent;\r\n @ViewChild(GridMagnitudeEscalaComponent, { static: false }) gridMagnitudeEscalas!: GridMagnitudeEscalaComponent;\r\n\r\n model = {} as IEscalas;\r\n anoSelecionado: number;\r\n txtBtnConcluir: string;\r\n campoObrigatorio = false;\r\n atualizando = false;\r\n\r\n titulo = 'Escalas'\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private serviceEscalas: EscalasService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.model.id = data?.id;\r\n this.model.nome = data?.nome;\r\n this.model.criteriosAvaliacaoRiscosId = data?.criteriosAvaliacaoRiscosId;\r\n this.model.ativo = data?.ativo;\r\n this.visualizar = data?.visualizar\r\n\r\n if (!this.model.id || this.model.id == 0) {\r\n this.atualizando = false;\r\n this.txtBtnConcluir = \"Inserir\"\r\n this.titulo = 'Adicionar Escala'\r\n }\r\n else {\r\n this.atualizando = true;\r\n this.txtBtnConcluir = \"Atualizar\"\r\n this.titulo = 'Adicionar Magnitudes da Escala de Risco'\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.gridMagnitudeEscalas.setEscalaId(this.model.id)\r\n this.magnitudeEscalas.setEscalaId(this.model.id)\r\n }\r\n\r\n updateData() {\r\n this.gridMagnitudeEscalas.setEscalaId(this.model.id);\r\n }\r\n\r\n setListData(e: any) {\r\n this.magnitudeEscalas.setListData(e)\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n concluir() {\r\n if (this.atualizando) {\r\n this.serviceEscalas.atualizar(this.model).then((res) => { this.dialogRef.close(true); })\r\n } else {\r\n this.serviceEscalas.inserir(this.model).then((res) => { this.dialogRef.close(true); })\r\n }\r\n }\r\n\r\n viewData(e: any) {\r\n this.magnitudeEscalas.model = {\r\n id : undefined,\r\n valor: e.valor,\r\n magnitude: e.magnitude,\r\n descricao: e.descricao,\r\n escalasId: e.escalasId,\r\n ordem: e.ordem,\r\n ativo: e.ativo\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Níveis
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
","import { AfterViewInit, Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IFormulaRiscoInerente } from 'src/app/models/formula-risco-inerente.model';\r\nimport { IFormulaRiscoResidual } from 'src/app/models/formula-risco-residual.model';\r\nimport { EscalasService } from 'src/app/services/escalas.service';\r\nimport { FormulaRiscoInerenteService } from 'src/app/services/formula-risco-inerente.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\n\r\n@Component({\r\n selector: 'app-modal-formula-risco-inerente',\r\n templateUrl: './modal-formula-risco-inerente.component.html',\r\n styleUrls: ['./modal-formula-risco-inerente.component.scss']\r\n})\r\nexport class ModalFormulaRiscoInerenteComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n\r\n model = {} as IFormulaRiscoInerente;\r\n anoSelecionado: number;\r\n txtBtnConcluir: string;\r\n campoObrigatorio = false;\r\n atualizando = false;\r\n escalasDataSource: any[] = []\r\n listData: any[] = []\r\n\r\n textoModal = 'Editar Fórmula do Risco Inerente - RI'\r\n\r\n operadorList: any[] = [\r\n { id: '+', nome: 'Soma (+)' },\r\n { id: '/', nome: 'Divisão (/)' },\r\n { id: '*', nome: 'Multiplicação (*)' },\r\n { id: '-', nome: 'Subtração (-)' }\r\n ];\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n private escalasService: EscalasService,\r\n router: Router,\r\n private serviceFormulaRiscoInerente: FormulaRiscoInerenteService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.model.id = data.id;\r\n this.model.descricao = data?.descricao;\r\n this.model.dadosFormula = data?.dadosFormula;\r\n this.model.ativo = data?.ativo;\r\n this.model.criteriosAvaliacaoRiscosId = data?.criteriosAvaliacaoRiscosId;\r\n\r\n if (!this.model.id || this.model.id == 0) {\r\n this.atualizando = false;\r\n this.txtBtnConcluir = \"Salvar\"\r\n }\r\n else {\r\n this.atualizando = true;\r\n this.txtBtnConcluir = \"Salvar\"\r\n this.textoModal = 'Editar Fórmula do Risco Inerente - RI'\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getEscalasByCriterios()\r\n }\r\n\r\n concluir() {\r\n this.model.descricao = this.getDescription(this.listData);\r\n this.model.dadosFormula = JSON.stringify(this.listData)\r\n this.model.ativo = true;\r\n\r\n //\r\n if (this.atualizando) {\r\n this.serviceFormulaRiscoInerente.atualizar(this.model).then((res) => { this.dialogRef.close(true); })\r\n } else {\r\n this.serviceFormulaRiscoInerente.inserir(this.model).then((res) => { this.dialogRef.close(true); })\r\n }\r\n }\r\n\r\n cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n getEscalasByCriterios() {\r\n this.escalasService.obter(this.model.criteriosAvaliacaoRiscosId as any, true, true).then((res) => {\r\n this.escalasDataSource = res?.dados\r\n res?.dados.forEach(() => {\r\n this.listData.push({ campo: '', operador: '' })\r\n })\r\n\r\n let dadosFormula = this.getDadosFormuma(this.listData, JSON.parse(this.model.dadosFormula))\r\n this.listData = dadosFormula\r\n })\r\n }\r\n\r\n getDescription(escalas: { campo: string; operador: string }[]): string {\r\n return escalas\r\n .map((e, i, arr) => i < arr.length - 1 ? `${e.campo} ${e.operador}` : e.campo)\r\n .join(\" \")\r\n .trim();\r\n // return escalas.filter(e => e.operador !== \"\").map(e => `${e.campo} ${e.operador}`.trim()).join(\" \").trim();\r\n }\r\n\r\n getDadosFormuma(escala: any[], dadosFormulaOld: any[]): any[] {\r\n return escala.map((item, index) => {\r\n if (index < dadosFormulaOld.length) {\r\n return { ...dadosFormulaOld[index] };\r\n }\r\n return item;\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

{{textoModal}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
","import { THIS_EXPR } from '@angular/compiler/src/output/output_ast';\r\nimport { AfterViewInit, Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { INiveisRiscoInerente } from 'src/app/models/niveis-risco-inerente.model';\r\nimport { NiveisRiscoInerenteService } from 'src/app/services/niveis-risco-inerente.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-risco-inerente',\r\n templateUrl: './modal-risco-inerente.component.html',\r\n styleUrls: ['./modal-risco-inerente.component.scss']\r\n})\r\nexport class ModalRiscoInerenteComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n\r\n model = {} as INiveisRiscoInerente;\r\n anoSelecionado: number;\r\n txtBtnConcluir: string;\r\n campoObrigatorio = false;\r\n atualizando = false;\r\n\r\n listData: any[] = []\r\n\r\n textoModal = 'Adicionar Nível de Risco'\r\n\r\n operadorList: any[] = [\r\n { id: '>=', nome: 'Maior ou Igual (>=)' },\r\n { id: '<=', nome: 'Menor ou Igual (<=)' },\r\n { id: '>', nome: 'Maior (>)' },\r\n { id: '<', nome: 'Menor (<)' },\r\n { id: '!=', nome: 'Diferente (!=)' },\r\n { id: '=', nome: 'Igual (=)' }\r\n ];\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private serviceRiscoInerente: NiveisRiscoInerenteService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n this.model.id = data.id;\r\n this.model.nome = data?.nome;\r\n this.model.operador = data?.operador;\r\n this.model.valor = data?.valor;\r\n this.model.operador_1 = data?.operador_1;\r\n this.model.valor_1 = data?.valor_1;\r\n this.model.ativo = data?.ativo;\r\n this.model.criteriosAvaliacaoRiscosId = data?.criteriosAvaliacaoRiscosId;\r\n this.listData = data?.listData;\r\n\r\n\r\n if (!this.model.id || this.model.id == 0) {\r\n this.atualizando = false;\r\n this.txtBtnConcluir = \"Inserir\"\r\n }\r\n else {\r\n this.atualizando = true;\r\n this.txtBtnConcluir = \"Atualizar\"\r\n this.textoModal = 'Editar Nível de Risco'\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n concluir() {\r\n\r\n let dados = this.listData.find(o => o.nome == this.model.nome)\r\n if (dados) {\r\n this.exibirMensagemErro('O nome do Nível de Risco Inerente informado já associado a outro registro! Informe outro nome para prosseguir.')\r\n return\r\n }\r\n\r\n if (this.atualizando) {\r\n this.serviceRiscoInerente.atualizar(this.model).then((res) => { this.dialogRef.close(true); })\r\n } else {\r\n this.model.ordem = this.proximaOrdem(this.listData)\r\n this.serviceRiscoInerente.inserir(this.model).then((res) => { this.dialogRef.close(true); })\r\n }\r\n }\r\n\r\n cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n\r\n proximaOrdem(array: any[]): number {\r\n if (array.length === 0) {\r\n return 1;\r\n }\r\n\r\n const maxOrdem = array.reduce((max, item) => {\r\n return item.ordem > max ? item.ordem : max;\r\n }, -Infinity);\r\n\r\n return maxOrdem + 1;\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

{{textoModal}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
Risco Inerente
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
","import { Component, EventEmitter, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { CriteriosAvaliacaoFormDadosComponent } from './criterios-avaliacao-form-dados/criterios-avaliacao-form-dados.component';\r\nimport { CriteriosAvaliacaoFormControlesComponent } from './criterios-avaliacao-form-controles/criterios-avaliacao-form-controles.component';\r\nimport { CriteriosAvaliacaoFormNiveisRiscoResidualComponent } from './criterios-avaliacao-form-niveis-risco-residual/criterios-avaliacao-form-niveis-risco-residual.component';\r\nimport { CriteriosAvaliacaoFormRiscoInerenteComponent } from './criterios-avaliacao-form-risco-inerente/criterios-avaliacao-form-risco-inerente.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\n\r\n@Component({\r\n selector: 'app-criterios-avaliacao-form',\r\n templateUrl: './criterios-avaliacao-form.component.html',\r\n styleUrls: ['./criterios-avaliacao-form.component.scss']\r\n})\r\nexport class CriteriosAvaliacaoFormComponent extends BaseFormComponent implements OnInit {\r\n\r\n @ViewChild(CriteriosAvaliacaoFormDadosComponent, { static: false }) abaDados!: CriteriosAvaliacaoFormDadosComponent;\r\n @ViewChild(CriteriosAvaliacaoFormControlesComponent, { static: false }) abaDadosControle!: CriteriosAvaliacaoFormControlesComponent;\r\n @ViewChild(CriteriosAvaliacaoFormNiveisRiscoResidualComponent, { static: false }) abaRiscoResidual!: CriteriosAvaliacaoFormNiveisRiscoResidualComponent;\r\n @ViewChild(CriteriosAvaliacaoFormRiscoInerenteComponent, { static: false }) abaRiscoInerente!: CriteriosAvaliacaoFormRiscoInerenteComponent;\r\n\r\n form: any\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setTitulo()\r\n }\r\n\r\n dataUpdated(data: any) {\r\n this.setTitulo(data.nome)\r\n }\r\n\r\n setTitulo(titulo : string = \"\") {\r\n if (this.id) {\r\n this.novoRegistro = false;\r\n }\r\n if (this.visualizar) {\r\n this.titulo = `Visualizar - Critério de Avaliação de Risco - ${titulo}`;\r\n } else if (this.novoRegistro) {\r\n this.titulo = `Novo Critério de Avaliação de Risco`;\r\n } else {\r\n this.titulo = `Editar - Critério de Avaliação de Risco - ${titulo}`;\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n if (this.abaDados) {\r\n this.abaDados.getDataById(this.id)\r\n this.abaDados.visualizar = this.visualizar\r\n this.abaRiscoInerente.visualizar = this.visualizar\r\n this.abaDadosControle.visualizar = this.visualizar\r\n this.abaRiscoResidual.visualizar = this.visualizar\r\n }\r\n }\r\n\r\n mudarAba(ind: any) {\r\n\r\n if (!this.id || this.id == 0) {\r\n this.exibirMensagemErro(\"Necessário salvar o Critério de Avaliação\");\r\n return;\r\n }\r\n\r\n this.aba = ind;\r\n if (this.aba == 1) {\r\n\r\n }\r\n switch (this.aba) {\r\n case 1:\r\n this.abaRiscoInerente.setCriteriosAvaliacaoRiscosId(this.id)\r\n break;\r\n case 2:\r\n this.abaDadosControle.setCriteriosAvaliacaoRiscosId(this.id)\r\n break;\r\n case 3:\r\n this.abaRiscoResidual.setCriteriosAvaliacaoRiscosId(this.id)\r\n break;\r\n }\r\n }\r\n\r\n onBack() {\r\n if (this.abaDados.form.dirty) {\r\n const dialogConfig = new MatDialogConfig();\r\n const modal = this.matDialog.open(ModalCancelarComponent, dialogConfig);\r\n modal.afterClosed().subscribe((resultado) => {\r\n if (resultado == true) {\r\n this.router.navigate([\"/criteriosAvaliacao\"]);\r\n }\r\n });\r\n\r\n } else {\r\n this.router.navigate([\"/criteriosAvaliacao\"]);\r\n }\r\n }\r\n\r\n salvarDados() {\r\n this.abaDados.salvarDados(this.aba);\r\n // switch (this.aba) {\r\n // case 0:\r\n // this.abaDados.salvarDados(this.aba);\r\n // break;\r\n // case 1:\r\n // this.abaRiscoInerente.salvarDados(this.aba);\r\n // break;\r\n // case 2:\r\n // this.abaDadosControle.salvarDados(this.aba);\r\n // break;\r\n // case 3:\r\n // this.abaRiscoResidual.salvarDados(this.aba);\r\n // break;\r\n // }\r\n }\r\n\r\n SalvarFechar() {\r\n this.abaDados.salvarDados(this.aba);\r\n this.router.navigate([\"/criteriosAvaliacao\"]);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Critérios de Avaliação de Riscos\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ICriteriosAvaliacaoRiscos } from 'src/app/models/criterios-avaliacao-riscos.model';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CriteriosAvaliacaoRiscoService } from 'src/app/services/criterios-avaliacao-risco.service';\r\nimport { FormulaRiscoResidualService } from 'src/app/services/formula-risco-residual.service';\r\nimport { MagnitudesEscalaRiscoService } from 'src/app/services/magnitudes-escala-risco.service';\r\nimport { NiveisRiscoInerenteService } from 'src/app/services/niveis-risco-inerente.service';\r\nimport { NiveisRiscoResidualService } from 'src/app/services/niveis-risco-residual.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-criterios-avaliacao-list',\r\n templateUrl: './criterios-avaliacao-list.component.html',\r\n styleUrls: ['./criterios-avaliacao-list.component.scss']\r\n})\r\nexport class CriteriosAvaliacaoListComponent implements OnInit {\r\n\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ICriteriosAvaliacaoRiscos;\r\n public displayedColumns: string[] = [\r\n \"selecao\",\r\n \"nome\",\r\n \"descricao\",\r\n \"ativo\",\r\n ];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n public filtro = {} as FiltroModel;\r\n public totalItens: number;\r\n public pageEvent: any;\r\n\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private router: Router,\r\n private criteriosAvaliacaoService: CriteriosAvaliacaoRiscoService,\r\n ) { }\r\n\r\n async ngOnInit() {\r\n this.filtro.ativo = true\r\n this.setarPermissoes();\r\n await this.buscar();\r\n this.dataSource.sort = this.sort;\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/criteriosAvaliacao/novo']);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.dataSource.paginator = this.paginator;\r\n }\r\n\r\n async buscar() {\r\n this.selectedModel = null;\r\n this.criteriosAvaliacaoService\r\n .obter(this.filtro.pesquisa, this.filtro.ativo, false)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.paginator = this.tableOnePaginator;\r\n this.paginator.length = res.dados.length;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n });\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.CriteriosAvaliacaoRiscos,\r\n EnumAcaoRecurso.Consultar\r\n );\r\n this.permissoes.editar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.CriteriosAvaliacaoRiscos,\r\n EnumAcaoRecurso.Editar\r\n );\r\n this.permissoes.excluir = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.CriteriosAvaliacaoRiscos,\r\n EnumAcaoRecurso.Excluir\r\n );\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.CriteriosAvaliacaoRiscos,\r\n EnumAcaoRecurso.AtivarInativar\r\n );\r\n this.permissoes.incluir = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.CriteriosAvaliacaoRiscos,\r\n EnumAcaoRecurso.Inserir\r\n );\r\n this.permissoes.visualizar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.CriteriosAvaliacaoRiscos,\r\n EnumAcaoRecurso.Visualizar\r\n );\r\n }\r\n\r\n editar(id: any) {\r\n this.router.navigate(['/criteriosAvaliacao/', id]);\r\n }\r\n\r\n reativar(id: any) {\r\n this.criteriosAvaliacaoService.reativar(id).then(() => {\r\n this.buscar()\r\n })\r\n }\r\n\r\n inativar(id: any) {\r\n this.criteriosAvaliacaoService.inativar(id).then(() => {\r\n this.buscar()\r\n })\r\n }\r\n\r\n excluir(id: any) {\r\n this.criteriosAvaliacaoService.excluir(id).then(() => {\r\n this.buscar()\r\n })\r\n }\r\n\r\n visualizar(id: any) {\r\n this.router.navigate([`/criteriosAvaliacao/${id}/visualizar`]);\r\n }\r\n\r\n pageChanged(e: any) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel =\r\n !this.selectedModel || this.selectedModel.id !== item.id\r\n ? item\r\n : null;\r\n }\r\n\r\n public exibirMensagemErro(mensagem: string) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: mensagem,\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n \r\n
  2. \r\n
  3. Riscos
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Critérios de Avaliação de Risco\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Nome {{ element.nome }} Descrição {{ element.descricao }} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
\r\n Nenhum registro encontrado.\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ICustoRecursoModel } from 'src/app/models/custo-recurso.model';\r\nimport { CustoRecursoService } from 'src/app/services/custo-recurso.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-custo-recurso-form',\r\n templateUrl: './custo-recurso-form.component.html',\r\n styleUrls: ['./custo-recurso-form.component.scss']\r\n})\r\nexport class CustoRecursoFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ICustoRecursoModel = {} as ICustoRecursoModel;\r\n public auditoresDataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public salvar: boolean;\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n valorMedio: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n });\r\n public onAuditoria!: boolean;\r\n\r\n @Input() auditoriaModel!: ICustoRecursoModel;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private custoRecursoService: CustoRecursoService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Nova Custos e Recursos';\r\n }\r\n\r\n this.onAuditoria = this.router.url.includes('auditoria')\r\n }\r\n\r\n config: AngularEditorConfig = {\r\n editable: !this.visualizar,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n try {\r\n if(this.auditoriaModel?.id && this.onAuditoria) {\r\n this.model = this.auditoriaModel;\r\n } else if (!this.novoRegistro) {\r\n const res = await this.custoRecursoService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n if (this.visualizar) {\r\n this.titulo = 'Visualização de Custos e Recursos - ' + this.model.nome;\r\n } else {\r\n this.titulo = 'Editar Custos e Recursos - ' + this.model.nome;\r\n }\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/custo-recurso']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n this.router.navigate(['/custo-recurso']);\r\n }\r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n this.salvar = true\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido!');\r\n return;\r\n }\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.custoRecursoService.atualizar(this.model);\r\n } else {\r\n res = await this.custoRecursoService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro salvo com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (salvarEFechar) {\r\n this.router.navigate(['/custo-recurso']);\r\n }else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/custo-recurso/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(validacoes);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/custo-recurso']);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Custo e recurso\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { ICustoRecursoModel } from 'src/app/models/custo-recurso.model';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CustoRecursoService } from 'src/app/services/custo-recurso.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-custo-recurso-list',\r\n templateUrl: './custo-recurso-list.component.html',\r\n styleUrls: ['./custo-recurso-list.component.scss']\r\n})\r\nexport class CustoRecursoListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ICustoRecursoModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private custoRecursoService: CustoRecursoService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n\r\n public novo() {\r\n this.router.navigate(['/custo-recurso/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.custoRecursoService\r\n .obter(this.searchNome, this.searchAtivo, false)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.custoRecursoService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Custo e recurso reativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.custoRecursoService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Custo e recurso inativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/custo-recurso/${id}`]);\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/custo-recurso/${id}/visualizar`]);\r\n }\r\n\r\n public excluir(id: number) {\r\n this.custoRecursoService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro excluído com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Custos e Recursos
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Custos e Recursos\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Custos e Recursos {{element.nome}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-erro',\r\n templateUrl: './erro.component.html',\r\n styleUrls: ['./erro.component.scss']\r\n})\r\nexport class ErroComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","

erro works!

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport Inputmask from 'inputmask';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { toIntlNumberString } from 'src/app/core/helpers/number.helper';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IFaixaClassificacaoModel } from 'src/app/models/faixa-classificacao';\r\nimport { FaixaClassificacaoService } from 'src/app/services/faixa-classificacao.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-faixa-classificacao-form',\r\n templateUrl: './faixa-classificacao-form.component.html',\r\n styleUrls: ['./faixa-classificacao-form.component.scss']\r\n})\r\nexport class FaixaClassificacaoFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IFaixaClassificacaoModel = {} as IFaixaClassificacaoModel;\r\n public salvarEFechar: boolean = false;\r\n\r\n public form = new FormGroup({\r\n pisoBaixo: new FormControl(null, Validators.required),\r\n tetoBaixo: new FormControl(null, Validators.required),\r\n pisoMedio: new FormControl(null, Validators.required),\r\n tetoMedio: new FormControl(null, Validators.required),\r\n pisoAlto: new FormControl(null, Validators.required),\r\n tetoAlto: new FormControl(null, Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private faixaService: FaixaClassificacaoService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.titulo = 'Editar Faixa de Classificação';\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n\r\n try {\r\n const res = await this.faixaService.obter();\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n return;\r\n }\r\n\r\n this.form.controls['pisoBaixo'].setValue(this.formatarNumero(this.model.pisoBaixo));\r\n this.form.controls['tetoBaixo'].setValue(this.formatarNumero(this.model.tetoBaixo));\r\n this.form.controls['pisoMedio'].setValue(this.formatarNumero(this.model.pisoMedio));\r\n this.form.controls['tetoMedio'].setValue(this.formatarNumero(this.model.tetoMedio));\r\n this.form.controls['pisoAlto'].setValue(this.formatarNumero(this.model.pisoAlto));\r\n this.form.controls['tetoAlto'].setValue(this.formatarNumero(this.model.tetoAlto));\r\n\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n this.router.navigate(['/']);\r\n } \r\n }\r\n\r\n private formatarNumero(n: number) {\r\n return n.toFixed(4).toString().replace('.', ',');\r\n }\r\n\r\n public async onSubmitClose(){\r\n this.salvarEFechar = true;\r\n this.onSubmit();\r\n }\r\n\r\n public async onSubmit() {\r\n\r\n this.validarFormulario();\r\n\r\n if (this.form.invalid) {\r\n \r\n this.exibirMensagemAlerta(\"Formulário invalido\");\r\n\r\n return;\r\n }\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n this.model.pisoBaixo = parseFloat(toIntlNumberString(this.form.controls['pisoBaixo'].value));\r\n this.model.tetoBaixo = parseFloat(toIntlNumberString(this.form.controls['tetoBaixo'].value));\r\n this.model.pisoMedio = parseFloat(toIntlNumberString(this.form.controls['pisoMedio'].value));\r\n this.model.tetoMedio = parseFloat(toIntlNumberString(this.form.controls['tetoMedio'].value));\r\n this.model.pisoAlto = parseFloat(toIntlNumberString(this.form.controls['pisoAlto'].value));\r\n this.model.tetoAlto = parseFloat(toIntlNumberString(this.form.controls['tetoAlto'].value));\r\n\r\n res = await this.faixaService.atualizar(this.model);\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (this.salvarEFechar == true) {\r\n this.router.navigate(['/']);\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(validacoes);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n this.salvarEFechar = false;\r\n }\r\n\r\n public calcular(field) {\r\n if (!this.form.controls['pisoBaixo'].value) {\r\n this.form.controls['pisoBaixo'].setValue('0,0000');\r\n }\r\n if (!this.form.controls['tetoBaixo'].value) {\r\n this.form.controls['tetoBaixo'].setValue('0,0000');\r\n }\r\n if (!this.form.controls['pisoMedio'].value) {\r\n this.form.controls['pisoMedio'].setValue('0,0000');\r\n }\r\n if (!this.form.controls['tetoMedio'].value) {\r\n this.form.controls['tetoMedio'].setValue('0,0000');\r\n }\r\n if (!this.form.controls['pisoAlto'].value) {\r\n this.form.controls['pisoAlto'].setValue('0,0000');\r\n }\r\n if (!this.form.controls['tetoAlto'].value) {\r\n this.form.controls['tetoAlto'].setValue('0,0000');\r\n }\r\n\r\n this.model.pisoBaixo = parseFloat(toIntlNumberString(this.form.controls['pisoBaixo'].value) || '0,0000');\r\n this.model.tetoBaixo = parseFloat(toIntlNumberString(this.form.controls['tetoBaixo'].value) || '0,0000');\r\n this.model.pisoMedio = parseFloat(toIntlNumberString(this.form.controls['pisoMedio'].value) || '0,0000');\r\n this.model.tetoMedio = parseFloat(toIntlNumberString(this.form.controls['tetoMedio'].value) || '0,0000');\r\n this.model.pisoAlto = parseFloat(toIntlNumberString(this.form.controls['pisoAlto'].value) || '0,0000');\r\n this.model.tetoAlto = parseFloat(toIntlNumberString(this.form.controls['tetoAlto'].value) || '0,0000');\r\n\r\n this.validarFormulario();\r\n\r\n }\r\n\r\n public validarFormulario() {\r\n\r\n if (this.model.pisoMedio >= this.model.tetoMedio) {\r\n this.form.controls['pisoMedio'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['pisoMedio'].setErrors(null);\r\n }\r\n\r\n if (this.model.tetoBaixo >= this.model.pisoMedio) {\r\n this.form.controls['tetoBaixo'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['tetoBaixo'].setErrors(null);\r\n }\r\n\r\n if (this.model.pisoBaixo >= this.model.tetoBaixo) {\r\n this.form.controls['pisoBaixo'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['pisoBaixo'].setErrors(null);\r\n }\r\n\r\n if (this.model.tetoMedio >= this.model.pisoAlto) {\r\n this.form.controls['tetoMedio'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['tetoMedio'].setErrors(null);\r\n }\r\n\r\n if (this.model.pisoAlto >= this.model.tetoAlto) {\r\n this.form.controls['pisoAlto'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['pisoAlto'].setErrors(null);\r\n }\r\n\r\n if (this.model.tetoAlto > 10) {\r\n this.form.controls['tetoAlto'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['tetoAlto'].setErrors(null);\r\n }\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/']);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. {{ titulo }}
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n a\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n a\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n a\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IFasesAtividadeModel } from 'src/app/models/fases-atividade-model';\r\nimport { FaseAtividadeService } from 'src/app/services/fase-atividade.service';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\n\r\n@Component({\r\n selector: 'app-fase-atividade-form',\r\n templateUrl: './fase-atividade-form.component.html',\r\n styleUrls: ['./fase-atividade-form.component.scss']\r\n})\r\nexport class FaseAtividadeFormComponent extends BaseFormComponent implements OnInit {\r\n public model:IFasesAtividadeModel = {} as IFasesAtividadeModel;\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n quantidadeDias: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private faseAtividadeService: FaseAtividadeService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Fase de Atividade';\r\n }\r\n }\r\n\r\n\r\n async ngOnInit() {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.faseAtividadeService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Fase de atividade - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Fase de atividade - ' + this.model.nome;\r\n }\r\n\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/fase-atividade']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n this.router.navigate(['/fase-atividade']);\r\n } \r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean)\r\n {\r\n this.submit = true;\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.faseAtividadeService.atualizar(this.model);\r\n } else {\r\n res = await this.faseAtividadeService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'success',\r\n text: res.mensagem.descricao\r\n });\r\n\r\n if(salvarEFechar == true)\r\n this.router.navigate(['/fase-atividade']);\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }\r\n catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public async onSubmit() {\r\n this.salvarDados(false);\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n \r\n }\r\n\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigate(['/fase-atividade']);\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/fase-atividade']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Fases de Atividades\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n = 48 && event.charCode <= 57\"\r\n maxlength=\"50\" \r\n appKeyboardlock\r\n autocomplete=\"new-password\"\r\n [ngClass]=\"{ 'is-invalid': f.submitted && form.controls['quantidadeDias'].invalid }\" />\r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IFasesAtividadeModel } from 'src/app/models/fases-atividade-model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { FaseAtividadeService } from 'src/app/services/fase-atividade.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-fase-atividade-list',\r\n templateUrl: './fase-atividade-list.component.html',\r\n styleUrls: ['./fase-atividade-list.component.scss']\r\n})\r\nexport class FaseAtividadeListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public displayedColumns: string[] = ['selecao', 'nome', 'ativo'];\r\n public selectedModel: IFasesAtividadeModel;\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private faseAtividadeService: FaseAtividadeService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n )\r\n {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n \r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.faseAtividadeService\r\n .obter(this.searchNome, this.searchAtivo, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.faseAtividadeService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Fase de atividade reativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.faseAtividadeService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Fase de atividade inativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/fase-atividade/${id}`]);\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/fase-atividade/novo']);\r\n }\r\n\r\n public excluir(id: number) {\r\n this.faseAtividadeService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Fase de atividade excluída com sucesso',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/fase-atividade/${id}/visualizar`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Fases de Atividades
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Fases de Atividades\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Fase\r\n {{element.nome}}\r\n \r\n Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro\r\n encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { IFluxoAprovacaoModel } from 'src/app/models/fluxo-aprovacao.model';\r\nimport { INivelAprovacaoModel } from 'src/app/models/nivel-aprovacao.model';\r\nimport { FluxoAprovacaoService } from 'src/app/services/fluxo-aprovacao.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { AcessoCidadaoService } from 'src/app/services/acesso-cidadao.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { IPerfilAcessoCidadaoModel } from 'src/app/models/perfil-acessocidadao.model';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\n\r\n@Component({\r\n selector: 'app-fluxo-aprovacao-form',\r\n templateUrl: './fluxo-aprovacao-form.component.html',\r\n styleUrls: ['./fluxo-aprovacao-form.component.scss']\r\n})\r\nexport class FluxoAprovacaoFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IFluxoAprovacaoModel = {} as IFluxoAprovacaoModel;\r\n public dataSource = new MatTableDataSource([]);\r\n public novoNivel = {} as INivelAprovacaoModel;\r\n public tabelaPerfilCargo: IPerfilAcessoCidadaoModel[];\r\n public tabelaPerfilCargoFiltro: IPerfilAcessoCidadaoModel[];\r\n public origens = [{ codigo: 1, descricao: 'Planejada' }, { codigo: 2, descricao: 'Especial' }]\r\n public tiposTrabalho = [{ codigo: 1, descricao: 'PEAC' }, { codigo: 2, descricao: 'PAAC' }, { codigo: 3, descricao: 'OPA' }, { codigo: 4, descricao: 'OSA' }, { codigo: 5, descricao: 'Matriz de Constatações' }, { codigo: 6, descricao: 'Relatório de Auditoria' }, { codigo: 7, descricao: 'Planejamento' }, { codigo: 8, descricao: 'PAAC - Especial' }]\r\n public semDados = true;\r\n public ocultarOrigem: boolean;\r\n\r\n public displayedColumns: string[] = [\r\n 'selecao',\r\n 'nome',\r\n 'membros',\r\n ];\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n tipoTrabalho: new FormControl({ value: [] as IEnumModel[], disabled: true }),\r\n origem: new FormControl({ value: [] as IEnumModel[], disabled: true }),\r\n perfilCargo: new FormControl({ value: [''], disabled: true }),\r\n });\r\n\r\n private formAlterado:boolean = false;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private fluxoService: FluxoAprovacaoService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private acessoCidadaoService: AcessoCidadaoService,\r\n public matDialog: MatDialog,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Fluxo de Aprovação';\r\n this.form.controls['tipoTrabalho'].enable();\r\n this.form.controls['origem'].enable();\r\n this.form.controls['perfilCargo'].enable();\r\n } else {\r\n this.titulo = 'Editar Fluxo de Aprovação #' + this.id;\r\n this.form.controls['tipoTrabalho'].enable();\r\n this.form.controls['origem'].enable();\r\n this.form.controls['perfilCargo'].enable();\r\n }\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Fluxo de Aprovação #' + this.id;\r\n this.form.controls['tipoTrabalho'].disable();\r\n this.form.controls['origem'].disable();\r\n this.form.controls['perfilCargo'].disable();\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n this.origemHidden();\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.fluxoService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n this.form.controls['id'].setValue(res.dados.id);\r\n this.form.controls['tipoTrabalho'].setValue(res.dados.tipoDocumento.codigo);\r\n this.form.controls['origem'].setValue(res.dados.origem != undefined ? res.dados.origem.codigo : 0);\r\n this.model.origemId = res.dados.origemId != undefined ? res.dados.origemId : 0;\r\n this.model.origem = res.dados.origem != undefined ? res.dados.origem : null;\r\n this.model.tipoDocumentoId = res.dados.tipoDocumentoId;\r\n this.model.tipoDocumento = res.dados.tipoDocumento;\r\n this.model.nivelAprovacao = this.model.nivelAprovacao.sort((a, b) => (a.ordem > b.ordem) ? 1 : -1);\r\n this.dataSource = new MatTableDataSource(res.dados.nivelAprovacao);\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n } else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/fluxos-aprovacao']);\r\n return;\r\n }\r\n\r\n }\r\n await this.acessoCidadaoService.ObterPerfisAcessoCidadao()\r\n .then((resPerfil) => this.tabelaPerfilCargo = resPerfil.dados);\r\n \r\n this.filtrarTabelaPerfilCargo();\r\n\r\n this.form.valueChanges.subscribe(values => {\r\n this.formAlterado = true;\r\n });\r\n\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/fluxos-aprovacao']);\r\n } \r\n }\r\n\r\n public async salvarDados(fechar: boolean) {\r\n if (this.form.invalid) {\r\n this.toastr.warning('Formulário inválido!', 'Atenção');\r\n return;\r\n }\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n this.model.origem = null;\r\n this.model.origemId = this.form.controls['origem'].value;\r\n res = await this.fluxoService.atualizar(this.model);\r\n } else {\r\n this.model.id = null;\r\n this.model.nome = '';\r\n this.model.dataAlteracao = null;\r\n this.model.nivelAprovacao = this.dataSource.data;\r\n this.model.ativo = true;\r\n this.model.origemId = this.form.controls['origem'].value != undefined && this.form.controls['origem'].value.length != 0 ? this.form.controls['origem'].value : 0;\r\n this.model.origem = null;\r\n this.model.tipoDocumentoId = this.form.controls['tipoTrabalho'].value;\r\n this.model.tipoDocumento = null;\r\n res = await this.fluxoService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n if(fechar){\r\n this.router.navigate(['/fluxos-aprovacao']);\r\n }else{\r\n this.router.navigate([`/fluxos-aprovacao/${res.dados.id}`]);\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n\r\n this.toastr.warning(validacoes, res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n private filtrarTabelaPerfilCargo() {\r\n this.tabelaPerfilCargoFiltro = this.tabelaPerfilCargo.filter(t => this.dataSource.data.findIndex(d => d.codigoPerfil === t.guid) < 0);\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n if (!this.novoRegistro && this.formAlterado) {\r\n const dialogConfig = new MatDialogConfig();\r\n this.matDialog.open(ModalCancelarComponent, dialogConfig).afterClosed().subscribe({\r\n next: (resposta) => {\r\n if (resposta) {\r\n this.router.navigate(['/fluxos-aprovacao']);\r\n }\r\n }\r\n })\r\n\r\n return;\r\n }\r\n \r\n this.router.navigate(['/fluxos-aprovacao']);\r\n }\r\n\r\n public excluirNivel(ind: number) {\r\n this.dataSource.data.splice(ind, 1);\r\n\r\n for (let i = ind; i < this.dataSource.data.length; i++) {\r\n this.dataSource.data[i].ordem = i + 1;\r\n }\r\n\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n\r\n this.filtrarTabelaPerfilCargo();\r\n }\r\n\r\n public incluirNivel() {\r\n this.novoNivel.ordem = this.dataSource.data.length + 1;\r\n const perfilSelecionado = this.tabelaPerfilCargo.find(t => t.guid === this.novoNivel.codigoPerfil);\r\n this.novoNivel.codigoPerfil = perfilSelecionado.guid;\r\n this.novoNivel.nomePerfil = perfilSelecionado.nome;\r\n this.novoNivel.fluxoAprovacaoId = this.id;\r\n this.dataSource.data.push(cloneDeep(this.novoNivel));\r\n this.dataSource._updateChangeSubscription();\r\n this.novoNivel = {} as INivelAprovacaoModel;\r\n this.semDados = false;\r\n\r\n this.filtrarTabelaPerfilCargo();\r\n }\r\n\r\n public drop(event: CdkDragDrop) {\r\n moveItemInArray(this.dataSource.data, event.previousIndex, event.currentIndex);\r\n for (let i = 0; i < this.dataSource.data.length; i++) {\r\n this.dataSource.data[i].ordem = i + 1;\r\n }\r\n\r\n this.dataSource._updateChangeSubscription();\r\n }\r\n\r\n public origemHidden(): boolean {\r\n if (this.model.nome == 'OPA' || this.model.nome == 'OSA') {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n public exibirOrigem(): boolean {\r\n if (this.visualizar) {\r\n this.form.controls['origem'].setValue(this.model.origemId);\r\n }\r\n if (this.form.controls['tipoTrabalho'].value == 3 || this.form.controls['tipoTrabalho'].value == 4) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n}\r\n","\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{ titulo }}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tDocumento de Trabalho\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{{ element.codigo }} -\r\n\t\t\t\t\t\t\t\t\t\t\t{{ element.descricao }}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tOrdem\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{ element.ordem }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tPerfil/Cargo\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.nomePerfil\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tNenhum membro cadastrado\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Cancelar\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\r\n\t\r\n\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IFluxoAprovacaoModel } from 'src/app/models/fluxo-aprovacao.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { FluxoAprovacaoService } from 'src/app/services/fluxo-aprovacao.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\n\r\n@Component({\r\n selector: 'app-fluxo-aprovacao-list',\r\n templateUrl: './fluxo-aprovacao-list.component.html',\r\n styleUrls: ['./fluxo-aprovacao-list.component.scss']\r\n})\r\nexport class FluxoAprovacaoListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IFluxoAprovacaoModel;\r\n public displayedColumns: string[] = ['selecao', 'id', 'nome'];\r\n public searchNome: string;\r\n public semDados = true;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private fluxoAprovacaoService: FluxoAprovacaoService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.fluxoAprovacaoService\r\n .obter(this.searchNome)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n }\r\n\r\n public novo() {\r\n this.router.navigate([`/fluxos-aprovacao/novo`]);\r\n }\r\n\r\n public excluir(id: number) {\r\n this.fluxoAprovacaoService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Registro excluído com sucesso!');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/fluxos-aprovacao/${id}/visualizar`]);\r\n }\r\n\r\n public reativar(id: number) {\r\n this.fluxoAprovacaoService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Registro reativado com sucesso!')\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n \r\n public inativar(id: number) {\r\n this.fluxoAprovacaoService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Registro inativado com sucesso!');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n \r\n public editar(id: number) {\r\n this.router.navigate([`/fluxos-aprovacao/${id}`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public botaoReativarHidden() : boolean {\r\n return !this.permissoes.inativarReativar;\r\n }\r\n\r\n public botaoInativarHidden() : boolean {\r\n return !this.permissoes.inativarReativar;\r\n }\r\n}\r\n","\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tFluxos de Aprovação\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t Novo\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t Editar\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tReativar\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tInativar\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tExcluir\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tVisualizar\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tId\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.id }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tDocumento de Trabalho\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nome }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t Situação \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t Ativo\r\n\t\t\t\t\t\t\t\t\t Inativo\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tSem dados a exibir\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IIndicadorCriterioModel } from 'src/app/models/indicador-criterio.model';\r\nimport { IIndicadorModel } from 'src/app/models/indicador.model';\r\nimport { CriterioService } from 'src/app/services/criterio.service';\r\nimport { IndicadorService } from 'src/app/services/indicador.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-indicador-form',\r\n templateUrl: './indicador-form.component.html',\r\n styleUrls: ['./indicador-form.component.scss']\r\n})\r\nexport class IndicadorFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IIndicadorModel = {} as IIndicadorModel;\r\n public modelIndicadorCriterio: IIndicadorCriterioModel = {} as IIndicadorCriterioModel;\r\n public indicadorCriteriosDataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private indicadorService: IndicadorService,\r\n private criterioService: CriterioService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Indicador';\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.indicadorService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Indicador - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Indicador - ' + this.model.nome;\r\n }\r\n\r\n this.model.dataInicio = new Date(this.model.dataInicio);\r\n this.model.dataFim = new Date(this.model.dataFim);\r\n this.indicadorCriteriosDataSource = new MatTableDataSource(this.model.indicadorCriterio);\r\n this.indicadorCriteriosDataSource.sort = this.sort;\r\n this.indicadorCriteriosDataSource.sortingDataAccessor = (item, property) =>{\r\n switch(property){\r\n case 'nome': return item.criterio.nome;\r\n default: return item[property];\r\n }\r\n };\r\n this.indicadorCriteriosDataSource._updateChangeSubscription();\r\n this.semDados = this.indicadorCriteriosDataSource.filteredData.length === 0;\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/indicadores']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n this.router.navigate(['/indicadores']);\r\n } \r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta(\"Formulário invalido\");\r\n return;\r\n }\r\n this.submit = true;\r\n \r\n\r\n this.atualizarModel(this.form.value);\r\n this.model.indicadorCriterio = this.indicadorCriteriosDataSource.data;\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.indicadorService.atualizar(this.model);\r\n } else {\r\n res = await this.indicadorService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (salvarEFechar) {\r\n this.router.navigate(['/indicadores']);\r\n } else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/indicadores/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(validacoes, true);\r\n }\r\n \r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n } \r\n }\r\n\r\n public incluirNovoIndicadorCriterio() {\r\n if (this.indicadorCriteriosDataSource.data.find(i => i.criterioId === this.modelIndicadorCriterio.criterioId)) {\r\n this.exibirMensagemAlerta(\"Não é possivel salvar pois existe critérios duplicados\");\r\n }\r\n else {\r\n this.indicadorCriteriosDataSource.data.push(cloneDeep(this.modelIndicadorCriterio));\r\n this.indicadorCriteriosDataSource._updateChangeSubscription();\r\n this.modelIndicadorCriterio = {} as IIndicadorCriterioModel;\r\n this.semDados = false;\r\n }\r\n }\r\n\r\n public excluirIndicadorCriterio(ind: number) {\r\n this.indicadorCriteriosDataSource.data.splice(ind, 1);\r\n this.indicadorCriteriosDataSource._updateChangeSubscription();\r\n this.semDados = this.indicadorCriteriosDataSource.filteredData.length === 0;\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/indicadores']);\r\n }\r\n\r\n public async exibirModalCriterio() {\r\n try {\r\n const res = await this.criterioService.obter('', true);\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Critério', res.dados.filter(_ => !this.indicadorCriteriosDataSource.data.find(i => i.criterioId === _.id)).map(c => ({ ...c, descricaoTipoEntrada: c.tipoEntrada.descricao })), false, [\r\n {\r\n columnDef: 'selecao',\r\n header: ''\r\n },\r\n {\r\n columnDef: 'descricaoTipoEntrada',\r\n header: 'Tipo de Entrada'\r\n },\r\n {\r\n columnDef: 'nome',\r\n header: 'Nome'\r\n }]);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.modelIndicadorCriterio.criterio = data;\r\n this.modelIndicadorCriterio.criterioId = data.id;\r\n }\r\n }\r\n );\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Indicadores\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Nome {{ element.criterio.nome }}Peso {{element.peso}} \r\n
\r\n \r\n
\r\n
\r\n
Nenhum critério cadastrado
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IIndicadorModel } from 'src/app/models/indicador.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { IndicadorService } from 'src/app/services/indicador.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-indicador-list',\r\n templateUrl: './indicador-list.component.html',\r\n styleUrls: ['./indicador-list.component.scss']\r\n})\r\nexport class IndicadorListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([] as IIndicadorModel[]);\r\n public selectedModel: IIndicadorModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'quantidadeCriterio', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private indicadorService: IndicadorService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/indicadores/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.indicadorService\r\n .obter(this.searchNome, this.searchAtivo, false)\r\n .then((res) => {\r\n for (const item of res.dados) {\r\n delete (item.indicadorCriterio);\r\n }\r\n this.dataSource = new MatTableDataSource(res.dados as IIndicadorModel[]);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.indicadorService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Indicador reativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n}\r\n\r\n public inativar(id: number){\r\n this.indicadorService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Indicador inativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n}\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/indicadores/${id}`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n } \r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/indicadores/${id}/visualizar`]);\r\n }\r\n \r\n public excluir(id: number) {\r\n this.indicadorService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Indicador excluído com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Indicadores
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Indicadores\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nome {{element.nome}} Quantidade de Critérios {{element.quantidadeCriterio}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { PendenciaService } from \"src/app/services/pendencia.service\";\r\nimport { Component, OnInit } from \"@angular/core\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\n\r\n@Component({\r\n\tselector: \"app-inicial\",\r\n\ttemplateUrl: \"./inicial.component.html\",\r\n\tstyleUrls: [\"./inicial.component.scss\"],\r\n})\r\nexport class InicialComponent implements OnInit {\r\n\tpublic count: number;\r\n\r\n\tconstructor(\r\n\t\tpublic authService: AuthService,\r\n\t\tpublic pendenciaService: PendenciaService\r\n\t) {}\r\n\r\n\tngOnInit(): void {\r\n this.obter()\r\n\t}\r\n\r\n\tpublic obter() {\r\n\t\tthis.pendenciaService.obterPendencias().then((res) => {\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tthis.count = res.dados.count;\r\n\t\t\t}\r\n\t\t});\r\n\t\t\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Bem vindo {{authService.usuario?.nome}}!

\r\n Utilize o menu ao lado para acessar as opções disponíveis.\r\n
\r\n
\r\n
\r\n
= 1\">\r\n
\r\n
\r\n
1\">Existem {{count}} pendências a serem resolvidas. Clique aqui
\r\n
Existe {{count}} pendência a ser resolvida. Clique aqui
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { LogService } from 'src/app/services/log.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ILogModel } from 'src/app/models/log.model';\r\n\r\n@Component({\r\n selector: 'app-log-form',\r\n templateUrl: './log-form.component.html',\r\n styleUrls: ['./log-form.component.scss']\r\n})\r\nexport class LogFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ILogModel = {} as ILogModel;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n router: Router,\r\n toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n private logService: LogService,\r\n public authService: AuthService,\r\n public matDialog: MatDialog,\r\n \r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.titulo = 'Detalhar Log do Sistema #' + this.id;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscar();\r\n }\r\n\r\n public buscar() {\r\n this.logService\r\n .obterPorId(this.id)\r\n .then((res) => {\r\n if (res.sucesso){\r\n this.model = res.dados;\r\n this.model.dataRegistro = new Date(this.model.dataRegistro);\r\n } else {\r\n this.router.navigate(['/log']);\r\n }\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/log']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Logs do Sistema\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { AfterViewInit, Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { LogService } from 'src/app/services/log.service';\r\nimport { IFiltroLog } from 'src/app/models/filtros/filtro-log.model';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { Router } from '@angular/router';\r\nimport FileSaver from 'file-saver';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'funcionalidade':\r\n return item.funcionalidade.descricao;\r\n case 'tipoLog':\r\n return item.tipoLog.descricao;\r\n default:\r\n return item[property];\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-log-list',\r\n templateUrl: './log-list.component.html',\r\n styleUrls: ['./log-list.component.scss']\r\n})\r\nexport class LogListComponent extends BaseListComponent implements OnInit, AfterViewInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public dataOriginal = [];\r\n public selectedModel: any;\r\n public pageEvent: any;\r\n public semDados = true;\r\n public searchNome = '';\r\n public totalItens: number;\r\n public displayedColumns: string[] = [\r\n 'selecao',\r\n 'id',\r\n 'dataRegistro',\r\n 'funcionalidade',\r\n 'tipoLog',\r\n 'nomeUsuario',\r\n 'ip'\r\n ];\r\n private filtro: IFiltroLog = {} as IFiltroLog;\r\n public filtroModel: IFiltroLog = {} as IFiltroLog;\r\n public funcionalidades = [] as IEnumModel[];\r\n public tiposLog = [] as IEnumModel[];\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild('tabela') public tabela: MatSort;\r\n\r\n constructor(private router: Router,\r\n private toastr: ToastrService,\r\n private logService: LogService,\r\n public authService: AuthService,) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.LogsDoSistema, EnumAcaoRecurso.Consultar);\r\n this.permissoes.exportar = this.authService.possuiPermissao(EnumRecursoPerfil.LogsDoSistema, EnumAcaoRecurso.Exportar);\r\n this.permissoes.detalhar = this.authService.possuiPermissao(EnumRecursoPerfil.LogsDoSistema, EnumAcaoRecurso.Detalhar);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.configFiltro();\r\n this.obterFuncionalidades();\r\n this.obterTiposLog();\r\n this.buscar();\r\n }\r\n\r\n public obterFuncionalidades() {\r\n\r\n this.logService\r\n .obterFuncionalidades()\r\n .then((res) => {\r\n this.funcionalidades = res.dados;\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n }\r\n\r\n public obterTiposLog() {\r\n\r\n this.logService\r\n .obterTiposLog()\r\n .then((res) => {\r\n this.tiposLog = res.dados;\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n this.logService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n this.dataOriginal = cloneDeep(res.dados);\r\n\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource.sort = this.tabela;\r\n this.totalItens = res.dados.totalItens;\r\n\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n }\r\n\r\n buscarComFiltro() {\r\n this.filtro.dataInicial = this.filtroModel.dataInicial;\r\n this.filtro.dataFinal = this.filtroModel.dataFinal;\r\n this.filtro.funcionalidade = this.filtroModel.funcionalidade;\r\n this.filtro.tipoLog = this.filtroModel.tipoLog;\r\n this.filtro.nomeUsuario = this.filtroModel.nomeUsuario;\r\n this.buscar();\r\n }\r\n\r\n configFiltro()\r\n {\r\n this.filtro.pagina = this.paginator.pageIndex + 1;\r\n this.filtro.tamanhoPagina = this.paginator.pageSize;\r\n this.filtro.ordenacaoColuna = this.tabela.active;\r\n this.filtro.ordenacaoSentido = this.tabela.direction;\r\n }\r\n\r\n sortData(sort) {\r\n this.filtro.ordenacaoColuna = sort.active;\r\n this.filtro.ordenacaoSentido = sort.direction;\r\n\r\n this.buscar();\r\n }\r\n\r\n pageChanged(e)\r\n {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.tamanhoPagina = e.pageSize;\r\n\r\n this.buscar();\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n\r\n public detalhar() {\r\n if (this.selectedModel !== null){\r\n this.router.navigate(['/log/' + this.selectedModel.id]);\r\n }\r\n }\r\n\r\n public exportar() {\r\n\r\n this.logService\r\n .exportar(this.filtro)\r\n .then((res) => {\r\n const pdf = new Blob([res], {type: 'application/pdf;charset=utf-8'});\r\n FileSaver.saveAs(pdf, 'Exportação Logs do Sistema.pdf');\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Logs do Sistema
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Logs do Sistema\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n ID {{element.id}} Data {{element.dataRegistro | date:'dd/MM/yyyy HH:mm:ss' }} Funcionalidade {{element.funcionalidade.descricao}} Ação Realizada {{element.tipoLog.descricao}} Usuário {{element.nomeUsuario}} IP {{element.ip}}
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IMatrizPlanejamentoModel } from 'src/app/models/matriz-planejamento.model';\r\nimport { IMatrizPlanejamentoQuestaoModel } from 'src/app/models/matriz-planejamento-questao.model';\r\nimport { ISubtipoAuditoriaMatrizPlanejamentoModel } from 'src/app/models/subtipo-auditoria-matriz-planejamento.model';\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { MatrizPlanejamentoService } from 'src/app/services/matriz-planejamento.service';\r\nimport { QuestaoService } from 'src/app/services/questao.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-matriz-planejamento-form',\r\n templateUrl: './matriz-planejamento-form.component.html',\r\n styleUrls: ['./matriz-planejamento-form.component.scss']\r\n})\r\nexport class MatrizPlanejamentoFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IMatrizPlanejamentoModel = {} as IMatrizPlanejamentoModel;\r\n public modelSubtipoAuditoria: ISubtipoAuditoriaModel = {} as ISubtipoAuditoriaModel;\r\n public modelMatrizPlanejamentoQuestao: IMatrizPlanejamentoQuestaoModel = {} as IMatrizPlanejamentoQuestaoModel;\r\n public questaoDataSource = new MatTableDataSource([]);\r\n public listaMatrizPlanejamento: ISubtipoAuditoriaMatrizPlanejamentoModel = {} as ISubtipoAuditoriaMatrizPlanejamentoModel;\r\n\r\n public rotaPrefixoSubtipoAuditoria = undefined;\r\n public semDados = true;\r\n public adicionarQuestão: boolean;\r\n public isAuditoria!: boolean;\r\n\r\n @Input() auditoriaModel!: IMatrizPlanejamentoModel;\r\n\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private matrizPlanejamentoService: MatrizPlanejamentoService,\r\n private questaoService: QuestaoService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if(this.prefixo == 'novo'){\r\n this.titulo = 'Nova Matriz Planejamento';\r\n } \r\n\r\n this.isAuditoria = this.router.url.includes(\"auditoria\");\r\n\r\n }\r\n\r\n config: AngularEditorConfig = {\r\n editable: !this.visualizar,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n try {\r\n\r\n if(this.auditoriaModel?.id && this.isAuditoria){\r\n this.model = this.auditoriaModel;\r\n this.setQuestions();\r\n } else if (!this.novoRegistro && !this.auditoriaModel?.id && !this.isAuditoria) {\r\n const res = await this.matrizPlanejamentoService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n switch (this.prefixo) {\r\n case ('edicao'):\r\n this.titulo = 'Editar Matriz Planejamento - ' + this.model.nome;\r\n break;\r\n case ('visualizar'):\r\n this.titulo = 'Visualização Matriz Planejamento #' + this.model.nome;\r\n break;\r\n }\r\n // questão\r\n this.setQuestions();\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/matriz-planejamento']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n this.router.navigate(['/matriz-planejamento']);\r\n } \r\n this.state();\r\n this.form.patchValue(this.model);\r\n }\r\n\r\n public setQuestions(): void { \r\n this.questaoDataSource = new MatTableDataSource(\r\n this.model.matrizPlanejamentoQuestao\r\n );\r\n this.questaoDataSource._updateChangeSubscription();\r\n this.semDados = this.questaoDataSource.filteredData.length === 0;\r\n }\r\n\r\n public state() {\r\n // Subtipo Auditoria\r\n if (window.history.state.modelSubtipoAuditoria) {\r\n this.modelSubtipoAuditoria = window.history.state.modelSubtipoAuditoria;\r\n }\r\n\r\n // matriz planejamento\r\n if (window.history.state.modelMatrizPlanejamento) {\r\n this.model = window.history.state.modelMatrizPlanejamento;\r\n }\r\n\r\n // questão\r\n if (window.history.state.listaQuestao) {\r\n this.questaoDataSource = new MatTableDataSource(\r\n window.history.state.listaQuestao\r\n );\r\n this.questaoDataSource._updateChangeSubscription();\r\n this.semDados = this.questaoDataSource.filteredData.length === 0;\r\n }\r\n\r\n // Matriz Planejamento\r\n if (window.history.state.listaMatrizPlanejamento) {\r\n this.listaMatrizPlanejamento = window.history.state.listaMatrizPlanejamento;\r\n }\r\n\r\n // Rota\r\n if (window.history.state.rotaPrefixoSubtipoAuditoria) {\r\n this.rotaPrefixoSubtipoAuditoria = window.history.state.rotaPrefixoSubtipoAuditoria;\r\n }\r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário invalido');\r\n return;\r\n }\r\n\r\n this.atualizarModel(this.form.value);\r\n this.model.matrizPlanejamentoQuestao = this.questaoDataSource.data;\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n this.model.id = this.id\r\n this.model.ativo = true\r\n res = await this.matrizPlanejamentoService.atualizar(this.model);\r\n } else {\r\n res = await this.matrizPlanejamentoService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro salvo com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (this.rotaPrefixoSubtipoAuditoria) {\r\n this.router.navigate([this.rotaPrefixoSubtipoAuditoria], {\r\n state: {\r\n modelSubtipoAuditoria: this.modelSubtipoAuditoria,\r\n listaMatrizPlanejamento: this.listaMatrizPlanejamento\r\n }\r\n });\r\n }else{\r\n if (salvarEFechar == true) {\r\n this.router.navigate(['/matriz-planejamento']);\r\n }\r\n else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/matriz-planejamento/${res.dados.id}/edicao`]);\r\n await this.ngOnInit();\r\n }\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(validacoes);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n } finally {\r\n this.adicionarQuestão = true\r\n }\r\n }\r\n\r\n public incluirQuestao() {\r\n if (this.questaoDataSource.data.findIndex(a => a.questaoId === this.modelMatrizPlanejamentoQuestao.questaoId) >= 0) {\r\n this.exibirMensagemAlerta('Questão já cadastrada nessa questão');\r\n return;\r\n }\r\n\r\n this.questaoDataSource.data.push(cloneDeep(this.modelMatrizPlanejamentoQuestao));\r\n this.questaoDataSource._updateChangeSubscription();\r\n this.modelMatrizPlanejamentoQuestao = {} as IMatrizPlanejamentoQuestaoModel;\r\n this.semDados = false;\r\n }\r\n\r\n public excluirQuestao(ind: number) {\r\n this.questaoDataSource.data.splice(ind, 1);\r\n this.questaoDataSource._updateChangeSubscription();\r\n this.semDados = this.questaoDataSource.filteredData.length === 0;\r\n }\r\n\r\n public visualizarQuestao(ind: number) {\r\n this.adicionarQuestão = true\r\n this.router.navigate([`/questao/${ind}/visualizar`], {\r\n state: {\r\n modelMatrizPlanejamento: this.form.value,\r\n listaQuestao: this.questaoDataSource.data,\r\n listaMatrizPlanejamento: this.listaMatrizPlanejamento,\r\n rotaPrefixoSubtipoAuditoria: this.rotaPrefixoSubtipoAuditoria,\r\n rotaPrefixoMatrizPlanejamento: `/matriz-planejamento/${this.id !== undefined ? this.id + '/' : ''}${this.prefixo}`\r\n },\r\n });\r\n }\r\n\r\n public async exibirModalQuestao() {\r\n try {\r\n const res = await this.questaoService.obter('', true);\r\n if (res.sucesso) {\r\n const dadosFiltrados = res.dados.filter(questao => questao.ativo);\r\n const modal = this.exibirModal('Selecionar Questão', dadosFiltrados);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.modelMatrizPlanejamentoQuestao.questaoId = data.id;\r\n this.modelMatrizPlanejamentoQuestao.questao = data;\r\n }\r\n }\r\n );\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public async cadastroRapidoQuestao() {\r\n this.adicionarQuestão = true;\r\n this.router.navigate([`/questao/novo`], {\r\n state: {\r\n modelMatrizPlanejamento: this.form.value,\r\n modelSubtipoAuditoria: this.modelSubtipoAuditoria,\r\n listaQuestao: this.questaoDataSource.data,\r\n listaMatrizPlanejamento: this.listaMatrizPlanejamento,\r\n rotaPrefixoSubtipoAuditoria: this.rotaPrefixoSubtipoAuditoria,\r\n rotaPrefixoMatrizPlanejamento: `/matriz-planejamento/${this.id !== undefined ? this.id + '/' : ''}${this.prefixo}`\r\n },\r\n });\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n if (window.history.state.rotaPrefixoSubtipoAuditoria) {\r\n this.router.navigate([window.history.state.rotaPrefixoSubtipoAuditoria], {\r\n state: {\r\n modelSubtipoAuditoria: this.modelSubtipoAuditoria,\r\n listaMatrizPlanejamento: this.listaMatrizPlanejamento\r\n }\r\n });\r\n } else {\r\n this.router.navigate(['/matriz-planejamento']);\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Matriz Planejamento\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Questão {{ element.questao.nome }}Legislação Aplicável/Critério \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
Nenhuma questão cadastrada
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IMatrizPlanejamentoModel } from 'src/app/models/matriz-planejamento.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { MatrizPlanejamentoService } from 'src/app/services/matriz-planejamento.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-matriz-planejamento-list',\r\n templateUrl: './matriz-planejamento-list.component.html',\r\n styleUrls: ['./matriz-planejamento-list.component.scss']\r\n})\r\nexport class MatrizPlanejamentoListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IMatrizPlanejamentoModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private matrizPlanejamentoService: MatrizPlanejamentoService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n \r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Imprimir);\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/matriz-planejamento/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.matrizPlanejamentoService\r\n .obter(this.searchNome, this.searchAtivo, false)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.matrizPlanejamentoService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro reativado com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.matrizPlanejamentoService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro inativado com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/matriz-planejamento/${id}/edicao`]);\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/matriz-planejamento/${id}/visualizar`]);\r\n }\r\n\r\n public imprimir(id: number) {\r\n this.router.navigate([`/matriz-planejamento/relatorio/${id}`]);\r\n }\r\n\r\n public excluir(id: number) {\r\n this.matrizPlanejamentoService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro excluído com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Matriz Planejamento
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Matriz Planejamento\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Questão {{element.nome}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IMatrizPlanejamentoModel } from 'src/app/models/matriz-planejamento.model';\r\nimport { MatrizPlanejamentoService } from 'src/app/services/matriz-planejamento.service';\r\n\r\n@Component({\r\n selector: 'app-matriz-planejamento-relatorio',\r\n templateUrl: './matriz-planejamento-relatorio.component.html',\r\n styleUrls: ['./matriz-planejamento-relatorio.component.scss'],\r\n})\r\nexport class MatrizPlanejamentoRelatorioComponent implements OnInit {\r\n public model: IMatrizPlanejamentoModel = {} as IMatrizPlanejamentoModel;\r\n idParam: number;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private localeService: BsLocaleService,\r\n private matrizPlanejamentoService: MatrizPlanejamentoService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.localeService.use('pt-br');\r\n\r\n const id = this.route.snapshot.paramMap.get('id');\r\n\r\n if (id) {\r\n this.idParam = parseInt(id, 10);\r\n }\r\n\r\n this.obterDados();\r\n }\r\n\r\n public async obterDados() {\r\n try {\r\n const id = this.route.snapshot.paramMap.get('id');\r\n const idParam = parseInt(id, 10);\r\n const res = await this.matrizPlanejamentoService.obterPorId(idParam);\r\n this.model = res.dados;\r\n\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/matriz-planejamento']);\r\n }\r\n }\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/matriz-planejamento']);\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

MATRIZ DE PLANEJAMENTO

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
QUESTÕES DE AUDITORIACLASSIFICAÇÃO DA QUESTÃOINFORMAÇÕES REQUERIDAS / FONTES DE INFORMAÇÃOLEGISLAÇÃO APLICÁVELPOSSÍVEIS CONSTATAÇÕESPROCEDIMENTOSDETALHAMENTO DOS PROCEDIMENTOSTÉCNICAS
\r\n

{{ auxQuestao.questao.nome }}

\r\n

\r\n
\r\n

\r\n
\r\n

\r\n
\r\n

\r\n
\r\n

\r\n {{auxConstatacao.constatacao.nome}}\r\n

\r\n
\r\n

\r\n {{auxProcedimentoAuditoria.procedimentoAuditoria.nome}}\r\n

\r\n
\r\n

\r\n \r\n

\r\n
\r\n

\r\n \r\n
\r\n \r\n

\r\n
\r\n

{{ auxQuestao.questao.nome }}

\r\n

\r\n
\r\n

\r\n
\r\n

\r\n
\r\n

\r\n
\r\n

\r\n {{auxConstatacao.constatacao.nome}}\r\n

\r\n
\r\n

\r\n {{auxProcedimentoAuditoria.procedimentoAuditoria.nome}}\r\n

\r\n
\r\n

\r\n \r\n

\r\n
\r\n

\r\n \r\n
\r\n \r\n

\r\n
\r\n

{{ auxQuestao.questao.nome }}

\r\n

\r\n
\r\n

\r\n
\r\n

\r\n
\r\n

\r\n
\r\n

\r\n {{auxConstatacao.constatacao.nome}}\r\n

\r\n
\r\n

\r\n {{auxProcedimentoAuditoria.procedimentoAuditoria.nome}}\r\n

\r\n
\r\n

\r\n \r\n

\r\n
\r\n

\r\n \r\n
\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-modal-cancelar',\r\n templateUrl: './modal-cancelar.component.html',\r\n})\r\nexport class ModalCancelarModeloQuestionario implements OnInit {\r\n ngOnInit(): void {}\r\n\r\n constructor(private dialogRef: MatDialogRef) {}\r\n\r\n Sim() {\r\n this.dialogRef.close(true);\r\n }\r\n\r\n Nao() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n","
\r\n
\r\n\r\n
\r\n

Cancelar Atividade

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
","import { ToastrService } from 'ngx-toastr';\r\nimport { MatDialog,MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport {\r\n Component,\r\n OnInit,\r\n Inject,\r\n ViewChild,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport Swal from 'sweetalert2';\r\nimport { CoordenacaoService } from 'src/app/services/coordenacao.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IModeloQuestionarioItemModel } from 'src/app/models/modelo-questionario.model';\r\nimport { IPerguntaModel } from 'src/app/models/pergunta.model';\r\nimport { PerguntaService } from 'src/app/services/pergunta.service';\r\n\r\n@Component({\r\n selector: 'app-modal-modelo-questionario-pergunta',\r\n templateUrl: './modal-pergunta.component.html',\r\n styleUrls: ['./modal-pergunta.component.scss'],\r\n})\r\n\r\nexport class ModalModeloQuestionarioPerguntaComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n \r\n public model: IModeloQuestionarioItemModel;\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'tipo', 'obrigatorio'];\r\n public selecionado: IPerguntaModel;\r\n public totalItens: number;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private perguntaService: PerguntaService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n \r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscarPerguntas();\r\n }\r\n \r\n \r\n ngAfterViewInit(): void {\r\n \r\n }\r\n\r\n\r\n public selecionar(item: IPerguntaModel) {\r\n this.selecionado = !this.selecionado || this.selecionado.id !== item.id ? item : null;\r\n }\r\n\r\n public async concluir() {\r\n this.dialogRef.close(this.selecionado);\r\n }\r\n\r\n public buscarPerguntas(){\r\n \r\n this.perguntaService\r\n .obter(\"\", true)\r\n .then((res) => {\r\n \r\n if(res.sucesso){\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.data.length == 0;\r\n this.totalItens = res.dados.length;\r\n this.dataSource.paginator = this.paginator;\r\n }\r\n });\r\n \r\n }\r\n\r\n public filtrar(event: Event){\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Inserir Pergunta

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Nome\r\n \r\n {{element.nome}} Tipo entrada\r\n \r\n {{element.tipoEntrada.descricao}} Obrigatório \r\n \r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { ToastrService } from 'ngx-toastr';\r\nimport { MatDialog,MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport {\r\n Component,\r\n OnInit,\r\n Inject,\r\n ViewChild,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { IModeloQuestionarioItemModel } from 'src/app/models/modelo-questionario.model';\r\n\r\n@Component({\r\n selector: 'app-modal-modelo-questionario-secao',\r\n templateUrl: './modal-secao.component.html',\r\n styleUrls: ['./modal-secao.component.scss'],\r\n})\r\n\r\nexport class ModalModeloQuestionarioSecaoComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n \r\n public model = {} as IModeloQuestionarioItemModel;\r\n public campoObrigatorio = false;\r\n public nomeTitulo = \"Inserir Seção\";\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.model.id = data.id ?? 0;\r\n this.model.idModeloQuestionario = data.idModeloQuestionario;\r\n this.model.nome = data.nome;\r\n this.model.tipoId = 1;\r\n this.model.tipoDescription = \"Seção\";\r\n this.model.ativo = true;\r\n this.model.nomeAnterior = data.nome;\r\n this.model.status = 1;\r\n\r\n if(data.id != 0 || data.nome != \"\"){\r\n this.nomeTitulo = \"Editar Seção\";\r\n }\r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n \r\n }\r\n \r\n \r\n ngAfterViewInit(): void {\r\n \r\n }\r\n\r\n\r\n public async concluir() {\r\n \r\n this.dialogRef.close(this.model);\r\n\r\n }\r\n\r\n\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

{{nomeTitulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
","import { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { Component, ViewChild, OnInit } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from \"@angular/cdk/drag-drop\";\r\nimport { MatSort, Sort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { IModeloQuestionarioItemModel, IModeloQuestionarioModel } from \"src/app/models/modelo-questionario.model\";\r\nimport { ModeloQuestionarioService } from \"src/app/services/modelo-questionario.service\";\r\nimport { IPermissaoModel } from \"src/app/models/permissao.model\";\r\nimport { EnumRecursoPerfil } from \"src/app/models/enum/recurso-perfil.enum\";\r\nimport { EnumAcaoRecurso } from \"src/app/models/enum/acao-recurso.enum\";\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { TabelaDominioService } from \"src/app/services/tabela-dominio.service\";\r\nimport { IEnumModel } from \"src/app/models/enum.model\";\r\nimport { PerguntaService } from \"src/app/services/pergunta.service\";\r\nimport { ModalModeloQuestionarioPerguntaComponent } from \"./modal-pergunta/modal-pergunta.component\";\r\nimport { ModalModeloQuestionarioSecaoComponent } from \"./modal-secao/modal-secao.component\";\r\nimport { MatDialogConfig } from \"@angular/material/dialog\";\r\nimport { ModalCancelarModeloQuestionario } from \"./modal-cancelar/modal-cancelar.component\";\r\nimport Swal from \"sweetalert2\";\r\n\r\n@Component({\r\n selector: 'app-modelo-questionario-form',\r\n templateUrl: './modelo-questionario-form.component.html',\r\n styleUrls: ['./modelo-questionario-form.component.scss']\r\n})\r\n\r\nexport class ModeloQuestionarioFormComponent extends BaseFormComponent implements OnInit {\r\n\r\n public model = {} as IModeloQuestionarioModel;\r\n public tiposDocumentos = [] as IEnumModel[];\r\n columnsToDisplay = ['ordem', 'nome', 'tipoDescription', 'obrigatorio', 'actions'];\r\n subColumnsToDisplay = ['ordem', 'nome', 'tipoDescription', 'obrigatorio', 'actions'];\r\n public permissoes: IPermissaoModel;\r\n\r\n constructor(\r\n private modeloQuestionarioService: ModeloQuestionarioService,\r\n toastr: ToastrService,\r\n route: ActivatedRoute,\r\n router: Router,\r\n private authService: AuthService,\r\n localeService: BsLocaleService,\r\n private perguntaService: PerguntaService,\r\n private tabelaDominioService: TabelaDominioService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n tipoDocumento: new FormControl(null, Validators.required)\r\n })\r\n\r\n async ngOnInit() {\r\n this.setarPermissoes();\r\n\r\n await this.tabelaDominioService\r\n .obterTiposDocumentoTrabalho()\r\n .then((res) => this.tiposDocumentos = res.dados.filter(x => x.codigo != 0))\r\n .catch((err) => this.exibirMensagemErro(err));\r\n\r\n await this.buscar();\r\n }\r\n\r\n public ordenaCapitulos() {\r\n\r\n //Ordena capitulos pai\r\n this.model.itens.sort((capituloA, capitulob) => {\r\n const ordemA = capituloA.ordemExibicao.split('.').map(num => parseFloat(num));\r\n const ordemB = capitulob.ordemExibicao.split('.').map(num => parseFloat(num));\r\n\r\n // Compara cada parte da ordem\r\n for (let i = 0; i < Math.max(ordemA.length, ordemB.length); i++) {\r\n const partA = ordemA[i] || 0;\r\n const partB = ordemB[i] || 0;\r\n\r\n if (partA < partB) return -1;\r\n if (partA > partB) return 1;\r\n }\r\n return 0;\r\n });\r\n\r\n //ordenacapito filhos\r\n\r\n this.model.itens.forEach(subCapitulos => {\r\n if (subCapitulos.subItens.length) {\r\n subCapitulos.subItens.sort((itensA, itensB) => {\r\n const ordemA = itensA.ordemExibicao.split('.').map(num => parseFloat(num));\r\n const ordemB = itensB.ordemExibicao.split('.').map(num => parseFloat(num));\r\n // Compara cada parte da ordem\r\n for (let i = 0; i < Math.max(ordemA.length, ordemB.length); i++) {\r\n const partA = ordemA[i] || 0;\r\n const partB = ordemB[i] || 0;\r\n\r\n if (partA < partB) return -1;\r\n if (partA > partB) return 1;\r\n }\r\n return 0;\r\n });\r\n }\r\n });\r\n }\r\n\r\n async buscar() {\r\n if (!this.novoRegistro) {\r\n this.modeloQuestionarioService\r\n .obterPorId(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n console.log(this.model);\r\n\r\n this.ordenarOnDrop();\r\n this.form.controls['nome'].setValue(res.dados.nome);\r\n this.form.controls['id'].setValue(res.dados.id);\r\n this.form.controls['tipoDocumento'].setValue(res.dados.tipoDocumentoId);\r\n this.titulo = \"Editar modelo questionário - \" + this.model.nome;\r\n this.reordenar();\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => this.exibirMensagemErro(err));\r\n } else {\r\n this.titulo = \"Novo modelo questionário\";\r\n }\r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean) {\r\n if (this.novoRegistro) {\r\n if (!this.permissoes.incluir) {\r\n this.exibirMensagemErro(\"Você não possui permissão para Incluir.\");\r\n this.router.navigate(['/modelo-questionario']);\r\n return;\r\n }\r\n } else {\r\n if (!this.permissoes.editar) {\r\n this.exibirMensagemErro(\"Você não possui permissão para Editar.\");\r\n return;\r\n }\r\n }\r\n\r\n if (this.form.invalid) {\r\n this.exibirMensagemErro('Formulário invalido!');\r\n return;\r\n }\r\n\r\n this.model.nome = this.form.controls['nome'].value;\r\n this.model.id = this.id ?? 0;\r\n this.model.tipoDocumentoId = this.form.controls['tipoDocumento'].value;\r\n if (this.novoRegistro) {\r\n this.modeloQuestionarioService\r\n .inserir(this.model)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n if (salvarEFechar) {\r\n this.router.navigate(['/modelo-questionario']);\r\n } else {\r\n this.router.navigate([`/modelo-questionario/${res.dados.id}`]);\r\n this.buscar();\r\n }\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => this.exibirMensagemErro(err));\r\n } else {\r\n this.modeloQuestionarioService\r\n .atualizar(this.model)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n if (salvarEFechar) {\r\n this.router.navigate(['/modelo-questionario']);\r\n } else {\r\n this.buscar();\r\n }\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => this.exibirMensagemErro(err));\r\n }\r\n\r\n }\r\n\r\n public onDrop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n if (event.isPointerOverContainer) {\r\n moveItemInArray(this.model.itens, event.previousIndex, event.currentIndex);\r\n }\r\n } else {\r\n transferArrayItem(event.previousContainer.data,\r\n event.container.data,\r\n event.previousIndex,\r\n event.currentIndex);\r\n }\r\n this.ordenarOnDrop();\r\n\r\n }\r\n\r\n public ordenarOnDrop() {\r\n this.model.itens.forEach((item, idx) => {\r\n item.ordem = (idx + 1);\r\n item.ordemExibicao = item.ordem.toString();\r\n if (item.subItens) {\r\n item.subItens.forEach((subItem, subIdx) => {\r\n const itemPai = this.model.itens.find(_ => _.id == subItem.idItemPai);\r\n subItem.ordem = subIdx + 1;\r\n subItem.ordemExibicao = `${item.ordemExibicao}.${subItem.ordem.toString()}`;\r\n });\r\n }\r\n });\r\n }\r\n\r\n public onDropItens(event: CdkDragDrop, element: any) {\r\n if (event.previousContainer === event.container) {\r\n if (event.isPointerOverContainer) {\r\n moveItemInArray(element.subItens, event.previousIndex, event.currentIndex);\r\n }\r\n } else {\r\n transferArrayItem(event.previousContainer.data,\r\n event.container.data,\r\n event.previousIndex,\r\n event.currentIndex);\r\n }\r\n this.ordenarOnDrop();\r\n }\r\n\r\n\r\n public reordenar() {\r\n this.model.itens.forEach((item, idx) => {\r\n item.ordem = (idx + 1);\r\n item.ordemExibicao = item.ordem.toString();\r\n if (item.subItens) {\r\n item.subItens.forEach((subItem, subIdx) => {\r\n const itemPai = this.model.itens.find(_ => _.id == subItem.idItemPai);\r\n subItem.ordem = subIdx + 1;\r\n subItem.ordemExibicao = `${item.ordemExibicao}.${subItem.ordem.toString()}`\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n public async exibirModalPergunta(idItemPai: number, idx: number) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n\r\n const modal = this.matDialog.open(ModalModeloQuestionarioPerguntaComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n let novoItem = {} as IModeloQuestionarioItemModel;\r\n novoItem.idModeloQuestionario = this.id;\r\n novoItem.ativo = true;\r\n novoItem.nome = data.nome;\r\n novoItem.tipoId = 2;\r\n novoItem.tipoDescription = data.tipoEntrada.descricao;\r\n novoItem.obrigatorio = data.obrigatorio;\r\n novoItem.perguntaId = data.id;\r\n novoItem.status = 1;\r\n\r\n if (idItemPai == -1 && idx == -1) {\r\n if (!this.model.itens)\r\n this.model.itens = [] as IModeloQuestionarioItemModel[];\r\n\r\n this.model.itens.push(novoItem);\r\n } else {\r\n const itemPai = this.model.itens[idx];\r\n\r\n if (!itemPai.subItens)\r\n itemPai.subItens = [] as IModeloQuestionarioItemModel[];\r\n\r\n itemPai.subItens.push(novoItem);\r\n }\r\n this.reordenar();\r\n }\r\n })\r\n }\r\n\r\n\r\n public exibirModalSecao(element: any) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n id: element ? element.id : 0,\r\n idModeloQuestionario: this.id,\r\n nome: element ? element.nome : \"\"\r\n };\r\n\r\n const modal = this.matDialog.open(ModalModeloQuestionarioSecaoComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n\r\n let novaSecao = data as IModeloQuestionarioItemModel;\r\n\r\n if (!this.model.itens || this.model.itens.length == 0) {\r\n this.model.itens = [] as IModeloQuestionarioItemModel[];\r\n this.model.itens.push(novaSecao);\r\n this.reordenar();\r\n return;\r\n }\r\n\r\n if (this.model.itens.find((element) => element.nome.toUpperCase() == novaSecao.nome.toUpperCase())) {\r\n this.exibirMensagemErro(\"Já existe seção com este nome.\");\r\n return;\r\n }\r\n\r\n var isNew = true;\r\n\r\n this.model.itens.forEach((element, idx) => {\r\n if (novaSecao.nomeAnterior == element.nome\r\n && novaSecao.nomeAnterior != \"\") {\r\n element.nome = novaSecao.nome;\r\n isNew = false;\r\n }\r\n });\r\n\r\n if (isNew) {\r\n this.model.itens.push(novaSecao);\r\n }\r\n\r\n this.reordenar();\r\n }\r\n })\r\n }\r\n\r\n public excluirItem(element: IModeloQuestionarioItemModel) {\r\n\r\n var idxOf = this.model.itens.indexOf(element, 0);\r\n this.model.itens.splice(idxOf, 1);\r\n\r\n this.reordenar();\r\n }\r\n\r\n public excluirSubItem(nomePai: string, element: IModeloQuestionarioItemModel) {\r\n\r\n\r\n let elementPai = this.model.itens.find((element) => element.nome.toUpperCase() == nomePai.toUpperCase());\r\n const idxIndicePai = this.model.itens.indexOf(elementPai, 0);\r\n const itemPai = this.model.itens[idxIndicePai];\r\n var idxOf = itemPai.subItens.indexOf(element, 0);\r\n itemPai.subItens.splice(idxOf, 1);\r\n\r\n this.reordenar();\r\n }\r\n\r\n public onBack() {\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n\r\n const modal = this.matDialog.open(ModalCancelarModeloQuestionario, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data == true) {\r\n this.router.navigate(['/modelo-questionario']);\r\n }\r\n })\r\n }\r\n\r\n public fechar() {\r\n this.router.navigate(['/modelo-questionario']);\r\n }\r\n\r\n public semDados(): boolean {\r\n return !this.model || !this.model.itens || this.model.itens.length == 0;\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.Visualizar);\r\n\r\n\r\n if (this.novoRegistro) {\r\n if (!this.permissoes.incluir) {\r\n this.exibirMensagemErro(\"Você não possui permissão para Incluir.\");\r\n this.router.navigate(['/modelo-questionario']);\r\n return;\r\n }\r\n } else {\r\n if (!this.permissoes.visualizar) {\r\n this.exibirMensagemErro(\"Você não possui permissão para Visualizar.\");\r\n this.router.navigate(['/modelo-questionario']);\r\n return;\r\n }\r\n }\r\n }\r\n\r\n public getObrigatorio(item: any) {\r\n if (item.obrigatorio) {\r\n return \"Sim\";\r\n } else {\r\n return \"Não\";\r\n }\r\n }\r\n\r\n public avaliar(id: number, idModeloQuestionario: number, status: boolean) {\r\n var name: string = \"\";\r\n if (status) {\r\n name = 'Aprovar'\r\n } else {\r\n name = 'Reprovar'\r\n }\r\n Swal.fire({\r\n title: name,\r\n text: 'Tem certeza que deseja ' + name + '?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(res => {\r\n if (res.value) {\r\n this.modeloQuestionarioService.aprovarReprovarItem(id, idModeloQuestionario, status).then(res => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.buscar();\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n })\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Modelo de Questionário\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n

\r\n \r\n Perguntas\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n Pergunta\r\n Seção\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
#NomeTipoObrigatórioStatusAções
\r\n
\r\n \r\n \r\n {{ element?.ordemExibicao }}\r\n
\r\n
\r\n {{ element?.nome\r\n }}\r\n {{ element?.tipoDescription }} {{getObrigatorio(element)}} \r\n \r\n Ativo\r\n Inativo\r\n \r\n
\r\n
\r\n \r\n \r\n

\r\n Aguardando o aceite\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{ subItem?.ordemExibicao }}\r\n
\r\n
{{ subItem?.nome }}{{ subItem?.tipoDescription }} {{getObrigatorio(subItem)}} \r\n Ativo\r\n Inativo\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n Nenhum item cadastrado\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { BaseListComponent } from \"src/app/shared/components/base-list/base-list.component\";\r\nimport { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort, Sort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { IModeloQuestionarioModel } from \"src/app/models/modelo-questionario.model\";\r\nimport { ModeloQuestionarioService } from \"src/app/services/modelo-questionario.service\";\r\nimport { IPermissaoModel } from \"src/app/models/permissao.model\";\r\nimport { EnumRecursoPerfil } from \"src/app/models/enum/recurso-perfil.enum\";\r\nimport { EnumAcaoRecurso } from \"src/app/models/enum/acao-recurso.enum\";\r\nimport { FiltroModel } from \"src/app/models/filtro.model\";\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-modelo-questionario-list',\r\n templateUrl: './modelo-questionario-list.component.html',\r\n styleUrls: ['./modelo-questionario-list.component.scss']\r\n })\r\n export class ModeloQuestionarioListComponent extends BaseListComponent {\r\n \r\n public filtro = {} as FiltroModel;\r\n public dataSource = new MatTableDataSource([]);\r\n public totalItens: number;\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public selectedModel: IModeloQuestionarioModel;\r\n public pageEvent: any;\r\n \r\n\r\n constructor(\r\n private modeloQuestionarioService: ModeloQuestionarioService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n }\r\n\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n public displayedColumns: string[] = ['selecao', 'nome', 'tipoDocumentoDescription', 'ativo'];\r\n\r\n ngAfterViewInit() {\r\n this.dataSource.sort = this.sort; \r\n this.configurarFiltro(); // Movido para ngAfterViewInit\r\n this.buscar(); \r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n public novo() {\r\n if(!this.permissoes.incluir){\r\n this.exibirMensagemErro(\"Você não possui permissão para Incluir.\")\r\n return\r\n }\r\n\r\n this.router.navigate(['/modelo-questionario/novo']);\r\n }\r\n\r\n public editar(id: number){\r\n if(!this.permissoes.editar){\r\n this.exibirMensagemErro(\"Você não possui permissão para Editar.\")\r\n return\r\n }\r\n\r\n this.router.navigate([`/modelo-questionario/${id}`]);\r\n }\r\n\r\n public inativar(id: number){\r\n if(!this.permissoes.inativarReativar){\r\n this.exibirMensagemErro(\"Você não possui permissão para Inativar-Reativar.\")\r\n return\r\n }\r\n\r\n this.modeloQuestionarioService\r\n .inativar(id) \r\n .then((res) => {\r\n if(res.sucesso){\r\n this.selectedModel = null;\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.resetarFiltro();\r\n this.buscar();\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err)=> this.exibirMensagemErro(err));\r\n }\r\n\r\n public reativar(id: number){\r\n if(!this.permissoes.inativarReativar){\r\n this.exibirMensagemErro(\"Você não possui permissão para Inativar-Reativar.\")\r\n return\r\n }\r\n\r\n this.modeloQuestionarioService\r\n .reativar(id) \r\n .then((res) => {\r\n if(res.sucesso){\r\n this.selectedModel = null;\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.resetarFiltro();\r\n this.buscar();\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err)=> this.exibirMensagemErro(err));\r\n }\r\n\r\n public excluir(id: number){\r\n if(!this.permissoes.excluir){\r\n this.exibirMensagemErro(\"Você não possui permissão para Excluir.\")\r\n return\r\n }\r\n\r\n this.modeloQuestionarioService\r\n .excluir(id) \r\n .then((res) => {\r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.buscar()\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err)=> this.exibirMensagemErro(err));\r\n }\r\n\r\n public visualizar(id: number){\r\n if(!this.permissoes.visualizar){\r\n this.exibirMensagemErro(\"Você não possui permissão para visualizar.\")\r\n return\r\n }\r\n\r\n this.router.navigate([`/modelo-questionario/${id}/visualizar`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n \r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.ModeloQuestionario, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n public async buscar(){\r\n if(!this.permissoes.consultar){\r\n this.exibirMensagemErro(\"Você não possui permissão para consultar.\")\r\n return\r\n }\r\n\r\n this.configurarFiltro();\r\n this.modeloQuestionarioService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length == 0;\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => this.exibirMensagemErro(err));\r\n }\r\n\r\n private configurarFiltro() {\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchNome;\r\n this.filtro.direcao = this.sort.direction;\r\n this.filtro.colunaOrder = this.sort.active;\r\n }\r\n\r\n private resetarFiltro(){\r\n this.filtro.pagina = 1;\r\n this.tableOnePaginator.pageIndex = 0;\r\n this.filtro.ativo = true;\r\n }\r\n\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n \r\n this.buscar();\r\n }\r\n }","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Modelo Questionário
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Modelo Questionário\r\n

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Nome {{element.nome}} Tipo documento {{element.tipoDocumentoDescription}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum Registro Encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n ","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ICapituloRelatorioModel } from 'src/app/models/capitulo-relatorio.model';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { CapituloRelatorioService } from 'src/app/services/capitulo-relatorio.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { MatChipInputEvent } from '@angular/material/chips';\r\n\r\n@Component({\r\n selector: 'app-modal-capitulo',\r\n templateUrl: './modal-capitulo.component.html',\r\n styleUrls: ['./modal-capitulo.component.scss'],\r\n})\r\nexport class ModalCapituloComponent implements OnInit {\r\n public model: ICapituloRelatorioModel = {} as ICapituloRelatorioModel;\r\n public enumTipo = [] as IEnumModel[];\r\n public novoRegistro = true;\r\n public id: number;\r\n public keywords = ['Período', 'Indicador', 'UGs', 'Coordenações', 'Capacidade de trabalho', 'Auditores da Coordenação', 'Distribuição Contempladas', 'Ranking de Distribuição', 'Dados', 'Carga dos Critérios', 'Ranking de Distribuição'] as string[];\r\n public keywordsPaa = ['Período do PEAC', 'Indicadores do PAAC corrente', 'UGs do PAAC corrente', 'Coordenações do PAAC corrente', 'Capacidade de trabalho do PAAC corrente',\r\n 'Auditores da Coordenação do PAAC corrente', 'Distribuição Contempladas do PEAC', 'Ranking de Distribuição do PAAC corrente', 'Indicadores e Critérios do PAAC corrente',\r\n 'Painel de Distribuição do PAAC corrente', 'Auditorias inativas no Painel de Distribuição com respectiva justificativa', 'Auditorias por Tipo e Coordenação e UGs',\r\n 'Alocação da Equipe', 'Calendário do PAAC corrente', 'Capacidade total PAAC', 'Capacidade total PEAC'] as string[];\r\n public keywordsOpa = ['Tipo de auditoria', 'Origem', 'Unidade auditada', 'Objeto', 'Período', 'Coordenador', 'Auditores do OPA', 'Subtipo de Auditoria do OPA', 'Nota de rodapé'] as string[];\r\n public keywordsPlanejamento = ['Auditores do Planejamento', 'Subtipo de Auditoria do Planejamento', 'UGs do Planejamento', 'Informações Básicas'] as string[];\r\n public keywordsOsa = ['Auditores do OSA', 'Subtipo de Auditoria do OSA'] as string[];\r\n public titulo;\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n tipoId: new FormControl(null, Validators.required),\r\n conteudo: new FormControl('', Validators.required),\r\n tags: new FormControl(null)\r\n });\r\n\r\n constructor(\r\n public route: ActivatedRoute,\r\n public toastr: ToastrService,\r\n public router: Router,\r\n public localeService: BsLocaleService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private capituloRelatorioService: CapituloRelatorioService,\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n if (data.editar && data.element) {\r\n this.model = data.element;\r\n this.form.patchValue(this.model);\r\n }\r\n\r\n if (data.subCapitulo) {\r\n this.titulo = 'Subcapítulo';\r\n }\r\n else {\r\n this.titulo = 'Capítulo';\r\n }\r\n }\r\n\r\n config: AngularEditorConfig = {\r\n editable: true,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n // ['bold']\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.capituloRelatorioService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n } else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/capitulos-relatorio']);\r\n return;\r\n }\r\n }\r\n\r\n await this.tabelaDominioService.obterTipoCapituloRelatorio().then((res) => this.enumTipo = res.dados),\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/capitulos-relatorio']);\r\n }\r\n }\r\n\r\n public concluir() {\r\n if(this.form.invalid)\r\n return;\r\n\r\n this.atualizarModel(this.form.value);\r\n this.model.tipo = this.enumTipo.find(_ => _?.codigo === parseInt(this.model.tipoId.toString(), null));\r\n this.dialogRef.close(this.model);\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public cancelar() {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.data = { interno: true };\r\n this.matDialog.open(ModalCancelarComponent, dialogConfig).afterClosed();\r\n }\r\n\r\n addKeywordFromInput(event: MatChipInputEvent) {\r\n if (event.value) {\r\n if (this.keywords.includes(event.value)) {\r\n this.toastr.error('Tag já adicionada ao capítulo.', 'Atenção');\r\n } else {\r\n this.keywords.push(event.value);\r\n }\r\n }\r\n }\r\n\r\n addTag(keyword: string) {\r\n this.atualizarModel(this.form.value);\r\n this.model.conteudo += `{{${keyword}}}`;\r\n this.form.patchValue(this.model);\r\n }\r\n}\r\n","
\r\n \r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{keyword}}\r\n \r\n \r\n \r\n \r\n {{keyword}}\r\n \r\n \r\n \r\n \r\n {{keyword}}\r\n \r\n \r\n \r\n \r\n {{keyword}}\r\n \r\n \r\n \r\n \r\n {{keyword}}\r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n Cancelar\r\n \r\n
\r\n \r\n \r\n \r\n\r\n","import { CdkDrag, CdkDragDrop, moveItemInArray, transferArrayItem } from \"@angular/cdk/drag-drop\";\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ICapituloRelatorioModel } from 'src/app/models/capitulo-relatorio.model';\r\nimport { IModeloRelatorioModel } from 'src/app/models/modelo-relatorio.model';\r\nimport { ModeloRelatorioService } from 'src/app/services/modelo-relatorio.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\nimport { ModalCapituloComponent } from './modal-capitulo/modal-capitulo.component';\r\nimport { IFluxoAprovacaoModel } from 'src/app/models/fluxo-aprovacao.model';\r\nimport { FluxoAprovacaoService } from 'src/app/services/fluxo-aprovacao.service';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { CapituloRelatorioService } from 'src/app/services/capitulo-relatorio.service';\r\n@Component({\r\n selector: 'app-modelo-relatorio-form',\r\n templateUrl: './modelo-relatorio-form.component.html',\r\n styleUrls: ['./modelo-relatorio-form.component.scss']\r\n})\r\nexport class ModeloRelatorioFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IModeloRelatorioModel = {} as IModeloRelatorioModel;\r\n public capitulosDataSource = new MatTableDataSource([]);\r\n public capitulosRelatorio = [] as ICapituloRelatorioModel[];\r\n public tiposTrabalhos = [\r\n {codigo: 1, nome:'PEAC', descricao: 'PEAC'},\r\n {codigo: 2, nome:'PAAC', descricao: 'PAAC'},\r\n {codigo: 8, nome:'PAAC - Especial', descricao: 'PAAC - Especial'},\r\n {codigo: 3, nome:'OPA', descricao: 'OPA'},\r\n {codigo: 7, nome:'Planejamento', descricao: 'Planejamento'},\r\n {codigo: 4, nome:'OSA', descricao: 'OSA'},\r\n ] ;\r\n public semDados = true;\r\n\r\n public selectedModel: IModeloRelatorioModel;\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public displayedColumns: string[] = [\r\n 'ordem', 'nome', 'tipo', 'actions'\r\n ];\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n tipoTrabalhoId: new FormControl(null, Validators.required)\r\n });\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n spinner: NgxSpinnerService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private modeloRelatorioService: ModeloRelatorioService,\r\n private capituloRelatorioService: CapituloRelatorioService,\r\n private fluxoAprovacaoService: FluxoAprovacaoService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Modelo de Relatório';\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n this.buscar();\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public ordenaCapitulos(){\r\n\r\n //Ordena capitulos pai\r\n this.model.capitulos.sort((capituloA, capitulob) => {\r\n const ordemA = capituloA.ordem.split('.').map(num => parseFloat(num));\r\n const ordemB = capitulob.ordem.split('.').map(num => parseFloat(num));\r\n\r\n // Compara cada parte da ordem\r\n for (let i = 0; i < Math.max(ordemA.length, ordemB.length); i++) {\r\n const partA = ordemA[i] || 0;\r\n const partB = ordemB[i] || 0;\r\n\r\n if (partA < partB) return -1;\r\n if (partA > partB) return 1;\r\n }\r\n return 0;\r\n });\r\n\r\n //ordenacapito filhos\r\n\r\n this.model.capitulos.forEach(subCapitulos =>{\r\n if(subCapitulos.subCapitulos.length){\r\n subCapitulos.subCapitulos.sort((capituloA, capitulob)=>{\r\n const ordemA = capituloA.ordem.split('.').map(num => parseFloat(num));\r\n const ordemB = capitulob.ordem.split('.').map(num => parseFloat(num));\r\n // Compara cada parte da ordem\r\n for (let i = 0; i < Math.max(ordemA.length, ordemB.length); i++) {\r\n const partA = ordemA[i] || 0;\r\n const partB = ordemB[i] || 0;\r\n\r\n if (partA < partB) return -1;\r\n if (partA > partB) return 1;\r\n }\r\n return 0;\r\n });\r\n }\r\n });\r\n }\r\n public async buscar() {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.modeloRelatorioService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n this.ordenaCapitulos();\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Modelo de Relatório - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Modelo de Relatório - ' + this.model.nome;\r\n }\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n this.router.navigate(['/modelos-relatorio']);\r\n return;\r\n }\r\n }\r\n this.form.patchValue(this.model);\r\n this.semDados = this.model.capitulos.length == 0;\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n this.router.navigate(['/modelos-relatorio']);\r\n } finally {\r\n }\r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean)\r\n {\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta(\"Formulário invalido\");\r\n return;\r\n }\r\n this.submit = true;\r\n\r\n this.model.capitulos.forEach(c => {\r\n if(c.subCapitulos){\r\n c.subCapitulos.forEach(sc => {\r\n sc.capituloRelatorioPai = null;\r\n });\r\n }\r\n });\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n this.model.capitulos.forEach((element, idx) => {\r\n element.ordem = (idx+1).toString();\r\n if(element.subCapitulos){\r\n element.subCapitulos.forEach((subCapitulo, subIdx) => {\r\n subCapitulo.ordem = `${element.ordem}.${(subIdx).toString()}`;\r\n });\r\n }\r\n });\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.modeloRelatorioService.atualizar(this.model);\r\n } else {\r\n res = await this.modeloRelatorioService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n\r\n if(salvarEFechar == true){\r\n this.router.navigate(['/modelos-relatorio']);\r\n }else{\r\n if(this.novoRegistro){\r\n this.router.navigate([`/modelos-relatorio/${res.dados.id}`]);\r\n this.buscar();\r\n }\r\n }\r\n\r\n } else {\r\n this.submit = false;\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.submit = false;\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n } finally {\r\n }\r\n }\r\n\r\n public async onSubmit() {\r\n this.salvarDados(false);\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public excluirCapitulo(element: ICapituloRelatorioModel) {\r\n\r\n if (element.capituloRelatorioPaiId) {\r\n this.model.capitulos.forEach(capitulo => {\r\n if(capitulo.id == element.capituloRelatorioPaiId){\r\n capitulo.subCapitulos.splice(capitulo.subCapitulos.findIndex(x => x.ordem == element.ordem), 1);\r\n return;\r\n }\r\n });\r\n\r\n }\r\n else {\r\n\r\n if(element.capituloRelatorioPai){\r\n\r\n this.model.capitulos.forEach(capitulo => {\r\n if(capitulo.ordem == element.capituloRelatorioPai.ordem){\r\n capitulo.subCapitulos.splice(capitulo.subCapitulos.findIndex(x => x.ordem == element.ordem), 1);\r\n return;\r\n }\r\n });\r\n\r\n }else{\r\n this.model.capitulos.splice(this.model.capitulos.findIndex(_ => _.ordem === element.ordem), 1);\r\n }\r\n }\r\n\r\n this.semDados = this.model.capitulos.length === 0;\r\n this.reordenar();\r\n }\r\n\r\n public async exibirModalCapitulo(editar?: boolean, element?: ICapituloRelatorioModel, indice?: number, subCapitulo?: boolean, indexValue?: number) {\r\n try {\r\n if(this.form.invalid){\r\n this.exibirMensagemAlerta(\"Salve os dados anteriores\");\r\n return;\r\n }\r\n\r\n const tipoDocumento = this.form.controls[\"tipoTrabalhoId\"].value;\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '1200px';\r\n dialogConfig.height = '600px';\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n element,\r\n indice,\r\n subCapitulo,\r\n editar,\r\n tipoDocumento\r\n };\r\n const modal = this.matDialog.open(ModalCapituloComponent, dialogConfig);\r\n\r\n modal.afterClosed().subscribe(async (data: ICapituloRelatorioModel) => {\r\n if (data) {\r\n try {\r\n if(!this.model){\r\n this.model = {} as IModeloRelatorioModel;\r\n }\r\n if(!this.model.capitulos){\r\n this.model.capitulos = [] as ICapituloRelatorioModel[];\r\n }\r\n\r\n if (data.id) {\r\n if (element && subCapitulo || data.capituloRelatorioPaiId) {\r\n const capituloPai = this.model.capitulos.find(_ => _.id === element.capituloRelatorioPaiId);\r\n capituloPai.subCapitulos[indice] = data ;\r\n }\r\n return;\r\n }\r\n\r\n if (element && subCapitulo) {\r\n\r\n if (!element.subCapitulos) { element.subCapitulos = [] as ICapituloRelatorioModel[]; }\r\n\r\n const capituloPai = this.model.capitulos.find(_ => _.id === element.capituloRelatorioPaiId);\r\n const indexUpdate = capituloPai?.subCapitulos?.findIndex(_ => _.ordem === element.ordem);\r\n if (indexUpdate >= 0) {\r\n capituloPai.subCapitulos.splice(indexUpdate, 1);\r\n data.capituloRelatorioPaiId = capituloPai.id;\r\n data.modeloRelatorioId = capituloPai.modeloRelatorioId;\r\n capituloPai.subCapitulos.push(data);\r\n }\r\n else {\r\n data.ordem = `${element.ordem}.${(element.subCapitulos.length).toString()}`;\r\n data.capituloRelatorioPaiId = element.id;\r\n data.modeloRelatorioId = element.modeloRelatorioId;\r\n data.capituloRelatorioPai = element;\r\n element.subCapitulos.push(data);\r\n }\r\n }\r\n else if (element) {\r\n this.model.capitulos.splice(indice, 1);\r\n data.ordem = (this.model.capitulos.length + 1).toString();\r\n data.modeloRelatorioId = element.modeloRelatorioId;\r\n this.model.capitulos.push(data);\r\n }\r\n else {\r\n data.ordem = (this.model.capitulos.length + 1).toString();\r\n this.model.capitulos.push(data);\r\n }\r\n\r\n } catch (error) {\r\n this.exibirMensagemErro(\"Ocorreu um erro inesperado. Entre em contato com o administrador.\");\r\n } finally {\r\n }\r\n }\r\n });\r\n\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n } finally {\r\n }\r\n }\r\n\r\n onDrop(event: CdkDragDrop) {\r\n\r\n debugger\r\n\r\n let dados = event.item.data\r\n if(event.previousContainer === event.container){\r\n moveItemInArray(this.model.capitulos, event.previousIndex, event.currentIndex);\r\n }else {\r\n transferArrayItem(event.previousContainer.data,\r\n event.container.data,\r\n event.previousIndex,\r\n event.currentIndex);\r\n }\r\n this.model.capitulos.forEach((element, idx) => {\r\n element.ordem = (idx+1).toString();\r\n if(element.subCapitulos){\r\n element.subCapitulos.forEach((subCapitulo, subIdx) => {\r\n subCapitulo.ordem = `${element.ordem}.${(subIdx).toString()}`;\r\n });\r\n }\r\n\r\n });\r\n }\r\n\r\n onDropItens(event: CdkDragDrop,_elememt:any) {\r\n debugger\r\n if(event.previousContainer === event.container){\r\n moveItemInArray(_elememt.subCapitulos, event.previousIndex, event.currentIndex);\r\n }else {\r\n transferArrayItem(event.previousContainer.data,\r\n event.container.data,\r\n event.previousIndex,\r\n event.currentIndex);\r\n }\r\n this.model.capitulos.forEach((element, idx) => {\r\n element.ordem = (idx + 1).toString();\r\n if(element.subCapitulos){\r\n element.subCapitulos.forEach((subCapitulo, subIdx) => {\r\n subCapitulo.ordem = `${element.ordem}.${(subIdx).toString()}`;\r\n });\r\n }\r\n\r\n });\r\n }\r\n\r\n public retornaCapitulosArray(): ICapituloRelatorioModel[]{\r\n let itens= [] as ICapituloRelatorioModel[];\r\n\r\n this.model.capitulos.forEach(capitulo => {\r\n itens.push(capitulo);\r\n if(capitulo.subCapitulos){\r\n capitulo.subCapitulos.forEach(subCapitulo => {\r\n subCapitulo.subCapitulos = null;\r\n itens.push(subCapitulo);\r\n });\r\n }\r\n });\r\n\r\n return itens;\r\n }\r\n\r\n public reordenar() {\r\n\r\n this.model.capitulos.forEach((element, idx) => {\r\n element.ordem = (idx + 1).toString();\r\n if(element.subCapitulos){\r\n element.subCapitulos.forEach((subCapitulo, subIdx) => {\r\n subCapitulo.ordem = `${element.ordem}.${(subIdx).toString()}`;\r\n });\r\n }\r\n\r\n });\r\n }\r\n\r\n public avaliarCapitulo(id: number, status: boolean) {\r\n var name: string = \"\";\r\n if (status) {\r\n name = 'Aprovar'\r\n } else {\r\n name = 'Reprovar'\r\n }\r\n Swal.fire({\r\n title: name,\r\n text: 'Tem certeza que deseja ' + name + '?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(res => {\r\n if (res.value) {\r\n this.capituloRelatorioService.aprovarReprovarCapitulo(id, status).then(res => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.buscar();\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n })\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/modelos-relatorio']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Modelos de Relatório\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n \r\n
\r\n \r\n

Processando...

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n

\r\n \r\n Capítulos de Relatório\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n Adicionar\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
#NomeTipoAções
\r\n
\r\n \r\n \r\n {{ element?.ordem }}\r\n
\r\n
{{ element?.nome }}{{ element?.tipo?.descricao }}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n Aguardando o aceite\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{ subCapitulo?.ordem }}\r\n
\r\n
\r\n {{ subCapitulo?.nome }}\r\n \r\n {{ subCapitulo?.tipo?.descricao }}\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n Aguardando o aceite\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n Nenhum registro encontrado.\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n Cancelar\r\n \r\n\r\n \r\n Sair\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort, Sort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IModeloRelatorioModel } from 'src/app/models/modelo-relatorio.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { ModeloRelatorioService } from 'src/app/services/modelo-relatorio.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'descricao':\r\n return item.tipoTrabalho.descricao.trim().toLowerCase(); \r\n case 'nome': return item.nome.trim().toLowerCase(); \r\n default:\r\n return item[property];\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-modelo-relatorio-list',\r\n templateUrl: './modelo-relatorio-list.component.html',\r\n styleUrls: ['./modelo-relatorio-list.component.scss']\r\n})\r\nexport class ModeloRelatorioListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IModeloRelatorioModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'descricao', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private modeloRelatorioService: ModeloRelatorioService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private spinner: NgxSpinnerService,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n \r\n\r\n public novo() {\r\n this.router.navigate(['/modelos-relatorio/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n this.spinner.show();\r\n\r\n this.modeloRelatorioService\r\n .obter(this.searchNome, this.searchAtivo, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n .finally(() => this.spinner.hide());\r\n }\r\n\r\n public reativar(id: number) {\r\n this.spinner.show();\r\n this.modeloRelatorioService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Modelo de Relatório reativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.spinner.hide();\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.spinner.show();\r\n this.modeloRelatorioService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Modelo de Relatório inativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.spinner.hide();\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/modelos-relatorio/${id}`]);\r\n }\r\n\r\n public excluir(id: number) {\r\n this.spinner.show();\r\n this.modeloRelatorioService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Modelo de Relatório excluído com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.spinner.hide();\r\n this.buscar();\r\n });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/modelos-relatorio/${id}/visualizar`]);\r\n }\r\n}","\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Modelos de Relatório\r\n

\r\n
\r\n\r\n
\r\n \r\n

Processando...

\r\n \r\n
\r\n \r\n \r\n \r\n Novo\r\n \r\n \r\n Editar\r\n \r\n \r\n \r\n Reativar\r\n \r\n \r\n \r\n Inativar\r\n \r\n \r\n \r\n \r\n Excluir\r\n \r\n \r\n \r\n Visualizar\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Exibir todos\r\n Exibir somente ativos\r\n Exibir somente inativos\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Nome\r\n \r\n {{ element.nome }}\r\n \r\n\r\n \r\n \r\n Tipo de Trabalho\r\n \r\n \r\n {{ element.tipoTrabalho?.descricao }}\r\n \r\n \r\n\r\n \r\n \r\n Situação\r\n \r\n \r\n Ativo\r\n Inativo\r\n \r\n \r\n\r\n \r\n \r\n
\r\n Nenhum registro encontrado.\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { INaturezaResponsabilidadeModel } from 'src/app/models/natureza-responsabilidade';\r\nimport { NaturezaResponsabilidadeService } from 'src/app/services/natureza-responsabilidade.service';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\n\r\n@Component({\r\n selector: 'app-natureza-responsabilidade-form',\r\n templateUrl: './natureza-responsabilidade-form.component.html',\r\n styleUrls: ['./natureza-responsabilidade-form.component.scss'],\r\n})\r\nexport class NaturezaResponsabilidadeFormComponent extends BaseFormComponent implements OnInit {\r\n public model: INaturezaResponsabilidadeModel = {} as INaturezaResponsabilidadeModel;\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private naturezaResponsabilidadeService: NaturezaResponsabilidadeService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.naturezaResponsabilidadeService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Natureza da Responsabilidade';\r\n } else {\r\n this.titulo = 'Editar Natureza da Responsabilidade - ' + this.model.nome;\r\n }\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Natureza da Responsabilidade - ' + this.model.nome;\r\n }\r\n\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/natureza-responsabilidade']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n this.router.navigate(['/natureza-responsabilidade']);\r\n }\r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean)\r\n {\r\n this.submit = true;\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.naturezaResponsabilidadeService.atualizar(this.model);\r\n } else {\r\n res = await this.naturezaResponsabilidadeService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'success',\r\n text: res.mensagem.descricao\r\n });\r\n\r\n if(salvarEFechar == true){\r\n this.router.navigate(['/natureza-responsabilidade']);\r\n }else{\r\n this.router.navigate([`/natureza-responsabilidade/${res.dados.id}`]);\r\n this.ngOnInit();\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n \r\n }\r\n }\r\n catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public async onSubmit() {\r\n this.salvarDados(false);\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigate(['/natureza-responsabilidade']);\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/natureza-responsabilidade']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Natureza da Responsabilidade\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { INaturezaResponsabilidadeModel } from 'src/app/models/natureza-responsabilidade';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { NaturezaResponsabilidadeService } from 'src/app/services/natureza-responsabilidade.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-natureza-responsabilidade-list',\r\n templateUrl: './natureza-responsabilidade-list.component.html',\r\n styleUrls: ['./natureza-responsabilidade-list.component.scss'],\r\n})\r\n\r\nexport class NaturezaResponsabilidadeListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: INaturezaResponsabilidadeModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private naturezaResponsabilidadeService: NaturezaResponsabilidadeService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/natureza-responsabilidade/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.naturezaResponsabilidadeService\r\n .obter(this.searchNome, this.searchAtivo, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.naturezaResponsabilidadeService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Natureza da responsabilidade reativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.naturezaResponsabilidadeService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Natureza da responsabilidade inativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/natureza-responsabilidade/${id}`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public excluir(id: number) {\r\n this.naturezaResponsabilidadeService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Natureza da responsabilidade excluída com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta('Objeto não pode ser excluído');\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/natureza-responsabilidade/${id}/visualizar`]);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Natureza da Responsabilidade
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Natureza da Responsabilidade\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nome\r\n {{element.nome}}\r\n \r\n Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro\r\n encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { OpaService } from 'src/app/services/opa.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\r\nimport { IOpaModel } from 'src/app/models/opa.model';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { ITipoAuditoriaModel } from 'src/app/models/tipo-auditoria.model';\r\nimport { TipoAuditoriaService } from 'src/app/services/tipo-auditoria.service';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport { CoordenacaoService } from 'src/app/services/coordenacao.service';\r\nimport { IAuditorCoordenacaoModel } from 'src/app/models/auditor-coordenacao.model';\r\nimport { SubtipoAuditoriaService } from 'src/app/services/subtipo-auditoria.service';\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { DateHelper } from 'src/app/core/helpers/date.helper';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IOpaSubtipoAuditoriaModel } from 'src/app/models/opa-subtipo-auditoria.model';\r\nimport { ModalAlocarEquipeOpaComponent } from '../modal/modal-alocar-equipe/modal-alocar-equipe-opa.component';\r\nimport { IOpaEquipeModel } from 'src/app/models/opa-equipe.model';\r\nimport { IOpaEquipeAuditorModel } from 'src/app/models/opa-equipe-auditor.model';\r\nimport { PaaService } from 'src/app/services/paa.service';\r\nimport { ModalConfirmarInativacaoComponent } from 'src/app/shared/components/modal-confirmar-inativacao/modal-confirmar-inativacao.component';\r\nimport { IOpaHistoricoModel } from 'src/app/models/opa-historico.model';\r\nimport Swal from 'sweetalert2';\r\nimport { IRelatoriaCapituloModel } from 'src/app/models/relatoria-capitulo.model';\r\nimport { ITipoEnfaseModel } from 'src/app/models/tipo-enfase.model';\r\nimport { TipoEnfaseService } from 'src/app/services/tipo-enfase.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\n\r\n@Component({\r\n selector: 'app-opa-form',\r\n templateUrl: './opa-form.component.html',\r\n styleUrls: ['./opa-form.component.scss']\r\n})\r\nexport class OpaFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IOpaModel = {} as IOpaModel;\r\n public tiposAuditoria = [] as ITipoAuditoriaModel[];\r\n public tiposEnfase = [] as ITipoEnfaseModel[];\r\n public coordenadoresAuditoria = [] as IAuditorCoordenacaoModel[];\r\n public subtipoDataSource = new MatTableDataSource([]);\r\n public auditoresDataSource = new MatTableDataSource([]);\r\n public subtipoSemDados = true;\r\n public auditoresSemDados = true;\r\n public historicoTipoAuditoria: IOpaHistoricoModel = {} as IOpaHistoricoModel;\r\n public historicoUnidadeGestora: IOpaHistoricoModel = {} as IOpaHistoricoModel;\r\n public tipoAuditorioSelecionado: ITipoAuditoriaModel = {} as ITipoAuditoriaModel;\r\n public permiteEdicao: boolean = false;\r\n public emPlanejamento = false;\r\n public aba: number = 0;\r\n public versao = false;\r\n public novaOpa = false\r\n public diasUteisAuditoria: any;\r\n\r\n public relatoriaDados: IRelatoriaCapituloModel[] = null;\r\n\r\n public visualizarRelatoria = false;\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n numeroOpa: new FormControl({ value: '', disabled: true }),\r\n origemAuditoria: new FormControl({ value: '', disabled: true }),\r\n dataElaboracao: new FormControl({ value: '', disabled: true }),\r\n tipoAuditoriaId: new FormControl('', Validators.required),\r\n unidadeGestoraNome: new FormControl({ value: '' }),\r\n unidadeGestoraId: new FormControl('', Validators.required),\r\n dataInicioPrevista: new FormControl(''),\r\n dataFimPrevista: new FormControl(''),\r\n objeto: new FormControl('', Validators.required),\r\n dataInicioRealizacao: new FormControl('', Validators.required),\r\n dataApresentacaoPlanejamento: new FormControl('', Validators.required),\r\n dataFimRealizacao: new FormControl(''),\r\n auditorCoordenacaoId: new FormControl('', Validators.required),\r\n notaRodape: new FormControl(''),\r\n tipoEnfaseId: new FormControl(''),\r\n qtdeDiasUteis: new FormControl('')\r\n });\r\n\r\n constructor(route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n matDialog: MatDialog,\r\n private opaService: OpaService,\r\n private tipoAuditoriaService: TipoAuditoriaService,\r\n private coordenacaoService: CoordenacaoService,\r\n private ugService: UnidadeGestoraService,\r\n private subtipoAuditoriaService: SubtipoAuditoriaService,\r\n private paaService: PaaService,\r\n private dateHelper: DateHelper,\r\n public authService: AuthService,\r\n public tipoEnfaseService: TipoEnfaseService,\r\n private activatedRoute: ActivatedRoute,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Nova OPA';\r\n this.novaOpa = true;\r\n } \r\n if (this.router.url.includes(\"nova-versao\")) {\r\n this.versao = true;\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n this.obterTiposAuditoria();\r\n this.obterTiposEnfase();\r\n this.obterCoordenadoresAuditoria();\r\n if (this.novoRegistro) {\r\n this.gerarNova();\r\n } else {\r\n this.obterOpa();\r\n }\r\n const numeroAba = this.activatedRoute.snapshot.queryParamMap.get('aba');\r\n if (numeroAba) { this.mudarAba(Number(numeroAba)); }\r\n this.router.url.includes('aba=6') ? this.mudarAba(6) : null;\r\n this.router.url.includes('aba=7') ? this.mudarAba(7) : null;\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.form.controls['dataInicioRealizacao'].valueChanges.subscribe(value => {\r\n this.calcularDataFim();\r\n });\r\n }\r\n\r\n public gerarNova() {\r\n this.opaService\r\n .gerarNova()\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n this.permiteEdicao = true;\r\n this.atualizarModel();\r\n this.atualizarForm(true);\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public obterOpa() {\r\n this.opaService\r\n .obterPorId(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n this.form.controls['qtdeDiasUteis'].setValue(this.model.qtdeDiasUteis)\r\n this.form.controls['dataFimRealizacao'].setValue(this.model.dataFimRealizacao)\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar OPA - ' + (this.model.numero ? this.model.numero : '');\r\n } else {\r\n this.titulo = 'Editar OPA - ' + (this.model.numero ? this.model.numero : '');\r\n \r\n if (this.model.paa) {\r\n this.form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n numeroOpa: new FormControl({ value: '', disabled: true }),\r\n origemAuditoria: new FormControl({ value: '', disabled: true }),\r\n dataElaboracao: new FormControl({ value: '', disabled: true }),\r\n tipoAuditoriaId: new FormControl('', Validators.required),\r\n unidadeGestoraNome: new FormControl({ value: '' }),\r\n unidadeGestoraId: new FormControl('', Validators.required),\r\n dataInicioPrevista: new FormControl('', Validators.required),\r\n dataFimPrevista: new FormControl('', Validators.required),\r\n objeto: new FormControl('', Validators.required),\r\n dataInicioRealizacao: new FormControl(''),\r\n dataFimRealizacao: new FormControl(''),\r\n auditorCoordenacaoId: new FormControl('', Validators.required),\r\n notaRodape: new FormControl(''),\r\n tipoEnfaseId: new FormControl(''),\r\n qtdeDiasUteis: new FormControl({ value: '', disabled: true})\r\n });\r\n }\r\n }\r\n\r\n this.tipoAuditorioSelecionado = this.model.tipoAuditoria;\r\n if (this.router.url.includes(\"nova-versao\")) \r\n this.permiteEdicao = true;\r\n else this.permiteEdicao = !this.visualizar && this.model.ativo && this.model.situacao.codigo === 1;\r\n \r\n this.emPlanejamento = this.model.situacao.codigo === 4;\r\n this.atualizarModel();\r\n this.atualizarSubtipos();\r\n this.atualizarAuditores();\r\n this.atualizarForm(false);\r\n this.atualizarHistoricoTipoAuditoria();\r\n this.atualizarHistoricoUnidadeGestora();\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public obterTiposAuditoria() {\r\n this.tipoAuditoriaService\r\n .obterAtivos()\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.tiposAuditoria = res.dados;\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public obterTiposEnfase(){\r\n const filtroEnfase = {} as FiltroModel;\r\n filtroEnfase.itensPorPagina = 99;\r\n filtroEnfase.ativo = true;\r\n this.tipoEnfaseService.obter(filtroEnfase)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.tiposEnfase = res.dados.resultado\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) =>\r\n {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public obterCoordenadoresAuditoria() {\r\n this.coordenacaoService\r\n .obterCoordenadoresAtivos()\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.coordenadoresAuditoria = res.dados;\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public obterCoordenadorTipoAuditoria(tipoAuditoriaId: number) {\r\n this.tipoAuditoriaService\r\n .obterCoordenadorTipoAuditoria(tipoAuditoriaId)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.atualizarFormCoordenadorTipoAuditoria(res.dados.id);\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n this.submit = true;\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido!');\r\n return;\r\n }\r\n\r\n if (this.model.subtiposAuditoria.length === 0) {\r\n this.exibirMensagemAlerta('Informe algum Subtipo de Auditoria');\r\n return;\r\n }\r\n\r\n if (!this.model.opaEquipe || this.model.opaEquipe.auditores.length === 0) {\r\n this.exibirMensagemAlerta('Informe a Equipe de Auditores');\r\n return;\r\n }\r\n this.atualizarModelForm(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n this.atualizarHistoricoOpa();\r\n res = await this.opaService.atualizar(this.model);\r\n } else {\r\n res = await this.opaService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.historicoTipoAuditoria = {} as IOpaHistoricoModel;\r\n this.historicoUnidadeGestora = {} as IOpaHistoricoModel;\r\n if (salvarEFechar == true) {\r\n this.router.navigate(['/opa/']);\r\n }else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/opa/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }else window.location.reload()\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n if (validacoes.trim().length > 0) {\r\n this.exibirMensagemAlerta(validacoes, true);\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public onSair() {\r\n window.history.back();\r\n }\r\n\r\n public async onSelectTipoAuditoria(evt) {\r\n if (!this.novoRegistro) {\r\n const modal = this.recuperarConfiguracaoModalHistorico('Tem certeza que alterar o Tipo de Auditoria?'); \r\n\r\n modal.afterClosed().subscribe((justificativa) => {\r\n if (justificativa) {\r\n this.model.tipoAuditoriaId = this.form.get('tipoAuditoriaId').value;\r\n this.model.tipoAuditoria = null;\r\n this.model.auditorCoordenacao = null;\r\n this.atualizarTipoAuditoriaSelecionado(evt);\r\n this.obterCoordenadorTipoAuditoria(this.model.tipoAuditoriaId);\r\n\r\n this.historicoTipoAuditoria.tipoAuditoriaId = this.model.tipoAuditoriaId;\r\n this.atualizarDadosHistorico(this.historicoTipoAuditoria, justificativa);\r\n this.diasUteisAuditoria = this.tiposAuditoria.find(item => item.id == this.model.tipoAuditoriaId);\r\n this.form.controls['qtdeDiasUteis'].setValue(this.diasUteisAuditoria.quantidadeDias )\r\n \r\n } else {\r\n evt.target.value = this.model.tipoAuditoriaId;\r\n this.diasUteisAuditoria = this.tiposAuditoria.find(item => item.id == evt.target.value);\r\n this.form.controls['qtdeDiasUteis'].setValue(this.diasUteisAuditoria.quantidadeDias )\r\n }\r\n });\r\n } else {\r\n this.model.tipoAuditoriaId = this.form.get('tipoAuditoriaId').value;\r\n this.diasUteisAuditoria = this.tiposAuditoria.find(item => item.id == this.model.tipoAuditoriaId);\r\n this.form.controls['qtdeDiasUteis'].setValue(this.diasUteisAuditoria.quantidadeDias )\r\n\r\n this.atualizarTipoAuditoriaSelecionado(evt);\r\n await this.obterCoordenadorTipoAuditoria(this.model.tipoAuditoriaId);\r\n }\r\n }\r\n\r\n public async exibirModalUnidadeGestora() {\r\n try {\r\n\r\n const res = await this.ugService.obterAtivos();\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Unidade Gestora', res.dados);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n if (!this.novoRegistro) {\r\n const modal = this.recuperarConfiguracaoModalHistorico('Tem certeza que alterar a Unidade Gestora?');\r\n\r\n modal.afterClosed().subscribe((justificativa) => {\r\n if (justificativa) {\r\n this.model.unidadeGestoraId = data.id;\r\n this.model.unidadeGestora = null;\r\n this.atualizarFormUnidadeGestora(data);\r\n\r\n this.historicoUnidadeGestora.unidadeGestoraId = this.model.unidadeGestoraId;\r\n this.atualizarDadosHistorico(this.historicoUnidadeGestora, justificativa);\r\n }\r\n });\r\n } else {\r\n this.model.unidadeGestoraId = data.id;\r\n this.atualizarFormUnidadeGestora(data);\r\n }\r\n }\r\n });\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public async exibirModalSubtipo() {\r\n try {\r\n\r\n const res = await this.subtipoAuditoriaService.obterAtivos();\r\n if (res.sucesso) {\r\n const modal = this.exibirModalMultiselect('Adicionar Subtipo', res.dados, 'Adicionar');\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n if (Array.isArray(data)) {\r\n let subtiposAuditoriaSelecionados = [] as ISubtipoAuditoriaModel[];\r\n subtiposAuditoriaSelecionados = data.map(d => (d as ISubtipoAuditoriaModel));\r\n subtiposAuditoriaSelecionados.forEach(x => this.model.subtiposAuditoria.push({ subtipoAuditoriaId: x.id, subtipoAuditoria: x, opaId: this.id } as IOpaSubtipoAuditoriaModel));\r\n }\r\n this.atualizarSubtipos();\r\n }\r\n });\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public excluirSubtipo(indice: number) {\r\n Swal.fire({\r\n title: \"Excluir Registro\",\r\n text: \"Tem certeza que deseja excluir esse Registro?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then((res) => {\r\n if (res.value) {\r\n this.subtipoDataSource.data.splice(indice, 1);\r\n this.subtipoDataSource._updateChangeSubscription();\r\n this.subtipoSemDados = this.subtipoDataSource.filteredData.length === 0;\r\n }\r\n })\r\n\r\n }\r\n\r\n public async exibirModalAlocarEquipe() {\r\n try {\r\n const auditoresTipoAuditoria = this.model.tipoAuditoriaId === 0 || this.model.tipoAuditoriaId == undefined ? [] as IAuditorCoordenacaoModel[] : (\r\n await this.tipoAuditoriaService.obterAuditoresCoordenacaoTipoAuditoria(this.model.tipoAuditoriaId)\r\n ).dados;\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.maxHeight = '80vh';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = { equipe: this.model.opaEquipe, auditores: this.coordenadoresAuditoria, tipoAuditoria: this.tipoAuditorioSelecionado, auditoresTipoAuditoria };\r\n const modal = this.matDialog.open(\r\n ModalAlocarEquipeOpaComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.model.opaEquipe = data;\r\n if (this.model.opaEquipe.auditores.length > 0) {\r\n this.paaService\r\n .obterDispensasPeriodo(this.dateHelper.toString(this.model.dataInicioRealizacao), this.dateHelper.toString(this.model.dataFimRealizacao))\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model.opaEquipe.auditores.forEach(auditor => {\r\n auditor.indisponivelPeriodo = res.dados.filter(a => a.auditor.auditorId === auditor.auditorId).length > 0;\r\n });\r\n }\r\n })\r\n .finally(() => {\r\n this.atualizarAuditores();\r\n });\r\n }\r\n }\r\n });\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public excluirAuditor(indice: number) {\r\n Swal.fire({\r\n title: \"Excluir Registro\",\r\n text: \"Tem certeza que deseja excluir esse Registro?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then((res) => {\r\n if (res.value) {\r\n this.auditoresDataSource.data.splice(indice, 1);\r\n this.auditoresDataSource._updateChangeSubscription();\r\n this.auditoresSemDados = this.auditoresDataSource.filteredData.length === 0;\r\n }\r\n })\r\n\r\n }\r\n\r\n public enviarAprovacao() {\r\n\r\n this.opaService.enviarAprovacao(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.obterOpa();\r\n this.router.navigate(['/opa']);\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public aprovar() {\r\n this.opaService.aprovar(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.obterOpa();\r\n return;\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n\r\n public async gerarNovaVersao() {\r\n this.submit = true;\r\n\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido!');\r\n return;\r\n }\r\n\r\n if (!this.model.opaEquipe || this.model.opaEquipe.auditores.length === 0) {\r\n this.exibirMensagemAlerta('Informe a Equipe de Auditores');\r\n return;\r\n }\r\n\r\n this.atualizarModelForm(this.form.value);\r\n\r\n try {\r\n const res: IBaseModel = await this.opaService.gerarNovaVersao(this.model);;\r\n\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.router.navigate(['/opa']);\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n if (validacoes.trim().length > 0) {\r\n this.exibirMensagemAlerta(validacoes, true);\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n private atualizarModel() {\r\n if (!this.model.subtiposAuditoria) {\r\n this.model.subtiposAuditoria = [] as IOpaSubtipoAuditoriaModel[];\r\n }\r\n if (!this.model.opaEquipe) {\r\n this.model.opaEquipe = { auditores: [] as IOpaEquipeAuditorModel[] } as IOpaEquipeModel;\r\n }\r\n }\r\n\r\n private atualizarModelForm(values: any) {\r\n Object.assign(this.model, values);\r\n\r\n this.model.dataInicioPrevista = this.dateHelper.toDatePtBr(this.model.dataInicioPrevista);\r\n this.model.dataFimPrevista = this.dateHelper.toDatePtBr(this.model.dataFimPrevista);\r\n this.model.dataInicioRealizacao = this.dateHelper.toDatePtBr(this.model.dataInicioRealizacao);\r\n this.model.dataFimRealizacao = this.dateHelper.toDatePtBr(this.model.dataFimRealizacao);\r\n this.model.dataApresentacaoPlanejamento = this.dateHelper.toDatePtBr(this.model.dataApresentacaoPlanejamento);\r\n }\r\n\r\n private atualizarForm(novo: boolean) {\r\n this.form.patchValue({\r\n id: novo ? '' : this.model.id,\r\n unidadeGestoraNome: novo ? '' : this.model.unidadeGestora.nome,\r\n unidadeGestoraId: novo ? '' : this.model.unidadeGestora.id,\r\n numeroOpa: this.model.numero,\r\n origemAuditoria: this.model.origem.descricao,\r\n tipoAuditoriaId: novo ? '' : this.model.tipoAuditoriaId,\r\n dataElaboracao: this.dateHelper.toStringPtBr(this.model.dataElaboracao),\r\n dataInicioPrevista: this.dateHelper.toStringPtBr(this.model.dataInicioPrevista),\r\n dataFimPrevista: this.dateHelper.toStringPtBr(this.model.dataFimPrevista),\r\n dataInicioRealizacao: this.dateHelper.toStringPtBr(this.model.dataInicioRealizacao),\r\n dataFimRealizacao: this.dateHelper.toStringPtBr(this.model.dataFimRealizacao),\r\n dataApresentacaoPlanejamento: this.dateHelper.toStringPtBr(this.model.dataApresentacaoPlanejamento),\r\n objeto: novo ? '' : this.model.objeto,\r\n auditorCoordenacaoId: novo ? '' : this.model.auditorCoordenacaoId,\r\n notaRodape: novo ? '' : this.model.notaRodape,\r\n tipoEnfaseId: novo ? '' : this.model.tipoEnfaseId,\r\n diasUteisAuditoria: novo ? '' : this.model.diasUteisAuditoria\r\n });\r\n }\r\n\r\n private atualizarSubtipos() {\r\n this.subtipoDataSource = new MatTableDataSource(this.model.subtiposAuditoria);\r\n this.subtipoDataSource._updateChangeSubscription();\r\n this.subtipoSemDados = this.subtipoDataSource.filteredData.length === 0;\r\n }\r\n\r\n private atualizarAuditores() {\r\n this.auditoresDataSource = new MatTableDataSource(this.model.opaEquipe.auditores);\r\n this.auditoresDataSource._updateChangeSubscription();\r\n this.auditoresSemDados = this.auditoresDataSource.filteredData.length === 0;\r\n }\r\n\r\n private atualizarFormUnidadeGestora(unidadeGestora) {\r\n this.form.patchValue({\r\n unidadeGestoraNome: unidadeGestora.nome,\r\n unidadeGestoraId: unidadeGestora.id\r\n });\r\n }\r\n\r\n private atualizarFormCoordenadorTipoAuditoria(auditorId: number) {\r\n this.form.patchValue({\r\n auditorCoordenacaoId: auditorId\r\n });\r\n }\r\n\r\n private recuperarConfiguracaoModalHistorico(titulo: string): MatDialogRef {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = { titulo: titulo };\r\n\r\n return this.matDialog.open(\r\n ModalConfirmarInativacaoComponent,\r\n dialogConfig\r\n );\r\n }\r\n\r\n private atualizarDadosHistorico(historico: IOpaHistoricoModel, justificativa: string) {\r\n historico.opaId = this.id;\r\n historico.justificativa = justificativa;\r\n }\r\n\r\n private atualizarHistoricoOpa() {\r\n if (!this.model.historicoAlteracoes) {\r\n this.model.historicoAlteracoes = [] as IOpaHistoricoModel[];\r\n }\r\n\r\n if (this.historicoTipoAuditoria.opaId) {\r\n this.model.historicoAlteracoes.push(this.historicoTipoAuditoria)\r\n }\r\n\r\n if (this.historicoUnidadeGestora.opaId) {\r\n this.model.historicoAlteracoes.push(this.historicoUnidadeGestora)\r\n }\r\n }\r\n\r\n private atualizarTipoAuditoriaSelecionado(evt) {\r\n this.tipoAuditorioSelecionado.id = this.model.tipoAuditoriaId;\r\n this.tipoAuditorioSelecionado.nome = evt.target.options[evt.target.selectedIndex].text;\r\n }\r\n\r\n \r\n\r\n private atualizarHistoricoTipoAuditoria() {\r\n let historicos = this.model.historicoAlteracoes.filter(historico => historico.tipoAuditoriaId);\r\n if (historicos.length > 0) {\r\n let tooltip = 'Histórico de alteração\\n\\n';\r\n historicos.forEach(historico => {\r\n tooltip += `${historico.nomeUsuario} - ${this.dateHelper.toStringPtBr(historico.data)}, Tipo Auditoria: ${historico.tipoAuditoria.nome}, Justificativa: ${historico.justificativa}\\n\\n`;\r\n });\r\n this.model.historicoTipoAuditoria = tooltip;\r\n }\r\n }\r\n\r\n private atualizarHistoricoUnidadeGestora() {\r\n let historicos = this.model.historicoAlteracoes.filter(historico => historico.unidadeGestoraId);\r\n if (historicos.length > 0) {\r\n let tooltip = 'Histórico de alteração\\n\\n';\r\n historicos.forEach(historico => {\r\n tooltip += `${historico.nomeUsuario} - ${this.dateHelper.toStringPtBr(historico.data)}, Unidade Gestora: ${historico.unidadeGestora.sigla}, Justificativa: ${historico.justificativa}\\n\\n`;\r\n });\r\n this.model.historicoUnidadeGestora = tooltip;\r\n }\r\n }\r\n\r\n public mudarAba(aba: number) {\r\n this.aba = aba;\r\n }\r\n\r\n onDataInicioChange(novaData: Date): void {\r\n if (novaData) {\r\n if(this.form.get('qtdeDiasUteis')?.value == '' ){\r\n this.form.get('dataInicioRealizacao')?.setValue('');\r\n this.validaCamposNecessarios();\r\n return;\r\n }\r\n else{\r\n this.form.get('dataInicioRealizacao')?.setValue(novaData, { emitEvent: false });\r\n this.calcularDataFim(new Date (novaData));\r\n }\r\n }\r\n }\r\n\r\n validaCamposNecessarios(){\r\n const qtdeDias = this.form.get('qtdeDiasUteis')?.value;\r\n if(qtdeDias == '' || qtdeDias < 0){\r\n this.exibirMensagemAlerta('Para calcular a data de início e fim, selecione primeiro o campo Tipo de Auditoria.');\r\n }\r\n }\r\n \r\n calcularDataFim(dataInicioRealizacao?: Date): void {\r\n const qtdeDias = this.form.get('qtdeDiasUteis')?.value;\r\n\r\n if(qtdeDias){\r\n let diasUteisAdicionados = 0;\r\n let dataFimRealizacao = dataInicioRealizacao;\r\n while (diasUteisAdicionados< qtdeDias){\r\n dataFimRealizacao.setDate(dataFimRealizacao.getDate() + 1);\r\n\r\n if (dataFimRealizacao.getDay() !== 6 && dataFimRealizacao.getDay() !== 0)\r\n diasUteisAdicionados++;\r\n\r\n }\r\n const dataFormatada = this.formatarData(dataFimRealizacao);\r\n \r\n this.form.get('dataFimRealizacao')?.setValue(dataFormatada, { emitEvent: false });\r\n }\r\n \r\n }\r\n private formatarData(data: Date): string {\r\n const dia = String(data.getDate()).padStart(2, '0'); \r\n const mes = String(data.getMonth() + 1).padStart(2, '0'); \r\n const ano = data.getFullYear();\r\n \r\n return `${dia}/${mes}/${ano}`;\r\n }\r\n \r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n OPA - Ordem de Planejamento de Auditoria\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
Campo\r\n obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
Campo\r\n obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
Campo\r\n obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
Campo\r\n obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Subtipo(s) \r\n {{element.subtipoAuditoria.nome}} \r\n
\r\n \r\n
\r\n
\r\n
Nenhum Subtipo\r\n selecionado
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Equipe de Auditores \r\n \r\n {{element.nomeAuditor}} \r\n \r\n {{element.nomeAuditor}} \r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n
Nenhum Auditor\r\n selecionado
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n"," import { AfterViewInit, Component, OnInit, ViewChild } from '@angular/core';\r\n import { MatTableDataSource } from '@angular/material/table';\r\n import { MatPaginator } from '@angular/material/paginator';\r\n import { MatSort } from '@angular/material/sort';\r\n import { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\n import { AuthService } from 'src/app/services/auth.service';\r\n import { OpaService } from 'src/app/services/opa.service';\r\n import { Router } from '@angular/router';\r\n import { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\n import { ModalConfirmarInativacaoComponent } from 'src/app/shared/components/modal-confirmar-inativacao/modal-confirmar-inativacao.component';\r\n import { IFiltroOpa } from 'src/app/models/filtros/filtro-opa.model';\r\n import { IEnumModel } from 'src/app/models/enum.model';\r\n import { TipoAuditoriaService } from 'src/app/services/tipo-auditoria.service';\r\n import { ITipoAuditoriaModel } from 'src/app/models/tipo-auditoria.model';\r\n import { SubtipoAuditoriaService } from 'src/app/services/subtipo-auditoria.service';\r\n import { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\n import { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\n import { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\n import { CoordenacaoService } from 'src/app/services/coordenacao.service';\r\n import { IAuditorCoordenacaoModel } from 'src/app/models/auditor-coordenacao.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\n\r\n const sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'numeroOpa':\r\n return item.numero;\r\n case 'unidadeGestora':\r\n return item.unidadeGestora.sigla;\r\n case 'origem':\r\n return item.origem.descricao;\r\n case 'dataInicio':\r\n return item.dataInicioRealizacao || item.dataInicioPrevista;\r\n case 'dataFim':\r\n return item.dataFimRealizacao || item.dataFimPrevista;\r\n case 'coordenacao':\r\n return item.tipoAuditoria.coordenacao.sigla;\r\n case 'ativo':\r\n return item.ativo;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n @Component({\r\n selector: 'app-opa-list',\r\n templateUrl: './opa-list.component.html',\r\n styleUrls: ['./opa-list.component.scss']\r\n })\r\n export class OpaListComponent extends BaseListComponent implements OnInit, AfterViewInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: any;\r\n public pageEvent: any;\r\n public semDados = true;\r\n public totalItens: number;\r\n\r\n public displayedColumns: string[] = [\r\n 'selecao',\r\n 'numero',\r\n 'unidadeGestora',\r\n 'origem',\r\n 'dataInicio',\r\n 'dataFim',\r\n 'coordenacao',\r\n 'status',\r\n 'ativo'\r\n ];\r\n\r\n private filtro: IFiltroOpa = {} as IFiltroOpa;\r\n public filtroModel: IFiltroOpa = {} as IFiltroOpa;\r\n public situacaoSelecionada: number;\r\n\r\n public origens = [] as IEnumModel[];\r\n public tiposAuditoria = [] as ITipoAuditoriaModel[];\r\n public subtiposAuditoria = [] as ISubtipoAuditoriaModel[];\r\n public statusOpa = [] as IEnumModel[];\r\n public unidadesGestoras = [] as IUnidadeGestoraModel[];\r\n public situacoes = [{codigo: 1, descricao: 'Todos'}, {codigo: 2, descricao: 'Ativos'}, {codigo: 3, descricao: 'Inativos'}] as IEnumModel[];\r\n public coordenadores = [] as IAuditorCoordenacaoModel[];\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(private opaService: OpaService,\r\n private tipoAuditoriaService: TipoAuditoriaService,\r\n private subtipoAuditoriaService: SubtipoAuditoriaService,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n private coordenacaoService: CoordenacaoService,\r\n public authService: AuthService,\r\n private router: Router,\r\n public matDialog: MatDialog) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor\r\n }\r\n \r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOPA, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOPA, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOPA, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOPA, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOPA, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOPA, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOPA, EnumAcaoRecurso.Imprimir);\r\n \r\n }\r\n\r\n ngAfterViewInit() {\r\n this.configFiltro();\r\n this.obterOrigens();\r\n this.obterStatus();\r\n this.obterTiposAuditoria();\r\n this.obterSubtiposAuditoria();\r\n this.obterUnidadesGestoras();\r\n this.obterCoordenadores();\r\n this.buscar();\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor\r\n }\r\n\r\n private obterOrigens() {\r\n\r\n this.opaService\r\n .obterOrigens()\r\n .then((res) => {\r\n this.origens = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n private obterStatus() {\r\n\r\n this.opaService\r\n .obterStatus()\r\n .then((res) => {\r\n this.statusOpa = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n private obterTiposAuditoria() {\r\n\r\n this.tipoAuditoriaService\r\n .obterAtivos()\r\n .then((res) => {\r\n this.tiposAuditoria = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n private obterSubtiposAuditoria() {\r\n\r\n this.subtipoAuditoriaService\r\n .obterAtivos()\r\n .then((res) => {\r\n this.subtiposAuditoria = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n private obterUnidadesGestoras() {\r\n\r\n this.unidadeGestoraService\r\n .obterAtivos()\r\n .then((res) => {\r\n this.unidadesGestoras = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public obterCoordenadores(){\r\n this.coordenacaoService\r\n .obterCoordenadoresAtivos()\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.coordenadores = res.dados;\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.opaService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor ;\r\n this.totalItens = res.dados.totalItens\r\n\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n buscarComFiltro() {\r\n this.filtro.dataInicial = this.filtroModel.dataInicial;\r\n this.filtro.dataFinal = this.filtroModel.dataFinal;\r\n this.filtro.ativo = this.situacaoSelecionada > 1 ? this.situacaoSelecionada === 2 : null;\r\n this.filtro.auditor = this.filtroModel.auditor;\r\n this.filtro.coordenador = this.filtroModel.coordenador;\r\n this.filtro.numeroObjeto = this.filtroModel.numeroObjeto;\r\n this.filtro.origem = this.filtroModel.origem;\r\n this.filtro.status = this.filtroModel.status;\r\n this.filtro.subtipoAuditoria = this.filtroModel.subtipoAuditoria;\r\n this.filtro.tipoAuditoria = this.filtroModel.tipoAuditoria;\r\n this.filtro.unidadeGestora = this.filtroModel.unidadeGestora;\r\n this.configFiltro();\r\n this.buscar();\r\n }\r\n\r\n configFiltro()\r\n {\r\n this.filtro.pagina = this.paginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.paginator.pageSize;\r\n this.filtro.colunaOrder = this.sort.active;\r\n this.filtro.direcao = this.sort.direction;\r\n }\r\n\r\n pageChanged(e)\r\n {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n\r\n this.buscar();\r\n }\r\n\r\n public selecionar(item: any) { \r\n item.selecionado = !item.selecionado;\r\n if (item.selecionado) {\r\n this.selectedModel = item;\r\n } else {\r\n\r\n if (this.selectedModel === item) {\r\n this.selectedModel = null;\r\n }\r\n }\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/opa/novo']);\r\n }\r\n\r\n public editar(id: number){\r\n this.router.navigate([`/opa/${id}`]);\r\n }\r\n\r\n public novaVersao(id: number){\r\n this.router.navigate([`/opa/${id}/nova-versao`]);\r\n }\r\n\r\n public visualizar(id: number){\r\n this.router.navigate([`/opa/${id}/visualizar`]);\r\n }\r\n\r\n public reativar(id: number) {\r\n this.opaService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('OPA reativada com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = { titulo: 'Tem certeza que deseja inativar essa OPA?' };\r\n const modal = this.matDialog.open(\r\n ModalConfirmarInativacaoComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.opaService\r\n .inativar(id, data)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('OPA inativada com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n });\r\n }\r\n\r\n public imprimir(id: number){\r\n this.router.navigate([`/opa/${id}/relatorio`]);\r\n }\r\n\r\n public botaoImpressaoColetivaHidden(): boolean {\r\n return !this.permissoes.imprimir || this.modelsSelected().length <= 1;\r\n }\r\n\r\n public botaoGerarNovaVersaoHidden(): boolean {\r\n return this.modelsSelected().length > 1;\r\n }\r\n\r\n public modelsSelected(): Array{\r\n let retorno = this.dataSource.data.filter(x => x.selecionado === true);\r\n return retorno;\r\n }\r\n public relatorioConsolidado() {\r\n const ids = this.modelsSelected().map(opa => opa.id).toString();\r\n this.router.navigate([`/opa/${ids}/relatorio-consolidado`]);\r\n }\r\n \r\n }\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. OPA - Ordem de Planejamento de Auditoria
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n OPA - Ordem de Planejamento de Auditoria\r\n

\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{origem.descricao}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{tipo.nome}}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n {{subtipo.nome}}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{unidade.sigla}}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{auditor.nomeAuditor}}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{auditor.nomeAuditor}}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n {{status.descricao}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{situacao.descricao}}\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Nº da OPA {{element?.numero}} UG a ser auditado {{element?.unidadeGestora?.sigla}} Origem {{element?.origem?.descricao}} \tData Início {{ (element?.dataInicioRealizacao ? element?.dataInicioRealizacao : element?.dataInicioPrevista) | date:'dd/MM/yyyy' }} Data Fim {{ (element?.dataFimRealizacao ? element?.dataFimRealizacao : element?.dataFimPrevista) | date:'dd/MM/yyyy' }} Coordenação {{element?.tipoAuditoria?.coordenacao?.sigla}} Status\r\n {{element?.situacao?.descricao}}\r\n {{element?.situacao?.descricao}}\r\n {{element?.situacao?.descricao}}\r\n Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Sem dados a exibir
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { MatTableDataSource } from '@angular/material/table';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Component, OnInit, Inject, ViewChild, AfterViewInit } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort, MatSortable } from '@angular/material/sort';\r\nimport { DateHelper } from 'src/app/core/helpers/date.helper';\r\nimport { IOpaEquipeModel } from 'src/app/models/opa-equipe.model';\r\nimport { IAuditorCoordenacaoModel } from 'src/app/models/auditor-coordenacao.model';\r\nimport { ITipoAuditoriaModel } from 'src/app/models/tipo-auditoria.model';\r\nimport { IOpaEquipeAuditorModel } from 'src/app/models/opa-equipe-auditor.model';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-alocar-equipe-opa',\r\n templateUrl: './modal-alocar-equipe-opa.component.html',\r\n styleUrls: ['./modal-alocar-equipe-opa.component.scss'],\r\n})\r\nexport class ModalAlocarEquipeOpaComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n @ViewChild('tabela1') public tabela1: MatSort;\r\n @ViewChild('tabela2') public tabela2: MatSort;\r\n\r\n public model = {} as IOpaEquipeModel;\r\n public auditores = [] as IAuditorCoordenacaoModel[];\r\n public tipoAuditoria = {} as ITipoAuditoriaModel;\r\n public auditoresTipoAuditoria = [] as IAuditorCoordenacaoModel[];\r\n public coordenacaoNome: string;\r\n public auditoresTipoAuditoriaDataSource = new MatTableDataSource([]);\r\n public auditoresTipoAuditoriaSemDados = true;\r\n public submit = false;\r\n public novoAuditor: string;\r\n\r\n public auditoresOutrasCoordenacoesDataSource = new MatTableDataSource([]);\r\n public auditoresOutrasCoordenacoesSemDados = true;\r\n\r\n public auditoresConflito: IAuditorCoordenacaoModel[];\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n private dateHelper: DateHelper,\r\n @Inject(MAT_DIALOG_DATA) data\r\n ) {\r\n this.model = data.equipe;\r\n this.auditores = data.auditores;\r\n this.tipoAuditoria = data.tipoAuditoria;\r\n this.auditoresTipoAuditoria = data.auditoresTipoAuditoria;\r\n\r\n this.coordenacaoNome = this.tipoAuditoria?.coordenacao?.nome;\r\n\r\n // remover os auditores da coordenação do tipo da auditoria da listagem completa de auditores \r\n this.auditoresTipoAuditoria.forEach(auditorTipoAuditoria => {\r\n this.auditores = this.auditores.filter(auditor => {\r\n return auditor.auditorId !== auditorTipoAuditoria.auditorId;\r\n });\r\n });\r\n\r\n this.marcarComoSelecionado(this.auditoresTipoAuditoria, this.model.auditores);\r\n this.marcarComoSelecionado(this.auditores, this.model.auditores);\r\n \r\n this.auditoresTipoAuditoriaDataSource = new MatTableDataSource(this.auditoresTipoAuditoria);\r\n this.auditoresTipoAuditoriaSemDados = this.auditoresTipoAuditoriaDataSource.data.length === 0;\r\n this.auditoresTipoAuditoriaDataSource._updateChangeSubscription();\r\n\r\n \r\n this.auditoresOutrasCoordenacoesDataSource = new MatTableDataSource(this.auditores);\r\n this.auditoresOutrasCoordenacoesSemDados = this.auditoresOutrasCoordenacoesDataSource.data.length === 0;\r\n this.auditoresOutrasCoordenacoesDataSource._updateChangeSubscription();\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n ngAfterViewInit(): void {\r\n this.tabela1.sort({ id: 'nome', start: 'asc' } as MatSortable);\r\n this.auditoresTipoAuditoriaDataSource.sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'nome':\r\n return item?.nomeAuditor;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n this.auditoresTipoAuditoriaDataSource.sort = this.tabela1;\r\n\r\n this.tabela2.sort({ id: 'nome', start: 'asc' } as MatSortable);\r\n this.auditoresOutrasCoordenacoesDataSource.sortingDataAccessor = (\r\n item,\r\n property\r\n ) => {\r\n switch (property) {\r\n case 'nome':\r\n return item?.nomeAuditor;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n this.auditoresOutrasCoordenacoesDataSource.sort = this.tabela2;\r\n }\r\n\r\n public async concluir() {\r\n this.submit = true;\r\n\r\n let auditoresSelecionados = this.auditoresTipoAuditoriaDataSource.data.filter(d => d.selecionado);\r\n auditoresSelecionados = auditoresSelecionados.concat(this.auditoresOutrasCoordenacoesDataSource.data.filter(d => d.selecionado));\r\n\r\n // verifica se os auditores anteriores continuam selecionados\r\n this.model.auditores = this.model.auditores.filter(auditor => {\r\n return auditoresSelecionados.filter(as => as.auditorId === auditor.auditorId).length > 0;\r\n });\r\n\r\n // remove os auditores que foram removidos da equipe\r\n this.model.auditores = this.model.auditores.filter(auditor => {\r\n return auditoresSelecionados.filter(a => a.auditorId === auditor.auditorId).length > 0;\r\n });\r\n\r\n if (auditoresSelecionados.length === 0) {\r\n this.exibirMensagemAlerta('Informe algum Auditor');\r\n return;\r\n }\r\n\r\n auditoresSelecionados.forEach(auditor => {\r\n // verifica se o auditor já estava na equipe\r\n if (this.model.auditores.filter(a => a.auditorId === auditor.auditorId).length === 0) {\r\n const novoAuditor = { auditorId: auditor.auditorId, nomeAuditor: auditor.nomeAuditor, opaEquipeId: this.model.opaId } as IOpaEquipeAuditorModel;\r\n this.model.auditores.push(novoAuditor);\r\n }\r\n });\r\n \r\n this.dialogRef.close(this.model);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n private marcarComoSelecionado(auditores: IAuditorCoordenacaoModel[], auditoresSelecionados: IOpaEquipeAuditorModel[]){\r\n auditores.forEach(auditor => {\r\n auditor.selecionado = auditoresSelecionados.filter(as => as.auditorId === auditor.auditorId).length > 0;\r\n });\r\n }\r\n\r\n private exibirMensagemAlerta(mensagem: string) {\r\n this.exibirMensagemAlerta(mensagem);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Alocar Equipe

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n Auditores da {{coordenacaoNome}} \r\n {{element.nomeAuditor}} \r\n \r\n \r\n
\r\n
Nenhum\r\n Auditor para o Tipo de Auditoria
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n Auditores de outras Coordenações \r\n {{element.nomeAuditor}}
\r\n
Nenhum Auditor de outras Coordenações
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IOpaModel } from 'src/app/models/opa.model';\r\nimport { AprovacaoService } from 'src/app/services/aprovacao.service';\r\nimport { OpaService } from 'src/app/services/opa.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\n\r\n@Component({\r\n selector: 'app-opa-relatorio',\r\n templateUrl: './opa-relatorio.component.html',\r\n styleUrls: ['./opa-relatorio.component.scss'],\r\n})\r\n\r\nexport class OpaRelatorioComponent extends BaseListComponent implements OnInit {\r\n opaId: number;\r\n homologado = false;\r\n opas: IOpaModel[] = [];\r\n idParam: number;\r\n espelho = false;\r\n consolidado = false;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private opaService: OpaService,\r\n private aprovacaoService: AprovacaoService,\r\n ) {\r\n super();\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n const id = this.route.snapshot.paramMap.get('id');\r\n const path = this.route.snapshot.url.pop().toString();\r\n\r\n if (id) {\r\n this.idParam = parseInt(id, 10);\r\n }\r\n \r\n if (path === 'relatorio-consolidado') {\r\n this.consolidado = true;\r\n }\r\n\r\n if (path === 'espelho-relatorio') {\r\n this.espelho = true;\r\n }\r\n\r\n await this.obterDados();\r\n }\r\n\r\n public async obterDados() {\r\n try {\r\n let res: IBaseModel;\r\n if(this.consolidado){\r\n const ids = this.route.snapshot.paramMap.get('id') || '';\r\n res = await this.opaService.imprimirOpaConsolidado(ids);\r\n }\r\n\r\n else if (this.espelho) {\r\n const avaliacao = await this.aprovacaoService.imprimir(this.idParam);\r\n res = {\r\n sucesso: avaliacao.sucesso,\r\n dados: JSON.parse(avaliacao.dados),\r\n mensagem: avaliacao.mensagem,\r\n resultadoValidacao: avaliacao.resultadoValidacao\r\n } as IBaseModel;\r\n }\r\n else {\r\n const avaliacao = await this.opaService.imprimir(this.idParam);\r\n res = {\r\n sucesso: avaliacao.sucesso,\r\n dados: Array.isArray(avaliacao.dados) ? avaliacao.dados : [avaliacao.dados], \r\n mensagem: avaliacao.mensagem,\r\n situacao: avaliacao.situacao\r\n } as IBaseModel;\r\n }\r\n this.opas = res.dados;\r\n this.homologado = this.opas.some(item => item.situacao?.codigo === 4 || item.situacao?.codigo === 5);\r\n } catch (err) {\r\n console.log({err})\r\n this.exibirMensagemErro(err?.mensagem?.descricao);\r\n this.router.navigate(['/opa']);\r\n }\r\n }\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/opa']);\r\n }\r\n}\r\n","
\r\n
0 ? 'always' : 'avoid'\r\n \">\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
\r\n

Ordem de Planejamento de Auditoria nº {{ opa?.sequencial | number: '3.' }}/{{ opa?.ano }}

\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n Inicio:
{{ (opa?.dataInicioRealizacao ? opa?.dataInicioRealizacao :\r\n opa?.dataInicioPrevista) | date:'dd/MM/yyyy' }}\r\n
\r\n
\r\n Fim:
{{ (opa?.dataFimRealizacao ? opa?.dataFimRealizacao : opa?.dataFimPrevista) |\r\n date:'dd/MM/yyyy' }}\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n Periodo de Planejamento\r\n Data para apresentação do planejamentoTotal de dias úteis para planejamento
\r\n
\r\n {{ opa?.dataApresentacaoPlanejamento | date:'dd/MM/yyyy' }}\r\n {{opa?.tipoAuditoria.quantidadeDias }} dia(s)
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n

Equipe de Planejamento

\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
NomeCargoMatrícula
{{auditor.nomeAuditor}}\r\n Coordenador Titular\r\n Coordenador Substituindo\r\n Coordenador Respondendo\r\n Auditor do Estado\r\n {{opa?.numeroFuncional}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Coordenador da Equipe

\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n Coordenador Titular\r\n Coordenador Substituindo\r\n Coordenador Respondendo\r\n Auditor do Estado\r\n
\r\n
\r\n\r\n
\r\n
\r\n Coordenador da {{opa?.auditorCoordenacao?.coordenacao?.sigla}} - {{\r\n opa?.auditorCoordenacao?.coordenacao?.nome }}\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n

Aprovações

\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n {{item?.cargo}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{opa?.notaRodape}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
","import { AfterViewInit, Component, Input, OnInit } from '@angular/core';\r\nimport { IAuditorCoordenacaoModel } from 'src/app/models/auditor-coordenacao.model';\r\nimport { ICoordenacaoModel } from 'src/app/models/coordenacao.model';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { IOsaFiltroModel } from 'src/app/models/osa-filtro-model';\r\nimport { IOsaModel } from 'src/app/models/osa-model';\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { ITipoAuditoriaModel } from 'src/app/models/tipo-auditoria.model';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CoordenacaoService } from 'src/app/services/coordenacao.service';\r\nimport { OsaService } from 'src/app/services/osa.service';\r\nimport { SubtipoAuditoriaService } from 'src/app/services/subtipo-auditoria.service';\r\nimport { TipoAuditoriaService } from 'src/app/services/tipo-auditoria.service';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-filtro-component',\r\n templateUrl: './filtro-component.component.html',\r\n styleUrls: ['./filtro-component.component.scss']\r\n})\r\nexport class FiltroComponent extends BaseListComponent implements OnInit, AfterViewInit {\r\n\r\n @Input() showButtonFilter: Boolean = true;\r\n\r\n public osaModel: IOsaModel = {} as IOsaModel;\r\n private filtro: IOsaFiltroModel = {} as IOsaFiltroModel;\r\n public filtroModel: IOsaFiltroModel = {} as IOsaFiltroModel;\r\n public situacaoSelecionada: number;\r\n public coordenadores = [] as IAuditorCoordenacaoModel[];\r\n public unidadesGestoras = [] as IUnidadeGestoraModel[];\r\n public coordenacoes = [] as ICoordenacaoModel[];\r\n public subtiposAuditoria = [] as ISubtipoAuditoriaModel[];\r\n public tiposAuditoria = [] as ITipoAuditoriaModel[];\r\n public situacoes = [{codigo: 1, descricao: 'Todos'}, {codigo: 2, descricao: 'Ativos'}, {codigo: 3, descricao: 'Inativos'}] as IEnumModel[];\r\n public status = [{codigo: 1, descricao: 'Em Elaboração'}, {codigo: 2, descricao: 'Em Aprovação'}, {codigo: 3, descricao: 'Em Homologacao'}, {codigo: 4, descricao: 'Homologado'}, {codigo: 5, descricao: 'Elaborar'}, {codigo: 6, descricao: 'Em Execução'}]\r\n public origem = [{codigo: 1, descricao: 'Planejada'}, {codigo: 2, descricao: 'Especial'}]\r\n\r\n constructor(\r\n public authService: AuthService,\r\n private osaService: OsaService,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n private coordenacaoService: CoordenacaoService,\r\n private subtipoAuditoriaService: SubtipoAuditoriaService,\r\n private tipoAuditoriaService: TipoAuditoriaService,\r\n ) {\r\n super()\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.obterCoordenadores();\r\n this.obterUnidadesGestoras();\r\n this.obterCoordenacoes();\r\n this.buscar();\r\n this.obterSubtiposAuditoria();\r\n this.obterTiposAuditoria();\r\n }\r\n\r\n public buscar() {\r\n this.osaService.obter()\r\n }\r\n\r\n public obterCoordenadores(){\r\n this.coordenacaoService\r\n .obterCoordenadoresAtivos()\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.coordenadores = res.dados;\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n private obterSubtiposAuditoria() {\r\n\r\n this.subtipoAuditoriaService\r\n .obterAtivos()\r\n .then((res) => {\r\n this.subtiposAuditoria = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n private obterTiposAuditoria() {\r\n\r\n this.tipoAuditoriaService\r\n .obterAtivos()\r\n .then((res) => {\r\n this.tiposAuditoria = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public obterCoordenacoes(){\r\n this.coordenacaoService\r\n .obter(\"\", undefined, false)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.coordenacoes = res.dados;\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n private obterUnidadesGestoras() {\r\n\r\n this.unidadeGestoraService\r\n .obterAtivos()\r\n .then((res) => {\r\n this.unidadesGestoras = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n buscarComFiltro() {\r\n this.filtro.numeroOsa = this.filtroModel.numeroOsa;\r\n this.filtro.numeroOpa = this.filtroModel.numeroOpa;\r\n this.filtro.objeto = this.filtroModel.objeto;\r\n this.filtro.dataInicioRealizacao = this.filtroModel.dataInicioRealizacao;\r\n this.filtro.dataFimRealizacao = this.filtroModel.dataFimRealizacao;\r\n this.filtro.dataInicioPrevisto = this.filtroModel.dataInicioPrevisto;\r\n this.filtro.dataFimPrevisto = this.filtroModel.dataFimPrevisto;\r\n this.filtro.origemAuditoria = this.filtroModel.origemAuditoria;\r\n this.filtro.subtipoAuditoriaId = this.filtroModel.subtipoAuditoriaId;\r\n this.filtro.unidadeGestoraId = this.filtroModel.unidadeGestoraId;\r\n this.filtro.coordenador = this.filtroModel.coordenador;\r\n this.filtro.tipoAuditoriaId = this.filtroModel.tipoAuditoriaId;\r\n this.filtro.status = this.filtroModel.status;\r\n this.filtro.ativo = this.situacaoSelecionada > 1 ? this.situacaoSelecionada === 2 : null;\r\n this.filtro.itensPorPagina = 50\r\n\r\n this.osaService.obter(this.filtro).then(() => {\r\n\r\n }).catch(error => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: 'Filtro não aplicado, ocorreu um erro!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n })\r\n })\r\n }\r\n\r\n}\r\n","

\r\n\t\r\n\t\t Filtrar\r\n\t\r\n

\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tSubtipo de Auditoria\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nome }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tUnidade Gestora a ser Auditada\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.sigla }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tTipo de Auditoria\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nome }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t Pesquisar\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { convertDate } from './../../../../shared/util/formatDate';\r\nimport { IAuditorModel, ISalvarAlocarEquipeModel } from './../../../../models/alocar-equipe-component';\r\nimport { IAlocarEquipeModel } from 'src/app/models/alocar-equipe-component';\r\nimport { AlocarEquipeComponent } from './../../../../shared/components/alocar-equipe/alocar-equipe.component';\r\nimport { AfterViewInit, Component, Input, OnInit, ViewChild } from \"@angular/core\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogConfig,\r\n} from \"@angular/material/dialog\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { IOsaModel } from \"src/app/models/osa-model\";\r\nimport { OsaService } from \"src/app/services/osa.service\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { SharedService } from \"src/app/services/shared.service\";\r\nimport { CoordenacaoService } from \"src/app/services/coordenacao.service\";\r\nimport { IAuditorCoordenacaoModel } from \"src/app/models/auditor-coordenacao.model\";\r\nimport { SubtipoAuditoriaService } from \"src/app/services/subtipo-auditoria.service\";\r\nimport { defaultDataAcessor } from \"src/app/core/helpers/mat-sort-data-accessor\";\r\nimport { ISubtipoAuditoriaModel } from \"src/app/models/subtipo-auditoria.model\";\r\nimport { IPaaCoordenacaoAuditorModel } from \"src/app/models/paa-coordenacao-auditor.model\";\r\nimport { IPlanejamentoSubtipoAuditoriaModel } from 'src/app/models/planejamento-subtipo-auditoria.model';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n\tselector: \"app-aba-informacoes-basicas\",\r\n\ttemplateUrl: \"./aba-informacoes-basicas.component.html\",\r\n\tstyleUrls: [\"./aba-informacoes-basicas.component.scss\"],\r\n})\r\nexport class AbaInformacoesBasicasComponent extends BaseFormComponent\r\n\timplements OnInit, AfterViewInit {\r\n\tclickEventSubscription: Subscription;\r\n\tpublic subTipoModel: ISubtipoAuditoriaModel[] = [] as ISubtipoAuditoriaModel[];\r\n\tpublic paaEquipeModel: IPaaCoordenacaoAuditorModel[] = [] as IPaaCoordenacaoAuditorModel[];\r\n\tpublic displayedColumns: string[] = [\"auditor\", \"acoes\"];\r\n\tpublic displayedColumnsSubtipo: string[] = ['nome'];\r\n\tpublic subtipoDataSource = new MatTableDataSource([]);\r\n\tpublic equipeDataSource = new MatTableDataSource([]);\r\n\tpublic model: IOsaModel = {} as IOsaModel;\r\n\tpublic coordenadoresAuditoria = [] as IAuditorCoordenacaoModel[];\r\n\tpublic semDados = true;\r\n\tpublic id: number;\r\n\tpublic subtipoNoData = true;\r\n\tpublic semDadosSubTipo = true;\r\n\tpublic subTipoSelecionado: number;\r\n public submitted: boolean = false\r\n\r\n\tpublic alocarEquipeModel: IAlocarEquipeModel = {} as IAlocarEquipeModel;\r\n\r\n\t@Input() public visualizar;\r\n\r\n public form = new FormGroup({\r\n\tdataInicioRealizacao: new FormControl(\"\", Validators.required),\r\n\tdataFimRealizacao: new FormControl(\"\", Validators.required),\r\n dataInicioPeriodoAuditado: new FormControl(\"\", Validators.required),\r\n dataFimPeriodoAuditado: new FormControl(\"\", Validators.required),\r\n notaRodape: new FormControl(\"\"),\r\n auditor: new FormControl(\"\", Validators.required),\r\n\t});\r\n\r\n\r\n\tconstructor(\r\n\t\tpublic route: ActivatedRoute,\r\n\t\tpublic toastr: ToastrService,\r\n\t\tpublic router: Router,\r\n\t\tpublic localeService: BsLocaleService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate osaService: OsaService,\r\n\t\tprivate sharedService: SharedService,\r\n\t\tprivate coordenacaoService: CoordenacaoService,\r\n\t\tprivate subtipoService: SubtipoAuditoriaService\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\r\n\t\tthis.clickEventSubscription = this.sharedService\r\n\t\t\t.getEvent()\r\n\t\t\t.subscribe(() => {\r\n\t\t\t\tthis.onSalvar();\r\n\t\t\t});\r\n\t}\r\n\r\n @ViewChild(\"TableOnePaginator\", { static: true })\r\n\ttableOnePaginator: MatPaginator;\r\n\t@ViewChild(\"tabela1\", { static: true }) tabela1: MatSort;\r\n\r\n\t@ViewChild(\"TableTwoPaginator\", { static: true })\r\n\ttableTwoPaginator: MatPaginator;\r\n\t@ViewChild(\"tabela2\", { static: true }) tabela2: MatSort;\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.buscar();\r\n\t}\r\n\r\n\r\n ngAfterViewInit(): void {\r\n this.subtipoDataSource.paginator = this.tableOnePaginator;\r\n\t\tthis.subtipoDataSource.sort = this.tabela1;\r\n this.subtipoDataSource.sortingDataAccessor = this.sortingDataAccessor\r\n this.equipeDataSource.paginator = this.tableTwoPaginator;\r\n this.equipeDataSource.sort = this.tabela2\r\n this.equipeDataSource.sortingDataAccessor = this.sortingDataAccessor\r\n }\r\n\r\n public buscar() {\r\n\r\n\t\tthis.osaService\r\n\t\t\t.obterPorId(this.id)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.model = res.dados;\r\n if(res.dados.dataInicioRealizacao) this.form.get('dataInicioRealizacao').setValue(convertDate(new Date(res.dados.dataInicioRealizacao)));\r\n if(res.dados.dataFimRealizacao) this.form.get('dataFimRealizacao').setValue(convertDate(new Date(res.dados.dataFimRealizacao)));\r\n if(res.dados.dataInicioPeriodoAuditado) this.form.get('dataInicioPeriodoAuditado').setValue(convertDate(new Date(res.dados.dataInicioPeriodoAuditado)));\r\n if(res.dados.dataFimPeriodoAuditado) this.form.get('dataFimPeriodoAuditado').setValue(convertDate(new Date(res.dados.dataFimPeriodoAuditado)));\r\n this.form.get('notaRodape').setValue(res.dados.notaRodape)\r\n this.form.get('auditor').setValue(res.dados.nomeAuditor)\r\n\r\n this.alocarEquipeModel.unidadeGestora = this.model.planejamento?.opa?.unidadeGestora;\r\n this.alocarEquipeModel.tipoAuditoria = this.model?.planejamento?.opa?.tipoAuditoria;\r\n\r\n this.subtipoDataSource.data = this.model.planejamento.planejamentoSubTipoAuditoria;\r\n this.subtipoDataSource.paginator = this.tableOnePaginator;\r\n this.subtipoDataSource.sort = this.tabela1;\r\n this.subtipoDataSource.sortingDataAccessor = this.sortingSubtiposDataAccessor;\r\n\t\t\t\t}\r\n\t\t\t}).then(() => this.obterAlocarEquipe())\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err?.mensagem?.descricao);\r\n\t\t\t\tthis.router.navigate([\"/osa\"]);\r\n\t\t\t})\r\n\t}\r\n\r\n public onSalvar() {\r\n this.submitted = true\r\n if(this.form.invalid){\r\n this.exibirMensagemAlerta('Preencha todos os campos');\r\n return\r\n }\r\n const dados = {\r\n dataInicioRealizacao: new Date(this.form.get('dataInicioRealizacao').value),\r\n dataFimRealizacao: new Date(this.form.get('dataFimRealizacao').value),\r\n dataInicioPeriodoAuditado: new Date(this.form.get('dataInicioPeriodoAuditado').value),\r\n dataFimPeriodoAuditado: new Date(this.form.get('dataFimPeriodoAuditado').value),\r\n auditorId: this.model?.auditorId,\r\n notaRodape: this.form.get('notaRodape').value\r\n } as any\r\n\t\tthis.osaService\r\n\t\t\t.salvarOsa(this.id, dados)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n this.buscar()\r\n\t\t\t\t\tthis.exibirMensagemSucesso(res.mensagem.descricao);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t})\r\n\t}\r\n\r\n\r\n\tpublic obterCoordenadoresAuditoria(): Promise {\r\n\t\treturn new Promise((resolve) => {\r\n\t\t\tthis.coordenacaoService\r\n\t\t\t\t.obterCoordenadoresAtivos()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\tresolve(res.dados);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch((err) => {\r\n\t\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tpublic teste = [] as any[];\r\n public obterAlocarEquipe() {\r\n this.osaService.obterAlocarEquipeOsaId(this.id)\r\n .then(res => {\r\n\r\n\t\t\t\t/*this.obterCoordenadoresAuditoria().then(a => {\r\n\t\t\t\t this.teste = (this.model.planejamento.planejamentoEquipe as unknown as any[]).map(b => {\r\n\t\t\t\t\t var result = a.find(c => c.auditorId === b.auditorId);\r\n\t\t\t\t\t if(Object.keys(result ?? {})?.length > 0) {\r\n\t\t\t\t\t\t return result;\r\n\t\t\t\t\t }\r\n\t\t\t\t })\r\n\t\t\t\t}).then(() => {*/\r\n\r\n\t\t\t\t//\tres.dados = [...res.dados, ...this.teste]\r\n\t\t\t\t\tlet auditoresSelecionados = res.dados.map(a => {\r\n\t\t\t\t\t\treturn { auditorId: a.auditorId, nomeAuditor: a.nomeAuditor, id: a.id } as IAuditorModel\r\n\t\t\t\t\t})\r\n\t\t\t\t\tconst [dataInicio, dataFim] = [res?.dados[0]?.dataInicio, res?.dados[0]?.dataFim];\r\n\r\n\t\t\t\t\t// Remover items duplicados\r\n\t\t\t\t\tauditoresSelecionados = auditoresSelecionados.filter(function (a) {\r\n\t\t\t\t\t\treturn !this[JSON.stringify(a)] && (this[JSON.stringify(a)] = true);\r\n\t\t\t\t\t}, Object.create(null))\r\n\r\n\t\t\t\t\tthis.equipeDataSource.data = auditoresSelecionados;\r\n\t\t\t\t\tthis.alocarEquipeModel.auditoresSelecionados = auditoresSelecionados;\r\n\t\t\t\t\tif (dataInicio?.toString()) this.alocarEquipeModel.dataInicio = new Date(dataInicio.toString());\r\n\t\t\t\t\tif (dataFim?.toString()) this.alocarEquipeModel.dataFim = new Date(dataFim.toString());\r\n\t\t\t//\t})\r\n\r\n })\r\n }\r\n\r\n\tpublic async exibirModalAlocarEquipe() {\r\n\t\ttry {\r\n\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\tdialogConfig.width = \"650px\";\r\n\t\t\tdialogConfig.maxHeight = \"80vh\";\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.data = this.alocarEquipeModel ;\r\n\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t\tAlocarEquipeComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t);\r\n\t\t\tmodal.afterClosed().subscribe((sucesso: IAlocarEquipeModel ) => {\r\n\t\t\t\tif (sucesso) {\r\n\t\t\t\t\tthis.equipeDataSource.data = sucesso?.auditoresSelecionados;\r\n\t\t\t\t\tthis.alocarEquipeModel.auditoresSelecionados = sucesso?.auditoresSelecionados;\r\n\t\t\t\t\tthis.semDados = this.equipeDataSource.filteredData.length === 0;\r\n this.equipeDataSource.paginator = this.tableTwoPaginator;\r\n this.equipeDataSource.sort = this.tabela2;\r\n this.equipeDataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n\r\n const dados: ISalvarAlocarEquipeModel = {\r\n auditorId: this.alocarEquipeModel.auditoresSelecionados.map(item => item.auditorId),\r\n dataInicio: new Date(sucesso?.dataInicio),\r\n dataFim: new Date(sucesso?.dataFim)\r\n } as ISalvarAlocarEquipeModel;\r\n\r\n this.osaService.salvarAlocarEquipeOsaId(this.id, dados).then(res => {\r\n if (res.sucesso) {\r\n this.buscar();\r\n this.exibirMensagemSucesso(res.mensagem.descricao)\r\n } else {\r\n this.exibirMensagemSucesso(res.mensagem.descricao)\r\n }\r\n })\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n\r\n\t\t}\r\n\t}\r\n\r\n public desvincularAuditor(element: number) {\r\n this.osaService.desvincularAuditorId(this.id, element).then(res => {\r\n res.sucesso ? this.exibirMensagemSucesso(res.mensagem.descricao) : this.exibirMensagemErro(res.mensagem.descricao);\r\n }).then(() => this.buscar())\r\n }\r\n\r\n\r\n\r\n\t//Adiciona Subtipos de Auditoria\r\n\r\n\tpublic async exibirModalSubtipo() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.subtipoService.obterAtivos();\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tconst modal = this.exibirModal(\r\n\t\t\t\t\t\"Selecionar Subtipo de Auditoria\",\r\n\t\t\t\t\tres.dados\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.subTipoModel.push(data)\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n public sortingDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"auditor\":\r\n\t\t\t\treturn item?.nomeAuditor;\r\n\t\t\tcase \"nome\":\r\n\t\t\t\treturn item?.nome;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n public sortingSubtiposDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"nome\":\r\n\t\t\t\treturn item?.subTipoAuditoria?.nome;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n\tpublic atualizarListaSubtipos() {\r\n\r\n\t\tthis.subtipoDataSource.sortingDataAccessor = defaultDataAcessor;\r\n\t\tthis.subtipoDataSource._updateChangeSubscription();\r\n\t\tthis.semDadosSubTipo = this.subtipoDataSource.filteredData.length === 0;\r\n\t}\r\n\r\n\t// Aloca Equipe\r\n\r\n\tpublic async exibirModalCoordenadorAuditoria() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.coordenacaoService.obterCoordenadoresAtivos();\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tvar newCordenador = res.dados.map(item => {\r\n\t\t\t\t\treturn {id: item.auditorId, nome: item.nomeAuditor}\r\n\t\t\t\t})\r\n\t\t\t\tconst modal = this.exibirModal(\r\n\t\t\t\t\t\"Selecionar Coordenador da Auditoria\",\r\n\t\t\t\t\tnewCordenador,\r\n false\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.model.auditorCoordenacao = data;\r\n this.model.auditorId = data?.id\r\n\t\t\t\t\t\tthis.form.controls['auditor'].setValue(data?.nome)\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\r\n\t\t
\r\n\t\t\t
\r\n\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\r\n
\r\n\t\t\t
\r\n\r\n\t\t
\r\n\t\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n
\r\n\t\t\t
\r\n\r\n\t\t
\r\n\t\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\r\n
\r\n\t\t\t
\r\n\r\n\t\t
\r\n\t\t\t
\r\n\t
\r\n\r\n\t
\r\n
\r\n \r\n \r\n
\r\n\t
\r\n\r\n \r\n\t
\r\n\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\tNome\r\n\t\t\t\t\r\n\t\t\t\t\t{{ element?.subTipoAuditoria?.nome }}\r\n\t\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t
\r\n\t\t\tNenhum registro encontrado.\r\n\t\t
\r\n\t\t\r\n\t\t\r\n\r\n\t
\r\n\r\n\r\n \r\n\t
\r\n\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\tAuditor\r\n\t\t\t\t\r\n\t\t\t\t\t{{ element?.nomeAuditor }}\r\n\t\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n \r\n\t\t\t\t\tAlocar Equipe \r\n\t\t\t\t\r\n \r\n\t\t\t\t\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n\t\t\t
\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t
0\" class=\"table-no-data\" >\r\n\t\t\tNenhum registro encontrado.\r\n\t\t
\r\n\t\t\r\n\t\t\r\n\t
\r\n\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n
\r\n
Campo obrigatório
\r\n
\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n
\r\n
\r\n","import { IOsaModel } from 'src/app/models/osa-model';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, Input, OnChanges, OnInit, Output, SimpleChanges, EventEmitter } from '@angular/core';\r\nimport { OsaService } from 'src/app/services/osa.service';\r\n\r\n@Component({\r\n selector: 'app-osa-abas',\r\n templateUrl: './osa-abas.component.html',\r\n styleUrls: ['./osa-abas.component.scss']\r\n})\r\nexport class OsaAbasComponent implements OnInit, OnChanges {\r\n public aba = 0;\r\n @Input() public visualizar: boolean;\r\n @Input() public numeroOpa: any;\r\n @Input() public planejamentoId: number = null;\r\n @Output() public abaEmitter: EventEmitter = new EventEmitter();\r\n @Input() public id: number;\r\n @Input() obterDados: () => void;\r\n public model: IOsaModel = {} as IOsaModel\r\n\r\n constructor(\r\n public router: Router,\r\n private osaService: OsaService,\r\n private activatedRoute: ActivatedRoute,\r\n ) {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n }\r\n\r\n ngOnInit(): void {\r\n const numeroAba = this.activatedRoute.snapshot.queryParamMap.get('aba');\r\n if (numeroAba) { this.mudarAba(Number(numeroAba)); }\r\n\r\n this.router.url.includes(\"aba=6\") ? this.mudarAba(6) : null;\r\n this.obter()\r\n }\r\n\r\n public obter(){\r\n this.osaService.obterPorId(this.id).then((res) => {\r\n this.model = res.dados\r\n })\r\n this.obterDados()\r\n }\r\n\r\n public mudarAba(ind: number) {\r\n this.aba = ind;\r\n this.abaEmitter.next(this.aba);\r\n }\r\n}\r\n","\r\n\r\n
\r\n\t
    \r\n\t\t
  • \r\n\t\t\tInformações Básicas\r\n\t\t\t\r\n\t\t
  • \r\n
  • \r\n\t\t\tMatriz de Planejamento\r\n\t\t\t\r\n\t\t
  • \r\n
  • \r\n\t\t\tCustos e Recursos\r\n\t\t\t\r\n\t\t
  • \r\n\t\t
  • \r\n\t\t\tCronograma\r\n\t\t\t\r\n\t\t
  • \r\n\t\t
  • \r\n\t\t\tAmostra\r\n\t\t\t\r\n\t\t
  • \r\n\t\t
  • \r\n\t\t\tSolicitação Técnica\r\n\t\t\t\r\n\t\t
  • \r\n\r\n\t\t
  • \r\n\t\t\tRelatoria\r\n\t\t\t\r\n\t\t
  • \r\n\t\t
  • \r\n\t\t\tLinha do Tempo\r\n\t\t\t\r\n\t\t
  • \r\n\t
\r\n
\r\n
\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n\r\n\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n \r\n\t
\r\n\t\t
\r\n \r\n\t\t
\r\n\t
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n","import { IOsaModel } from './../../../models/osa-model';\r\nimport { Component, OnInit, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { OsaService } from 'src/app/services/osa.service';\r\nimport { PlanejamentoService } from 'src/app/services/planejamento.service';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-osa-form',\r\n templateUrl: './osa-form.component.html',\r\n styleUrls: ['./osa-form.component.scss']\r\n})\r\nexport class OsaFormComponent extends BaseFormComponent implements OnInit {\r\n\r\n public elaborar = true;\r\n public numeroOpa: string;\r\n public osa: any;\r\n public planejamentoId: number = null;\r\n public model: IOsaModel = {} as IOsaModel;\r\n public versao: boolean;\r\n public isFilha: boolean = false;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private planejamentoService: PlanejamentoService,\r\n public matDialog: MatDialog,\r\n private osaService: OsaService,\r\n private sharedService: SharedService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n if (this.elaborar) {\r\n this.titulo = 'Elaborar OSA';\r\n } \r\n if (this.router.url.includes(\"nova-versao\")) {\r\n this.versao = true\r\n }\r\n this.obterPlanejamentoId()\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public mudarAba(e: number) { this.aba = e };\r\n\r\n public obterPlanejamentoId() {\r\n this.osaService.obterPorId(this.id).then(res => {\r\n if (res?.dados) {\r\n this.model = res.dados;\r\n\r\n\r\n if (this.visualizar) { \r\n this.titulo = 'Visualizar OSA' + (this.model.numero ? ' - ' + this.model.numero : '');\r\n }\r\n else {\r\n this.titulo = 'Editar OSA' + (this.model.numero ? ' - ' + this.model.numero : '');\r\n }\r\n \r\n\r\n this.isFilha = this.model?.numero.length > 8;\r\n this.planejamentoId = res.dados.planejamentoId;\r\n this.visualizar = res.dados.status.codigo == 4;\r\n this.planejamentoService.obterPorId(this.planejamentoId);\r\n }\r\n })\r\n }\r\n\r\n public onSalvarOsa() {\r\n this.sharedService.sendSalvarEvent();\r\n this.router.navigate(['/osa']);\r\n }\r\n\r\n public enviarParaAprovacao() {\r\n this.osaService.enviarAprovacao(this.id).then(res => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/osa']);\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public onBack() {\r\n window.history.back()\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n OSA - Ordem de Serviço de Auditoria\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { IAuditorModel } from './../../../models/alocar-equipe-component';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IOsaModelImprimir } from 'src/app/models/osa-imprimir';\r\nimport { OsaService } from 'src/app/services/osa.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\nimport { ILinhaDoTempoAvaliacaoModel } from 'src/app/models/linha-tempo-avaliacao.model';\r\n\r\n@Component({\r\n selector: 'app-osa-imprimir',\r\n templateUrl: './osa-imprimir.component.html',\r\n styleUrls: ['./osa-imprimir.component.scss']\r\n})\r\nexport class OsaImprimirComponent extends BaseFormComponent implements OnInit {\r\n\r\n public model!: IOsaModelImprimir;\r\n\r\n constructor(route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n matDialog: MatDialog,\r\n private osaService: OsaService) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscar();\r\n }\r\n\r\n buscar() {\r\n\r\n this.osaService.getImprimir(this.id).then(res => {\r\n if (!res.sucesso) {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n this.model = res.dados;\r\n })\r\n }\r\n\r\n public print() {\r\n window.print();\r\n }\r\n\r\n public cancelar() {\r\n window.history.back()\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

Ordem de Serviço de Auditoria nº {{ model?.numero }} /\r\n {{ model?.ano }}\r\n

\r\n
\r\n
\r\n
\r\n Origem:\r\n

{{ model?.origem.nome }}

\r\n
\r\n
\r\n Tipo:\r\n

{{ model?.tiposAuditorias?.nome }}

\r\n
\r\n
\r\n Subtipo:\r\n

\r\n Nome: {{ item?.nome }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n UG a ser auditada:\r\n

{{ model?.unidadeGestora.nome }}

\r\n
\r\n
\r\n
\r\n
\r\n Responsável da UG:\r\n

{{ model?.unidadeGestora?.responsavel }}

\r\n
\r\n
\r\n
\r\n
\r\n Objeto:\r\n

\r\n {{ model?.objeto }}\r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n Periodo a ser auditado\r\n
\r\n \r\n
\r\n \r\n Inicio:\r\n

\r\n {{ model?.dataInicioPeriodoAuditado | date: \"dd/MM/yyyy\" }}\r\n

\r\n
\r\n
\r\n Fim:\r\n

{{ model?.dataFimPeriodoAuditado | date: \"dd/MM/yyyy\" }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n Prazo da execução\r\n
\r\n
\r\n \r\n Inicio:\r\n

\r\n {{ model?.prazoExecucaoInicio | date: \"dd/MM/yyyy\" }}\r\n

\r\n
\r\n
\r\n Fim:\r\n

\r\n {{ model?.prazoExecucaoFim | date: \"dd/MM/yyyy\" }}\r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n Prazo manifestação do Auditado:\r\n
\r\n \r\n

\r\n {{ model?.prazoManifestacaoAuditado | date: \"dd/MM/yyyy\" }}\r\n

\r\n \r\n
\r\n
\r\n Prazo do relatório:\r\n
\r\n \r\n

\r\n {{ model?.prazoEntregaRelatorio | date: \"dd/MM/yyyy\" }}\r\n

\r\n
\r\n \r\n
\r\n
\r\n

Nenhum Auditor Encontrado

\r\n
\r\n
\r\n \r\n
\r\n
\r\n

Nome: {{item?.nomeAuditor}}

\r\n
\r\n
\r\n \r\n

Cargo: {{item?.cargo}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Nota de rodapé:\r\n

\r\n {{ model?.notaRodape }}\r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n Elaboração:\r\n
\r\n \r\n

{{model?.nomeCoordenador}}

\r\n
\r\n
\r\n \r\n
\r\n

Nenhuma aprovação

\r\n
\r\n \r\n
0\">\r\n
\r\n
\r\n Aprovações:\r\n
    \r\n
  1. \r\n \r\n
    \r\n

    \r\n {{ item?.nome }}({{ item?.papel }}) aprovou.\r\n

    \r\n \r\n

    \r\n {{ item?.nome }}({{ item?.papel }}) reprovou.\r\n

    \r\n \r\n

    \r\n {{ item?.nome}}({{ item?.papel }}) enviou para aprovação.\r\n

    \r\n \r\n

    \r\n {{ item?.nome }}({{ item?.papel }}) homologou.\r\n

    \r\n
    \r\n
  2. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n","import { AfterViewInit, Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { IOsaFiltroModel } from 'src/app/models/osa-filtro-model';\r\nimport { IOsaModel } from 'src/app/models/osa-model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { OsaService } from 'src/app/services/osa.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-osa-list',\r\n templateUrl: './osa-list.component.html',\r\n styleUrls: ['./osa-list.component.scss']\r\n})\r\nexport class OsaListComponent implements OnInit, AfterViewInit {\r\n public dataSource = new MatTableDataSource()\r\n public selectedModel: any;\r\n public semDados = false;\r\n public filtro: IOsaFiltroModel = {} as IOsaFiltroModel;\r\n public pageEvent: any;\r\n public totalItens: number;\r\n public numeroOsa: number;\r\n public displayedColumn: string[] = ['id', 'numeroOsa', 'numeroOpa', 'ano', 'ug', 'origemAuditoria', 'coordenacao', 'dataInicio', 'dataFim', 'status', 'situacao'];\r\n\r\n public permissoes: IPermissaoModel;\r\n\r\n @ViewChild(MatPaginator) paginator: MatPaginator\r\n @ViewChild('tabela1') public tabela1: MatSort;\r\n\r\n\r\n constructor(\r\n private osaService: OsaService,\r\n public route: ActivatedRoute,\r\n public toastr: ToastrService,\r\n public router: Router,\r\n public localeService: BsLocaleService,\r\n public matDialog: MatDialog,\r\n public authService: AuthService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOSA, EnumAcaoRecurso.Consultar);\r\n this.permissoes.elaborar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOSA, EnumAcaoRecurso.Elaborar);\r\n this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOSA, EnumAcaoRecurso.Imprimir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOSA, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.enviarParaAprovacao = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOSA, EnumAcaoRecurso.EnviarParaAprovacao);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOSA, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.gerarNovaVersao = this.authService.possuiPermissao(EnumRecursoPerfil.ManterOSA, EnumAcaoRecurso.GerarNovaVersao);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.configurarFiltro()\r\n this.obter();\r\n }\r\n\r\n sortData(sort) {\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/osa/${id}/visualizar`]);\r\n }\r\n\r\n public elaborar(id: number) {\r\n this.router.navigate([`/osa/${id}/elaborar`]);\r\n }\r\n\r\n public inativar(id: number): void {\r\n Swal.fire({\r\n text: 'Informe uma justificativa para inativar.',\r\n input: 'text',\r\n inputAttributes: {\r\n autocapitalize: 'off'\r\n },\r\n showCancelButton: true,\r\n confirmButtonText: 'Inativar',\r\n cancelButtonText: 'Cancelar',\r\n showLoaderOnConfirm: true,\r\n preConfirm: (justificativa) => {\r\n if (!justificativa) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: 'A justificativa não pode ser vazia!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return\r\n }\r\n this.osaService.inativar(id, justificativa).then(res => {\r\n if (!res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.obter()\r\n }).catch(error => {\r\n Swal.showValidationMessage(\r\n `Ocorreu um erro ao inativar`\r\n )\r\n })\r\n },\r\n allowOutsideClick: () => !Swal.isLoading()\r\n }).then((result) => {\r\n\r\n })\r\n }\r\n\r\n public novaVersao(id: number) {\r\n this.osaService.gerarNovaVersao(id).then((res) => {\r\n if (res.sucesso) {\r\n this.router.navigate([`/osa/${res?.dados?.id}/elaborar`]);\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }).catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }).finally(() => {\r\n this.obter()\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n Swal.fire({\r\n title: \"Reativar Registro\",\r\n text: \"Tem certeza que deseja reativar esse registro?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then((res) => {\r\n if (res.value) {\r\n this.osaService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n });\r\n this.obter()\r\n } else {\r\n {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n });\r\n }\r\n }\r\n })\r\n .catch((err) => {\r\n {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n });\r\n }\r\n })\r\n }\r\n })\r\n\r\n }\r\n\r\n public filtrarPorNumero() {\r\n this.selectedModel = null;\r\n var filtro: IOsaFiltroModel = { numeroOsa: this.numeroOsa } as IOsaFiltroModel;\r\n this.osaService.obter(filtro);\r\n }\r\n \r\n public obter(): void {\r\n this.selectedModel = null\r\n this.osaService.currentOsa.subscribe(res => {\r\n this.dataSource = new MatTableDataSource(res.resultado);\r\n\r\n this.dataSource._updateChangeSubscription();\r\n this.totalItens = res.totalItens\r\n\r\n this.dataSource.sortingDataAccessor = (item: IOsaModel, property) => {\r\n switch (property) {\r\n case 'ano':\r\n return item?.ano;\r\n case 'numeroOsa':\r\n return item?.numero;\r\n case 'numeroOpa':\r\n return item?.planejamento?.opa?.numero;\r\n case 'origemAuditoria':\r\n return item?.planejamento?.origem?.descricao;\r\n case 'ug':\r\n return item?.planejamento?.opa?.unidadeGestora?.sigla;\r\n case 'coordenacao':\r\n return item?.planejamento?.opa?.auditorCoordenacao?.coordenacao?.sigla;\r\n case 'dataInicio':\r\n return item?.planejamento?.dataInicio;\r\n case 'dataFim':\r\n return item?.planejamento?.dataFim;\r\n case 'status':\r\n return item?.status?.nome;\r\n case 'situacao':\r\n return item?.ativo;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n\r\n this.dataSource.sort = this.tabela1;\r\n\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n });\r\n }\r\n\r\n private configurarFiltro() {\r\n this.filtro.pagina = this.paginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.paginator.pageSize;\r\n }\r\n\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.obter()\r\n }\r\n\r\n\r\n public selecionar(item: any): void {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n\r\n public imprimir(id: number) {\r\n this.router.navigateByUrl(`osa/${id}/imprimir`)\r\n }\r\n\r\n}\r\n","
\r\n\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\r\n\r\n\t\t\t
\r\n\t\t\t\t\r\n\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t\r\n\t
\r\n\r\n\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\tNúmero Osa\r\n\t\t\t\r\n\t\t\t\t{{ element?.numero }}\r\n\t\t\t\r\n\t\t\t\tNúmero Opa\r\n\t\t\t\r\n\t\t\t\t{{ element?.planejamento?.opa?.numero }}\r\n\t\t\tAno\r\n\t\t\t\t{{ element?.ano }}\r\n\t\t\tUG\r\n\t\t\t\t{{ element?.unidadeGestora?.sigla || element?.planejamento?.opa?.unidadeGestora?.sigla }}\r\n\t\t\t\r\n\t\t\t\tOrigem Auditoria\r\n\t\t\t\r\n\t\t\t\t{{ element?.planejamento?.opa?.origem?.descricao }}\r\n\t\t\t\r\n\t\t\t\tCoordenação\r\n\t\t\t\r\n\t\t\t\t{{\r\n\t\t\t\telement?.planejamento?.opa?.auditorCoordenacao?.coordenacao\r\n\t\t\t\t?.sigla\r\n\t\t\t\t}}\r\n\t\t\t\r\n\t\t\t\tData Início\r\n\t\t\t\r\n\t\t\t\t

{{ element?.planejamento?.opa?.dataInicioPrevista | date:\r\n\t\t\t\t\t\"dd/MM/yyyy\"}}

\r\n\t\t\t\t

{{ element?.dataInicioRealizacao | date: \"dd/MM/yyyy\"}}

\r\n\t\t\t
\r\n\t\t\t\tData Fim\r\n\t\t\t\r\n\r\n\t\t\t\t

{{ element?.planejamento?.opa?.dataFimPrevista | date:\r\n\t\t\t\t\t\"dd/MM/yyyy\"}}

\r\n\t\t\t\t

{{ element?.dataFimRealizacao | date: \"dd/MM/yyyy\"}}

\r\n\t\t\t
\r\n\t\t\t\tStatus\r\n\t\t\t\r\n\t\t\t\tHomologado\r\n\t\t\t\tEm\r\n\t\t\t\t\tAprovação\r\n\t\t\t\tEm\r\n\t\t\t\t\tElaboração\r\n\t\t\t\t\r\n\t\t\t\t\tElaborar\r\n\t\t\t\tEm Execução\r\n\t\t\tSituação\r\n\t\t\t\tAtivo\r\n\t\t\t\tInativo\r\n\t\t\t
\r\n\r\n\t
Nenhum registro encontrado
\r\n\r\n\t\r\n\t\r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-osa',\r\n templateUrl: './osa.component.html',\r\n styleUrls: ['./osa.component.scss']\r\n})\r\nexport class OsaComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. OSA - Ordem de Serviço de Auditoria
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n OSA - Ordem de Serviço de Auditoria\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import { MatSort, MatSortable } from '@angular/material/sort';\r\nimport { AfterViewInit, Component, Output, OnInit, ViewChild, EventEmitter } from \"@angular/core\";\r\nimport { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { MatDialog,\tMatDialogConfig } from \"@angular/material/dialog\";\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { DateHelper } from 'src/app/core/helpers/date.helper';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport Swal from 'sweetalert2';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { Location } from '@angular/common';\r\n\r\n//COMPONENTS\r\nimport { ModalAlocarEquipeComponent } from '../modal-alocar-equipe/modal-alocar-equipe.component';\r\nimport { ModalGraficoDistribuicaoComponent } from '../modal-grafico-distribuicao/modal-grafico-distribuicao.component';\r\n\r\n//MODELS\r\nimport { IPaaEquipeModel } from 'src/app/models/paa-equipe.model';\r\nimport { IPaaInformacoesBasicasModel } from 'src/app/models/paa-informacoes-basicas.model';\r\n\r\n//SERVICES\r\nimport { PaaService } from 'src/app/services/paa.service';\r\n\r\n\r\n@Component({\r\n\tselector: \"app-paa-aba-alocacao\",\r\n\ttemplateUrl: \"./paa-aba-alocacao.component.html\",\r\n\tstyleUrls: [\"./paa-aba-alocacao.component.scss\"],\r\n})\r\nexport class PaaAbaAlocacaoComponent extends BaseFormComponent implements OnInit{\r\n\r\n public paaInformacoesBasicas: IPaaInformacoesBasicasModel = {} as IPaaInformacoesBasicasModel;\r\n public equipeAlocacaoDataSource = new MatTableDataSource([]);\r\n public equipeAlocacaoSemDados = true;\r\n @ViewChild('tabela4') public tabela4: MatSort;\r\n\r\n constructor(route: ActivatedRoute,\r\n\t\ttoastr: ToastrService,\r\n\t\trouter: Router,\r\n\t\tlocaleService: BsLocaleService,\r\n\t\tprivate _location: Location,\r\n public matDialog: MatDialog,\r\n private paaService: PaaService\r\n ){\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n async ngOnInit() {\r\n await this.buscarInformacoesBasicas();\r\n this.tabela4?.sort({ id: 'nome', start: 'asc' } as MatSortable);\r\n this.buscar();\r\n\r\n //TODO: VERIFICAR PQ A VARIÁVEL VISUALIZAR ESTÁ SENDO RESETADA\r\n\t\t\tthis.visualizar = this.route.routeConfig.path?.includes(\"visualizar\");\r\n }\r\n\r\n public async buscar(): Promise {\r\n \r\n var paaId = this.route?.snapshot?.params?.id;\r\n return this.paaService\r\n .obterAlocacoesEquipe(this.id ?? paaId)\r\n .then((resEquipes) => {\r\n var dados = resEquipes.dados.map((item) => {\r\n item.paaDistribuicao.unidadeGestora.sigla =\r\n item.paaDistribuicao.unidadeGestora.sigla.toUpperCase();\r\n return item;\r\n });\r\n \r\n this.equipeAlocacaoDataSource = new MatTableDataSource(\r\n dados\r\n );\r\n this.equipeAlocacaoDataSource._updateChangeSubscription();\r\n \r\n this.equipeAlocacaoDataSource.sortingDataAccessor = (\r\n item,\r\n property\r\n ) => {\r\n switch (property) {\r\n case 'nome':\r\n return item?.paaDistribuicao?.unidadeGestora?.sigla;\r\n case 'tipoAuditoria':\r\n return item?.paaDistribuicao?.tipoAuditoria?.nome;\r\n case 'tipoEnfase':\r\n return item?.paaDistribuicao?.tipoEnfase?.nome;\r\n case 'equipeAlocada':\r\n return item?.paaEquipeAuditor[0]?.nomeAuditor;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n \r\n this.equipeAlocacaoDataSource.sort = this.tabela4;\r\n \r\n this.equipeAlocacaoSemDados =\r\n this.equipeAlocacaoDataSource.filteredData.length === 0;\r\n });\r\n }\r\n\r\n public async alocarEquipe(equipeAlocacao: IPaaEquipeModel) {\r\n try {\r\n const equipe = (\r\n await this.paaService.obterEquipe(equipeAlocacao.paaDistribuicaoId)\r\n ).dados;\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.maxHeight = '80vh';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n equipe,\r\n ano: this.paaInformacoesBasicas.ano,\r\n };\r\n const modal = this.matDialog.open(\r\n ModalAlocarEquipeComponent,\r\n dialogConfig\r\n );\r\n \r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.buscar();\r\n }\r\n });\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async buscarInformacoesBasicas(){\r\n\r\n\t\tawait this.paaService.buscarInformacoesBasicas(this.id)\r\n\t\t .then((res)=> {\r\n\t\t\tif(res.sucesso)\r\n\t\t\t this.paaInformacoesBasicas = res.dados;\r\n\t\t })\r\n\t }\r\n\r\n public lowerCase(nome: string) {\r\n return nome.toLowerCase().replace(/(?:^|\\s)\\S/g, (X) => X.toUpperCase());\r\n }\r\n\r\nmostrarBotaoAlocarEquipe(): boolean{\r\n return !this.visualizar;\r\n}\r\n\r\npublic visualizarGrafico() {\r\n\r\n this.paaService\r\n .obterGrafico(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n // dialogConfig.width = '650px';\r\n dialogConfig.maxHeight = '100%';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = res.dados;\r\n const modal = this.matDialog.open(\r\n ModalGraficoDistribuicaoComponent,\r\n dialogConfig\r\n );\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) =>\r\n this.exibirMensagemErro(err.mensagem.descricao)\r\n )\r\n}\r\n}","
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n Unidade(s) Gestora(s)\r\n \r\n \r\n {{\r\n element?.paaDistribuicao\r\n ?.unidadeGestora\r\n ?.sigla\r\n }}\r\n \r\n \r\n\r\n \r\n \r\n Tipo de Auditoria\r\n \r\n \r\n {{\r\n element?.paaDistribuicao\r\n ?.tipoAuditoria\r\n ?.nome\r\n }}\r\n \r\n \r\n\r\n \r\n \r\n Tipo de Ênfase\r\n \r\n \r\n {{\r\n element?.paaDistribuicao\r\n ?.tipoEnfase\r\n ?.nome\r\n }}\r\n \r\n \r\n\r\n \r\n \r\n Data Início\r\n \r\n \r\n {{\r\n element?.dataInicio\r\n | date: \"dd/MM/yyyy\"\r\n }}\r\n \r\n \r\n\r\n \r\n \r\n Data Fim\r\n \r\n \r\n {{\r\n element?.dataFim\r\n | date: \"dd/MM/yyyy\"\r\n }}\r\n \r\n \r\n\r\n \r\n \r\n Equipe Alocada\r\n \r\n \r\n \r\n {{\r\n lowerCase(\r\n item?.nomeAuditor\r\n )\r\n }},\r\n

\r\n \r\n \r\n\r\n \r\n \r\n \r\n Ação\r\n \r\n \r\n \r\n \r\n \r\n Alocar Equipe\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Nenhuma Unidade Gestora cadastrada\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n Visualizar Gráfico\r\n \r\n\r\n\r\n
","import { Component, Inject, OnInit } from '@angular/core';\r\n\r\nimport { MAT_DIALOG_DATA, MatDialog } from '@angular/material/dialog';\r\n\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport Inputmask from 'inputmask';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IAgentePublicoModel } from 'src/app/models/agente-publico.model';\r\nimport { IPaaAbaCapacidadeModalCapacidade, IPaaAbaCapacidadeModalCapacidadeDispensa, IPaaAbaCapacidadeModalCapacidadeDisponibilidade, IPaaAbaCapacidadeModel } from 'src/app/models/paa-aba-capacidade.model';\r\n\r\n@Component({\r\n selector: 'app-modal-capacidade-paa',\r\n templateUrl: './modal-capacidade-paa.component.html',\r\n styleUrls: ['./modal-capacidade-paa.component.scss']\r\n})\r\nexport class ModalCapacidadePaaComponent implements OnInit {\r\n public model: IPaaAbaCapacidadeModalCapacidade;\r\n \r\n public dispensaDataSource = new MatTableDataSource([]);\r\n public auditorDataSource = new MatTableDataSource([]);\r\n public disponibilidadeDataSource = new MatTableDataSource([]);\r\n\r\n public dispensaSemDados = true;\r\n public disponibilidadeSemDados = true;\r\n public colunasOriginais = ['nomeAuditor'];\r\n public colunasAdicionar = [];\r\n public columnsDisponibilidades = [];\r\n\r\n public tabelaAuditores = [] as IAgentePublicoModel[];\r\n public tabelaDispensas = [] as IPaaAbaCapacidadeModalCapacidadeDispensa[]\r\n public tabelaDisponibilidades = [] as IPaaAbaCapacidadeModalCapacidadeDisponibilidade[];\r\n\r\n constructor(\r\n public toastr: ToastrService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n\r\n this.model = data.dados;\r\n \r\n this.dispensaDataSource = new MatTableDataSource(this.model.dispensas);\r\n this.dispensaSemDados = this.dispensaDataSource.data.length === 0;\r\n\r\n this.disponibilidadeDataSource = new MatTableDataSource(this.model.disponibilidades);\r\n this.disponibilidadeSemDados = this.disponibilidadeDataSource.data.length == 0;\r\n\r\n this.tabelaDisponibilidades = this.model.disponibilidades;\r\n\r\n if(this.tabelaDisponibilidades[0]){\r\n \r\n this.tabelaDisponibilidades[0].tiposTrabalho.forEach((disponibilidade) => {\r\n const template = disponibilidade as any;\r\n const nomeColuna = template.item1;\r\n if(!this.colunasAdicionar.some((c) => c === nomeColuna)){\r\n this.colunasAdicionar.push(nomeColuna);\r\n }\r\n })\r\n\r\n }\r\n this.columnsDisponibilidades = [];\r\n this.columnsDisponibilidades = this.colunasOriginais.concat(this.colunasAdicionar); \r\n \r\n }\r\n\r\n\r\n public obterValorColunaNovo(element: IPaaAbaCapacidadeModalCapacidadeDisponibilidade, coluna: string): string{\r\n \r\n if(!element || !coluna)\r\n return '';\r\n\r\n var retorno = \"\";\r\n\r\n element.tiposTrabalho.forEach((tipoTrabalho) => {\r\n const templateTipoTrabalho = tipoTrabalho as any;\r\n if(templateTipoTrabalho.item1 == coluna){\r\n retorno = templateTipoTrabalho.item2.toFixed(2).toString();\r\n retorno += \"%\";\r\n return;\r\n }\r\n \r\n })\r\n return retorno;\r\n }\r\n\r\n ngOnInit(): void {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n \r\n public fechar(){\r\n return this.matDialog.closeAll()\r\n }\r\n}\r\n\r\n","
\r\n\t\r\n\t\t
\r\n\t\t\t

Capacidade de Trabalho

\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tAuditor\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nomeAuditor }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tDescrição\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.descricaoDispensa }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tData Início\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.dataInicioFormatted }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tData fim\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.dataFimFormatted }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tQuantidade de Dias\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.qtdDias }}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tNenhuma dispensa cadastrada\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tAuditor\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nomeAuditor }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{{ coluna }}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\tobterValorColunaNovo(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\telement,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tcoluna\r\n\t\t\t\t\t\t\t\t\t\t\t\t) \r\n\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t Fechar\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n","import { Component, OnInit, ViewChild } from \"@angular/core\";\r\nimport { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { MatDialog,\tMatDialogConfig } from \"@angular/material/dialog\";\r\nimport { Location } from '@angular/common';\r\n\r\n\r\n//COMPONENTS\r\nimport { ModalCapacidadePaaComponent } from \"./modal-capacidade/modal-capacidade-paa.component\";\r\nimport { ModalDescricaoDiasUteisComponent } from \"../modal-descricao-paac/modal-descricao-paac.component\";\r\n\r\n//MODELS\r\nimport { IPaaInformacoesBasicasModel } from \"src/app/models/paa-informacoes-basicas.model\";\r\nimport { IPaaAbaCapacidadeModel } from \"src/app/models/paa-aba-capacidade.model\";\r\nimport { IPaaAbaCapacidadeCoordenacao } from \"src/app/models/paa-aba-capacidade.model\";\r\n\r\n//SERVICES\r\nimport { PaaAbaCapacidadeService } from \"src/app/services/paa/paa-aba-capacidade.service\";\r\nimport { CoordenacaoService } from \"src/app/services/coordenacao.service\";\r\nimport { TipoDispensaService } from \"src/app/services/tipo-dispensa.service\";\r\nimport { PaaService } from \"src/app/services/paa.service\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\n\r\n\r\n\r\n@Component({\r\n\tselector: \"app-paa-aba-capacidade\",\r\n\ttemplateUrl: \"./paa-aba-capacidade.component.html\",\r\n\tstyleUrls: [\"./paa-aba-capacidade.component.scss\"],\r\n})\r\nexport class PaaAbaCapacidadeComponent extends BaseFormComponent implements OnInit{\r\n public model = {} as IPaaAbaCapacidadeModel;\r\n\r\n\tpublic mostrarCapacidadeTotal: number;\r\n\tpublic mostrarCapacidadeTotalPea: number;\r\n\tpublic paaInformacoesBasicas: IPaaInformacoesBasicasModel = {} as IPaaInformacoesBasicasModel;\r\n\tpublic capacidadeDataSource = new MatTableDataSource([]);\r\n\tpublic capacidadeSemDados = true;\r\n\t@ViewChild('tabela4') public tabela4: MatSort;\r\n\tpublic paaHomologado = true;\r\n\t\r\n\tconstructor(route: ActivatedRoute,\r\n\t\t\t\ttoastr: ToastrService,\r\n\t\t\t\trouter: Router,\r\n\t\t\t\tlocaleService: BsLocaleService,\r\n\t\t\t\tprivate _location: Location,\r\n\t\t\t\tprivate paaAbaCapacidadeService: PaaAbaCapacidadeService,\r\n\t\t\t\tprivate coordenacaoService: CoordenacaoService,\r\n\t\t\t\tprivate tipoDispensaService: TipoDispensaService,\r\n\t\t\t\tpublic matDialog: MatDialog,\r\n\t\t\t\tprivate paaService: PaaService\r\n\t){super(route, toastr, router, localeService, matDialog);}\r\n\r\n\tpublic columnsCapacidade = [\r\n\t\t'siglaCoordenacao',\r\n\t\t'capacidadePaa', \r\n\t\t'capacidadePea', \r\n\t\t'nomesAuditores', \r\n\t\t'actions',\r\n\t ];\r\n\r\n\t async ngOnInit() {\r\n\t\tawait this.buscarInformacoesBasicas();\r\n\t\tawait this.buscar();\r\n\t\t\r\n\t\t//TODO: VERIFICAR PQ A VARIÁVEL VISUALIZAR ESTÁ SENDO RESETADA\r\n\t\tthis.visualizar = this.route.routeConfig.path?.includes(\"visualizar\");\r\n\t }\r\n\r\n\t async buscar(){\r\n\t\t\tawait this.paaAbaCapacidadeService.obter(this.id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif(res.sucesso){\r\n\t\t\t\t\t\t\tthis.model = res.dados;\r\n\t\t\t\t\t\t\tthis.mostrarCapacidadeTotal = this.model.capacidadeTotalPaa;\r\n\t\t\t\t\t\t\tthis.mostrarCapacidadeTotalPea = this.model.capacidadeTotalPea;\r\n\t\t\t\t\t\t\tthis.capacidadeDataSource = new MatTableDataSource(res.dados.coordenacoes);\r\n\t\t\t\t\t\t\tthis.capacidadeSemDados = this.capacidadeDataSource.data.length ==0;\r\n\t\t\t\t\t\t}else{\r\n\t\t\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t\t\r\n\t }\r\n\r\n\t //METHODS\r\n\t public async visualizarCoordenacao(capacidade: IPaaAbaCapacidadeCoordenacao) {\r\n\t\t\tlet dados =(await this.paaAbaCapacidadeService.obterDetalheCoordenacao(this.id, capacidade.idCoordenacao, capacidade.ano)).dados;\t\t\r\n\t\t\t\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = 'modal-paa-component';\r\n\t\t\tdialogConfig.width = '1080px';\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.data = {\r\n\t\t\t\tdados\r\n\t\t\t};\r\n\t\t\tconst modal = this.matDialog.open(ModalCapacidadePaaComponent, dialogConfig);\r\n\t }\r\n\t\r\n\t\r\n\t public agrupadorCapacidade(index: number, item: any): boolean {\r\n\t\treturn item.grupo;\r\n\t }\r\n\t\r\n\t public subTotalCapacidade(index: number, item: any): boolean {\r\n\t\treturn item.subTotal;\r\n\t }\r\n\r\n\t public async buscarInformacoesBasicas(){\r\n\r\n\t\tawait this.paaService.buscarInformacoesBasicas(this.id)\r\n\t\t .then((res)=> {\r\n\t\t\tif(res.sucesso)\r\n\t\t\t this.paaInformacoesBasicas = res.dados;\r\n\t\t })\r\n\t }\r\n\r\n\t public async descricaoPAAC(element: IPaaAbaCapacidadeCoordenacao) {\r\n\t\t// Obter detalhes da capacidade por coordenação, você já tem essa lógica implementada\r\n\r\n\t\t// Dados que você deseja passar para o modal\r\n\t\tconst dadosModal = {\r\n\t\t\tcapacidade: {\r\n\t\t\t\tdiasDisponiveis: element.extras.diasDisponiveis,\r\n\t\t\t\tqntDiasPorAuditor: element.extras.qntDiasPorAuditor,\r\n\t\t\t\tnumAuditoriaPorEquipe: element.extras.numAuditoriaPorEquipe,\r\n\t\t\t\tnumAuditoriaPorEquipeArred: element.extras.numAuditoriaPorEquipeArred,\r\n\t\t\t\tnumEquipeDisponiveis: element.extras.numEquipeDisponiveis,\r\n\t\t\t\tcapacidadeTotalPorCoord: element.extras.capacidadeTotalPorCoord\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t// Configuração do modal\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = 'modal-descricao-paac-component';\r\n\t\tdialogConfig.width = '600px';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = dadosModal;\r\n\t\r\n\t\t// Abrir o modal\r\n\t\tconst modal = this.matDialog.open(ModalDescricaoDiasUteisComponent, dialogConfig);\r\n\t}\r\n}","
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Coordenação\r\n \r\n \r\n {{\r\n element?.siglaCoordenacao\r\n }}\r\n \r\n \r\n Capacidade Total\r\n \r\n \r\n\r\n \r\n \r\n Capacidade Total PEAC\r\n \r\n \r\n {{\r\n element.capacidadePea\r\n }}\r\n \r\n \r\n {{\r\n mostrarCapacidadeTotalPea\r\n }}\r\n \r\n \r\n\r\n \r\n \r\n Capacidade Total PAAC\r\n \r\n \r\n
\r\n \r\n {{ element.capacidadePaa }}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n {{ mostrarCapacidadeTotal }}\r\n \r\n \r\n\r\n \r\n \r\n Auditores\r\n \r\n \r\n {{\r\n element.nomesAuditores\r\n }}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n Sem capacidade de trabalho\r\n \r\n
\r\n
\r\n
\r\n
","import { MatSort, MatSortable } from \"@angular/material/sort\";\r\nimport {\r\n\tAfterViewInit,\r\n\tComponent,\r\n\tOutput,\r\n\tOnInit,\r\n\tViewChild,\r\n\tEventEmitter,\r\n} from \"@angular/core\";\r\nimport { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { MatDialog, MatDialogConfig } from \"@angular/material/dialog\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { DateHelper } from \"src/app/core/helpers/date.helper\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport Swal from \"sweetalert2\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { defaultDataAcessor } from \"src/app/core/helpers/mat-sort-data-accessor\";\r\nimport { Location } from \"@angular/common\";\r\n\r\n//COMPONENTS\r\nimport { ModalSelecionarUGComponent } from \"../modal-selecionar-ug/modal-selecionar-ug.component\";\r\nimport { ModalSelecionarCoordenacoesComponent } from \"../../pea-form/modal-selecionar-coordenacoes/modal-selecionar-coordenacoes.component\";\r\n\r\n//MODELS\r\nimport { IPaaDadosBasicosModel } from \"src/app/models/paa-dados-basicos.model\";\r\nimport { IPaaUnidadeGestoraModel } from \"src/app/models/paa-unidade-gestora.model\";\r\nimport { IPaaCoordenacaoModel } from \"src/app/models/paa-coordenacao.model\";\r\nimport { IUnidadeGestoraModel } from \"src/app/models/unidade-gestora.model\";\r\nimport { IPaaDistribuicaoModel } from \"src/app/models/paa-distribuicao.model\";\r\nimport { ICoordenacaoModel } from \"src/app/models/coordenacao.model\";\r\nimport { IBaseModel } from \"src/app/models/base.model\";\r\n\r\n//SERVICES\r\nimport { PaaAbaDadosBasicosService } from \"src/app/services/paa/paa-aba-dados-basicos.service\";\r\nimport { UnidadeGestoraService } from \"src/app/services/unidade-gestora.service\";\r\nimport { CoordenacaoService } from \"src/app/services/coordenacao.service\";\r\nimport { IndicadorService } from \"src/app/services/indicador.service\";\r\nimport { PeaService } from \"src/app/services/pea.service\";\r\nimport { PeriodoService } from \"src/app/services/periodo.service\";\r\n\r\n@Component({\r\n\tselector: \"app-paa-aba-dados-basicos\",\r\n\ttemplateUrl: \"./paa-aba-dados-basicos.component.html\",\r\n\tstyleUrls: [\"./paa-aba-dados-basicos.component.scss\"],\r\n})\r\nexport class PaaAbaDadosBasicosComponent\r\n\textends BaseFormComponent\r\n\timplements OnInit\r\n{\r\n\t@Output() public abaEmitter: EventEmitter =\r\n\t\tnew EventEmitter();\r\n\r\n\tpublic model = {} as IPaaDadosBasicosModel;\r\n\r\n\tpublic msgDataInicio = \"Campo obrigatório\";\r\n\tpublic msgDataFim = \"Campo obrigatório\";\r\n\r\n\t//BOOL\r\n\tpublic permiteEdicao = false;\r\n\tpublic emAprovacao = false;\r\n\tpublic coordenacaoSemDados = true;\r\n\tpublic salvarDadosPendente = false;\r\n\tpublic ugSemDados = true;\r\n\tpublic paaHomologado = false;\r\n\tpublic esconderCamposPaaEspecial = true;\r\n\r\n\t//DATA SOURCE\r\n\tpublic coordenacoesDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic ugDataSource= new MatTableDataSource([]);\r\n\tpublic ugPlanejadaDataSource = new MatTableDataSource([]);\r\n\t\r\n\r\n\t@ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n\t@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n\tpublic form1 = new FormGroup({\r\n\t\tnome: new FormControl(\"\"),\r\n\t\tdataInicio: new FormControl(\"\"),\r\n\t\tdataFim: new FormControl(\"\"),\r\n\t\tpeaId: new FormControl(\"\"),\r\n\t\torigem: new FormControl(\"\", Validators.required),\r\n\t\tsubcapitulo: new FormControl(\"\"),\r\n\t\torigemAuditoria: new FormControl({ value: \"\", disabled: true }),\r\n\t});\r\n\r\n\tconstructor(\r\n\t\troute: ActivatedRoute,\r\n\t\ttoastr: ToastrService,\r\n\t\trouter: Router,\r\n\t\tlocaleService: BsLocaleService,\r\n\t\tprivate _location: Location,\r\n\t\tpublic paaDadosBasicosService: PaaAbaDadosBasicosService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate dateHelper: DateHelper,\r\n\t\tprivate unidadeGestoraService: UnidadeGestoraService,\r\n\t\tprivate coordenacaoService: CoordenacaoService,\r\n\t\tprivate indicadorService: IndicadorService,\r\n\t\tprivate peaService: PeaService,\r\n\t\tprivate periodoService: PeriodoService\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\t}\r\n\r\n\tasync ngOnInit(): Promise {\r\n\t\tif (this.novoRegistro) await this.gerarNova();\r\n\t\telse {\r\n\t\t\tawait this.buscar();\r\n\t\t}\r\n\r\n\t\t//TODO: VERIFICAR PQ A VARIÝVEL VISUALIZAR ESTÝ SENDO RESETADA\r\n\t\tthis.visualizar = this.route.routeConfig.path?.includes(\"visualizar\");\r\n\r\n\t\tthis.atribuirRequireds();\r\n\t\tthis.desabilitaDataInicioFim();\r\n\t}\r\n\r\n\tatribuirRequireds() {\r\n\t\tif (this.model.origem.codigo == 2) {\r\n\t\t\tthis.form1.controls[\"nome\"].setValidators([Validators.required]);\r\n\t\t\tthis.form1.controls[\"dataInicio\"].setValidators([\r\n\t\t\t\tValidators.required,\r\n\t\t\t]);\r\n\t\t\tthis.form1.controls[\"dataFim\"].setValidators([Validators.required]);\r\n\t\t\tthis.permiteEdicao = true;\r\n\t\t\tthis.esconderCamposPaaEspecial = false;\r\n\t\t} else {\r\n\t\t\tthis.form1.controls[\"nome\"].clearValidators();\r\n\t\t\tthis.form1.controls[\"dataInicio\"].clearValidators();\r\n\t\t\tthis.form1.controls[\"dataFim\"].clearValidators();\r\n\t\t\tthis.esconderCamposPaaEspecial = true;\r\n\t\t}\r\n\r\n\t\tthis.form1.controls[\"nome\"].updateValueAndValidity();\r\n\t\tthis.form1.controls[\"dataInicio\"].updateValueAndValidity();\r\n\t\tthis.form1.controls[\"dataFim\"].updateValueAndValidity();\r\n\t}\r\n\r\n\tasync gerarNova() {\r\n\t\tawait this.paaDadosBasicosService\r\n\t\t\t.gerarNova()\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.model.origem = res.dados.origem;\r\n\t\t\t\t\tthis.permiteEdicao = true;\r\n\t\t\t\t\tthis.esconderCamposPaaEspecial = false;\r\n\r\n\t\t\t\t\tthis.form1.patchValue({\r\n\t\t\t\t\t\torigem: res.dados.origem,\r\n\t\t\t\t\t\torigemAuditoria: this.model.origem.descricao,\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t});\r\n\t}\r\n\r\n\tasync buscar() {\r\n\t\ttry {\r\n\t\t\tawait this.paaDadosBasicosService\r\n\t\t\t\t.obterDadosBasicos(this.id)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\tthis.model = res.dados;\r\n\t\t\t\t\t\tif (Number(this.model?.situacao) === 2) \r\n\t\t\t\t\t\t\tthis.emAprovacao = true;\r\n\t\t\t\t\t\tthis.form1.patchValue({\r\n\t\t\t\t\t\t\tnome: this.model.nome,\r\n\t\t\t\t\t\t\torigem: this.model.origem,\r\n\t\t\t\t\t\t\torigemAuditoria: this.model.origem.descricao,\r\n\t\t\t\t\t\t\tdataInicio: this.dateHelper.toStringPtBr(\r\n\t\t\t\t\t\t\t\tthis.model.dataInicio\r\n\t\t\t\t\t\t\t),\r\n\t\t\t\t\t\t\tdataFim: this.dateHelper.toStringPtBr(\r\n\t\t\t\t\t\t\t\tthis.model.dataFim\r\n\t\t\t\t\t\t\t),\r\n\t\t\t\t\t\t\tindicadorId: this.model.indicadorId,\r\n\t\t\t\t\t\t\tpeaId: this.model.peaId,\r\n\t\t\t\t\t\t\tpea: this.model.pea,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tthis.atualizarListaUgs(this.model.paaUnidadeGestora);\r\n\r\n\t\t\t\t\t\tthis.coordenacoesDataSource =\r\n\t\t\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\t\t\tthis.model.paaCoordenacao\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\tthis.coordenacoesDataSource._updateChangeSubscription();\r\n\t\t\t\t\t\tthis.coordenacaoSemDados =\r\n\t\t\t\t\t\t\tthis.coordenacoesDataSource.filteredData.length ===\r\n\t\t\t\t\t\t\t0;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.submit = false;\r\n\t\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t\t\tthis.router.navigate([\"/paa\"]);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t} catch (err) {\r\n\t\t\tthis.submit = false;\r\n\t\t\tthis.exibirMensagemErro(err.mensagem?.descricao);\r\n\t\t\tthis.router.navigate([\"/paa\"]);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async exibirModalUg() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.unidadeGestoraService.obterAtivos();\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\t\tdialogConfig.width = \"650px\";\r\n\t\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\tconst unidadesAdicionadas = [] as IUnidadeGestoraModel[];\r\n\r\n\t\t\t\tlet dados;\r\n\t\t\t\tif (this.model.paaUnidadeGestora !== undefined) {\r\n\t\t\t\t\tthis.model.paaUnidadeGestora.forEach((d) =>\r\n\t\t\t\t\t\tunidadesAdicionadas.push(d.unidadeGestora)\r\n\t\t\t\t\t);\r\n\t\t\t\t dados = res.dados.filter(\r\n\t\t\t\t\t\t(d) => !unidadesAdicionadas.some((x) => d.id === x.id)\r\n\t\t\t\t\t);\r\n\t\t\t\t} else {\r\n\t\t\t\t dados = res.dados;\r\n\t\t\t\t\tthis.model.paaUnidadeGestora =\r\n\t\t\t\t\t\t[] as IPaaUnidadeGestoraModel[];\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tdialogConfig.data = {dados: dados, modoSelecaoMultiplo: true};\r\n\t\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t\t\tModalSelecionarUGComponent,\r\n\t\t\t\t\tdialogConfig\r\n\t\t\t\t);\r\n\t\t\t\t\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\t\tif (Array.isArray(data)) {\r\n\t\t\t\t\t\t\tlet unidadeSelecionada =\r\n\t\t\t\t\t\t\t\t[] as IPaaUnidadeGestoraModel[];\r\n\t\t\t\t\t\t\tunidadeSelecionada = data.map(\r\n\t\t\t\t\t\t\t\t(d) =>\r\n\t\t\t\t\t\t\t\t\t({\r\n\t\t\t\t\t\t\t\t\t\tunidadeGestoraId: d.id,\r\n\t\t\t\t\t\t\t\t\t\tunidadeGestora: d,\r\n\t\t\t\t\t\t\t\t\t} as IPaaUnidadeGestoraModel)\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tunidadeSelecionada.forEach((x) =>\r\n\t\t\t\t\t\t\t\tthis.model.paaUnidadeGestora.push(x)\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tlet unidadeSelecionada =\r\n\t\t\t\t\t\t\t\t{} as IPaaUnidadeGestoraModel;\r\n\t\t\t\t\t\t\tunidadeSelecionada.unidadeGestora = data;\r\n\t\t\t\t\t\t\tunidadeSelecionada.unidadeGestoraId = data.id;\r\n\t\t\t\t\t\t\tthis.model.paaUnidadeGestora.push(\r\n\t\t\t\t\t\t\t\tunidadeSelecionada\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.atualizarListaUgs(this.model.paaUnidadeGestora);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic excluirCoordenacao(ind: number) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: \"Excluir Coordenação\",\r\n\t\t\ttext: \"Deseja realmente excluir a informação?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then((resConfirm) => {\r\n\t\t\tif (resConfirm.isConfirmed) {\r\n\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\tthis.coordenacoesDataSource.data.splice(ind, 1);\r\n\t\t\t\tthis.coordenacoesDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.coordenacaoSemDados =\r\n\t\t\t\t\tthis.coordenacoesDataSource.filteredData.length === 0;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic async exibirModalCoordenacoes() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.coordenacaoService.obter(\"\", true);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\t\tdialogConfig.width = \"650px\";\r\n\t\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\tconst coordenacoesAdicionadas = [] as ICoordenacaoModel[];\r\n\t\t\t\tif (this.model.paaCoordenacao !== undefined) {\r\n\t\t\t\t\tthis.model.paaCoordenacao.forEach((d) =>\r\n\t\t\t\t\t\tcoordenacoesAdicionadas.push(d.coordenacao)\r\n\t\t\t\t\t);\r\n\t\t\t\t\tdialogConfig.data = res.dados.filter(\r\n\t\t\t\t\t\t(d) =>\r\n\t\t\t\t\t\t\t!coordenacoesAdicionadas.some((x) => d.id === x.id)\r\n\t\t\t\t\t);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tdialogConfig.data = res.dados;\r\n\t\t\t\t\tthis.model.paaCoordenacao = [] as IPaaCoordenacaoModel[];\r\n\t\t\t\t}\r\n\t\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t\t\tModalSelecionarCoordenacoesComponent,\r\n\t\t\t\t\tdialogConfig\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\t\tif (Array.isArray(data)) {\r\n\t\t\t\t\t\t\tlet coordenacaoSelecionada =\r\n\t\t\t\t\t\t\t\t[] as IPaaCoordenacaoModel[];\r\n\t\t\t\t\t\t\tcoordenacaoSelecionada = data.map(\r\n\t\t\t\t\t\t\t\t(d) =>\r\n\t\t\t\t\t\t\t\t\t({\r\n\t\t\t\t\t\t\t\t\t\tcoordenacaoId: d.id,\r\n\t\t\t\t\t\t\t\t\t\tcoordenacao: d,\r\n\t\t\t\t\t\t\t\t\t} as IPaaCoordenacaoModel)\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tcoordenacaoSelecionada.forEach((x) =>\r\n\t\t\t\t\t\t\t\tthis.model.paaCoordenacao.push(x)\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tthis.coordenacoesDataSource =\r\n\t\t\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\t\t\tthis.model.paaCoordenacao\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\tthis.coordenacoesDataSource._updateChangeSubscription();\r\n\t\t\t\t\t\tthis.coordenacaoSemDados =\r\n\t\t\t\t\t\t\tthis.coordenacoesDataSource.filteredData.length ===\r\n\t\t\t\t\t\t\t0;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic excluirUg(ind: number) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: \"Excluir Unidade Gestora\",\r\n\t\t\ttext: \"Deseja realmente excluir a informação?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then((resConfirm) => {\r\n\t\t\tif (resConfirm.isConfirmed) {\r\n\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\tvar ug = this.ugDataSource.data.splice(ind, 1);\r\n\t\t\t\tvar indice = this.model.paaUnidadeGestora.indexOf(ug[0]);\r\n\t\t\t\tthis.model.paaUnidadeGestora.splice(indice, 1);\r\n\r\n\t\t\t\tthis.atualizarListaUgs(this.ugDataSource.data);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic async exibirModalIndicador() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.indicadorService.obter(\"\", true);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tres.dados.sort((a, b) => a[\"nome\"].localeCompare(b[\"nome\"]));\r\n\t\t\t\tconst modal = this.exibirModal(\r\n\t\t\t\t\t\"Selecionar Indicador\",\r\n\t\t\t\t\tres.dados\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\t\tthis.model.indicador = data;\r\n\t\t\t\t\t\tthis.model.indicadorId = data.id;\r\n\t\t\t\t\t\tthis.form1.controls[\"indicadorId\"].setValue(data.id);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async exibirModalPeaReferencia() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.peaService.obter(\"\", true, false, null);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tres.dados.resultado.sort((a, b) =>\r\n\t\t\t\t\ta[\"nome\"].localeCompare(b[\"nome\"])\r\n\t\t\t\t);\r\n\t\t\t\tconst modal = this.exibirModal(\r\n\t\t\t\t\t\"Selecionar Pea\",\r\n\t\t\t\t\tres.dados.resultado\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\t\tthis.model.pea = data;\r\n\t\t\t\t\t\tthis.model.peaId = data.id;\r\n\t\t\t\t\t\tthis.model.pea.nome = data.nome;\r\n\t\t\t\t\t\tthis.form1.controls[\"peaId\"].setValue(data.id);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async exibirModalPeriodo() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.periodoService.obter(\"\", true);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tres.dados.sort(\r\n\t\t\t\t\t(d2, d1) =>\r\n\t\t\t\t\t\tnew Date(d1.dataInicio).getTime() -\r\n\t\t\t\t\t\tnew Date(d2.dataInicio).getTime()\r\n\t\t\t\t);\r\n\t\t\t\tconst modal = this.exibirModal(\"Selecionar Periodo\", res.dados);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\t\tthis.model.periodo = data;\r\n\t\t\t\t\t\tthis.model.periodoId = data.id;\r\n\t\t\t\t\t\tthis.form1.controls[\"periodoId\"].setValue(data.id);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async salvarDados(salvarEFechar: boolean) {\r\n\t\tthis.submit = true;\r\n\t\tthis.abaEmitter.next(this.submit);\r\n\r\n\t\tif (this.form1.invalid) {\r\n\t\t\tthis.exibirMensagemErro(\"Formulário invalido!\");\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// if(!this.datasValidas()){\r\n\t\t// \tthis.exibirMensagemErro('Formulário invalido!');\r\n\t\t// \treturn;\r\n\t\t// }\r\n\r\n\t\tif (\r\n\t\t\tthis.ugDataSource.data.length === 0 ||\r\n\t\t\tthis.coordenacoesDataSource.data.length === 0\r\n\t\t) {\r\n\t\t\tthis.exibirMensagemErro(\r\n\t\t\t\t\"Informe alguma Unidade Gestora e alguma Coordenação\"\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.atualizarModel(this.form1.value);\r\n\r\n\t\ttry {\r\n\t\t\tlet res = await this.atualizarInserirAbaDadosBasicos();\r\n\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tif (\r\n\t\t\t\t\tres.resultadoValidacao &&\r\n\t\t\t\t\tres.resultadoValidacao.length > 0\r\n\t\t\t\t) {\r\n\t\t\t\t\tthis.exibirMensagemAlerta(\r\n\t\t\t\t\t\tthis.montarMensagensValidacao(res),\r\n\t\t\t\t\t\ttrue\r\n\t\t\t\t\t);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemSucesso(res.mensagem.descricao);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.salvarDadosPendente = false;\r\n\t\t\t\tif (\r\n\t\t\t\t\tres.dados?.pendencias?.pendencias &&\r\n\t\t\t\t\tres.dados?.pendencias?.pendencias.length > 0\r\n\t\t\t\t)\r\n\t\t\t\t\tthis.showPendencias(res?.dados?.pendencias?.pendencias);\r\n\t\t\t} else {\r\n\t\t\t\tlet validacao = this.montarMensagensValidacao(res);\r\n\t\t\t\tthis.exibirMensagemErro(validacao, true);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tif (salvarEFechar == true) this.router.navigate([\"/paa\"]);\r\n\t\t\telse {\r\n\t\t\t\tif (this.novoRegistro) {\r\n\t\t\t\t\tthis.router.navigate([`/paa/${res.dados.id}`]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tawait this.buscar();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err?.mensagem?.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async atualizarInserirAbaDadosBasicos() {\r\n\t\tObject.assign(this.model, this.form1.value);\r\n\t\tthis.model.paaUnidadeGestora = this.ugDataSource.data;\r\n\t\tthis.model.paaCoordenacao = this.coordenacoesDataSource.data;\r\n\r\n\t\tif (this.model.id > 0) {\r\n\t\t\treturn await this.paaDadosBasicosService.atualizarDadosBasicos(\r\n\t\t\t\tthis.model\r\n\t\t\t);\r\n\t\t} else {\r\n\t\t\treturn await this.paaDadosBasicosService.inserir(this.model);\r\n\t\t}\r\n\t}\r\n\r\n\tprivate datasValidas(): boolean {\r\n\t\tlet retorno = true;\r\n\r\n\t\tlet valueDtInicio = this.form1.controls[\"dataInicio\"].value;\r\n\t\tlet valueDtFim = this.form1.controls[\"dataFim\"].value;\r\n\r\n\t\tif (!valueDtInicio) {\r\n\t\t\tthis.msgDataInicio = \"Campo obrigatório\";\r\n\t\t\tretorno = false;\r\n\t\t}\r\n\r\n\t\tif (!valueDtFim) {\r\n\t\t\tthis.msgDataFim = \"Campo obrigatório\";\r\n\t\t\tretorno = false;\r\n\t\t}\r\n\r\n\t\tif (retorno == false) return retorno;\r\n\r\n\t\tlet dtInicio = new Date(valueDtInicio);\r\n\t\tlet dtFim = new Date(valueDtFim);\r\n\r\n\t\tif (dtInicio.getFullYear() != dtFim.getFullYear()) {\r\n\t\t\tthis.msgDataInicio = \"Anos não podem ser diferentes.\";\r\n\t\t\tretorno = false;\r\n\t\t}\r\n\r\n\t\tif ((retorno = false)) return retorno;\r\n\r\n\t\tif (dtInicio.getDay() != 1 || dtInicio.getMonth() != 1) {\r\n\t\t\tthis.msgDataInicio = \"Data início diferente de 01/01.\";\r\n\t\t\tretorno = false;\r\n\t\t}\r\n\r\n\t\tif (dtFim.getDay() != 31 || dtInicio.getMonth() != 12) {\r\n\t\t\tthis.msgDataInicio = \"Data fim diferente de 31/12.\";\r\n\t\t\tretorno = false;\r\n\t\t}\r\n\r\n\t\treturn retorno;\r\n\t}\r\n\r\n\t//##### INTERNAL\r\n\tpublic atualizarListaUgs(paaUnidadeGestora: IPaaUnidadeGestoraModel[] ) {\t\r\n\t\t\tconst listaUgs = Array.isArray(paaUnidadeGestora)\r\n\t\t\t? paaUnidadeGestora.map((_) => ({\r\n\t\t\t\t..._,\r\n\t\t\t\tnome: `${_.unidadeGestora.sigla} - ${_.unidadeGestora.nome}`,\r\n\t\t\t}))\r\n\t\t\t: [];\r\n\t\t\tthis.ugDataSource.paginator = this.paginator;\r\n\t\t\tthis.ugDataSource.sort = this.sort;\r\n\t\t\tthis.ugDataSource.filterPredicate = (\r\n\t\t\t\tdata: { nome: string },\r\n\t\t\t\tfilterValue: string\r\n\t\t\t) => {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t(data.nome || \"\").trim().toLowerCase().indexOf(filterValue) !==\r\n\t\t\t\t\t-1\r\n\t\t\t\t);\r\n\t\t\t};\r\n\t\t\tlistaUgs.sort((a, b) => a[\"nome\"].localeCompare(b[\"nome\"]));\r\n\t\t\tthis.ugDataSource = new MatTableDataSource(\r\n\t\t\t\tlistaUgs\r\n\t\t\t);\r\n\t\t\tthis.ugDataSource.sortingDataAccessor = defaultDataAcessor;\r\n\t\t\tthis.ugDataSource._updateChangeSubscription();\r\n\t\t\tthis.ugSemDados = this.ugDataSource.filteredData.length === 0;\t\t\r\n\t}\r\n\t\r\n\r\n\tprivate atualizarModel(values: any) {\r\n\t\tObject.assign(this.model, values);\r\n\t}\r\n\r\n\tpublic cancelar() {\r\n\t\tthis.router.navigate([\"/paa\"]);\r\n\t}\r\n\r\n\tpublic desabilitaDataInicioFim() {\r\n\t\tconst urlAtual = this.router.url;\r\n\r\n\t\tif (!urlAtual.includes(\"novo\")) {\r\n\t\t\tthis.form1.controls[\"dataInicio\"].disable();\r\n\t\t\tthis.form1.controls[\"dataFim\"].disable();\r\n\t\t}\r\n\t}\r\n\r\n\t exibirBotoesPaacEspecial(): boolean{\r\n\t\treturn this.model\r\n\t\t\t\t&& this.model.origem\r\n\t\t\t\t&& this.model.origem.codigo\r\n\t\t\t\t&& this.model.origem.codigo == 2\r\n\t\t\t\t&& !this.visualizar && !this.paaHomologado;\r\n\t }\r\n\t \r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Unidade(s) Gestora(s)\r\n \r\n \r\n {{ element.nome }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Adicionar\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n Nenhuma Unidade Gestora\r\n selecionada\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Coordenação(ões)\r\n \r\n \r\n {{\r\n element.coordenacao\r\n .sigla\r\n }}\r\n -\r\n {{\r\n element.coordenacao\r\n .nome\r\n }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Adicionar\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n Nenhuma Coordenação selecionada\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n\r\n \r\n Fechar\r\n \r\n
\r\n
","import { Component, OnInit, ViewChild } from \"@angular/core\";\r\nimport { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { MatDialog,\tMatDialogConfig } from \"@angular/material/dialog\";\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport Swal from 'sweetalert2';\r\nimport { Location } from '@angular/common';\r\nimport { formatDate } from '@angular/common';\r\n\r\n\r\n//COMPONENTS\r\nimport { ModalConfirmarReativacaoDistribuicaoComponent } from \"../modal-confirmar-reativacao-distribuicao/modal-confirmar-reativacao-distribuicao.component\";\r\nimport { ModalConfirmarInativacaoComponent } from \"src/app/shared/components/modal-confirmar-inativacao/modal-confirmar-inativacao.component\";\r\nimport { ModalSelecionarColunasComponent } from \"../modal-selecionar-colunas/modal-selecionar-colunas.component\";\r\nimport { ModalGraficoDistribuicaoComponent } from \"../modal-grafico-distribuicao/modal-grafico-distribuicao.component\";\r\nimport { ModalSelecionarUGComponent } from \"../modal-selecionar-ug/modal-selecionar-ug.component\";\r\nimport { ModalAlterarTipoAuditoriaComponent } from \"../modal-alterar-tipo-auditoria/modal-alterar-tipo-auditoria.component\";\r\nimport { ModalAlterarTipoEnfaseComponent } from \"../modal-alterar-tipo-enfase/modal-alterar-tipo-enfase.component\";\r\n\r\n//MODELS\r\nimport { IPaaAbaDistribuicaoModel } from \"src/app/models/paa-aba-distribuicao.model\";\r\nimport { IPaaDistribuicaoModel } from \"src/app/models/paa-distribuicao.model\";\r\nimport { IPaaInformacoesBasicasModel } from \"src/app/models/paa-informacoes-basicas.model\";\r\nimport { FiltroModel } from \"src/app/models/filtro.model\";\r\n\r\n\r\n//SERVICES\r\nimport { PaaService } from \"src/app/services/paa.service\";\r\nimport { PaaAbaDistribuicaoService } from \"src/app/services/paa/paa-aba-distribuicao.service\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { IPaaDistribuicaoColunasModel } from \"src/app/models/paa-distribuicao-colunas.model\";\r\nimport { ITipoAuditoriaModel } from \"src/app/models/tipo-auditoria.model\";\r\nimport { ITipoEnfaseModel } from \"src/app/models/tipo-enfase.model\";\r\nimport { TipoAuditoriaService } from \"src/app/services/tipo-auditoria.service\";\r\nimport { TipoEnfaseService } from \"src/app/services/tipo-enfase.service\";\r\nimport { UnidadeGestoraService } from \"src/app/services/unidade-gestora.service\";\r\n\r\n\r\n\r\n\r\n@Component({\r\n\tselector: \"app-paa-aba-distribuicao\",\r\n\ttemplateUrl: \"./paa-aba-distribuicao.component.html\",\r\n\tstyleUrls: [\"./paa-aba-distribuicao.component.scss\"],\r\n})\r\nexport class PaaAbaDistribuicaoComponent extends BaseFormComponent implements OnInit{\r\n \r\n public model = {} as IPaaAbaDistribuicaoModel;\r\n\r\n public distribuicaoDataSource = new MatTableDataSource([]);\r\n public distribuicaoNaoContempladosDataSource = new MatTableDataSource([]);\r\n public distribuicaoNaoContempladosPersonalizadoDataSource = new MatTableDataSource([]);\r\n public distribuicaoPersonalizadoDataSource = new MatTableDataSource([]);\r\n public paaInformacoesBasicas: IPaaInformacoesBasicasModel = {} as IPaaInformacoesBasicasModel;\r\n public tiposAuditorias: ITipoAuditoriaModel[];\r\n public tiposEnfase: ITipoEnfaseModel[];\r\n public filtroEnfase = {} as FiltroModel;\r\n \r\n public columnsDistribuicaoOriginais1 = ['unidadeGestora', 'valorRiscoResidual'];\r\n public columnsDistribuicaoOriginais2 = ['tipoAuditoria','tipoEnfase', 'actions', 'ativo'];\r\n public columnsDistribuicao = [];\r\n public colunasAdicionarDistribuicao = [];\r\n public columnsDistribuicaoPersonalizado = [];\r\n\r\n public distribuicaoNaoContempladosSemDados = true;\r\n public distribuicaoSemDados = true;\r\n public historico:boolean;\r\n public paaHomologado = true;\r\n public distruibuicaoSemDados = true;\r\n public distribuicaoNaoContempladosSemDadosPersonalizado = true;\r\n public distribuicaoSemDadosPersonalizado = true;\r\n public isOrigemPlanejada:boolean;\r\n\r\n @ViewChild('tabela3') public tabela3: MatSort;\r\n\r\n constructor(route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private _location: Location,\r\n private paaService: PaaService,\r\n private paaAbaDistribuicaoService: PaaAbaDistribuicaoService,\r\n private tipoAuditoriaService: TipoAuditoriaService,\r\n private tipoEnfaseService: TipoEnfaseService,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n public matDialog: MatDialog\r\n ){super (route, toastr, router, localeService, matDialog);}\r\n\r\n\r\n\r\n\r\n \r\n //METHODS\r\n\r\n async ngOnInit() {\r\n \r\n //TODO: VERIFICAR PQ A VARIÁVEL VISUALIZAR ESTÁ SENDO RESETADA\r\n this.visualizar = this.route.routeConfig.path?.includes(\"visualizar\");\r\n\r\n await this.obterInformacoesBasicasPaa();\r\n await this.obterTiposAuditorias();\r\n await this.obterTiposEnfase();\r\n this.obterPainelDistribuicao()\r\n\r\n }\r\n\r\n public async obterInformacoesBasicasPaa(){\r\n this.paaService.buscarInformacoesBasicas(this.id)\r\n .then((res)=> {\r\n if(res.sucesso){\r\n \r\n this.paaInformacoesBasicas = res.dados;\r\n \r\n this.paaHomologado = this.paaInformacoesBasicas.idSituacao == 4;\r\n this.isOrigemPlanejada = this.paaInformacoesBasicas.origem == 1;\r\n }\r\n })\r\n }\r\n\r\n \r\n\r\n public async obterPainelDistribuicao() { \r\n return this.paaAbaDistribuicaoService.obterPainelDistribuicao(this.id).then((res) => { \r\n this.colunasAdicionarDistribuicao = [];\r\n this.columnsDistribuicao = [];\r\n this.columnsDistribuicao = this.columnsDistribuicao.concat(\r\n Object.assign([], this.columnsDistribuicaoOriginais1)\r\n );\r\n \r\n var colunasNomes: any = {};\r\n if (res && res.dados[0] && res.dados[0].colunasValores) {\r\n res.dados[0].colunasValores.forEach((element) => {\r\n const nomeColuna = this.obterNomeColuna(element);\r\n \r\n colunasNomes[nomeColuna.toString()] = nomeColuna;\r\n \r\n this.columnsDistribuicao.push(nomeColuna);\r\n if (!this.colunasAdicionarDistribuicao.some((c) => c === nomeColuna)) {\r\n this.colunasAdicionarDistribuicao.push(nomeColuna);\r\n }\r\n });\r\n }\r\n \r\n this.columnsDistribuicao = this.columnsDistribuicao.concat(\r\n Object.assign([], this.columnsDistribuicaoOriginais2)\r\n );\r\n var dados = res.dados\r\n .map((item) => {\r\n if (item.tipoAuditoria?.id == 0) item.tipoAuditoriaId = null;\r\n item.unidadeGestora.sigla = item.unidadeGestora.sigla.toUpperCase();\r\n return item;\r\n });\r\n \r\n this.distribuicaoDataSource = new MatTableDataSource(dados);\r\n this.distribuicaoDataSource._updateChangeSubscription();\r\n \r\n\r\n this.distribuicaoDataSource.sortingDataAccessor = (item: IPaaDistribuicaoModel, property) => {\r\n switch (property) {\r\n case 'unidadeGestora':\r\n return item.unidadeGestora.sigla;\r\n \r\n case 'valorRiscoRiscoresidual':\r\n return item.valorRiscoResidual;\r\n \r\n case colunasNomes[property]:\r\n return parseFloat(\r\n this.obterValorColuna(item, property).replace(/[.]/g, '').replace(/[,]/g, '.') == ''\r\n ? '0'\r\n : this.obterValorColuna(item, property).replace(/[.]/g, '').replace(/[,]/g, '.')\r\n );\r\n \r\n case 'ativo':\r\n return item.ativo.toString();\r\n \r\n case 'tipoAuditoria':\r\n return item.tipoAuditoria.nome;\r\n \r\n default:\r\n return item[property];\r\n }\r\n };\r\n \r\n this.distribuicaoDataSource.sort = this.tabela3;\r\n this.distruibuicaoSemDados = this.distribuicaoDataSource.filteredData.length === 0;\r\n \r\n res.dados.forEach((item) => {\r\n this.obterHistoricoDistribuicao(item);\r\n this.obterHistoricoAuditoria(item);\r\n });\r\n });\r\n }\r\n \r\n \r\n \r\n \r\n \r\n \r\n public obterValorColuna(\r\n element: IPaaDistribuicaoModel,\r\n coluna: string\r\n ): string {\r\n if (!element || !coluna) {\r\n return '';\r\n }\r\n \r\n const result = element.colunasValores.find(\r\n (x) => this.obterNomeColuna(x) === coluna\r\n );\r\n \r\n if (!result || result.valorNumerico == null) {\r\n return '';\r\n }\r\n \r\n return result.valorNumerico.toFixed(2);\r\n }\r\n \r\n private obterNomeColuna(element: IPaaDistribuicaoColunasModel) {\r\n return element.nomeIndicador && element.nomeIndicador !== ''\r\n ? element.nomeIndicador + ' / ' + element.nomeCriterio\r\n : element.nomeCriterio;\r\n }\r\n \r\n public reativarDistribuicao(element: IPaaDistribuicaoModel) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {titulo: \"Tem certeza que deseja reativar esse registro?\"};\r\n const modal = this.matDialog.open(\r\n ModalConfirmarReativacaoDistribuicaoComponent,\r\n dialogConfig\r\n );\r\n \r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n \r\n this.paaAbaDistribuicaoService\r\n .AlterarStatusDistribuicao(element.id, !element.ativo, data)\r\n .then((resAssociar) => {\r\n if (resAssociar.sucesso) {\r\n this.exibirMensagemSucesso('Status alterado com sucesso');\r\n } else {\r\n this.exibirMensagemAlerta(resAssociar.mensagem.descricao);\r\n }\r\n })\r\n .catch((errAssociar) => {\r\n this.exibirMensagemErro(errAssociar.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.obterPainelDistribuicao();\r\n });\r\n }\r\n });\r\n }\r\n \r\n public inativarDistribuicao(element: IPaaDistribuicaoModel) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = null;\r\n const modal = this.matDialog.open(\r\n ModalConfirmarInativacaoComponent,\r\n dialogConfig\r\n );\r\n \r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n \r\n this.paaAbaDistribuicaoService\r\n .AlterarStatusDistribuicao(element.id, false, data)\r\n .then((resAssociar) => {\r\n if (resAssociar.sucesso) {\r\n this.exibirMensagemSucesso('Status alterado com sucesso');\r\n } else {\r\n this.exibirMensagemAlerta(resAssociar.mensagem.descricao);\r\n }\r\n })\r\n .catch((errAssociar) => {\r\n this.exibirMensagemErro(errAssociar.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n this.obterPainelDistribuicao();\r\n });\r\n }\r\n });\r\n }\r\n\r\n \r\n public agrupadorCapacidade(index: number, item: any): boolean {\r\n return item.grupo;\r\n }\r\n\r\n public obterHistoricoDistribuicao(\r\n element: IPaaDistribuicaoModel\r\n ): Promise {\r\n return this.paaAbaDistribuicaoService\r\n .obterHistoricoDistribuicao(this.id, element.unidadeGestoraId)\r\n .then((historico) => {\r\n if (historico.sucesso) {\r\n let tooltipSituacao = '';\r\n \r\n if (historico.dados.length > 0) { \r\n historico.dados.forEach((item) => {\r\n element.historicoSituacao = true;\r\n if (item.acao == 'Inativação' || item.acao == \"Reativação\") {\r\n tooltipSituacao += `${item.usuario} - ${formatDate(\r\n item.data,\r\n 'dd/MM/yyyy',\r\n 'pt-BR'\r\n )}, Ação: ${item.acao}, Justificativa: ${item.justificativa}\\n\\n`;\r\n }\r\n });\r\n element.tooltipHistoricoSituacao = tooltipSituacao;\r\n element.historico = true;\r\n } else {\r\n tooltipSituacao += 'Nenhum dado encontrado.';\r\n element.historico = false;\r\n }\r\n \r\n \r\n \r\n } else {\r\n this.exibirMensagemErro(historico.mensagem.descricao);\r\n }\r\n });\r\n }\r\n public obterHistoricoAuditoria(\r\n element: IPaaDistribuicaoModel\r\n ): Promise {\r\n return this.paaAbaDistribuicaoService\r\n .obterHistoricoAuditoria(this.id, element.unidadeGestoraId, element.auditoriaObrigatoria)\r\n .then((historico) => {\r\n if (historico.sucesso) {\r\n let tooltipAuditoria = '', tooltipTipoEnfase = '';\r\n \r\n if (historico.dados.length > 0) {\r\n historico.dados.forEach((item) => {\r\n if (item.acao.toLowerCase().includes('auditoria')) {\r\n element.historicoTipoAuditoria = true;\r\n tooltipAuditoria = `${item.usuario} - ${formatDate(\r\n item.data,\r\n 'dd/MM/yyyy',\r\n 'pt-BR')}, Justificativa: ${item.justificativa}\\n\\n`;\r\n }\r\n if (item.acao.toLowerCase().includes('ênfase')) {\r\n element.historicoTipoEnfase = true;\r\n \r\n if (item.justificativa && item.justificativa.trim().length > 0) {\r\n tooltipTipoEnfase = `${item.usuario} - ${formatDate(\r\n item.data,\r\n 'dd/MM/yyyy',\r\n 'pt-BR')}, Justificativa: ${item.justificativa}\\n\\n`;\r\n }\r\n }\r\n });\r\n element.tooltipHistoricoAuditoria = tooltipAuditoria;\r\n element.tooltipHistoricoEnfase = tooltipTipoEnfase;\r\n }\r\n \r\n } else {\r\n this.exibirMensagemErro(historico.mensagem.descricao);\r\n }\r\n });\r\n }\r\n \r\n\r\n\r\n public async obterTiposAuditorias() {\r\n return this.tipoAuditoriaService.obter('', true).then((res) => {\r\n this.tiposAuditorias = res.dados;\r\n });\r\n }\r\n \r\n public async obterTiposEnfase(){\r\n this.filtroEnfase.itensPorPagina = 99;\r\n this.filtroEnfase.ativo = true;\r\n return this.tipoEnfaseService.obter(this.filtroEnfase).then((res) =>\r\n {\r\n this.tiposEnfase = res?.dados.resultado;\r\n })\r\n }\r\n \r\n\r\n public alterarTipoAuditoria(element: IPaaDistribuicaoModel) {\r\n const dialogConfigJustificativa = new MatDialogConfig();\r\n dialogConfigJustificativa.id = 'modal-component';\r\n dialogConfigJustificativa.width = '650px';\r\n dialogConfigJustificativa.hasBackdrop = true;\r\n dialogConfigJustificativa.disableClose = true;\r\n dialogConfigJustificativa.data = {titulo: \"Deseja realmente alterar o tipo de auditoria?\"};\r\n const modalJustificativa = this.matDialog.open(\r\n ModalAlterarTipoAuditoriaComponent,\r\n dialogConfigJustificativa\r\n );\r\n modalJustificativa.afterClosed().subscribe((item) => {\r\n if(item){\r\n this.paaAbaDistribuicaoService.ValidarTipoAuditoria(element.id, element.tipoAuditoriaId).then((res) => {\r\n if (res == null) {\r\n this.paaAbaDistribuicaoService\r\n .AlterartipoAuditoriaDistribuicao(element.id, element.tipoAuditoriaId, item)\r\n .then((resAssociar) => {\r\n if (resAssociar.sucesso) {\r\n this.exibirMensagemSucesso(resAssociar.mensagem.descricao);\r\n this.obterPainelDistribuicao();\r\n } else {\r\n this.exibirMensagemErro(resAssociar.mensagem.descricao);\r\n }\r\n })\r\n .catch((errAssociar) => {\r\n this.exibirMensagemErro(errAssociar.mensagem.descricao);\r\n });\r\n }\r\n if (res.sucesso) {\r\n Swal.fire({\r\n title: 'Tipo de auditoria',\r\n text: res.mensagem.descricao,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(resConfirm => {\r\n if (resConfirm.isConfirmed) {\r\n this.paaAbaDistribuicaoService\r\n .AlterartipoAuditoriaDistribuicao(element.id, element.tipoAuditoriaId, item)\r\n .then((resAssociar) => {\r\n if (resAssociar.sucesso) {\r\n this.exibirMensagemSucesso(resAssociar.mensagem.descricao);\r\n } else {\r\n this.exibirMensagemErro(resAssociar.mensagem.descricao);\r\n }\r\n })\r\n .catch((errAssociar) => {\r\n this.exibirMensagemErro(errAssociar.mensagem.descricao);\r\n });\r\n }\r\n });\r\n }\r\n else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch((erro) => {\r\n this.exibirMensagemErro(erro.mensagem.descricao);\r\n })\r\n }\r\n });\r\n }\r\n\r\n public alterarTipoEnfase(element: IPaaDistribuicaoModel) {\r\n const dialogConfigJustificativaTipoEnfase = new MatDialogConfig();\r\n dialogConfigJustificativaTipoEnfase.id = 'modal-component';\r\n dialogConfigJustificativaTipoEnfase.width = '650px';\r\n dialogConfigJustificativaTipoEnfase.hasBackdrop = true;\r\n dialogConfigJustificativaTipoEnfase.disableClose = true;\r\n dialogConfigJustificativaTipoEnfase.data = {titulo: \"Deseja atribuir essa ênfase?\"};\r\n const modalJustificativaTipoEnfase = this.matDialog.open(\r\n ModalAlterarTipoEnfaseComponent,\r\n dialogConfigJustificativaTipoEnfase\r\n );\r\n \r\n modalJustificativaTipoEnfase.afterClosed().subscribe((item) => {\r\n if(item){\r\n this.paaAbaDistribuicaoService\r\n .AlterarTipoEnfaseDistribuicao(element.id, element.tipoEnfaseId, item)\r\n .then((resAssociar) => {\r\n if (resAssociar.sucesso) {\r\n this.obterPainelDistribuicao();\r\n this.exibirMensagemSucesso(resAssociar.mensagem.descricao);\r\n } else {\r\n this.exibirMensagemErro(resAssociar.mensagem.descricao);\r\n }\r\n })\r\n .catch((errAssociar) => {\r\n this.exibirMensagemErro(errAssociar.mensagem.descricao);\r\n });\r\n }\r\n \r\n })\r\n }\r\n\r\n\r\n public editarColunas() {\r\n\r\n this.paaAbaDistribuicaoService\r\n .obterPainelDistribuicaoColunas(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = res.dados;\r\n const modal = this.matDialog.open(\r\n ModalSelecionarColunasComponent,\r\n dialogConfig\r\n );\r\n \r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.paaService\r\n .AlterarSatusDistribuicaoColunas(data)\r\n .then((resAssociar) => {\r\n if (resAssociar.sucesso) {\r\n this.exibirMensagemSucesso('Colunas alteradas com sucesso');\r\n this.obterPainelDistribuicao();\r\n } else {\r\n this.exibirMensagemErro(resAssociar.mensagem.descricao);\r\n }\r\n })\r\n .catch((errAssociar) => {\r\n this.exibirMensagemErro(errAssociar.mensagem.descricao);\r\n });\r\n }\r\n });\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public visualizarGrafico() {\r\n\r\n this.paaService\r\n .obterGrafico(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n // dialogConfig.width = '650px';\r\n dialogConfig.maxHeight = '100%';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = res.dados;\r\n const modal = this.matDialog.open(\r\n ModalGraficoDistribuicaoComponent,\r\n dialogConfig\r\n );\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) =>\r\n this.exibirMensagemErro(err.mensagem.descricao)\r\n )\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/paa']);\r\n }\r\n\r\n //COMPUTEDS\r\n\r\n mostrarSelectUnidade(): boolean{\r\n return !this.visualizar && !this.paaHomologado;\r\n }\r\n\r\n mostrarTipoEnfase() : boolean{\r\n return !this.visualizar && !this.paaHomologado;\r\n }\r\n\r\n mostrarBotaoEditarColunas() : boolean{\r\n return !this.visualizar && !this.paaHomologado;\r\n }\r\n\r\n mostrarBotaoIncluirNovaUG(): boolean{\r\n \r\n return !this.visualizar && !this.paaHomologado && this.isOrigemPlanejada;\r\n }\r\n\r\n mostrarBotaoGrafico() : boolean{\r\n return !this.visualizar && !this.paaHomologado;\r\n }\r\n\r\n mostrarBotaoAtivarInativar(): boolean{\r\n if(!this.visualizar && this.isOrigemPlanejada){\r\n this.columnsDistribuicaoOriginais2 = ['tipoAuditoria','tipoEnfase', 'actions', 'ativo'];\r\n }else{\r\n this.columnsDistribuicaoOriginais2 = ['tipoAuditoria','tipoEnfase', 'ativo'];\r\n }\r\n \r\n return !this.visualizar && this.isOrigemPlanejada;\r\n }\r\n \r\n public subTotalCapacidade(index: number, item: any): boolean {\r\n return item.subTotal;\r\n }\r\n\r\n public async incluirUG() {\r\n\r\n this.unidadeGestoraService.obter({ pagina: 1, itensPorPagina: 10000, ativo: true } as FiltroModel)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.maxHeight = '80vh';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n \r\n let dados = res.dados.resultado.filter(\r\n (_) => !this.distribuicaoDataSource.data.find((d) => _.id === d.id)\r\n );\r\n dialogConfig.data = {dados: dados, modoSelecaoMultiplo: false};\r\n const modal = this.matDialog.open(\r\n ModalSelecionarUGComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe(async (data) => {\r\n const dialogConfigJustificativa = new MatDialogConfig();\r\n dialogConfigJustificativa.id = 'modal-component';\r\n dialogConfigJustificativa.width = '650px';\r\n dialogConfigJustificativa.hasBackdrop = true;\r\n dialogConfigJustificativa.disableClose = true;\r\n dialogConfigJustificativa.data = {titulo: \"Tem certeza que deseja incluir a UG?\"};\r\n const modalJustificativa = this.matDialog.open(\r\n ModalConfirmarReativacaoDistribuicaoComponent,\r\n dialogConfig\r\n );\r\n\r\n modalJustificativa.afterClosed().subscribe((item) => {\r\n if (data && item) {\r\n const distribuicao = {} as IPaaDistribuicaoModel;\r\n distribuicao.ativo = true;\r\n distribuicao.paaId = this.id;\r\n distribuicao.unidadeGestoraId = data.id;\r\n distribuicao.manual = true;\r\n distribuicao.justificativa = item;\r\n const verificarDuplicidade = this.verificarDuplicidadeUG(\r\n distribuicao.paaId,\r\n distribuicao.unidadeGestoraId\r\n );\r\n\r\n if (verificarDuplicidade) {\r\n (async () => {\r\n const result = await this.paaService.adicionarDistribuicao(distribuicao);\r\n try {\r\n if (result.sucesso) {\r\n this.exibirMensagemSucesso('Unidade Gerencial adicionada com sucesso');\r\n this.obterPainelDistribuicao();\r\n } else {\r\n this.exibirMensagemErro(result.mensagem.descricao);\r\n }\r\n } catch (error) {\r\n this.exibirMensagemErro(error.mensagem.descricao);\r\n } finally {\r\n this.obterPainelDistribuicao();\r\n }\r\n })()\r\n } else {\r\n this.exibirMensagemErro('Essa UG já está incluida');\r\n }\r\n }\r\n });\r\n });\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public async verificarDuplicidadeUG(\r\n distribuicao: number,\r\n unidadeGestoraId: number\r\n ) {\r\n const res = await this.paaService.obterPorId(distribuicao);\r\n if (!res.dados.paaUnidadeGestora || res.dados.paaUnidadeGestora.length <= 0) return true;\r\n\r\n const duplicada = res.dados.paaUnidadeGestora?.filter(\r\n (_) => _.unidadeGestoraId == unidadeGestoraId\r\n );\r\n\r\n if (duplicada?.length == 0) {\r\n return true;\r\n }\r\n \r\n var obrigatoria = duplicada?.filter(\r\n (_) => _.unidadeGestora.auditoriaObrigatoria == true\r\n );\r\n if (obrigatoria?.length > 0 && obrigatoria?.length < 2) {\r\n return true;\r\n }\r\n\r\n return false;\r\n \r\n\r\n }\r\n \r\n isRowEmpty(row: any): boolean {\r\n return row.valorRiscoResidual === 0 || row.valorRiscoResidual === undefined && !row.colunasValores.some((cv: any) => cv.valorNumerico != null);\r\n}\r\n\r\n \r\n\r\n}","
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Sigla\r\n \r\n \r\n {{\r\n element?.unidadeGestora\r\n ?.sigla\r\n }}\r\n Obrigatória\r\n \r\n \r\n\r\n \r\n \r\n Valor de Risco Residual\r\n \r\n \r\n \r\n {{\r\n element?.valorRiscoResidual\r\n }}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ coluna }}\r\n \r\n \r\n {{\r\n obterValorColuna(\r\n element,\r\n coluna\r\n )\r\n | number\r\n : \"1.2-2\"\r\n : \"pt-br\"\r\n }}\r\n \r\n \r\n
\r\n\r\n \r\n \r\n Valor de Risco\r\n \r\n \r\n {{\r\n element?.unidadeGestora\r\n ?.valorNumerico\r\n }}\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n Tipo de Auditoria\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n Tipo de Ênfase\r\n \r\n \r\n
\r\n \r\n \r\n \r\n {{ item.nome }}\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Situação\r\n \r\n \r\n Ativo\r\n Inativo\r\n \r\n \r\n \r\n\r\n \r\n \r\n Inativar/Reativar\r\n \r\n \r\n \r\n \r\n Reativar\r\n \r\n \r\n \r\n Inativar\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n Ano: {{ groupBy.ano }}\r\n
\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n Capacidade de Trabalho\r\n Total no Ano:\r\n \r\n \r\n \r\n \r\n \r\n {{\r\n groupBy.capacidadeTotalAno\r\n }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Não há dados no Painel de\r\n Distribuição\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n Exibir/Ocultar Colunas\r\n \r\n\r\n \r\n Incluir Nova UG\r\n \r\n\r\n \r\n \r\n\r\n \r\n Fechar\r\n \r\n
","//BASE\r\nimport { AfterViewInit, Component, Input, OnInit, ViewChild } from \"@angular/core\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { formatDate } from '@angular/common';\r\nimport { MatDialog,\tMatDialogConfig } from \"@angular/material/dialog\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport Swal from 'sweetalert2';\r\n\r\n\r\n//COMPONENTS\r\nimport { ModalImportarArquivoCriterioPaaComponent } from \"../modal-importar-arquivo-criterio-paa/modal-importar-arquivo-criterio-paa.component\";\r\nimport { ModalPreencherFormularioPaaComponent } from \"../modal-preencher-formulario/modal-preencher-formulario-paa.component\";\r\nimport { ModalRankingPrioridadeComponent } from \"../modal-ranking-prioridade/modal-ranking-prioridade.component\";\r\nimport { ModalEnviarQuestionarioCriterioPaaComponent } from \"../modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component\";\r\nimport { ModalVisualizarQuestionarioCriterioPaaComponent } from \"../modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component\";\r\nimport { ModalCadastrarIndicadorComponent } from \"../modal-cadastrar-indicador/modal-cadastrar-indicador.component\";\r\nimport { ModalCadastrarCriterioComponent } from \"../modal-cadastrar-criterio/modal-cadastrar-criterio.component\";\r\n\r\n//MODELS\r\nimport { IPaaAbaIndicesCriteriosModel } from 'src/app/models/paa-aba-indices-criterios.model';\r\nimport { IPaaAbaICIndicadorModel } from \"src/app/models/paa-aba-indices-criterios.model\";\r\nimport { IPaaAbaICCriterioModel } from \"src/app/models/paa-aba-indices-criterios.model\";\r\nimport { ITipoAuditoriaModel } from \"src/app/models/tipo-auditoria.model\";\r\nimport { FiltroModel } from \"src/app/models/filtro.model\";\r\nimport { IPaaDistribuicaoColunasModel } from \"src/app/models/paa-distribuicao-colunas.model\";\r\nimport { ITipoEnfaseModel } from \"src/app/models/tipo-enfase.model\";\r\nimport { IEnviarQuestionarioModel } from \"src/app/models/enviar-questionario.model\";\r\nimport { IPaaIndiceCriterioModel } from \"src/app/models/paa-indice-criterio.model\";\r\nimport { IPaaCriterioRespostaModel } from \"src/app/models/paa-criterio-resposta.model\";\r\nimport { IEnumModel } from \"src/app/models/enum.model\";\r\n\r\n\r\n\r\n//SERVICES\r\nimport { PaaAbaIndicesCriteriosService } from \"src/app/services/paa/paa-aba-indices-criterios.service\";\r\nimport { PaaService } from \"src/app/services/paa.service\";\r\nimport { IPaaDistribuicaoModel } from \"src/app/models/paa-distribuicao.model\";\r\nimport { TipoAuditoriaService } from \"src/app/services/tipo-auditoria.service\";\r\nimport { TipoEnfaseService } from \"src/app/services/tipo-enfase.service\";\r\nimport { CriterioService } from \"src/app/services/criterio.service\";\r\nimport { IndicadorService } from \"src/app/services/indicador.service\";\r\n\r\n@Component({\r\n\tselector: \"app-paa-aba-indices-criterios\",\r\n\ttemplateUrl: \"./paa-aba-indices-criterios.component.html\",\r\n\tstyleUrls: [\"./paa-aba-indices-criterios.component.scss\"],\r\n})\r\n\r\nexport class PaaAbaIndicesCriteriosComponent extends BaseFormComponent{\r\n\t\r\n\tpublic model = {} as IPaaAbaIndicesCriteriosModel;\r\n\tpublic aba = 0;\r\n\tpublic paaHomologado = true;\r\n\tpublic visualizarBotaoFormulario = false;\r\n\tpublic emAprovacao = false;\r\n\tpublic capacidadeSemDados = true;\r\n\tpublic distruibuicaoSemDados = true;\r\n\tpublic historico:boolean;\r\n\tpublic indicadoresDataSource = new MatTableDataSource([]);\r\n\tpublic distribuicaoDataSource = new MatTableDataSource([]);\r\n\tpublic capacidadeDataSource = new MatTableDataSource([]);\r\n\tpublic indicadoresDataSourceSemDados = true;\r\n\tpublic criteriosDataSource = new MatTableDataSource([]);\r\n\tpublic criteriosDataSourceSemDados = true;\r\n\tpublic _alldata: IPaaAbaICIndicadorModel[];\r\n\t@ViewChild('tabela1') public tabela1: MatSort;\r\n\t@ViewChild('tabela2') public tabela2: MatSort;\r\n\t@ViewChild('tabela3') public tabela3: MatSort;\r\n\tpublic mostrarCapacidadeTotal: number;\r\n \tpublic mostrarCapacidadeTotalPea: number;\r\n\tdisplayedColumns: string[] = ['nomeCriterio', 'unidadeMedida', 'tipoEntrada', 'actions'];\r\n\tpublic columnsDistribuicaoOriginais1 = ['unidadeGestora', 'valorRisco'];\r\n\tpublic columnsDistribuicaoOriginais2 = ['ativo', 'tipoAuditoria','tipoEnfase', 'actions'];\r\n\tpublic columnsDistribuicao = [];\r\n\tpublic colunasAdicionarDistribuicao = [];\r\n\tpublic tiposAuditorias: ITipoAuditoriaModel[];\r\n\tpublic tiposEnfase: ITipoEnfaseModel[];\r\n\tpublic filtroEnfase = {} as FiltroModel;\r\n\r\n\tconstructor(\r\n\t\tpublic route: ActivatedRoute,\r\n\t\tpublic toastr: ToastrService,\r\n\t\tpublic router: Router,\r\n\t\tpublic localeService: BsLocaleService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate paaService: PaaService,\r\n\t\tprivate tipoAuditoriaService: TipoAuditoriaService,\r\n\t\tprivate tipoEnfaseService: TipoEnfaseService,\r\n\t\tpublic criterioService: CriterioService,\r\n\t\tpublic indicadorService: IndicadorService,\r\n\t\tpublic paaAbaIndicesCriteriosService: PaaAbaIndicesCriteriosService\r\n\t\t\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\t}\r\n\r\n\tasync ngOnInit(): Promise {\r\n\t\tawait this.buscar();\r\n\t\t\r\n\t\t//TODO: VERIFICAR PQ A VARIÁVEL VISUALIZAR ESTÁ SENDO RESETADA\r\n\t\tthis.visualizar = this.route.routeConfig.path?.includes(\"visualizar\");\r\n\t}\r\n\r\n\tasync buscar(){\r\n\t\tthis.paaAbaIndicesCriteriosService.obter(this.id)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.model = res.dados;\r\n\t\t\t\tif(this.model.idSituacaoPaa == 2)\r\n\t\t\t\t\tthis.emAprovacao = true;\r\n\t\t\t\tvar dados = [];\r\n\t\t\t\tres.dados.indicadores.map((i) => {\r\n\t\t\t\t\t\tdados.push(i);\r\n\t\t\t\t\t\tdados = dados.concat(i.criterios);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t);\r\n\t\t\t\t\r\n\t\t\t\tif(res.dados.criterios.length > 0){\r\n\t\t\t\t\tconst agrupadorCriterios = {} as IPaaAbaICIndicadorModel;\r\n\t\t\t\t\tagrupadorCriterios.idIndicador = 0;\r\n\t\t\t\t\tagrupadorCriterios.isGrouper = true;\r\n\t\t\t\t\tagrupadorCriterios.nomeIndicador = \"Critérios\";\r\n\t\t\t\t\tagrupadorCriterios.peaRelacionado = true;\r\n\t\t\t\t\tagrupadorCriterios.criterios = {} as IPaaAbaICCriterioModel[];\r\n\t\t\t\t\t\r\n\t\t\t\t\tdados.push(agrupadorCriterios);\r\n\r\n\t\t\t\t\tdados = dados.concat(res.dados.criterios);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.indicadoresDataSource = new MatTableDataSource(dados);\r\n\t\t\t\tthis.criteriosDataSourceSemDados = dados.length == 0;\r\n\t\t\t})\r\n\t\t\t\r\n\t}\r\n\r\n\tpublic async importarArquivoCriterioPaa(id: number, visualizar?: boolean) {\r\n\t\ttry {\r\n\t\t\t\r\n\t\t const respostas = this.distribuicaoDataSource.data.map(\r\n\t\t\t(u) =>\r\n\t\t\t({\r\n\t\t\t paaIndiceCriterioId: id,\r\n\t\t\t unidadeGestoraId: u.unidadeGestoraId,\r\n\t\t\t unidadeGestora: u.unidadeGestora,\r\n\t\t\t} as IPaaCriterioRespostaModel)\r\n\t\t );\r\n\t\r\n\t\t const dialogConfig = new MatDialogConfig();\r\n\t\t dialogConfig.id = 'modal-component';\r\n\t\t dialogConfig.width = '450px';\r\n\t\t dialogConfig.hasBackdrop = true;\r\n\t\t dialogConfig.disableClose = true;\r\n\t\t dialogConfig.data = {\r\n\t\t\trespostas,\r\n\t\t\tvisualizar,\r\n\t\t };\r\n\t\t const modal = this.matDialog.open(\r\n\t\t\tModalImportarArquivoCriterioPaaComponent,\r\n\t\t\tdialogConfig\r\n\t\t );\r\n\t\t modal.afterClosed().subscribe(async (data) => {\r\n\t\t\tif (data) {\r\n\t\t\t try {\r\n\t\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\t const res = await this.paaAbaIndicesCriteriosService.enviarRespostasCriterio(\r\n\t\t\t\t\tthis.id,\r\n\t\t\t\t\trespostas\r\n\t\t\t\t );\r\n\t\t\t\t if (res.sucesso) {\r\n\t\t\t\t\tawait Promise.all([\r\n\t\t\t\t\t this.obterPainelDistribuicao(),\r\n\t\t\t\t\t this.buscar(),\r\n\t\t\t\t\t]);\r\n\t\t\t\t\tthis.exibirMensagemSucesso('Respostas gravadas com sucesso!');\r\n\t\t\t\t } else {\r\n\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t }\r\n\t\t\t\t}\r\n\t\t\t } catch (err) {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t }\r\n\t\t\t}\r\n\t\t });\r\n\t\t} catch (err) {\r\n\t\t this.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t }\r\n\r\n\t public async preencherFormularioCriterioPaa(id: number, visualizar?: boolean) {\r\n\t\ttry {\r\n\t\t\tawait this.obterPainelDistribuicao();\r\n\r\n\t\t this.paaAbaIndicesCriteriosService.obterCriterioResposta(id).then((resCriterioRespostas) => {\r\n\t\t\tconst criterioRespostas =\r\n\t\t\t resCriterioRespostas.sucesso && resCriterioRespostas.dados\r\n\t\t\t\t? resCriterioRespostas.dados\r\n\t\t\t\t: [];\r\n\t\r\n\t\t\tconst respostas = this.distribuicaoDataSource.data.map((u) => {\r\n\t\t\t return (\r\n\t\t\t\tcriterioRespostas.find((r) => r.paaDistribuicaoId === u.id) ||\r\n\t\t\t\t({\r\n\t\t\t\t paaDistribuicaoId: u.id,\r\n\t\t\t\t paaIndiceCriterioId: id,\r\n\t\t\t\t unidadeGestoraId: u.unidadeGestoraId,\r\n\t\t\t\t unidadeGestora: u.unidadeGestora,\r\n\t\t\t\t} as IPaaCriterioRespostaModel)\r\n\t\t\t );\r\n\t\t\t});\r\n\t\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = 'modal-component';\r\n\t\t\tdialogConfig.width = '650px';\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.data = {\r\n\t\t\t respostas,\r\n\t\t\t visualizar,\r\n\t\t\t};\r\n\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t ModalPreencherFormularioPaaComponent,\r\n\t\t\t dialogConfig\r\n\t\t\t);\r\n\t\t\tmodal.afterClosed().subscribe(async (data) => {\r\n\t\r\n\t\t\t if (data) {\r\n\t\t\t\ttry {\r\n\t\t\t\t if (!this.novoRegistro) {\r\n\t\t\t\t\tconst res = await this.paaAbaIndicesCriteriosService.enviarRespostasCriterio(\r\n\t\t\t\t\t this.id,\r\n\t\t\t\t\t respostas\r\n\t\t\t\t\t);\r\n\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t await Promise.all([this.obterPainelDistribuicao()]);\r\n\t\t\t\t\t this.exibirMensagemSucesso('Respostas gravadas com sucesso!');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t this.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t\t this.router.navigate(['/paa']);\r\n\t\t\t\t\t return;\r\n\t\t\t\t\t}\r\n\t\t\t\t }\r\n\t\t\t\t} catch (err) {\r\n\t\t\t\t this.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t\t this.router.navigate(['/paa']);\r\n\t\t\t\t}\r\n\t\t\t }\r\n\t\t\t});\r\n\t\t });\r\n\t\t} catch (err) {\r\n\t\t this.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t }\r\n\r\n\t public async abrirModalRankingPrioridade(element: IPaaAbaICIndicadorModel) {\r\n\t\ttry {\r\n\t\t const dialogConfig = new MatDialogConfig();\r\n\t\t dialogConfig.id = 'modal-component-ranking';\r\n\t\t dialogConfig.width = '800px';\r\n\t\t dialogConfig.maxHeight = '700px';\r\n\t\t dialogConfig.hasBackdrop = true;\r\n\t\t dialogConfig.disableClose = true;\r\n\t\t dialogConfig.data = {\r\n\t\t\tindicadorId: element.idIndicador,\r\n\t\t\tid: this.id,\r\n\t\t\tnomeIndicador: element.nomeIndicador\r\n\t\t };\r\n\t\t const modal = this.matDialog.open(\r\n\t\t\tModalRankingPrioridadeComponent,\r\n\t\t\tdialogConfig\r\n\t\t );\r\n\t\t} catch (err) {\r\n\t\t this.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t }\r\n\r\n\t public excluirCriterio(idPaaIndiceCriterio: number) {\r\n\t\tSwal.fire({\r\n\t\t title: 'Excluir Registro',\r\n\t\t text: 'Tem certeza que deseja excluir esse Registro?',\r\n\t\t icon: 'warning',\r\n\t\t showCancelButton: true,\r\n\t\t confirmButtonText: 'Sim',\r\n\t\t cancelButtonText: 'Não',\r\n\t\t}).then((res) => {\r\n\t\t if (res.value) {\r\n\t\t\tthis.paaAbaIndicesCriteriosService\r\n\t\t\t .removerIndiceCriterio(idPaaIndiceCriterio)\r\n\t\t\t .then((resAssociar) => {\r\n\t\t\t\tif (resAssociar.sucesso) {\r\n\t\t\t\t this.exibirMensagemSucesso('Critério removido com sucesso!');\r\n\t\t\t\t\tthis.buscar();\r\n\t\t\t\t} else {\r\n\t\t\t\t this.exibirMensagemErro(resAssociar.mensagem.descricao);\r\n\t\t\t\t}\r\n\t\t\t })\r\n\t\t\t .catch((errAssociar) =>\r\n\t\t\t\tthis.exibirMensagemErro(errAssociar.mensagem.descricao)\r\n\t\t\t )\r\n\t\t }\r\n\t\t});\r\n\t }\r\n\r\n\t public excluirIndicador(idIndicador: number){\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Excluir Registro',\r\n\t\t\ttext: 'Tem certeza que deseja excluir esse Registro?',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Sim',\r\n\t\t\tcancelButtonText: 'Não',\r\n\t\t }).then((res) => {\r\n\t\t\tif (res.value) {\r\n\t\t\t this.paaAbaIndicesCriteriosService\r\n\t\t\t\t.removerIndiceCriterios(this.id, idIndicador)\r\n\t\t\t\t.then((resAssociar) => {\r\n\t\t\t\t if (resAssociar.sucesso) {\r\n\t\t\t\t\tthis.exibirMensagemSucesso('Indicador removido com sucesso!');\r\n\t\t\t\t\tthis.buscar();\r\n\t\t\t\t } else {\r\n\t\t\t\t\tthis.exibirMensagemErro(resAssociar.mensagem.descricao);\r\n\t\t\t\t }\r\n\t\t\t\t})\r\n\t\t\t\t.catch((errAssociar) =>\r\n\t\t\t\t this.exibirMensagemErro(errAssociar.mensagem.descricao)\r\n\t\t\t\t)\r\n\t\t\t}\r\n\t\t });\r\n\t }\r\n\r\n\tpublic exibirRespostas(id: number) { \r\n\t}\r\n\r\n\tpublic onBack() {\r\n\t\tthis.router.navigate(['/paa']);\r\n\t }\r\n\t \r\n\t public fechar() {\r\n\t\tthis.router.navigate(['/paa']);\r\n\t }\r\n\r\n\t\r\n\t isGroup(index, item): boolean {\r\n\t\treturn item.idIndicador || item.isGrouper;\r\n\t }\r\n\t\r\n\r\n\t public async obterPainelDistribuicao() {\r\n\t\tif (this.capacidadeDataSource.data.length == 0) {\r\n\t\t await this.obterCapacidadeTrabalhoPor(this.id, this.model.anoPaa);\r\n\t\t}\r\n\t\r\n\t\treturn this.paaService.obterPainelDistribuicao(this.id).then((res) => {\r\n\t\t this.colunasAdicionarDistribuicao = [];\r\n\t\t this.columnsDistribuicao = [];\r\n\t\t this.columnsDistribuicao = this.columnsDistribuicao.concat(\r\n\t\t\tObject.assign([], this.columnsDistribuicaoOriginais1)\r\n\t\t );\r\n\t\t var colunasNomes: any = {};\r\n\t\t if (res && res.dados[0] && res.dados[0].colunasValores) {\r\n\t\t\tres.dados[0].colunasValores.forEach((element) => {\r\n\t\t\t const nomeColuna = this.obterNomeColuna(element);\r\n\t\r\n\t\t\t colunasNomes[nomeColuna.toString()] = nomeColuna;\r\n\t\r\n\t\t\t this.columnsDistribuicao.push(nomeColuna);\r\n\t\t\t if (\r\n\t\t\t\t!this.colunasAdicionarDistribuicao.some((c) => c === nomeColuna)\r\n\t\t\t ) {\r\n\t\t\t\tthis.colunasAdicionarDistribuicao.push(nomeColuna);\r\n\t\t\t }\r\n\t\t\t});\r\n\t\t }\r\n\t\r\n\t\t this.columnsDistribuicao = this.columnsDistribuicao.concat(\r\n\t\t\tObject.assign([], this.columnsDistribuicaoOriginais2)\r\n\t\t );\r\n\t\r\n\t\t var dados = res.dados.map((item) => {\r\n\t\t\tif (item.tipoAuditoria?.id == 0)\r\n\t\t\t item.tipoAuditoriaId = null;\r\n\t\t\titem.unidadeGestora.sigla = item.unidadeGestora.sigla.toUpperCase();\r\n\t\t\treturn item;\r\n\t\t });\r\n\r\n\t\t dados = dados.filter(x => !x.auditoriaObrigatoria);\r\n\t\r\n\t\t this.distribuicaoDataSource =\r\n\t\t\tnew MatTableDataSource(dados);\r\n\t\t this.distribuicaoDataSource._updateChangeSubscription();\r\n\t\r\n\t\t this.distribuicaoDataSource.sortingDataAccessor = (\r\n\t\t\titem: IPaaDistribuicaoModel,\r\n\t\t\tproperty\r\n\t\t ) => {\r\n\t\t\tswitch (property) {\r\n\t\t\t case 'unidadeGestora':\r\n\t\t\t\treturn item.unidadeGestora.sigla;\r\n\t\r\n\t\t\t case 'valorRisco':\r\n\t\t\t\treturn item.valorRisco;\r\n\t\r\n\t\t\t case colunasNomes[property]:\r\n\t\t\t\treturn parseFloat(\r\n\t\t\t\t this.obterValorColuna(item, property)\r\n\t\t\t\t\t.replace(/[.]/g, '')\r\n\t\t\t\t\t.replace(/[,]/g, '.') == ''\r\n\t\t\t\t\t? '0'\r\n\t\t\t\t\t: this.obterValorColuna(item, property)\r\n\t\t\t\t\t .replace(/[.]/g, '')\r\n\t\t\t\t\t .replace(/[,]/g, '.')\r\n\t\t\t\t);\r\n\t\r\n\t\t\t case 'ativo':\r\n\t\t\t\treturn item.ativo.toString();\r\n\t\r\n\t\t\t case 'tipoAuditoria':\r\n\t\t\t\treturn item.tipoAuditoria.nome;\r\n\t\r\n\t\t\t default:\r\n\t\t\t\treturn item[property];\r\n\t\t\t}\r\n\t\t };\r\n\t\r\n\t\t this.distribuicaoDataSource.sort = this.tabela3;\r\n\t\t this.distruibuicaoSemDados =\r\n\t\t\tthis.distribuicaoDataSource.filteredData.length === 0;\r\n\t\r\n\t\t res.dados.forEach((item) => {\r\n\t\t\tthis.obterHistoricoDistribuicao(item);\r\n\t\t });\r\n\t\t});\r\n\t }\r\n\r\n\t public obterCapacidadeTrabalhoPor(paaId: number, ano: number): Promise {\r\n\t\treturn this.paaService\r\n\t\t .obterCapacidadeTrabalhoPorIdAndAno(paaId, ano)\r\n\t\t .then((resCapacidade) => {\r\n\t\t\tthis.capacidadeDataSource = new MatTableDataSource(\r\n\t\t\t resCapacidade.dados\r\n\t\t\t);\r\n\t\r\n\t\t\tlocalStorage.setItem('auditores', JSON.stringify(resCapacidade.dados.map(a => a.auditor)))\r\n\t\t\tthis.capacidadeDataSource._updateChangeSubscription();\r\n\t\r\n\t\t\tthis.capacidadeDataSource.sortingDataAccessor = (item, property) => {\r\n\t\t\t switch (property) {\r\n\t\t\t\tcase 'coordenacao':\r\n\t\t\t\t return item?.coordenacaoNome;\r\n\t\t\t\tcase 'auditores':\r\n\t\t\t\t return item?.auditor;\r\n\t\t\t\tdefault:\r\n\t\t\t\t return item[property];\r\n\t\t\t }\r\n\t\t\t};\r\n\t\r\n\t\t\tthis.capacidadeDataSource.sort = this.tabela2;\r\n\t\r\n\t\t\tthis.mostrarCapacidadeTotal = this.capacidadeDataSource.data\r\n\t\t\t .map((item) => item.capacidadeTotalCoordenacao)\r\n\t\t\t .reduce((total, currentElement) => total + currentElement);\r\n\t\r\n\t\t\tthis.mostrarCapacidadeTotalPea = this.capacidadeDataSource.data\r\n\t\t\t .map((item) => item.capacidadeTotalCoordenacaoPea)\r\n\t\t\t .reduce((total, currentElement) => total + currentElement);\r\n\t\r\n\t\r\n\t\t\tthis.capacidadeSemDados =\r\n\t\t\t this.capacidadeDataSource.filteredData.length === 0;\r\n\t\t }).then(() => this.obterTiposAuditorias()).then(() => this.obterTiposEnfase());\r\n\t }\r\n\r\n\t public async obterTiposAuditorias() {\r\n\t\treturn this.tipoAuditoriaService.obter('', true).then((res) => {\r\n\t\t this.tiposAuditorias = res?.dados.filter(a => {\r\n\t\t\tconst res = this.capacidadeDataSource.data.find(b => a?.coordenacaoId === b?.coordenacaoId);\r\n\t\t\tif (res?.coordenacaoId) {\r\n\t\t\t return a;\r\n\t\t\t}\r\n\t\t });\r\n\t\t});\r\n\t }\r\n\t\r\n\t public async obterTiposEnfase(){\r\n\t\tthis.filtroEnfase.itensPorPagina = 99;\r\n\t\tthis.filtroEnfase.ativo = true;\r\n\t\treturn this.tipoEnfaseService.obter(this.filtroEnfase).then((res) =>\r\n\t\t{\r\n\t\t this.tiposEnfase = res?.dados.resultado;\r\n\t\t})\r\n\t }\r\n\r\n\t public obterHistoricoDistribuicao(\r\n\t\telement: IPaaDistribuicaoModel\r\n\t ): Promise {\r\n\t\treturn this.paaService\r\n\t\t .obterHistoricoDistribuicao(this.id, element.unidadeGestoraId)\r\n\t\t .then((historico) => {\r\n\t\t\tif (historico.sucesso) {\r\n\t\t\t let tooltip = 'Histórico da distribuição\\n\\n';\r\n\t\t\t if (historico.dados.length > 0) {\r\n\t\t\t\thistorico.dados.forEach((item) => {\r\n\t\t\t\t tooltip += `${item.usuario} - ${formatDate(\r\n\t\t\t\t\titem.data,\r\n\t\t\t\t\t'dd/MM/yyyy',\r\n\t\t\t\t\t'pt-BR'\r\n\t\t\t\t )}, Ação: ${item.acao}, Justificativa: ${item.justificativa}\\n\\n`;\r\n\t\t\t\t});\r\n\t\t\t\tthis.historico = true;\r\n\t\t\t } else {\r\n\t\t\t\ttooltip += 'Nenhum dado encontrado.';\r\n\t\t\t\tthis.historico = false;\r\n\t\t\t }\r\n\t\t\t element.tooltipHistorico = tooltip;\r\n\t\t\t} else {\r\n\t\t\t Swal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: 'top-end',\r\n\t\t\t\ticon: 'error',\r\n\t\t\t\ttext: historico.mensagem.descricao,\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 2000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t });\r\n\t\t\t}\r\n\t\t });\r\n\t }\r\n\r\n\t public obterValorColuna(\r\n\t\telement: IPaaDistribuicaoModel,\r\n\t\tcoluna: string\r\n\t ): string {\r\n\t\tif (!element || !coluna) {\r\n\t\t return '';\r\n\t\t}\r\n\t\r\n\t\tconst result = element.colunasValores.find(\r\n\t\t (x) => this.obterNomeColuna(x) === coluna\r\n\t\t);\r\n\t\r\n\t\tif (!result || !result.valorNumerico) {\r\n\t\t return '';\r\n\t\t}\r\n\t\r\n\t\treturn result.valorNumerico.toFixed(2);\r\n\t }\r\n\r\n\t private obterNomeColuna(element: IPaaDistribuicaoColunasModel) {\r\n\t\treturn element.nomeIndicador && element.nomeIndicador !== ''\r\n\t\t ? element.nomeIndicador + ' / ' + element.nomeCriterio\r\n\t\t : element.nomeCriterio;\r\n\t }\r\n\r\n\t public adicionarCriterio() {\r\n\t\tthis.criterioService\r\n\t\t .obter('', true)\r\n\t\t .then((res) => {\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t const dialogConfig = new MatDialogConfig();\r\n\t\t\t dialogConfig.id = 'modal-component';\r\n\t\t\t dialogConfig.width = '650px';\r\n\t\t\t dialogConfig.hasBackdrop = true;\r\n\t\t\t dialogConfig.disableClose = true;\r\n\t\t\t dialogConfig.data = res.dados;\r\n\t\t\t const modal = this.matDialog.open(\r\n\t\t\t\tModalCadastrarCriterioComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t );\r\n\t\r\n\t\t\t modal.afterClosed().subscribe((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t const criterio = {} as IPaaIndiceCriterioModel;\r\n\t\t\t\t criterio.criterioId = data.criterio.id;\r\n\t\t\t\t criterio.paaId = this.id;\r\n\t\t\t\t criterio.valorExibicao = {} as IEnumModel;\r\n\t\t\t\t criterio.valorExibicao.codigo = data.valorExibicao;\r\n\t\r\n\t\t\t\t this.paaAbaIndicesCriteriosService\r\n\t\t\t\t\t.adicionarIndiceCriterio(criterio)\r\n\t\t\t\t\t.then((resAssociar) => {\r\n\t\t\t\t\t if (resAssociar.sucesso) {\r\n\t\t\t\t\t\tthis.exibirMensagemSucesso('Critério adicionado com sucesso');\r\n\t\t\t\t\t\t this.buscar();\r\n\t\t\t\t\t } else {\r\n\t\t\t\t\t\tthis.exibirMensagemErro(resAssociar.mensagem.descricao);\r\n\t\t\t\t\t }\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch((errAssociar) => {\r\n\t\t\t\t\t this.exibirMensagemErro(errAssociar.mensagem.descricao);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t });\r\n\t\t\t} else {\r\n\t\t\t this.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t })\r\n\t\t .catch((err) => {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t })\r\n\t }\r\n\r\n\t public adicionarIndicador() {\r\n\r\n\t\tthis.indicadorService\r\n\t\t .obter('', true)\r\n\t\t .then((res) => {\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t const dialogConfig = new MatDialogConfig();\r\n\t\t\t dialogConfig.id = 'modal-component';\r\n\t\t\t dialogConfig.width = '650px';\r\n\t\t\t dialogConfig.hasBackdrop = true;\r\n\t\t\t dialogConfig.disableClose = true;\r\n\t\t\t dialogConfig.data = res.dados;\r\n\t\t\t const modal = this.matDialog.open(\r\n\t\t\t\tModalCadastrarIndicadorComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t );\r\n\t\r\n\t\t\t modal.afterClosed().subscribe((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t const indicador = {} as IPaaIndiceCriterioModel;\r\n\t\t\t\t indicador.indicadorId = data.id;\r\n\t\t\t\t indicador.paaId = this.id;\r\n\t\r\n\t\t\t\t this.paaAbaIndicesCriteriosService\r\n\t\t\t\t\t.adicionarIndiceCriterio(indicador)\r\n\t\t\t\t\t.then((resAssociar) => {\r\n\t\t\t\t\t if (resAssociar.sucesso) {\r\n\t\t\t\t\t\tthis.exibirMensagemSucesso('Indicador adicionado com sucesso');\r\n\t\t\t\t\t\tthis.buscar();\r\n\t\t\t\t\t } else {\r\n\t\t\t\t\t\tthis.exibirMensagemErro(resAssociar.mensagem.descricao);\r\n\t\t\t\t\t }\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch((errAssociar) => {\r\n\t\t\t\t\t this.exibirMensagemErro(errAssociar.mensagem.descricao);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t });\r\n\t\t\t} else {\r\n\t\t\t this.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t })\r\n\t\t .catch((err) => {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t })\r\n\t }\r\n\r\n\t public async exibirModalVisualizarQuestionarioCriterio() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = 'modal-component';\r\n\t\tdialogConfig.width = '850px';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tconst res = await this.paaAbaIndicesCriteriosService.obterVisualizacaoQuestionario(this.id);\r\n\t\t\r\n\t\tdialogConfig.data = res;\r\n\t\tconst modal = this.matDialog.open(ModalVisualizarQuestionarioCriterioPaaComponent, dialogConfig);\r\n\t }\r\n\t\r\n\t public async exibirModalEnviarQuestionarioCriterio() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = 'modal-component';\r\n\t\tdialogConfig.width = '650px';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tconst modal = this.matDialog.open(ModalEnviarQuestionarioCriterioPaaComponent, dialogConfig);\r\n\t\tmodal.afterClosed().subscribe(data => {\r\n\t\t if (data) {\r\n\t\t\tthis.enviarQuestionario(data);\r\n\t\t }\r\n\t\t});\r\n\t }\r\n\r\n\t public async confirmarCancelamento() {\r\n\t\tconst res = await this.paaAbaIndicesCriteriosService.questionariosRespondidos(this.id);\r\n\t\tif (res.sucesso) {\r\n\t\t if(res.dados){\r\n\t\t\tSwal.fire({\r\n\t\t\t title: 'Cancelar Questionário',\r\n\t\t\t text: `${res.mensagem?.descricao}. Deseja cancelar o envio mesmo assim?`,\r\n\t\t\t icon: 'warning',\r\n\t\t\t showCancelButton: true,\r\n\t\t\t confirmButtonText: 'Sim',\r\n\t\t\t cancelButtonText: 'Não'\r\n\t\t\t}).then(resConfirm => {\r\n\t\t\t if (resConfirm.isConfirmed) {\r\n\t\t\t\tthis.cancelarEnvioQuestionario();\r\n\t\t\t }\r\n\t\t\t});\r\n\t\t }else{\r\n\t\t Swal.fire({\r\n\t\t\ttitle: 'Cancelar Questionário',\r\n\t\t\ttext: 'Deseja cancelar o envio dos questionários?',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Sim',\r\n\t\t\tcancelButtonText: 'Não',\r\n\t\t }).then(resConfirm => {\r\n\t\t\tif (resConfirm.isConfirmed) {\r\n\t\t\t this.cancelarEnvioQuestionario();\r\n\t\t\t}\r\n\t\t });\r\n\t\t}\r\n\t\t}\r\n\t\telse {\r\n\t\t this.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t}\r\n\t }\r\n\t\r\n\t public async cancelarEnvioQuestionario() {\r\n\t\ttry {\r\n\t\t const res = await this.paaAbaIndicesCriteriosService.cancelarEnvioQuestionario(this.id);\r\n\t\t if (res.sucesso) {\r\n\t\t\tthis.exibirMensagemSucesso('Envio cancelado');\r\n\t\t\tthis.buscar();\r\n\t\t } else {\r\n\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t }\r\n\t\t} catch (err) {\r\n\t\t this.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t }\r\n\t\r\n\t public async enviarQuestionario(modelEnviarQuestionario: IEnviarQuestionarioModel) {\r\n\t\ttry {\r\n\t\t if (!this.novoRegistro) {\r\n\t\t\tconst res = await this.paaAbaIndicesCriteriosService.enviarQuestionarios(this.id, modelEnviarQuestionario);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t this.exibirMensagemSucesso(res.mensagem.descricao);\r\n\t\t\t this.buscar();\r\n\t\t\t} else {\r\n\t\t\t this.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t return;\r\n\t\t\t}\r\n\t\t }\r\n\t\t} catch (err) {\r\n\t\t this.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t }\r\n\r\n\t public async enviarQuestionarioPaa() {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.paaAbaIndicesCriteriosService.enviarQuestionariosPaa(this.id);\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Questionários enviados com sucesso');\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n\r\n\t //COMPUTED\r\n\t mostrarBotaoPreencherFormulario(element: any): boolean{\r\n\t\treturn !this.visualizar && this.model.idSituacaoPaa === 1 && element.tipoEntrada === 'Formulario';\r\n\t }\r\n\r\n\t mostrarBotaoImportarArquivo(element: any): boolean{\r\n\t\treturn !this.visualizar && this.model.idSituacaoPaa === 1 && element.tipoEntrada ===\t'ImportacaoArquivo';\r\n\t }\r\n\r\n\t mostrarBotaoVisualizarResposta(element: any): boolean{\r\n\t\treturn this.model.idSituacaoPaa === 1 || this.model.idSituacaoPaa === 4;\r\n\t }\r\n\r\n\t mostrarBotaoExcluirCriterio(element: any): boolean{\r\n\t\treturn !this.visualizar && \r\n\t\t\t\tthis.model.idSituacaoPaa === 1 && \r\n\t\t\t\telement.peaRelacionado == false\r\n\t\t\t\t&& element.possuiIndicador === false;\r\n\t }\r\n\r\n\t mostrarBotaoExcluirIndicador(element: any): boolean{\r\n\t\treturn !this.visualizar && this.model.idSituacaoPaa === 1 && element.peaRelacionado == false;\r\n\t }\r\n\r\n\t mostrarBotaoAdicionarCriterio(): boolean{\r\n\t\treturn this.model.idSituacaoPaa === 1 && !this.visualizar\r\n\t }\r\n\r\n\t mostrarBotaoAdicionarIndicador(): boolean{\r\n\t\treturn this.model.idSituacaoPaa === 1 && !this.visualizar\r\n\t }\r\n\r\n\t mostrarBotaoQuestionario(): boolean{\r\n\t\treturn this.model.idSituacaoPaa === 1 && !this.visualizar\r\n\t }\r\n\r\n\t mostrarBotaoAbrirModalRankingPrioridade(element: IPaaAbaICIndicadorModel): boolean{\r\n\t\treturn element.idIndicador != 0;\r\n\t }\r\n\r\n\t \r\n}\r\n\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Critério \r\n {{element.nomeCriterio}} \r\n \r\n \r\n \r\n \r\n Unidade Medida \r\n {{element.unidadeMedida}} \r\n \r\n \r\n \r\n \r\n Tipo entrada \r\n {{element.tipoEntrada}} \r\n \r\n \r\n \r\n \r\n Ações \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tImportar Arquivo\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n Preencher Formulário\r\n \r\n
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{iPaaAbaICIndicadorModel.nomeIndicador}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Nenhuma Carga de Critérios a\r\n exibir\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\t\t\t\t\t\t\t\t Adicionar Critério\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Adicionar Indicador\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tQuestionário\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tToggle Dropdown\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tEnviar Questionário\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tVisualizar\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tCancelar Envio\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n \r\n Fechar\r\n \t\t\t\t\t\r\n","import { PaaService } from 'src/app/services/paa.service';\r\nimport { IPaaCoordenacaoAuditorModel } from 'src/app/models/paa-coordenacao-auditor.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IPaaEquipeModel } from './../../../models/paa-equipe.model';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { CalendarioService } from 'src/app/services/calendario.service';\r\nimport {\r\n Component,\r\n OnInit,\r\n Inject,\r\n ViewChild,\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort, MatSortable } from '@angular/material/sort';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { DateHelper } from 'src/app/core/helpers/date.helper';\r\nimport Swal from 'sweetalert2';\r\nimport { Observable, forkJoin, of } from 'rxjs';\r\nimport { concatMap } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-modal-alocar-equipe',\r\n templateUrl: './modal-alocar-equipe.component.html',\r\n styleUrls: ['./modal-alocar-equipe.component.scss'],\r\n})\r\n\r\nexport class ModalAlocarEquipeComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n @ViewChild('tabela1') public tabela1: MatSort;\r\n @ViewChild('tabela2') public tabela2: MatSort;\r\n\r\n public model = {} as IPaaEquipeModel;\r\n public minDate: Date;\r\n public maxDate: Date;\r\n public houveSugestaoData: boolean;\r\n public dataInvalida: boolean;\r\n public dataFinalSugerida: Date;\r\n\r\n public coordenadorNome: string;\r\n public msgValidacaoDataInicio: string = \"Insira uma data de ínicio.\";\r\n public msgValidacaoDataFim: string = \"Insira uma data de fim..\";\r\n public auditorDataSource = new MatTableDataSource<\r\n IPaaCoordenacaoAuditorModel\r\n >([]);\r\n public auditorSemDados = true;\r\n public auditoresDisponiveisDataSource: IPaaCoordenacaoAuditorModel[];\r\n public novoAuditor: string;\r\n\r\n public auditorOutraCoordenacaoDataSource = new MatTableDataSource<\r\n IPaaCoordenacaoAuditorModel\r\n >([]);\r\n public auditorOutraCoordenacaoSemDados = true;\r\n\r\n public dataObrigatoria = false;\r\n\r\n public auditoresConflito: IPaaCoordenacaoAuditorModel[];\r\n\r\n\r\n constructor(\r\n private cdRef: ChangeDetectorRef,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n private paaService: PaaService,\r\n private dateHelper: DateHelper,\r\n private calendarioService: CalendarioService,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n this.model = data?.equipe;\r\n this.minDate = new Date(data?.ano, 1 - 1, 1);\r\n this.maxDate = new Date(data?.ano, 12 - 1, 31);\r\n\r\n this.coordenadorNome = this.model?.paaDistribuicao?.tipoAuditoria?.coordenacao?.nome;\r\n\r\n if (this.model.dataInicio != null) {\r\n this.model.dataInicio = new Date(this.model.dataInicio);\r\n }\r\n\r\n if (this.model.dataFim != null) {\r\n this.model.dataFim = new Date(this.model.dataFim);\r\n }\r\n\r\n\r\n // Montar lista de Auditores da mesma coordenacao\r\n const auditores = this.model.listaAuditores.filter(\r\n (auditor) =>\r\n this.model.paaEquipeAuditor.findIndex(\r\n (a) => a.auditorId === auditor.auditorId\r\n ) >= 0\r\n );\r\n for (const auditor of auditores) {\r\n this.auditorDataSource.data.push({\r\n paaId: auditor.paaId,\r\n coordenacaoId: auditor.coordenacaoId,\r\n ano: auditor.ano,\r\n auditorId: auditor.auditorId,\r\n nomeAuditor: auditor.nomeAuditor,\r\n nomeCoordenacao: auditor.nomeCoordenacao,\r\n nomeDispensa: auditor.nomeDispensa,\r\n });\r\n }\r\n this.auditorDataSource.paginator = this.paginator;\r\n this.auditorDataSource.sort = this.sort;\r\n this.auditorDataSource.data = this.model.listaAuditores.map(\r\n (auditor) => ({\r\n paaId: auditor.paaId,\r\n coordenacaoId: auditor.coordenacaoId,\r\n ano: auditor.ano,\r\n auditorId: auditor.auditorId,\r\n nomeCoordenacao: auditor?.nomeCoordenacao,\r\n nomeDispensa: auditor.nomeDispensa,\r\n nomeAuditor: (auditor.nomeAuditor.charAt(0).toUpperCase() + auditor.nomeAuditor.slice(1)),\r\n selecionado:\r\n this.model.paaEquipeAuditor.findIndex(\r\n (a) => a.auditorId === auditor.auditorId\r\n ) >= 0,\r\n })\r\n );\r\n this.auditorSemDados = this.auditorDataSource.data.length === 0;\r\n this.auditorDataSource._updateChangeSubscription();\r\n\r\n this.auditoresDisponiveisDataSource = this.model.listaAuditores.filter(\r\n (auditor) =>\r\n auditores.findIndex((a) => a.auditorId === auditor.auditorId) < 0\r\n );\r\n\r\n // Montar lista de Auditores de outras coordenacoes\r\n this.auditorOutraCoordenacaoDataSource.paginator = this.paginator;\r\n this.auditorOutraCoordenacaoDataSource.sort = this.sort;\r\n this.auditorOutraCoordenacaoDataSource.data = this.model.listaAuditoresConvidados.map(\r\n (auditor) => ({\r\n paaId: auditor.paaId,\r\n coordenacaoId: auditor.coordenacaoId,\r\n ano: auditor.ano,\r\n auditorId: auditor.auditorId,\r\n nomeCoordenacao: auditor?.nomeCoordenacao,\r\n nomeDispensa: auditor.nomeDispensa,\r\n nomeAuditor: (auditor.nomeAuditor.charAt(0).toUpperCase() + auditor.nomeAuditor.slice(1)),\r\n selecionado:\r\n this.model.paaEquipeAuditor.findIndex(\r\n (a) => a.auditorId === auditor.auditorId\r\n ) >= 0,\r\n })\r\n );\r\n this.auditorOutraCoordenacaoSemDados =\r\n this.auditorOutraCoordenacaoDataSource.data.length === 0;\r\n this.auditorOutraCoordenacaoDataSource._updateChangeSubscription();\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n\r\n ngOnChangeDataInicio(event:any): void {\r\n if(event)\r\n this.validaData(this.model.dataInicio, true);\r\n }\r\n\r\n ngOnChangeDataFim(event:any): void {\r\n if(event)\r\n this.validaData(this.model.dataFim, false);\r\n }\r\n\r\n public async validaData(dataReferencia: Date, isDataInicial: boolean){\r\n if(!dataReferencia)\r\n return false;\r\n\r\n if(dataReferencia.getFullYear() != this.data.ano){\r\n if(isDataInicial){\r\n this.msgValidacaoDataInicio = \"Ano precisar ser igual ao do PAAC\";\r\n }else{\r\n this.msgValidacaoDataFim = \"Ano precisar ser igual ao do PAAC\";\r\n }\r\n this.setDataObrigatoria();\r\n\r\n return false;\r\n }\r\n\r\n const validacao = await this.paaService.VerificaDataAlocacao(this.dateHelper.toString(dataReferencia), isDataInicial, this.model?.paaDistribuicao?.tipoAuditoria?.id);\r\n\r\n if(validacao.sucesso){\r\n if(validacao.dados && isDataInicial){\r\n this.houveSugestaoData = true;\r\n this.dataInvalida = false;\r\n this.dataFinalSugerida = new Date(validacao.dados);\r\n this.model.dataFim = new Date(validacao.dados);\r\n }\r\n }else{\r\n this.dataInvalida = true;\r\n this.exibirMensagemErro(validacao.mensagem.descricao);\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n public incluirAuditor() {\r\n if (this.novoAuditor) {\r\n this.auditorDataSource.data.push(\r\n this.auditoresDisponiveisDataSource.find(\r\n (a) => a.auditorId === this.novoAuditor\r\n )\r\n );\r\n this.auditorDataSource._updateChangeSubscription();\r\n this.auditoresDisponiveisDataSource = this.model.listaAuditores.filter(\r\n (auditor) =>\r\n this.auditorDataSource.data.findIndex(\r\n (a) => a.auditorId === auditor.auditorId\r\n ) < 0\r\n );\r\n this.novoAuditor = null;\r\n }\r\n }\r\n\r\n public excluirAuditor(element: IPaaCoordenacaoAuditorModel) {\r\n this.auditorDataSource.data.splice(\r\n this.auditorDataSource.data.findIndex(\r\n (a) => a.auditorId === element.auditorId\r\n ),\r\n 1\r\n );\r\n this.auditorDataSource._updateChangeSubscription();\r\n this.auditoresDisponiveisDataSource = this.model.listaAuditores.filter(\r\n (auditor) =>\r\n this.auditorDataSource.data.findIndex(\r\n (a) => a.auditorId === auditor.auditorId\r\n ) < 0\r\n );\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.tabela1.sort({ id: 'nome', start: 'asc' } as MatSortable);\r\n this.auditorDataSource.sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'nome':\r\n return item.nomeAuditor;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n this.auditorDataSource.sort = this.tabela1;\r\n\r\n this.tabela2.sort({ id: 'nome', start: 'asc' } as MatSortable);\r\n this.auditorOutraCoordenacaoDataSource.sortingDataAccessor = (\r\n item,\r\n property\r\n ) => {\r\n switch (property) {\r\n case 'nome':\r\n return item.nomeAuditor;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n this.auditorOutraCoordenacaoDataSource.sort = this.tabela2;\r\n this.cdRef.detectChanges();\r\n }\r\n\r\n public verificarDatas() {\r\n\r\n if (this.model.dataInicio == null || this.model.dataFim == null) {\r\n this.setDataObrigatoria();\r\n this.exibirMensagemErro('Por favor, preencha os campo com a data incial e data fim');\r\n return false;\r\n }\r\n if(this.model.dataInicio.getFullYear() != this.data?.ano\r\n || this.model.dataFim.getFullYear() != this.data?.ano){\r\n this.setDataObrigatoria();\r\n this.exibirMensagemErro('O ano do período precisar ser igual ao do PAAC.');\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n public setDataObrigatoria() {\r\n this.dataObrigatoria = true;\r\n }\r\n\r\n public async concluir() {\r\n const validaOutrosAuditorSelecionados = this.auditorOutraCoordenacaoDataSource.data.filter(\r\n (d) => d.selecionado\r\n );\r\n\r\n const validaAuditorSelecionados = this.auditorDataSource.data.filter(\r\n (d) => d.selecionado\r\n );\r\n\r\n if(!validaOutrosAuditorSelecionados.length && !validaAuditorSelecionados.length){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: \"Selecione um auditor para inserir a alocação.\",\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n return;\r\n }\r\n\r\n if(this.dataInvalida == true){\r\n this.exibirMensagemErro(\"Data inválida\");\r\n return false;\r\n }\r\n\r\n if(this.houveSugestaoData && this.model.dataFim > this.dataFinalSugerida)\r\n {\r\n Swal.fire({\r\n title: 'Atenção',\r\n text: \"O período informado é maior do que o definido para o tipo de auditoria. Deseja continuar?\",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n if (res.value) {\r\n if (this.verificarDatas()) {\r\n this.model.listaAuditores = this.auditorDataSource.data.filter(\r\n (d) => d.selecionado\r\n );\r\n this.model.listaAuditoresConvidados = this.auditorOutraCoordenacaoDataSource.data.filter(\r\n (d) => d.selecionado\r\n );\r\n\r\n this.salvar();\r\n }\r\n }\r\n });\r\n }else{\r\n if (this.verificarDatas()) {\r\n this.model.listaAuditores = this.auditorDataSource.data.filter(\r\n (d) => d.selecionado\r\n );\r\n this.model.listaAuditoresConvidados = this.auditorOutraCoordenacaoDataSource.data.filter(\r\n (d) => d.selecionado\r\n );\r\n\r\n this.salvar();\r\n }\r\n }\r\n\r\n }\r\n\r\n private async salvar() {\r\n\r\n const validacao = await this.paaService.validarAlocacaoEquipe(this.model);\r\n\r\n const alocadosReq = validacao.dados.alocados.length ? this.percorrerObjetoComAlertsAlocados(validacao?.dados?.alocados) : of([]);\r\n const dispensadosReq = validacao.dados.dispensados.length ? this.percorrerObjetoComAlertsDispensados(validacao.dados.dispensados): of([]);\r\n\r\n forkJoin({\r\n alocados: alocadosReq,\r\n dispensados: dispensadosReq\r\n }).subscribe(()=> this.atualizarAlocacao());\r\n }\r\n\r\n percorrerObjetoComAlertsAlocados(validacao: any) {\r\n const keys = validacao;\r\n return this.exibirAlertaPorChaveAlocados(keys, 0);\r\n }\r\n\r\n percorrerObjetoComAlertsDispensados(validacao: any) {\r\n const keys = validacao;\r\n return this.exibirAlertaPorChaveDispensados(keys, 0);\r\n }\r\n\r\n // Função recursiva para exibir os SweetAlerts em sequência\r\n exibirAlertaPorChaveAlocados(validacao: any, index: number): Observable {\r\n if (index >= validacao.length) {\r\n return of(undefined);\r\n }\r\n const chaveAtual = validacao[index];\r\n return (this.validarAlocados(chaveAtual)).pipe(\r\n concatMap(() => this.exibirAlertaPorChaveAlocados(validacao, index + 1))\r\n );\r\n }\r\n\r\n exibirAlertaPorChaveDispensados(validacao: any, index: number): Observable {\r\n if (index >= validacao.length) {\r\n return of(undefined);\r\n }\r\n const chaveAtual = validacao[index];\r\n return (this.validarDispensados(chaveAtual)).pipe(\r\n concatMap(() => this.exibirAlertaPorChaveDispensados(validacao, index + 1))\r\n );\r\n }\r\n\r\n private validarAlocados(validacao: any): Observable {\r\n return new Observable((observer) => {\r\n\r\n let text = '';\r\n\r\n //text += `
\\n O(s) auditor(es) selecionado(s) ${validacao.nomeAuditor}, pertencem a outra coordenação, ${validacao.nomeCoordenacao}. \\n

`\r\n text += `
\\n O(s) auditor(es) selecionado(s) ${validacao.nomeAuditor}, já possui alocação para o mesmo período. \\n

`\r\n\r\n Swal.fire({\r\n title: 'Alocar equipe',\r\n html: `${text}`,\r\n icon: 'warning',\r\n showConfirmButton: false,\r\n showCancelButton: true,\r\n cancelButtonText: 'Ok',\r\n timerProgressBar: true,\r\n }).then((result) => {\r\n\r\n const listaConvidados = this.model.listaAuditoresConvidados.filter(x => x.auditorId !== validacao.auditorId);\r\n this.model.listaAuditoresConvidados =[...listaConvidados];\r\n const lista = this.model.listaAuditores.filter(x => x.auditorId !== validacao.auditorId);\r\n this.model.listaAuditores =[...lista];\r\n observer.next();\r\n observer.complete();\r\n });\r\n });\r\n }\r\n\r\n private validarDispensados(validacao: any): Observable {\r\n return new Observable((observer) => {\r\n let text = '';\r\n\r\n text += `
\\n O Auditor selecionado ${validacao.nomeAuditor} não está disponível para período alocado, está com a dispensa ${validacao.nomeDispensa}. \\n

`\r\n\r\n Swal.fire({\r\n title: 'Alocar equipe',\r\n html: `${text}
\\nDeseja continuar ?
`,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n timerProgressBar: true,\r\n }).then((result) => {\r\n\r\n if (result.isConfirmed) {\r\n observer.next();\r\n observer.complete();\r\n this.atulizarListaDispensados(validacao);\r\n } else {\r\n // observer.error('Ação cancelada');\r\n observer.next();\r\n observer.complete();\r\n }\r\n });\r\n });\r\n }\r\n\r\n public obterEquipeIndisponivel(): IPaaCoordenacaoAuditorModel[] {\r\n var auditoresIndisponiveis: IPaaCoordenacaoAuditorModel[] = [] as IPaaCoordenacaoAuditorModel[];\r\n\r\n var concatenarAuditores = [...this.model.listaAuditores.filter(_ => _.selecionado), ...this.model.listaAuditoresConvidados.filter(_ => _.selecionado)]\r\n var auditoresCoordenacao = this.obterAuditoresCapacidadeTrabalho().reduce((a, b) => a.concat(b));\r\n\r\n concatenarAuditores.map(a => {\r\n let auditorIndisponivel = auditoresCoordenacao.find(_ => _.coordenacaoId == this.model?.paaDistribuicao?.tipoAuditoria?.coordenacao?.id && a.auditorId === _.auditorId)\r\n auditorIndisponivel?.auditorId ? null : auditoresIndisponiveis.push(a);\r\n })\r\n\r\n return auditoresIndisponiveis;\r\n }\r\n\r\n public async validarEquipeDisponivel() {\r\n const auditoresIndisponiveis = this.obterEquipeIndisponivel();\r\n\r\n let quantidade = auditoresIndisponiveis.length > 1;\r\n\r\n if (auditoresIndisponiveis.length > 0) {\r\n let text = quantidade ?\r\n `O(s) auditor(es) selecionado(s) ${auditoresIndisponiveis.map(_ => _.nomeAuditor).join(', ')} não estão disponíveis para auditoria.` :\r\n `O auditor selecionado ${auditoresIndisponiveis.map(_ => _.nomeAuditor).join(', ')} não esta disponível para auditoria.`\r\n Swal.fire({\r\n title: 'Alocar equipe',\r\n text: `${text} \\nDeseja continuar ?`,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(res => {\r\n if (res.value) {\r\n this.atualizarAlocacao()\r\n }\r\n }).catch();\r\n } else {\r\n this.atualizarAlocacao()\r\n }\r\n }\r\n\r\n private atualizarAlocacao() {\r\n this.paaService\r\n .atualizarAlocacaoEquipe(this.model)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n res.dados.alertas.forEach((alerta) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: alerta,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n });\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro salvo com sucesso',\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n this.dialogRef.close(this.model);\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n title: res.mensagem.descricao,\r\n text: validacoes,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n private atulizarListaAlocacao(alocado: any){\r\n this.model.listaAuditoresConvidados.push(alocado);\r\n }\r\n\r\n private atulizarListaDispensados(dispensado: any){\r\n this.model.listaAuditores.push(dispensado);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n private montarMensagensValidacao(model: IBaseModel) {\r\n let validacaoTexto = '';\r\n\r\n if (model.resultadoValidacao) {\r\n validacaoTexto = '';\r\n for (const val of model.resultadoValidacao) {\r\n validacaoTexto += ` • ${val.errorMessage}`;\r\n }\r\n }\r\n\r\n return validacaoTexto;\r\n }\r\n\r\n public concatUg(sigla, nome) {\r\n return sigla + ' - ' + nome;\r\n }\r\n\r\n public obterAuditoresCapacidadeTrabalho(): IPaaCoordenacaoAuditorModel[][] {\r\n return JSON.parse(localStorage.getItem('auditores')) as IPaaCoordenacaoAuditorModel[][]\r\n }\r\n\r\n private exibirMensagemErro(texto: string){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: texto,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n }\r\n\r\n\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Alocar Equipe

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Insira uma data de ínicio.\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Insira uma data de fim.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n Auditores da {{ coordenadorNome }}\r\n \r\n {{ element.nomeAuditor }}\r\n
\r\n
\r\n Nenhum Auditor cadastrado\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n Auditores de outras Coordenações\r\n \r\n {{ element.nomeAuditor }}\r\n
\r\n
\r\n Nenhuma Auditor cadastrado\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild, Inject } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-alterar-tipo-auditoria',\r\n templateUrl: './modal-alterar-tipo-auditoria.component.html',\r\n styleUrls: ['./modal-alterar-tipo-auditoria.component.scss']\r\n})\r\nexport class ModalAlterarTipoAuditoriaComponent implements OnInit {\r\n public form = new FormGroup({\r\n justificativaTipoAuditoria: new FormControl('', Validators.required),\r\n });\r\n \r\n public titulo: string;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n\r\n this.titulo = data.titulo ?? \"Tem certeza que deseja reativar esse registro?\";\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.form.get('justificativaTipoAuditoria').value);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n","import { Component, OnInit, ViewChild, Inject } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\n\r\n@Component({\r\n selector: 'app-modal-alterar-tipo-enfase',\r\n templateUrl: './modal-alterar-tipo-enfase.component.html',\r\n styleUrls: ['./modal-alterar-tipo-enfase.component.scss']\r\n\r\n})\r\nexport class ModalAlterarTipoEnfaseComponent implements OnInit {\r\n public form = new FormGroup({\r\n justificativaTipoEnfase: new FormControl('', Validators.required),\r\n });\r\n \r\n public titulo: string;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n\r\n this.titulo = data.titulo ?? \"Tem certeza que deseja reativar esse registro?\";\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.form.get('justificativaTipoEnfase').value);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n","
\r\n
\r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort, MatSortable } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { ICriterioModel } from 'src/app/models/criterio.model';\r\n\r\n@Component({\r\n selector: 'app-modal-cadastrar-criterio',\r\n templateUrl: './modal-cadastrar-criterio.component.html',\r\n styleUrls: ['./modal-cadastrar-criterio.component.scss']\r\n})\r\nexport class ModalCadastrarCriterioComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public todosCriterios = [] as ICriterioModel[];\r\n public semDados = true;\r\n public displayedColumns = ['selecao', 'nome', 'tipoEntrada'];\r\n public searchNome: string;\r\n public selectedModel: any;\r\n public valorExibicao = 1;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.todosCriterios = data;\r\n this.dataSource.data = this.todosCriterios;\r\n this.dataSource._updateChangeSubscription();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sort.sort(({ id: 'nome', start: 'asc'}) as MatSortable);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public buscar() {\r\n \r\n this.selectedModel = null;\r\n if(this.searchNome && this.searchNome != \"\"){\r\n this.dataSource.data = this\r\n .todosCriterios\r\n .filter(a => \r\n a\r\n .nome\r\n .normalize('NFD')\r\n .replace(/\\p{Diacritic}/gu, \"\")\r\n .toLocaleLowerCase()\r\n .includes(this\r\n .searchNome\r\n .normalize('NFD')\r\n .replace(/\\p{Diacritic}/gu, \"\")\r\n .toLocaleLowerCase())\r\n || a\r\n .tipoEntrada.descricao\r\n .normalize('NFD')\r\n .replace(/\\p{Diacritic}/gu, \"\")\r\n .toLocaleLowerCase()\r\n .includes(this\r\n .searchNome\r\n .normalize('NFD')\r\n .replace(/\\p{Diacritic}/gu, \"\")\r\n .toLocaleLowerCase()));\r\n }else{\r\n this.dataSource.data = this.todosCriterios;\r\n }\r\n\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = false;\r\n \r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close({criterio: this.selectedModel, valorExibicao: this.valorExibicao});\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n\r\n public itemAgrupador(index: number, item: any): boolean {\r\n return item.grupo;\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Buscar Critério

\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Descrição {{element.nome}} Tipo entrada {{element.tipoEntrada.descricao}}
\r\n
Nenhum critério selecionado
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort, MatSortable } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IIndicadorModel } from 'src/app/models/indicador.model';\r\n\r\n@Component({\r\n selector: 'app-modal-cadastrar-indicador',\r\n templateUrl: './modal-cadastrar-indicador.component.html',\r\n styleUrls: ['./modal-cadastrar-indicador.component.scss']\r\n})\r\nexport class ModalCadastrarIndicadorComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public todosIndicadores = [] as IIndicadorModel[];\r\n public semDados = true;\r\n public displayedColumns = ['selecao', 'nome'];\r\n public searchNome: string;\r\n public selectedModel: any;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.todosIndicadores = data;\r\n this.dataSource.data = this.todosIndicadores;\r\n this.dataSource._updateChangeSubscription();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sort.sort(({ id: 'nome', start: 'asc'}) as MatSortable);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n \r\n if(this.searchNome && this.searchNome != \"\"){\r\n this.dataSource.data = this\r\n .todosIndicadores\r\n .filter(a => \r\n a\r\n .nome\r\n .normalize('NFD')\r\n .replace(/\\p{Diacritic}/gu, \"\")\r\n .toLocaleLowerCase()\r\n .includes(this.searchNome.toLocaleLowerCase()));\r\n }else{\r\n this.dataSource.data = this.todosIndicadores;\r\n }\r\n\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = false;\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.selectedModel);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n\r\n public itemAgrupador(index: number, item: any): boolean {\r\n return item.grupo;\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Buscar Indicador

\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Descrição {{element.nome}}
\r\n
Nenhum indicador selecionado
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { IPaaCoordenacaoCapacidadeModel } from 'src/app/models/paa-coordenacao-capacidade.model';\r\nimport { IPaaCoordenacaoDispensaModel } from 'src/app/models/paa-coordenacao-dispensa.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ITipoDispensaModel } from 'src/app/models/tipo-dispensa.model';\r\nimport { IAuditorCoordenacaoModel } from 'src/app/models/auditor-coordenacao.model';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { PaaService } from 'src/app/services/paa.service';\r\nimport { ICoordenacaoModel } from 'src/app/models/coordenacao.model';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-capacidade-dispensa',\r\n templateUrl: './modal-capacidade-dispensa.component.html',\r\n styleUrls: [ './modal-capacidade-dispensa.component.scss' ],\r\n})\r\nexport class ModalCapacidadeDispensaComponent implements OnInit {\r\n public model: IPaaCoordenacaoCapacidadeModel;\r\n public minDate: Date;\r\n public maxDate: Date;\r\n\r\n public modelNovaDispensa = {} as IPaaCoordenacaoDispensaModel;\r\n public dispensaDataSource = new MatTableDataSource([]);\r\n public auditorDataSource = new MatTableDataSource([]);\r\n\r\n public dispensaSemDados = true;\r\n public auditorSemDados = true;\r\n\r\n public tabelaTipoDispensa = [] as ITipoDispensaModel[];\r\n public tabelaAuditores = [] as IAuditorCoordenacaoModel[];\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n private paaService: PaaService,\r\n @Inject(MAT_DIALOG_DATA) data\r\n ) {\r\n this.minDate = new Date(data.ano, 1 - 1, 1);\r\n this.maxDate = new Date(data.ano, 12 - 1, 31);\r\n this.model = data.capacidade;\r\n this.model.auditor = this.model.auditor || [];\r\n\r\n this.modelNovaDispensa.dataFim = this.maxDate;\r\n this.modelNovaDispensa.dataInicio = this.minDate;\r\n\r\n this.tabelaTipoDispensa = data.tiposDispensas;\r\n this.tabelaAuditores = (data.coordenacao as ICoordenacaoModel).auditorCoordenacao;\r\n\r\n this.dispensaDataSource = new MatTableDataSource(this.model.dispensa);\r\n this.dispensaSemDados = this.dispensaDataSource.data.length === 0;\r\n\r\n // Montar lista de Auditores\r\n for (const auditor of this.tabelaAuditores) {\r\n this.auditorDataSource.data.push({\r\n paaId: this.model.paaId,\r\n coordenacaoId: this.model.coordenacaoId,\r\n ano: this.model.ano,\r\n auditorId: auditor.auditorId,\r\n nomeAuditor: auditor.nomeAuditor,\r\n selecionado:\r\n this.model.auditor.findIndex((a) => a.auditorId === auditor.auditorId && a.selecionado) >= 0,\r\n });\r\n }\r\n\r\n this.auditorSemDados = this.auditorDataSource.data.length === 0;\r\n this.auditorDataSource._updateChangeSubscription();\r\n }\r\n\r\n ngOnInit(): void {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n public incluirDispensa() {\r\n \r\n this.modelNovaDispensa.paaId = this.model.paaId;\r\n this.modelNovaDispensa.coordenacaoId = this.model.coordenacaoId;\r\n this.modelNovaDispensa.ano = this.model.ano;\r\n this.modelNovaDispensa.nomeAuditor = this.tabelaAuditores.find(\r\n (f) => f.id === this.modelNovaDispensa.auditorId\r\n ).nomeAuditor;\r\n this.modelNovaDispensa.tipoDispensa = this.tabelaTipoDispensa.find(\r\n (f) => f.id === this.modelNovaDispensa.tipoDispensaId\r\n );\r\n\r\n var duplicada = this.dispensaDataSource.data.filter(\r\n (_) =>\r\n _.auditorId == this.modelNovaDispensa.auditorId &&\r\n ((this.modelNovaDispensa.dataInicio >= _.dataInicio && this.modelNovaDispensa.dataFim <= _.dataFim) ||\r\n (this.modelNovaDispensa.dataFim >= _.dataInicio && this.modelNovaDispensa.dataFim <= _.dataFim) ||\r\n (this.modelNovaDispensa.dataInicio >= _.dataInicio &&\r\n this.modelNovaDispensa.dataInicio <= _.dataFim))\r\n );\r\n\r\n if (duplicada.length > 0) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: 'Existe uma dispensa já cadastrada neste período para este auditor!',\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.dispensaDataSource.data.push(cloneDeep(this.modelNovaDispensa));\r\n this.dispensaDataSource._updateChangeSubscription();\r\n this.modelNovaDispensa = {} as IPaaCoordenacaoDispensaModel;\r\n this.dispensaSemDados = false;\r\n }\r\n }\r\n\r\n public excluirDispensa(ind: number) {\r\n Swal.fire({\r\n title: 'Excluir Registro',\r\n text: 'Tem certeza que deseja excluir esse Registro?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n if (res.value) {\r\n this.dispensaDataSource.data.splice(ind, 1);\r\n this.dispensaDataSource._updateChangeSubscription();\r\n this.dispensaSemDados = this.dispensaDataSource.filteredData.length === 0;\r\n }\r\n });\r\n }\r\n\r\n public concluir() {\r\n this.model.dispensa = this.dispensaDataSource.data;\r\n this.model.auditor = this.auditorDataSource.data.filter((d) => d.selecionado);\r\n\r\n this.paaService\r\n .atualizarCapacidadeTrabalho(this.model.paaId, this.model)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro salvo com sucesso!',\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n });\r\n this.dialogRef.close(true);\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n });\r\n });\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n public UpdateDataInicio(event: any) {\r\n this.modelNovaDispensa.dataInicio = event.targt.value;\r\n }\r\n public UpdateDataFim(event: any) {\r\n this.modelNovaDispensa.dataFim = event.targt.value;\r\n }\r\n\r\n public getPeriodoFormatado(dtInicio, dtFim) {\r\n var dataInicio = new Date(dtInicio);\r\n var dataFim = new Date(dtFim);\r\n var strDataInicio = dataInicio.getDate() + '/' + dataInicio.getMonth() + '/' + dataInicio.getFullYear();\r\n var strDataFim = dataFim.getDate() + '/' + dataFim.getMonth() + '/' + dataFim.getFullYear();\r\n \r\n return strDataInicio + ' a ' + strDataFim;\r\n }\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

Definir Capacidade de Trabalho

\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t
\r\n\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ item.nomeAuditor }}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t
\r\n\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t Adicionar\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tAuditor\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nomeAuditor }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tDescrição\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.tipoDispensa.nome }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tDias\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.dias }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tPeríodo\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{getPeriodoFormatado(element.dataInicio, element.dataFim)}}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tNenhuma dispensa cadastrada\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tAuditor\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nomeAuditor }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t Ok\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t Cancelar\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n
\r\n","import { Component, OnInit, ViewChild, Inject } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\n\r\n@Component({\r\n selector: 'app-modal-confirmar-reativacao-distribuicao',\r\n templateUrl: './modal-confirmar-reativacao-distribuicao.component.html',\r\n styleUrls: ['./modal-confirmar-reativacao-distribuicao.component.scss']\r\n})\r\nexport class ModalConfirmarReativacaoDistribuicaoComponent implements OnInit {\r\n public form = new FormGroup({\r\n justificativa: new FormControl('', Validators.required),\r\n });\r\n \r\n public titulo: string;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n\r\n this.titulo = data.titulo ?? \"Tem certeza que deseja reativar esse registro?\";\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.form.get('justificativa').value);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-modal-descricao-paac',\r\n templateUrl: './modal-descricao-paac.component.html',\r\n styleUrls: ['./modal-descricao-paac.component.scss']\r\n})\r\nexport class ModalDescricaoDiasUteisComponent implements OnInit {\r\n diasDisponiveis: number;\r\n qntDiasPorAuditor: number;\r\n numAuditoriaPorEquipe: number;\r\n numAuditoriaPorEquipeArred: number;\r\n numEquipeDisponiveis: number;\r\n capacidadeTotalPorCoord: number;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data: any\r\n ) {\r\n // Inicialização das propriedades com os dados recebidos\r\n this.diasDisponiveis = data.capacidade.diasDisponiveis;\r\n this.qntDiasPorAuditor = data.capacidade.qntDiasPorAuditor;\r\n this.numAuditoriaPorEquipe = data.capacidade.numAuditoriaPorEquipe;\r\n this.numAuditoriaPorEquipeArred = data.capacidade.numAuditoriaPorEquipeArred;\r\n this.numEquipeDisponiveis = data.capacidade.numEquipeDisponiveis;\r\n this.capacidadeTotalPorCoord = data.capacidade.capacidadeTotalPorCoord;\r\n }\r\n\r\n ngOnInit(): void {\r\n // Aqui você pode adicionar lógica adicional de inicialização, se necessário\r\n }\r\n\r\n public onClose(): void {\r\n this.dialogRef.close();\r\n }\r\n\r\n // Exemplo de método para verificar se um objeto está vazio\r\n public isObjectEmpty(obj: any): boolean {\r\n return obj === null || obj === undefined || Object.keys(obj).length === 0;\r\n }\r\n}\r\n","
\r\n\t\r\n\t\t
\r\n\t\t\t

\r\n\t\t\t\tCálculo da Capacidade Total PAAC (Planejamento e Especial)\r\n\t\t\t

\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
Dias disponíveis (A){{ diasDisponiveis }}
Quantidade de dias por auditoria (B){{ qntDiasPorAuditor || 0 }}
Número de auditorias por equipe (C) = (A/B){{ numAuditoriaPorEquipe || 0 }}
\r\n\t\t\t\t\t\t\t\tNúmero de auditorias por equipe (D) -\r\n\t\t\t\t\t\t\t\tarredondado\r\n\t\t\t\t\t\t\t{{ numAuditoriaPorEquipeArred || 0 }}
Número de equipe disponível (E){{ numEquipeDisponiveis || 0 }}
\r\n\t\t\t\t\t\t\t\tCapacidade total por coordenação = (D x\r\n\t\t\t\t\t\t\t\t\tE)\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\tcapacidadeTotalPorCoord || 0\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t Fechar\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IEntranharDocumentoModel } from 'src/app/models/edocs/entranhar-documento.model';\r\nimport { IPapelModel } from 'src/app/models/edocs/papel.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { EdocsService } from 'src/app/services/edocs.service';\r\nimport { OpaService } from 'src/app/services/opa.service';\r\nimport { OsaService } from 'src/app/services/osa.service';\r\nimport { PaaService } from 'src/app/services/paa.service';\r\nimport { PlanejamentoService } from 'src/app/services/planejamento.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-entranhar',\r\n templateUrl: './modal-entranhar.component.html',\r\n styleUrls: ['./modal-entranhar.component.scss']\r\n})\r\nexport class ModalEntranharComponent implements OnInit {\r\n private tipoTrabalhoId: number;\r\n public tipoTrabalho: number;\r\n public comentario: string;\r\n public model = {} as IEntranharDocumentoModel;\r\n public papeis = [] as IPapelModel[];\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n public toastr: ToastrService,\r\n private edocsService: EdocsService,\r\n private paaService: PaaService,\r\n public opaService: OpaService,\r\n public osaService: OsaService,\r\n public planejamentoService: PlanejamentoService,\r\n private authService: AuthService,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n\r\n this.tipoTrabalhoId = data.tipoTrabalhoId;\r\n this.tipoTrabalho = data.tipoTrabalho;\r\n this.comentario = data.comentario;\r\n }\r\n\r\n async ngOnInit() {\r\n await this.obterPapeis();\r\n }\r\n\r\n public async obterPapeis() {\r\n\r\n try {\r\n const res = await this.edocsService.obterPapeis();\r\n if (res.sucesso) {\r\n this.papeis = res.dados;\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n }\r\n }\r\n\r\n public async concluir() {\r\n\r\n try {\r\n let res;\r\n this.model.comentario = this.comentario;\r\n if(!this.tipoTrabalho){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Tipo de Trabalho indefinido',\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n }\r\n else if(this.tipoTrabalho === 1){\r\n res = await this.paaService.homologar(this.tipoTrabalhoId, this.model)\r\n }\r\n else if(this.tipoTrabalho === 2){\r\n res = await this.opaService.homologar(this.tipoTrabalhoId, this.model)\r\n }\r\n else if(this.tipoTrabalho === 3){\r\n res = await this.planejamentoService.homologar(this.tipoTrabalhoId, this.model)\r\n }\r\n else if(this.tipoTrabalho === 4){\r\n res = await this.osaService.homologar(this.tipoTrabalhoId, this.model)\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Item homologado com sucesso!',\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n this.dialogRef.close(true);\r\n this.matDialog.closeAll();\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n })\r\n }\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Entranhar Documento do PAAC ao Processo do PEAC

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { IEnviarQuestionarioModel } from 'src/app/models/enviar-questionario.model';\r\nimport { NaturezaResponsabilidadeService } from 'src/app/services/natureza-responsabilidade.service';\r\nimport { ParametrizacaoService } from 'src/app/services/parametrizacao.service';\r\nimport { LookupModalComponent } from 'src/app/shared/components/lookup-modal/lookup-modal.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-enviar-questionario-criterio',\r\n templateUrl: './modal-enviar-questionario-criterio.component.html',\r\n styleUrls: ['./modal-enviar-questionario-criterio.component.scss']\r\n})\r\nexport class ModalEnviarQuestionarioCriterioPaaComponent implements OnInit {\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n public model: IEnviarQuestionarioModel = {} as IEnviarQuestionarioModel;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n private naturezaResponsabilidadeService: NaturezaResponsabilidadeService,\r\n private parametrizacaoService: ParametrizacaoService,\r\n public matDialog: MatDialog) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.parametrizacaoService.obterPorId('pea-prazo-padrao')\r\n .then(res => {\r\n this.model.prazoDias = res.dados.valor;\r\n });\r\n }\r\n\r\n public concluir() {\r\n if (Number(this.model.prazoDias) <= 0){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'O prazo não pode ser menor que 1',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n } \r\n this.dialogRef.close(this.model);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n \r\n public async exibirModalNaturezaResponsabilidade() {\r\n try {\r\n const res = await this.naturezaResponsabilidadeService.obter('', true);\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Natureza da Responsabilidade', res.dados);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.model.naturezaResponsabilidadeId = data.id;\r\n this.model.naturezaResponsabilidadeNome = data.nome;\r\n }\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n \r\n public exibirModal(titulo: string, dados: any, exibirId = false, customizeColumns = null): MatDialogRef {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component-natureza';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = { titulo, dados, exibirId, customizeColumns };\r\n return this.matDialog.open(LookupModalComponent, dialogConfig);\r\n }\r\n\r\n public onChangePreencherPrazo(event){\r\n this.model.prazoDias = event.target.value;\r\n }\r\n\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Detalhes do Envio

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n","import { Component, Inject, Input, OnChanges, OnInit } from '@angular/core';\r\nimport {\r\n MatDialog,\r\n MatDialogRef,\r\n MAT_DIALOG_DATA,\r\n} from '@angular/material/dialog';\r\nimport { IPaaGraficoCoordenacaoModel } from 'src/app/models/paa-grafico-coordenacao.model';\r\nimport { IPaaGraficoModel } from 'src/app/models/paa-grafico.model';\r\nimport { TemplateImpressao } from './template-impressao';\r\n\r\n@Component({\r\n selector: 'app-modal-grafico-distribuicao',\r\n templateUrl: './modal-grafico-distribuicao.component.html',\r\n styleUrls: ['./modal-grafico-distribuicao.component.scss'],\r\n})\r\nexport class ModalGraficoDistribuicaoComponent implements OnChanges, OnInit {\r\n public dados = [] as IPaaGraficoModel[];\r\n public coordenacoes = [];\r\n @Input() public dadosImprimir: IPaaGraficoModel[] = [] as IPaaGraficoModel[];\r\n\r\n constructor(\r\n public matDialog: MatDialog,\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data: IPaaGraficoModel[]\r\n ) {\r\n if (data[0]) {\r\n this.dados = data.sort(function (a, b) {\r\n return a.siglaUnidadeGestora.toUpperCase() < b.siglaUnidadeGestora.toUpperCase() ? -1 : a.siglaUnidadeGestora.toUpperCase() > b.siglaUnidadeGestora.toUpperCase() ? 1 : 0;\r\n });}\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.dados[0]) {\r\n this.ordenarCoordenacoes();\r\n }\r\n }\r\n\r\n ngOnChanges(): void {\r\n if (Object.keys(this.dadosImprimir[0] ?? {}).length !== 0) {\r\n this.dados = this.dadosImprimir.sort(function (a, b) {\r\n return a.siglaUnidadeGestora.toUpperCase() < b.siglaUnidadeGestora.toUpperCase() ? -1 : a.siglaUnidadeGestora.toUpperCase() > b.siglaUnidadeGestora.toUpperCase() ? 1 : 0;\r\n });\r\n }\r\n if (this.dados[0]) {\r\n this.ordenarCoordenacoes();\r\n }\r\n }\r\n\r\n\r\n public ordenarCoordenacoes() {\r\n this.coordenacoes = this.removeDuplicates(this.dados.map(_ => _.paaGraficoCoordenacoes).reduce((a, b) => a.concat(b)), 'siglaCoordenacao');\r\n }\r\n\r\n public removeDuplicates(originalArray: IPaaGraficoCoordenacaoModel[], prop: string) {\r\n var newArray = [];\r\n var lookupObject = {};\r\n for (var i in originalArray) {\r\n lookupObject[originalArray[i][prop]] = originalArray[i];\r\n }\r\n for (i in lookupObject) {\r\n newArray.push(lookupObject[i]);\r\n }\r\n return newArray;\r\n }\r\n\r\n public ObterEstiloCoordenacao(\r\n coordenacao: IPaaGraficoCoordenacaoModel\r\n ): string {\r\n const dataInicio = new Date(coordenacao?.dataInicio);\r\n const dataFim = new Date(coordenacao?.dataFim);\r\n\r\n const coordColor = this.stringToColor(coordenacao?.nomeCoordenacao);\r\n\r\n if (dataInicio.getFullYear() < dataFim.getFullYear()) {\r\n return (\r\n 'grid-column: ' +\r\n (dataInicio.getMonth() + 1) +\r\n '/13' +\r\n '; background-color: ' +\r\n coordColor +\r\n ';'\r\n );\r\n }\r\n\r\n return (\r\n 'grid-column: ' +\r\n (dataInicio.getMonth() + 1) +\r\n '/' +\r\n (dataFim.getMonth() + 2) +\r\n '; background-color: ' +\r\n coordColor +\r\n ';'\r\n );\r\n }\r\n\r\n public ObterEstiloLegendaCoordenacao(\r\n coordenacao: IPaaGraficoCoordenacaoModel\r\n ): string {\r\n const coordColor = this.stringToColor(coordenacao.nomeCoordenacao);\r\n\r\n return (\r\n 'background-color: ' +\r\n coordColor +\r\n '; margin-bottom: 0.5rem; width: 50%'\r\n );\r\n }\r\n\r\n public obterDescricaoCoordenacao(\r\n coordenacao: IPaaGraficoCoordenacaoModel\r\n ): string {\r\n if (!coordenacao) {\r\n return '';\r\n }\r\n\r\n const dataInicio = new Date(coordenacao.dataInicio);\r\n const dataFim = new Date(coordenacao.dataFim);\r\n\r\n return (\r\n 'Coordenação: ' +\r\n coordenacao?.nomeCoordenacao +\r\n ' \\n' +\r\n 'Data Início: ' +\r\n dataInicio?.toLocaleDateString() +\r\n ' \\n' +\r\n 'Data Fim: ' +\r\n dataFim?.toLocaleDateString() +\r\n ' \\n' +\r\n 'Auditores: ' +\r\n coordenacao?.nomeAuditores +\r\n ' \\n' +\r\n 'Tipo de Auditoria:' +\r\n coordenacao?.tipoAuditoria\r\n );\r\n }\r\n\r\n public obterDescricaoCoordenacaoLegenda(\r\n coordenacao: IPaaGraficoCoordenacaoModel\r\n ): string {\r\n if (!coordenacao) {\r\n return '';\r\n }\r\n\r\n return (\r\n 'Coordenação: ' +\r\n coordenacao?.nomeCoordenacao \r\n );\r\n }\r\n\r\n public stringToColor(text: string): string {\r\n let hash = 0;\r\n if (!text || text.length === 0) {\r\n return hash.toString();\r\n }\r\n for (let i = 0; i < text.length; i++) {\r\n // tslint:disable-next-line: no-bitwise\r\n hash = text.charCodeAt(i) + ((hash << 5) - hash);\r\n // tslint:disable-next-line: no-bitwise\r\n hash = hash & hash;\r\n }\r\n let color = '#';\r\n for (let i = 0; i < 3; i++) {\r\n // tslint:disable-next-line: no-bitwise\r\n const value = (hash >> (i * 8)) & 255;\r\n color += ('00' + value.toString(16)).substr(-2);\r\n }\r\n return color;\r\n }\r\n\r\n public imprimir(idHtmlName) {\r\n var conteudo = document.getElementById(idHtmlName).innerHTML, tela_impressao = window.open('about:blank');\r\n\r\n let template = TemplateImpressao(conteudo)\r\n\r\n tela_impressao.document.write(template);\r\n tela_impressao.window.print();\r\n tela_impressao.window.close();\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
Exibição do Gráfico de Distribuição
\r\n \r\n
\r\n
0}\">\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Unidade Gestora
\r\n JanFevMar\r\n AbrMaiJun\r\n JulAgoSet\r\n OutNovDez\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n {{ un.siglaUnidadeGestora }}\r\n
\r\n
    \r\n
  • \r\n {{ coord.siglaCoordenacao }}\r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n \r\n
    \r\n
  • \r\n {{ coord.siglaCoordenacao }}\r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","export const TemplateImpressao = (conteudo: string) => {\r\n return `\r\n \r\n \r\n \r\n \r\n \r\n \r\n Document\r\n \r\n \r\n \r\n ${conteudo}\r\n \r\n \r\n `\r\n}\r\n","import { Component, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { toIntlNumberString } from 'src/app/core/helpers/number.helper';\r\nimport { IPaaCriterioRespostaModel } from 'src/app/models/paa-criterio-resposta.model';\r\n\r\n@Component({\r\n selector: 'app-modal-importar-arquivo-criterio-paa',\r\n templateUrl: './modal-importar-arquivo-criterio-paa.component.html',\r\n styleUrls: ['./modal-importar-arquivo-criterio-paa.component.scss']\r\n})\r\nexport class ModalImportarArquivoCriterioPaaComponent {\r\n public conteudoArquivo: string;\r\n public respostas = [] as IPaaCriterioRespostaModel[];\r\n public conteudoValido: boolean;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.respostas = data.respostas as IPaaCriterioRespostaModel[];\r\n }\r\n\r\n public onFileChange(event) {\r\n const reader = new FileReader();\r\n if (event.target.files && event.target.files.length > 0) {\r\n const file = event.target.files[0];\r\n reader.readAsText(file);\r\n reader.onload = () => {\r\n this.conteudoArquivo = reader.result.toString();\r\n this.lerValidarArquivo();\r\n };\r\n }\r\n }\r\n\r\n public lerValidarArquivo() {\r\n if (!this.conteudoArquivo) {\r\n this.conteudoValido = false;\r\n return;\r\n }\r\n\r\n let erros = 0;\r\n this.conteudoArquivo.split('\\n').forEach(l => {\r\n if (l.trim().length > 0 && l.split(';').length !== 2) {\r\n erros++;\r\n } else {\r\n const resposta = this.respostas.find(r => r.unidadeGestora?.codigoUg?.toString() === l.split(';')[0]);\r\n if (resposta) {\r\n const valor = parseFloat(toIntlNumberString(l.split(';')[1]));\r\n if (isNaN(valor)) {\r\n erros++;\r\n } else {\r\n resposta.valorNumerico = valor;\r\n }\r\n }\r\n }\r\n });\r\n\r\n this.conteudoValido = erros === 0;\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.respostas);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Importar Arquivo de Respostas

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Conteúdo do arquivo validado e disponível para\r\n importação

\r\n

Arquivo com formato ou formato inválido

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport Inputmask from 'inputmask';\r\nimport { toIntlNumberString } from 'src/app/core/helpers/number.helper';\r\n\r\n@Component({\r\n selector: 'app-modal-preencher-formulario-paa',\r\n templateUrl: './modal-preencher-formulario-paa.component.html',\r\n styleUrls: ['./modal-preencher-formulario-paa.component.scss']\r\n})\r\nexport class ModalPreencherFormularioPaaComponent implements OnInit, AfterViewInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public displayedColumns = ['ug', 'valor'];\r\n public semDados = true;\r\n public visualizar = false;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.dataSource = new MatTableDataSource(data.respostas);\r\n this.visualizar = data.visualizar;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n public concluir() {\r\n const respostas = this.dataSource.data;\r\n for (const item of respostas) {\r\n item.valorNumerico = item.valorNumerico ? parseFloat(toIntlNumberString(item.valorNumerico.toString())) : undefined;\r\n }\r\n this.dialogRef.close(respostas);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Preencher Formulário

\r\n

Visualizar Respostas

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
Unidade Gestora {{element.unidadeGestora.nome}} Valor \r\n \r\n {{element.valorNumerico | number:'1.2-2':'pt-br'}}
\r\n
Sem dados a exibir
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
","import { Component, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IPaaRankingPrioridadeModel } from 'src/app/models/paa-ranking-prioridade.model';\r\nimport { RankingDistribuicaoService } from 'src/app/services/ranking-prioridade.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-ranking-prioridade',\r\n templateUrl: './modal-ranking-prioridade.component.html',\r\n styleUrls: ['./modal-ranking-prioridade.component.scss']\r\n})\r\nexport class ModalRankingPrioridadeComponent {\r\n\r\n public rankingPrioridadeDataSource = new MatTableDataSource([]);\r\n public rankingPrioridadeEmpresasPublicasDataSource = new MatTableDataSource([]);\r\n public semDadosRanking = false;\r\n public semDadosRankingEmpresaPublica = false;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public rankingService: RankingDistribuicaoService,\r\n @Inject(MAT_DIALOG_DATA) public data) {\r\n this.obterRankingPrioridade()\r\n }\r\n\r\n public obterRankingPrioridade() {\r\n this.rankingService\r\n .obterRankingDistribuicaoSimplificado(this.data.id, this.data.indicadorId, 2)\r\n .then((res) => {\r\n \r\n const lista = res.dados.filter(_ => !_.unidadeGestora.empresaPublica).map(_ => ({ ..._, nome: _.unidadeGestora.nome, sigla: _.unidadeGestora.sigla, codigoUg: _.unidadeGestora.codigoUg }));\r\n this.rankingPrioridadeDataSource = new MatTableDataSource(lista as unknown as IPaaRankingPrioridadeModel[]);\r\n this.rankingPrioridadeDataSource._updateChangeSubscription();\r\n this.semDadosRanking = this.rankingPrioridadeDataSource.data.length === 0;\r\n\r\n const listaPublicas = res.dados.filter(_ => _.unidadeGestora.empresaPublica).map(_ => ({ ..._, nome: _.unidadeGestora.nome, sigla: _.unidadeGestora.sigla, codigoUg: _.unidadeGestora.codigoUg }));\r\n this.rankingPrioridadeEmpresasPublicasDataSource = new MatTableDataSource(listaPublicas as unknown as IPaaRankingPrioridadeModel[]);\r\n this.rankingPrioridadeEmpresasPublicasDataSource._updateChangeSubscription();\r\n this.semDadosRankingEmpresaPublica = this.rankingPrioridadeEmpresasPublicasDataSource.data.length === 0;\r\n\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n}\r\n\r\n\r\n public concluir() {\r\n this.dialogRef.close();\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Visualizar o ranking de prioridade do indicador {{ data.nomeIndicador}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort, MatSortable } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { IPaaDistribuicaoColunasModel } from 'src/app/models/paa-distribuicao-colunas.model';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\n\r\n@Component({\r\n selector: 'app-modal-selecionar-colunas',\r\n templateUrl: './modal-selecionar-colunas.component.html',\r\n styleUrls: ['./modal-selecionar-colunas.component.scss']\r\n})\r\nexport class ModalSelecionarColunasComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public todosIndicesCriterios = [] as IPaaDistribuicaoColunasModel[];\r\n public semDados = true;\r\n public displayedColumns = ['selecao', 'nome'];\r\n public searchNome: string;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.todosIndicesCriterios = data;\r\n this.dataSource.data = data.map(d => {\r\n return { id: d.id, ativo: d.ativo, nome: d.nomeIndicador ? d.nomeIndicador + '/' + d.nomeCriterio : d.nomeCriterio };\r\n });\r\n this.dataSource._updateChangeSubscription();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sort.sort(({ id: 'nome', start: 'asc'}) as MatSortable);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.dataSource.data);\r\n }\r\n\r\n public itemAgrupador(index: number, item: any): boolean {\r\n return item.grupo;\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Ocultar e Exibir Colunas

\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Critério/Índice {{element.nome}}
\r\n
Nenhuma Coluna a exibir.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort, MatSortable } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\n\r\n@Component({\r\n selector: 'app-modal-selecionar-ug',\r\n templateUrl: './modal-selecionar-ug.component.html',\r\n styleUrls: ['./modal-selecionar-ug.component.scss']\r\n})\r\nexport class ModalSelecionarUGComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public todasUnidadesGestoras = [] as IUnidadeGestoraModel[];\r\n public semDados = true;\r\n public displayedColumns = ['selecao', 'sigla', 'nome'];\r\n public searchNome: string;\r\n public selectedModel: any;\r\n public noItemSelected: boolean = true;\r\n public modoSelecaoMultiplo: boolean = false;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.todasUnidadesGestoras = data.dados;\r\n this.modoSelecaoMultiplo = data.modoSelecaoMultiplo ?? false;\r\n this.dataSource.data = this.todasUnidadesGestoras;\r\n this.dataSource._updateChangeSubscription();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sort.sort(({ id: 'nome', start: 'asc'}) as MatSortable);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n this.dataSource.data = this.todasUnidadesGestoras.filter(a =>\r\n (a.nome.toLowerCase().includes(this.searchNome.trim().toLowerCase())) ||\r\n (a.sigla.toLowerCase().includes(this.searchNome.trim().toLowerCase()))\r\n );\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = false;\r\n }\r\n\r\n public concluir() {\r\n\r\n if(this.modoSelecaoMultiplo){\r\n let selectedUgs = this.dataSource.data.filter(s => s.selecao == true);\r\n this.dialogRef.close(selectedUgs);\r\n }else{\r\n this.dialogRef.close(this.selectedModel);\r\n }\r\n \r\n }\r\n\r\n public selecionar(item: any) {\r\n \r\n if(this.modoSelecaoMultiplo){\r\n item.selecao = !item.selecao;\r\n this.dataSource._updateChangeSubscription();\r\n \r\n let selecionados = this.dataSource.data.filter(s => s.selecao == true);\r\n this.noItemSelected = selecionados.length == 0;\r\n }else{\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n this.noItemSelected = !this.selectedModel;\r\n }\r\n }\r\n\r\n public itemAgrupador(index: number, item: any): boolean {\r\n return item.grupo;\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n \r\n}\r\n","
\r\n
\r\n
\r\n

Selecionar Unidade Gestora

\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Sigla {{element.sigla}} Nome {{element.nome}}
\r\n
Nenhuma Unidade Gestora selecionada
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ICriterioQuestionarioModel } from 'src/app/models/criterio-questionario.model';\r\nimport { ICriterioModel } from 'src/app/models/criterio.model';\r\nimport { IPerguntaModel } from 'src/app/models/pergunta.model';\r\n\r\n@Component({\r\n selector: 'app-modal-visualizar-questionario-criterio',\r\n templateUrl: './modal-visualizar-questionario-criterio.component.html',\r\n styleUrls: ['./modal-visualizar-questionario-criterio.component.scss']\r\n})\r\nexport class ModalVisualizarQuestionarioCriterioPaaComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n public model: ICriterioQuestionarioModel = {} as ICriterioQuestionarioModel;\r\n public criterioDataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) data: IBaseModel) {\r\n if (data) {\r\n this.model = data.dados.find(_ => _);\r\n this.criterioDataSource = new MatTableDataSource(data.dados.map(_ => _.criterio));\r\n this.criterioDataSource._updateChangeSubscription();\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public fechar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Visualizar Questionário

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Pergunta\r\n {{ element?.pergunta?.nome }}\r\n Tipo de Entrada\r\n {{element?.pergunta?.tipoEntrada?.descricao}}\r\n Unidade de Medida \r\n {{element?.unidade}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n","import { MatSort, MatSortable } from '@angular/material/sort';\r\nimport { ModalAlocarEquipeComponent } from './modal-alocar-equipe/modal-alocar-equipe.component';\r\nimport { Component, OnInit, ViewChild , EventEmitter, Output} from '@angular/core';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { ModalGraficoDistribuicaoComponent } from './modal-grafico-distribuicao/modal-grafico-distribuicao.component';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport { ICriterioPaaModel } from 'src/app/models/criterio-paa.model';\r\nimport { IPaaUnidadeGestoraModel } from 'src/app/models/paa-unidade-gestora.model';\r\nimport Swal from 'sweetalert2';\r\nimport { Location } from '@angular/common';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { IPaaDadosBasicosModel } from 'src/app/models/paa-dados-basicos.model';\r\nimport { PeriodoService } from 'src/app/services/periodo.service';\r\nimport { IPeaRankingPrioridadeModel } from 'src/app/models/pea-ranking-prioridade.model';\r\nimport { DateHelper } from 'src/app/core/helpers/date.helper';\r\n\r\n //MODELS\r\n import { IPaaModel } from 'src/app/models/paa.model';\r\n import { IPaaCoordenacaoAuditorModel } from 'src/app/models/paa-coordenacao-auditor.model';\r\n import { IPaaDistribuicaoModel } from 'src/app/models/paa-distribuicao.model';\r\n import { ITipoAuditoriaModel } from 'src/app/models/tipo-auditoria.model';\r\n import { IRelatoriaCapituloModel } from 'src/app/models/relatoria-capitulo.model';\r\n import { ITipoEnfaseModel } from 'src/app/models/tipo-enfase.model';\r\n import { ICargaCriterioPeaModel } from 'src/app/models/carga-criterio-pea.model';\r\n import { IPaaInformacoesBasicasModel } from 'src/app/models/paa-informacoes-basicas.model';\r\n \r\n\r\n //COMPONENTS\r\n import { ModalConfirmarReativacaoDistribuicaoComponent } from './modal-confirmar-reativacao-distribuicao/modal-confirmar-reativacao-distribuicao.component';\r\n import { ModalSelecionarUGComponent } from './modal-selecionar-ug/modal-selecionar-ug.component';\r\n import { ModalSelecionarColunasComponent } from './modal-selecionar-colunas/modal-selecionar-colunas.component';\r\n\r\n //SERVICES\r\n import { PaaService } from 'src/app/services/paa.service';\r\n import { TipoAuditoriaService } from 'src/app/services/tipo-auditoria.service';\r\n import { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\n import { TipoDispensaService } from 'src/app/services/tipo-dispensa.service';\r\n import { CoordenacaoService } from 'src/app/services/coordenacao.service';\r\n import { CriterioService } from 'src/app/services/criterio.service';\r\n import { IndicadorService } from 'src/app/services/indicador.service';\r\n import { TipoEnfaseService } from 'src/app/services/tipo-enfase.service';\r\n import { PeaService } from 'src/app/services/pea.service';\r\n \r\n\r\n\r\n@Component({\r\n selector: 'app-paa-elaborar',\r\n templateUrl: './paa-elaborar.component.html',\r\n styleUrls: ['./paa-elaborar.component.scss'],\r\n})\r\nexport class PaaElaborarComponent extends BaseFormComponent implements OnInit {\r\n\r\n @Output() public abaEmitter: EventEmitter = new EventEmitter();\r\n public paaInformacoesBasicas: IPaaInformacoesBasicasModel = {} as IPaaInformacoesBasicasModel;\r\n public peaHomologado = false;\r\n \r\n public modelDadosBasicos: IPaaDadosBasicosModel = {} as IPaaDadosBasicosModel;\r\n \r\n public ugDataSource = new MatTableDataSource([]); \r\n \r\n public model: IPaaModel = {} as IPaaModel;\r\n public ugSemDados = true;\r\n public criteriosIndicadoresSemDados = true;\r\n public criterioSemDados = true;\r\n public tituloAbas : string;\r\n\r\n \r\n public semDadosRankingEmpresaPublica = false;\r\n public semDadosRanking = false;\r\n public rankingPrioridadeEmpresasPublicasDataSource = new MatTableDataSource([]);\r\n public rankingPrioridadeDataSource = new MatTableDataSource([]);\r\n public visualizarBotaoFormulario = false;\r\n public criterioDataSource = new MatTableDataSource([]);\r\n\r\n pisoAlto: string;\r\n tetoAlto: string;\r\n pisoMedio: string;\r\n tetoMedio: string;\r\n pisoBaixo: string;\r\n tetoBaixo: string;\r\n \r\n public disalibilitarinput = false;\r\n\r\n public relatoriaDados: IRelatoriaCapituloModel[] = null;\r\n public visualizarRelatoria = false;\r\n\r\n public aba = 1;\r\n public salvarDadosPendente = false;\r\n public paa : IPaaModel = {} as IPaaModel;\r\n public tiposAuditorias: ITipoAuditoriaModel[];\r\n public tiposEnfase: ITipoEnfaseModel[];\r\n public usuarioCoordenadorPaa = false;\r\n public paaHomologado = false;\r\n public historico:boolean;\r\n\r\n public nomeTitulo: string;\r\n\r\n public filtroEnfase = {} as FiltroModel;\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n //periodoId: new FormControl(null, Validators.required),\r\n dataInicio: new FormControl(''),\r\n dataFim: new FormControl(''),\r\n //indicadorId: new FormControl(null, Validators.required),\r\n peaId: new FormControl(''),\r\n origem: new FormControl('', Validators.required),\r\n subcapitulo: new FormControl(''),\r\n origemAuditoria: new FormControl({ value: '', disabled: true }),\r\n });\r\n\r\n @ViewChild('tabela1') public tabela1: MatSort;\r\n @ViewChild('tabela2') public tabela2: MatSort;\r\n \r\n @ViewChild('tabela5') public tabela5: MatSort;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort; \r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private _location: Location,\r\n private paaService: PaaService,\r\n private peaService: PeaService,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n private tipoDispensaService: TipoDispensaService,\r\n private coordenacaoService: CoordenacaoService,\r\n private tipoAuditoriaService: TipoAuditoriaService,\r\n private periodoService: PeriodoService,\r\n public matDialog: MatDialog,\r\n public criterioService: CriterioService,\r\n public authService: AuthService,\r\n public indicadorService: IndicadorService,\r\n private activatedRoute: ActivatedRoute,\r\n private tipoEnfaseService: TipoEnfaseService,\r\n private dateHelper: DateHelper,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n\r\n if (this.model) {\r\n this.form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n //numeroOpa: new FormControl({ value: '', disabled: true }),\r\n origemAuditoria: new FormControl({ value: '', disabled: true }),\r\n //indicadorId: new FormControl(null, Validators.required),\r\n peaId: new FormControl(null, Validators.required),\r\n dataInicio: new FormControl('', Validators.required),\r\n dataFim: new FormControl('', Validators.required),\r\n /* dataElaboracao: new FormControl({ value: '', disabled: true }),\r\n tipoAuditoriaId: new FormControl('', Validators.required),*/\r\n unidadeGestoraNome: new FormControl({ value: '' }),\r\n unidadeGestoraId: new FormControl({ value: '' }),\r\n /*dataInicioPrevista: new FormControl('', Validators.required),\r\n dataFimPrevista: new FormControl('', Validators.required),\r\n objeto: new FormControl('', Validators.required),\r\n dataInicioRealizacao: new FormControl(''),\r\n dataFimRealizacao: new FormControl(''),\r\n auditorCoordenacaoId: new FormControl('', Validators.required),\r\n notaRodape: new FormControl(''),\r\n tipoEnfaseId: new FormControl('') */\r\n });\r\n }\r\n\r\n\r\n }\r\n\r\n config: AngularEditorConfig = {\r\n editable: true,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n // ['bold']\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n\r\n this.aba = 0;\r\n this.buscar()\r\n }\r\n\r\n \r\n\r\n \r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values); \r\n }\r\n\r\n \r\n \r\n\r\n public async buscarInformacoesBasicas(){\r\n\r\n await this.paaService.buscarInformacoesBasicas(this.id)\r\n .then((res)=> {\r\n if(res.sucesso)\r\n this.paaInformacoesBasicas = res.dados;\r\n })\r\n }\r\n\r\n public async buscar() {\r\n \r\n await this.buscarInformacoesBasicas();\r\n this.atribuirTitulo();\r\n \r\n }\r\n\r\n \r\n\r\n private verificarUsuarioCoordenador(paa: IPaaModel) {\r\n this.usuarioCoordenadorPaa = false;\r\n\r\n if (this.authService.possuiPerfis(['Coordenador'])) {\r\n this.coordenacaoService\r\n .obterCoordenacoesCoordenador()\r\n .then((resCoordenacoes) => {\r\n let encontrou = false;\r\n\r\n if (resCoordenacoes.dados && resCoordenacoes.dados.length > 0) {\r\n resCoordenacoes.dados.forEach(function eachCoordenacao(\r\n coordenacao\r\n ) {\r\n paa.paaCoordenacao.forEach(function eachCoordenacaoPaa(\r\n coordenacaoPaa\r\n ) {\r\n if (coordenacao.id === coordenacaoPaa.coordenacaoId) {\r\n encontrou = true;\r\n }\r\n });\r\n });\r\n this.usuarioCoordenadorPaa = encontrou;\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n groupByColumns: string[] = [];\r\n columnsLabel: any[] = [\r\n {\r\n field: 'criterio',\r\n label: 'Indicador/Critério',\r\n },\r\n {\r\n field: 'unidadeMedida',\r\n label: 'Unidade de medida',\r\n },\r\n {\r\n field: 'tipoEntrada',\r\n label: 'Tipo de Entrada',\r\n },\r\n ];\r\n columns: any[] = [\r\n {\r\n field: 'criterio',\r\n label: 'Critério',\r\n },\r\n {\r\n field: 'unidadeMedida',\r\n label: 'Unidade de medida',\r\n },\r\n {\r\n field: 'tipoEntrada',\r\n label: 'Tipo de Entrada',\r\n },\r\n {\r\n field: 'acoes',\r\n },\r\n {\r\n field: 'actions',\r\n },\r\n ];\r\n _alldata: ICriterioPaaModel[];\r\n displayedColumns: string[];\r\n\r\n\r\n public async mudarAba(ind: number) {\r\n if (this.novoRegistro || (this.aba === 0 && this.salvarDadosPendente)) {\r\n this.exibirMensagemErro('Por favor, salve os dados antes de prosseguir');\r\n\r\n return;\r\n }\r\n\r\n this.aba = ind;\r\n await this.buscar();\r\n }\r\n\r\n public getnomeAuditores(auditores: IPaaCoordenacaoAuditorModel[]): string {\r\n return auditores.map((e) => e.nomeAuditor).join(',');\r\n }\r\n\r\n public cancelar() {\r\n this._location.back();\r\n }\r\n\r\n \r\n\r\n public agrupadorCriterio(index: number, item: any): boolean {\r\n return item.grupo;\r\n }\r\n\r\n public subTotalCriterio(index: number, item: any): boolean {\r\n return item.subTotal;\r\n }\r\n\r\n \r\n\r\n public async verificarDuplicidadeUG(\r\n distribuicao: number,\r\n unidadeGestoraId: number\r\n ) {\r\n const res = await this.paaService.obterPorId(distribuicao);\r\n if (!res.dados.paaUnidadeGestora || res.dados.paaUnidadeGestora.length <= 0) return true;\r\n\r\n const duplicada = res.dados.paaUnidadeGestora?.filter(\r\n (_) => _.unidadeGestoraId == unidadeGestoraId\r\n );\r\n if (duplicada?.length == 0) {\r\n return true;\r\n }\r\n\r\n var obrigatoria = duplicada?.filter(\r\n (_) => _.unidadeGestora.auditoriaObrigatoria == true\r\n );\r\n if (obrigatoria?.length > 0 && obrigatoria?.length < 2) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public async incluirUG() {\r\n\r\n this.unidadeGestoraService.obter({ pagina: 0, itensPorPagina: 10000 } as FiltroModel)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.maxHeight = '80vh';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n // dialogConfig.data = res.dados.resultado.filter(\r\n // (_) => !this.distribuicaoDataSource.data.find((d) => _.id === d.id)\r\n // );\r\n const modal = this.matDialog.open(\r\n ModalSelecionarUGComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe(async (data) => {\r\n const dialogConfigJustificativa = new MatDialogConfig();\r\n dialogConfigJustificativa.id = 'modal-component';\r\n dialogConfigJustificativa.width = '650px';\r\n dialogConfigJustificativa.hasBackdrop = true;\r\n dialogConfigJustificativa.disableClose = true;\r\n dialogConfigJustificativa.data = {titulo: \"Tem certeza que deseja incluir a UG?\"};\r\n const modalJustificativa = this.matDialog.open(\r\n ModalConfirmarReativacaoDistribuicaoComponent,\r\n dialogConfig\r\n );\r\n\r\n modalJustificativa.afterClosed().subscribe((item) => {\r\n if (data && item) {\r\n const distribuicao = {} as IPaaDistribuicaoModel;\r\n distribuicao.ativo = true;\r\n distribuicao.paaId = this.paa.id;\r\n distribuicao.unidadeGestoraId = data.id;\r\n distribuicao.manual = true;\r\n distribuicao.justificativa = item;\r\n const verificarDuplicidade = this.verificarDuplicidadeUG(\r\n distribuicao.paaId,\r\n distribuicao.unidadeGestoraId\r\n );\r\n\r\n if (verificarDuplicidade) {\r\n (async () => {\r\n const result = await this.paaService.adicionarDistribuicao(distribuicao);\r\n try {\r\n if (result.sucesso) {\r\n this.exibirMensagemSucesso('Unidade Gerencial adicionada com sucesso');\r\n await this.buscar();\r\n } else {\r\n this.exibirMensagemErro(result.mensagem.descricao);\r\n }\r\n } catch (error) {\r\n this.exibirMensagemErro(error.mensagem.descricao);\r\n } finally {\r\n //this.obterPainelDistribuicao();\r\n //this.obterAlocacoesEquipes();\r\n }\r\n })()\r\n } else {\r\n this.exibirMensagemErro('Essa UG já está incluida');\r\n }\r\n }\r\n });\r\n });\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public async redirectTo(uri: string) {\r\n this.router\r\n .navigateByUrl('/', { skipLocationChange: true })\r\n .then(() => this.router.navigate([uri]));\r\n }\r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n // public async obterTiposAuditorias() {\r\n // return this.tipoAuditoriaService.obter('', true).then((res) => {\r\n // this.tiposAuditorias = res?.dados.filter(a => {\r\n // const res = this.capacidadeDataSource.data.find(b => a?.coordenacaoId === b?.coordenacaoId);\r\n // if (res?.coordenacaoId) {\r\n // return a;\r\n // }\r\n // });\r\n // });\r\n // }\r\n\r\n public async obterTiposEnfase(){\r\n this.filtroEnfase.itensPorPagina = 99;\r\n this.filtroEnfase.ativo = true;\r\n return this.tipoEnfaseService.obter(this.filtroEnfase).then((res) =>\r\n {\r\n this.tiposEnfase = res?.dados.resultado;\r\n })\r\n }\r\n\r\n \r\n\r\n \r\n public lowerCase(nome: string) {\r\n return nome.toLowerCase().replace(/(?:^|\\s)\\S/g, (X) => X.toUpperCase());\r\n }\r\n \r\n\r\n addGroups(data: any[], groupByColumns: string[]): any[] {\r\n const rootGroup = new Group();\r\n rootGroup.expanded = true;\r\n return this.getSublevel(data, 0, groupByColumns, rootGroup);\r\n }\r\n\r\n groupBy(key) {\r\n return function group(array) {\r\n return array.reduce((acc, obj) => {\r\n const property = obj[key];\r\n acc[property] = acc[property] || [];\r\n acc[property].push(obj);\r\n return acc;\r\n }, {});\r\n };\r\n }\r\n\r\n getSublevel(\r\n data: any[],\r\n level: number,\r\n groupByColumns: string[],\r\n parent: Group\r\n ): any[] {\r\n if (level >= groupByColumns.length) {\r\n return data;\r\n }\r\n\r\n const currentColumn = groupByColumns[level];\r\n\r\n const groupByCurrentColumn = this.groupBy(currentColumn);\r\n\r\n const groups = this.uniqueBy(\r\n Object.entries(groupByCurrentColumn(data))\r\n .map(([k, v]) => ({ [k]: v }))\r\n .map((row) => {\r\n const result = new Group();\r\n result.level = level + 1;\r\n result.parent = parent;\r\n result.data = row[Object.keys(row)[0]][0];\r\n for (let i = 0; i <= level; i++) {\r\n result[groupByColumns[i]] = Object.keys(row)[0];\r\n }\r\n return result;\r\n }),\r\n JSON.stringify\r\n );\r\n\r\n let subGroups = [];\r\n groups.forEach((group) => {\r\n const rowsInGroup = data.filter(\r\n (row) => group[currentColumn] === row[currentColumn]\r\n );\r\n group.totalCounts = rowsInGroup.length;\r\n const subGroup = this.getSublevel(\r\n rowsInGroup,\r\n level + 1,\r\n groupByColumns,\r\n group\r\n );\r\n subGroup.unshift(group);\r\n subGroups = subGroups.concat(subGroup);\r\n });\r\n return subGroups;\r\n }\r\n\r\n uniqueBy(a, key) {\r\n const seen = {};\r\n return a.filter((item) => {\r\n const k = key(item);\r\n return seen.hasOwnProperty(k) ? false : (seen[k] = true);\r\n });\r\n }\r\n\r\n isGroup(index, item): boolean {\r\n return item.level;\r\n }\r\n\r\n \r\n\r\n private compare(a, b, isAsc) {\r\n return (a < b ? -1 : 1) * (isAsc ? 1 : -1);\r\n }\r\n\r\n \r\n\r\n \r\n \r\n\r\n public async obterDados() { \r\n }\r\n\r\n \r\n\r\n public exibirRespostas(id: number) { \r\n }\r\n\r\n public preencherFormularioCriterio(id: number) { \r\n }\r\n\r\n public importarArquivoCriterio(id: number) { \r\n }\r\n\r\n public atribuirTitulo(){\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo PAAC';\r\n this.tituloAbas = \"Novo PAAC\";\r\n } else if (this.visualizar) {\r\n this.titulo = 'Visualizar PAAC - ' + this.paaInformacoesBasicas.nome;\r\n this.tituloAbas = 'Visualizar PAAC - ' + this.paaInformacoesBasicas.nome;\r\n } else {\r\n this.titulo = 'Editar PAAC - ' + this.paaInformacoesBasicas.nome;\r\n this.tituloAbas = 'Editar PAAC - ' + this.paaInformacoesBasicas.nome;\r\n }\r\n }\r\n\r\n public setSubmit(value: boolean){\r\n this.submit = value;\r\n }\r\n\r\n public editarColunas() {\r\n\r\n this.paaService\r\n .obterPainelDistribuicaoColunas(this.paaInformacoesBasicas.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = res.dados;\r\n const modal = this.matDialog.open(\r\n ModalSelecionarColunasComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.paaService\r\n .AlterarSatusDistribuicaoColunas(data)\r\n .then((resAssociar) => {\r\n if (resAssociar.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Colunas alteradas com sucesso',\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(resAssociar.mensagem.descricao);\r\n }\r\n })\r\n .catch((errAssociar) => {\r\n this.exibirMensagemAlerta(errAssociar.mensagem.descricao);\r\n })\r\n .finally(() => {\r\n //this.obterPainelDistribuicao();\r\n });\r\n }\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 2000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public obterTipoTrabalho(){\r\n const idTipoTrabalhoPaac = 2;\r\n const idTipoTrabalhoPaacEspecial = 8;\r\n const idOrigemEspecial = 2;\r\n\r\n return this.paaInformacoesBasicas.origem == idOrigemEspecial ? idTipoTrabalhoPaacEspecial : idTipoTrabalhoPaac;\r\n }\r\n\r\n}\r\n\r\nexport class Group {\r\n level = 0;\r\n parent: Group;\r\n data: any;\r\n expanded = true;\r\n totalCounts = 0;\r\n get visible(): boolean {\r\n return !this.parent || (this.parent.visible && this.parent.expanded);\r\n }\r\n}\r\n","\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{ tituloAbas }}\r\n\t\t\t\t\t\t

\r\n\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tDados\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tIndicadores e Critérios\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tCapacidade de Trabalho\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tPainel de Distribuição\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tAlocação de Equipes\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tRelatoria\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tLinha do Tempo\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { Component, OnInit, ViewChild, AfterViewInit } from '@angular/core';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort, MatSortable } from '@angular/material/sort';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Router } from '@angular/router';\r\nimport { PaaService } from 'src/app/services/paa.service';\r\nimport { IPaaModel } from 'src/app/models/paa.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport Swal from 'sweetalert2';\r\nimport { FiltroPaa } from 'src/app/models/filtro-paa.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\n\r\n@Component({\r\n selector: 'app-paa-list',\r\n templateUrl: './paa-list.component.html',\r\n styleUrls: ['./paa-list.component.scss']\r\n})\r\nexport class PaaListComponent extends BaseListComponent implements OnInit, AfterViewInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public dataOriginal = [];\r\n public selectedModel: any;\r\n public semDados = true;\r\n public paa = {} as IPaaModel;\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public filtro: FiltroPaa = {} as FiltroPaa;\r\n public pageEvent: any;\r\n public totalItens: number;\r\n\r\n public displayedColumns: string[] = [\r\n 'selecao',\r\n 'ano',\r\n 'pea',\r\n 'paa',\r\n 'origem',\r\n 'ativo',\r\n ];\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild('tabela1') public tabela1: MatSort;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(private toastr: ToastrService,\r\n private router: Router,\r\n private paaService: PaaService,\r\n public authService: AuthService,) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPAA, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPAA, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPAA, EnumAcaoRecurso.Excluir);\r\n this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPAA, EnumAcaoRecurso.Imprimir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPAA, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPAA, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPAA, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.enviarParaAprovacao = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPAA, EnumAcaoRecurso.EnviarParaAprovacao);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n this.configurarFiltro()\r\n this.buscar();\r\n }\r\n\r\n public async buscar() {\r\n this.selectedModel = null;\r\n \r\n this.paaService\r\n .obter(this.searchNome, this.searchAtivo, false, this.filtro)\r\n .then((res) => {\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n this.configurarFiltro();\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err?.mensagem?.descricao ?? \"Ocorreu um erro inesperado. Tente novamente mais tarde.\",\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n \r\n\r\n private configurarFiltro() {\r\n this.filtro.pagina = this.paginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.paginator.pageSize;\r\n this.filtro.colunaOrder = this.sort.active;\r\n this.filtro.direcao = this.sort.direction;\r\n }\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar()\r\n }\r\n\r\nsortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n}\r\n\r\n public sortingDataAccessor = (item: any, property: string) => {\r\n switch (property) {\r\n case 'pea':\r\n return item?.pea?.nome.trim().toLowerCase();\r\n case 'paa':\r\n return item?.nome.trim().toLowerCase(); \r\n case 'origem':\r\n return item.origem.descricao.trim().toLowerCase();\r\n case 'ativo':\r\n return item?.situacao?.nome.trim().toLowerCase();\r\n default:\r\n return item[property];\r\n }\r\n };\r\n\r\n elaborar(id: number){\r\n this.router.navigate([`/paa/${id}`]);\r\n }\r\n\r\n public relatorio(id: number) {\r\n this.router.navigate([`/paa/${id}/relatorio`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/paa/${id}/visualizar`]);\r\n }\r\n\r\n public itemAgrupador(index: number, item: any): boolean {\r\n return item.grupo;\r\n }\r\n\r\n public novo() {\r\n if (!this.permissoes.incluir) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: \"Você não possui permissão para incluir um PAAC.\",\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n }\r\n );\r\n return;\r\n } \r\n this.router.navigate(['/paa/novo']);\r\n }\r\n\r\n public excluir() { \r\n let id = this.selectedModel.id;\r\n if (!this.permissoes?.excluir) {\r\n Swal.fire({\r\n icon: 'error',\r\n title: 'Erro',\r\n text: 'Você não tem permissão para excluir PAAC.',\r\n });\r\n return;\r\n }\r\n\r\n this.paaService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'PAAC excluído com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n title: 'Atenção',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n title: 'Erro',\r\n showConfirmButton: false,\r\n timer: 5000\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public botaoExcluirHidden() : boolean {\r\n if (this.selectedModel !== undefined && this.selectedModel !== null) {\r\n return !this.permissoes.excluir \r\n || this.selectedModel.situacao.nome === 'Homologado'\r\n || this.selectedModel.situacao.nome === 'EmAprovacao'\r\n || this.selectedModel.origem.nome === 'Planejada';\r\n } else {\r\n return true;\r\n } \r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. PAAC - Plano Anual de Auditoria e Controles
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n PAAC - Plano Anual de Auditoria e Controles\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n \r\n \r\n Ano {{element.ano}} PEAC {{element.pea?.nome}} PAAC {{element.nome}} Origem {{element?.origem?.descricao}} Situação \r\n Homologado\r\n Em\r\n Aprovação\r\n Em\r\n Elaboração\r\n
Período\r\n {{groupBy.nome}} -\r\n {{groupBy.dataInicio | date:'dd/MM/yyyy'}} a {{groupBy.dataFim |\r\n date:'dd/MM/yyyy'}} \r\n
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ImprimirModel } from 'src/app/models/imprimir-model';\r\nimport { IPaaCoordenacaoCapacidadeModel } from 'src/app/models/paa-coordenacao-capacidade.model';\r\nimport { IPaaGraficoModel } from 'src/app/models/paa-grafico.model';\r\nimport { IPaaModel } from 'src/app/models/paa.model';\r\nimport { IPeriodoModel } from 'src/app/models/periodo.model';\r\nimport { AprovacaoService } from 'src/app/services/aprovacao.service';\r\nimport { PaaService } from 'src/app/services/paa.service';\r\nimport { GroupByPipe } from 'src/app/shared/pipes/groupby-pipe';\r\nimport { IPaaDistribuicaoModel } from 'src/app/models/paa-distribuicao.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IPaaDistribuicaoColunasModel } from 'src/app/models/paa-distribuicao-colunas.model';\r\nimport { MatSort, MatSortable } from '@angular/material/sort';\r\n\r\n\r\n@Component({\r\n selector: 'app-paa-relatorio',\r\n templateUrl: './paa-relatorio.component.html',\r\n styleUrls: ['./paa-relatorio.component.scss'],\r\n providers: [GroupByPipe]\r\n})\r\nexport class PaaRelatorioComponent implements OnInit {\r\n idParam: number;\r\n homologado = false;\r\n dados: ImprimirModel = {} as ImprimirModel;\r\n periodo: IPeriodoModel;\r\n public totalCapacidadeCoordenacaoes: number = 0 as number;\r\n public totalCapacidadeCoordenacaoesPea: number = 0 as number;\r\n espelho = false;\r\n filterPainelDistribuicao!: any[];\r\n listaEquipes!: string[];\r\n public grafico: IPaaGraficoModel[] = [] as IPaaGraficoModel[];\r\n groupedData: any;\r\n public distribuicaoDataSource = new MatTableDataSource([]);\r\n public columnsDistribuicaoOriginais1 = ['unidadeGestora', 'valorRisco'];\r\n public columnsDistribuicao = [];\r\n public colunasAdicionarDistribuicao = [];\r\n @ViewChild('tabela3') public tabela3: MatSort;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private localeService: BsLocaleService,\r\n private paaService: PaaService,\r\n private aprovacaoService: AprovacaoService,\r\n private groupByPipe: GroupByPipe\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.localeService.use('pt-br');\r\n const id = this.route.snapshot.paramMap.get('id');\r\n const path = this.route.snapshot.url.pop().toString();\r\n \r\n if (id) {\r\n this.idParam = parseInt(id, 10);\r\n }\r\n \r\n if (path === 'espelho-relatorio') {\r\n this.espelho = true;\r\n }\r\n \r\n this.obterDados();\r\n this.obterGrafico();\r\n \r\n }\r\n\r\n public async obterGrafico() {\r\n try {\r\n this.grafico = (await this.paaService.obterGrafico(Number(this.route.snapshot.paramMap.get('id')))).dados;\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n }\r\n }\r\n\r\n groupData() {\r\n if (this.dados && this.dados.indicadores) {\r\n this.groupedData = this.groupByPipe.transform(this.dados.indicadores);\r\n } else {\r\n this.groupedData = {}; // ou qualquer outro valor padrão desejado\r\n }\r\n}\r\n\r\n \r\ngetObjectKeys(obj: any): string[] {\r\n return obj ? Object.keys(obj) : [];\r\n}\r\n\r\n public async obterDados() {\r\n try {\r\n let res: IBaseModel;\r\n\r\n if (this.espelho) {\r\n const avaliacao = await this.aprovacaoService.imprimir(this.idParam);\r\n res = {\r\n sucesso: avaliacao.sucesso,\r\n dados: JSON.parse(avaliacao.dados),\r\n mensagem: avaliacao.mensagem,\r\n resultadoValidacao: avaliacao.resultadoValidacao\r\n } as IBaseModel;\r\n }\r\n else {\r\n res = await this.paaService.imprimir(this.idParam);\r\n }\r\n\r\n if (res.sucesso) {\r\n this.dados = res.dados;\r\n \r\n this.groupData();\r\n this.homologado = res.dados.paa.situacao.nome === 'Homologado';\r\n\r\n \r\n \r\n this.dados.capacidadeTrabalho = res.dados.capacidadeTrabalho.map((item) => {\r\n return {\r\n coordenacaoSigla: item.coordenacaoSigla,\r\n capacidadeTotalCoordenacao: item.capacidadeTotalCoordenacao as number,\r\n capacidadeTotalCoordenacaoPea: item.capacidadeTotalCoordenacaoPea as number,\r\n auditores: item.auditor.map(_ => _.nomeAuditor)\r\n } as IPaaCoordenacaoCapacidadeModel;\r\n });\r\n this.totalCapacidadeCoordenacaoes = res.dados.capacidadeTrabalho.map(_ => _.capacidadeTotalCoordenacao).reduce((sum, current) => sum + current, 0);\r\n this.totalCapacidadeCoordenacaoesPea = res.dados.capacidadeTrabalho.map(_ => _.capacidadeTotalCoordenacaoPea).reduce((sum, current) => sum + current, 0);\r\n \r\n this.dados.equipes = res.dados.equipes.filter(c => c.paaDistribuicao.ativo === true);\r\n this.colunasAdicionarDistribuicao = [];\r\n this.columnsDistribuicao = [];\r\n this.columnsDistribuicao = this.columnsDistribuicao.concat(\r\n Object.assign([], this.columnsDistribuicaoOriginais1)\r\n );\r\n\r\n var colunasNomes: any = {};\r\n if (res && res.dados && res.dados.painelDistribuicao && res.dados.painelDistribuicao[0] && res.dados.painelDistribuicao[0].colunasValores) {\r\n \r\n res.dados.painelDistribuicao[0].colunasValores.forEach((element) => {\r\n const nomeColuna = this.obterNomeColuna(element);\r\n\r\n colunasNomes[nomeColuna.toString()] = nomeColuna;\r\n\r\n this.columnsDistribuicao.push(nomeColuna);\r\n if (\r\n !this.colunasAdicionarDistribuicao.some((c) => c === nomeColuna)\r\n ) {\r\n this.colunasAdicionarDistribuicao.push(nomeColuna);\r\n }\r\n });\r\n }\r\n\r\n var dadosDistribuicao = res.dados.painelDistribuicao.map((item) => {\r\n if (item.tipoAuditoria?.id == 0)\r\n item.tipoAuditoriaId = null;\r\n item.unidadeGestora.sigla = item.unidadeGestora.sigla.toUpperCase();\r\n return item;\r\n });\r\n\r\n this.distribuicaoDataSource =\r\n new MatTableDataSource(dadosDistribuicao);\r\n this.distribuicaoDataSource._updateChangeSubscription();\r\n\r\n this.distribuicaoDataSource.sortingDataAccessor = (\r\n item: IPaaDistribuicaoModel,\r\n property\r\n ) => {\r\n switch (property) {\r\n case 'unidadeGestora':\r\n return item.unidadeGestora.sigla;\r\n\r\n case 'valorRisco':\r\n return item.valorRisco;\r\n\r\n case colunasNomes[property]:\r\n return parseFloat(\r\n this.obterValorColuna(item, property)\r\n .replace(/[.]/g, '')\r\n .replace(/[,]/g, '.') == ''\r\n ? '0'\r\n : this.obterValorColuna(item, property)\r\n .replace(/[.]/g, '')\r\n .replace(/[,]/g, '.')\r\n );\r\n default:\r\n return item[property];\r\n }\r\n };\r\n\r\n this.distribuicaoDataSource.sort = this.tabela3;\r\n \r\n\r\n }\r\n else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/paa']);\r\n }\r\n\r\n } catch (err) {\r\n console.error('Erro ao obter dados:', err);\r\n this.toastr.error(err?.mensagem?.descricao || 'Erro desconhecido', 'Atenção');\r\n this.router.navigate(['/paa']);\r\n }\r\n\r\n \r\n }\r\n\r\n private obterNomeColuna(element: IPaaDistribuicaoColunasModel) {\r\n return element.nomeIndicador && element.nomeIndicador !== ''\r\n ? element.nomeIndicador + ' / ' + element.nomeCriterio\r\n : element.nomeCriterio;\r\n }\r\n\r\n public obterValorColuna(\r\n element: IPaaDistribuicaoModel,\r\n coluna: string\r\n ): string {\r\n if (!element || !coluna) {\r\n return '';\r\n }\r\n\r\n const result = element.colunasValores.find(\r\n (x) => this.obterNomeColuna(x) === coluna\r\n );\r\n\r\n if (!result || !result.valorNumerico) {\r\n return '';\r\n }\r\n\r\n return result.valorNumerico.toFixed(2);\r\n }\r\n \r\n\r\n print(): void {\r\n window.print();\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/paa']);\r\n }\r\n}\r\n","
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

PAAC - {{ dados.paa?.pea?.nome }}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Indicador e Critérios

\r\n
\r\n
\r\n \r\n {{ indicador.nome }}\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {{ criterio.criterio.nome }}\r\n
\r\n
\r\n \r\n {{ criterio.criterio.peso }}\r\n
\r\n
\r\n \r\n {{ criterio.criterio.tipoEntrada.nome }}\r\n
\r\n
\r\n \r\n 0\"\r\n >\r\n \r\n \r\n Métrica\r\n Nota\r\n \r\n \r\n \r\n \r\n \r\n {{ metrica.operacao1.descricao }}\r\n {{ metrica.valorNumerico1 | number: \"1.2\":\"pt\" }}\r\n 0\"\r\n >{{ metrica.operacao2.descricao }}\r\n {{\r\n metrica.valorNumerico2 | number: \"1.2\":\"pt\"\r\n }}\r\n \r\n \r\n {{ metrica.perguntaOpcao.nome }}\r\n {{ metrica.nota | number: \"1.2\":\"pt\" }}\r\n >\r\n \r\n {{ metrica.nota }}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {{ criterio.nome }}\r\n
\r\n
\r\n \r\n {{ criterio.peso }}\r\n
\r\n
\r\n \r\n {{ criterio.tipoEntrada.nome }}\r\n
\r\n
\r\n \r\n 0\"\r\n >\r\n \r\n \r\n Métrica\r\n Nota\r\n \r\n \r\n \r\n \r\n \r\n {{ metrica.operacao1.descricao }}\r\n {{ metrica.valorNumerico1 | number: \"1.2\":\"pt\" }}\r\n 0\"\r\n >{{ metrica.operacao2.descricao }}\r\n {{\r\n metrica.valorNumerico2 | number: \"1.2\":\"pt\"\r\n }}\r\n \r\n {{ metrica.nota }}\r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n

Capacidade de Trabalho

\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
CoordenaçãoCapacidade TotalCapacidade Total do PEACAuditores
{{ item.coordenacaoSigla }}{{ item.capacidadeTotalCoordenacao }}{{ item.capacidadeTotalCoordenacaoPea }}{{ item.auditores }}
Total{{totalCapacidadeCoordenacaoes}}{{totalCapacidadeCoordenacaoesPea}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Painel de Distribuição

\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Sigla\r\n \r\n \r\n {{\r\n element?.unidadeGestora\r\n ?.sigla\r\n }}\r\n Obrigatória\r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tValor de Risco Inerente\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement?.valorRisco\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ coluna }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tobterValorColuna(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcoluna\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t| number\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"1.2-2\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"pt-br\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n

Alocação de Equipes

\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Unidade GestoraTipo de AuditoriaData InícioData FimTipo ÊnfaseEquipe Alocada
\r\n

{{ item.paaDistribuicao?.unidadeGestora?.nome }}

\r\n
\r\n

{{ item.paaDistribuicao?.tipoAuditoria?.nome }}

\r\n
\r\n

{{ item.dataInicio | date: 'dd/MM/yyyy'}}

\r\n
\r\n

{{ item.dataFim | date: 'dd/MM/yyyy'}}

\r\n
\r\n

{{ item.tipoEnfase}}

\r\n
\r\n
\r\n

{{ itemAuditor.nomeAuditor }}

\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n","import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatTable, MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IParametrizacaoDocumentoEdocsModel } from 'src/app/models/parametrizacao-documento-edocs.model';\r\nimport { ParametrizacaoDocumentoEdocsService } from 'src/app/services/parametrizacao-documento-edocs.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\n\r\n@Component({\r\n selector: 'app-parametrizacao-documento-edocs-form',\r\n templateUrl: './parametrizacao-documento-edocs-form.component.html',\r\n styleUrls: ['./parametrizacao-documento-edocs-form.component.scss']\r\n})\r\nexport class ParametrizacaoDocumentoEdocsFormComponent extends BaseFormComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public dataSourcePAA = new MatTableDataSource([]);\r\n\r\n @ViewChild('table') table: MatTable;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private paramService: ParametrizacaoDocumentoEdocsService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.titulo = 'Documentação E-Docs';\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n try {\r\n const res = await this.paramService.obter();\r\n if (res.sucesso) {\r\n this.dataSource = new MatTableDataSource(\r\n res.dados.filter(a => a?.tipoDocumentoId < 20).sort((a, b) => (a.ordem > b.ordem) ? 1 : -1));\r\n\r\n this.dataSourcePAA = new MatTableDataSource(\r\n res.dados.filter(a => a?.tipoDocumentoId >= 20).sort((a, b) => (a.ordem > b.ordem) ? 1 : -1));\r\n } else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/']);\r\n return;\r\n }\r\n\r\n\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/']);\r\n }\r\n }\r\n\r\n public async onSubmit() {\r\n\r\n try {\r\n const data = this.dataSource.data.concat(this.dataSourcePAA.data);\r\n const res = await this.paramService.atualizarTodos(data);\r\n\r\n if (res.sucesso) {\r\n this.toastr.success('Registro salvo com sucesso!', 'Sucesso');\r\n this.router.navigate(['/']);\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n\r\n this.toastr.warning(validacoes, res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n } \r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/']);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n moveItemInArray(this.dataSource.data, event.previousIndex, event.currentIndex);\r\n for (let i = 0; i < this.dataSource.data.length; i++) {\r\n this.dataSource.data[i].ordem = i + 1;\r\n }\r\n\r\n this.dataSource._updateChangeSubscription();\r\n }\r\n\r\n dropPAA(event: CdkDragDrop) {\r\n moveItemInArray(this.dataSourcePAA.data, event.previousIndex, event.currentIndex);\r\n for (let i = 0; i < this.dataSourcePAA.data.length; i++) {\r\n this.dataSourcePAA.data[i].ordem = i + 1;\r\n }\r\n\r\n this.dataSourcePAA._updateChangeSubscription();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. {{titulo}}
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{titulo}}\r\n


\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Selecione os arquivos PEAC que deseja enviar para o\r\n E-Docs e arraste para definir sua ordemEnviar\r\n \r\n \r\n Documento {{element?.tipoDocumento?.descricao}}
\r\n\r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Selecione os arquivos PAAC que deseja enviar para o\r\n E-Docs e arraste para definir sua ordemEnviar\r\n \r\n \r\n Documento {{element?.tipoDocumento?.descricao}}
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component } from '@angular/core';\r\nimport Inputmask from 'inputmask';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal';\r\nimport { Subject } from 'rxjs';\r\nimport { IParametrizacaoModel } from 'src/app/models/parametrizacao.model';\r\nimport { ParametrizacaoService } from 'src/app/services/parametrizacao.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-parametrizacao-form',\r\n templateUrl: './modal-parametrizacao-form.component.html',\r\n styleUrls: ['./modal-parametrizacao-form.component.scss']\r\n})\r\nexport class ModalParametrizacaoFormComponent implements AfterViewInit {\r\n public model = {} as IParametrizacaoModel;\r\n public onClose: Subject;\r\n\r\n constructor(\r\n public bsModalRef: BsModalRef,\r\n private paramService: ParametrizacaoService) { }\r\n\r\n ngAfterViewInit() {\r\n this.onClose = new Subject();\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n public async concluir() {\r\n if (!this.model.valor || this.model.valor.length === 0) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'warning',\r\n text: 'Obrigatório informar um valor para a parametrização'\r\n });\r\n return;\r\n }\r\n\r\n try {\r\n const res = await this.paramService.atualizar(this.model);\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'success',\r\n text: 'Parametrização salva com sucesso'\r\n });\r\n this.onClose.next(true);\r\n this.bsModalRef.hide();\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n });\r\n }\r\n }\r\n\r\n public cancelar() {\r\n this.onClose.next(null);\r\n this.bsModalRef.hide();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Editar Parametrização

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IParametrizacaoModel } from 'src/app/models/parametrizacao.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { ParametrizacaoService } from 'src/app/services/parametrizacao.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\nimport { ModalParametrizacaoFormComponent } from './modal-parametrizacao-form/modal-parametrizacao-form.component';\r\n\r\n@Component({\r\n selector: 'app-parametrizacao-list',\r\n templateUrl: './parametrizacao-list.component.html',\r\n styleUrls: ['./parametrizacao-list.component.scss']\r\n})\r\nexport class ParametrizacaoListComponent extends BaseListComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IParametrizacaoModel;\r\n\r\n public displayedColumns: string[] = [\r\n 'selecao',\r\n 'id',\r\n 'descricao',\r\n 'valor',\r\n ];\r\n\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private paramService: ParametrizacaoService,\r\n private modalService: BsModalService,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscar();\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Configuracoes, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.paramService\r\n .obter(this.searchNome)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n title: 'Atenção',\r\n text: err.mensagem.descricao\r\n });\r\n })\r\n }\r\n\r\n\r\n public editar(id: string) {\r\n const modal = this.modalService.show(ModalParametrizacaoFormComponent, { initialState: { model: cloneDeep(this.selectedModel) } });\r\n\r\n modal.content.onClose.subscribe((data: boolean) => {\r\n if (data) {\r\n this.buscar();\r\n }\r\n });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Parametrizações do Sistema
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Parametrizações do Sistema\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Id {{element.id}} Descrição {{element.descricao}} Valor \r\n \r\n {{element.valor}}\r\n \r\n \r\n {{(element.valor === 'true' ? 'Sim' : 'Não')}}\r\n \r\n\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IAutuacaoModel } from 'src/app/models/edocs/autuacao.model';\r\nimport { ILocalAtuacaoModel } from 'src/app/models/edocs/local-atuacao.model';\r\nimport { IPapelModel } from 'src/app/models/edocs/papel.model';\r\nimport { AprovacaoService } from 'src/app/services/aprovacao.service';\r\nimport { EdocsService } from 'src/app/services/edocs.service';\r\nimport { PeaService } from 'src/app/services/pea.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-autuacao',\r\n templateUrl: './modal-autuacao.component.html',\r\n styleUrls: ['./modal-autuacao.component.scss']\r\n})\r\nexport class ModalAutuacaoComponent implements OnInit {\r\n private peaId: number;\r\n public model = {} as IAutuacaoModel;\r\n public papeis = [] as IPapelModel[];\r\n public locaisAutuacao = [] as ILocalAtuacaoModel[];\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n public toastr: ToastrService,\r\n private edocsService: EdocsService,\r\n public aprovacaoService: AprovacaoService,\r\n private peaService: PeaService,\r\n @Inject(MAT_DIALOG_DATA) public data) {\r\n\r\n this.peaId = data.peaId;\r\n }\r\n\r\n async ngOnInit() {\r\n await this.obterPapeis();\r\n }\r\n\r\n public async obterPapeis() {\r\n\r\n try {\r\n const res = await this.edocsService.obterPapeis();\r\n if (res.sucesso) {\r\n this.papeis = res.dados;\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async obterLocaisAutuacao(idPapel: string) {\r\n\r\n try {\r\n const res = await this.edocsService.obterLocaisAtuacao(idPapel);\r\n if (res.sucesso) {\r\n this.locaisAutuacao = res.dados;\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async concluir() {\r\n\r\n // try {\r\n\r\n // const res = await this.peaService.homologar(this.peaId, this.model);\r\n // if (res.sucesso) {\r\n // Swal.fire({\r\n // toast: true,\r\n // position: 'top-end',\r\n // icon: 'success',\r\n // text: 'Item homologado com sucesso!',\r\n // showConfirmButton: false,\r\n // timer: 5000,\r\n // timerProgressBar: true,\r\n // });\r\n // this.dialogRef.close(true);\r\n // this.matDialog.closeAll();\r\n // } else {\r\n // Swal.fire({\r\n // toast: true,\r\n // position: 'top-end',\r\n // icon: 'warning',\r\n // text: res.mensagem.descricao,\r\n // showConfirmButton: false,\r\n // timer: 5000,\r\n // timerProgressBar: true,\r\n // });\r\n // }\r\n\r\n // } catch (err) {\r\n // Swal.fire({\r\n // toast: true,\r\n // position: 'top-end',\r\n // icon: 'error',\r\n // text: err.mensagem.descricao,\r\n // showConfirmButton: false,\r\n // timer: 5000,\r\n // timerProgressBar: true,\r\n // });\r\n // }\r\n }\r\n\r\n public async onSelectPapel() {\r\n await this.obterLocaisAutuacao(this.model.papelAutuadorId);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Nova Autuação

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\n\r\nimport { MatDialogRef, MAT_DIALOG_DATA, MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\n\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport Inputmask from 'inputmask';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IAuditorCoordenacaoModel } from 'src/app/models/auditor-coordenacao.model';\r\nimport { ICoordenacaoModel } from 'src/app/models/coordenacao.model';\r\nimport { IPeaCoordenacaoCapacidadeModel } from 'src/app/models/pea-coordenacao-capacidade.model';\r\nimport { IPeaCoordenacaoDispensaModel } from 'src/app/models/pea-coordenacao-dispensa.model';\r\nimport { ITipoDispensaModel } from 'src/app/models/tipo-dispensa.model';\r\nimport { PeaService } from 'src/app/services/pea.service';\r\nimport { ModalCancelarComponent } from '../../../shared/components/modal-cancelar/modal-cancelar-component';\r\nimport Swal from 'sweetalert2';\r\nimport { IAgentePublicoModel } from 'src/app/models/agente-publico.model';\r\nimport { IAgentePublicoDisponibilidadeModel } from 'src/app/models/agente-publico-disponibilidade.model';\r\n\r\n@Component({\r\n selector: 'app-modal-capacidade',\r\n templateUrl: './modal-capacidade.component.html',\r\n styleUrls: ['./modal-capacidade.component.scss']\r\n})\r\nexport class ModalCapacidadeComponent implements OnInit {\r\n public model: IPeaCoordenacaoCapacidadeModel;\r\n public visualizar: boolean;\r\n\r\n public modelNovaDispensa = {} as IPeaCoordenacaoDispensaModel;\r\n public dispensaDataSource = new MatTableDataSource([]);\r\n public auditorDataSource = new MatTableDataSource([]);\r\n\r\n public dispensaSemDados = true;\r\n public auditorSemDados = true;\r\n public colunasOriginais = ['nomeAuditor'];\r\n public colunasAdicionar = [];\r\n public columnsDisponibilidades = [];\r\n\r\n public tabelaAuditores = [] as IAgentePublicoModel[];\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n private peaService: PeaService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n\r\n this.visualizar = data.visualizar; \r\n this.model = data.capacidade;\r\n \r\n this.tabelaAuditores = (data.coordenacao as ICoordenacaoModel).auditores;\r\n\r\n for (const auditor of this.tabelaAuditores) {\r\n\r\n //Monta lista dispensas\r\n for(const dispensa of auditor.dispensas){\r\n this.dispensaDataSource.data.push({\r\n nomeAuditor: auditor.pessoa.nome,\r\n descricao: dispensa.tipoDispensa.nome,\r\n dataInicio: dispensa.dataInicioFormatted,\r\n dataFim: dispensa.dataFimFormatted,\r\n qtdDias: dispensa.qtdDias\r\n })\r\n };\r\n\r\n this.auditorDataSource.data.push({\r\n nomeAuditor: auditor.pessoa.nome,\r\n disponibilidades: auditor.disponibilidades\r\n }) \r\n \r\n }\r\n\r\n this.dispensaSemDados = this.dispensaDataSource.data.length === 0;\r\n this.auditorSemDados = this.auditorDataSource.data.length === 0;\r\n\r\n // Montar lista disponibilidade Auditores\r\n var colunasNomes: any = {};\r\n if(this.tabelaAuditores[0]){\r\n this.tabelaAuditores[0].disponibilidades.forEach((disponibilidade) => {\r\n \r\n const nomeColuna = disponibilidade.tipoTrabalho.nome;\r\n if(!this.colunasAdicionar.some((c) => c === nomeColuna)){\r\n this.colunasAdicionar.push(nomeColuna);\r\n }\r\n })\r\n }\r\n this.columnsDisponibilidades = [];\r\n this.columnsDisponibilidades = this.colunasOriginais.concat(this.colunasAdicionar);\r\n\r\n this.auditorDataSource._updateChangeSubscription();\r\n \r\n \r\n }\r\n\r\n public obterValorColuna(element: any, coluna: string): string{\r\n \r\n if(!element || !coluna)\r\n return '';\r\n\r\n const result = element.disponibilidades.find((d) => d.tipoTrabalho.nome == coluna);\r\n if(!result)\r\n return '';\r\n\r\n let retorno = result.percentual.toFixed(2).toString();\r\n retorno += \"%\";\r\n return retorno;\r\n }\r\n\r\n ngOnInit(): void {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n \r\n public fechar(){\r\n return this.matDialog.closeAll()\r\n }\r\n}\r\n\r\n","
\r\n\t\r\n\t\t
\r\n\t\t\t

Capacidade de Trabalho

\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tAuditor\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nomeAuditor }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tDescrição\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.descricao }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tData Início\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.dataInicio }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tData fim\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.dataFim }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tQuantidade de Dias\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.qtdDias }}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tNenhuma dispensa cadastrada\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tAuditor\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nomeAuditor }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{{ coluna }}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\tobterValorColuna(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\telement,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tcoluna\r\n\t\t\t\t\t\t\t\t\t\t\t\t) \r\n\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t Fechar\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-modal-descricao-dias-uteis',\r\n templateUrl: './modal-descricao-dias-uteis.component.html',\r\n styleUrls: ['./modal-descricao-dias-uteis.component.scss']\r\n})\r\nexport class ModalDescricaoDiasUteisComponent implements OnInit {\r\n ano: number;\r\n totalDiasAno: number;\r\n sabDom: number;\r\n ferNac: number;\r\n ferEst: number;\r\n ferMun: number;\r\n pontoFac: number;\r\n outros: number;\r\n totalDNU: number;\r\n diasUteis: number;\r\n treinamento: number;\r\n reunioes: number;\r\n licencasMedicas: number;\r\n ferias: number;\r\n abonos: number;\r\n outrasTarefas: number;\r\n totalDispensasPadrao: number;\r\n diasDisponiveisTotais: number;\r\n diasReservadosAuditoriasEspeciais: number;\r\n diasDisponiveis: number;\r\n auditoriasEspeciaisValor: number;\r\n auditoriaEspecialDD: number;\r\n du: number;\r\n public dispensasPadroes = [] as any[];\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data: any\r\n ) {\r\n // Inicialização das propriedades com os dados recebidos\r\n debugger\r\n this.ano = data.capacidade.ano;\r\n this.totalDiasAno = data.capacidade.totalDiasAno;\r\n this.sabDom = data.capacidade.diasNaoUteis.sabDom;\r\n this.ferNac = data.capacidade.diasNaoUteis.ferNac;\r\n this.ferEst = data.capacidade.diasNaoUteis.ferEst;\r\n this.ferMun = data.capacidade.diasNaoUteis.ferMun;\r\n this.pontoFac = data.capacidade.diasNaoUteis.pontoFac;\r\n this.outros = data.capacidade.diasNaoUteis.outros;\r\n this.totalDNU = data.capacidade.diasNaoUteis.totalDNU;\r\n this.diasUteis = data.capacidade.diasUteis;\r\n // this.treinamento = data.capacidade.dispensaPadrao.treinamento;\r\n // this.reunioes = data.capacidade.dispensaPadrao.reunioes;\r\n // this.licencasMedicas = data.capacidade.dispensaPadrao.licencasMedicas;\r\n // this.ferias = data.capacidade.dispensaPadrao.ferias;\r\n // this.abonos = data.capacidade.dispensaPadrao.abonos;\r\n // this.outrasTarefas = data.capacidade.dispensaPadrao.outrasTarefas;\r\n this.dispensasPadroes = data.capacidade.tipoDispensa;\r\n this.totalDispensasPadrao = data.capacidade.totalDispensasPadrao;\r\n this.diasDisponiveisTotais = data.capacidade.diasDisponiveisTotais;\r\n this.diasReservadosAuditoriasEspeciais = data.capacidade.diasReservadosAuditoriasEspeciais;\r\n this.diasDisponiveis = data.capacidade.diasDisponiveis;\r\n this.auditoriasEspeciaisValor = data.capacidade.auditoriasEspeciais.valor;\r\n this.du = data.capacidade.du;\r\n this.auditoriaEspecialDD = data.capacidade.auditoriaEspecialDD;\r\n }\r\n\r\n ngOnInit(): void {\r\n // Aqui você pode adicionar lógica adicional de inicialização, se necessário \r\n }\r\n\r\n public onClose(): void {\r\n this.dialogRef.close();\r\n }\r\n\r\n // Exemplo de método para verificar se um objeto está vazio\r\n public isObjectEmpty(obj: any): boolean {\r\n return obj === null || obj === undefined || Object.keys(obj).length === 0;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

CÁLCULO DOS DIAS DISPONÍVEIS

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
PERÍODO DE JAN A DEZ {{ano}}
1Total dias do ano (DA){{totalDiasAno}}
2Dias não úteis
2.1Sábados e domingos{{ sabDom || 0 }}
2.2Feriados nacionais{{ ferNac || 0 }}
2.3Feriados estaduais{{ ferEst || 0 }}
2.4Feriados municipais{{ ferMun || 0 }}
2.5Ponto Facultativos{{ pontoFac || 0 }}
2.6Outros{{ outros || 0 }}
Totais de dias não úteis (DNU){{ totalDNU || 0 }}
3Dias úteis (DU) = Dias no ano (-) Dias não úteis = (DA - DNU){{du}}
4Dispensas padrão
4. {{i + 1}}{{dispensa.nome}}{{dispensa.quantidadeDiasPadrao}}
Total Dispensas padrão (DP){{totalDispensasPadrao}}
5Dias disponíveis totais (DDT) = Dias úteis (-) Dispensas padrão = (DU - DP){{diasDisponiveisTotais}}
6Dias reservados para Auditorias Especiais (DAE) = {{ auditoriasEspeciaisValor }}% de DDT{{diasReservadosAuditoriasEspeciais}}
7Dias disponíveis (DD) = Dias disponíveis totais (-) Dias reservados para Auditorias Especiais = (DDT - DAE) ou (DD = {{ auditoriaEspecialDD }}% de DDT){{diasDisponiveis}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-modal-descricao-peac',\r\n templateUrl: './modal-descricao-peac.component.html',\r\n styleUrls: ['./modal-descricao-peac.component.scss']\r\n})\r\nexport class ModalDescricaoPEACComponent implements OnInit {\r\n diasDisponiveis: number;\r\n qntDiasPorAuditor: number;\r\n numAuditoriaPorEquipe: number;\r\n numAuditoriaPorEquipeArred: number;\r\n numEquipeDisponiveis: number;\r\n capacidadeTotalPorCoord: number;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data: any\r\n ) {\r\n // Inicialização das propriedades com os dados recebidos\r\n this.diasDisponiveis = data.capacidade.diasDisponiveis;\r\n this.qntDiasPorAuditor = data.capacidade.qntDiasPorAuditor;\r\n this.numAuditoriaPorEquipe = data.capacidade.numAuditoriaPorEquipe;\r\n this.numAuditoriaPorEquipeArred = data.capacidade.numAuditoriaPorEquipeArred;\r\n this.numEquipeDisponiveis = data.capacidade.numEquipeDisponiveis;\r\n this.capacidadeTotalPorCoord = data.capacidade.capacidadeTotalPorCoord;\r\n }\r\n\r\n ngOnInit(): void {\r\n // Aqui você pode adicionar lógica adicional de inicialização, se necessário\r\n }\r\n\r\n public onClose(): void {\r\n this.dialogRef.close();\r\n }\r\n\r\n // Exemplo de método para verificar se um objeto está vazio\r\n public isObjectEmpty(obj: any): boolean {\r\n return obj === null || obj === undefined || Object.keys(obj).length === 0;\r\n }\r\n}\r\n","
\r\n\t\r\n\t\t
\r\n\t\t\t

\r\n\t\t\t\tCálculo da Capacidade Total por Coordenação\r\n\t\t\t

\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
Dias disponíveis (A){{ diasDisponiveis }}
Quantidade de dias por auditoria (B){{ qntDiasPorAuditor || 0 }}
Número de auditorias por equipe (C) = (A/B){{ numAuditoriaPorEquipe || 0 }}
\r\n\t\t\t\t\t\t\t\tNúmero de auditorias por equipe (D) -\r\n\t\t\t\t\t\t\t\tarredondado\r\n\t\t\t\t\t\t\t{{ numAuditoriaPorEquipeArred || 0 }}
Número de equipe disponível (E){{ numEquipeDisponiveis || 0 }}
\r\n\t\t\t\t\t\t\t\tCapacidade total por coordenação = (D x\r\n\t\t\t\t\t\t\t\t\tE)\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\tcapacidadeTotalPorCoord || 0\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t Fechar\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ICalculoPeaRankingPrioridadeModel } from 'src/app/models/calculo-pea-ranking-prioridade.model';\r\nimport { IPeaRankingPrioridadeModel } from 'src/app/models/pea-ranking-prioridade.model';\r\n\r\n@Component({\r\n selector: 'app-modal-detalhar-valor-risco',\r\n templateUrl: './modal-detalhar-valor-risco.component.html',\r\n styleUrls: ['./modal-detalhar-valor-risco.component.scss']\r\n})\r\nexport class ModalDetalharValorRiscoComponent implements OnInit {\r\n public model = {} as IPeaRankingPrioridadeModel;\r\n public dataSource = new MatTableDataSource([]);\r\n public displayedColumns = ['criterio', 'peso', 'nota', 'total'];\r\n public semDados = true;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.model = data;\r\n this.dataSource = new MatTableDataSource(data.calculos);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public fechar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n \r\n
\r\n

Visualizar Respostas

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Critério\r\n {{ element.criterio?.criterio?.nome }}\r\n Peso{{ element.peso }}Nota\r\n {{ element.nota }}\r\n Total\r\n {{ element.total }}\r\n
\r\n
Sem dados a exibir
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { IEnviarQuestionarioModel } from 'src/app/models/enviar-questionario.model';\r\nimport { NaturezaResponsabilidadeService } from 'src/app/services/natureza-responsabilidade.service';\r\nimport { ParametrizacaoService } from 'src/app/services/parametrizacao.service';\r\nimport { LookupModalComponent } from 'src/app/shared/components/lookup-modal/lookup-modal.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-enviar-questionario-criterio',\r\n templateUrl: './modal-enviar-questionario-criterio.component.html',\r\n styleUrls: ['./modal-enviar-questionario-criterio.component.scss']\r\n})\r\nexport class ModalEnviarQuestionarioCriterioComponent implements OnInit {\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n public model: IEnviarQuestionarioModel = {} as IEnviarQuestionarioModel;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n private naturezaResponsabilidadeService: NaturezaResponsabilidadeService,\r\n private parametrizacaoService: ParametrizacaoService,\r\n public matDialog: MatDialog) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.parametrizacaoService.obterPorId('pea-prazo-padrao')\r\n .then(res => {\r\n this.model.prazoDias = res.dados.valor;\r\n });\r\n }\r\n\r\n public concluir() {\r\n if (Number(this.model.prazoDias) <= 0){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'O prazo não pode ser menor que 1',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n } \r\n this.dialogRef.close(this.model);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n \r\n public async exibirModalNaturezaResponsabilidade() {\r\n try {\r\n const res = await this.naturezaResponsabilidadeService.obter('', true);\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Natureza da Responsabilidade', res.dados);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.model.naturezaResponsabilidadeId = data.id;\r\n this.model.naturezaResponsabilidadeNome = data.nome;\r\n }\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n \r\n public exibirModal(titulo: string, dados: any, exibirId = false, customizeColumns = null): MatDialogRef {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component-natureza';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = { titulo, dados, exibirId, customizeColumns };\r\n return this.matDialog.open(LookupModalComponent, dialogConfig);\r\n }\r\n\r\n public onChangePreencherPrazo(event){\r\n this.model.prazoDias = event.target.value;\r\n }\r\n\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Detalhes do Envio

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n","import { Component, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { toIntlNumberString } from 'src/app/core/helpers/number.helper';\r\nimport { IPeaCriterioRespostaModel } from 'src/app/models/pea-criterio-resposta.model';\r\n\r\n@Component({\r\n selector: 'app-modal-importar-arquivo-criterio',\r\n templateUrl: './modal-importar-arquivo-criterio.component.html',\r\n styleUrls: ['./modal-importar-arquivo-criterio.component.scss'],\r\n})\r\nexport class ModalImportarArquivoCriterioComponent {\r\n public conteudoArquivo: string;\r\n public mensagens: string[];\r\n public respostas = [] as IPeaCriterioRespostaModel[];\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data\r\n ) {\r\n this.respostas = data as IPeaCriterioRespostaModel[];\r\n }\r\n\r\n public onFileChange(event) {\r\n this.mensagens = [];\r\n const reader = new FileReader();\r\n if (event.target.files && event.target.files.length > 0) {\r\n const file = event.target.files[0];\r\n reader.readAsText(file);\r\n reader.onload = () => {\r\n this.conteudoArquivo = reader.result.toString();\r\n this.lerValidarArquivo();\r\n };\r\n }\r\n }\r\n\r\n public lerValidarArquivo() {\r\n if (!this.conteudoArquivo) {\r\n this.mensagens = ['O arquivo não tem um conteúdo válido.'];\r\n return;\r\n }\r\n\r\n let erros = [];\r\n this.conteudoArquivo.split('\\n').forEach((l, i) => {\r\n if(l.length === 1 || l === \"\"){\r\n return;\r\n }\r\n if (l.trim().length > 0 && l.split(';').length !== 2) {\r\n erros = erros.concat([`A linha ${i + 1} deve ter somente duas colunas sendo separadas pelo caractere ';'.`]);\r\n } else {\r\n const resposta = this.respostas.find(r => r.unidadeGestora.codigoUg.toString() === l.split(';')[0]);\r\n if (resposta) {\r\n const valor = parseFloat(toIntlNumberString(l.split(';')[1]));\r\n if (!valor.toString() || isNaN(valor) || valor < 0) {\r\n erros = erros.concat([`Não há valor válido na linha ${i + 1}. Favor verificar e realizar nova importação.`]);\r\n this.conteudoArquivo = null;\r\n } else {\r\n resposta.valorNumerico = valor;\r\n }\r\n }\r\n else {\r\n erros = erros.concat([`O código da UG na linha ${i + 1} não esta associado ao PEAC.`]);\r\n this.conteudoArquivo = null;\r\n }\r\n }\r\n });\r\n\r\n if (erros.length === 0) {\r\n this.mensagens = ['Conteúdo do arquivo validado e disponível para importação.'];\r\n }\r\n else {\r\n this.mensagens = erros;\r\n }\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.respostas);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Importar Arquivo de Respostas

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

{{element}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
","import { AfterViewInit, Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport Inputmask from 'inputmask';\r\nimport { toIntlNumberString } from 'src/app/core/helpers/number.helper';\r\nimport { ICriterioModel } from 'src/app/models/criterio.model';\r\nimport { ModalCancelarComponent } from '../../../shared/components/modal-cancelar/modal-cancelar-component';\r\n\r\n@Component({\r\n selector: 'app-modal-preencher-formulario',\r\n templateUrl: './modal-preencher-formulario.component.html',\r\n styleUrls: ['./modal-preencher-formulario.component.scss'],\r\n})\r\nexport class ModalPreencherFormularioComponent\r\n implements OnInit, AfterViewInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public criterio = {} as ICriterioModel;\r\n public displayedColumns = ['sigla', 'valor'];\r\n public semDados = true;\r\n public descricaoCriterioFormulario = '';\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.dataSource = new MatTableDataSource(data);\r\n this.criterio = data.find((_: any) => _).criterio;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n public concluir() {\r\n const respostas = this.dataSource.data;\r\n for (const item of respostas) {\r\n item.valorNumerico = item.valorNumerico\r\n ? parseFloat(toIntlNumberString(item.valorNumerico.toString()))\r\n : undefined;\r\n }\r\n this.dialogRef.close(respostas);\r\n }\r\n\r\n public cancelar() {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.data = { interno: true };\r\n this.matDialog.open(ModalCancelarComponent, dialogConfig).afterClosed();\r\n }\r\n}\r\n","
\r\n \r\n
\r\n

Preencher Formulário

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Critério\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n \r\n \r\n Sigla\r\n {{ element.unidadeGestora.sigla }}\r\n Valor ({{ criterio?.unidade }})\r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n
\r\n
\r\n \r\n Ok\r\n \r\n\r\n \r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\n\r\n@Component({\r\n selector: 'app-modal-selecionar-coordenacoes',\r\n templateUrl: './modal-selecionar-coordenacoes.component.html',\r\n styleUrls: ['./modal-selecionar-coordenacoes.component.scss']\r\n})\r\nexport class ModalSelecionarCoordenacoesComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = false;\r\n public displayedColumns = ['selecao', 'id', 'sigla', 'nome'];\r\n public elementosSelecionados = false;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.dataSource = new MatTableDataSource(data);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.filterPredicate = (data: { nome: string }, filterValue: string) => {\r\n return (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1;\r\n };\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public filtrar(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public selecionarTodos() {\r\n this.dataSource.data.forEach(d => d.selecionado = !this.elementosSelecionados);\r\n this.elementosSelecionados = !this.elementosSelecionados;\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.dataSource.data.filter(d => d.selecionado));\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Adicionar Coordenações

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Id {{element.id}} Sigla {{element.sigla}} Nome {{element.nome}}
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\n\r\n@Component({\r\n selector: 'app-modal-selecionar-ug',\r\n templateUrl: './modal-selecionar-ug.component.html',\r\n styleUrls: ['./modal-selecionar-ug.component.scss']\r\n})\r\nexport class ModalSelecionarUgComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = false;\r\n public displayedColumns = ['selecao', 'id', 'ug'];\r\n public elementosSelecionados = false;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.dataSource = new MatTableDataSource(data);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.filterPredicate = (data: { nome : string, sigla: string }, filterValue: string) => {\r\n return (data.sigla || '').trim().toLowerCase().indexOf(filterValue) !== -1 || (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1;\r\n };\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public filtrar(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public selecionarTodos() {\r\n this.dataSource.data.forEach(d => d.selecionado = !this.elementosSelecionados);\r\n this.elementosSelecionados = !this.elementosSelecionados;\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.dataSource.data.filter(d => d.selecionado));\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Adicionar Unidades Gestoras

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Id \r\n {{element?.id}} \r\n {{element?.value}}\r\n UG \r\n {{element?.sigla}} - {{element?.nome}}\r\n {{element?.text}}\r\n
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ICriterioQuestionarioModel } from 'src/app/models/criterio-questionario.model';\r\nimport { ICriterioModel } from 'src/app/models/criterio.model';\r\nimport { IPerguntaModel } from 'src/app/models/pergunta.model';\r\n\r\n@Component({\r\n selector: 'app-modal-visualizar-questionario-criterio',\r\n templateUrl: './modal-visualizar-questionario-criterio.component.html',\r\n styleUrls: ['./modal-visualizar-questionario-criterio.component.scss']\r\n})\r\nexport class ModalVisualizarQuestionarioCriterioComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n public model: ICriterioQuestionarioModel = {} as ICriterioQuestionarioModel;\r\n public criterioDataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) data: IBaseModel) {\r\n if (data) {\r\n this.model = data.dados.find(_ => _);\r\n this.criterioDataSource = new MatTableDataSource(data.dados.map(_ => _.criterio));\r\n this.criterioDataSource._updateChangeSubscription();\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public fechar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Visualizar Questionario

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Pergunta\r\n {{ element?.pergunta?.descricao }}\r\n Tipo de Entrada\r\n {{element?.pergunta?.tipoEntrada?.descricao}}\r\n Unidade de Medida \r\n {{element?.unidade}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ICriterioModel } from 'src/app/models/criterio.model';\r\n\r\n@Component({\r\n selector: 'app-modal-visualizar-respostas',\r\n templateUrl: './modal-visualizar-respostas.component.html',\r\n styleUrls: ['./modal-visualizar-respostas.component.scss']\r\n})\r\nexport class ModalVisualizarRespostasComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public criterio = {} as ICriterioModel;\r\n public displayedColumns = ['ug', 'valor'];\r\n public semDados = true;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.dataSource = new MatTableDataSource(data);\r\n this.criterio = data.find((_: any) => _).criterio;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public fechar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Visualizar Respostas

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
Unidade Gestora {{element.unidadeGestora.nome}} Valor ({{ criterio?.unidade }})\r\n \r\n {{element.valorNumerico | number:'1.2':'pt'}}\r\n \r\n \r\n {{element.perguntaOpcao.nome}}\r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ViewChild } from \"@angular/core\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { MatDialog, MatDialogConfig } from \"@angular/material/dialog\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport Inputmask from \"inputmask\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IBaseModel } from \"src/app/models/base.model\";\r\nimport { ICargaCriterioPeaModel } from \"src/app/models/carga-criterio-pea.model\";\r\nimport { ICoordenacaoModel } from \"src/app/models/coordenacao.model\";\r\nimport { IFaixaClassificacaoModel } from \"src/app/models/faixa-classificacao\";\r\nimport { IPeaCoordenacaoCapacidadeModel } from \"src/app/models/pea-coordenacao-capacidade.model\";\r\nimport { IPeaCoordenacaoDiasUteisModel } from \"src/app/models/pea-coordenacao-dias-uteis.model\";\r\nimport { IPeaCoordenacaoModel } from \"src/app/models/pea-coordenacao.model\";\r\nimport { IPeaCriterioRespostaModel } from \"src/app/models/pea-criterio-resposta.model\";\r\nimport { IPeaUnidadeGestoraModel } from \"src/app/models/pea-unidade-gestora.model\";\r\nimport { IPeaModel } from \"src/app/models/pea.model\";\r\nimport { IUnidadeGestoraModel } from \"src/app/models/unidade-gestora.model\";\r\nimport { CoordenacaoService } from \"src/app/services/coordenacao.service\";\r\nimport { FaixaClassificacaoService } from \"src/app/services/faixa-classificacao.service\";\r\nimport { IndicadorService } from \"src/app/services/indicador.service\";\r\nimport { PeaService } from \"src/app/services/pea.service\";\r\nimport { PeriodoService } from \"src/app/services/periodo.service\";\r\nimport { TipoDispensaService } from \"src/app/services/tipo-dispensa.service\";\r\nimport { UnidadeGestoraService } from \"src/app/services/unidade-gestora.service\";\r\nimport { ModalConfirmarRejeitarComponent } from \"src/app/shared/components/modal-confirmacao-rejeitar/modal-confirmacao-rejeitar.component\";\r\nimport { BaseFormComponent } from \"../../shared/components/base-form/base-form.component\";\r\nimport { ModalCapacidadeComponent } from \"./modal-capacidade/modal-capacidade.component\";\r\nimport { ModalImportarArquivoCriterioComponent } from \"./modal-importar-arquivo-criterio/modal-importar-arquivo-criterio.component\";\r\nimport { ModalPreencherFormularioComponent } from \"./modal-preencher-formulario/modal-preencher-formulario.component\";\r\nimport { ModalSelecionarCoordenacoesComponent } from \"./modal-selecionar-coordenacoes/modal-selecionar-coordenacoes.component\";\r\nimport { ModalSelecionarUgComponent } from \"./modal-selecionar-ug/modal-selecionar-ug.component\";\r\nimport { ModalVisualizarRespostasComponent } from \"./modal-visualizar-respostas/modal-visualizar-respostas.component\";\r\nimport Swal from \"sweetalert2\";\r\nimport { INaturezaResponsabilidadeModel } from \"src/app/models/natureza-responsabilidade\";\r\nimport { ModalEnviarQuestionarioCriterioComponent } from \"./modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component\";\r\nimport { IEnviarQuestionarioModel } from \"src/app/models/enviar-questionario.model\";\r\nimport { ModalVisualizarQuestionarioCriterioComponent } from \"./modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { defaultDataAcessor } from \"src/app/core/helpers/mat-sort-data-accessor\";\r\nimport { IRelatoriaCapituloModel } from \"src/app/models/relatoria-capitulo.model\";\r\nimport { RankingDistribuicaoService } from \"src/app/services/ranking-prioridade.service\";\r\nimport { IPeaRankingPrioridadeModel } from \"src/app/models/pea-ranking-prioridade.model\";\r\nimport { Location } from \"@angular/common\";\r\nimport moment from \"moment\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { IPeaDadosBasicosModel } from \"src/app/models/pea-dados-basicos.model\";\r\nimport { ModalDescricaoDiasUteisComponent } from \"./modal-descricao-dias-uteis/modal-descricao-dias-uteis.component\";\r\nimport { ModalDescricaoPEACComponent } from \"./modal-descricao-peac/modal-descricao-peac.component\";\r\nimport { EnumTipoFeriado } from \"../../models/enum/tipo-feriado.enum\";\r\n\r\n@Component({\r\n\tselector: \"app-pea-form\",\r\n\ttemplateUrl: \"./pea-form.component.html\",\r\n\tstyleUrls: [\"./pea-form.component.scss\"],\r\n})\r\nexport class PeaFormComponent extends BaseFormComponent implements OnInit {\r\n\tpublic model: IPeaModel = {} as IPeaModel;\r\n\tpublic modelDadosBasicos: IPeaDadosBasicosModel =\r\n\t\t{} as IPeaDadosBasicosModel;\r\n\r\n\tpublic modelFaixaPadrao: IFaixaClassificacaoModel =\r\n\t\t{} as IFaixaClassificacaoModel;\r\n\tpublic modelFaixaPersonalizada: IFaixaClassificacaoModel =\r\n\t\t{} as IFaixaClassificacaoModel;\r\n\tpublic modelFaixa: IFaixaClassificacaoModel =\r\n\t\t{} as IFaixaClassificacaoModel;\r\n\tpublic ugDataSource = new MatTableDataSource([]);\r\n\tpublic coordenacoesDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic criterioDataSource = new MatTableDataSource(\r\n\t\t[]\r\n\t);\r\n\tpublic naturezaResponsabilidadeDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic capacidadeDataSource = new MatTableDataSource([]);\r\n\tpublic distribuicaoDataSource = new MatTableDataSource([]);\r\n\tpublic distribuicaoNaoContempladosDataSource = new MatTableDataSource(\r\n\t\t[]\r\n\t);\r\n\tpublic distribuicaoPersonalizadoDataSource = new MatTableDataSource(\r\n\t\t[]\r\n\t);\r\n\tpublic distribuicaoNaoContempladosPersonalizadoDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic ugSemDados = true;\r\n\tpublic criterioSemDados = true;\r\n\tpublic coordenacaoSemDados = true;\r\n\tpublic capacidadeSemDados = true;\r\n\tpublic distribuicaoSemDados = true;\r\n\tpublic distribuicaoNaoContempladosSemDados = true;\r\n\tpublic distribuicaoSemDadosPersonalizado = true;\r\n\tpublic distribuicaoNaoContempladosSemDadosPersonalizado = true;\r\n\tpublic salvarDadosPendente = false;\r\n\tpublic salvarDistribuicaoPendente = false;\r\n\tpublic aba = 0;\r\n\tpublic situacao = 0;\r\n\tpublic habilitarHomologarRejeitar = false;\r\n\tpublic habilitarUltimoNivelAprovacao = false;\r\n\tpublic peaHomologado = false;\r\n\tpublic peaQuestionario = false;\r\n\tpublic columnsDistribuicao = [];\r\n\tpublic columnsDistribuicaoPersonalizado = [];\r\n\r\n\tpublic rankingPrioridadeDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic rankingPrioridadeEmpresasPublicasDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic semDadosRanking = false;\r\n\tpublic semDadosRankingEmpresaPublica = false;\r\n\r\n\tpublic columnsCapacidade = [\r\n\t\t\"coordenacao\",\r\n\t\t\"diasDisponiveis\",\r\n\t\t\"equipesDisponiveis\",\r\n\t\t\"diasPorAuditoria\",\r\n\t\t\"auditoriasPorEquipe\",\r\n\t\t\"capacidadeTotalCoordenacao\",\r\n\t\t\"actions\",\r\n\t];\r\n\r\n\tpublic relatoriaDados: IRelatoriaCapituloModel[] = null;\r\n\r\n\tpublic visualizarRelatoria = false;\r\n\tpublic visualizarBotaoFormulario = false;\r\n\tpublic hoje = moment();\r\n\tpisoAlto: string;\r\n\ttetoAlto: string;\r\n\tpisoMedio: string;\r\n\ttetoMedio: string;\r\n\tpisoBaixo: string;\r\n\ttetoBaixo: string;\r\n\r\n\t@ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n\t@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n\tpublic form = new FormGroup({\r\n\t\tnome: new FormControl(\"\", Validators.required),\r\n\t\tperiodoId: new FormControl(null, Validators.required),\r\n\t\tindicadorId: new FormControl(null, Validators.required),\r\n\t\tsubcapitulo: new FormControl(\"\"),\r\n\t});\r\n\r\n\tconstructor(\r\n\t\troute: ActivatedRoute,\r\n\t\ttoastr: ToastrService,\r\n\t\trouter: Router,\r\n\t\tlocaleService: BsLocaleService,\r\n\t\tprivate activatedRoute: ActivatedRoute,\r\n\t\tprivate peaService: PeaService,\r\n\t\tprivate periodoService: PeriodoService,\r\n\t\tprivate indicadorService: IndicadorService,\r\n\t\tprivate coordenacaoService: CoordenacaoService,\r\n\t\tprivate tipoDispensaService: TipoDispensaService,\r\n\t\tprivate ugService: UnidadeGestoraService,\r\n\t\tprivate faixaClassificacaoService: FaixaClassificacaoService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tpublic rankingService: RankingDistribuicaoService,\r\n\t\tprivate _location: Location,\r\n\t\tprivate authService: AuthService\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\t\tif (this.novoRegistro) {\r\n\t\t\tthis.titulo = \"Novo PEAC\";\r\n\t\t}\r\n\t\tif (this.visualizar === true) {\r\n\t\t\tthis.visualizarRelatoria = true;\r\n\t\t}\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\tInputmask().mask(document.querySelectorAll(\"input\"));\r\n\t\tconst numeroAba = this.activatedRoute.snapshot.queryParamMap.get(\"aba\");\r\n\t\tif (numeroAba) {\r\n\t\t\tawait this.obterDadosBasicos();\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tawait this.obterDadosBasicos();\r\n\t}\r\n\r\n\tngAfterViewInit() {\r\n\t\tconst numeroAba = this.activatedRoute.snapshot.queryParamMap.get(\"aba\");\r\n\t\tif (numeroAba) {\r\n\t\t\tthis.mudarAba(Number(numeroAba));\r\n\t\t}\r\n\t}\r\n\r\n\tpublic receberFaixaClassificacao(\r\n\t\tfaixaClassificacao: IFaixaClassificacaoModel\r\n\t) {\r\n\t\tthis.modelFaixa = faixaClassificacao;\r\n\t}\r\n\r\n\tpublic async obterDadosBasicos() {\r\n\t\ttry {\r\n\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\tthis.peaService.obterDadosBasicos(this.id).then((res) => {\r\n\t\t\t\t\tthis.showPendencias(res?.pendencias);\r\n\r\n\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\tthis.modelDadosBasicos = res.dados;\r\n\t\t\t\t\t\tif (this.modelDadosBasicos.situacao.codigo !== 1) {\r\n\t\t\t\t\t\t\tthis.visualizar = true;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (this.novoRegistro) {\r\n\t\t\t\t\t\t\tthis.titulo = \"Novo PEAC\";\r\n\t\t\t\t\t\t} else if (this.visualizar) {\r\n\t\t\t\t\t\t\tthis.titulo =\r\n\t\t\t\t\t\t\t\t\"Visualizar PEAC - \" +\r\n\t\t\t\t\t\t\t\tthis.modelDadosBasicos.nome;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.titulo =\r\n\t\t\t\t\t\t\t\t\"Editar PEAC - \" + this.modelDadosBasicos.nome;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.form.patchValue({\r\n\t\t\t\t\t\t\tperiodoId: this.modelDadosBasicos.periodoId,\r\n\t\t\t\t\t\t\tindicadorId: this.modelDadosBasicos.indicadorId,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tthis.situacao =\r\n\t\t\t\t\t\t\tthis.modelDadosBasicos?.situacao?.codigo;\r\n\t\t\t\t\t\tthis.peaHomologado =\r\n\t\t\t\t\t\t\tthis.modelDadosBasicos.situacao.codigo === 4;\r\n\r\n\t\t\t\t\t\tthis.atualizarListaUgs(\r\n\t\t\t\t\t\t\tthis.modelDadosBasicos.peaUnidadeGestora\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\tthis.coordenacoesDataSource =\r\n\t\t\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\t\t\tthis.modelDadosBasicos.peaCoordenacao\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\tthis.coordenacoesDataSource._updateChangeSubscription();\r\n\t\t\t\t\t\tthis.coordenacaoSemDados =\r\n\t\t\t\t\t\t\tthis.coordenacoesDataSource.filteredData.length ===\r\n\t\t\t\t\t\t\t0;\r\n\r\n\t\t\t\t\t\tthis.form.patchValue(this.modelDadosBasicos);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.submit = false;\r\n\t\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t\t\tthis.router.navigate([\"/pea\"]);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.submit = false;\r\n\t\t\tthis.exibirMensagemErro(err.mensagem?.descricao);\r\n\t\t\tthis.router.navigate([\"/pea\"]);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async obterAbaCargaCriterios() {\r\n\t\tthis.obterCargaCriterios();\r\n\t}\r\n\r\n\tpublic async obterAbaCapacidadeTrabalho() {\r\n\t\tthis.obterCapacidadeTrabalho(this.id);\r\n\t}\r\n\r\n\tpublic async obterAbaRanking() {\r\n\t\tthis.obterRankingPrioridade();\r\n\t}\r\n\r\n\tpublic async obterAbaDistribuicao() {\r\n\t\tawait this.obterPainelDistribuicao(this.id);\r\n\t}\r\n\r\n\tpublic async obterDados() {\r\n\t\ttry {\r\n\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\tthis.peaService.obterPorId(this.id).then((res) => {\r\n\t\t\t\t\tthis.showPendencias(res?.pendencias);\r\n\r\n\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\tthis.model = res.dados;\r\n\t\t\t\t\t\tif (this.model.situacao.codigo !== 1) {\r\n\t\t\t\t\t\t\tthis.visualizar = true;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (\r\n\t\t\t\t\t\t\tthis.model.situacao.codigo !== 1 &&\r\n\t\t\t\t\t\t\tthis.model.situacao.codigo !== 2\r\n\t\t\t\t\t\t) {\r\n\t\t\t\t\t\t\tthis.visualizarRelatoria = true;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (this.novoRegistro) {\r\n\t\t\t\t\t\t\tthis.titulo = \"Novo PEAC\";\r\n\t\t\t\t\t\t} else if (this.visualizar) {\r\n\t\t\t\t\t\t\tthis.titulo =\r\n\t\t\t\t\t\t\t\t\"Visualizar PEAC - \" + this.model.nome;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.titulo = \"Editar PEAC - \" + this.model.nome;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.form.patchValue({\r\n\t\t\t\t\t\t\tperiodoId: this.model.periodoId,\r\n\t\t\t\t\t\t\tindicadorId: this.model.indicadorId,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tthis.situacao = this.model?.situacao?.codigo;\r\n\t\t\t\t\t\tthis.habilitarHomologarRejeitar =\r\n\t\t\t\t\t\t\tthis.model.situacao.codigo === 3;\r\n\t\t\t\t\t\tthis.habilitarUltimoNivelAprovacao =\r\n\t\t\t\t\t\t\tthis.model.situacao.codigo === 3;\r\n\t\t\t\t\t\tthis.peaHomologado = this.model.situacao.codigo === 4;\r\n\r\n\t\t\t\t\t\tthis.atualizarListaUgs(this.model.peaUnidadeGestora);\r\n\t\t\t\t\t\tthis.coordenacoesDataSource =\r\n\t\t\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\t\t\tthis.model.peaCoordenacao\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\tthis.coordenacoesDataSource._updateChangeSubscription();\r\n\t\t\t\t\t\tthis.coordenacaoSemDados =\r\n\t\t\t\t\t\t\tthis.coordenacoesDataSource.filteredData.length ===\r\n\t\t\t\t\t\t\t0;\r\n\r\n\t\t\t\t\t\tthis.obterCargaCriterios();\r\n\t\t\t\t\t\tthis.obterCapacidadeTrabalho(this.id);\r\n\r\n\t\t\t\t\t\tthis.obterPainelDistribuicao(this.id);\r\n\r\n\t\t\t\t\t\tthis.faixaClassificacaoService.obter().then((res) => {\r\n\t\t\t\t\t\t\tthis.pisoAlto = res.dados.pisoAlto\r\n\t\t\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t\t\t.replace(\".\", \",\");\r\n\t\t\t\t\t\t\tthis.tetoAlto = res.dados.tetoAlto\r\n\t\t\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t\t\t.replace(\".\", \",\");\r\n\t\t\t\t\t\t\tthis.pisoMedio = res.dados.pisoMedio\r\n\t\t\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t\t\t.replace(\".\", \",\");\r\n\t\t\t\t\t\t\tthis.tetoMedio = res.dados.tetoMedio\r\n\t\t\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t\t\t.replace(\".\", \",\");\r\n\t\t\t\t\t\t\tthis.pisoBaixo = res.dados.pisoBaixo\r\n\t\t\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t\t\t.replace(\".\", \",\");\r\n\t\t\t\t\t\t\tthis.tetoBaixo = res.dados.tetoBaixo\r\n\t\t\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t\t\t.replace(\".\", \",\");\r\n\r\n\t\t\t\t\t\t\tthis.modelFaixaPadrao = res.dados;\r\n\r\n\t\t\t\t\t\t\tif (!this.model.classificacaoPersonalizada) {\r\n\t\t\t\t\t\t\t\t//this.modelFaixa = this.modelFaixaPadrao;\r\n\t\t\t\t\t\t\t\tthis.modelFaixa = {\r\n\t\t\t\t\t\t\t\t\tpisoBaixo: this.modelFaixaPadrao?.pisoBaixo,\r\n\t\t\t\t\t\t\t\t\ttetoBaixo: this.modelFaixaPadrao?.tetoBaixo,\r\n\t\t\t\t\t\t\t\t\tpisoMedio: this.modelFaixaPadrao?.pisoMedio,\r\n\t\t\t\t\t\t\t\t\ttetoMedio: this.modelFaixaPadrao?.tetoMedio,\r\n\t\t\t\t\t\t\t\t\tpisoAlto: this.modelFaixaPadrao?.pisoAlto,\r\n\t\t\t\t\t\t\t\t\ttetoAlto: this.modelFaixaPadrao?.tetoAlto,\r\n\t\t\t\t\t\t\t\t} as IFaixaClassificacaoModel;\r\n\t\t\t\t\t\t\t\tthis.model.classificacaoPisoBaixo =\r\n\t\t\t\t\t\t\t\t\tthis.modelFaixaPadrao?.pisoBaixo ?? 0;\r\n\t\t\t\t\t\t\t\tthis.model.classificacaoTetoBaixo =\r\n\t\t\t\t\t\t\t\t\tthis.modelFaixaPadrao?.tetoBaixo ?? 0;\r\n\t\t\t\t\t\t\t\tthis.model.classificacaoPisoMedio =\r\n\t\t\t\t\t\t\t\t\tthis.modelFaixaPadrao?.pisoMedio ?? 0;\r\n\t\t\t\t\t\t\t\tthis.model.classificacaoTetoMedio =\r\n\t\t\t\t\t\t\t\t\tthis.modelFaixaPadrao?.tetoMedio ?? 0;\r\n\t\t\t\t\t\t\t\tthis.model.classificacaoPisoAlto =\r\n\t\t\t\t\t\t\t\t\tthis.modelFaixaPadrao?.pisoAlto ?? 0;\r\n\t\t\t\t\t\t\t\tthis.model.classificacaoTetoAlto =\r\n\t\t\t\t\t\t\t\t\tthis.modelFaixaPadrao?.tetoAlto ?? 0;\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tthis.modelFaixa = {\r\n\t\t\t\t\t\t\t\t\tpisoBaixo:\r\n\t\t\t\t\t\t\t\t\t\tthis.model.classificacaoPisoBaixo,\r\n\t\t\t\t\t\t\t\t\ttetoBaixo:\r\n\t\t\t\t\t\t\t\t\t\tthis.model.classificacaoTetoBaixo,\r\n\t\t\t\t\t\t\t\t\tpisoMedio:\r\n\t\t\t\t\t\t\t\t\t\tthis.model.classificacaoPisoMedio,\r\n\t\t\t\t\t\t\t\t\ttetoMedio:\r\n\t\t\t\t\t\t\t\t\t\tthis.model.classificacaoTetoMedio,\r\n\t\t\t\t\t\t\t\t\tpisoAlto: this.model.classificacaoPisoAlto,\r\n\t\t\t\t\t\t\t\t\ttetoAlto: this.model.classificacaoTetoAlto,\r\n\t\t\t\t\t\t\t\t} as IFaixaClassificacaoModel;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tthis.form.patchValue(this.model);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.submit = false;\r\n\t\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t\t\tthis.router.navigate([\"/pea\"]);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.submit = false;\r\n\t\t\tthis.exibirMensagemErro(err.mensagem?.descricao);\r\n\t\t\tthis.router.navigate([\"/pea\"]);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic atualizarListaUgs(peaUnidadeGestora: IPeaUnidadeGestoraModel[]) {\r\n\t\tconst listaUgs = peaUnidadeGestora.map((_) => ({\r\n\t\t\t..._,\r\n\t\t\tnome: `${_.unidadeGestora.sigla} - ${_.unidadeGestora.nome}`,\r\n\t\t}));\r\n\t\tthis.ugDataSource.paginator = this.paginator;\r\n\t\tthis.ugDataSource.sort = this.sort;\r\n\t\tthis.ugDataSource.filterPredicate = (\r\n\t\t\tdata: { nome: string },\r\n\t\t\tfilterValue: string\r\n\t\t) => {\r\n\t\t\treturn (\r\n\t\t\t\t(data.nome || \"\").trim().toLowerCase().indexOf(filterValue) !==\r\n\t\t\t\t-1\r\n\t\t\t);\r\n\t\t};\r\n\t\tlistaUgs.sort((a, b) => a[\"nome\"].localeCompare(b[\"nome\"]));\r\n\t\tthis.ugDataSource = new MatTableDataSource(\r\n\t\t\tlistaUgs\r\n\t\t);\r\n\t\tthis.ugDataSource.sortingDataAccessor = defaultDataAcessor;\r\n\t\tthis.ugDataSource._updateChangeSubscription();\r\n\t\tthis.ugSemDados = this.ugDataSource.filteredData.length === 0;\r\n\t}\r\n\r\n\tpublic cancelar() {\r\n\t\tthis._location.back();\r\n\t}\r\n\r\n\tpublic obterCargaCriterios() {\r\n\t\tthis.peaService\r\n\t\t\t.obterCargaCriteriosPorId(this.id)\r\n\t\t\t.then((resCriterios) => {\r\n\t\t\t\tconst criterios = resCriterios.dados.map(\r\n\t\t\t\t\t(c) =>\r\n\t\t\t\t\t\t({\r\n\t\t\t\t\t\t\t...c,\r\n\t\t\t\t\t\t\tquestionariosEnviados:\r\n\t\t\t\t\t\t\t\tc.peaCriterioQuestionario.length > 0,\r\n\t\t\t\t\t\t} as ICargaCriterioPeaModel)\r\n\t\t\t\t);\r\n\t\t\t\tthis.peaQuestionario =\r\n\t\t\t\t\tcriterios.filter(\r\n\t\t\t\t\t\t(_) => _.criterio.tipoEntrada.nome === \"Questionario\"\r\n\t\t\t\t\t).length > 0;\r\n\t\t\t\tcriterios.forEach((element) => {\r\n\t\t\t\t\telement.peaCriterioQuestionario.forEach((item) => {\r\n\t\t\t\t\t\tthis.visualizarBotaoFormulario =\r\n\t\t\t\t\t\t\tthis.hoje.diff(item.dataLimite) >= 0 &&\r\n\t\t\t\t\t\t\titem.status == \"Expirado\";\r\n\t\t\t\t\t\tif (this.visualizarBotaoFormulario) {\r\n\t\t\t\t\t\t\tconst texto =\r\n\t\t\t\t\t\t\t\t\"O questionário: \" +\r\n\t\t\t\t\t\t\t\titem.criterio.nome +\r\n\t\t\t\t\t\t\t\t\" - não foi respondido pela unidade gestora - \" +\r\n\t\t\t\t\t\t\t\titem.unidadeGestora.nome +\r\n\t\t\t\t\t\t\t\t\" (prazo expirado).\";\r\n\t\t\t\t\t\t\tthis.exibirMensagemAlerta(texto);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tthis.criterioDataSource =\r\n\t\t\t\t\tnew MatTableDataSource(criterios);\r\n\t\t\t\tthis.criterioDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.criterioSemDados =\r\n\t\t\t\t\tthis.criterioDataSource.filteredData.length === 0;\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic obterCapacidadeTrabalho(peaId: number): Promise {\r\n\t\treturn this.peaService\r\n\t\t\t.obterCapacidadeTrabalhoPorId(peaId)\r\n\t\t\t.then((resCapacidade) => {\r\n\t\t\t\tthis.showPendencias(resCapacidade?.pendencias);\r\n\r\n\t\t\t\tlet dadosPreparados = [];\r\n\t\t\t\tconst anos = [\r\n\t\t\t\t\t...new Set(resCapacidade.dados?.map((d) => d.ano)),\r\n\t\t\t\t];\r\n\r\n\t\t\t\tfor (const ano of anos) {\r\n\t\t\t\t\t// Header\r\n\t\t\t\t\tdadosPreparados.push({\r\n\t\t\t\t\t\tgrupo: true,\r\n\t\t\t\t\t\tano,\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\t// Dados\r\n\t\t\t\t\tdadosPreparados = dadosPreparados.concat(\r\n\t\t\t\t\t\tresCapacidade.dados.filter((c) => c.ano === ano)\r\n\t\t\t\t\t);\r\n\t\t\t\t\t// Footer\r\n\t\t\t\t\tdadosPreparados.push({\r\n\t\t\t\t\t\tsubTotal: true,\r\n\t\t\t\t\t\tcapacidadeTotalAno: resCapacidade.dados\r\n\t\t\t\t\t\t\t.filter((c) => c.ano === ano)\r\n\t\t\t\t\t\t\t.map((c) => c.capacidadeTotalCoordenacao)\r\n\t\t\t\t\t\t\t.reduce((sum, record) => sum + record),\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\tthis.capacidadeDataSource = new MatTableDataSource(\r\n\t\t\t\t\tdadosPreparados\r\n\t\t\t\t);\r\n\t\t\t\tthis.capacidadeDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.capacidadeSemDados =\r\n\t\t\t\t\tthis.capacidadeDataSource.filteredData.length === 0;\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(\r\n\t\t\t\t\t\"Houve uma falha ao buscar os dados de Capacidade de Trabalho para esse PEAC.\"\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic async obterPainelDistribuicao(peaId: number): Promise {\r\n\t\tawait this.peaService\r\n\t\t\t.obterPainelDistribuicaoPorPeaId(peaId)\r\n\t\t\t.then((resPainel) => {\r\n\t\t\t\tif (!resPainel.dados) {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.distribuicaoDataSource = new MatTableDataSource();\r\n\t\t\t\tthis.distribuicaoDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.distribuicaoNaoContempladosDataSource =\r\n\t\t\t\t\tnew MatTableDataSource();\r\n\t\t\t\tthis.distribuicaoNaoContempladosDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.distribuicaoPersonalizadoDataSource =\r\n\t\t\t\t\tnew MatTableDataSource();\r\n\t\t\t\tthis.distribuicaoPersonalizadoDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.distribuicaoNaoContempladosPersonalizadoDataSource =\r\n\t\t\t\t\tnew MatTableDataSource();\r\n\t\t\t\tthis.distribuicaoNaoContempladosPersonalizadoDataSource._updateChangeSubscription();\r\n\r\n\t\t\t\tthis.model.classificacaoPersonalizada =\r\n\t\t\t\t\tresPainel.dados.classificacaoPersonalizada;\r\n\r\n\t\t\t\tthis.pisoAlto =\r\n\t\t\t\t\tresPainel.dados.faixaClassificacaoPadrao.pisoAlto\r\n\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t.replace(\".\", \",\");\r\n\t\t\t\tthis.tetoAlto =\r\n\t\t\t\t\tresPainel.dados.faixaClassificacaoPadrao.tetoAlto\r\n\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t.replace(\".\", \",\");\r\n\t\t\t\tthis.pisoMedio =\r\n\t\t\t\t\tresPainel.dados.faixaClassificacaoPadrao.pisoMedio\r\n\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t.replace(\".\", \",\");\r\n\t\t\t\tthis.tetoMedio =\r\n\t\t\t\t\tresPainel.dados.faixaClassificacaoPadrao.tetoMedio\r\n\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t.replace(\".\", \",\");\r\n\t\t\t\tthis.pisoBaixo =\r\n\t\t\t\t\tresPainel.dados.faixaClassificacaoPadrao.pisoBaixo\r\n\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t.replace(\".\", \",\");\r\n\t\t\t\tthis.tetoBaixo =\r\n\t\t\t\t\tresPainel.dados.faixaClassificacaoPadrao.tetoBaixo\r\n\t\t\t\t\t\t.toFixed(4)\r\n\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t.replace(\".\", \",\");\r\n\r\n\t\t\t\tthis.modelFaixaPadrao =\r\n\t\t\t\t\tresPainel.dados.faixaClassificacaoPadrao;\r\n\t\t\t\tthis.modelFaixaPersonalizada =\r\n\t\t\t\t\tresPainel.dados.faixaClassificacaoPersonalizada;\r\n\r\n\t\t\t\tif (!this.model.classificacaoPersonalizada) {\r\n\t\t\t\t\tthis.modelFaixa = this.modelFaixaPadrao;\r\n\t\t\t\t\tthis.model.classificacaoPisoBaixo =\r\n\t\t\t\t\t\tthis.modelFaixaPadrao?.pisoBaixo ?? 0;\r\n\t\t\t\t\tthis.model.classificacaoTetoBaixo =\r\n\t\t\t\t\t\tthis.modelFaixaPadrao?.tetoBaixo ?? 0;\r\n\t\t\t\t\tthis.model.classificacaoPisoMedio =\r\n\t\t\t\t\t\tthis.modelFaixaPadrao?.pisoMedio ?? 0;\r\n\t\t\t\t\tthis.model.classificacaoTetoMedio =\r\n\t\t\t\t\t\tthis.modelFaixaPadrao?.tetoMedio ?? 0;\r\n\t\t\t\t\tthis.model.classificacaoPisoAlto =\r\n\t\t\t\t\t\tthis.modelFaixaPadrao?.pisoAlto ?? 0;\r\n\t\t\t\t\tthis.model.classificacaoTetoAlto =\r\n\t\t\t\t\t\tthis.modelFaixaPadrao?.tetoAlto ?? 0;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.modelFaixa = this.modelFaixaPersonalizada;\r\n\t\t\t\t\tthis.model.classificacaoPisoBaixo =\r\n\t\t\t\t\t\tthis.modelFaixaPersonalizada?.pisoBaixo ?? 0;\r\n\t\t\t\t\tthis.model.classificacaoTetoBaixo =\r\n\t\t\t\t\t\tthis.modelFaixaPersonalizada?.tetoBaixo ?? 0;\r\n\t\t\t\t\tthis.model.classificacaoPisoMedio =\r\n\t\t\t\t\t\tthis.modelFaixaPersonalizada?.pisoMedio ?? 0;\r\n\t\t\t\t\tthis.model.classificacaoTetoMedio =\r\n\t\t\t\t\t\tthis.modelFaixaPersonalizada?.tetoMedio ?? 0;\r\n\t\t\t\t\tthis.model.classificacaoPisoAlto =\r\n\t\t\t\t\t\tthis.modelFaixaPersonalizada?.pisoAlto ?? 0;\r\n\t\t\t\t\tthis.model.classificacaoTetoAlto =\r\n\t\t\t\t\t\tthis.modelFaixaPersonalizada?.tetoAlto ?? 0;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Padrão\r\n\t\t\t\t// Contempladas\r\n\t\t\t\tconst tabela = [];\r\n\t\t\t\tthis.columnsDistribuicao = [\r\n\t\t\t\t\t...new Set(\r\n\t\t\t\t\t\tresPainel.dados.painelDistribuicaoPadrao?.painel.map(\r\n\t\t\t\t\t\t\t(d) => d.ano.toString()\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t),\r\n\t\t\t\t];\r\n\r\n\t\t\t\tfor (const item of resPainel.dados.painelDistribuicaoPadrao?.painel.filter(\r\n\t\t\t\t\t(d) => d.contemplada\r\n\t\t\t\t)) {\r\n\t\t\t\t\tif (\r\n\t\t\t\t\t\ttabela.length === 0 ||\r\n\t\t\t\t\t\ttabela.findIndex((r) => !r[item.ano.toString()]) < 0\r\n\t\t\t\t\t) {\r\n\t\t\t\t\t\tconst row = {};\r\n\t\t\t\t\t\trow[item.ano.toString()] = item.unidadeGestoraSigla;\r\n\t\t\t\t\t\trow[item.ano.toString() + \"_class\"] =\r\n\t\t\t\t\t\t\titem.blocoPainel.nome;\r\n\t\t\t\t\t\trow[item.ano.toString() + \"_indice\"] =\r\n\t\t\t\t\t\t\t(item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n\t\t\t\t\t\ttabela.push(row);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconst row =\r\n\t\t\t\t\t\t\ttabela[\r\n\t\t\t\t\t\t\t\ttabela.findIndex((r) => !r[item.ano.toString()])\r\n\t\t\t\t\t\t\t];\r\n\t\t\t\t\t\trow[item.ano.toString()] = item.unidadeGestoraSigla;\r\n\t\t\t\t\t\trow[item.ano.toString() + \"_class\"] =\r\n\t\t\t\t\t\t\titem.blocoPainel.nome;\r\n\t\t\t\t\t\trow[item.ano.toString() + \"_indice\"] =\r\n\t\t\t\t\t\t\t(item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.distribuicaoDataSource = new MatTableDataSource(\r\n\t\t\t\t\ttabela\r\n\t\t\t\t);\r\n\t\t\t\tthis.distribuicaoDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.distribuicaoSemDados =\r\n\t\t\t\t\tthis.distribuicaoDataSource.filteredData.length === 0;\r\n\r\n\t\t\t\t// Não Contempladas\r\n\t\t\t\tconst tabelaNaoContemplados = [];\r\n\r\n\t\t\t\tfor (const item of resPainel.dados.painelDistribuicaoPadrao?.painel.filter(\r\n\t\t\t\t\t(d) => !d.contemplada\r\n\t\t\t\t)) {\r\n\t\t\t\t\tif (\r\n\t\t\t\t\t\ttabelaNaoContemplados.length === 0 ||\r\n\t\t\t\t\t\ttabelaNaoContemplados.findIndex(\r\n\t\t\t\t\t\t\t(r) => !r[item.ano.toString()]\r\n\t\t\t\t\t\t) < 0\r\n\t\t\t\t\t) {\r\n\t\t\t\t\t\tconst row = {};\r\n\t\t\t\t\t\trow[item.ano.toString()] = item.unidadeGestoraSigla;\r\n\t\t\t\t\t\trow[item.ano.toString() + \"_indice\"] =\r\n\t\t\t\t\t\t\t(item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n\t\t\t\t\t\ttabelaNaoContemplados.push(row);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconst row =\r\n\t\t\t\t\t\t\ttabelaNaoContemplados[\r\n\t\t\t\t\t\t\t\ttabelaNaoContemplados.findIndex(\r\n\t\t\t\t\t\t\t\t\t(r) => !r[item.ano.toString()]\r\n\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t];\r\n\t\t\t\t\t\trow[item.ano.toString()] = item.unidadeGestoraSigla;\r\n\t\t\t\t\t\trow[item.ano.toString() + \"_indice\"] =\r\n\t\t\t\t\t\t\t(item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.distribuicaoNaoContempladosDataSource =\r\n\t\t\t\t\tnew MatTableDataSource(tabelaNaoContemplados);\r\n\t\t\t\tthis.distribuicaoNaoContempladosDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.distribuicaoNaoContempladosSemDados =\r\n\t\t\t\t\tthis.distribuicaoNaoContempladosDataSource.filteredData\r\n\t\t\t\t\t\t.length === 0;\r\n\r\n\t\t\t\t// Personalizada\r\n\t\t\t\t// Contempladas\r\n\t\t\t\tif (resPainel.dados.painelDistribuicaoPersonalizado) {\r\n\t\t\t\t\tconst tabelaPersonalizada = [];\r\n\t\t\t\t\tthis.columnsDistribuicaoPersonalizado = [\r\n\t\t\t\t\t\t...new Set(\r\n\t\t\t\t\t\t\tresPainel.dados.painelDistribuicaoPersonalizado?.painel.map(\r\n\t\t\t\t\t\t\t\t(d) => d.ano.toString()\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t),\r\n\t\t\t\t\t];\r\n\r\n\t\t\t\t\tfor (const item of resPainel.dados.painelDistribuicaoPersonalizado?.painel.filter(\r\n\t\t\t\t\t\t(d) => d.contemplada\r\n\t\t\t\t\t)) {\r\n\t\t\t\t\t\tif (\r\n\t\t\t\t\t\t\ttabelaPersonalizada.length === 0 ||\r\n\t\t\t\t\t\t\ttabelaPersonalizada.findIndex(\r\n\t\t\t\t\t\t\t\t(r) => !r[item.ano.toString()]\r\n\t\t\t\t\t\t\t) < 0\r\n\t\t\t\t\t\t) {\r\n\t\t\t\t\t\t\tconst row = {};\r\n\t\t\t\t\t\t\trow[item.ano.toString()] = item.unidadeGestoraSigla;\r\n\t\t\t\t\t\t\trow[item.ano.toString() + \"_class\"] =\r\n\t\t\t\t\t\t\t\titem.blocoPainel.nome;\r\n\t\t\t\t\t\t\trow[item.ano.toString() + \"_indice\"] =\r\n\t\t\t\t\t\t\t\t(item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n\t\t\t\t\t\t\ttabelaPersonalizada.push(row);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tconst row =\r\n\t\t\t\t\t\t\t\ttabelaPersonalizada[\r\n\t\t\t\t\t\t\t\t\ttabelaPersonalizada.findIndex(\r\n\t\t\t\t\t\t\t\t\t\t(r) => !r[item.ano.toString()]\r\n\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t];\r\n\t\t\t\t\t\t\trow[item.ano.toString()] = item.unidadeGestoraSigla;\r\n\t\t\t\t\t\t\trow[item.ano.toString() + \"_class\"] =\r\n\t\t\t\t\t\t\t\titem.blocoPainel.nome;\r\n\t\t\t\t\t\t\trow[item.ano.toString() + \"_indice\"] =\r\n\t\t\t\t\t\t\t\t(item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.distribuicaoPersonalizadoDataSource =\r\n\t\t\t\t\t\tnew MatTableDataSource(tabelaPersonalizada);\r\n\t\t\t\t\tthis.distribuicaoPersonalizadoDataSource._updateChangeSubscription();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.distribuicaoPersonalizadoDataSource =\r\n\t\t\t\t\t\tnew MatTableDataSource([]);\r\n\t\t\t\t\tthis.distribuicaoPersonalizadoDataSource._updateChangeSubscription();\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.distribuicaoSemDadosPersonalizado =\r\n\t\t\t\t\tthis.distribuicaoPersonalizadoDataSource.filteredData\r\n\t\t\t\t\t\t.length === 0;\r\n\r\n\t\t\t\t// Não Contempladas\r\n\t\t\t\tif (resPainel.dados.painelDistribuicaoPersonalizado) {\r\n\t\t\t\t\tconst tabelaNaoContempladosPersonalizada = [];\r\n\r\n\t\t\t\t\tfor (const item of resPainel.dados.painelDistribuicaoPersonalizado?.painel.filter(\r\n\t\t\t\t\t\t(d) => !d.contemplada\r\n\t\t\t\t\t)) {\r\n\t\t\t\t\t\tif (\r\n\t\t\t\t\t\t\ttabelaNaoContempladosPersonalizada.length === 0 ||\r\n\t\t\t\t\t\t\ttabelaNaoContempladosPersonalizada.findIndex(\r\n\t\t\t\t\t\t\t\t(r) => !r[item.ano.toString()]\r\n\t\t\t\t\t\t\t) < 0\r\n\t\t\t\t\t\t) {\r\n\t\t\t\t\t\t\tconst row = {};\r\n\t\t\t\t\t\t\trow[item.ano.toString()] = item.unidadeGestoraSigla;\r\n\t\t\t\t\t\t\trow[item.ano.toString() + \"_indice\"] =\r\n\t\t\t\t\t\t\t\t(item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n\t\t\t\t\t\t\ttabelaNaoContempladosPersonalizada.push(row);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tconst row =\r\n\t\t\t\t\t\t\t\ttabelaNaoContempladosPersonalizada[\r\n\t\t\t\t\t\t\t\t\ttabelaNaoContempladosPersonalizada.findIndex(\r\n\t\t\t\t\t\t\t\t\t\t(r) => !r[item.ano.toString()]\r\n\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t];\r\n\t\t\t\t\t\t\trow[item.ano.toString()] = item.unidadeGestoraSigla;\r\n\t\t\t\t\t\t\trow[item.ano.toString() + \"_indice\"] =\r\n\t\t\t\t\t\t\t\t(item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.distribuicaoNaoContempladosPersonalizadoDataSource =\r\n\t\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\t\ttabelaNaoContempladosPersonalizada\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\tthis.distribuicaoNaoContempladosPersonalizadoDataSource._updateChangeSubscription();\r\n\t\t\t\t\tthis.distribuicaoNaoContempladosSemDadosPersonalizado =\r\n\t\t\t\t\t\tthis.distribuicaoNaoContempladosPersonalizadoDataSource\r\n\t\t\t\t\t\t\t.filteredData.length === 0;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.distribuicaoPersonalizadoDataSource =\r\n\t\t\t\t\t\tnew MatTableDataSource([]);\r\n\t\t\t\t\tthis.distribuicaoPersonalizadoDataSource._updateChangeSubscription();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(\r\n\t\t\t\t\t\"Houve uma falha ao buscar os dados desse PEAC.\"\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic agrupadorCapacidade(index: number, item: any): boolean {\r\n\t\treturn item.grupo;\r\n\t}\r\n\r\n\tpublic subTotalCapacidade(index: number, item: any): boolean {\r\n\t\treturn item.subTotal;\r\n\t}\r\n\r\n\tpublic async descricaoDiasUteis(\r\n\t\tcapacidade: IPeaCoordenacaoDiasUteisModel,\r\n\t\tvisualizar?: boolean\r\n\t) {\r\n\t\ttry {\r\n\t\t\tconst feriadosPorTipo = capacidade.extras.feriadosPorTipo as Record<\r\n\t\t\t\tEnumTipoFeriado,\r\n\t\t\t\tnumber\r\n\t\t\t>;\r\n\r\n\t\t\tconst coordenacao = (\r\n\t\t\t\tawait this.coordenacaoService.obterCapacidadePorAno(\r\n\t\t\t\t\tcapacidade.coordenacaoId,\r\n\t\t\t\t\tcapacidade.ano\r\n\t\t\t\t)\r\n\t\t\t).dados;\r\n\r\n\t\t\tconst auditoriasEspeciais = capacidade.extras\r\n\t\t\t\t.auditoriasEspeciaisGet || { id: \"\", valor: \"\" };\r\n\r\n\t\t\tconst feriadoEnumToKeyMap = {\r\n\t\t\t\t[EnumTipoFeriado.Nacional]: \"nacional\",\r\n\t\t\t\t[EnumTipoFeriado.Estadual]: \"estadual\",\r\n\t\t\t\t[EnumTipoFeriado.Municipal]: \"municipal\",\r\n\t\t\t\t[EnumTipoFeriado.PontoFacultativo]: \"pontoFacultativo\",\r\n\t\t\t\t[EnumTipoFeriado.Outros]: \"outros\",\r\n\t\t\t};\r\n\r\n\t\t\t// Extrair os dados necessários do objeto capacidade\r\n\t\t\tconst data = {\r\n\t\t\t\tano: capacidade.ano,\r\n\t\t\t\ttotalDiasAno: capacidade.extras.diasAno,\r\n\t\t\t\tdiasNaoUteis: {\r\n\t\t\t\t\tsabDom: capacidade.extras.diasFinaisSemana || 0,\r\n\t\t\t\t\tferNac:\r\n\t\t\t\t\t\tcapacidade.extras.feriadosPorTipo?.[\r\n\t\t\t\t\t\t\tferiadoEnumToKeyMap[EnumTipoFeriado.Nacional]\r\n\t\t\t\t\t\t] || 0,\r\n\t\t\t\t\tferEst:\r\n\t\t\t\t\t\tcapacidade.extras.feriadosPorTipo?.[\r\n\t\t\t\t\t\t\tferiadoEnumToKeyMap[EnumTipoFeriado.Estadual]\r\n\t\t\t\t\t\t] || 0,\r\n\t\t\t\t\tferMun:\r\n\t\t\t\t\t\tcapacidade.extras.feriadosPorTipo?.[\r\n\t\t\t\t\t\t\tferiadoEnumToKeyMap[EnumTipoFeriado.Municipal]\r\n\t\t\t\t\t\t] || 0,\r\n\t\t\t\t\tpontoFac:\r\n\t\t\t\t\t\tcapacidade.extras.feriadosPorTipo?.[\r\n\t\t\t\t\t\t\tferiadoEnumToKeyMap[\r\n\t\t\t\t\t\t\t\tEnumTipoFeriado.PontoFacultativo\r\n\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t] || 0,\r\n\t\t\t\t\toutros:\r\n\t\t\t\t\t\tcapacidade.extras.feriadosPorTipo?.[\r\n\t\t\t\t\t\t\tferiadoEnumToKeyMap[EnumTipoFeriado.Outros]\r\n\t\t\t\t\t\t] || 0,\r\n\t\t\t\t\ttotalDNU: capacidade.extras.totalDiasNaoUteis || 0,\r\n\t\t\t\t},\r\n\t\t\t\tdu: capacidade.extras.du || 0,\r\n\t\t\t\ttipoDispensa: capacidade.extras.tipoDispensa,\r\n\t\t\t\ttotalDispensasPadrao:\r\n\t\t\t\t\tcapacidade.extras.totalDispensasPadrao || 0,\r\n\t\t\t\tdiasDisponiveisTotais:\r\n\t\t\t\t\tcapacidade.extras.diasDisponiveisTotais || 0,\r\n\t\t\t\tdiasReservadosAuditoriasEspeciais:\r\n\t\t\t\t\tcapacidade.extras.diasReservadosAuditoriasEspeciais || 0,\r\n\t\t\t\tdiasDisponiveis: capacidade.extras.diasDisponiveis || 0,\r\n\t\t\t\tauditoriasEspeciais: {\r\n\t\t\t\t\tid: capacidade.extras.auditoriasEspeciaisGet.id,\r\n\t\t\t\t\tvalor: capacidade.extras.auditoriasEspeciaisGet.valor,\r\n\t\t\t\t},\r\n\t\t\t\tauditoriaEspecialDD: capacidade.extras.auditoriaEspecialDD,\r\n\t\t\t};\r\n\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\tdialogConfig.width = \"1080px\";\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.data = {\r\n\t\t\t\tcapacidade: data,\r\n\t\t\t\tcoordenacao,\r\n\t\t\t\tvisualizar,\r\n\t\t\t};\r\n\r\n\t\t\tthis.matDialog.open(ModalDescricaoDiasUteisComponent, dialogConfig);\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async descricaoPEAC(\r\n\t\tcapacidade: IPeaCoordenacaoDiasUteisModel,\r\n\t\tvisualizar?: boolean\r\n\t) {\r\n\t\ttry {\r\n\t\t\tconst coordenacao = (\r\n\t\t\t\tawait this.coordenacaoService.obterCapacidadePorAno(\r\n\t\t\t\t\tcapacidade.coordenacaoId,\r\n\t\t\t\t\tcapacidade.ano\r\n\t\t\t\t)\r\n\t\t\t).dados;\r\n\r\n\t\t\t// Extrair os dados necessários do objeto capacidade\r\n\t\t\tconst data = {\r\n\t\t\t\tcapacidade: {\r\n\t\t\t\t\tdiasDisponiveis: capacidade.extras.diasDisponiveis,\r\n\t\t\t\t\tqntDiasPorAuditor: capacidade.extras.qntDiasPorAuditor,\r\n\t\t\t\t\tnumAuditoriaPorEquipe:\r\n\t\t\t\t\t\tcapacidade.extras.numAuditoriaPorEquipe,\r\n\t\t\t\t\tnumAuditoriaPorEquipeArred:\r\n\t\t\t\t\t\tcapacidade.extras.numAuditoriaPorEquipeArred,\r\n\t\t\t\t\tnumEquipeDisponiveis:\r\n\t\t\t\t\t\tcapacidade.extras.numEquipeDisponiveis,\r\n\t\t\t\t\tcapacidadeTotalPorCoord:\r\n\t\t\t\t\t\tcapacidade.extras.capacidadeTotalPorCoord,\r\n\t\t\t\t},\r\n\t\t\t};\r\n\t\t\t// Configuração do modal\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = \"modal-descricao-paac-component\";\r\n\t\t\tdialogConfig.width = \"600px\";\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.data = data;\r\n\r\n\t\t\t// Abrir o modal\r\n\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t\tModalDescricaoPEACComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t);\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async editarCapacidade(\r\n\t\tcapacidade: IPeaCoordenacaoCapacidadeModel,\r\n\t\tvisualizar?: boolean\r\n\t) {\r\n\t\ttry {\r\n\t\t\tconst coordenacao = (\r\n\t\t\t\tawait this.coordenacaoService.obterCapacidadePorAno(\r\n\t\t\t\t\tcapacidade.coordenacaoId,\r\n\t\t\t\t\tcapacidade.ano\r\n\t\t\t\t)\r\n\t\t\t).dados;\r\n\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\tdialogConfig.width = \"1080px\";\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.data = {\r\n\t\t\t\tcapacidade,\r\n\t\t\t\tcoordenacao,\r\n\t\t\t\tvisualizar,\r\n\t\t\t};\r\n\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t\tModalCapacidadeComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t);\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async salvarDados(salvarEFechar: boolean) {\r\n\t\tthis.submit = true;\r\n\r\n\t\tif (this.form.invalid) {\r\n\t\t\tthis.exibirMensagemErro(\"Formulário invalido!\");\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (\r\n\t\t\tthis.ugDataSource.data.length === 0 ||\r\n\t\t\tthis.coordenacoesDataSource.data.length === 0\r\n\t\t) {\r\n\t\t\tthis.exibirMensagemErro(\r\n\t\t\t\t\"Informe alguma Unidade Gestora e alguma Coordenação\"\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.atualizarModel(this.form.value);\r\n\r\n\t\ttry {\r\n\t\t\tlet res: IBaseModel = null;\r\n\t\t\tObject.assign(this.modelDadosBasicos, this.form.value);\r\n\t\t\tif (this.novoRegistro) {\r\n\t\t\t\tres = await this.peaService.inserir(this.modelDadosBasicos);\r\n\t\t\t} else {\r\n\t\t\t\tswitch (this.aba) {\r\n\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\tres = await this.atualizarAbaDadosBasicos();\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 4:\r\n\t\t\t\t\t\tres = await this.atualizarAbaDistribuicao();\r\n\t\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\t\tthis.obterAbaDistribuicao();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\tconsole.warn(\"salvar não implementado\");\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tthis.exibirMensagemSucesso(res.mensagem.descricao);\r\n\t\t\t\tthis.salvarDadosPendente = false;\r\n\t\t\t\tif (\r\n\t\t\t\t\tres.dados?.pendencias?.pendencias &&\r\n\t\t\t\t\tres.dados?.pendencias?.pendencias.length > 0\r\n\t\t\t\t)\r\n\t\t\t\t\tthis.showPendencias(res?.dados?.pendencias?.pendencias);\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tif (salvarEFechar == true) this.router.navigate([\"/pea\"]);\r\n\t\t\telse {\r\n\t\t\t\tif (this.novoRegistro)\r\n\t\t\t\t\tthis.router.navigate([`/pea/${res.dados.id}`]);\r\n\t\t\t\tawait this.obterDadosBasicos();\r\n\t\t\t}\r\n\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tif (\r\n\t\t\t\t\tres.dados?.pendencias?.pendencias &&\r\n\t\t\t\t\tres.dados?.pendencias?.pendencias.length > 0\r\n\t\t\t\t) {\r\n\t\t\t\t\tthis.showPendencias(res?.dados?.pendencias?.pendencias);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tconst validacoes = this.montarMensagensValidacao(res);\r\n\r\n\t\t\t\tif (validacoes.trim().length > 0)\r\n\t\t\t\t\tthis.exibirMensagemErro(validacoes);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err?.mensagem?.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async atualizarAbaDadosBasicos() {\r\n\t\tthis.modelDadosBasicos.peaUnidadeGestora = this.ugDataSource.data;\r\n\t\tthis.modelDadosBasicos.peaCoordenacao =\r\n\t\t\tthis.coordenacoesDataSource.data;\r\n\t\treturn this.peaService.atualizarDadosBasicos(this.modelDadosBasicos);\r\n\t}\r\n\r\n\tpublic async atualizarAbaDistribuicao() {\r\n\t\tif (this.model.classificacaoPersonalizada) {\r\n\t\t\tthis.model.classificacaoPisoBaixo = this.modelFaixa?.pisoBaixo ?? 0;\r\n\t\t\tthis.model.classificacaoTetoBaixo = this.modelFaixa?.tetoBaixo ?? 0;\r\n\t\t\tthis.model.classificacaoPisoMedio = this.modelFaixa?.pisoMedio ?? 0;\r\n\t\t\tthis.model.classificacaoTetoMedio = this.modelFaixa?.tetoMedio ?? 0;\r\n\t\t\tthis.model.classificacaoPisoAlto = this.modelFaixa?.pisoAlto ?? 0;\r\n\t\t\tthis.model.classificacaoTetoAlto = this.modelFaixa?.tetoAlto ?? 0;\r\n\t\t} else {\r\n\t\t\tthis.model.classificacaoPisoBaixo = null;\r\n\t\t\tthis.model.classificacaoTetoBaixo = null;\r\n\t\t\tthis.model.classificacaoPisoMedio = null;\r\n\t\t\tthis.model.classificacaoTetoMedio = null;\r\n\t\t\tthis.model.classificacaoPisoAlto = null;\r\n\t\t\tthis.model.classificacaoTetoAlto = null;\r\n\t\t}\r\n\r\n\t\tthis.model.validacaoFluxoAprovacao = null;\r\n\t\tthis.model.id = this.id;\r\n\r\n\t\treturn this.peaService.AtualizarFaixaClassificacao(this.model);\r\n\t}\r\n\r\n\tpublic async salvarDadosDistribuicao(salvarEFechar: boolean) {\r\n\t\tthis.submit = true;\r\n\t\tif (this.form.invalid) {\r\n\t\t\tthis.exibirMensagemErro(\"Formulário invalido!\");\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.atualizarModel(this.form.value);\r\n\r\n\t\tif (this.model.classificacaoPersonalizada) {\r\n\t\t\tthis.model.classificacaoPisoBaixo = this.modelFaixa?.pisoBaixo ?? 0;\r\n\t\t\tthis.model.classificacaoTetoBaixo = this.modelFaixa?.tetoBaixo ?? 0;\r\n\t\t\tthis.model.classificacaoPisoMedio = this.modelFaixa?.pisoMedio ?? 0;\r\n\t\t\tthis.model.classificacaoTetoMedio = this.modelFaixa?.tetoMedio ?? 0;\r\n\t\t\tthis.model.classificacaoPisoAlto = this.modelFaixa?.pisoAlto ?? 0;\r\n\t\t\tthis.model.classificacaoTetoAlto = this.modelFaixa?.tetoAlto ?? 0;\r\n\t\t} else {\r\n\t\t\tthis.model.classificacaoPisoBaixo = null;\r\n\t\t\tthis.model.classificacaoTetoBaixo = null;\r\n\t\t\tthis.model.classificacaoPisoMedio = null;\r\n\t\t\tthis.model.classificacaoTetoMedio = null;\r\n\t\t\tthis.model.classificacaoPisoAlto = null;\r\n\t\t\tthis.model.classificacaoTetoAlto = null;\r\n\t\t}\r\n\r\n\t\tthis.model.validacaoFluxoAprovacao = null;\r\n\r\n\t\ttry {\r\n\t\t\tlet res: IBaseModel = null;\r\n\r\n\t\t\tres = await this.peaService.atualizar(this.model);\r\n\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tthis.exibirMensagemSucesso(res.mensagem.descricao);\r\n\r\n\t\t\t\tif (salvarEFechar == true) this.router.navigate([\"/pea\"]);\r\n\t\t\t} else {\r\n\t\t\t\tconst validacoes = this.montarMensagensValidacao(res);\r\n\t\t\t\tif (validacoes.trim().length > 0) {\r\n\t\t\t\t\tthis.exibirMensagemErro(validacoes);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err?.mensagem?.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tprivate atualizarModel(values: any) {\r\n\t\tObject.assign(this.model, values);\r\n\t}\r\n\r\n\tpublic async enviarAprovar() {\r\n\t\tconst perfis = await this.authService.obterPerfisSimplificado();\r\n\t\tconst inputOptions = new Map();\r\n\r\n\t\tperfis.dados.forEach((element) => {\r\n\t\t\tinputOptions.set(element.guid, element.nome);\r\n\t\t});\r\n\r\n\t\tSwal.fire({\r\n\t\t\ttitle: \"Enviar para aprovação\",\r\n\t\t\ttext: \"Selecione seu Perfil de envio para aprovação\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Enviar\",\r\n\t\t\tcancelButtonText: \"Cancelar\",\r\n\t\t\tinput: \"select\",\r\n\t\t\tinputOptions,\r\n\t\t}).then((res) => {\r\n\t\t\tif (res.isConfirmed) {\r\n\t\t\t\tthis.model.situacaoId = 2;\r\n\t\t\t\tthis.peaService\r\n\t\t\t\t\t.enviarAprovacao(this.id, res.value.toString())\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\t\tthis.exibirMensagemSucesso(\r\n\t\t\t\t\t\t\t\t\"Encaminhado para aprovação!\"\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tthis.router.navigate([`/pendencias`]);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch((err) => {\r\n\t\t\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.finally(() => {\r\n\t\t\t\t\t\tthis.obterDados();\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic async exibirModalPeriodo() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.periodoService.obter(\"\", true);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tres.dados.sort(\r\n\t\t\t\t\t(d2, d1) =>\r\n\t\t\t\t\t\tnew Date(d1.dataInicio).getTime() -\r\n\t\t\t\t\t\tnew Date(d2.dataInicio).getTime()\r\n\t\t\t\t);\r\n\t\t\t\tconst modal = this.exibirModal(\"Selecionar Periodo\", res.dados);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\t\tthis.modelDadosBasicos.periodo = data;\r\n\t\t\t\t\t\tthis.modelDadosBasicos.periodoId = data.id;\r\n\t\t\t\t\t\tthis.form.controls[\"periodoId\"].setValue(data.id);\r\n\r\n\t\t\t\t\t\t// if (!this.novoRegistro) {\r\n\t\t\t\t\t\t// this.salvarDados(false);\r\n\t\t\t\t\t\t// this.obterDadosBasicos();\r\n\t\t\t\t\t\t// }\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async exibirModalIndicador() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.indicadorService.obter(\"\", true);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tres.dados.sort((a, b) => a[\"nome\"].localeCompare(b[\"nome\"]));\r\n\t\t\t\tconst modal = this.exibirModal(\r\n\t\t\t\t\t\"Selecionar Indicador\",\r\n\t\t\t\t\tres.dados\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\t\tthis.modelDadosBasicos.indicador = data;\r\n\t\t\t\t\t\tthis.modelDadosBasicos.indicadorId = data.id;\r\n\t\t\t\t\t\tthis.form.controls[\"indicadorId\"].setValue(data.id);\r\n\t\t\t\t\t\t// if (!this.novoRegistro) {\r\n\t\t\t\t\t\t// this.salvarDados(false);\r\n\t\t\t\t\t\t// this.obterDados();\r\n\t\t\t\t\t\t// }\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async exibirModalUg() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.ugService.obterAtivos();\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\t\tdialogConfig.width = \"650px\";\r\n\t\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\tconst unidadesAdicionadas = [] as IUnidadeGestoraModel[];\r\n\t\t\t\tif (this.modelDadosBasicos.peaUnidadeGestora !== undefined) {\r\n\t\t\t\t\tthis.modelDadosBasicos.peaUnidadeGestora.forEach((d) =>\r\n\t\t\t\t\t\tunidadesAdicionadas.push(d.unidadeGestora)\r\n\t\t\t\t\t);\r\n\t\t\t\t\tdialogConfig.data = res.dados.filter(\r\n\t\t\t\t\t\t(d) => !unidadesAdicionadas.some((x) => d.id === x.id)\r\n\t\t\t\t\t);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tdialogConfig.data = res.dados;\r\n\t\t\t\t\tthis.modelDadosBasicos.peaUnidadeGestora =\r\n\t\t\t\t\t\t[] as IPeaUnidadeGestoraModel[];\r\n\t\t\t\t}\r\n\t\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t\t\tModalSelecionarUgComponent,\r\n\t\t\t\t\tdialogConfig\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\t\tif (Array.isArray(data)) {\r\n\t\t\t\t\t\t\tlet unidadeSelecionada =\r\n\t\t\t\t\t\t\t\t[] as IPeaUnidadeGestoraModel[];\r\n\t\t\t\t\t\t\tunidadeSelecionada = data.map(\r\n\t\t\t\t\t\t\t\t(d) =>\r\n\t\t\t\t\t\t\t\t\t({\r\n\t\t\t\t\t\t\t\t\t\tunidadeGestoraId: d.id,\r\n\t\t\t\t\t\t\t\t\t\tunidadeGestora: d,\r\n\t\t\t\t\t\t\t\t\t} as IPeaUnidadeGestoraModel)\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tunidadeSelecionada.forEach((x) =>\r\n\t\t\t\t\t\t\t\tthis.modelDadosBasicos.peaUnidadeGestora.push(x)\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tthis.atualizarListaUgs(\r\n\t\t\t\t\t\t\tthis.modelDadosBasicos.peaUnidadeGestora\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async exibirModalCoordenacoes() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.coordenacaoService.obter(\"\", true);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\t\tdialogConfig.width = \"650px\";\r\n\t\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\tconst coordenacoesAdicionadas = [] as ICoordenacaoModel[];\r\n\t\t\t\tif (this.modelDadosBasicos.peaCoordenacao !== undefined) {\r\n\t\t\t\t\tthis.modelDadosBasicos.peaCoordenacao.forEach((d) =>\r\n\t\t\t\t\t\tcoordenacoesAdicionadas.push(d.coordenacao)\r\n\t\t\t\t\t);\r\n\t\t\t\t\tdialogConfig.data = res.dados.filter(\r\n\t\t\t\t\t\t(d) =>\r\n\t\t\t\t\t\t\t!coordenacoesAdicionadas.some((x) => d.id === x.id)\r\n\t\t\t\t\t);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tdialogConfig.data = res.dados;\r\n\t\t\t\t\tthis.modelDadosBasicos.peaCoordenacao =\r\n\t\t\t\t\t\t[] as IPeaCoordenacaoModel[];\r\n\t\t\t\t}\r\n\t\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t\t\tModalSelecionarCoordenacoesComponent,\r\n\t\t\t\t\tdialogConfig\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\t\tif (Array.isArray(data)) {\r\n\t\t\t\t\t\t\tlet coordenacaoSelecionada =\r\n\t\t\t\t\t\t\t\t[] as IPeaCoordenacaoModel[];\r\n\t\t\t\t\t\t\tcoordenacaoSelecionada = data.map(\r\n\t\t\t\t\t\t\t\t(d) =>\r\n\t\t\t\t\t\t\t\t\t({\r\n\t\t\t\t\t\t\t\t\t\tcoordenacaoId: d.id,\r\n\t\t\t\t\t\t\t\t\t\tcoordenacao: d,\r\n\t\t\t\t\t\t\t\t\t} as IPeaCoordenacaoModel)\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tcoordenacaoSelecionada.forEach((x) =>\r\n\t\t\t\t\t\t\t\tthis.modelDadosBasicos.peaCoordenacao.push(x)\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tthis.coordenacoesDataSource =\r\n\t\t\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\t\t\tthis.modelDadosBasicos.peaCoordenacao\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\tthis.coordenacoesDataSource._updateChangeSubscription();\r\n\t\t\t\t\t\tthis.coordenacaoSemDados =\r\n\t\t\t\t\t\t\tthis.coordenacoesDataSource.filteredData.length ===\r\n\t\t\t\t\t\t\t0;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic avancar() {\r\n\t\tthis.form.markAllAsTouched();\r\n\r\n\t\tlet invalid = false;\r\n\r\n\t\tif (this.form.invalid) {\r\n\t\t\tthis.exibirMensagemErro(\"Formulário inválido\");\r\n\t\t\tinvalid = true;\r\n\t\t}\r\n\t\tif (\r\n\t\t\t!this.model.peaCoordenacao ||\r\n\t\t\tthis.model.peaCoordenacao.length === 0\r\n\t\t) {\r\n\t\t\tthis.exibirMensagemErro(\r\n\t\t\t\t\"É obrigatório a seleção de pelo menos uma Coordenação!\"\r\n\t\t\t);\r\n\t\t\tinvalid = true;\r\n\t\t}\r\n\r\n\t\tif (\r\n\t\t\t!this.model.peaUnidadeGestora ||\r\n\t\t\tthis.model.peaUnidadeGestora.length === 0\r\n\t\t) {\r\n\t\t\tthis.exibirMensagemAlerta(\r\n\t\t\t\t\"É obrigatório a seleção de pelo menos uma Unidade Gestora!\"\r\n\t\t\t);\r\n\t\t\tinvalid = true;\r\n\t\t}\r\n\r\n\t\tif (invalid) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.aba++;\r\n\t}\r\n\r\n\tpublic voltar() {\r\n\t\tthis.aba--;\r\n\t}\r\n\r\n\tpublic validar(): boolean {\r\n\t\treturn this.form.valid;\r\n\t}\r\n\r\n\tpublic excluirUg(ind: number) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: \"Excluir Unidade Gestora\",\r\n\t\t\ttext: \"Deseja realmente excluir a informação?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then((resConfirm) => {\r\n\t\t\tif (resConfirm.isConfirmed) {\r\n\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\tthis.ugDataSource.data.splice(ind, 1);\r\n\t\t\t\tthis.atualizarListaUgs(this.ugDataSource.data);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic excluirCoordenacao(ind: number) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: \"Excluir Coordenação\",\r\n\t\t\ttext: \"Deseja realmente excluir a informação?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then((resConfirm) => {\r\n\t\t\tif (resConfirm.isConfirmed) {\r\n\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\tthis.coordenacoesDataSource.data.splice(ind, 1);\r\n\t\t\t\tthis.coordenacoesDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.coordenacaoSemDados =\r\n\t\t\t\t\tthis.coordenacoesDataSource.filteredData.length === 0;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t//0- Dados Básicos | 1-CargasCriterios | 2-Capacidade | 3-Ranking | 4-Distribuicao | 5-Relatoria | 6-LinhaDoTempo\r\n\tpublic async mudarAba(ind: number) {\r\n\t\tif (this.novoRegistro) {\r\n\t\t\tthis.exibirMensagemErro(\r\n\t\t\t\t\"Necessário salvar os dados antes de mudar de aba.\"\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.aba = ind;\r\n\r\n\t\tswitch (ind) {\r\n\t\t\tcase 0:\r\n\t\t\t\tthis.obterDadosBasicos();\r\n\t\t\t\tbreak;\r\n\t\t\tcase 1:\r\n\t\t\t\tthis.obterAbaCargaCriterios();\r\n\t\t\t\tbreak;\r\n\t\t\tcase 2:\r\n\t\t\t\tthis.obterAbaCapacidadeTrabalho();\r\n\t\t\t\tbreak;\r\n\t\t\tcase 3:\r\n\t\t\t\tthis.obterAbaRanking();\r\n\t\t\t\tbreak;\r\n\t\t\tcase 4:\r\n\t\t\t\tawait this.obterAbaDistribuicao();\r\n\t\t\t\tbreak;\r\n\t\t\tcase 5:\r\n\t\t\t\tthis.obterDados();\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tconsole.warn(\"Aba não implementada\");\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic importarArquivoCriterio(id: number) {\r\n\t\ttry {\r\n\t\t\tconst respostas = this.ugDataSource.data.map(\r\n\t\t\t\t(u) =>\r\n\t\t\t\t\t({\r\n\t\t\t\t\t\tpeaId: this.id,\r\n\t\t\t\t\t\tcriterioId: id,\r\n\t\t\t\t\t\tunidadeGestoraId: u.unidadeGestoraId,\r\n\t\t\t\t\t\tunidadeGestora: u.unidadeGestora,\r\n\t\t\t\t\t} as IPeaCriterioRespostaModel)\r\n\t\t\t);\r\n\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\tdialogConfig.width = \"700px\";\r\n\t\t\tdialogConfig.maxHeight = \"700px\";\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.data = respostas;\r\n\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t\tModalImportarArquivoCriterioComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t);\r\n\t\t\tmodal.afterClosed().subscribe(async (data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\t\t\t\tconst res =\r\n\t\t\t\t\t\t\t\tawait this.peaService.enviarRespostasCriterio(\r\n\t\t\t\t\t\t\t\t\tthis.id,\r\n\t\t\t\t\t\t\t\t\trespostas.map((c) => ({\r\n\t\t\t\t\t\t\t\t\t\tpeaId: c.peaId,\r\n\t\t\t\t\t\t\t\t\t\tcriterioId: c.criterioId,\r\n\t\t\t\t\t\t\t\t\t\tunidadeGestoraId: c.unidadeGestoraId,\r\n\t\t\t\t\t\t\t\t\t\tvalorNumerico: c.valorNumerico,\r\n\t\t\t\t\t\t\t\t\t}))\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\t\t\tawait Promise.all([\r\n\t\t\t\t\t\t\t\t\tthis.obterDados(),\r\n\t\t\t\t\t\t\t\t\tthis.obterPainelDistribuicao(this.id),\r\n\t\t\t\t\t\t\t\t\tthis.peaService\r\n\t\t\t\t\t\t\t\t\t\t.obterCargaCriteriosPorId(this.id)\r\n\t\t\t\t\t\t\t\t\t\t.then((resCriterios) => {\r\n\t\t\t\t\t\t\t\t\t\t\tthis.criterioDataSource =\r\n\t\t\t\t\t\t\t\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tresCriterios.dados\r\n\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\tthis.criterioDataSource._updateChangeSubscription();\r\n\t\t\t\t\t\t\t\t\t\t\tthis.criterioSemDados =\r\n\t\t\t\t\t\t\t\t\t\t\t\tthis.criterioDataSource\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t.filteredData.length === 0;\r\n\t\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t]);\r\n\t\t\t\t\t\t\t\tthis.exibirMensagemSucesso(\r\n\t\t\t\t\t\t\t\t\tres.mensagem.descricao\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tthis.exibirMensagemAlerta(\r\n\t\t\t\t\t\t\t\t\tres.mensagem.descricao\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} catch (err) {\r\n\t\t\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t\t\t\tthis.router.navigate([\"/pea\"]);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic preencherFormularioCriterio(id: number) {\r\n\t\ttry {\r\n\t\t\tconst criterio = this.criterioDataSource.data.find(\r\n\t\t\t\t(c) => c.criterioId === id\r\n\t\t\t);\r\n\t\t\tcriterio.peaCriterioResposta = criterio.peaCriterioResposta || [];\r\n\r\n\t\t\tlet respostas = this.ugDataSource.data.map((u) => {\r\n\t\t\t\treturn (\r\n\t\t\t\t\tcriterio.peaCriterioResposta.find(\r\n\t\t\t\t\t\t(r) => r.unidadeGestoraId === u.unidadeGestoraId\r\n\t\t\t\t\t) ||\r\n\t\t\t\t\t({\r\n\t\t\t\t\t\tpeaId: this.id,\r\n\t\t\t\t\t\tcriterioId: id,\r\n\t\t\t\t\t\tcriterio: criterio.criterio,\r\n\t\t\t\t\t\tunidadeGestoraId: u.unidadeGestoraId,\r\n\t\t\t\t\t\tunidadeGestora: u.unidadeGestora,\r\n\t\t\t\t\t} as IPeaCriterioRespostaModel)\r\n\t\t\t\t);\r\n\t\t\t});\r\n\r\n\t\t\trespostas = respostas.sort((a, b) => {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t+(a.unidadeGestora.nome > b.unidadeGestora.nome) ||\r\n\t\t\t\t\t+(a.unidadeGestora.nome === b.unidadeGestora.nome) - 1\r\n\t\t\t\t);\r\n\t\t\t});\r\n\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\tdialogConfig.width = \"700px\";\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.ariaLabel = criterio.criterio.nome;\r\n\t\t\tdialogConfig.data = respostas.sort((a, b) =>\r\n\t\t\t\ta[\"unidadeGestora\"].nome.localeCompare(b[\"unidadeGestora\"].nome)\r\n\t\t\t);\r\n\r\n\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t\tModalPreencherFormularioComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t);\r\n\t\t\tmodal.afterClosed().subscribe(async (data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\t\t\t\tconst res =\r\n\t\t\t\t\t\t\t\tawait this.peaService.enviarRespostasCriterio(\r\n\t\t\t\t\t\t\t\t\tthis.id,\r\n\t\t\t\t\t\t\t\t\trespostas.map((c) => ({\r\n\t\t\t\t\t\t\t\t\t\tpeaId: c.peaId,\r\n\t\t\t\t\t\t\t\t\t\tcriterioId: c.criterioId,\r\n\t\t\t\t\t\t\t\t\t\tunidadeGestoraId: c.unidadeGestoraId,\r\n\t\t\t\t\t\t\t\t\t\tvalorNumerico: c.valorNumerico,\r\n\t\t\t\t\t\t\t\t\t}))\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\t\t\tawait Promise.all([\r\n\t\t\t\t\t\t\t\t\tthis.obterDados(),\r\n\t\t\t\t\t\t\t\t\tthis.obterPainelDistribuicao(this.id),\r\n\t\t\t\t\t\t\t\t\tthis.peaService\r\n\t\t\t\t\t\t\t\t\t\t.obterCargaCriteriosPorId(this.id)\r\n\t\t\t\t\t\t\t\t\t\t.then((resCriterios) => {\r\n\t\t\t\t\t\t\t\t\t\t\tthis.criterioDataSource =\r\n\t\t\t\t\t\t\t\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tresCriterios.dados\r\n\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\tthis.criterioDataSource._updateChangeSubscription();\r\n\t\t\t\t\t\t\t\t\t\t\tthis.criterioSemDados =\r\n\t\t\t\t\t\t\t\t\t\t\t\tthis.criterioDataSource\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t.filteredData.length === 0;\r\n\t\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t]);\r\n\t\t\t\t\t\t\t\tthis.exibirMensagemSucesso(\r\n\t\t\t\t\t\t\t\t\tres.mensagem.descricao\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t\t\t\t\tthis.router.navigate([\"/pea\"]);\r\n\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} catch (err) {\r\n\t\t\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t\t\t\tthis.router.navigate([\"/pea\"]);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic exibirRespostas(id: number) {\r\n\t\tconst respostas =\r\n\t\t\t(this.criterioDataSource.data.find((c) => c.criterioId === id)\r\n\t\t\t\t.peaCriterioResposta as []) || [];\r\n\t\tconst questionario =\r\n\t\t\t(this.criterioDataSource.data.find((c) => c.criterioId === id)\r\n\t\t\t\t.peaCriterioQuestionario as []) || [];\r\n\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component\";\r\n\t\tdialogConfig.width = \"700px\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = respostas\r\n\t\t\t.concat(questionario)\r\n\t\t\t.sort((a: ICargaCriterioPeaModel, b: ICargaCriterioPeaModel) =>\r\n\t\t\t\ta[\"unidadeGestora\"].nome.localeCompare(b[\"unidadeGestora\"].nome)\r\n\t\t\t);\r\n\t\tthis.matDialog.open(ModalVisualizarRespostasComponent, dialogConfig);\r\n\t}\r\n\r\n\tpublic formatarNumero(n: number) {\r\n\t\treturn n?.toFixed(4).toString().replace(\".\", \",\");\r\n\t}\r\n\r\n\tpublic async enviarQuestionario(\r\n\t\tmodelEnviarQuestionario: IEnviarQuestionarioModel\r\n\t) {\r\n\t\ttry {\r\n\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\tconst res = await this.peaService.enviarQuestionarios(\r\n\t\t\t\t\tthis.id,\r\n\t\t\t\t\tmodelEnviarQuestionario\r\n\t\t\t\t);\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.exibirMensagemSucesso(res.mensagem.descricao);\r\n\t\t\t\t\tthis.obterCargaCriterios();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async aprovar() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.peaService.aprovar(this.id);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tthis.exibirMensagemSucesso(\"Item aprovado com sucesso!\");\r\n\t\t\t\tthis.router.navigate([\"/pendencias\"]);\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async exibirModalEnviarQuestionarioCriterio() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component\";\r\n\t\tdialogConfig.width = \"650px\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalEnviarQuestionarioCriterioComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tthis.enviarQuestionario(data);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic async exibirModalVisualizarQuestionarioCriterio() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component\";\r\n\t\tdialogConfig.width = \"850px\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tconst res = await this.peaService.obterVisualizacaoQuestionario(\r\n\t\t\tthis.id\r\n\t\t);\r\n\t\tdialogConfig.data = res;\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalVisualizarQuestionarioCriterioComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\t}\r\n\r\n\tpublic async confirmarCancelamento() {\r\n\t\tconst res = await this.peaService.questionariosRespondidos(this.id);\r\n\t\tif (res.sucesso) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttitle: \"Cancelar Questionário\",\r\n\t\t\t\ttext: \"Deseja cancelar o envio dos questionarios?\",\r\n\t\t\t\ticon: \"warning\",\r\n\t\t\t\tshowCancelButton: true,\r\n\t\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\t\tcancelButtonText: \"Não\",\r\n\t\t\t}).then((resConfirm) => {\r\n\t\t\t\tif (resConfirm.isConfirmed) {\r\n\t\t\t\t\tthis.cancelarEnvioQuestionario();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} else if (res.mensagem.nome === \"QuestionarioRespondido\") {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttitle: \"Cancelar Questionário\",\r\n\t\t\t\ttext: `${res.mensagem?.descricao}. Deseja cancelar o envio mesmo assim?`,\r\n\t\t\t\ticon: \"warning\",\r\n\t\t\t\tshowCancelButton: true,\r\n\t\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\t\tcancelButtonText: \"Não\",\r\n\t\t\t}).then((resConfirm) => {\r\n\t\t\t\tif (resConfirm.isConfirmed) {\r\n\t\t\t\t\tthis.cancelarEnvioQuestionario();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async cancelarEnvioQuestionario() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.peaService.enviarQuestionarioCancelado(\r\n\t\t\t\tthis.id\r\n\t\t\t);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tthis.exibirMensagemSucesso(\"Envio cancelado\");\r\n\t\t\t\tthis.obterCargaCriterios();\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic obterRankingPrioridade() {\r\n\t\tthis.rankingService\r\n\t\t\t.obterRankingDistribuicao(this.id, this.model.indicadorId, 1)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tconst lista = res.dados\r\n\t\t\t\t\t.filter((_) => !_.unidadeGestora.empresaPublica)\r\n\t\t\t\t\t.map((_) => ({\r\n\t\t\t\t\t\t..._,\r\n\t\t\t\t\t\tnome: _.unidadeGestora.nome,\r\n\t\t\t\t\t\tsigla: _.unidadeGestora.sigla,\r\n\t\t\t\t\t\tcodigoUg: _.unidadeGestora.codigoUg,\r\n\t\t\t\t\t}));\r\n\t\t\t\tthis.rankingPrioridadeDataSource =\r\n\t\t\t\t\tnew MatTableDataSource(lista);\r\n\t\t\t\tthis.rankingPrioridadeDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.semDadosRanking =\r\n\t\t\t\t\tthis.rankingPrioridadeDataSource.data.length === 0;\r\n\r\n\t\t\t\tconst listaPublicas = res.dados\r\n\t\t\t\t\t.filter((_) => _.unidadeGestora.empresaPublica)\r\n\t\t\t\t\t.map((_) => ({\r\n\t\t\t\t\t\t..._,\r\n\t\t\t\t\t\tnome: _.unidadeGestora.nome,\r\n\t\t\t\t\t\tsigla: _.unidadeGestora.sigla,\r\n\t\t\t\t\t\tcodigoUg: _.unidadeGestora.codigoUg,\r\n\t\t\t\t\t}));\r\n\t\t\t\tthis.rankingPrioridadeEmpresasPublicasDataSource =\r\n\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\tlistaPublicas\r\n\t\t\t\t\t);\r\n\t\t\t\tthis.rankingPrioridadeEmpresasPublicasDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.semDadosRankingEmpresaPublica =\r\n\t\t\t\t\tthis.rankingPrioridadeEmpresasPublicasDataSource.data\r\n\t\t\t\t\t\t.length === 0;\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic gerarRankingDistribuicao() {\r\n\t\tthis.rankingService\r\n\t\t\t.gerarRankingDistribuicao(this.id, 1)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.showPendencias(res?.dados?.pendencias);\r\n\t\t\t\tthis.obterDados();\r\n\t\t\t\tthis.obterRankingPrioridade();\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic async removerClassificacaoPersonalizada() {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: \"Confirmação\",\r\n\t\t\ttext: \"Deseja realmente remover a classificação personalizada?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t}).then((res) => {\r\n\t\t\tif (res.isConfirmed) {\r\n\t\t\t\tthis.peaService\r\n\t\t\t\t\t.removerClassificacaoPersonalizada(this.model.id)\r\n\t\t\t\t\t.then((response) => {\r\n\t\t\t\t\t\tif (response.sucesso) {\r\n\t\t\t\t\t\t\tthis.exibirMensagemSucesso(\r\n\t\t\t\t\t\t\t\t\"Classificação personalizada removida com sucesso.\"\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tthis.distribuicaoPersonalizadoDataSource =\r\n\t\t\t\t\t\t\t\tnew MatTableDataSource([]);\r\n\t\t\t\t\t\t\tthis.distribuicaoPersonalizadoDataSource._updateChangeSubscription();\r\n\t\t\t\t\t\t\tthis.model.classificacaoPersonalizada = false;\r\n\t\t\t\t\t\t\tthis.distribuicaoSemDadosPersonalizado = true;\r\n\t\t\t\t\t\t\tthis.obterAbaDistribuicao();\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.exibirMensagemAlerta(\r\n\t\t\t\t\t\t\t\tresponse.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tfalse\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
    \r\n\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t Página Inicial\r\n\t\t\t\t\t
  2. \r\n\t\t\t\t\t
  3. \r\n\t\t\t\t\t\tPEAC - Plano Estratégico de Auditoria e Controles \r\n\t\t\t\t\t
  4. \r\n\t\t\t\t\t
  5. {{ titulo }}
  6. \r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{ titulo }}\r\n\t\t\t\t\t\t

\r\n\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tDados\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tCarga dos Critérios\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tCapacidade de Trabalho\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tRanking de Prioridade\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tDistribuição\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tRelatoria\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\tLinha do Tempo\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tUnidade(s) Gestora(s)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ element.nome }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAdicionar\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tNenhuma Unidade Gestora\r\n\t\t\t\t\t\t\t\t\t\t\t\tselecionada\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tCoordenação(ões)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.coordenacao\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.sigla\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t-\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.coordenacao\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.nome\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAdicionar\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tNenhuma Coordenação selecionada\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tCritério\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.criterio\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.nome\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tTipo de Entrada\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.criterio\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.tipoEntrada\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.descricao\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAções a serem tomadas\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tImportar Arquivo\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tPreencher\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tFormulário\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.questionariosEnviados\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? \"Enviado\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"Pendente de Envio\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tRespostas\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(click)=\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\texibirRespostas(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.criterioId\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstyle=\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcursor: pointer;\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tNenhuma Carga de Critérios a\r\n\t\t\t\t\t\t\t\t\t\t\t\texibir\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tCoordenação\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.coordenacaoNome\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tDias Disponíveis\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.diasDisponiveis\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tNº Equipes Disponíveis\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.equipesDisponiveis\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tQuant. Dias
por\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAuditoria\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.diasPorAuditoria\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tNº Auditorias
por\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tEquipe\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.auditoriasPorEquipe\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tCapacidade Total\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
por Coordenação\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.capacidadeTotalCoordenacao\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAno:\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ groupBy.ano }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tCapacidade de\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tTrabalho Total no\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAno:\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tgroupBy.capacidadeTotalAno\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tSem capacidade de trabalho\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tClassificação Personalizada\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tRemover classificação\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tpersonalizada\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{{ pisoBaixo }}\r\n\t\t\t\t\t\t\t\t\t\t\ta\r\n\t\t\t\t\t\t\t\t\t\t\t{{ tetoBaixo }}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{{ pisoMedio }}\r\n\t\t\t\t\t\t\t\t\t\t\ta\r\n\t\t\t\t\t\t\t\t\t\t\t{{ tetoMedio }}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{{ pisoAlto }}\r\n\t\t\t\t\t\t\t\t\t\t\ta\r\n\t\t\t\t\t\t\t\t\t\t\t{{ tetoAlto }}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t\tPadrão\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
({{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement[\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"_indice\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}})\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tNenhuma Unidade Gestora\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontemplada\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
({{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement[\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"_indice\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}})\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tNenhuma Unidade Gestora não\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontemplada\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t\tPersonalizada\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
({{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement[\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"_indice\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}})\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tNenhuma Unidade Gestora\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontemplada\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
({{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement[\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"_indice\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}})\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tNenhuma Unidade Gestora não\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontemplada\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tObrigatórias\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tEmpresas Públicas\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\tLegenda:\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tRisco Alto\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tRisco Médio\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tRisco Baixo\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Fechar\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tQuestionário\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tToggle Dropdown\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tEnviar Questionário\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tVisualizar\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tCancelar Envio\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Aprovar\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Enviar para\r\n\t\t\t\t\t\t\t\tAprovação\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Fechar\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n","import { DebugElement, OnInit } from '@angular/core';\r\nimport { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { PeaService } from 'src/app/services/pea.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { IPaaModel } from 'src/app/models/paa.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport Swal from 'sweetalert2';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\n\r\n\r\n@Component({\r\n selector: 'app-pea-list',\r\n templateUrl: './pea-list.component.html',\r\n styleUrls: ['./pea-list.component.scss'],\r\n})\r\n\r\n\r\nexport class PeaListComponent extends BaseListComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModelYears: Array;\r\n public enableSelectYear = false;\r\n public selectedYear: number;\r\n\r\n public displayedColumns: string[] = ['selecao', 'nome', 'periodo', 'indicador', 'situacao', 'status'];\r\n\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public filtro = {} as FiltroModel;\r\n\r\n public totalItens: number;\r\n public searchPesquisa: string;\r\n public pageEvent: any;\r\n\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private peaService: PeaService,\r\n private router: Router,\r\n public authService: AuthService,\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.configurarFiltro();\r\n this.buscar();\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPEA, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPEA, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPEA, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPEA, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPEA, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPEA, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.gerarPAA = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPEA, EnumAcaoRecurso.GerarPAA);\r\n this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.ManterPEA, EnumAcaoRecurso.Imprimir);\r\n }\r\n\r\n public novo() {\r\n if (!this.permissoes.incluir) {\r\n this.exibirMensagemErro(\"Você não possui permissão para incluir um PEAC.\");\r\n return;\r\n } \r\n this.router.navigate(['/pea/novo']);\r\n }\r\n\r\n public atualizarFiltroStatus(valor) {\r\n this.filtro = {} as FiltroModel;\r\n this.searchAtivo = valor;\r\n this.buscar();\r\n }\r\n public buscar() {\r\n this.filtro.pesquisa = this.searchNome;\r\n this.peaService\r\n .obter(this.searchNome, this.searchAtivo, false, this.filtro)\r\n .then((res) => {\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n this.configurarFiltro();\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err?.mensagem?.descricao ?? \"Ocorreu um erro inesperado. Tente novamente mais tarde.\",\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n private configurarFiltro() {\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchNome;\r\n this.filtro.direcao = this.sort.direction;\r\n this.filtro.colunaOrder = this.sort.active;\r\n }\r\n\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n}\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n\r\n public reativar() {\r\n let id = this.modelsSelected()[0].id;\r\n if (!this.permissoes.inativarReativar) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Você não tem permissão para reativar PEAC.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n\r\n this.peaService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'PEAC reativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n text: err.mensagem.descricao,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar() {\r\n let id = this.modelsSelected()[0].id;\r\n if (!this.permissoes.inativarReativar) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: 'Você não tem permissão para inativar PEAC.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n\r\n this.peaService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'PEAC inativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar() {\r\n let id = this.modelsSelected()[0].id;\r\n if (!this.permissoes?.editar) {\r\n Swal.fire({\r\n icon: 'error',\r\n title: 'Erro',\r\n text: 'Você não tem permissão para editar PEAC.',\r\n });\r\n return;\r\n }\r\n this.router.navigate([`/pea/${id}`]);\r\n }\r\n\r\n public modelsSelected(): Array{\r\n let retorno = this.dataSource.data.filter(x => x.selecionado === true);\r\n this.enableSelectYear = retorno.length == 1;\r\n return retorno;\r\n }\r\n\r\n public selecionar(item: any) { \r\n item.selecionado = !item.selecionado;\r\n\r\n this.consultarAnos();\r\n }\r\n\r\n public excluir() {\r\n let id = this.modelsSelected()[0].id;\r\n if (!this.permissoes?.excluir) {\r\n Swal.fire({\r\n icon: 'error',\r\n title: 'Erro',\r\n text: 'Você não tem permissão para excluir PEAC.',\r\n });\r\n return;\r\n }\r\n\r\n this.peaService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'PEAC excluído com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n title: 'Atenção',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n title: 'Erro',\r\n showConfirmButton: false,\r\n timer: 5000\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public consultarAnos() {\r\n \r\n if (\r\n this.modelsSelected().length == 1 &&\r\n this.modelsSelected()[0] &&\r\n this.modelsSelected()[0].situacao &&\r\n this.modelsSelected()[0].situacao.descricao === 'Homologado'\r\n ) {\r\n this.peaService\r\n .obterAnosPaa(this.modelsSelected()[0].id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.selectedModelYears = res.dados;\r\n this.enableSelectYear = true;\r\n } else {\r\n this.enableSelectYear = false;\r\n }\r\n\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n text: err.mensagem.descricao,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.enableSelectYear = false;\r\n })\r\n }else{\r\n this.enableSelectYear = false;\r\n }\r\n }\r\n\r\n public relatorioSimplificado() {\r\n let ids = [] as any[];\r\n let id = this.modelsSelected()[0].id;\r\n ids.push(id);\r\n this.router.navigate([`/pea/${ids}/relatorio-consolidado`]);\r\n }\r\n\r\n public relatorioConsolidado() {\r\n const ids = this.modelsSelected().map(pea => pea.id);\r\n this.router.navigate([`/pea/${ids}/relatorio-consolidado`]);\r\n }\r\n\r\n public enviarParaAprovacao(id: number) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Recurso não disponível',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n\r\n public itemAgrupador(index: number, item: any): boolean {\r\n return item.grupo;\r\n }\r\n\r\n public botaoImpessaoIndividualHidden(): boolean {\r\n return !this.permissoes.imprimir || this.modelsSelected().length != 1;\r\n }\r\n\r\n public botaoImpressaoColetivaHidden(): boolean {\r\n return !this.permissoes.imprimir || this.modelsSelected().length <= 1;\r\n }\r\n\r\n \r\n public botaoEditarHidden(): boolean {\r\n return !this.permissoes.editar\r\n || this.modelsSelected().length != 1 \r\n || this.modelsSelected()[0].situacao.nome === 'EmAprovacao'\r\n || this.modelsSelected()[0].situacao.nome === 'Homologado'\r\n || !this.modelsSelected()[0].ativo;\r\n }\r\n\r\n public botaoReativarHidden() : boolean {\r\n return !this.permissoes.inativarReativar\r\n || this.modelsSelected().length != 1 \r\n || this.modelsSelected()[0].ativo\r\n || this.modelsSelected()[0].situacao.nome === 'EmAnalise'\r\n || this.modelsSelected()[0].situacao.nome === 'Homologado';\r\n }\r\n\r\n public botaoInativarHidden() : boolean {\r\n return !this.permissoes.inativarReativar\r\n || this.modelsSelected().length != 1 \r\n || this.modelsSelected()[0].situacao.nome === 'EmAnalise'\r\n || this.modelsSelected()[0].situacao.nome === 'EmAprovacao'\r\n || this.modelsSelected()[0].situacao.nome === 'Homologado'\r\n || !this.modelsSelected()[0].ativo;\r\n }\r\n\r\n public botaoExcluirHidden() : boolean {\r\n return !this.permissoes.excluir\r\n || this.modelsSelected().length != 1 \r\n || this.modelsSelected()[0].situacao.nome === 'Homologado'\r\n || this.modelsSelected()[0].situacao.nome === 'EmAprovacao';\r\n }\r\n\r\n public botaoVisualizarHidden() : boolean {\r\n return !this.permissoes.visualizar\r\n || this.modelsSelected().length != 1;\r\n }\r\n\r\n public botaoGerarPAAHidden() : boolean {\r\n return !this.permissoes.gerarPAA\r\n || this.modelsSelected().length != 1 \r\n || !this.enableSelectYear \r\n || !(this.modelsSelected()[0].situacao.nome === 'Homologado');\r\n }\r\n\r\n public selectAnoHidden() : boolean {\r\n return !this.permissoes.gerarPAA\r\n || this.modelsSelected().length != 1 \r\n || !this.enableSelectYear \r\n || !(this.modelsSelected()[0].situacao.nome === 'Homologado');\r\n }\r\n\r\n public async gerarPaa() {\r\n \r\n let id = this.modelsSelected()[0].id;\r\n if (this.permissoes.gerarPAA) {\r\n if (this.selectedYear) {\r\n const paa: IPaaModel = {} as IPaaModel;\r\n paa.ativo = true;\r\n paa.ano = this.selectedYear;\r\n paa.peaId = id;\r\n\r\n let res = await this.peaService.gerarPaa(id, paa);\r\n \r\n \r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.consultarAnos();\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n\r\n } else {\r\n this.exibirMensagemErro('Selecione um ano válido');\r\n }\r\n } else {\r\n this.exibirMensagemErro('Usuário não tem permissão para gerar PAAC.');\r\n return;\r\n }\r\n }\r\n \r\n public visualizar() {\r\n let id = this.modelsSelected()[0].id;\r\n if (!this.permissoes?.visualizar) {\r\n Swal.fire({\r\n icon: 'error',\r\n title: 'Erro',\r\n text: 'Você não tem permissão para editar PEAC.',\r\n });\r\n return;\r\n }\r\n this.router.navigate([`/pea/${id}/visualizar`]);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. PEAC - Plano Estratégico\r\n de Auditoria e Controles
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n PEAC - Plano\r\n Estratégico de Auditoria e Controles\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nome\r\n \r\n {{element.nome}} \r\n Periodo\r\n \r\n {{element.periodo?.nome}} \r\n Indicador\r\n \r\n {{element.indicador?.nome}} \r\n Status \r\n Ativo\r\n Inativo\r\n \r\n Situação\r\n \r\n Homologado\r\n Em\r\n Aprovação\r\n Em\r\n Elaboração\r\n
Período\r\n {{groupBy.nome}} -\r\n {{groupBy.dataInicio |\r\n date:'dd/MM/yyyy'}} a\r\n {{groupBy.dataFim |\r\n date:'dd/MM/yyyy'}} \r\n
\r\n
Nenhum\r\n registro encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IImprimirPeaModel } from 'src/app/models/imprimir-pea.model';\r\nimport { IPeriodoModel } from 'src/app/models/periodo.model';\r\nimport { AprovacaoService } from 'src/app/services/aprovacao.service';\r\nimport { PeaService } from 'src/app/services/pea.service';\r\n\r\n@Component({\r\n selector: 'app-pea-relatorio',\r\n templateUrl: './pea-relatorio.component.html',\r\n styleUrls: ['./pea-relatorio.component.scss']\r\n})\r\nexport class PeaRelatorioComponent implements OnInit {\r\n\r\n homologado = false;\r\n idParam: number;\r\n consolidado = false;\r\n espelho = false;\r\n dias: number;\r\n sabadoDomingo: number;\r\n pontoFacultativo: number;\r\n feriado: number;\r\n diasUteis: number;\r\n\r\n reportPEAs: IImprimirPeaModel[] = [];\r\n\r\n periodo: IPeriodoModel;\r\n\r\n public columnsRanking = ['codigoUG', 'siglaUG', 'nomeUG', 'valorRisco'];\r\n public columnsCapacidade = [\r\n 'coordenacao',\r\n 'diasDisponiveis',\r\n 'equipesDisponiveis',\r\n 'diasPorAuditoria',\r\n 'auditoriasPorEquipe',\r\n 'capacidadeTotalCoordenacao'\r\n ];\r\n public capacidadeDataSource = new MatTableDataSource([]);\r\n public capacidadeSemDados = true;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private localeService: BsLocaleService,\r\n private peaService: PeaService,\r\n private aprovacaoService: AprovacaoService,) { }\r\n\r\n ngOnInit() {\r\n this.localeService.use('pt-br');\r\n\r\n const id = this.route.snapshot.paramMap.get('id');\r\n const path = this.route.snapshot.url.pop().toString();\r\n\r\n if (id) {\r\n this.idParam = parseInt(id, 10);\r\n }\r\n\r\n if (path === 'relatorio-consolidado') {\r\n this.consolidado = true;\r\n }\r\n\r\n if (path === 'espelho-relatorio-consolidado') {\r\n this.espelho = true;\r\n }\r\n\r\n this.obterDados();\r\n }\r\n\r\n public async obterDados() {\r\n try {\r\n await this.obterDadosPorId();\r\n } catch (err) {\r\n this.toastr.error('Ocorreu um erro inesperado, tente novamente mais tarde.', 'Atenção');\r\n this.router.navigate(['/pea']);\r\n }\r\n }\r\n\r\n public agrupadorCapacidade(index: number, item: any): boolean {\r\n return item.grupo;\r\n }\r\n\r\n public subTotalCapacidade(index: number, item: any): boolean {\r\n return item.subTotal;\r\n }\r\n\r\n public async obterDadosPorId() {\r\n let res: IBaseModel;\r\n\r\n if (this.consolidado) {\r\n const ids = this.route.snapshot.paramMap.get('id') || '';\r\n\r\n res = await this.peaService.imprimirPeaConsolidado(ids);\r\n }\r\n else if (this.espelho) {\r\n const avaliacao = await this.aprovacaoService.imprimir(this.idParam);\r\n if (avaliacao.dados != undefined) {\r\n res = {\r\n sucesso: avaliacao.sucesso,\r\n dados: JSON.parse(avaliacao.dados),\r\n mensagem: avaliacao.mensagem,\r\n resultadoValidacao: avaliacao.resultadoValidacao\r\n } as IBaseModel;\r\n }\r\n else {\r\n res = {\r\n sucesso: avaliacao.sucesso,\r\n dados: avaliacao.dados,\r\n mensagem: avaliacao.mensagem,\r\n resultadoValidacao: avaliacao.resultadoValidacao\r\n } as unknown as IBaseModel;\r\n }\r\n }\r\n else {\r\n const avaliacao = await this.peaService.imprimirPea(this.idParam);\r\n\r\n if(!avaliacao.sucesso){\r\n this.toastr.error(avaliacao.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/pea']);\r\n return null; \r\n }\r\n\r\n res = {\r\n sucesso: avaliacao.sucesso,\r\n dados: JSON.parse(avaliacao.dados),\r\n mensagem: avaliacao.mensagem,\r\n situacao: avaliacao.situacao\r\n } as IBaseModel;\r\n }\r\n\r\n res.dados.forEach(reportPEA => {\r\n reportPEA.capacidadeTrabalho = [];\r\n\r\n let dadosPreparados = [];\r\n const anos = [...new Set(reportPEA.coordenacaoCapacidade.map((d) => d.ano))];\r\n\r\n for (const ano of anos) {\r\n // Header\r\n dadosPreparados.push({\r\n grupo: true,\r\n ano,\r\n });\r\n\r\n // Dados\r\n dadosPreparados = dadosPreparados.concat(\r\n reportPEA.coordenacaoCapacidade.filter((c) => c.ano === ano)\r\n );\r\n\r\n // Footer\r\n dadosPreparados.push({\r\n subTotal: true,\r\n capacidadeTotalAno: reportPEA.coordenacaoCapacidade\r\n .filter((c) => c.ano === ano)\r\n .map((c) => c.capacidadeTotalCoordenacao)\r\n .reduce((sum, record) => sum + record),\r\n });\r\n reportPEA.capacidadeTrabalhoTotal = reportPEA.coordenacaoCapacidade.map(_ => _.capacidadeTotalCoordenacao).reduce((sum, current) => sum + current, 0);\r\n }\r\n\r\n\r\n this.capacidadeDataSource = new MatTableDataSource(\r\n dadosPreparados\r\n );\r\n this.capacidadeDataSource._updateChangeSubscription();\r\n this.capacidadeSemDados =\r\n this.capacidadeDataSource.filteredData.length === 0;\r\n\r\n reportPEA.unidadeGestora = reportPEA.unidadeGestora.sort((a, b) => a?.sigla.localeCompare(b?.sigla))\r\n reportPEA.coordenacao = reportPEA.coordenacao.sort((a, b) => a?.sigla.localeCompare(b?.sigla))\r\n reportPEA.rankingPrioridade = reportPEA.rankingDePrioridade?.filter(_ => !_.unidadeGestora.empresaPublica);\r\n reportPEA.rankingPrioridadeEmpresasPublicas = reportPEA.rankingDePrioridade?.filter(_ => _.unidadeGestora.empresaPublica);\r\n reportPEA.dadosDistribuicaoContempladas = [];\r\n reportPEA.dadosDistribuicaoNaoContempladas = [];\r\n reportPEA.dadosDistribuicaoContempladasPersonalizado = [];\r\n reportPEA.dadosDistribuicaoNaoContempladasPersonalizado = [];\r\n reportPEA.anos = [];\r\n\r\n this.obterValorRiscoPorUg(reportPEA.valorRiscoUnidadeGestoras)\r\n\r\n const anoInicial = new Date(reportPEA.periodo.dataInicio).getFullYear();\r\n const anoFim = new Date(reportPEA.periodo.dataFim).getFullYear();\r\n\r\n for (let i = anoInicial; i <= anoFim; i++) {\r\n reportPEA.anos.push(i);\r\n }\r\n\r\n // Padrao\r\n // Contempladas\r\n\r\n const distribuicaoContemplada = reportPEA.paineisDistribuicao?.painelDistribuicaoPadrao.painel.filter(d => d.contemplada) ?? [];\r\n const distribuicaoNaoContemplada = reportPEA.paineisDistribuicao?.painelDistribuicaoPadrao.painel.filter(d => !d.contemplada) ?? [];\r\n for (const item of distribuicaoContemplada) {\r\n if (reportPEA.dadosDistribuicaoContempladas.length === 0 || reportPEA.dadosDistribuicaoContempladas.findIndex(r => !r[item.ano.toString()]) < 0) {\r\n const row = {};\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[item.ano.toString() + '_class'] = item.blocoPainel.nome;\r\n row[item.ano.toString() + '_indice'] = item.indicePriorizacao.toFixed(4);\r\n reportPEA.dadosDistribuicaoContempladas.push(row);\r\n } else {\r\n const row = reportPEA.dadosDistribuicaoContempladas[reportPEA.dadosDistribuicaoContempladas.findIndex(r => !r[item.ano.toString()])];\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[item.ano.toString() + '_class'] = item.blocoPainel.nome;\r\n row[item.ano.toString() + '_indice'] = item.indicePriorizacao.toFixed(4);\r\n }\r\n }\r\n\r\n // Não Contempladas\r\n for (const item of distribuicaoNaoContemplada) {\r\n if (reportPEA.dadosDistribuicaoNaoContempladas.length === 0 || reportPEA.dadosDistribuicaoNaoContempladas.findIndex(r => !r[item.ano.toString()]) < 0) {\r\n const row = {};\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[item.ano.toString() + '_indice'] = item.indicePriorizacao.toFixed(4);\r\n reportPEA.dadosDistribuicaoNaoContempladas.push(row);\r\n } else {\r\n const row = reportPEA.dadosDistribuicaoNaoContempladas[reportPEA.dadosDistribuicaoNaoContempladas.findIndex(r => !r[item.ano.toString()])];\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[item.ano.toString() + '_indice'] = item.indicePriorizacao.toFixed(4);\r\n }\r\n }\r\n\r\n // Personalizado\r\n // Contempladas\r\n if (reportPEA.classificacaoPersonalizada) {\r\n\r\n const distribuicaoPersonalizadaContemplada = reportPEA.paineisDistribuicao?.painelDistribuicaoPersonalizado?.painel.filter(d => d.contemplada) ?? [];\r\n const distribuicaoPersonalizadaNaoContemplada = reportPEA.paineisDistribuicao?.painelDistribuicaoPersonalizado?.painel.filter(d => !d.contemplada) ?? [];\r\n\r\n for (const item of distribuicaoPersonalizadaContemplada) {\r\n if (reportPEA.dadosDistribuicaoContempladasPersonalizado.length === 0 || reportPEA.dadosDistribuicaoContempladasPersonalizado.findIndex(r => !r[item.ano.toString()]) < 0) {\r\n const row = {};\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[item.ano.toString() + '_class'] = item.blocoPainel.nome;\r\n row[item.ano.toString() + '_indice'] = item.indicePriorizacao.toFixed(4);\r\n reportPEA.dadosDistribuicaoContempladasPersonalizado.push(row);\r\n } else {\r\n const row = reportPEA.dadosDistribuicaoContempladasPersonalizado[reportPEA.dadosDistribuicaoContempladasPersonalizado.findIndex(r => !r[item.ano.toString()])];\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[item.ano.toString() + '_class'] = item.blocoPainel.nome;\r\n row[item.ano.toString() + '_indice'] = item.indicePriorizacao.toFixed(4);\r\n }\r\n }\r\n\r\n // Não Contempladas\r\n for (const item of distribuicaoPersonalizadaNaoContemplada) {\r\n if (reportPEA.dadosDistribuicaoNaoContempladasPersonalizado.length === 0 || reportPEA.dadosDistribuicaoNaoContempladasPersonalizado.findIndex(r => !r[item.ano.toString()]) < 0) {\r\n const row = {};\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[item.ano.toString() + '_indice'] = item.indicePriorizacao.toFixed(4);\r\n reportPEA.dadosDistribuicaoNaoContempladasPersonalizado.push(row);\r\n } else {\r\n const row = reportPEA.dadosDistribuicaoNaoContempladasPersonalizado[reportPEA.dadosDistribuicaoNaoContempladasPersonalizado.findIndex(r => !r[item.ano.toString()])];\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[item.ano.toString() + '_indice'] = item.indicePriorizacao.toFixed(4);\r\n }\r\n }\r\n }\r\n });\r\n\r\n res.dados.forEach(element => {\r\n element.anosCalendario.forEach(item => {\r\n this.dias = item.meses.filter(data => data.totalDias)\r\n .reduce((sum, current) => sum + current.totalDias, 0);\r\n this.sabadoDomingo = item.meses.filter(data => data.totalSabadosEDomingos)\r\n .reduce((sum, current) => sum + current.totalSabadosEDomingos, 0);\r\n this.pontoFacultativo = item.meses.filter(data => data.totalPontosFacultativos)\r\n .reduce((sum, current) => sum + current.totalPontosFacultativos, 0);\r\n this.feriado = item.meses.filter(data => data.totalFeriados)\r\n .reduce((sum, current) => sum + current.totalFeriados, 0);\r\n this.diasUteis = item.meses.filter(data => data.totalDiasUteis)\r\n .reduce((sum, current) => sum + current.totalDiasUteis, 0);\r\n })\r\n });\r\n this.reportPEAs = res.dados;\r\n \r\n //this.homologado = res.situacao == \"Homologado\";\r\n res.dados.forEach(pea => { \r\n if(pea.situacao.descricao != \"Homologado\") {\r\n this.homologado = false;\r\n }\r\n else{\r\n this.homologado = true;\r\n } \r\n });\r\n \r\n }\r\n\r\n public distribuicaoDataSource = new MatTableDataSource([]);\r\n public distruibuicaoSemDados = true;\r\n public columnsDistribuicaoOriginais1 = ['codigoUG', 'unidadeGestora'];\r\n public columnsDistribuicaoOriginais2 = ['valorRisco'];\r\n public columnsDistribuicao = [];\r\n public colunasAdicionarDistribuicao = [];\r\n\r\n public async obterValorRiscoPorUg(lista: any[]) {\r\n this.colunasAdicionarDistribuicao = [];\r\n this.columnsDistribuicao = [];\r\n this.columnsDistribuicao = this.columnsDistribuicao.concat(\r\n Object.assign([], this.columnsDistribuicaoOriginais1)\r\n );\r\n\r\n var colunasNomes: any = {};\r\n if (lista[0] && lista[0].criterio) {\r\n lista[0].criterio.forEach((element) => {\r\n const nomeColuna = element.nome;\r\n\r\n colunasNomes[nomeColuna.toString()] = nomeColuna\r\n\r\n this.columnsDistribuicao.push(nomeColuna);\r\n if (\r\n !this.colunasAdicionarDistribuicao.some((c) => c === nomeColuna)\r\n ) {\r\n this.colunasAdicionarDistribuicao.push(nomeColuna);\r\n }\r\n });\r\n }\r\n\r\n this.columnsDistribuicao = this.columnsDistribuicao.concat(\r\n Object.assign([], this.columnsDistribuicaoOriginais2)\r\n );\r\n\r\n this.distribuicaoDataSource = new MatTableDataSource(lista);\r\n this.distribuicaoDataSource._updateChangeSubscription();\r\n this.distruibuicaoSemDados =\r\n this.distribuicaoDataSource.filteredData.length === 0;\r\n }\r\n\r\n public obterPesoColuna(\r\n coluna: string\r\n ): string {\r\n if (!this.distribuicaoDataSource.data || !coluna) {\r\n return '';\r\n }\r\n\r\n const result = this.distribuicaoDataSource.data[0].criterio.find(\r\n (x) => x.nome == coluna\r\n );\r\n\r\n if (!result || !result.peso) {\r\n return '';\r\n }\r\n\r\n return result.peso.toString();\r\n }\r\n\r\n public obterValorColuna(\r\n element: any,\r\n coluna: string\r\n ): string {\r\n if (!element || !coluna) {\r\n return '';\r\n }\r\n\r\n const result = element.criterio.find(\r\n (x) => x.nome == coluna\r\n );\r\n\r\n if (!result || !result.nota) {\r\n return '';\r\n }\r\n\r\n return result.nota.toString();\r\n }\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/pea']);\r\n }\r\n}\r\n","
\r\n
0 ? 'always' : 'avoid'\r\n \">\r\n \r\n
\r\n
\r\n
\r\n

\r\n Relatório Consolidado - Período {{ report.periodo.nome }} -\r\n {{ report.periodo.dataInicio | date: \"dd/MM/yyyy\" }} a\r\n {{ report.periodo.dataFim | date: \"dd/MM/yyyy\" }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n

PEAC - {{ report.nome }}

\r\n
\r\n
\r\n
\r\n

Dados

\r\n
\r\n \r\n {{ report.periodo.nome }}\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ ug.sigla }} - {{ ug.nome }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ pc.sigla }} - {{ pc.nome }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ pc.sigla }} - {{ pc.nome }}\r\n
AuditorDisponível para auditoria
{{ a.nome }}{{ a.disponivelAuditoria === true ? 'Sim' : 'Não' }}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Capacidade de Trabalho

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Coordenação\r\n {{ element.coordenacaoNome }}\r\n \r\n Dias Disponíveis\r\n \r\n {{ element.diasDisponiveis }}\r\n \r\n Nº Equipes Disponíveis\r\n \r\n {{ element.equipesDisponiveis }}\r\n \r\n Quant. Dias
por Auditoria\r\n
\r\n {{ element.diasPorAuditoria }}\r\n \r\n Nº Auditorias
por Equipe\r\n
\r\n {{ element.auditoriasPorEquipe }}\r\n \r\n Capacidade Total
por Coordenação\r\n
\r\n {{ element.capacidadeTotalCoordenacao }}\r\n
\r\n Ano: {{ groupBy.ano }} \r\n
\r\n Capacidade de Trabalho Total no Ano:\r\n \r\n \r\n {{ groupBy.capacidadeTotalAno }} \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

Indicador e Critérios

\r\n
\r\n
\r\n \r\n {{ report.indicador.nome }}\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n {{ criterio.nome }}\r\n
\r\n
\r\n \r\n {{ criterio.peso }}\r\n
\r\n
\r\n \r\n {{ criterio.tipoEntrada.nome }}\r\n
\r\n
\r\n\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
MétricaNota
\r\n {{ metrica.operacao1.descricao }}\r\n {{ metrica.valorNumerico1 | number: \"1.2\":\"pt\" }}\r\n 0\">{{ metrica.operacao2.descricao }}\r\n {{\r\n metrica.valorNumerico2 | number: \"1.2\":\"pt\"\r\n }}\r\n {{ metrica.nota }}
\r\n
\r\n
\r\n
\r\n

Dados do(s) critério(s) e nota(s):

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ c.criterio.nome }}\r\n
Unidade GestoraValorNota
{{ n.sigla }}{{ n.valor | number: \"1.2\":\"pt\" }}{{ n.nota }}
\r\n
\r\n
\r\n
\r\n

Cálculo do Índice de Priorização:

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n Código UG\r\n \r\n {{ element.codigo }}\r\n \r\n Unidade Gestora\r\n \r\n {{ element.sigla }}\r\n \r\n {{ coluna }}
{{ obterPesoColuna(coluna) }}\r\n
\r\n {{ obterValorColuna(element, coluna) }}\r\n \r\n Valor de Risco\r\n \r\n {{ element.valorRisco }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

Ranking das UGs com base no Índice de Priorização (Risco)

\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n Código UG\r\n \r\n {{ element.unidadeGestora.codigoUg }}\r\n \r\n Sigla UG\r\n \r\n {{ element.unidadeGestora.sigla }}\r\n \r\n Nome UG\r\n \r\n {{ element.unidadeGestora.nome }}\r\n \r\n Valor Risco\r\n \r\n {{ element.valorRisco }}\r\n
\r\n
\r\n\r\n

Empresas Públicas

\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n Código UG (Dados consolidados na UG Mãe)\r\n \r\n {{ element.unidadeGestora.codigoUg }}\r\n \r\n Sigla UG\r\n \r\n {{ element.unidadeGestora.sigla }}\r\n \r\n Nome UG\r\n \r\n {{ element.unidadeGestora.nome }}\r\n \r\n Valor Risco\r\n \r\n {{ element.valorRisco }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Distribuição das auditorias por UG e Ano, conforme critério de\r\n priorização e faixa de risco inicialmente estabelecida\r\n

\r\n\r\n
\r\n
\r\n

Contempladas

\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
{{ ano }}
\r\n \r\n {{ distribuicao[ano] }}
({{ distribuicao[ano + \"_indice\"] }})\r\n
\r\n
\r\n
\r\n\r\n
\r\n

Não Contempladas

\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
{{ ano }}
\r\n \r\n {{ distribuicao[ano] }}
({{ distribuicao[ano + \"_indice\"] }})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Distribuição das auditorias por UG e Ano, conforme critério de\r\n priorização e faixa de risco ajustada de acordo com a Capacidade\r\n de Trabalho\r\n

\r\n\r\n
\r\n
\r\n \r\n {{ report.classificacaoPisoBaixo }} a\r\n {{ report.classificacaoTetoBaixo }}\r\n
\r\n
\r\n \r\n {{ report.classificacaoPisoMedio }} a\r\n {{ report.classificacaoTetoMedio }}\r\n
\r\n
\r\n \r\n {{ report.classificacaoPisoAlto }} a\r\n {{ report.classificacaoTetoAlto }}\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Contempladas

\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
{{ ano }}
\r\n \r\n {{ distribuicao[ano] }}
({{ distribuicao[ano + \"_indice\"] }})\r\n
\r\n
\r\n
\r\n\r\n
\r\n

Não Contempladas

\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
{{ ano }}
\r\n \r\n {{ distribuicao[ano] }}
({{ distribuicao[ano + \"_indice\"] }})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Calendário

\r\n
\r\n
{{ ano.ano }}
\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Meses/dias12345678910111213141516171819202122232425262728293031Total de diasSab/DomFeriadoPonto FacultativoDias úteis
{{ mes.nome }}\r\n X\r\n \r\n {{ mes.totalDias }}\r\n \r\n {{ mes.totalSabadosEDomingos }}\r\n \r\n {{ mes.totalFeriados }}\r\n \r\n {{ mes.totalPontosFacultativos }}\r\n \r\n {{ mes.totalDiasUteis }}\r\n \r\n {{ mes.feriados }}\r\n
Total{{dias}}{{sabadoDomingo}}{{feriado}}{{pontoFacultativo}}{{diasUteis}}
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Sábados e domingos
Sábado ou Domingo (com feriado)
Ponto facultativo
Feriados nacionais
Feriados estaduais/municipais
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from \"@angular/core\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { Router } from \"@angular/router\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IFiltroPendenciaModel } from \"src/app/models/filtro-pendencia.model\";\r\nimport { IPendenciaModel } from \"src/app/models/pendencia.model\";\r\nimport { PendenciaService } from \"src/app/services/pendencia.service\";\r\nimport { BaseListComponent } from \"src/app/shared/components/base-list/base-list.component\";\r\n\r\n@Component({\r\n\tselector: \"app-pendencia-list\",\r\n\ttemplateUrl: \"./pendencia-list.component.html\",\r\n\tstyleUrls: [\"./pendencia-list.component.scss\"],\r\n})\r\nexport class PendenciaListComponent\r\n\textends BaseListComponent\r\n\timplements OnInit {\r\n\tpublic dataSource = new MatTableDataSource([]);\r\n\tpublic selectedModel: IPendenciaModel;\r\n\tpublic semDados = true;\r\n\tpublic searchNome: string;\r\n\tpublic searchStatus: number = 1;\r\n\tpublic filtro = {\r\n\t\titensPorPagina: 15,\r\n\t\tstatus: 1\r\n\t} as IFiltroPendenciaModel;\r\n\r\n\tpublic displayedColumns: string[] = [\r\n\t\t\"selecao\",\r\n\t\t\"tipo\",\r\n\t\t\"dataRecebimento\",\r\n\t\t\"dataPrazo\",\r\n\t\t\"status\",\r\n\t];\r\n\r\n\tpublic totalItens: number;\r\n\tpublic pageEvent: any;\r\n\r\n\t@ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n\t@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n\tconstructor(\r\n\t\tprivate pendenciaService: PendenciaService,\r\n\t\tprivate toastr: ToastrService,\r\n\t\tprivate router: Router\r\n\t) {\r\n\t\tsuper();\r\n\t\tthis.buscar();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.buscar();\r\n\t\tthis.configurarFiltro();\r\n\t}\r\n\r\n\tngAfterViewInit() {\r\n\t\tthis.configurarFiltro();\r\n\t\tthis.buscar();\r\n\t\tthis.dataSource.sort = this.sort;\r\n\t\tthis.dataSource.paginator = this.tableOnePaginator;\r\n\t\tthis.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n\t}\r\n\r\n\tpublic buscar() {\r\n\t\tthis.selectedModel = null;\r\n\r\n\t\tthis.pendenciaService\r\n\t\t\t.obter(this.filtro)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.dataSource = new MatTableDataSource(\r\n\t\t\t\t\tres.dados?.resultado\r\n\t\t\t\t);\r\n\r\n\t\t\t\tthis.totalItens = res.dados.totalItens;\r\n\t\t\t\tthis.dataSource.sort = this.sort;\r\n\t\t\t\tthis.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n\t\t\t\tthis.dataSource._updateChangeSubscription();\r\n\t\t\t\tthis.semDados = this.dataSource.filteredData.length === 0;\r\n\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.toastr.error(err?.mensagem?.descricao ?? err, \"Atenção\");\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic editar(pendencia: IPendenciaModel) {\r\n\t\tthis.router.navigate([pendencia.url]);\r\n\t}\r\n\r\n\tpublic sortingDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"tipo\":\r\n\t\t\t\treturn item?.tipoDePendencia;\r\n\t\t\tcase \"dataRecebimento\":\r\n\t\t\t\treturn item?.dataDoRecebimento;\r\n\t\t\tcase \"dataPrazo\":\r\n\t\t\t\treturn item?.dataDoPrazo;\r\n\t\t\tcase \"status\":\r\n\t\t\t\treturn item?.status?.descricao;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n\tpublic configurarFiltro() {\r\n\t\tthis.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n\t\tthis.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n\t\tthis.filtro.pesquisa = this.searchNome;\r\n\t\tthis.filtro.status = this.searchStatus;\r\n\t\tthis.filtro.direcao = this.sort.direction;\r\n\t\tthis.filtro.colunaOrder = this.sort.active;\r\n\t}\r\n\r\n\tpageChanged(e) {\r\n\t\tthis.filtro.pagina = e.pageIndex + 1;\r\n\t\te.pageIndex = this.filtro.pagina;\r\n\t\tthis.filtro.itensPorPagina = e.pageSize;\r\n\t\tthis.buscar();\r\n\t}\r\n\r\n\tsortData(sort) {\r\n\t\tthis.filtro.colunaOrder = sort.active;\r\n\t\tthis.filtro.direcao = sort.direction;\r\n\t\tthis.buscar();\r\n }\r\n\r\n\tpublic selecionar(item: any) {\r\n\t\tthis.selectedModel =\r\n\t\t\t!this.selectedModel ||\r\n\t\t\t\t(this.selectedModel.id !== item.id)\r\n\t\t\t\t? item\r\n\t\t\t\t: null;\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Pendências
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Pendências\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Tipo de Pendência {{element?.tipoDePendencia}} Data de Recebimento {{element?.dataDoRecebimento | date: 'shortDate'}} Data Prazo {{element?.dataDoPrazo | date: 'shortDate'}} Situação \r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from \"@angular/core\";\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { IPerguntaMetricaModel } from \"src/app/models/pergunta-metrica.model\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\n\r\n@Component({\r\n\tselector: \"app-modal-excluir-metrica\",\r\n\ttemplateUrl: \"./modal-excluir-metrica.component.html\",\r\n\tstyleUrls: [\"./modal-excluir-metrica.component.scss\"],\r\n})\r\nexport class ModalExcluirMetricaComponent implements OnInit {\r\n\tpublic metricasDataSource = new MatTableDataSource(\r\n\t\t[]\r\n\t);\r\n\tpublic semDados = true;\r\n\r\n\tconstructor(\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) data: any\r\n\t) {}\r\n\r\n\tngOnInit(): void {}\r\n\r\n\tonConfirm(): void {\r\n\t\tthis.dialogRef.close(true);\r\n\t}\r\n\r\n\tonCancel(): void {\r\n\t\tthis.dialogRef.close(false);\r\n\t}\r\n}\r\n","
\r\n\t
\r\n\t\terror_outline\r\n\t
\r\n
\r\n
\r\n\t

Remover sub-pergunta

\r\n\t

\r\n\t\tTem certeza que deseja remover esta condição para habilitação da\r\n\t\tsub-pergunta? Esta ação não poderá ser desfeita!\r\n\t

\r\n
\r\n
\r\n\t\r\n\t\r\n
\r\n","import { AfterViewInit, Component, Inject, Input, OnInit } from \"@angular/core\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport Inputmask from \"inputmask\";\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { toIntlNumberString } from \"src/app/core/helpers/number.helper\";\r\nimport { IPerguntaMetricaModel } from \"src/app/models/pergunta-metrica.model\";\r\nimport { IPerguntaModel } from \"src/app/models/pergunta.model\";\r\nimport { PerguntaService } from \"src/app/services/pergunta.service\";\r\nimport { IEnumModel } from \"src/app/models/enum.model\";\r\nimport { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { MatFormFieldModule } from \"@angular/material/form-field\";\r\nimport { MatInputModule } from \"@angular/material/input\";\r\nimport { MatAutocompleteModule } from \"@angular/material/autocomplete\";\r\nimport { ReactiveFormsModule } from \"@angular/forms\";\r\nimport { Observable } from \"rxjs\";\r\nimport { map, startWith } from \"rxjs/operators\";\r\nimport { MatIconModule } from \"@angular/material/icon\";\r\n\r\n@Component({\r\n\tselector: \"app-modal-metrica-pergunta\",\r\n\ttemplateUrl: \"./modal-metrica-pergunta.component.html\",\r\n\tstyleUrls: [\"./modal-metrica-pergunta.component.scss\"],\r\n})\r\nexport class ModalMetricaPerguntaComponent\r\n\textends BaseFormComponent\r\n\timplements AfterViewInit, OnInit\r\n{\r\n\tpublic tipoEntrada: string;\r\n\tpublic enumTipoComparacao = [] as IEnumModel[];\r\n\tpublic model: IPerguntaModel = {} as IPerguntaModel;\r\n\tpublic element = {} as IPerguntaMetricaModel;\r\n\tpublic dataSource = new MatTableDataSource([]);\r\n\tpublic filtroPergunta: string | null = null;\r\n\tpublic perguntas: any;\r\n\tpublic subPergunta: any;\r\n\tperguntasFiltradas: Observable;\r\n\r\n\tpublic form = new FormGroup({\r\n\t\tid: new FormControl({ value: \"\", disabled: true }),\r\n\t\tnome: new FormControl(\"\", Validators.required),\r\n\t\tdescricao: new FormControl(\"\", Validators.required),\r\n\t\ttipoEntradaId: new FormControl(null, Validators.required),\r\n\t\tunidade: new FormControl(null, Validators.required),\r\n\t\tperguntaId: new FormControl(null),\r\n\t\tsubPergunta: new FormControl(null, Validators.required),\r\n\t});\r\n\r\n\tconstructor(\r\n\t\troute: ActivatedRoute,\r\n\t\ttoastr: ToastrService,\r\n\t\trouter: Router,\r\n\t\tlocaleService: BsLocaleService,\r\n\t\tmatDialog: MatDialog,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) data,\r\n\t\tprivate perguntaService: PerguntaService\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\t\tthis.element = data.element;\r\n\t\tthis.tipoEntrada = data.tipoEntrada;\r\n\t\tthis.enumTipoComparacao = data.enumTipoComparacao;\r\n\r\n\t\tthis.formMetrica = new FormGroup(\r\n\t\t\t{\r\n\t\t\t\toperacao1Id: new FormControl(\r\n\t\t\t\t\tthis.element?.operacao1Id,\r\n\t\t\t\t\tValidators.required\r\n\t\t\t\t),\r\n\t\t\t\tvalorNumerico1: new FormControl(\r\n\t\t\t\t\tthis.element?.valorNumerico1,\r\n\t\t\t\t\tValidators.required\r\n\t\t\t\t),\r\n\t\t\t\toperacao2Id: new FormControl(this.element?.operacao2Id),\r\n\t\t\t\tvalorNumerico2: new FormControl(this.element?.valorNumerico2),\r\n\t\t\t\tsubPergunta: new FormControl(\r\n\t\t\t\t\tthis.element?.subPergunta,\r\n\t\t\t\t\tValidators.required\r\n\t\t\t\t),\r\n\t\t\t\tnota: new FormControl(this.element?.nota),\r\n\t\t\t},\r\n\t\t\t{ validators: [this.ValidateRequiredOperacao2.bind(this)] }\r\n\t\t);\r\n\t}\r\n\r\n\tpublic formMetrica: FormGroup;\r\n\r\n\tngAfterViewInit() {\r\n\t\tInputmask().mask(document.querySelectorAll(\"input\"));\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.carregaTodasPerguntas();\r\n\t}\r\n\r\n\tprivate filter(value: string): any[] {\r\n\t\tconst filterValue = value.toLowerCase();\r\n\t\treturn this.perguntas.filter((option) =>\r\n\t\t\toption.nome.toLowerCase().includes(filterValue)\r\n\t\t);\r\n\t}\r\n\r\n\tpublic concluir() {\r\n\t\tconst operacao2Id = this.formMetrica.controls[\"operacao2Id\"];\r\n\r\n\t\tconst valorNumerico1 = parseFloat(\r\n\t\t\ttoIntlNumberString(\r\n\t\t\t\tthis.formMetrica.controls[\"valorNumerico1\"].value.toString()\r\n\t\t\t)\r\n\t\t);\r\n\t\tconst valorNumerico2 = this.formMetrica.controls[\"valorNumerico2\"].value\r\n\t\t\t? parseFloat(\r\n\t\t\t\t\ttoIntlNumberString(\r\n\t\t\t\t\t\tthis.formMetrica.controls[\r\n\t\t\t\t\t\t\t\"valorNumerico2\"\r\n\t\t\t\t\t\t].value.toString()\r\n\t\t\t\t\t)\r\n\t\t\t )\r\n\t\t\t: null;\r\n\r\n\t\toperacao2Id.setErrors(\r\n\t\t\t!operacao2Id.value &&\r\n\t\t\t\tthis.formMetrica.controls[\"valorNumerico2\"].value\r\n\t\t\t\t? { required: true }\r\n\t\t\t\t: null\r\n\t\t);\r\n\t\tthis.formMetrica.controls[\"valorNumerico2\"].setErrors(\r\n\t\t\toperacao2Id.value &&\r\n\t\t\t\t!this.formMetrica.controls[\"valorNumerico2\"].value\r\n\t\t\t\t? { required: true }\r\n\t\t\t\t: null\r\n\t\t);\r\n\r\n\t\tthis.formMetrica.markAllAsTouched();\r\n\r\n\t\tif (!this.formMetrica.valid) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst nota = this.formMetrica.controls[\"nota\"].value? parseFloat(\r\n\t\t\ttoIntlNumberString(\r\n\t\t\t\tthis.formMetrica.controls[\"nota\"].value.toString()\r\n\t\t\t)\r\n\t\t): null;\r\n\r\n\r\n\t\tconst modelMetrica = {\r\n\t\t\toperacao1Id: parseInt(\r\n\t\t\t\tthis.formMetrica.controls[\"operacao1Id\"].value,\r\n\t\t\t\tnull\r\n\t\t\t),\r\n\t\t\toperacao1: this.enumTipoComparacao.find(\r\n\t\t\t\t(t) =>\r\n\t\t\t\t\tt.codigo ===\r\n\t\t\t\t\tparseInt(\r\n\t\t\t\t\t\tthis.formMetrica.controls[\"operacao1Id\"].value,\r\n\t\t\t\t\t\tnull\r\n\t\t\t\t\t)\r\n\t\t\t),\r\n\t\t\toperacao2Id: parseInt(\r\n\t\t\t\tthis.formMetrica.controls[\"operacao2Id\"].value,\r\n\t\t\t\tnull\r\n\t\t\t),\r\n\t\t\toperacao2: this.enumTipoComparacao.find(\r\n\t\t\t\t(t) =>\r\n\t\t\t\t\tt.codigo ===\r\n\t\t\t\t\tparseInt(\r\n\t\t\t\t\t\tthis.formMetrica.controls[\"operacao2Id\"].value,\r\n\t\t\t\t\t\tnull\r\n\t\t\t\t\t)\r\n\t\t\t),\r\n\t\t\tvalorNumerico1,\r\n\t\t\tvalorNumerico2,\r\n\t\t\tsubPergunta: this.formMetrica.controls[\"subPergunta\"].value || null,\r\n\t\t\tnota,\r\n\t\t} as IPerguntaMetricaModel;\r\n\r\n\t\tthis.dialogRef.close(modelMetrica);\r\n\t}\r\n\r\n\tpublic cancelar() {\r\n\t\tthis.dialogRef.close(null);\r\n\t}\r\n\r\n\tpublic async carregaTodasPerguntas() {\r\n\t\tconst res = await this.perguntaService\r\n\t\t\t.obter(\"\", true)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.dataSource = new MatTableDataSource(res.dados);\r\n\t\t\t\tthis.perguntas = res.dados;\r\n\t\t\t\tif(this.element?.subPergunta){\r\n\t\t\t\t\tthis.formMetrica.get('subPergunta').setValue(this.element.subPergunta);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem);\r\n\t\t\t});\r\n\t}\r\n\r\n\tprivate ValidateRequiredOperacao2() {\r\n\t\treturn (formGroup: FormGroup) => {\r\n\t\t\tconst operacao2Id = formGroup.controls[\"operacao2Id\"];\r\n\t\t\tconst valorNumerico2 = formGroup.controls[\"valorNumerico2\"];\r\n\r\n\t\t\tif (operacao2Id.value && !valorNumerico2.value) {\r\n\t\t\t\toperacao2Id.setErrors(null);\r\n\t\t\t\tvalorNumerico2.setErrors({ required: true });\r\n\t\t\t} else if (!operacao2Id.value && valorNumerico2.value) {\r\n\t\t\t\toperacao2Id.setErrors({ required: true });\r\n\t\t\t\tvalorNumerico2.setErrors(null);\r\n\t\t\t} else {\r\n\t\t\t\toperacao2Id.setErrors(null);\r\n\t\t\t\tvalorNumerico2.setErrors(null);\r\n\t\t\t}\r\n\t\t};\r\n\t}\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

Adicionar Métrica

\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tCampo obrigatório\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t Adicionar\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t Cancelar\r\n\t\t\t\r\n\t\t
\r\n\t\r\n\r\n","import { Component, OnInit, ChangeDetectorRef } from \"@angular/core\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { MatDialog, MatDialogConfig } from \"@angular/material/dialog\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IBaseModel } from \"src/app/models/base.model\";\r\nimport { IPerguntaMetricaModel } from \"src/app/models/pergunta-metrica.model\";\r\nimport { IEnumModel } from \"src/app/models/enum.model\";\r\nimport { IPerguntaOpcaoModel } from \"src/app/models/pergunta-opcao.model\";\r\nimport { IPerguntaModel } from \"src/app/models/pergunta.model\";\r\nimport { PerguntaService } from \"src/app/services/pergunta.service\";\r\nimport { TabelaDominioService } from \"src/app/services/tabela-dominio.service\";\r\nimport Swal from \"sweetalert2\";\r\nimport { BaseFormComponent } from \"../../shared/components/base-form/base-form.component\";\r\nimport { ModalMetricaPerguntaComponent } from \"./modal-metrica-pergunta/modal-metrica-pergunta.component\";\r\n\r\nimport {\r\n\tCdkDragDrop,\r\n\tmoveItemInArray,\r\n\ttransferArrayItem,\r\n} from \"@angular/cdk/drag-drop\";\r\nimport { ModalExcluirMetricaComponent } from \"./modal-metrica-pergunta/modal-excluir-metrica/modal-excluir-metrica.component\";\r\n\r\n@Component({\r\n\tselector: \"app-pergunta-form\",\r\n\ttemplateUrl: \"./pergunta-form.component.html\",\r\n\tstyleUrls: [\"./pergunta-form.component.scss\"],\r\n})\r\nexport class PerguntaFormComponent extends BaseFormComponent implements OnInit {\r\n\tpublic enumTipoEntrada = [] as IEnumModel[];\r\n\tpublic enumTipoComparacao = [] as IEnumModel[];\r\n\r\n\tpublic model: IPerguntaModel = {} as IPerguntaModel;\r\n\tpublic metricasDataSource = new MatTableDataSource(\r\n\t\t[]\r\n\t);\r\n\tpublic opcoesDataSource = [] as IPerguntaOpcaoModel[];\r\n\r\n\tpublic semDados = true;\r\n\tpublic semDadosMetrica = true;\r\n\tpublic permiteCadastroOpcoes = false;\r\n\r\n\tpublic form = new FormGroup({\r\n\t\tid: new FormControl({ value: \"\", disabled: true }),\r\n\t\tnome: new FormControl(\"\", Validators.required),\r\n\t\tdescricao: new FormControl(\"\", Validators.required),\r\n\t\ttipoEntradaId: new FormControl(null, Validators.required),\r\n\t\tnovaOpcao: new FormControl(\"\"),\r\n\t\tsubPergunta: new FormControl(\"\"),\r\n\t});\r\n\r\n\tconstructor(\r\n\t\troute: ActivatedRoute,\r\n\t\ttoastr: ToastrService,\r\n\t\trouter: Router,\r\n\t\tlocaleService: BsLocaleService,\r\n\t\tprivate perguntaService: PerguntaService,\r\n\t\tprivate tabelaDominioService: TabelaDominioService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate cdr: ChangeDetectorRef\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\r\n\t\tif (this.novoRegistro) {\r\n\t\t\tthis.titulo = \"Nova Pergunta\";\r\n\t\t}\r\n\t}\r\n\r\n\tonDrop(event: CdkDragDrop) {\r\n\t\tif (event.previousContainer === event.container) {\r\n\t\t\tmoveItemInArray(\r\n\t\t\t\tthis.opcoesDataSource,\r\n\t\t\t\tevent.previousIndex,\r\n\t\t\t\tevent.currentIndex\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\ttry {\r\n\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\tconst res = await this.perguntaService.obterPorId(this.id);\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.model = res.dados;\r\n\r\n\t\t\t\t\tif (this.visualizar) {\r\n\t\t\t\t\t\tthis.titulo =\r\n\t\t\t\t\t\t\t\"Visualizar Pergunta - \" + this.model.nome;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.titulo = \"Editar Pergunta - \" + this.model.nome;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.metricasDataSource =\r\n\t\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\t\tthis.model.perguntaMetrica.sort((a, b) =>\r\n\t\t\t\t\t\t\t\ta.ordem > b.ordem ? 1 : -1\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\tthis.metricasDataSource._updateChangeSubscription();\r\n\t\t\t\t\tthis.semDados =\r\n\t\t\t\t\t\tthis.metricasDataSource.filteredData.length === 0;\r\n\t\t\t\t\tthis.semDadosMetrica = this.model.perguntaMetrica.length ? false : true;\r\n\t\t\t\t\tthis.opcoesDataSource = this.model.perguntaOpcao.sort(\r\n\t\t\t\t\t\t(a, b) =>\r\n\t\t\t\t\t\t\ta[\"ordem\"]\r\n\t\t\t\t\t\t\t\t.toString()\r\n\t\t\t\t\t\t\t\t.localeCompare(b[\"ordem\"].toString())\r\n\t\t\t\t\t);\r\n\t\t\t\t\tthis.semDados = this.opcoesDataSource.length === 0;\r\n\t\t\t\t\tthis.form.patchValue(this.model);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t\tthis.router.navigate([\"/perguntas\"]);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tawait Promise.all([\r\n\t\t\t\tthis.tabelaDominioService\r\n\t\t\t\t\t.obterTipoComparacao()\r\n\t\t\t\t\t.then((res) => (this.enumTipoComparacao = res.dados)),\r\n\t\t\t]);\r\n\r\n\t\t\t// Tabelas de domínio\r\n\t\t\tawait this.tabelaDominioService\r\n\t\t\t\t.obterTipoEntradaPergunta()\r\n\t\t\t\t.then((res) => (this.enumTipoEntrada = res.dados));\r\n\t\t\tthis.permiteCadastroOpcoes = this.model.tipoEntradaId === 3;\r\n\t\t\tthis.form.patchValue(this.model);\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\tthis.router.navigate([\"/perguntas\"]);\r\n\t\t}\r\n\t\tthis.form.patchValue(this.model);\r\n\t}\r\n\r\n\tpublic cancelar() {\r\n\t\tthis.submit = false;\r\n\t\tthis.router.navigate([\"/perguntas\"]);\r\n\t}\r\n\r\n\tpublic onChangeTipoEntrada(event: any) {\r\n\t\tthis.permiteCadastroOpcoes = event.target.value === \"3\";\r\n\t\tthis.model.tipoEntradaId = parseInt(event.target.value, 10);\r\n\t}\r\n\r\n\tpublic async salvarDados(salvarEFechar: boolean) {\r\n\t\tthis.submit = true;\r\n\t\tif (this.form.invalid) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"warning\",\r\n\t\t\t\ttext: \"Formulário Inválido\",\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tObject.assign(this.model, this.form.value);\r\n\t\tthis.model.perguntaMetrica = this.metricasDataSource.data;\r\n\t\tthis.atualizarModel(this.form.value);\r\n\r\n\t\tthis.model.perguntaOpcao = [];\r\n\t\tif (this.model.tipoEntradaId.toString() === \"3\") {\r\n\t\t\tthis.model.perguntaOpcao = this.opcoesDataSource.map((_, i) => ({\r\n\t\t\t\t..._,\r\n\t\t\t\tordem: i,\r\n\t\t\t}));\r\n\t\t}\r\n\t\tif (this.model.tipoEntradaId.toString() !== \"3\"){\r\n\t\t\tthis.model.perguntaOpcao = [];\r\n\t\t\tthis.opcoesDataSource = [];\r\n\t\t}\r\n\r\n\t\ttry {\r\n\t\t\tlet res: IBaseModel;\r\n\r\n\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\tres = await this.perguntaService.atualizar(this.model);\r\n\t\t\t} else {\r\n\t\t\t\tres = await this.perguntaService.inserir(this.model);\r\n\t\t\t}\r\n\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tif (res.mensagem.nome === \"PerguntaEmUsoAlteradaNovasOpcoes\") {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttitle: \"A pergunta foi alterada com sucesso!\",\r\n\t\t\t\t\t\thtml:\r\n\t\t\t\t\t\t\t\"O(s) Critério(s) abaixo precisa(m) ser alterado(s) com métricas para a(s) nova(s) resposta(s):
\" +\r\n\t\t\t\t\t\t\tthis.montarMensagensValidacao(res),\r\n\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t}).then(() => {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tthis.router.navigate([\"/perguntas\"]);\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tif (salvarEFechar) {\r\n\t\t\t\t\t\tthis.router.navigate([\"/perguntas\"]);\r\n\t\t\t\t\t} else if (this.novoRegistro) {\r\n\t\t\t\t\t\tthis.router.navigate([`/perguntas/${res.dados.id}`]);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tconst validacoes = this.montarMensagensValidacao(res);\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\ttext: `${res.mensagem.descricao}${validacoes}`,\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async onSubmit() {\r\n\t\tthis.salvarDados(false);\r\n\t}\r\n\r\n\tpublic incluirNovaOpcao() {\r\n\t\tconst novaOpcao = this.form.controls[\"novaOpcao\"].value;\r\n\t\tif (novaOpcao && novaOpcao.length > 0) {\r\n\t\t\tthis.opcoesDataSource.push({\r\n\t\t\t\tnome: novaOpcao,\r\n\t\t\t} as IPerguntaOpcaoModel);\r\n\t\t\tthis.semDados = false;\r\n\r\n\t\t\tthis.form.controls[\"novaOpcao\"].setValue(\"\");\r\n\t\t}\r\n\t}\r\n\r\n\tpublic excluirOpcao(ind: number) {\r\n\t\tconst index = this.opcoesDataSource.findIndex(item => item.id === ind);\r\n\t\tif (index !== -1) {\r\n\t\t\tthis.opcoesDataSource.splice(index, 1);\r\n\t\t}\r\n\t}\r\n\r\n\tprivate atualizarModel(values: any) {\r\n\t\tObject.assign(this.model, values);\r\n\t}\r\n\r\n\tpublic onBack() {\r\n\t\tthis.submit = false;\r\n\t\tthis.router.navigate([\"/perguntas\"]);\r\n\t}\r\n\tpublic excluirMetrica(i: number) {\r\n\t\tconst dialogRef = this.dialog.open(ModalExcluirMetricaComponent, {\r\n\t\t\twidth: \"650px\",\r\n\t\t\tdata: { message: \"Confirmação de Exclusão\" },\r\n\t\t});\r\n\r\n\t\tdialogRef.afterClosed().subscribe((result) => {\r\n\t\t\tif (result) {\r\n\t\t\t\tthis.metricasDataSource.data.splice(i, 1);\r\n\t\t\t\tthis.metricasDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.semDados =\r\n\t\t\t\t\tthis.metricasDataSource.filteredData.length === 0;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic async exibirModalMetrica(\r\n\t\telement?: IPerguntaMetricaModel,\r\n\t\tindex?: number\r\n\t) {\r\n\t\tif (!this.model.tipoEntradaId) {\r\n\t\t\tthis.exibirMensagemAlerta(\r\n\t\t\t\t\"É necessário selecionar o Tipo de Entrada antes de definir as métricas\"\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tlet modal: any;\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component\";\r\n\t\tdialogConfig.width = \"650px\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\r\n\t\tif (\r\n\t\t\tthis.model.tipoEntradaId === 1 ||\r\n\t\t\tthis.model.tipoEntradaId === 2 ||\r\n\t\t\tthis.model.tipoEntradaId === 3\r\n\t\t) {\r\n\t\t\tlet defineEntrada: any;\r\n\r\n\t\t\tswitch (this.model.tipoEntradaId) {\r\n\t\t\t\tcase 1:\r\n\t\t\t\t\tdefineEntrada = \"inteiro\";\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tcase 2:\r\n\t\t\t\t\tdefineEntrada = \"decimal\";\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tcase 3:\r\n\t\t\t\t\tdefineEntrada = \"multiplaEscolha\";\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tdefineEntrada = \"inteiro\";\r\n\t\t\t}\r\n\r\n\t\t\tconst data = {\r\n\t\t\t\ttipoEntrada: defineEntrada,\r\n\t\t\t\tenumTipoComparacao: this.enumTipoComparacao,\r\n\t\t\t\telement,\r\n\t\t\t};\r\n\r\n\t\t\tdialogConfig.data = data;\r\n\t\t\tmodal = this.matDialog.open(\r\n\t\t\t\tModalMetricaPerguntaComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t);\r\n\t\t} else {\r\n\t\t\tthis.exibirMensagemAlerta(\r\n\t\t\t\t\"As subperguntas só podem ser atribuídas as perguntas do tipo decimal, numérica e multipla escolha.\"\r\n\t\t\t);\r\n\t\t}\r\n\r\n\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tif (element) {\r\n\t\t\t\t\tthis.metricasDataSource.data.splice(index, 1);\r\n\t\t\t\t}\r\n\t\t\t\tthis.metricasDataSource.data.push(data);\r\n\t\t\t\tthis.metricasDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.semDadosMetrica = false;\r\n\t\t\t}\r\n\t\t});\r\n\t\tthis.cdr.detectChanges();\r\n\t}\r\n\r\n\tpublic drop(event: CdkDragDrop) {\r\n\t\tmoveItemInArray(\r\n\t\t\tthis.metricasDataSource.data,\r\n\t\t\tevent.previousIndex,\r\n\t\t\tevent.currentIndex\r\n\t\t);\r\n\t\tfor (let i = 0; i < this.metricasDataSource.data.length; i++) {\r\n\t\t\tthis.metricasDataSource.data[i].ordem = i + 1;\r\n\t\t}\r\n\r\n\t\tthis.metricasDataSource._updateChangeSubscription();\r\n\t}\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
    \r\n\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tPágina Inicial\r\n\t\t\t\t\t
  2. \r\n\t\t\t\t\t
  3. \r\n\t\t\t\t\t\tPerguntas\r\n\t\t\t\t\t
  4. \r\n\t\t\t\t\t
  5. {{ titulo }}
  6. \r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{ titulo }}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tDescrição\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tCampo obrigatório\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ i + 1 }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ opcao.nome }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tNenhuma opção disponível\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tMétricas\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.operacao1\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.descricao\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.valorNumerico1\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t| number\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"1.2\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"pt\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\te\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.operacao2\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.descricao\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.valorNumerico2\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t| number\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"1.2\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"pt\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tSub-pergunta\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{ element.subPergunta }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tNota\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{ element.nota }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAdicionar\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tNenhuma métrica cadastrada\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t Salvar\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tSalvar\r\n\t\t\t\t\t\t\t\t\tSalvar e fechar\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Cancelar\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Sair\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPerguntaModel } from 'src/app/models/pergunta.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { PerguntaService } from 'src/app/services/pergunta.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'tipoEntrada':\r\n return item.tipoEntrada.descricao.trim().toLowerCase(); \r\n case 'nome': return item.nome.trim().toLowerCase(); \r\n default:\r\n return item[property];\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-pergunta-list',\r\n templateUrl: './pergunta-list.component.html',\r\n styleUrls: ['./pergunta-list.component.scss']\r\n})\r\nexport class PerguntaListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IPerguntaModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'tipoEntrada', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private perguntaService: PerguntaService,\r\n private router: Router,\r\n private authService:AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/perguntas/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.perguntaService\r\n .obter(this.searchNome, this.searchAtivo, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.perguntaService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Pergunta reativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.perguntaService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Pergunta inativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/perguntas/${id}`]);\r\n }\r\n\r\n public excluir(id: number) {\r\n this.perguntaService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Pergunta excluída com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n title: 'Erro',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n public visualizar(id: number) {\r\n this.router.navigate([`/perguntas/${id}/visualizar`]);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Perguntas
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Perguntas\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Nome {{element.nome}} Tipo de Entrada {{element.tipoEntrada.descricao}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IPeriodoModel } from 'src/app/models/periodo.model';\r\nimport { PeriodoService } from 'src/app/services/periodo.service';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\n\r\n@Component({\r\n selector: 'app-periodo-form',\r\n templateUrl: './periodo-form.component.html',\r\n styleUrls: ['./periodo-form.component.scss'],\r\n})\r\nexport class PeriodoFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IPeriodoModel = {} as IPeriodoModel;\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n dataInicio: new FormControl('', Validators.required),\r\n dataFim: new FormControl('', Validators.required)\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private periodoService: PeriodoService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Período';\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.periodoService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n \r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Período - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Período - ' + this.model.nome;\r\n }\r\n\r\n this.model.dataInicio = new Date(this.model.dataInicio);\r\n this.model.dataFim = new Date(this.model.dataFim);\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/periodos']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/periodos']);\r\n } \r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n if (this.form.invalid) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Formulário invalido',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n\r\n this.submit = true;\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.periodoService.atualizar(this.model);\r\n } else {\r\n res = await this.periodoService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (salvarEFechar) {\r\n this.router.navigate(['/periodos']);\r\n }\r\n else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/periodos/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n this.submit = false;\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(validacoes, true);\r\n }\r\n } catch (err) {\r\n this.submit = false;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/periodos']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Períodos\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPeriodoModel } from 'src/app/models/periodo.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { PeriodoService } from 'src/app/services/periodo.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-periodo-list',\r\n templateUrl: './periodo-list.component.html',\r\n styleUrls: ['./periodo-list.component.scss'],\r\n})\r\n\r\nexport class PeriodoListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IPeriodoModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'dataInicio', 'dataFim', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private periodoService: PeriodoService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService,\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n\r\n public novo() {\r\n this.router.navigate(['/periodos/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.periodoService\r\n .obter(this.searchNome, this.searchAtivo, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.periodoService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Período reativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.periodoService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Período inativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/periodos/${id}`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public excluir(id: number) {\r\n this.periodoService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Período excluído com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n title: 'PEAC Associado',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/periodos/${id}/visualizar`]);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Período
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Períodos\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nome {{ element.nome }} Data Inicio {{ element.dataInicio | date:\"dd/MM/yyyy\" }} Data Fim {{ element.dataFim | date:\"dd/MM/yyyy\" }} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { IAssinaturaModel } from './../../../models/assinatura.model';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { IPlanejamentoImprimirModel } from 'src/app/models/planejamento-imprimir.model';\r\nimport { PlanejamentoService } from 'src/app/services/planejamento.service';\r\nimport Swal from 'sweetalert2';\r\nimport { toFormatValue, toRemoveCharacters } from 'src/app/shared/util/toFormatValue';\r\n\r\n@Component({\r\n selector: 'app-imprimir',\r\n templateUrl: './imprimir.component.html',\r\n styleUrls: ['./imprimir.component.scss']\r\n})\r\nexport class ImprimirComponent implements OnInit {\r\n\r\n public model: IPlanejamentoImprimirModel = {} as IPlanejamentoImprimirModel;\r\n public homologado = false;\r\n public id: number\r\n\r\n\r\n constructor(\r\n private planejamentoService: PlanejamentoService,\r\n public route: ActivatedRoute,\r\n ) {\r\n this.id = +this.route.snapshot.paramMap.get('id');\r\n }\r\n\r\n ngOnInit(): void {\r\n this.obter()\r\n }\r\n\r\n\r\n public obter(){\r\n this.planejamentoService.imprimir(this.id).then((res) => {\r\n if(res.sucesso){\r\n this.model = res.dados\r\n if (res?.dados?.status?.codigo === 4) {\r\n this.homologado = true;\r\n }\r\n }else{\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n }\r\n\r\n public cancelar() {\r\n window.history.back()\r\n }\r\n\r\n public print() {\r\n window.print();\r\n }\r\n\r\n public formatarInput(value) {\r\n return toFormatValue(value);\r\n }\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\r\n\t\t\t\t
\r\n\t\t\t\t\t

Informações Básicas  

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tNº OPA:\r\n\t\t\t\t\t\t\t

{{ model?.opa?.numero }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tOrigem da Auditoria:\r\n\t\t\t\t\t\t\t

{{ model?.opa?.origem?.descricao }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tData de Elaboração:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\tmodel?.opa?.dataElaboracao\r\n\t\t\t\t\t\t\t\t\t\t| date: \"shortDate\"\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tTipo de Auditoria:\r\n\t\t\t\t\t\t\t

{{ model?.opa?.nomeTipoAuditoria }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tData prevista para Início:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\tmodel?.opa?.dataInicioPrevista\r\n\t\t\t\t\t\t\t\t\t\t| date: \"shortDate\"\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tData prevista para Fim:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\tmodel?.opa?.dataFimPrevista\r\n\t\t\t\t\t\t\t\t\t\t| date: \"shortDate\"\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tData início de realização:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\tmodel?.opa?.dataInicioRealizacao\r\n\t\t\t\t\t\t\t\t\t\t| date: \"shortDate\"\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tData fim de realização:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\tmodel?.opa?.dataFimRealizacao\r\n\t\t\t\t\t\t\t\t\t\t| date: \"shortDate\"\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tUG a ser Auditado:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{ model?.opa?.siglaUg }}-{{\r\n\t\t\t\t\t\t\t\t\tmodel?.opa?.nomeUg\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tCoordenador da auditoria:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\tmodel?.opa?.auditorCoordenacao?.nomeAuditor\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tObjeto:\r\n\t\t\t\t\t\t\t

{{ model?.opa?.objeto }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tStatus:\r\n\t\t\t\t\t\t\t

{{ model?.status?.descricao }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tSubtipos:\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ item?.subTipoAuditoria?.nome }}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tAuditores:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{ item?.nomeAuditor }}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tUnidades Gestoras:\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ item?.unidadeGestora?.sigla }}-{{\r\n\t\t\t\t\t\t\t\t\titem?.unidadeGestora?.nome\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t

Matriz de planejamento  

\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tNenhum registro encontrado\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tSubtipo:\r\n\t\t\t\t\t\t\t\t

{{ subtipo?.nome }}

\r\n\t\t\t\t\t\t\t
\r\n
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tMatriz:\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t{{ matriz?.matrizPlanejamento?.nome }}\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tQuestão:\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t{{ item?.questao?.nome }}\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Custos e Recursos  

\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tNenhum registro encontrado\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tItem:\r\n\t\t\t\t\t\t\t

{{ item?.nome }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tValor Unitário:\r\n\t\t\t\t\t\t\t

{{ formatarInput(item?.valorUnitario) }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tQuantidade:\r\n\t\t\t\t\t\t\t

{{ item?.quantidade }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t Valor Total:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\tformatarInput(\r\n\t\t\t\t\t\t\t\t\t\titem?.quantidade * item?.valorUnitario\r\n\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Cronograma  

\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tNenhum registro encontrado\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tFase de Atividade:\r\n\t\t\t\t\t\t\t\t

{{ fase?.nome }}

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tDias planejados:\r\n\t\t\t\t\t\t\t\t

{{ fase?.quantidadeDias }}

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tAtividade:\r\n\t\t\t\t\t\t\t\t\t

{{ atividade?.nome }}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tDias Planejados:\r\n\t\t\t\t\t\t\t\t\t

{{ atividade?.quantidadeDias }}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tSubAtividade:\r\n\t\t\t\t\t\t\t\t\t

{{ sub?.nome }}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tDias Planejados:\r\n\t\t\t\t\t\t\t\t\t

{{ sub?.quantidadeDias }}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Amostra  

\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tNenhum registro encontrado\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tNome:\r\n\t\t\t\t\t\t\t

{{ amostra?.nome }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tDescrição:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{ amostra?.descricao }}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tUnidade(s) gestora(s):\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ ug?.unidadeGestora?.sigla }}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tArquivos:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{ arquivo?.nome }}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

Solicitação técnica  

\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tNenhum registro encontrado\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tAssociado a:\r\n\t\t\t\t\t\t\t\t\t

{{ model?.opa?.numero }}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tNº Solicitação Técnica:\r\n\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t{{ solicitacao?.numero }}\r\n\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t

-

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tPrazo:\r\n\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\tsolicitacao?.prazo\r\n\t\t\t\t\t\t\t\t\t\t\t\t| date: \"shortDate\"\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tStatus:\r\n\t\t\t\t\t\t\t\t\t

{{ solicitacao?.status?.descricao }}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tAssunto:\r\n\t\t\t\t\t\t\t\t\t

{{ solicitacao?.assunto }}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tUnidade Gestora:\r\n\t\t\t\t\t\t\t\t\t

{{ ug?.siglaUg }} - {{ ug?.nomeUg }}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tResponsável:\r\n\t\t\t\t\t\t\t\t\t

{{ ug?.nomeAuditor }}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tItem Nº: \r\n\t\t\t\t\t\t\t\t\t

{{ item?.numero }}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tTitulo:\r\n\t\t\t\t\t\t\t\t\t\t

{{ item?.titulo }}

\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tDescrição:\r\n\t\t\t\t\t\t\t\t\t\t

{{ item?.descricao }}

\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tArquivos do Item:\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

{{ anexo?.nomeArquivo }}

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tDescrição da Resposta:\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t\t{{ item?.resposta?.descricao }}\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t\tNÃO RESPONDIDO\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tArquivos da Resposta:\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t

{{ anexo?.nomeArquivo }}

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Aprovações  

\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tNenhum registro encontrado\r\n\t\t\t\t\t 0\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t\t{{ item?.nome }}({{ item?.papel }})\r\n\t\t\t\t\t\t\t\t\t\taprovou.\r\n\t\t\t\t\t\t\t\t\t

    \r\n\r\n\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t\t{{ item?.nome }}({{ item?.papel }})\r\n\t\t\t\t\t\t\t\t\t\treprovou.\r\n\t\t\t\t\t\t\t\t\t

    \r\n\r\n\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t\t{{ item?.nome }}({{ item?.papel }})\r\n\t\t\t\t\t\t\t\t\t\tenviou para aprovação.\r\n\t\t\t\t\t\t\t\t\t

    \r\n\r\n\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t\t{{ item?.nome }}({{ item?.papel }})\r\n\t\t\t\t\t\t\t\t\t\thomologou.\r\n\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IMatrizPlanejamentoModel } from 'src/app/models/matriz-planejamento.model';\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { MatrizPlanejamentoService } from 'src/app/services/matriz-planejamento.service';\r\nimport { PlanejamentoService } from 'src/app/services/planejamento.service';\r\n\r\n@Component({\r\n selector: 'app-matriz-planejamento-visualizar',\r\n templateUrl: './matriz-planejamento-visualizar.component.html',\r\n styleUrls: ['./matriz-planejamento-visualizar.component.scss'],\r\n})\r\nexport class MatrizPlanejamentoVisualizarComponent implements OnInit {\r\n idParam: number;\r\n public lista: ISubtipoAuditoriaModel[] = new Array();\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private localeService: BsLocaleService,\r\n private planejamentoService: PlanejamentoService\r\n ) { }\r\n\r\n async ngOnInit() {\r\n this.localeService.use('pt-br');\r\n\r\n const id = this.route.snapshot.paramMap.get('id');\r\n\r\n if (id) {\r\n this.idParam = parseInt(id, 10);\r\n }\r\n\r\n await this.obterDados();\r\n }\r\n\r\n public async obterDados() {\r\n try {\r\n const id = this.route.snapshot.paramMap.get('id');\r\n const idParam = parseInt(id, 10);\r\n await this.planejamentoService.obterAbaMatrizPorIdImprimir(7, idParam).then((res) => {\r\n if (res.sucesso) {\r\n this.lista = res.dados;\r\n console.log(this.lista);\r\n }\r\n }\r\n );\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n this.router.navigate([`/planejamento/${this.idParam}/planejar`]);\r\n }\r\n }\r\n\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate([`/planejamento/${this.idParam}/planejar`]);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{subTipoAuditoria.nome}} - {{subTipoMatriz.matrizPlanejamento.nome}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
QUESTÕES DE AUDITORIACLASSIFICAÇÃO DA QUESTÃOINFORMAÇÕES REQUERIDAS / FONTES DE INFORMAÇÃOLEGISLAÇÃO APLICÁVELPOSSÍVEIS CONSTATAÇÕESPROCEDIMENTOSDETALHAMENTO DOS PROCEDIMENTOSTÉCNICAS
\r\n

{{ auxQuestao.questao.nome }}

\r\n

\r\n
\r\n

\r\n
\r\n

\r\n
\r\n

\r\n
\r\n

\r\n {{auxConstatacao.constatacao.nome}}\r\n

\r\n
\r\n

\r\n {{auxProcedimentoAuditoria.procedimentoAuditoria.nome}}\r\n

\r\n
\r\n

\r\n \r\n

\r\n
\r\n

\r\n \r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
","import { MatTableDataSource } from '@angular/material/table';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Component, OnInit, Inject, ViewChild, AfterViewInit } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort, MatSortable } from '@angular/material/sort';\r\nimport { DateHelper } from 'src/app/core/helpers/date.helper';\r\nimport { IPlanejamentoEquipeModel } from 'src/app/models/planejamento-equipe.model';\r\nimport { IAuditorCoordenacaoModel } from 'src/app/models/auditor-coordenacao.model';\r\nimport { ITipoAuditoriaModel } from 'src/app/models/tipo-auditoria.model';\r\nimport { IPlanejamentoEquipeAuditorModel } from 'src/app/models/planejamento-equipe-auditor.model';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-alocar-equipe-planejamento',\r\n templateUrl: './modal-alocar-equipe-planejamento.component.html',\r\n styleUrls: ['./modal-alocar-equipe-planejamento.component.scss'],\r\n})\r\nexport class ModalAlocarEquipePlanejamentoComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n @ViewChild('tabela1') public tabela1: MatSort;\r\n @ViewChild('tabela2') public tabela2: MatSort;\r\n\r\n public model = {} as IPlanejamentoEquipeModel;\r\n public auditores = [] as IAuditorCoordenacaoModel[];\r\n public tipoAuditoria = {} as ITipoAuditoriaModel;\r\n public auditoresTipoAuditoria = [] as IAuditorCoordenacaoModel[];\r\n public coordenacaoNome: string;\r\n public auditoresTipoAuditoriaDataSource = new MatTableDataSource([]);\r\n public auditoresTipoAuditoriaSemDados = true;\r\n public submit = false;\r\n public novoAuditor: string;\r\n\r\n public auditoresOutrasCoordenacoesDataSource = new MatTableDataSource([]);\r\n public auditoresOutrasCoordenacoesSemDados = true;\r\n\r\n public auditoresConflito: IAuditorCoordenacaoModel[];\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n private dateHelper: DateHelper,\r\n @Inject(MAT_DIALOG_DATA) data\r\n ) {\r\n this.model = data.equipe;\r\n this.auditores = data.auditores;\r\n this.tipoAuditoria = data.tipoAuditoria;\r\n this.auditoresTipoAuditoria = data.auditoresTipoAuditoria;\r\n\r\n this.coordenacaoNome = this.tipoAuditoria?.coordenacao?.nome;\r\n\r\n if (this.model.dataInicio != null) {\r\n this.model.dataInicio = new Date(this.model.dataInicio);\r\n }\r\n\r\n if (this.model.dataFim != null) {\r\n this.model.dataFim = new Date(this.model.dataFim);\r\n }\r\n\r\n // remover os auditores da coordenação do tipo da auditoria da listagem completa de auditores\r\n this.auditoresTipoAuditoria.forEach(auditorTipoAuditoria => {\r\n this.auditores = this.auditores.filter(auditor => {\r\n return auditor.auditorId !== auditorTipoAuditoria.auditorId;\r\n });\r\n });\r\n\r\n this.marcarComoSelecionado(this.auditoresTipoAuditoria, this.model.auditores);\r\n this.marcarComoSelecionado(this.auditores, this.model.auditores);\r\n\r\n this.auditoresTipoAuditoria = this.auditoresTipoAuditoria.map(a => {\r\n var result = this.model.auditores.find(b => b.auditorId === a.auditorId)\r\n if(result?.auditorId) {\r\n a.selecionado = true;\r\n }\r\n return a;\r\n })\r\n\r\n this.auditoresTipoAuditoriaDataSource = new MatTableDataSource(this.auditoresTipoAuditoria);\r\n this.auditoresTipoAuditoriaSemDados = this.auditoresTipoAuditoriaDataSource.data.length === 0;\r\n this.auditoresTipoAuditoriaDataSource._updateChangeSubscription();\r\n\r\n\r\n this.auditoresOutrasCoordenacoesDataSource = new MatTableDataSource(this.auditores);\r\n this.auditoresOutrasCoordenacoesSemDados = this.auditoresOutrasCoordenacoesDataSource.data.length === 0;\r\n this.auditoresOutrasCoordenacoesDataSource._updateChangeSubscription();\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n ngAfterViewInit(): void {\r\n this.tabela1.sort({ id: 'nome', start: 'asc' } as MatSortable);\r\n this.auditoresTipoAuditoriaDataSource.sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'nome':\r\n return item.nomeAuditor;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n this.auditoresTipoAuditoriaDataSource.sort = this.tabela1;\r\n\r\n this.tabela2.sort({ id: 'nome', start: 'asc' } as MatSortable);\r\n this.auditoresOutrasCoordenacoesDataSource.sortingDataAccessor = (\r\n item,\r\n property\r\n ) => {\r\n switch (property) {\r\n case 'nome':\r\n return item.nomeAuditor;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n this.auditoresOutrasCoordenacoesDataSource.sort = this.tabela2;\r\n }\r\n\r\n public async concluir() {\r\n this.submit = true;\r\n this.model.dataInicio = this.dateHelper.truncateDate(this.model.dataInicio);\r\n this.model.dataFim = this.dateHelper.truncateDate(this.model.dataFim);\r\n\r\n if (!this.model.dataInicio || !this.model.dataFim) {\r\n return;\r\n }\r\n\r\n if (this.model.dataInicio.getTime() > this.model.dataFim.getTime()) {\r\n this.exibirMensagemAlerta('Data inicial não pode ser maior que a data final');\r\n return;\r\n }\r\n\r\n let auditoresSelecionados = this.auditoresTipoAuditoriaDataSource.data.filter(d => d.selecionado);\r\n auditoresSelecionados = auditoresSelecionados.concat(this.auditoresOutrasCoordenacoesDataSource.data.filter(d => d.selecionado));\r\n\r\n // verifica se os auditores anteriores continuam selecionados\r\n this.model.auditores = this.model.auditores.filter(auditor => {\r\n return auditoresSelecionados.filter(as => as.auditorId === auditor.auditorId).length > 0;\r\n });\r\n\r\n // remove os autidores que já estavam na equipe\r\n auditoresSelecionados = auditoresSelecionados.filter(auditor => {\r\n return this.model.auditores.filter(a => a.auditorId === auditor.auditorId).length === 0;\r\n });\r\n\r\n // contem algum auditor selecionado\r\n let auditoresQueEstavamAnteriormente = this.model.auditores.filter(auditor => {\r\n return auditoresSelecionados.filter(a => a.auditorId === auditor.auditorId).length === 0;\r\n });\r\n\r\n if (auditoresSelecionados.length === 0 && auditoresQueEstavamAnteriormente.length == 0) {\r\n this.exibirMensagemAlerta('Informe algum Auditor');\r\n return;\r\n }\r\n if (auditoresSelecionados.length !== 0) {\r\n auditoresSelecionados.forEach(auditor => {\r\n const novoAuditor = { auditorId: auditor.auditorId, nomeAuditor: auditor.nomeAuditor, planejamentoEquipeId: this.model.planejamentoId } as IPlanejamentoEquipeAuditorModel;\r\n this.model.auditores.push(novoAuditor);\r\n });\r\n }\r\n this.dialogRef.close(this.model);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n private marcarComoSelecionado(auditores: IAuditorCoordenacaoModel[], auditoresSelecionados: IPlanejamentoEquipeAuditorModel[]){\r\n auditores.forEach(auditor => {\r\n auditor.selecionado = auditoresSelecionados.filter(as => as.auditorId === auditor.auditorId).length > 0;\r\n });\r\n }\r\n\r\n private exibirMensagemAlerta(mensagem: string) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: mensagem,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Alocar Equipe

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n Auditores da {{coordenacaoNome}} \r\n {{element.nomeAuditor}} \r\n \r\n \r\n
\r\n
Nenhum\r\n Auditor para o Tipo de Auditoria
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n Auditores de outras Coordenações \r\n {{element.nomeAuditor}}
\r\n
Nenhum Auditor de outras Coordenações
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\n\r\n@Component({\r\n selector: 'app-modal-ug-planejamento',\r\n templateUrl: './modal-ug-planejamento.component.html',\r\n styleUrls: ['./modal-ug-planejamento.component.scss']\r\n})\r\nexport class ModalUgPlanejamentoComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = false;\r\n public displayedColumns = ['selecao', 'sigla', 'nome'];\r\n public elementosSelecionados = false;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.dataSource = new MatTableDataSource(data);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.filterPredicate = (data: { nome: string, sigla: string }, filterValue: string) => {\r\n return (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1 || (data.sigla || '').trim().toLowerCase().indexOf(filterValue) !== -1;\r\n };\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public filtrar(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public selecionarTodos() {\r\n this.dataSource.data.forEach(d => d.selecionado = !this.elementosSelecionados);\r\n this.elementosSelecionados = !this.elementosSelecionados;\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.dataSource.data.filter(d => d.selecionado));\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Adicionar Unidades Gestoras

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Id {{element.id}} Sigla {{element.sigla}} Nome {{element.nome}}
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { ManterMatrizPlanejamentoService } from 'src/app/services/manter-matriz-planejamento.service';\r\nimport { IPlanejamentoUGSubtipoSalvarModel, IUgSubtipoModel } from './../../models/planejamento-subtipo-auditoria.model';\r\nimport { Component, OnInit, ViewChild, AfterViewInit, Output, EventEmitter, AfterContentChecked } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IPlanejamentoModel } from 'src/app/models/planejamento.model';\r\nimport { IPlanejamentoSubtipoAuditoriaModel } from 'src/app/models/planejamento-subtipo-auditoria.model';\r\nimport { IPlanejamentoUnidadeGestoraModel } from 'src/app/models/planejamento-unidade-gestora.model';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\nimport { IPlanejamentoEquipeModel } from 'src/app/models/planejamento-equipe.model';\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { IAuditorCoordenacaoModel } from 'src/app/models/auditor-coordenacao.model';\r\nimport { ICustoRecursoPlanejamentoModel } from 'src/app/models/custo-recurso-planejamento.model';\r\nimport { PlanejamentoService } from 'src/app/services/planejamento.service';\r\nimport { CoordenacaoService } from 'src/app/services/coordenacao.service';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport { SubtipoAuditoriaService } from 'src/app/services/subtipo-auditoria.service';\r\nimport { TipoAuditoriaService } from 'src/app/services/tipo-auditoria.service';\r\nimport { PaaService } from 'src/app/services/paa.service';\r\nimport { IPlanejamentoEquipeAuditorModel } from 'src/app/models/planejamento-equipe-auditor.model';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { ModalConfirmarInativacaoComponent } from 'src/app/shared/components/modal-confirmar-inativacao/modal-confirmar-inativacao.component';\r\nimport { ModalUgPlanejamentoComponent } from './modal-ug-planejamento/modal-ug-planejamento.component';\r\nimport { ModalAlocarEquipePlanejamentoComponent } from 'src/app/pages/planejamento-form/modal-alocar-equipe/modal-alocar-equipe-planejamento.component';\r\nimport { DateHelper } from 'src/app/core/helpers/date.helper';\r\nimport Swal from 'sweetalert2';\r\nimport { toFormatValue, toRemoveCharacters} from 'src/app/shared/util/toFormatValue';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { IRelatoriaCapituloModel } from 'src/app/models/relatoria-capitulo.model';\r\nimport { IModeloRelatoria } from 'src/app/shared/components/relatoria/relatoria.component';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { AbaMatrizPlanejamentoComponent } from 'src/app/shared/components/aba-matriz-planejamento/aba-matriz-planejamento.component';\r\n\r\n@Component({\r\n selector: 'app-planejamento-form',\r\n templateUrl: './planejamento-form.component.html',\r\n styleUrls: ['./planejamento-form.component.scss'],\r\n})\r\nexport class PlanejamentoFormComponent extends BaseFormComponent implements OnInit, AfterViewInit {\r\n //Informações Básicas\r\n public model: IPlanejamentoModel = {} as IPlanejamentoModel;\r\n public modelPlanejamentoSubtipoAuditoria: IPlanejamentoSubtipoAuditoriaModel = {} as IPlanejamentoSubtipoAuditoriaModel;\r\n public modelPlanejamentoUnidadeGestora: IPlanejamentoUnidadeGestoraModel = {} as IPlanejamentoUnidadeGestoraModel;\r\n public coordenadoresAuditoria = [] as IAuditorCoordenacaoModel[];\r\n public subtipoDataSource = new MatTableDataSource([]);\r\n public unidadeGestoraDataSource = new MatTableDataSource([]);\r\n public auditoresDataSource = new MatTableDataSource([]);\r\n public subtipoSemDados = true;\r\n public unidadeGestoraSemDados = true;\r\n public auditoresSemDados = true;\r\n public numeroOpa: string;\r\n public displayedColumnsUg: string[] = ['ug', 'subtipo', 'actions'];\r\n public dadosObtidosPlanejamento: IPlanejamentoEquipeModel = {} as IPlanejamentoEquipeModel;\r\n public hiddenEdicao: boolean = false;\r\n\r\n public relatoriaDados: IRelatoriaCapituloModel[] = null;\r\n public modelRelatoria: IModeloRelatoria = {} as IModeloRelatoria;\r\n @Output() public handlerInit: EventEmitter = new EventEmitter();\r\n\r\n @ViewChild('TableOnePaginator', {static: true}) tableOnePaginator: MatPaginator;\r\n @ViewChild('tabela1', {static: true}) tabela1: MatSort;\r\n\r\n @ViewChild('TableTwoPaginator', {static: true}) tableTwoPaginator: MatPaginator;\r\n @ViewChild('tabela2', {static: true}) tabela2: MatSort;\r\n @ViewChild(AbaMatrizPlanejamentoComponent, { static: true }) abaMatrizPlanejamento : AbaMatrizPlanejamentoComponent;\r\n\r\n // Custos e Recursos\r\n public modelCustoRecursoPlanejamento: ICustoRecursoPlanejamentoModel = {} as ICustoRecursoPlanejamentoModel;\r\n public custoRecursoColunas = ['selecao', 'nome', 'valorUnitario', 'quantidade', 'valorTotal'];\r\n public custoRecursoPlanejamentoDataSource = new MatTableDataSource([]);\r\n public custoRecursoPlanejamentoSemDados = true;\r\n public searchAtivo = true;\r\n public permissoes: IPermissaoModel;\r\n public statusPlanejamento: number;\r\n \r\n\r\n public formCustoRecurso = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n valorUnitario: new FormControl('', Validators.required),\r\n quantidade: new FormControl('', Validators.required),\r\n });\r\n\r\n public aba = 0;\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n periodoId: new FormControl(null, Validators.required),\r\n origemAuditoria: new FormControl('', Validators.required),\r\n indicadorId: new FormControl(null, Validators.required)\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private planejamentoService: PlanejamentoService,\r\n private subtipoAuditoriaService: SubtipoAuditoriaService,\r\n private coordenacaoService: CoordenacaoService,\r\n private tipoAuditoriaService: TipoAuditoriaService,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n private paaService: PaaService,\r\n public matDialog: MatDialog,\r\n private dateHelper: DateHelper,\r\n private serviceMatriz: ManterMatrizPlanejamentoService,\r\n private activatedRoute: ActivatedRoute,\r\n private authService: AuthService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.titulo = 'Planejar';\r\n }\r\n\r\n\r\n async ngOnInit() {\r\n this.setarPermissoes();\r\n await this.obterDados();\r\n const numeroAba = this.activatedRoute.snapshot.queryParamMap.get('aba');\r\n if (numeroAba) { this.mudarAba(Number(numeroAba)); }\r\n this.router.url.includes(\"aba=6\") ? this.mudarAba(6) : null;\r\n if(window?.history?.state?.aba) this.mudarAba(window.history.state.aba)\r\n }\r\n \r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.enviarParaAprovacao = this.authService.possuiPermissao(EnumRecursoPerfil.Planejamento, EnumAcaoRecurso.EnviarParaAprovacao);\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n\r\n }\r\n\r\n // Informações Básicas\r\n public async obterDados() {\r\n\r\n try {\r\n this.obterCoordenadoresAuditoria();\r\n this.planejamentoService.obterPorId(this.id).then((res) => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n this.numeroOpa = res.dados.opa.numero;\r\n this.statusPlanejamento = res.dados.status.codigo;\r\n if(this.statusPlanejamento == 2 || this.statusPlanejamento == 4)\r\n this.hiddenEdicao = true;\r\n this.popularListasInformacoesBasicas(this.model);\r\n\r\n // listagem subtipos\r\n this.subtipoDataSource = new MatTableDataSource(this.model.planejamentoSubTipoAuditoria);\r\n this.subtipoDataSource.sort = this.tabela1;\r\n this.subtipoDataSource.paginator = this.tableOnePaginator;\r\n this.subtipoDataSource._updateChangeSubscription();\r\n this.subtipoSemDados = this.subtipoDataSource.filteredData.length === 0;\r\n\r\n } else {\r\n this.submit = false;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/planejamento']);\r\n return;\r\n }\r\n });\r\n this.obterAlocarEquipe();\r\n } catch (err) {\r\n this.submit = false;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem?.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/planejamento']);\r\n }\r\n }\r\n\r\n public obterAlocarEquipe() {\r\n this.planejamentoService.obterAlocarEquipe(this.id).then(res => {\r\n var result: any[] = res.dados as unknown as any[]\r\n var auditores = [];\r\n if(result.length > 0) {\r\n result.forEach(a=> auditores.push({ auditorId: a?.auditorId, nomeAuditor: a?.nomeAuditor ?? a.id, id: a?.id }));\r\n }\r\n this.model.planejamentoEquipe = {dataInicio: res.dados[0]?.dataInicio, dataFim: res.dados[0]?.dataFim, auditores} as IPlanejamentoEquipeModel;\r\n this.dadosObtidosPlanejamento = {dataInicio: res.dados[0]?.dataInicio, dataFim: res.dados[0]?.dataFim, auditores} as IPlanejamentoEquipeModel;\r\n\r\n this.auditoresDataSource = new MatTableDataSource(this.model.planejamentoEquipe.auditores);\r\n this.auditoresDataSource.sort = this.tabela2;\r\n this.auditoresDataSource.paginator = this.tableTwoPaginator;\r\n this.auditoresDataSource._updateChangeSubscription();\r\n this.auditoresSemDados = this.auditoresDataSource.filteredData.length === 0;\r\n\r\n if (this.model.planejamentoEquipe.auditores.length > 0) {\r\n this.obterDispensasPorPeriodo(false);\r\n }\r\n\r\n });\r\n }\r\n\r\n formatarInput(value) {\r\n return toFormatValue(value);\r\n }\r\n\r\n public popularListasInformacoesBasicas(model: IPlanejamentoModel){\r\n this.model.unidadeGestora = [] as IPlanejamentoUnidadeGestoraModel[];\r\n this.model.planejamentoEquipe = { auditores: [] as IPlanejamentoEquipeAuditorModel[] } as IPlanejamentoEquipeModel;\r\n if (model.unidadeGestora) model.unidadeGestora = [] as IPlanejamentoUnidadeGestoraModel[];\r\n if (!model.planejamentoEquipe) model.planejamentoEquipe = { auditores: [] as IPlanejamentoEquipeAuditorModel[] } as IPlanejamentoEquipeModel;\r\n }\r\n\r\n\r\n public obterCoordenadoresAuditoria(){\r\n this.coordenacaoService\r\n .obterCoordenadoresAtivos()\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.coordenadoresAuditoria = res.dados;\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public async onSubmitInformacoesBasicas() {\r\n this.submit = true;\r\n this.model.planejamentoSubTipoAuditoria = this.subtipoDataSource.data;\r\n this.model.unidadeGestora = this.unidadeGestoraDataSource.data;\r\n try{\r\n const res = await this.planejamentoService.atualizar(this.model)\r\n if(res.sucesso){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }else{\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n };}catch(err){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public excluirElementoSubtipo(indice: number) {\r\n this.auditoresDataSource.data.splice(indice, 1);\r\n this.auditoresDataSource._updateChangeSubscription();\r\n this.auditoresSemDados = this.auditoresDataSource.filteredData.length === 0;\r\n }\r\n\r\n public excluirSubtipo(element: number, subtipoId: number) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = { titulo: 'Tem certeza que deseja excluir esse registro?' };\r\n const modal = this.matDialog.open(\r\n ModalConfirmarInativacaoComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n const subtipo = this.subtipoDataSource.data[element];\r\n subtipo.justificativa = data;\r\n subtipo.excluido = true;\r\n this.planejamentoService.excluirSubtipoAuditoria(this.id, subtipoId, { Justificativa: data }).then(res => {\r\n if (res.sucesso) {\r\n this.abaMatrizPlanejamento.excluirRegistro(subtipoId);\r\n this.exibirMensagemSucesso(' Subtipo, desvinculado com sucesso!'); \r\n } else {\r\n this.exibirMensagemErro(' Ocorreu um erro!');\r\n }\r\n })\r\n this.handlerInit.next(true);\r\n this.atualizarSubtipos();\r\n }\r\n });\r\n }\r\n\r\n private atualizarSubtipos(){\r\n this.subtipoDataSource = new MatTableDataSource(this.model.planejamentoSubTipoAuditoria);\r\n this.subtipoDataSource.sort = this.tabela1;\r\n this.subtipoDataSource.paginator = this.tableOnePaginator;\r\n this.subtipoDataSource._updateChangeSubscription();\r\n this.subtipoSemDados = this.subtipoDataSource.filteredData.length === 0;\r\n }\r\n\r\n public async exibirModalSubtipo(){\r\n try {\r\n\r\n const res = await this.subtipoAuditoriaService.obterAtivos();\r\n if (res.sucesso) {\r\n\r\n // Deixar subtipos selecionados\r\n const getSubtiposSelecionados: ISubtipoAuditoriaModel[] = res.dados.map(a => {\r\n let subtipoSelecionado = this.subtipoDataSource.data.find(b => b?.subTipoAuditoria?.id === a?.id);\r\n let subtipoJustificativa = this.subtipoDataSource.data.find(b => b?.subTipoAuditoria?.id === a?.id)?.justificativa;\r\n if(subtipoJustificativa) a.justificativa = subtipoJustificativa;\r\n if(subtipoSelecionado?.subTipoAuditoria?.id) a.selecionado = true;\r\n return a;\r\n });\r\n\r\n // Remover subtipos da listagens quando tiver justificativa\r\n const getSubtiposSemJustificativa: ISubtipoAuditoriaModel[] = getSubtiposSelecionados.filter(a => {\r\n if (!a?.justificativa) {\r\n return a;\r\n }\r\n })\r\n\r\n const modal = this.exibirModalMultiselect('Adicionar Subtipo', getSubtiposSemJustificativa, 'Salvar');\r\n modal.afterClosed().subscribe((data: ISubtipoAuditoriaModel[]) => {\r\n if (data) {\r\n if (Array.isArray(data)) {\r\n let subtiposAuditoriaSelecionados: ISubtipoAuditoriaModel[] = data;\r\n var subtipoAuditoria: number[] = subtiposAuditoriaSelecionados.map(x => x.id);\r\n this.planejamentoService.salvarSubtipoAuditoria(this.id, { subtipoAuditoria }).then(res => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(' Subtipo, vinculado com sucesso!');\r\n this.abaMatrizPlanejamento.obter();\r\n\r\n } else {\r\n this.exibirMensagemErro(' Ocorreu um erro!');\r\n }\r\n });\r\n this.obterDados();\r\n this.atualizarSubtipos();\r\n this.ngOnInit();\r\n }\r\n }\r\n });\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public async exibirModalUnidadeGestora() {\r\n try {\r\n\r\n const res = await this.unidadeGestoraService.obterAtivos();\r\n if (res.sucesso) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = res.dados;\r\n const modal = this.matDialog.open(\r\n ModalUgPlanejamentoComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n let unidadeGestoraSelecionados = [] as IUnidadeGestoraModel[];\r\n unidadeGestoraSelecionados = data.map(d => (d as IUnidadeGestoraModel));\r\n unidadeGestoraSelecionados.forEach(x => this.model.unidadeGestora.push({unidadeGestoraId: x.id, unidadeGestora: x} as IPlanejamentoUnidadeGestoraModel));\r\n\r\n if (this.unidadeGestoraDataSource.data.map(x=> unidadeGestoraSelecionados.find(z=> z.id == x.unidadeGestoraId)).length > 0) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Unidade gestora já cadastrada nesse planejamento',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n }\r\n this.atualizarUnidadeGestora();\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public unidadeGestoraSelecionada(event: any[]) {\r\n let UgSubTipo: IPlanejamentoUGSubtipoSalvarModel = {\r\n ugSubTipo: event.map(a => { return { unidadeGestoraId: a?.unidadeGestora?.id, subTipoAuditoriaId: a?.subtipoAuditoria?.subTipoAuditoria?.id ?? a?.subtipoAuditoria?.id}})\r\n } as IPlanejamentoUGSubtipoSalvarModel;\r\n\r\n (async () => {\r\n const res = await this.planejamentoService.salvarUgSubtipo(this.id, UgSubTipo);\r\n res.sucesso ? this.exibirMensagemSucesso(' Item adicionado com sucesso!') : this.exibirMensagemErro(' Ocorreu um erro!');\r\n this.obterDados();\r\n })()\r\n }\r\n\r\n public excluirUg(event: any) {\r\n this.planejamentoService.desvincularUgSubtipo(this.id, event.subtipoId, event.ugId).then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(' UG desvinculada com sucesso!')\r\n } else {\r\n this.exibirMensagemErro(' Ocorreu um erro!')\r\n }\r\n }).catch(() => this.exibirMensagemErro(' Ocorreu um erro!'))\r\n this.obterDados();\r\n }\r\n\r\n private atualizarAuditores(salvar: boolean){\r\n this.auditoresDataSource = new MatTableDataSource(this.model.planejamentoEquipe.auditores);\r\n this.auditoresDataSource.sort = this.tabela2;\r\n this.auditoresDataSource.paginator = this.tableTwoPaginator;\r\n this.auditoresDataSource._updateChangeSubscription();\r\n this.auditoresSemDados = this.auditoresDataSource.filteredData.length === 0;\r\n\r\n if (salvar)this.planejamentoService\r\n .salvarAlocarEquipe(this.id, { auditorId: this.auditoresDataSource.data.map(a => a.auditorId ), dataFim: this.model.planejamentoEquipe.dataFim , dataInicio: this.model.planejamentoEquipe.dataInicio })\r\n .then(res => {\r\n res.sucesso ? this.exibirMensagemSucesso(' Equipe, vinculada com sucesso!') : this.exibirMensagemErro(' Ocorreu um erro!');\r\n }).finally(() => this.obterAlocarEquipe());\r\n }\r\n\r\n public obterDispensasPorPeriodo(salvar: boolean) {\r\n this.paaService\r\n .obterDispensasPeriodo(this.dateHelper.toString(this.model.planejamentoEquipe.dataInicio), this.dateHelper.toString(this.model.planejamentoEquipe.dataFim))\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model.planejamentoEquipe.auditores.forEach(auditor => {\r\n auditor.indisponivelPeriodo = res.dados.filter(a => a.auditor.auditorId === auditor.auditorId).length > 0;\r\n });\r\n }\r\n })\r\n .finally(() => {\r\n this.atualizarAuditores(salvar);\r\n });\r\n }\r\n\r\n public async exibirModalAlocarEquipe() {\r\n try {\r\n const auditoresTipoAuditoria = this.model.idTipoAuditoria === 0 ? [] as IAuditorCoordenacaoModel[] : (\r\n await this.tipoAuditoriaService.obterAuditoresCoordenacaoTipoAuditoria(this.model.idTipoAuditoria)\r\n ).dados;\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.maxHeight = '80vh';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n\r\n dialogConfig.data = { equipe: this.dadosObtidosPlanejamento, auditores: this.coordenadoresAuditoria, tipoAuditoria: this.model.opa?.tipoAuditoria, auditoresTipoAuditoria };\r\n const modal = this.matDialog.open(\r\n ModalAlocarEquipePlanejamentoComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.model.planejamentoEquipe = data;\r\n if (this.model.planejamentoEquipe.auditores.length > 0) {\r\n this.model.planejamentoEquipe.auditores = this.model.planejamentoEquipe.auditores.map(a => {\r\n let buscarAuditores = this.dadosObtidosPlanejamento.auditores.find(b => b.auditorId === a.auditorId);\r\n if (buscarAuditores.id) a.id = buscarAuditores.id;\r\n return a;\r\n })\r\n this.obterDispensasPorPeriodo(true);\r\n }\r\n }\r\n });\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public excluirAuditor(indice: number) {\r\n this.auditoresDataSource.data.splice(indice, 1);\r\n this.auditoresDataSource._updateChangeSubscription();\r\n this.auditoresSemDados = this.auditoresDataSource.filteredData.length === 0;\r\n }\r\n\r\n public desvincularAlocarEquipe(idEquipeAlocada: number) {\r\n Swal.fire({\r\n title: \"Excluir Registro\",\r\n text: \"Tem certeza que deseja excluir esse Registro?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then((res) => {\r\n if (res.value) {\r\n this.planejamentoService.desvincularAlocarEquipe(this.id, idEquipeAlocada)\r\n .then(res => {\r\n if(res.sucesso) {\r\n this.exibirMensagemSucesso(' Equipe, desvinculada com sucesso!');\r\n } else {\r\n this.exibirMensagemErro(' Ocorreu um erro!')\r\n }\r\n }).then(() => this.obterDados());\r\n }})\r\n }\r\n\r\n public excluirUnidadeGestora(indice: number) {\r\n this.unidadeGestoraDataSource.data.splice(indice, 1);\r\n this.unidadeGestoraDataSource._updateChangeSubscription();\r\n this.unidadeGestoraSemDados = this.unidadeGestoraDataSource.filteredData.length === 0;\r\n }\r\n\r\n private atualizarUnidadeGestora(){\r\n this.unidadeGestoraDataSource = new MatTableDataSource(this.model.unidadeGestora);\r\n this.unidadeGestoraDataSource._updateChangeSubscription();\r\n this.unidadeGestoraSemDados = this.unidadeGestoraDataSource.filteredData.length === 0;\r\n }\r\n // fim informações básicas\r\n\r\n\r\n public mudarAba(ind: number) {\r\n this.aba = ind;\r\n }\r\n\r\n public enviarParaAprovacao() {\r\n this.planejamentoService.enviarAprovacao(this.id).then((res) => {\r\n if(res.sucesso){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/planejamento']);\r\n }else{\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }).catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n\r\n }\r\n\r\n public onBack() {\r\n window.history.back()\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Planejamento\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n {{ titulo }}\r\n

\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n Subtipo\r\n \r\n {{ element?.subTipoAuditoria?.nome }}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n Nenhum Subtipo vinculado\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Equipe de Auditores \r\n \r\n {{element.nomeAuditor}} \r\n {{element.nomeAuditor}} \r\n \r\n
\r\n \r\n
\r\n
\r\n
Nenhum Auditor vinculado
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { UnidadeGestoraService } from './../../services/unidade-gestora.service';\r\nimport { CoordenacaoService } from './../../services/coordenacao.service';\r\nimport { FormBuilder } from '@angular/forms';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { SubtipoAuditoriaService } from './../../services/subtipo-auditoria.service';\r\nimport { TipoAuditoriaService } from './../../services/tipo-auditoria.service';\r\nimport { AfterViewInit, Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { IPlanejamentoModel } from 'src/app/models/planejamento.model';\r\nimport { PlanejamentoService } from 'src/app/services/planejamento.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { Router } from '@angular/router';\r\nimport Swal from 'sweetalert2';\r\nimport { ITipoAuditoriaModel } from 'src/app/models/tipo-auditoria.model';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { IOsaFiltroModel } from 'src/app/models/osa-filtro-model';\r\nimport { IAuditorCoordenacaoModel } from 'src/app/models/auditor-coordenacao.model';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\n\r\n@Component({\r\n selector: 'app-planejamento-list',\r\n templateUrl: './planejamento-list.component.html',\r\n styleUrls: ['./planejamento-list.component.scss']\r\n})\r\nexport class PlanejamentoListComponent extends BaseListComponent implements AfterViewInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IPlanejamentoModel;\r\n public displayedColumns: string[] = ['selecao', 'numero', 'orgaoAuditado', 'origem', 'ano', 'dataInicio', 'dataFim', 'status', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public filtroModel;\r\n public coordenadores = [] as IAuditorCoordenacaoModel[];\r\n public tiposAuditoria = [] as ITipoAuditoriaModel[];\r\n public subtiposAuditoria = [] as ISubtipoAuditoriaModel[];\r\n public unidadesGestoras = [] as IUnidadeGestoraModel[];\r\n public situacoes = [{codigo: 1, descricao: 'Todos'}, {codigo: 2, descricao: 'Ativos'}, {codigo: 3, descricao: 'Inativos'}] as IEnumModel[];\r\n public status = [{codigo: 1, descricao: 'Em Elaboração'}, {codigo: 2, descricao: 'Em Aprovação'}, {codigo: 3, descricao: 'Em Homologacao'}, {codigo: 4, descricao: 'Homologado'}, {codigo: 5, descricao: 'Elaborar'}, {codigo: 6, descricao: 'Em Execução'}]\r\n public origem = [{codigo: 1, descricao: 'Planejada'}, {codigo: 2, descricao: 'Especial'}]\r\n\r\n public form: FormGroup = this.fb.group({\r\n numeroOpa: [''],\r\n origemAuditoria: [''],\r\n tiposAuditoriaId: [''],\r\n unidadeGestora: [''],\r\n dataElaboracao: [''],\r\n dataInicio: [''],\r\n dataFim: [''],\r\n objeto: [''],\r\n subtipoAuditoria: [''],\r\n auditor: [''],\r\n coordenador: [''],\r\n status: [''],\r\n situacoes: [''],\r\n\r\n });\r\n\r\n public totalItens: number;\r\n public filtro: FiltroModel = {} as FiltroModel;\r\n public pageEvent: any;\r\n\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n public fb: FormBuilder,\r\n public planejamentoService: PlanejamentoService,\r\n public tipoAuditoriaService: TipoAuditoriaService,\r\n public subtipoAuditoriaService: SubtipoAuditoriaService,\r\n public coordenacaoService: CoordenacaoService,\r\n public unidadeGestoraService: UnidadeGestoraService,\r\n public router: Router,\r\n public authService: AuthService,\r\n ) {\r\n super();\r\n }\r\n \r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Planejamento, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Planejamento, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Planejamento, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Planejamento, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Planejamento, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Planejamento, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.planejar = this.authService.possuiPermissao(EnumRecursoPerfil.Planejamento, EnumAcaoRecurso.Planejar);\r\n }\r\n\r\n \r\n ngAfterViewInit(): void {\r\n this.configFiltro();\r\n this.buscar();\r\n }\r\n\r\n public pesquisar() {\r\n\r\n this.planejamentoService.obterFiltrado(this.form.value)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.totalItens = res.dados.totalItens;\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 3000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n private obterTiposAuditoria() {\r\n this.tipoAuditoriaService\r\n .obterAtivos()\r\n .then((res) => {\r\n this.tiposAuditoria = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n private obterUnidadesGestoras() {\r\n\r\n this.unidadeGestoraService\r\n .obterAtivos()\r\n .then((res) => {\r\n this.unidadesGestoras = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n private obterCoordenadores(){\r\n this.coordenacaoService\r\n .obterCoordenadoresAtivos()\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.coordenadores = res.dados;\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n private obterSubtiposAuditoria() {\r\n this.subtipoAuditoriaService\r\n .obterAtivos()\r\n .then((res) => {\r\n this.subtiposAuditoria = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n\r\n public buscar() {\r\n this.obterTiposAuditoria();\r\n this.obterSubtiposAuditoria();\r\n this.obterCoordenadores();\r\n this.obterUnidadesGestoras();\r\n\r\n this.selectedModel = null;\r\n\r\n this.planejamentoService\r\n .obterFiltrado(this.filtro)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 3000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/planejamento/${id}/visualizar`]);\r\n }\r\n\r\n public imprimir(id: number) {\r\n this.router.navigate([`/planejamento/${id}/imprimir`]);\r\n }\r\n\r\n public planejar(id: number){\r\n this.router.navigate([`/planejamento/${id}/planejar`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n\r\n configFiltro() {\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator?.pageSize;\r\n this.filtro.colunaOrder = \"Id\";\r\n this.filtro.direcao = this.sort?.direction;\r\n\r\n const filtrado = {};\r\n\r\n Object.keys(this.form.value).forEach(a => {\r\n if (this.form.value[a] && this.form.value[a] !== '' && this.form.value[a] !== null && this.form.value[a] !== undefined && Object.keys(this.form.value[a]).length > 0) {\r\n filtrado[a] = this.form.value[a];\r\n }\r\n });\r\n\r\n Object.assign(this.filtro, filtrado)\r\n }\r\n\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n }\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n\r\n this.buscar();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Planejamento
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Planejamento\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{ element.descricao }}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{ element.nome }}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{unidade.sigla}}\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{auditor.nomeAuditor}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{auditor.nomeAuditor}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{ status.descricao }}\r\n \r\n
\r\n
\r\n \r\n \r\n {{ situacao.descricao }}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Pesquisar\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nº OPA {{element?.numero}} UG Auditada {{element?.orgaoAuditado?.sigla}} Origem {{element?.origem?.descricao}} Ano {{element?.ano}} Data Inicio {{element?.dataInicio | date:'dd/MM/yyyy'}} Data Fim {{element?.dataFim | date:'dd/MM/yyyy'}} Status \r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { IPeaCriterioQuestionarioModel } from 'src/app/models/pea-criterio-questionario.model';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IQuestionarioModel } from 'src/app/models/questionario.model';\r\nimport { QuestionarioService } from 'src/app/services/questionario.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { IListaQuestionarioRespostaUGModel, IQuestionarioUGModel } from 'src/app/models/questionario-ug.model';\r\nimport { EntendendoEntidadeService } from 'src/app/services/entendendo-entidade.service';\r\nimport { FiltroQuestionarioUG } from 'src/app/models/filtro-questionario-ug.model';\r\nimport { SharedService } from \"../../services/shared.service\";\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n\r\n switch (property) {\r\n case 'nomefuncionalidade':\r\n return item.nomefuncionalidade.trim().toLowerCase();;\r\n case 'ug':\r\n return item.ugSigla.trim().toLowerCase();;\r\n case 'responsavel':\r\n return item.nomeResponsavel.trim().toLowerCase();;\r\n case 'dataEnvio':\r\n return item.dataCriacaoFormatada.trim().toLowerCase();;\r\n case 'dataPrazo':\r\n return item.dataPrazo.trim().toLowerCase();;\r\n default:\r\n return item[property];\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'app-pre-planejamento-list',\r\n templateUrl: './pre-planejamento-list.component.html',\r\n styleUrls: ['./pre-planejamento-list.component.scss']\r\n})\r\nexport class PrePlanejamentoListComponent extends BaseListComponent {\r\n\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IListaQuestionarioRespostaUGModel;\r\n public searchNome: string;\r\n public filtro = {} as FiltroQuestionarioUG;\r\n public displayedColumns: string[] = ['selecao', 'nomeFuncionalidade', 'siglaUG', 'responsavel', 'dataEnvio', 'dataPrazo', 'status'];\r\n public totalItens: number;\r\n public pageEvent: any;\r\n public semDados = true;\r\n private segmentoUrl: string;\r\n public documento: string;\r\n public isPEA: boolean;\r\n\r\n@ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n@ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private questionarioUGService: EntendendoEntidadeService,\r\n private router: Router,\r\n private toastr: ToastrService,\r\n private sharedService: SharedService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n this.filtro.pesquisa = this.searchNome;\r\n this.questionarioUGService\r\n .ObterQuestionarioPendente(this.filtro)\r\n .then((res) => {\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.totalItens = res.dados.totalItens;\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n }\r\n\r\n public responder(id : number) {\r\n if(this.selectedModel.tipoQuestionarioId === 11){\r\n this.router.navigate([`universo-auditavel-preechimento-form`]);\r\n this.sharedService.setParams(this.selectedModel.idUG, id, this.selectedModel.tipoUniversoId, 'preechimento-ug');\r\n }else{\r\n this.router.navigate([`questionario/pre-planejamento-resposta/${id}`]);\r\n\r\n }\r\n }\r\n public print(id : number){\r\n this.router.navigate([`questionario/pre-planejamento-resposta/${id}/imprimir`]);\r\n }\r\n\r\n public visualizarQuestionario(id: number) {\r\n this.router.navigate([`questionario/pre-planejamento-resposta/${id}/visualizar`]);\r\n }\r\n\r\n\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.documentoId ? item : null;\r\n }\r\n\r\n\r\n\r\n\r\n ngOnInit(): void {\r\n this.filtro.situacao = \"Todos\";\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t Lista de\r\n\t\t\t\t\t\t\tQuestionários\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t Responder\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t Visualizar\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t Imprimir\r\n\t\t\t\t\t\t\t\t \t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \t
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nome da Funcionalidade {{element.nomeFuncionalidade}} UG {{element.siglaUG}} Responsável {{element.responsavel}} Data de Envio {{element.dataEnvio}} Data Prazo {{element.dataPrazo}} Status {{element.status}}
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tNenhum questionário disponível\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-modal-concordar',\r\n templateUrl: './modal-concordar.component.html',\r\n styleUrls: ['./modal-concordar.component.scss']\r\n})\r\nexport class ModalConcordarComponent implements OnInit {\r\n\r\n constructor(public dialogRef: MatDialogRef) { }\r\n\r\n onConfirm(): void {\r\n // Ação de confirmação\r\n this.dialogRef.close(true);\r\n }\r\n\r\n onCancel(): void {\r\n // Ação de cancelamento\r\n this.dialogRef.close(false);\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","

\r\n warning\r\n Concordar com a(s) Resposta(s) Selecionada(s)?\r\n

\r\n\r\n\r\n

Caso confirme, todas as respostas serão finalizadas!

\r\n
\r\n\r\n\r\n \r\n \r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { EnumStatusAvaliacaoQuestionarioUG } from 'src/app/models/enum/status-avaliacao-questionario-ug.enum';\r\nimport { EnumTipoAvaliacaoQuestionarioUG } from 'src/app/models/enum/tipo-avaliacao-questionario-ug.enum';\r\nimport { EnumTipoDocumentoAprovacao } from 'src/app/models/enum/tipo-documento-aprovacao.enum';\r\nimport { EnumTipoQuestionarioUG } from 'src/app/models/enum/tipo-questionario-ug.enum';\r\nimport { AvaliacaoRequest } from 'src/app/models/questionario-ug.model';\r\nimport { QuestionarioUGRespostaService } from 'src/app/services/questionarioug-resposta.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\n\r\n@Component({\r\n selector: 'app-modal-contestar',\r\n templateUrl: './modal-contestar.component.html',\r\n styleUrls: ['./modal-contestar.component.scss']\r\n})\r\nexport class ModalContestarComponent extends BaseFormComponent implements OnInit {\r\n form: FormGroup; // Declarando o FormGroup\r\n opcoesAvaliacao = [\r\n { value: EnumStatusAvaliacaoQuestionarioUG.concordo, label: 'Concordo' },\r\n { value: EnumStatusAvaliacaoQuestionarioUG.concordoParcialmente, label: 'Concordo Parcialmente' },\r\n { value: EnumStatusAvaliacaoQuestionarioUG.discordo, label: 'Discordo' }\r\n ];\r\n EnumStatusAvaliacaoQuestionarioUG = EnumStatusAvaliacaoQuestionarioUG;\r\n avaliacao: AvaliacaoRequest;\r\n public titulo: string;\r\n htmlResposta: SafeHtml | undefined;\r\n perguntaOpcao: any;\r\n\r\n\r\n constructor(\r\n public route: ActivatedRoute,\r\n public toastr: ToastrService,\r\n public router: Router,\r\n public localeService: BsLocaleService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n private sanitizer: DomSanitizer,\r\n private fb: FormBuilder,\r\n private questionarioUGRespostaService: QuestionarioUGRespostaService,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.form = this.fb.group({\r\n pergunta: [this.data.pergunta],\r\n resposta: [this.data.resposta],\r\n tipoEntrada: [this.data.tipoEntrada],\r\n respostaRevisada: [''] , // Adicione o controle para resposta revisada\r\n statusAvaliacao: [null] // Adicione o controle para o select\r\n });\r\n\r\n this.perguntaOpcao = this.data.perguntaOpcao;\r\n\r\n // Log de debug para verificar mudanças no campo statusAvaliacao\r\n this.form.get('statusAvaliacao')?.valueChanges.subscribe((value) => {\r\n console.log('Valor selecionado:', value);\r\n if (value === '1') {\r\n console.log('Campo Resposta Revisada será ocultado.');\r\n }\r\n })\r\n\r\n if(this.data.tipoQuestionarioId == EnumTipoQuestionarioUG.EntendendoEntidade){\r\n this.titulo = \"Entendendo a Entidade \";\r\n }else if (this.data.tipoQuestionarioId == EnumTipoQuestionarioUG.MaturidadeRisco){\r\n this.titulo = \"Maturidade de gestão de risco\";\r\n }\r\n const respostaHTML = this.data.resposta;\r\n\r\n // Atualize o controle do formulário\r\n this.form.get('resposta')?.setValue(respostaHTML);\r\n\r\n // Sanitizar o HTML para exibição segura\r\n this.htmlResposta = this.sanitizer.bypassSecurityTrustHtml(respostaHTML);\r\n\r\n }\r\n\r\n config: AngularEditorConfig = {\r\n editable: true,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n // ['bold']\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n cancelar(){\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.data = { interno: true };\r\n this.matDialog.open(ModalCancelarComponent, dialogConfig).afterClosed();\r\n\r\n }\r\n salvar(salvarEFechar: boolean){\r\n const idsSelecionadosString: string = [this.data.ids].join(',');\r\n this.avaliacao = {\r\n statusAvaliacao: this.form.value.statusAvaliacao,\r\n texto: this.form.value.respostaRevisada,\r\n tipoAvaliacao: EnumTipoAvaliacaoQuestionarioUG.replica\r\n };\r\n\r\n this.questionarioUGRespostaService.fazerAvaliacaoOuReplica(idsSelecionadosString, this.avaliacao)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n if(salvarEFechar){\r\n this.dialogRef.close();\r\n }\r\n this.exibirMensagemSucesso('Avaliacao Realizada com Sucesso');\r\n window.location.reload();\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n\r\n}\r\n}\r\n","\r\n
\r\n
\r\n

{{titulo}} - Fornecer Réplica

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n Resposta Revisada \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{ item.nome }}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IResponsavelUnidadeGestoraModel } from 'src/app/models/responsavel-unidade-gestora.model';\r\nimport { QuestionarioUGRespostaService } from 'src/app/services/questionarioug-resposta.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-delegar',\r\n templateUrl: './modal-delegar.component.html',\r\n styleUrls: ['./modal-delegar.component.scss']\r\n})\r\nexport class ModalDelegarComponent implements OnInit {\r\n questionarioId: any;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n private questionarioUGService: QuestionarioUGRespostaService,\r\n public router: Router,\r\n public toastr: ToastrService,\r\n @Inject(MAT_DIALOG_DATA) data\r\n ) { \r\n this.model = data.dados;\r\n this.questionarioId = data.questionarioId;\r\n }\r\n\r\n public model: IResponsavelUnidadeGestoraModel;\r\n public idResponsavel;\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n\r\n async delegar() {\r\n this.questionarioUGService\r\n .DelegarQuestionario(this.questionarioId, this.idResponsavel)\r\n .then((res) => {\r\n this.dialogRef.close(true);\r\n }\r\n)}\r\n\r\n}\r\n","
\r\n \r\n
\r\n

Delegar Questionário

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Delegar\r\n \r\n \r\n \r\n
\r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { FormArray, FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IArquivoModel } from 'src/app/models/arquivo.model';\r\nimport { AvaliacaoRequest, IListaQuestionarioRespostaUGModel, QuestionarioUGItensResposta } from 'src/app/models/questionario-ug.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { EntendendoEntidadeService } from 'src/app/services/entendendo-entidade.service';\r\nimport { PerguntaService } from 'src/app/services/pergunta.service';\r\nimport { QuestionarioUGRespostaService } from 'src/app/services/questionarioug-resposta.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ModalDelegarComponent } from './modal-delegar/modal-delegar.component';\r\nimport { ResponsaveisService } from 'src/app/services/responsaveis.service ';\r\nimport { MatCheckboxChange } from '@angular/material/checkbox';\r\nimport { ModalContestarComponent } from './modal-contestar/modal-contestar.component';\r\nimport Swal from 'sweetalert2';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport { EnumStatusAvaliacaoQuestionarioUG } from 'src/app/models/enum/status-avaliacao-questionario-ug.enum';\r\nimport { EnumTipoAvaliacaoQuestionarioUG } from 'src/app/models/enum/tipo-avaliacao-questionario-ug.enum';\r\nimport { SelectionModel } from \"@angular/cdk/collections\";\r\nimport { SharedService } from \"../../services/shared.service\";\r\n\r\ninterface Question {\r\n question: string;\r\n responseType: string;\r\n status: string;\r\n formControlName: string;\r\n assignedTo?: string;\r\n}\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-pre-planejamento-resposta-form',\r\n templateUrl: './pre-planejamento-resposta-form.component.html',\r\n styleUrls: ['./pre-planejamento-resposta-form.component.scss']\r\n})\r\nexport class PrePlanejamentoRespostaFormComponent extends BaseFormComponent implements OnInit {\r\n public model= {} as IListaQuestionarioRespostaUGModel;\r\n formGroup: FormGroup;\r\n arquivo: File | null = null;\r\n //displayedColumns: string[] = ['checkbox', 'question', 'responseType', 'status', 'response', 'assignedTo'];\r\n displayedColumns: string[] = ['pergunta', 'tipoEntrada', 'status', 'nomeDelegadoA'];\r\n displayedColumnsName: string[] = ['Pergunta/Seção', 'Tipo de Entrada', 'Status', 'Delegado a']\r\n public dataSource = new MatTableDataSource([]);\r\n public dataSource2: any[] = [];\r\n imprimir: boolean;\r\n contestado: boolean = false;\r\n selectedItems: QuestionarioUGItensResposta[] = [];\r\n selectedIds: number[] = [];\r\n exibeCamposStatusEmReplica: boolean;\r\n habilitaBotaoFinalizar: boolean = false;\r\n avaliacao: AvaliacaoRequest;\r\n isDisabledStatusEmReplica: boolean = false;\r\n selection = new SelectionModel(true, []);\r\n tipoQuestionario: number;\r\n config: AngularEditorConfig = {\r\n editable: !this.visualizar,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n constructor(private fb: FormBuilder,\r\n private questionarioUGService: QuestionarioUGRespostaService,\r\n toastr: ToastrService,\r\n route: ActivatedRoute,\r\n router: Router,\r\n private authService: AuthService,\r\n localeService: BsLocaleService,\r\n private perguntaService: PerguntaService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private responsaveisService: ResponsaveisService,\r\n public matDialog: MatDialog,\r\n private sharedService: SharedService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n this.formGroup = this.fb.group({\r\n checkboxs: this.fb.array([]),\r\n respostas: this.fb.array([]),\r\n arquivos: this.fb.array([]) // Novo FormArray para os arquivos\r\n });\r\n this.unidadeGestoraId = 307;\r\n\r\n }\r\n private unidadeGestoraId = 307;\r\n\r\n\r\n ngOnInit(): void {\r\n this.buscar();\r\n this.tipoQuestionario = this.sharedService.getTipoQuestionario();\r\n this.route.data.subscribe(data => {\r\n this.imprimir = data['imprimir']; // Acesse o valor de imprimir dos dados da rota\r\n });\r\n }\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n\r\n async onSalvar(salvarEFechar: boolean) {\r\n const respostasFormArray = this.formGroup.get('respostas') as FormArray;\r\n this.dataSource.data.forEach((item, index) => {\r\n item.resposta = respostasFormArray.at(index).value;\r\n });\r\n const res = await this.questionarioUGService.salvarRespostasQuestionarioPorId(this.id, this.dataSource.data);\r\n if (res.sucesso) {\r\n if(salvarEFechar == true)\r\n {\r\n this.router.navigate([`/questionario/pre-planejamento`]);\r\n }\r\n else\r\n {\r\n this.exibirMensagemSucesso('Registro Salvo com Sucesso!')\r\n this.buscar();\r\n window.location.reload();\r\n }\r\n\r\n }\r\n else\r\n {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n\r\n }\r\n\r\n\r\nasync onEnviar(){\r\n const respostasFormArray = this.formGroup.get('respostas') as FormArray;\r\n this.dataSource.data.forEach((item, index) => {\r\n item.resposta = respostasFormArray.at(index).value;\r\n });\r\n\r\n this.questionarioUGService.enviarRespostasQuestionarioPorId(this.id, this.dataSource.data)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n\r\n this.router.navigate([`/questionario/pre-planejamento`]);\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n\r\n }\r\n onCancelar(){\r\n if(this.visualizar || this.imprimir){\r\n this.router.navigate([`/questionario/pre-planejamento`]);\r\n }else{\r\n Swal.fire({\r\n title: 'Atenção',\r\n text: \"Todas as informações preenchidas serão perdidas. Deseja continuar? \",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n if (res.value) {\r\n this.router.navigate([`/questionario/pre-planejamento`]);\r\n }\r\n })\r\n }\r\n }\r\n\r\n async modalDelegar(){\r\n const idsParaDelegar = this.selectedIds;\r\n const res = await this.responsaveisService.obter(\r\n this.model.idUG, '','','', true\r\n );\r\n\r\n const selectedItemIds = this.selectedItems.map(item => item.idItemQuestionario);\r\n\r\n if (res.sucesso) {\r\n try {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '500px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n questionarioId: idsParaDelegar,\r\n dados: res.dados,\r\n };\r\n\r\n const modal = this.matDialog.open(\r\n ModalDelegarComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe(async (result) => {\r\n if (result === true) {\r\n this.submit = true;\r\n this.buscar();\r\n this.exibirMensagemSucesso(\"Registro delegado com sucesso\");\r\n }\r\n });\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n }\r\n\r\n enviarArquivo(){\r\n\r\n }\r\n\r\n onConcordar(){\r\n\r\n let idsSelecionados: number[] = [];\r\n if(this.selectedIds.length > 0){\r\n idsSelecionados = this.selectedIds;\r\n }else{\r\n // @ts-ignore\r\n idsSelecionados = this.selection.selected.map(item => {\r\n if (item.idTipoSecaoOuPergunta != 1) {\r\n return item.idItemQuestionario;\r\n }\r\n return null;\r\n }).filter(id => id !== null);\r\n }\r\n\r\n if(!idsSelecionados || idsSelecionados.length == 0){\r\n this.exibirMensagemErro(\"Favor selecionar ao menos 1 pergunta.\")\r\n return false;\r\n }\r\n\r\n const idsSelecionadosString: string = idsSelecionados.join(',');\r\n this.avaliacao = {\r\n statusAvaliacao: EnumStatusAvaliacaoQuestionarioUG.concordo,\r\n texto: \"\",\r\n tipoAvaliacao: EnumTipoAvaliacaoQuestionarioUG.replica\r\n };\r\n\r\n Swal.fire({\r\n title: 'Atenção',\r\n text: \"Concordar com as respostas selecionadas? Caso confirme, todas serão finalizadas! \",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n if(res.isConfirmed)\r\n this.questionarioUGService.fazerAvaliacaoOuReplica(idsSelecionadosString, this.avaliacao)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Registro Atualizado com sucesso');\r\n this.buscar();\r\n this.selectedIds = [];\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n })\r\n\r\n }\r\n\r\n onContestar(){\r\n\r\n const idsSelecionados = this.selectedIds;\r\n const idsSelecionadosString: string = idsSelecionados.join(',');\r\n const perguntaSelecionada = this.model.respostas.find(item => idsSelecionados.includes(item.idItemQuestionario));\r\n // Verifica se há mais de uma pergunta selecionada\r\n if (idsSelecionados.length > 1) {\r\n this.exibirMensagemAlerta('Só pode ter um registro selecionado para contestar');\r\n return;\r\n }\r\n\r\n // Verifica se há pelo menos uma pergunta selecionada\r\n if (idsSelecionados.length === 0) {\r\n this.exibirMensagemAlerta('Selecione uma pergunta para contestar');\r\n return;\r\n }\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '1000px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n ids: idsSelecionadosString,\r\n pergunta: perguntaSelecionada.pergunta,\r\n resposta: perguntaSelecionada.resposta,\r\n tipoQuestionarioId: this.model.tipoQuestionarioId,\r\n tipoEntrada: perguntaSelecionada.tipoEntrada,\r\n perguntaOpcao: perguntaSelecionada.perguntaOpcao,\r\n tipoQuestionario: this.tipoQuestionario,\r\n idQuestionario: this.id\r\n };\r\n\r\n const modal = this.matDialog.open(ModalContestarComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if(data.success){\r\n // this.buscar();\r\n // window.location.reload();\r\n this.selection.clear();\r\n this.buscar();\r\n\r\n }\r\n })\r\n\r\n }\r\n\r\n onFinalizar(){\r\n\r\n let idsSelecionados: number[] = [];\r\n if(this.selectedIds.length > 0){\r\n idsSelecionados = this.selectedIds;\r\n }else{\r\n // @ts-ignore\r\n idsSelecionados = this.selection.selected.map(item => {\r\n if (item.idTipoSecaoOuPergunta != 1) {\r\n return item.idItemQuestionario;\r\n }\r\n return null;\r\n }).filter(id => id !== null);\r\n }\r\n const idsSelecionadosString: string = idsSelecionados.join(',');\r\n\r\n this.questionarioUGService.FinalizarPerguntaQuestionario(idsSelecionadosString)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(\"Registro finalizado com sucesso!\");\r\n this.buscar();\r\n window.location.reload();\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n\r\n }\r\n\r\n buscar() {\r\n this.questionarioUGService.ObterRespostaQuestionario(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n if(this.model.status == 'Em réplica')\r\n {\r\n this.config.editable = false;\r\n this.isDisabledStatusEmReplica = true;\r\n this.exibeCamposStatusEmReplica = true;\r\n this.displayedColumns = ['pergunta', 'tipoEntrada', 'status', 'nomeDelegadoA', 'tipoAvaliacaoAuditor', 'avaliacaoAuditor'];\r\n this.displayedColumnsName = ['Pergunta/Seção', 'Tipo de Entrada', 'Status', 'Delegado a', 'Avaliação do Auditor', 'Resposta Revidada do Auditor']\r\n }\r\n else\r\n {\r\n this.displayedColumns = ['pergunta', 'tipoEntrada', 'status', 'nomeDelegadoA'];\r\n this.displayedColumnsName = ['Pergunta/Seção', 'Tipo de Entrada', 'Status', 'Delegado a']\r\n this.exibeCamposStatusEmReplica = false;\r\n }\r\n this.dataSource = new MatTableDataSource(res.dados.respostas);\r\n this.dataSource2 = res.dados.respostas;\r\n // Limpa o FormArray antes de adicionar novos controles\r\n const respostasFormArray = this.formGroup.get('respostas') as FormArray;\r\n respostasFormArray.clear();\r\n\r\n //const checkboxesFormArray = this.fb.array([]); // Novo FormArray para os checkboxes\r\n const checkboxesFormArray = this.formGroup.get('checkboxs') as FormArray;\r\n checkboxesFormArray.clear();\r\n this.selectedIds = [];\r\n this.selection.clear();\r\n\r\n // Adiciona controles ao FormArray dinamicamente\r\n res.dados.respostas.forEach(item => {\r\n respostasFormArray.push(new FormControl(item.resposta));\r\n checkboxesFormArray.push(new FormControl(item.selected || false));\r\n });\r\n if (this.model.status == 'Contestado'){\r\n this.contestado = true;\r\n this.config.editable = false\r\n }\r\n\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => this.exibirMensagemErro(err));\r\n }\r\n\r\n buscarArquivoAnexado() {\r\n this.questionarioUGService.ObterRespostaQuestionario(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n this.dataSource = new MatTableDataSource(res.dados.respostas);\r\n this.dataSource2 = res.dados.respostas;\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => this.exibirMensagemErro(err));\r\n }\r\n\r\n\r\n\r\n toggleSelectAll(checked: boolean) {\r\n const checkboxesFormArray = this.formGroup.get('checkboxes') as FormArray;\r\n if (checkboxesFormArray) {\r\n const checkboxesFormArray = this.formGroup.get('checkboxes') as FormArray;\r\n checkboxesFormArray.controls.forEach(control => control.setValue(checked));\r\n } else {\r\n return false; // Ou qualquer valor padrão que faça sentido no seu contexto\r\n }\r\n }\r\n\r\n\r\n\r\n isIndeterminate() {\r\n const checkboxesFormArray = this.formGroup.get('checkboxes') as FormArray;\r\n if (checkboxesFormArray) { // Adicione esta verificação\r\n const numSelected = checkboxesFormArray.controls.filter(control => control.value).length;\r\n return numSelected > 0 && numSelected < checkboxesFormArray.controls.length;\r\n } else {\r\n return false; // Ou qualquer valor padrão que faça sentido no seu contexto\r\n }\r\n }\r\n\r\n updateSelectedItems(item: QuestionarioUGItensResposta) {\r\n if (item.selected) {\r\n this.selectedItems.push(item);\r\n } else {\r\n const index = this.selectedItems.findIndex(selectedItem => selectedItem === item);\r\n if (index > -1) {\r\n this.selectedItems.splice(index, 1);\r\n }\r\n }\r\n }\r\n\r\n onFileSelected(event: any, index: number): void {\r\n const file: File = event.target.files[0];\r\n if (file) {\r\n // Verifica se a extensão do arquivo é PDF\r\n const fileExtension = file.name.split('.').pop()?.toLowerCase();\r\n\r\n const allowedExtensions = ['pdf', 'jpg', 'jpeg', 'jpe', 'jfif', 'gif', 'png', 'bmp', 'tiff', 'exif', 'doc', 'docx', 'zip', 'csv', 'txt', 'xls', 'ppt', 'pps', 'odt', 'odf', 'html'];\r\n\r\n if (!allowedExtensions.includes(fileExtension)) {\r\n this.toastr.error('Extensão do arquivo selecionado não é válida !!!', 'Extensão inválida');\r\n this.arquivo = null;\r\n } else {\r\n this.arquivo = file;\r\n // AQUI COMEÇA UMA NOVA HISTORIA E OUTRA TENTATIVA\r\n const idItemQuestionario = this.dataSource.data[index].idItemQuestionario;\r\n\r\n const arquivoModel: IArquivoModel = {\r\n id: 0,\r\n nomeArquivo: this.arquivo.name,\r\n entidadeArquivo: 1,\r\n arquivo: this.arquivo,\r\n url: ''\r\n };\r\n\r\n this.questionarioUGService.anexarArquivo(idItemQuestionario ,arquivoModel).then(\r\n (response) => {\r\n this.buscarArquivoAnexado();\r\n // importante nao colocar o reload aqui, senao os dados digitados na pagina sao perdidos bug 38698\r\n // window.location.reload();\r\n },\r\n (error) => {\r\n this.exibirMensagemErro(error.mensagem.descricao);\r\n }\r\n );\r\n }\r\n }\r\n}\r\n\r\n\r\n getRespostaFormControl(index: number): FormControl {\r\n const respostasFormArray = this.formGroup.get('respostas') as FormArray;\r\n const control = respostasFormArray.at(index) as FormControl;\r\n if (this.visualizar || this.imprimir) {\r\n control.disable();\r\n } else {\r\n control.enable();\r\n }\r\n\r\n return control;\r\n }\r\n\r\n getCheckBoxFormControl(index: number): FormControl {\r\n const checkBoxsFormArray = this.formGroup.get('checkboxs') as FormArray;\r\n return checkBoxsFormArray.at(index) as FormControl;\r\n }\r\n\r\n getArquivoFormControl(index: number): FormControl {\r\n const arquivosFormArray = this.formGroup.get('arquivos') as FormArray;\r\n return arquivosFormArray.at(index) as FormControl;\r\n}\r\n // toggleAll(event:any){\r\n // if (event.checked) {\r\n // this.selection.select(...this.dataSource2);\r\n // this.dataSource2.forEach((item)=>{\r\n //\r\n // if(item.idTipoSecaoOuPergunta == 2){\r\n // this.selectedIds.push(item.idItemQuestionario);\r\n // }\r\n // });\r\n //\r\n // } else {\r\n // this.selection.clear();\r\n // this.selectedIds.pop();\r\n // }\r\n // this.habilitaBotaoFinalizar = !this.selection.isEmpty();\r\n // }\r\n\r\n masterToggle() {\r\n if(this.isAllSelected()){\r\n this.selection.clear();\r\n this.habilitaBotaoFinalizar = false;\r\n }else {\r\n this.dataSource2.forEach(row => this.selection.select(row));\r\n this.habilitaBotaoFinalizar = true;\r\n }\r\n }\r\n isAllSelected() {\r\n const numSelected = this.selection.selected.length;\r\n const numRows = this.dataSource2.filter(x => x.idTipoSecaoOuPergunta != 1).length;\r\n return numSelected === numRows;\r\n\r\n }\r\n checkExists(value):boolean{\r\n return this.selectedIds.includes(value);\r\n }\r\nonCheckboxChange(event: MatCheckboxChange, element: any) {\r\n if (event.checked) {\r\n if(!this.checkExists(element.idItemQuestionario)){\r\n this.selectedIds.push(element.idItemQuestionario);\r\n this.selection.toggle(element);\r\n }\r\n } else {\r\n const index = this.selectedIds.indexOf(element.idItemQuestionario);\r\n if (index > -1) {\r\n this.selectedIds.splice(index, 1);\r\n this.selection.deselect(element);\r\n }\r\n }\r\n this.habilitaBotaoFinalizar = this.selectedIds.length > 0;\r\n}\r\n\r\nisAllFinalized() {\r\n const filteredItems = this.dataSource.data.filter(item => item.idTipoSecaoOuPergunta === 2);\r\n const allFinalized = filteredItems.every(item => item.status === 'Finalizado' || item.status === 'Contestado');\r\n return allFinalized;\r\n}\r\n\r\nisStatusEmReplica(){\r\n return this.model.status == 'Em réplica';\r\n}\r\n\r\nisHabilitaBotaoFinalizar(){\r\n return this.habilitaBotaoFinalizar;\r\n}\r\n\r\nDesabilitaBotaoDelegar(){\r\n return this.selectedIds.length == 0;\r\n}\r\n\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { IProcedimentoTecnicaAuditoriaModel } from 'src/app/models/procedimento-tecnica-auditoria.model';\r\nimport { IQuestaoProcedimentoAuditoriaModel } from 'src/app/models/questao-procedimento-auditoria.model';\r\nimport { IProcedimentoAuditoriaModel } from 'src/app/models/procedimento-auditoria.model';\r\nimport { ProcedimentoAuditoriaService } from 'src/app/services/procedimento-auditoria.service';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\n\r\n@Component({\r\n selector: 'app-modal-procedimento-auditoria',\r\n templateUrl: './modal-procedimento-auditoria.component.html',\r\n styleUrls: ['./modal-procedimento-auditoria.component.scss']\r\n})\r\n\r\nexport class ModalProcedimentoAuditoriaComponent implements OnInit {\r\n public modelQuestaoProcedimentoAuditoria: IQuestaoProcedimentoAuditoriaModel = {} as IQuestaoProcedimentoAuditoriaModel;\r\n public model: IProcedimentoAuditoriaModel = {} as IProcedimentoAuditoriaModel;\r\n public tecnicaAuditoriaDataSource = new MatTableDataSource([]);\r\n\r\n public semDados = true;\r\n public visualizacao = true;\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n fonteInformacao: new FormControl('', Validators.required),\r\n detalhamentoProcedimento: new FormControl('', Validators.required),\r\n });\r\n\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n private procedimentoAuditoriaService: ProcedimentoAuditoriaService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.modelQuestaoProcedimentoAuditoria = data;\r\n }\r\n\r\n config: AngularEditorConfig = {\r\n editable: false,\r\n spellcheck: false,\r\n sanitize: false,\r\n height: '10rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [[], []],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n const res = await this.procedimentoAuditoriaService.obterPorId(this.modelQuestaoProcedimentoAuditoria.procedimentoAuditoriaId);\r\n\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n this.tecnicaAuditoriaDataSource = new MatTableDataSource\r\n (\r\n this.model.procedimentoTecnicaAuditoria\r\n );\r\n this.tecnicaAuditoriaDataSource._updateChangeSubscription();\r\n this.semDados = this.tecnicaAuditoriaDataSource.filteredData.length === 0;\r\n }\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Visualização de procedimento auditoria

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Nome {{ element.tecnicaAuditoria.nome }}
\r\n
Nenhuma técnica de auditoria cadastrada
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IProcedimentoAuditoriaModel } from 'src/app/models/procedimento-auditoria.model';\r\nimport { IQuestaoConstatacaoModel } from 'src/app/models/questao-constatacao.model';\r\nimport { IMatrizPlanejamentoModel } from 'src/app/models/matriz-planejamento.model';\r\nimport { IQuestaoProcedimentoAuditoriaModel } from 'src/app/models/questao-procedimento-auditoria.model';\r\nimport { ISubtipoAuditoriaMatrizPlanejamentoModel } from 'src/app/models/subtipo-auditoria-matriz-planejamento.model';\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { IQuestaoModel } from 'src/app/models/questao.model';\r\nimport { IProcedimentoTecnicaAuditoriaModel } from 'src/app/models/procedimento-tecnica-auditoria.model';\r\nimport { IMatrizPlanejamentoQuestaoModel } from 'src/app/models/matriz-planejamento-questao.model';\r\nimport { ProcedimentoAuditoriaService } from 'src/app/services/procedimento-auditoria.service';\r\nimport { TecnicaAuditoriaService } from 'src/app/services/tecnica-auditoria.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-procedimento-auditoria-form',\r\n templateUrl: './procedimento-auditoria-form.component.html',\r\n styleUrls: ['./procedimento-auditoria-form.component.scss']\r\n})\r\nexport class ProcedimentoAuditoriaFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IProcedimentoAuditoriaModel = {} as IProcedimentoAuditoriaModel;\r\n public modelMatrizPlanejamento: IMatrizPlanejamentoModel = {} as IMatrizPlanejamentoModel;\r\n public modelProcedimentoTecnicaAuditoria: IProcedimentoTecnicaAuditoriaModel = {} as IProcedimentoTecnicaAuditoriaModel;\r\n public modelSubtipoAuditoria: ISubtipoAuditoriaModel = {} as ISubtipoAuditoriaModel;\r\n public tecnicaAuditoriaDataSource = new MatTableDataSource([]);\r\n public listaConstatacao = new MatTableDataSource([]);\r\n public listaProcedimentoAuditoria = new MatTableDataSource([]);\r\n public listaQuestao = new MatTableDataSource([]);\r\n public listaMatrizPlanejamento = new MatTableDataSource([]);\r\n public salvar: boolean;\r\n\r\n public rotaPrefixoSubtipoAuditoria = undefined;\r\n public rotaPrefixoMatrizPlanejamento = undefined;\r\n public semDados = true;\r\n public modelQuestao: IQuestaoModel = {} as IQuestaoModel;\r\n\r\n public isModal: boolean = false;\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n fonteInformacao: new FormControl('', Validators.required),\r\n detalhamentoProcedimento: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private procedimentoAuditoriaService: ProcedimentoAuditoriaService,\r\n private tecnicaAuditoriaService: TecnicaAuditoriaService,\r\n public matDialog: MatDialog,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public dados: any\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if(dados?.isModal) this.isModal = dados?.isModal;\r\n if(dados.model?.id) {\r\n this.id = dados?.data?.id;\r\n this.novoRegistro = !this.id ? true : false;\r\n }\r\n }\r\n\r\n\r\n config: AngularEditorConfig = {\r\n editable: !this.visualizar,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n this.state();\r\n try {\r\n if (!this.novoRegistro && this.id) {\r\n const res = await this.procedimentoAuditoriaService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n this.tecnicaAuditoriaDataSource = new MatTableDataSource\r\n (\r\n this.model.procedimentoTecnicaAuditoria\r\n );\r\n this.tecnicaAuditoriaDataSource._updateChangeSubscription();\r\n this.semDados = this.tecnicaAuditoriaDataSource.filteredData.length === 0;\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n // this.router.navigate(['/procedimento-auditoria']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n // this.router.navigate(['/procedimento-auditoria']);\r\n }\r\n this.atribuirTitulo();\r\n }\r\n\r\n public async state() {\r\n // model questao\r\n this.modelQuestao = window.history.state.model;\r\n // model Subtipo Auditoria\r\n this.modelSubtipoAuditoria = window.history.state.modelSubtipoAuditoria;\r\n // model matriz planejamento\r\n this.modelMatrizPlanejamento = window.history.state.modelMatrizPlanejamento;\r\n // lista procedimento\r\n this.listaProcedimentoAuditoria = window.history.state.listaProcedimentoAuditoria;\r\n // lista questão\r\n this.listaQuestao = window.history.state.listaQuestao;\r\n // lista constatacao\r\n this.listaConstatacao = window.history.state.listaConstatacao;\r\n // lista Matriz Planejamento\r\n this.listaMatrizPlanejamento = window.history.state.listaMatrizPlanejamento;\r\n // rota\r\n if (window.history.state.rotaPrefixoSubtipoAuditoria) {\r\n this.rotaPrefixoSubtipoAuditoria = window.history.state.rotaPrefixoSubtipoAuditoria;\r\n }\r\n if (window.history.state.rotaPrefixoMatrizPlanejamento) {\r\n this.rotaPrefixoMatrizPlanejamento = window.history.state.rotaPrefixoMatrizPlanejamento;\r\n }\r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n this.salvar = true;\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n\r\n this.atualizarModel(this.form.value);\r\n this.model.procedimentoTecnicaAuditoria = this.tecnicaAuditoriaDataSource.data;\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.procedimentoAuditoriaService.atualizar(this.model);\r\n } else {\r\n res = await this.procedimentoAuditoriaService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro salvo com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (salvarEFechar){\r\n if (this.modelQuestao && !this.isModal) {\r\n this.router.navigate(['/questao/novo'], {\r\n state: {\r\n model: this.modelQuestao,\r\n modelMatrizPlanejamento: this.modelMatrizPlanejamento,\r\n modelSubtipoAuditoria: this.modelSubtipoAuditoria,\r\n listaProcedimentoAuditoria: this.listaProcedimentoAuditoria,\r\n listaConstatacao: this.listaConstatacao,\r\n listaQuestao: this.listaQuestao,\r\n listaMatrizPlanejamento: this.listaMatrizPlanejamento,\r\n rotaPrefixoSubtipoAuditoria: this.rotaPrefixoSubtipoAuditoria,\r\n rotaPrefixoMatrizPlanejamento: this.rotaPrefixoMatrizPlanejamento\r\n }\r\n });\r\n }else{\r\n if(!this.isModal) this.router.navigate(['/procedimento-auditoria']);\r\n this.dialogRef.close();\r\n }\r\n }else {\r\n if (this.novoRegistro) {\r\n this.router.navigate([`/procedimento-auditoria/${res.dados.id}`]);\r\n await this.ngOnInit(); \r\n }\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: validacoes,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public incluirTecnicaAuditoria() {\r\n if (this.tecnicaAuditoriaDataSource.data.findIndex(a => a.tecnicaAuditoriaId === this.modelProcedimentoTecnicaAuditoria.tecnicaAuditoriaId) >= 0) {\r\n this.exibirMensagemAlerta('Técnica de auditoria já cadastrado nesse procedimento');\r\n return;\r\n }\r\n\r\n this.tecnicaAuditoriaDataSource.data.push(cloneDeep(this.modelProcedimentoTecnicaAuditoria));\r\n this.tecnicaAuditoriaDataSource._updateChangeSubscription();\r\n this.modelProcedimentoTecnicaAuditoria = {} as IProcedimentoTecnicaAuditoriaModel;\r\n this.semDados = false;\r\n }\r\n\r\n public excluirTecnicaAuditoria(ind: number) {\r\n this.tecnicaAuditoriaDataSource.data.splice(ind, 1);\r\n this.tecnicaAuditoriaDataSource._updateChangeSubscription();\r\n this.semDados = this.tecnicaAuditoriaDataSource.filteredData.length === 0;\r\n }\r\n\r\n public async exibirModalTecnicaAuditoria() {\r\n try {\r\n const res = await this.tecnicaAuditoriaService.obter('', true);\r\n if (res.sucesso) {\r\n const dadosFiltrados = res.dados.filter(tecnicaAuditoria => tecnicaAuditoria.ativo);\r\n const modal = this.exibirModal('Selecionar Técnica de Auditoria', dadosFiltrados);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.modelProcedimentoTecnicaAuditoria.tecnicaAuditoriaId = data.id;\r\n this.modelProcedimentoTecnicaAuditoria.tecnicaAuditoria = data;\r\n }\r\n }\r\n );\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n if(this.isModal) {\r\n this.dialogRef.close();\r\n return;\r\n }\r\n if (this.modelQuestao) {\r\n this.router.navigate(['/questao/novo'], {\r\n state: {\r\n model: this.modelQuestao,\r\n modelMatrizPlanejamento: this.modelMatrizPlanejamento,\r\n modelSubtipoAuditoria: this.modelSubtipoAuditoria,\r\n listaProcedimentoAuditoria: this.listaProcedimentoAuditoria,\r\n listaConstatacao: this.listaConstatacao,\r\n listaQuestao: this.listaQuestao,\r\n listaMatrizPlanejamento: this.listaMatrizPlanejamento,\r\n rotaPrefixoSubtipoAuditoria: this.rotaPrefixoSubtipoAuditoria,\r\n rotaPrefixoMatrizPlanejamento: this.rotaPrefixoMatrizPlanejamento\r\n }\r\n });\r\n }else{\r\n this.router.navigate(['/procedimento-auditoria']);\r\n }\r\n }\r\n\r\n atribuirTitulo(){\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Procedimento';\r\n } else {\r\n this.titulo = 'Editar Procedimento - ' + this.model.nome;\r\n }\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Procedimento - ' + this.model.nome;\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Procedimento\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Nome {{ element.tecnicaAuditoria.nome }}\r\n
\r\n \r\n
\r\n
\r\n
Nenhuma técnica de auditoria cadastrada
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { IProcedimentoAuditoriaModel } from 'src/app/models/procedimento-auditoria.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { ProcedimentoAuditoriaService } from 'src/app/services/procedimento-auditoria.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-procedimento-auditoria-list',\r\n templateUrl: './procedimento-auditoria-list.component.html',\r\n styleUrls: ['./procedimento-auditoria-list.component.scss']\r\n})\r\nexport class ProcedimentoAuditoriaListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IProcedimentoAuditoriaModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private procedimentoAuditoriaService: ProcedimentoAuditoriaService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/procedimento-auditoria/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.procedimentoAuditoriaService\r\n .obter(this.searchNome, this.searchAtivo, false)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.procedimentoAuditoriaService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro reativado com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.procedimentoAuditoriaService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro inativado com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/procedimento-auditoria/${id}`]);\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/procedimento-auditoria/${id}/visualizar`]);\r\n }\r\n\r\n public excluir(id: number) {\r\n this.procedimentoAuditoriaService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro excluído com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Procedimentos
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Procedimentos\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Procedimento {{element.nome}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { ProcedimentoAuditoriaFormComponent } from \"src/app/pages/procedimento-auditoria-form/procedimento-auditoria-form.component\";\r\nimport { data } from \"jquery\";\r\nimport { AfterViewInit, Component, Inject, OnInit, ViewChild } from \"@angular/core\";\r\nimport { AbstractControl, FormControl, FormGroup, MaxLengthValidator, ValidatorFn, Validators } from \"@angular/forms\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogConfig,\r\n\tMatDialogRef,\r\n\tMAT_DIALOG_DATA,\r\n} from \"@angular/material/dialog\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport * as cloneDeep from \"lodash/cloneDeep\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IBaseModel } from \"src/app/models/base.model\";\r\nimport { IQuestaoModel } from \"src/app/models/questao.model\";\r\nimport { IMatrizPlanejamentoModel } from \"src/app/models/matriz-planejamento.model\";\r\nimport { IQuestaoConstatacaoModel } from \"src/app/models/questao-constatacao.model\";\r\nimport { IQuestaoProcedimentoAuditoriaModel } from \"src/app/models/questao-procedimento-auditoria.model\";\r\nimport { IMatrizPlanejamentoQuestaoModel } from \"src/app/models/matriz-planejamento-questao.model\";\r\nimport { ISubtipoAuditoriaModel } from \"src/app/models/subtipo-auditoria.model\";\r\nimport { ISubtipoAuditoriaMatrizPlanejamentoModel } from \"src/app/models/subtipo-auditoria-matriz-planejamento.model\";\r\nimport { ProcedimentoAuditoriaService } from \"src/app/services/procedimento-auditoria.service\";\r\nimport { QuestaoService } from \"src/app/services/questao.service\";\r\nimport { ConstatacaoService } from \"src/app/services/constatacao.service\";\r\nimport { BaseFormComponent } from \"../../shared/components/base-form/base-form.component\";\r\nimport { AngularEditorConfig } from \"@kolkov/angular-editor\";\r\n\r\nimport { ModalConstatacaoComponent } from \"../constatacao-form/modal-constatacao/modal-constatacao.component\";\r\nimport { ModalProcedimentoAuditoriaComponent } from \"../procedimento-auditoria-form/modal-procedimento-auditoria/modal-procedimento-auditoria.component\";\r\nimport Swal from \"sweetalert2\";\r\nimport { ConstatacaoFormComponent } from \"../constatacao-form/constatacao-form.component\";\r\nimport { angularEditorConfig } from \"src/app/shared/util/angularEditorConfig\";\r\n\r\n@Component({\r\n\tselector: \"app-questao-form\",\r\n\ttemplateUrl: \"./questao-form.component.html\",\r\n\tstyleUrls: [\"./questao-form.component.scss\"],\r\n})\r\nexport class QuestaoFormComponent extends BaseFormComponent implements OnInit, AfterViewInit {\r\n\r\n\t@ViewChild(\"maxLengthEditor\") private angularEditor: any;\r\n\t@ViewChild(\"maxLengthEditorLegislacao\") private angularEditorLegislacao: any;\r\n\r\n\tpublic model: IQuestaoModel = {} as IQuestaoModel;\r\n\tpublic manterMatrizPlanejamento: IQuestaoModel = {} as IQuestaoModel;\r\n\tpublic modelQuestaoConstatacao: IQuestaoConstatacaoModel =\r\n\t\t{} as IQuestaoConstatacaoModel;\r\n\tpublic modelMatrizPlanejamento: IMatrizPlanejamentoModel =\r\n\t\t{} as IMatrizPlanejamentoModel;\r\n\tpublic constatacaoDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic listaQuestao =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic listaMatrizPlanejamento: ISubtipoAuditoriaMatrizPlanejamentoModel =\r\n\t\t{} as ISubtipoAuditoriaMatrizPlanejamentoModel;\r\n\r\n\tpublic modelSubtipoAuditoria: ISubtipoAuditoriaModel =\r\n\t\t{} as ISubtipoAuditoriaModel;\r\n\tpublic modelQuestaoProcedimentoAuditoria: IQuestaoProcedimentoAuditoriaModel =\r\n\t\t{} as IQuestaoProcedimentoAuditoriaModel;\r\n\tpublic procedimentoAuditoriaDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n\r\n\tpublic rotaPrefixoSubtipoAuditoria = undefined;\r\n\tpublic rotaPrefixoMatrizPlanejamento = undefined;\r\n\tpublic semDadosConstatacao = true;\r\n\tpublic semDadosProcedimentoAuditoria = true;\r\n\tpublic salvar: boolean;\r\n\tpublic questaoId: number = null;\r\n\tpublic tipoTrabalho: string;\r\n\tpublic tipoTrabalhoId: number;\r\n public subTipoAuditoriaId: number;\r\n\tpublic texto: string;\r\n\r\n\tpublic form = new FormGroup({\r\n\t\tnome: new FormControl(\"\", Validators.required),\r\n\t\tclassificacao: new FormControl(\"\", Validators.required),\r\n\t\tdescricao: new FormControl(\"\", [Validators.required, this.editorMaxLength(500)]),\r\n\t\tlegislacaoAplicavelCriterio: new FormControl(\"\", Validators.required),\r\n\t});\r\n\r\n\tpublic isModal: boolean = false;\r\n\r\n\tpublic config: AngularEditorConfig = angularEditorConfig(\r\n\t\t\"Digite aqui...\",\r\n\t\t\"150px\",\r\n\t\t\"100%\",\r\n\t\ttrue\r\n\t);\r\n\r\n\teditorMaxLength(maxlength): ValidatorFn {\r\n\t\treturn (control: AbstractControl): { [key: string]: any } => {\r\n\t\t\tvar regex = /(<([^>]+)>)/ig;\r\n\t\t\tvar value = control.value;\r\n\t\t\tvar result = value.replace(regex, \"\");\r\n\t\t\tif (result.length > maxlength) {\r\n\t\t\t\treturn { 'maxlengthError': true };\r\n\t\t\t} else {\r\n\t\t\t\treturn null;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tconstructor(\r\n\t\tpublic route: ActivatedRoute,\r\n\t\tpublic toastr: ToastrService,\r\n\t\tpublic router: Router,\r\n\t\tpublic localeService: BsLocaleService,\r\n\t\tpublic questaoService: QuestaoService,\r\n\t\tpublic constatacaoService: ConstatacaoService,\r\n\t\tpublic procedimentoAuditoriaService: ProcedimentoAuditoriaService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public dados: any\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\r\n\t\tif (!(Object.keys(dados).length === 0)) {\r\n\t\t\t!(dados?.data === undefined)\r\n\t\t\t\t? (this.novoRegistro = false)\r\n\t\t\t\t: (this.novoRegistro = true);\r\n\t\t\tthis.isModal = true;\r\n\t\t\tthis.manterMatrizPlanejamento = dados?.data;\r\n\t\t\tthis.id = dados?.data?.id;\r\n\t\t\tthis.tipoTrabalho = dados?.tipoTrabalho?.nome;\r\n\t\t\tthis.tipoTrabalhoId = dados?.tipoTrabalhoId;\r\n this.subTipoAuditoriaId = dados?.subTipoAuditoriaId;\r\n\t\t\tthis.novoRegistro = this.id == undefined;\r\n\t\t\tthis.visualizar = dados?.visualizar;\r\n\t\t\tthis.config.enableToolbar = !dados?.visualizar;\r\n\t\t\tthis.config.editable = !dados?.visualizar;\r\n\t\t\tthis.config.showToolbar = !dados?.visualizar;\r\n\t\t}\r\n\r\n\t\tif (this.novoRegistro) {\r\n\t\t\tthis.titulo = \"Nova Questão Auditoria\";\r\n\t\t\tthis.texto =\r\n\t\t\t\t\"Esta questão de auditoria deve ser incluída na base de conhecimento?\";\r\n\t\t} else if (this.visualizar) {\r\n\t\t\tthis.titulo = \"Visualização Questão Auditoria\";\r\n\t\t} else {\r\n\t\t\tthis.titulo = \"Editar Questão Auditoria\";\r\n\t\t\tthis.texto =\r\n\t\t\t\t\"Estas alterações na questão de auditoria devem ser realizadas na base de conhecimento?\";\r\n\t\t}\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\tthis.state();\r\n\t\ttry {\r\n\t\t\tif (window.history.state.model) {\r\n\t\t\t\tthis.model = window.history.state.model;\r\n\t\t\t}\r\n\t\t\tif (window.history.state.constatacaoDataSource) {\r\n\t\t\t\tthis.constatacaoDataSource =\r\n\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\twindow.history.state.constatacaoDataSource\r\n\t\t\t\t\t);\r\n\t\t\t\tthis.constatacaoDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.semDadosConstatacao =\r\n\t\t\t\t\tthis.constatacaoDataSource.filteredData.length === 0;\r\n\t\t\t}\r\n\r\n\t\t\tif (window.history.state.procedimentoAuditoriaDataSource) {\r\n\t\t\t\tthis.procedimentoAuditoriaDataSource =\r\n\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\twindow.history.state.procedimentoAuditoriaDataSource\r\n\t\t\t\t\t);\r\n\t\t\t\tthis.procedimentoAuditoriaDataSource._updateChangeSubscription();\r\n\t\t\t\tthis.semDadosProcedimentoAuditoria =\r\n\t\t\t\t\tthis.procedimentoAuditoriaDataSource.filteredData.length ===\r\n\t\t\t\t\t0;\r\n\t\t\t}\r\n\r\n\t\t\tif (!this.novoRegistro && !window.history.state.model) {\r\n\t\t\t\tawait this.obter();\r\n\t\t\t}\r\n\r\n\t\t\tthis.form.patchValue(this.model);\r\n\t\t} catch (err) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"error\",\r\n\t\t\t\ttext: err?.mensagem?.descricao ?? err,\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tngAfterViewInit() {\r\n\t\tthis.angularEditor?.textArea?.nativeElement.addEventListener(\r\n\t\t\t\"keydown\",\r\n\t\t\tthis.maxLengthAngularEditor,\r\n\t\t\tfalse\r\n\t\t);\r\n\r\n\t\tthis.angularEditorLegislacao?.textArea?.nativeElement.addEventListener(\r\n\t\t\t\"keydown\",\r\n\t\t\tthis.maxLengthAngularEditor,\r\n\t\t\tfalse\r\n\t\t);\r\n\t}\r\n\r\n\tpublic maxLengthAngularEditor(e: any) {\r\n\t\tvar element = e.target as HTMLTextAreaElement;\r\n\t\tlet permitirTeclas =\r\n\t\t\te.key !== \"Backspace\" &&\r\n\t\t\te.key !== \"ArrowLeft\" &&\r\n\t\t\te.key !== \"ArrowRight\";\r\n\t\tif (element.innerHTML.length === 500 && permitirTeclas) {\r\n\t\t\te.preventDefault();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic verificarTamanho(e: any) {\r\n\t\tvar regex = /(<([^>]+)>)/ig;\r\n\t\tvar result = e.replace(regex, \"\");\r\n\t\treturn result.length > 500;\r\n\t}\r\n\r\n\tpublic async obter() {\r\n\t\tconst res = await this.questaoService.obterPorId(\r\n\t\t\tthis.id,\r\n\t\t\tthis.tipoTrabalho\r\n\t\t);\r\n\t\tif (res?.sucesso) {\r\n\t\t\tthis.model = res.dados;\r\n\r\n\t\t\tthis.titulo += \" - \" + this.model.nome;\r\n\r\n\t\t\t// constatação\r\n\t\t\tthis.constatacaoDataSource =\r\n\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\tthis.model.questaoConstatacao as IQuestaoConstatacaoModel[]\r\n\t\t\t\t);\r\n\t\t\tthis.constatacaoDataSource._updateChangeSubscription();\r\n\t\t\tthis.semDadosConstatacao =\r\n\t\t\t\tthis.constatacaoDataSource.filteredData.length === 0;\r\n\t\t\t// procedimento\r\n\t\t\tthis.procedimentoAuditoriaDataSource =\r\n\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\tthis.model\r\n\t\t\t\t\t\t.questaoProcedimentoAuditoria as IQuestaoProcedimentoAuditoriaModel[]\r\n\t\t\t\t);\r\n\t\t\tthis.procedimentoAuditoriaDataSource._updateChangeSubscription();\r\n\t\t\tthis.semDadosProcedimentoAuditoria =\r\n\t\t\t\tthis.procedimentoAuditoriaDataSource.filteredData.length === 0;\r\n\t\t} else {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"error\",\r\n\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t\tthis.router.navigate([\"/questao\"]);\r\n\t\t\treturn;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async state() {\r\n\t\t// model questao\r\n\t\tif (window.history.state.model) {\r\n\t\t\tthis.model = window.history.state.model;\r\n\t\t}\r\n\r\n\t\t// model questao\r\n\t\tif (window.history.state.modelSubtipoAuditoria) {\r\n\t\t\tthis.modelSubtipoAuditoria =\r\n\t\t\t\twindow.history.state.modelSubtipoAuditoria;\r\n\t\t}\r\n\r\n\t\t// matriz planejamento\r\n\t\tif (window.history.state.modelMatrizPlanejamento) {\r\n\t\t\tthis.modelMatrizPlanejamento =\r\n\t\t\t\twindow.history.state.modelMatrizPlanejamento;\r\n\t\t}\r\n\r\n\t\t// constatação\r\n\t\tif (window.history.state.listaConstatacao) {\r\n\t\t\tthis.constatacaoDataSource =\r\n\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\twindow.history.state.listaConstatacao\r\n\t\t\t\t);\r\n\t\t\tthis.constatacaoDataSource._updateChangeSubscription();\r\n\t\t\tthis.semDadosConstatacao =\r\n\t\t\t\tthis.constatacaoDataSource.data.length === 0;\r\n\t\t}\r\n\r\n\t\t// procedimento auditoria\r\n\t\tif (window.history.state.listaProcedimentoAuditoria) {\r\n\t\t\tthis.procedimentoAuditoriaDataSource =\r\n\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\twindow.history.state.listaProcedimentoAuditoria\r\n\t\t\t\t);\r\n\t\t\tthis.procedimentoAuditoriaDataSource._updateChangeSubscription();\r\n\t\t\tthis.semDadosProcedimentoAuditoria =\r\n\t\t\t\tthis.procedimentoAuditoriaDataSource.filteredData.length === 0;\r\n\t\t}\r\n\r\n\t\t// lista questao\r\n\t\tif (window.history.state.listaQuestao) {\r\n\t\t\tthis.listaQuestao = window.history.state.listaQuestao;\r\n\t\t}\r\n\r\n\t\t// lista questao\r\n\t\tif (window.history.state.listaMatrizPlanejamento) {\r\n\t\t\tthis.listaMatrizPlanejamento =\r\n\t\t\t\twindow.history.state.listaMatrizPlanejamento;\r\n\t\t}\r\n\r\n\t\t// rota\r\n\t\tif (window.history.state.rotaPrefixoSubtipoAuditoria) {\r\n\t\t\tthis.rotaPrefixoSubtipoAuditoria =\r\n\t\t\t\twindow.history.state.rotaPrefixoSubtipoAuditoria;\r\n\t\t}\r\n\r\n\t\tif (window.history.state.rotaPrefixoMatrizPlanejamento) {\r\n\t\t\tthis.rotaPrefixoMatrizPlanejamento =\r\n\t\t\t\twindow.history.state.rotaPrefixoMatrizPlanejamento;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async onSubmit(salvarEFechar: boolean = false) {\r\n\t\tthis.salvar = true;\r\n\t\t//solicitado pra remover limite dos campos\r\n\t\t/*if (this.verificarTamanho(this.form.controls['descricao'].value) == true){\r\n\t\t Swal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\ttext: \"O campo Descrição não pode ter mais que 500 caracteres\",\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t return\r\n\t\t}\r\n\t\tif (this.verificarTamanho(this.form.controls['legislacaoAplicavelCriterio'].value) == true){\r\n\t\t Swal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\ttext: \"O campo Legislação Aplicável/Critério não pode ter mais que 500 caracteres\",\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t return\r\n\t\t}*/\r\n\r\n\t\tif (this.form.invalid) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"warning\",\r\n\t\t\t\ttext: \"Formulário inválido\",\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.atualizarModel(this.form.value);\r\n\t\tthis.model.questaoConstatacao = this.constatacaoDataSource.data;\r\n\t\tthis.model.questaoProcedimentoAuditoria = this.procedimentoAuditoriaDataSource.data;\r\n\t\r\n\t\ttry {\r\n\t\t\tlet res: IBaseModel = null;\r\n\t\r\n\t\t\tthis.model.questaoConstatacao = this.model.questaoConstatacao.map(a => a?.constatacao?.id);\r\n\t\t\tthis.model.questaoProcedimentoAuditoria = this.model.questaoProcedimentoAuditoria.map(a => a?.procedimentoAuditoria?.id);\r\n\t\r\n\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\t// salva questão tipo de trabalho\r\n\t\t\t\tif (this.model.questaoId) {\r\n\t\t\t\t\tres = await this.questaoService.atualizar(this.model, this.tipoTrabalho, this.tipoTrabalhoId);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// salva só a questão\r\n\t\t\t\t\tres = await this.questaoService.atualizar(this.model, null, 0);\r\n\t\t\t\t}\r\n\t\t\t\tthis.executarVinculos(res, this.model.avaliar);\r\n\t\r\n\t\t\t} else if (this.isModal) {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttitle: `${this.titulo}`,\r\n\t\t\t\t\ttext: `${this.texto}`,\r\n\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\tshowCancelButton: true,\r\n\t\t\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\t\t\tcancelButtonText: \"Não\",\r\n\t\t\t\t}).then(async (ret) => {\r\n\t\t\t\t\tif (ret.value) {\r\n\t\t\t\t\t\tthis.model.avaliar = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tres = await this.questaoService.inserir(this.model, this.tipoTrabalho, this.tipoTrabalhoId, this.subTipoAuditoriaId);\r\n\t\t\t\t\tthis.executarVinculos(res, ret.value);\r\n\t\t\t\t\tthis.handleSuccess(res, salvarEFechar);\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.model.avaliar = false;\r\n\t\t\t\tres = await this.questaoService.inserir(this.model, this.tipoTrabalho, this.tipoTrabalhoId, this.subTipoAuditoriaId);\r\n\t\t\t\tthis.handleSuccess(res, salvarEFechar);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"error\",\r\n\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\t\r\n\tprivate handleSuccess(res: IBaseModel, salvarEFechar: boolean) {\r\n\t\tif (res.sucesso) {\r\n\t\t\tthis.vincularConstatacoes(res.dados.id, this.model.avaliar);\r\n\t\t\tthis.vincularProcedimentos(res.dados.id, this.model.avaliar);\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"success\",\r\n\t\t\t\ttext: \"Registro salvo com sucesso!\",\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\r\n\t\t\tif (salvarEFechar) {\r\n\t\t\t\tthis.router.navigate(['/questao']);\r\n\t\t\t} else\r\n\t\t\tif(this.novoRegistro){\r\n\t\t\t this.router.navigate([`/questao/${res.dados.id}`]);\r\n\t\t\t this.ngOnInit();\r\n\t\t\t} else {\r\n\t\t\t\t// Permanecer na mesma tela, talvez atualizar o estado ou indicar que o registro foi salvo\r\n\t\t\t\tif (!this.isModal) {\r\n\t\t\t\t\t// Permanecer na mesma página\r\n\t\t\t\t\tthis.router.navigate([this.router.url]); // Esta linha força a página a recarregar.\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Fechar o modal\r\n\t\t\t\t\tthis.dialogRef.close({ data: res.dados });\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.handleError(res);\r\n\t\t}\r\n\t}\r\n\t\r\n\tprivate handleError(res: IBaseModel) {\r\n\t\tconst validacoes = this.montarMensagensValidacao(res);\r\n\t\tSwal.fire({\r\n\t\t\ttoast: true,\r\n\t\t\tposition: \"top-end\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\ttext: validacoes,\r\n\t\t\tshowConfirmButton: false,\r\n\t\t\ttimer: 5000,\r\n\t\t\ttimerProgressBar: true,\r\n\t\t});\r\n\t}\r\n\r\n\tpublic executarVinculos(res, avaliar) {\r\n\t\tif (res.sucesso) {\r\n\t\t\tthis.model = res.dados;\r\n\t\t\tthis.vincularConstatacoes(res.dados.id, avaliar);\r\n\t\t\tthis.vincularProcedimentos(res.dados.id, avaliar);\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"success\",\r\n\t\t\t\ttext: \"Registro salvo com sucesso!\",\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\r\n\t\t\tif (this.rotaPrefixoMatrizPlanejamento) {\r\n\t\t\t\tthis.router.navigate(\r\n\t\t\t\t\t[this.rotaPrefixoMatrizPlanejamento],\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tstate: {\r\n\t\t\t\t\t\t\tmodelMatrizPlanejamento:\r\n\t\t\t\t\t\t\t\tthis.modelMatrizPlanejamento,\r\n\t\t\t\t\t\t\tmodelSubtipoAuditoria:\r\n\t\t\t\t\t\t\t\tthis.modelSubtipoAuditoria,\r\n\t\t\t\t\t\t\tlistaQuestao: this.listaQuestao,\r\n\t\t\t\t\t\t\tlistaMatrizPlanejamento:\r\n\t\t\t\t\t\t\t\tthis.listaMatrizPlanejamento,\r\n\t\t\t\t\t\t\trotaPrefixoSubtipoAuditoria:\r\n\t\t\t\t\t\t\t\tthis\r\n\t\t\t\t\t\t\t\t\t.rotaPrefixoSubtipoAuditoria,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t}\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\tif (!this.isModal)\r\n\t\t\t\t\tthis.router.navigate([\"/questao\"]);\r\n\t\t\t\tif (this.isModal) {\r\n\t\t\t\t\tthis.dialogRef.close({ data: res.dados });\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tconst validacoes =\r\n\t\t\t\tthis.montarMensagensValidacao(res);\r\n\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"warning\",\r\n\t\t\t\ttext: validacoes,\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async vincularConstatacoes(questaoId: number, isAvaliar: boolean) {\r\n\t\tawait this.questaoService.vincularQuestaoConstatacao(\r\n\t\t\tthis.id ?? questaoId,\r\n\t\t\t{\r\n\t\t\t\tconstatacoes: this.constatacaoDataSource.data.map(\r\n\t\t\t\t\t(item) => item.constatacaoId\r\n\t\t\t\t),\r\n\t\t\t},\r\n\t\t\tthis.tipoTrabalho\r\n\t\t);\r\n\t\tif (isAvaliar) {\r\n\t\t\tawait this.questaoService.vincularQuestaoConstatacao(\r\n\t\t\t\tthis.model.questaoId,\r\n\t\t\t\t{\r\n\t\t\t\t\tconstatacoes: this.constatacaoDataSource.data.map(\r\n\t\t\t\t\t\t(item) => item.constatacaoId\r\n\t\t\t\t\t),\r\n\t\t\t\t},\r\n\t\t\t\tnull\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async vincularProcedimentos(questaoId: number, isAvaliar: boolean) {\r\n\t\tawait this.questaoService.vincularQuestaoProcedimento(\r\n\t\t\tthis.id ?? questaoId,\r\n\t\t\t{\r\n\t\t\t\tprocedimentos: this.procedimentoAuditoriaDataSource.data.map(\r\n\t\t\t\t\t(item) => item.procedimentoAuditoriaId\r\n\t\t\t\t),\r\n\t\t\t},\r\n\t\t\tthis.tipoTrabalho\r\n\t\t);\r\n\t\tif (isAvaliar) {\r\n\t\t\tawait this.questaoService.vincularQuestaoProcedimento(\r\n\t\t\t\tthis.model.questaoId,\r\n\t\t\t\t{\r\n\t\t\t\t\tprocedimentos: this.procedimentoAuditoriaDataSource.data.map(\r\n\t\t\t\t\t\t(item) => item.procedimentoAuditoriaId\r\n\t\t\t\t\t),\r\n\t\t\t\t},\r\n\t\t\t\tnull\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic incluirConstatacao() {\r\n\t\tif (\r\n\t\t\tthis.constatacaoDataSource.data.findIndex(\r\n\t\t\t\t(a) =>\r\n\t\t\t\t\ta.constatacaoId ===\r\n\t\t\t\t\tthis.modelQuestaoConstatacao.constatacaoId\r\n\t\t\t) >= 0\r\n\t\t) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"warning\",\r\n\t\t\t\ttext: \"Constatação já cadastrada nessa questão\",\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.constatacaoDataSource.data.push(\r\n\t\t\tcloneDeep(this.modelQuestaoConstatacao)\r\n\t\t);\r\n\t\tthis.constatacaoDataSource._updateChangeSubscription();\r\n\t\tthis.modelQuestaoConstatacao = {} as IQuestaoConstatacaoModel;\r\n\t\tthis.semDadosConstatacao = false;\r\n\t}\r\n\r\n\tpublic excluirConstatacao(\r\n\t\telement: IQuestaoConstatacaoModel,\r\n\t\tindex: number\r\n\t) {\r\n\t\tif (element.constatacaoId) {\r\n\t\t\tthis.questaoService\r\n\t\t\t\t.desVincularQuestaoConstatacao(\r\n\t\t\t\t\tthis.id,\r\n\t\t\t\t\telement.constatacaoId,\r\n\t\t\t\t\tthis.tipoTrabalho\r\n\t\t\t\t)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tres.sucesso\r\n\t\t\t\t\t\t? this.exibirMensagemSucesso(res.mensagem.descricao)\r\n\t\t\t\t\t\t: this.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t})\r\n\t\t\t\t.finally(() => this.ngOnInit());\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.constatacaoDataSource.data.splice(index, 1);\r\n\t\tthis.constatacaoDataSource._updateChangeSubscription();\r\n\t\tthis.semDadosConstatacao =\r\n\t\t\tthis.constatacaoDataSource.filteredData.length === 0;\r\n\t}\r\n\r\n\tpublic async exibirModalConstatacao() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.constatacaoService.obter(\"\", true);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tconst dadosFiltrados = res.dados.filter(\r\n\t\t\t\t\t(constatacao) => constatacao.ativo\r\n\t\t\t\t);\r\n\t\t\t\tconst modal = this.exibirModal(\r\n\t\t\t\t\t\"Selecionar Constatação\",\r\n\t\t\t\t\tdadosFiltrados\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.modelQuestaoConstatacao.constatacaoId = data.id;\r\n\t\t\t\t\t\tthis.modelQuestaoConstatacao.constatacao = data;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"error\",\r\n\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tpublic incluirProcedimentoAuditoria() {\r\n\t\tif (\r\n\t\t\tthis.procedimentoAuditoriaDataSource.data.findIndex(\r\n\t\t\t\t(a) =>\r\n\t\t\t\t\ta.procedimentoAuditoriaId ===\r\n\t\t\t\t\tthis.modelQuestaoProcedimentoAuditoria\r\n\t\t\t\t\t\t.procedimentoAuditoriaId\r\n\t\t\t) >= 0\r\n\t\t) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"warning\",\r\n\t\t\t\ttext: \"Procedimento Auditoria já cadastrada nessa questão\",\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.procedimentoAuditoriaDataSource.data.push(\r\n\t\t\tcloneDeep(this.modelQuestaoProcedimentoAuditoria)\r\n\t\t);\r\n\t\tthis.procedimentoAuditoriaDataSource._updateChangeSubscription();\r\n\t\tthis.modelQuestaoProcedimentoAuditoria =\r\n\t\t\t{} as IQuestaoProcedimentoAuditoriaModel;\r\n\t\tthis.semDadosProcedimentoAuditoria = false;\r\n\t}\r\n\r\n\tpublic excluirProcedimentoAuditoria(\r\n\t\telement: IQuestaoProcedimentoAuditoriaModel,\r\n\t\tindex: number\r\n\t) {\r\n\t\tif (element.procedimentoAuditoriaId) {\r\n\t\t\tthis.questaoService\r\n\t\t\t\t.desVincularQuestaoProcedimento(\r\n\t\t\t\t\tthis.id,\r\n\t\t\t\t\telement.procedimentoAuditoriaId,\r\n\t\t\t\t\tthis.tipoTrabalho\r\n\t\t\t\t)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tres.sucesso\r\n\t\t\t\t\t\t? this.exibirMensagemSucesso(res.mensagem.descricao)\r\n\t\t\t\t\t\t: this.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t})\r\n\t\t\t\t.finally(() => this.ngOnInit());\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.procedimentoAuditoriaDataSource.data.splice(index, 1);\r\n\t\tthis.procedimentoAuditoriaDataSource._updateChangeSubscription();\r\n\t\tthis.semDadosProcedimentoAuditoria =\r\n\t\t\tthis.procedimentoAuditoriaDataSource.filteredData.length === 0;\r\n\t}\r\n\r\n\tpublic async exibirModalProcedimentoAuditoria() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.procedimentoAuditoriaService.obter(\"\", true);\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tconst dadosFiltrados = res.dados.filter(\r\n\t\t\t\t\t(procedimentoAuditoria) => procedimentoAuditoria.ativo\r\n\t\t\t\t);\r\n\t\t\t\tconst modal = this.exibirModal(\r\n\t\t\t\t\t\"Selecionar Procedimento Auditoria\",\r\n\t\t\t\t\tdadosFiltrados\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tthis.modelQuestaoProcedimentoAuditoria.procedimentoAuditoriaId =\r\n\t\t\t\t\t\t\tdata.id;\r\n\t\t\t\t\t\tthis.modelQuestaoProcedimentoAuditoria.procedimentoAuditoria =\r\n\t\t\t\t\t\t\tdata;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"error\",\r\n\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async modalVisualizarConstatacao(ind: number) {\r\n\t\ttry {\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\tdialogConfig.width = \"60%\";\r\n\t\t\tdialogConfig.height = \"70%\";\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.data = ind;\r\n\t\t\tthis.matDialog.open(ModalConstatacaoComponent, dialogConfig);\r\n\t\t} catch (err) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"error\",\r\n\t\t\t\ttext: err,\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async modalVisualizarProcedimentoAuditoria(ind: number) {\r\n\t\ttry {\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\tdialogConfig.width = \"60%\";\r\n\t\t\tdialogConfig.height = \"70%\";\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.data = ind;\r\n\t\t\tthis.matDialog.open(\r\n\t\t\t\tModalProcedimentoAuditoriaComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t);\r\n\t\t} catch (err) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"error\",\r\n\t\t\t\ttext: err,\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async cadastroRapidoConstatacao() {\r\n\t\tthis.salvar = true;\r\n\t\tconst dados = {\r\n\t\t\tmodel: this.model ? this.model : this.form.value,\r\n\t\t\tmodelMatrizPlanejamento: this.modelMatrizPlanejamento,\r\n\t\t\tmodelSubtipoAuditoria: this.modelSubtipoAuditoria,\r\n\t\t\tlistaProcedimentoAuditoria:\r\n\t\t\t\tthis.procedimentoAuditoriaDataSource.data,\r\n\t\t\tlistaConstatacao: this.constatacaoDataSource.data,\r\n\t\t\tlistaQuestao: this.listaQuestao.data,\r\n\t\t\tlistaMatrizPlanejamento: this.listaMatrizPlanejamento,\r\n\t\t\trotaPrefixoSubtipoAuditoria: this.rotaPrefixoSubtipoAuditoria,\r\n\t\t\trotaPrefixoMatrizPlanejamento: this.rotaPrefixoMatrizPlanejamento,\r\n\t\t};\r\n\r\n\t\tif (this.isModal) {\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = \"modal-constatação\";\r\n\t\t\tdialogConfig.width = \"60%\";\r\n\t\t\tdialogConfig.height = \"80%\";\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = false;\r\n\t\t\tdialogConfig.data = {\r\n\t\t\t\tisModal: this.isModal,\r\n\t\t\t\ttitulo: `Adicionar questão`,\r\n\t\t\t\tstate: dados,\r\n\t\t\t\tmodel: this.manterMatrizPlanejamento,\r\n\t\t\t};\r\n\r\n\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t\tConstatacaoFormComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t);\r\n\r\n\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.router.navigate([`/constatacao/novo`], {\r\n\t\t\t\tstate: dados,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async cadastroRapidoProcedimentoAuditoria() {\r\n\t\tthis.salvar = true;\r\n\t\tconst dados = {\r\n\t\t\tmodel: this.form.value,\r\n\t\t\tmodelMatrizPlanejamento: this.modelMatrizPlanejamento,\r\n\t\t\tmodelSubtipoAuditoria: this.modelSubtipoAuditoria,\r\n\t\t\tlistaProcedimentoAuditoria:\r\n\t\t\t\tthis.procedimentoAuditoriaDataSource.data,\r\n\t\t\tlistaConstatacao: this.constatacaoDataSource.data,\r\n\t\t\tlistaQuestao: this.listaQuestao.data,\r\n\t\t\tlistaMatrizPlanejamento: this.listaMatrizPlanejamento,\r\n\t\t\trotaPrefixoSubtipoAuditoria: this.rotaPrefixoSubtipoAuditoria,\r\n\t\t\trotaPrefixoMatrizPlanejamento: this.rotaPrefixoMatrizPlanejamento,\r\n\t\t};\r\n\r\n\t\tif (this.isModal) {\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = \"modal-cadastroRapidoProcedimentoAuditoria\";\r\n\t\t\tdialogConfig.width = \"60%\";\r\n\t\t\tdialogConfig.height = \"80%\";\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = false;\r\n\t\t\tdialogConfig.data = {\r\n\t\t\t\tisModal: this.isModal,\r\n\t\t\t\ttitulo: `Editar questão`,\r\n\t\t\t\tstate: dados,\r\n\t\t\t\tmodel: this.manterMatrizPlanejamento,\r\n\t\t\t};\r\n\r\n\t\t\tconst modal = this.matDialog.open(\r\n\t\t\t\tProcedimentoAuditoriaFormComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t);\r\n\r\n\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.router.navigate([`/procedimento-auditoria/novo`], {\r\n\t\t\t\tstate: dados,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tprivate atualizarModel(values: any) {\r\n\t\tObject.assign(this.model, values);\r\n\t}\r\n\r\n\tpublic aprovarQuestao(questaoId: number) {\r\n\t\tthis.questaoService\r\n\t\t\t.aprovar(questaoId)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tres.sucesso\r\n\t\t\t\t\t? this.exibirMensagemSucesso(\"Questão de auditoria salva com sucesso!\")\r\n\t\t\t\t\t: this.exibirMensagemErro(\"Erro ao avaliar questão!\");\r\n\t\t\t})\r\n\t\t\t.then(() => this.obter())\r\n\t\t\t.catch((err) =>\r\n\t\t\t\tthis.exibirMensagemErro(\"Erro ao avaliar questão!\")\r\n\t\t\t);\r\n\t}\r\n\r\n\tpublic reprovarQuestao(questaoId: number) {\r\n\t\tthis.questaoService\r\n\t\t\t.reprovar(questaoId)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tres.sucesso\r\n\t\t\t\t\t? this.exibirMensagemSucesso(\"Questão de auditoria reprovada com sucesso!\")\r\n\t\t\t\t\t: this.exibirMensagemErro(\" A questão foi reprovada!\");\r\n\t\t\t})\r\n\t\t\t.then(() => this.onBack())\r\n\t\t\t.catch((err) =>\r\n\t\t\t\tthis.exibirMensagemErro(\" Erro ao reprovar questão!\")\r\n\t\t\t);\r\n\t}\r\n\r\n\tpublic onBack() {\r\n\t\tif (this.isModal) {\r\n\t\t\tthis.dialogRef.close();\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (window.history.state.rotaPrefixoMatrizPlanejamento) {\r\n\t\t\tthis.router.navigate(\r\n\t\t\t\t[window.history.state.rotaPrefixoMatrizPlanejamento],\r\n\t\t\t\t{\r\n\t\t\t\t\tstate: {\r\n\t\t\t\t\t\tmodelMatrizPlanejamento: this.modelMatrizPlanejamento,\r\n\t\t\t\t\t\tmodelSubtipoAuditoria: this.modelSubtipoAuditoria,\r\n\t\t\t\t\t\tlistaQuestao: this.listaQuestao,\r\n\t\t\t\t\t\tlistaMatrizPlanejamento: this.listaMatrizPlanejamento,\r\n\t\t\t\t\t\trotaPrefixoSubtipoAuditoria:\r\n\t\t\t\t\t\t\tthis.rotaPrefixoSubtipoAuditoria,\r\n\t\t\t\t\t},\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t} else {\r\n\t\t\tthis.router.navigate([\"/questao\"]);\r\n\t\t}\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Questão Auditoria\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Nome {{ element.constatacao.nome }}\r\n
\r\n \r\n \r\n
\r\n
\r\n
Nenhuma constatação cadastrada
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Nome {{ element.procedimentoAuditoria.nome }}\r\n
\r\n \r\n \r\n
\r\n
\r\n
Nenhum procedimento auditoria\r\n cadastrada
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n\r\n Ultrapassou o limite de 500 caracteres\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { IQuestaoModel } from 'src/app/models/questao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { QuestaoService } from 'src/app/services/questao.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'ativo':\r\n if (item.ativo && item.status.codigo === 1) {\r\n return 'Ativo';\r\n } else if (item.ativo && item.status.codigo === 2) {\r\n return 'Inclusão Sugerida';\r\n } else if (!item.ativo) {\r\n return 'Inativo';\r\n } else {\r\n return '4_desconhecido';\r\n }\r\n case 'nome': return item.nome.trim().toLowerCase(); \r\n default:\r\n return item[property];\r\n }\r\n};\r\n\r\n\r\n@Component({\r\n selector: 'app-questao-list',\r\n templateUrl: './questao-list.component.html',\r\n styleUrls: ['./questao-list.component.scss']\r\n})\r\nexport class QuestaoListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IQuestaoModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'classificacao', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private questaoService: QuestaoService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n \r\n\r\n ngOnInit(): void {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n \r\n public novo() {\r\n this.router.navigate(['/questao/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.questaoService\r\n .obter(this.searchNome, this.searchAtivo, false)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.questaoService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro reativado com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.questaoService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro inativado com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/questao/${id}`]);\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/questao/${id}/visualizar`]);\r\n }\r\n\r\n public excluir(id: number) {\r\n this.questaoService\r\n .excluir(id, null)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro excluído com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Questão Auditoria
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Questão Auditoria\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Questão {{element.nome}} Classificação {{element.classificacao}} Situação \r\n Ativo\r\n Inclusão Sugerida\r\n Inativo\r\n
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IResponsavelUnidadeGestoraModel } from 'src/app/models/responsavel-unidade-gestora.model';\r\nimport { PeaService } from 'src/app/services/pea.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-delegar',\r\n templateUrl: './modal-delegar-component.html',\r\n})\r\nexport class ModalDelegarQuestionarioComponent implements OnInit {\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n private peaService: PeaService,\r\n public toastr: ToastrService,\r\n @Inject(MAT_DIALOG_DATA) data\r\n ) {\r\n this.model = data.dados;\r\n this.peaId = data.peaId;\r\n this.criterioId = data.criterioId;\r\n this.unidadeGestoraId = data.unidadeGestoraId;\r\n }\r\n\r\n public model: IResponsavelUnidadeGestoraModel;\r\n private peaId: number;\r\n private criterioId: number;\r\n private unidadeGestoraId: number;\r\n\r\n public idResponsavel;\r\n\r\n ngOnInit(): void {}\r\n\r\n cancelar() {\r\n this.dialogRef.close(true);\r\n }\r\n\r\n delegar() {\r\n this.peaService\r\n .DelegarQuestionario(this.peaId, this.criterioId, this.idResponsavel, this.unidadeGestoraId)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Delegação de responsabilidade realizada com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.dialogRef.close(true);\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n}\r\n","
\r\n \r\n
\r\n

Delegar Questionário

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Delegar\r\n \r\n\r\n \r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport Inputmask from 'inputmask';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { toIntlNumberString } from 'src/app/core/helpers/number.helper';\r\nimport { IPeaCriterioQuestionarioModel } from 'src/app/models/pea-criterio-questionario.model';\r\nimport { IPerguntaModel } from 'src/app/models/pergunta.model';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IQuestionarioModel } from 'src/app/models/questionario.model';\r\nimport { QuestionarioService } from 'src/app/services/questionario.service';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { ModalDelegarQuestionarioComponent } from './modal-delegar/modal-delegar-component';\r\nimport { PeaService } from 'src/app/services/pea.service';\r\nimport { ResponsaveisService } from 'src/app/services/responsaveis.service ';\r\nimport moment, { Moment } from 'moment';\r\nimport { IQuestionarioPaaModel } from 'src/app/models/questionario.paa.model';\r\nimport { IPaaCriterioQuestionarioModel } from 'src/app/models/paa-criterio-questionario.model';\r\n\r\n@Component({\r\n selector: 'app-questionario-form',\r\n templateUrl: './questionario-form.component.html',\r\n styleUrls: ['./questionario-form.component.scss'],\r\n})\r\nexport class QuestionarioFormComponent extends BaseFormComponent\r\n implements OnInit {\r\n public model: any = {} as any;\r\n public pergunta: IPerguntaModel;\r\n public dataSource = new MatTableDataSource([]);\r\n private segmentoUrl: string;\r\n public documento: string;\r\n public expirado: boolean;\r\n public isPea: boolean;\r\n\r\n public displayedColumns: string[] = [\r\n 'selecao',\r\n 'pergunta',\r\n 'tipo',\r\n 'resposta',\r\n 'unidadeMedida',\r\n 'delegadoA',\r\n ];\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private questionarioService: QuestionarioService,\r\n private peaService: PeaService,\r\n private responsaveisService: ResponsaveisService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.titulo = 'Responder Questionário';\r\n this.segmentoUrl = this.recuperarSegmento();\r\n this.documento = this.segmentoUrl.toUpperCase();\r\n\r\n this.criterioId = parseInt(this.route.snapshot.paramMap.get('criterioId'), 10) as number;\r\n this.unidadeGestoraId = parseInt(this.route.snapshot.paramMap.get('unidadeGestoraId'), 10) as number;\r\n this.expirado = false;\r\n }\r\n\r\n private criterioId = null;\r\n private unidadeGestoraId = null;\r\n\r\n async ngOnInit() {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n this.obterPerguntasQuestionario();\r\n }\r\n\r\n obterPerguntasQuestionario() {\r\n switch (this.segmentoUrl) {\r\n case 'pea':\r\n this.obterQuestionarioPendentePorPeaId();\r\n this.isPea = true;\r\n break;\r\n case 'paa':\r\n this.obterQuestionarioPendentePorPaaId();\r\n break;\r\n default:\r\n this.obterQuestionarioPendentePorPeaId();\r\n break;\r\n }\r\n }\r\n\r\n public async onSalvar() {\r\n\r\n try {\r\n for (const item of this.dataSource.data) {\r\n if (item.valorNumerico) {\r\n item.valorNumerico = parseFloat(\r\n toIntlNumberString(item.valorNumerico.toString())\r\n );\r\n }\r\n }\r\n\r\n switch (this.segmentoUrl) {\r\n case 'pea':\r\n await this.salvarQuestionarioPea();\r\n break;\r\n case 'paa':\r\n await this.salvarQuestionarioPaa();\r\n break;\r\n default:\r\n await this.salvarQuestionarioPea();\r\n break;\r\n }\r\n\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async onEnviar() {\r\n let naoRespondidos = this.dataSource.data.filter(\r\n (d) =>\r\n d.criterio.pergunta.tipoEntrada.nome === 'MultiplaEscolha' &&\r\n !d.perguntaOpcaoId\r\n ).length;\r\n naoRespondidos += this.dataSource.data.filter(\r\n (d) =>\r\n d.criterio.pergunta.tipoEntrada.nome !== 'MultiplaEscolha' &&\r\n !d.valorNumerico\r\n ).length;\r\n\r\n if (naoRespondidos > 0) {\r\n this.exibirMensagemAlerta('Existem perguntas não respondidas. Por favor, revise todas as respostas antes de enviar!');\r\n return;\r\n }\r\n\r\n Swal.fire({\r\n title: 'Responder Questionário',\r\n text:\r\n 'Deseja enviar as respostas desse questionário? Não será possível editar as respostas após o envio.',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Confirmar',\r\n }).then(async (result) => {\r\n if (result.value) {\r\n\r\n try {\r\n switch (this.segmentoUrl) {\r\n case 'pea':\r\n await this.enviarQuestionarioPea();\r\n break;\r\n case 'paa':\r\n await this.enviarQuestionarioPaa();\r\n break;\r\n default:\r\n await this.enviarQuestionarioPea();\r\n break;\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n });\r\n }\r\n\r\n public onCancelar() {\r\n this.navegarLista();\r\n }\r\n\r\n private obterQuestionarioPendentePorPeaId() {\r\n this.tratarObterQuestionarioPendente(this.questionarioService\r\n .obterQuestionarioPendentePorPeaId(this.id, this.criterioId, this.unidadeGestoraId));\r\n }\r\n\r\n private obterQuestionarioPendentePorPaaId() {\r\n this.tratarObterQuestionarioPaaPendente(this.questionarioService\r\n .obterQuestionarioPendentePorPaaId(this.id, this.criterioId, this.unidadeGestoraId));\r\n }\r\n\r\n private tratarObterQuestionarioPendente(obter: Promise>) {\r\n obter.then((res) => {\r\n if (res.sucesso) {\r\n let hoje = moment(new Date());\r\n let data = moment(res.dados.dataPrazo, \"DD-MM-YYYY\");\r\n if (data.diff(hoje) <= 0) {\r\n this.expirado = true;\r\n }\r\n else {\r\n this.expirado = false;\r\n }\r\n this.model = res.dados;\r\n this.dataSource = new MatTableDataSource(res.dados.questionarios);\r\n setTimeout(() => Inputmask().mask(document.querySelectorAll('input')), 500);\r\n } else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n this.navegarLista();\r\n return;\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.navegarLista();\r\n })\r\n }\r\n private tratarObterQuestionarioPaaPendente(obter: Promise>) {\r\n obter.then((res) => {\r\n if (res.sucesso) {\r\n let hoje = moment(new Date());\r\n let data = moment(res.dados.dataPrazo, \"DD-MM-YYYY\");\r\n if (data.diff(hoje) <= 0) {\r\n this.expirado = true;\r\n }\r\n else {\r\n this.expirado = false;\r\n }\r\n this.model = res.dados;\r\n this.dataSource = new MatTableDataSource(res.dados.questionarios);\r\n setTimeout(() => Inputmask().mask(document.querySelectorAll('input')), 500);\r\n } else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n this.navegarLista();\r\n return;\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.navegarLista();\r\n })\r\n }\r\n\r\n private async salvarQuestionarioPea() {\r\n this.dataSource.data.forEach(element => {\r\n if (element.valorNumerico == null || element.valorNumerico == undefined) {\r\n element.valorNumerico = 0;\r\n }\r\n });\r\n const res = await this.questionarioService.salvarRespostasQuestionarioPorPeaId(this.id, this.dataSource.data);\r\n this.tratarSalvarQuestionario(res);\r\n }\r\n\r\n private async salvarQuestionarioPaa() {\r\n const res = await this.questionarioService.salvarRespostasQuestionarioPorPaaId(this.id, this.dataSource.data);\r\n this.tratarSalvarQuestionario(res);\r\n }\r\n\r\n private tratarSalvarQuestionario(res: IBaseModel) {\r\n if (res.sucesso) {\r\n this.submit = true;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.navegarLista();\r\n } else {\r\n this.submit = false;\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }\r\n\r\n private async enviarQuestionarioPea() {\r\n const res = await this.questionarioService.enviarRespostasQuestionarioPorPeaId(this.id, this.dataSource.data);\r\n this.tratarEnviarQuestionario(res);\r\n }\r\n\r\n private async enviarQuestionarioPaa() {\r\n const res = await this.questionarioService.enviarRespostasQuestionarioPorPaaId(this.id, this.dataSource.data);\r\n this.tratarEnviarQuestionario(res);\r\n }\r\n\r\n private tratarEnviarQuestionario(res: IBaseModel) {\r\n if (res.sucesso) {\r\n this.submit = true;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Respostas enviadas com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.navegarLista();\r\n } else {\r\n this.submit = false;\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }\r\n\r\n private navegarLista() {\r\n this.router.navigate([`/questionario/${this.segmentoUrl}`]);\r\n }\r\n\r\n private recuperarSegmento() {\r\n let segmento = '';\r\n if (this.router.url.indexOf('/questionario/pea') == 0) {\r\n segmento = 'pea';\r\n }\r\n else if (this.router.url.indexOf('/questionario/paa') == 0) {\r\n segmento = 'paa';\r\n }\r\n if (this.visualizar) {\r\n this.route.url.subscribe(val => segmento = val[val.length - 6].path);\r\n }\r\n else {\r\n this.route.url.subscribe(val => segmento = val[val.length - 5].path);\r\n }\r\n\r\n return segmento;\r\n }\r\n\r\n async modalDelegar() {\r\n const res = await this.responsaveisService.obter(\r\n this.model.questionarios[0].unidadeGestoraId, '','','', true\r\n );\r\n\r\n if (res.sucesso) {\r\n try {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '500px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n peaId: this.id,\r\n criterioId: this.criterioId,\r\n unidadeGestoraId: this.unidadeGestoraId,\r\n dados: res.dados,\r\n };\r\n\r\n const modal = this.matDialog.open(\r\n ModalDelegarQuestionarioComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe(async () => {\r\n this.submit = true;\r\n this.navegarLista();\r\n });\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n }\r\n\r\n retornaNomeTipoTrabalho(): string{\r\n return this.isPea ? \"PEAC\" : \"PAAC\";\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Questionários\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Pergunta\r\n \r\n {{ element.criterio.pergunta.nome }}\r\n \r\n \r\n\r\n \r\n Tipo de Entrada\r\n \r\n {{ element.criterio.pergunta.tipoEntrada.descricao }}\r\n \r\n \r\n\r\n \r\n Resposta\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n {{ item.nome }}\r\n \r\n \r\n \r\n \r\n\r\n \r\n Unidade de Medida\r\n \r\n {{ element.criterio.unidade }}\r\n \r\n \r\n\r\n \r\n Delegado à\r\n \r\n {{ element.delegadoA }}\r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n Salvar\r\n \r\n\r\n \r\n Enviar\r\n \r\n\r\n \r\n Cancelar\r\n \r\n\r\n \r\n Delegar\r\n \r\n\r\n \r\n Sair\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { IPeaCriterioQuestionarioModel } from 'src/app/models/pea-criterio-questionario.model';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IQuestionarioModel } from 'src/app/models/questionario.model';\r\nimport { QuestionarioService } from 'src/app/services/questionario.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\n\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n \r\n switch (property) {\r\n case 'pea':\r\n return item.pea.nome.trim().toLowerCase();\r\n case 'paa':\r\n return item?.paaIndiceCriterio?.paa?.nome.trim().toLowerCase();\r\n case 'ug':\r\n return item.unidadeGestora.sigla.trim().toLowerCase();\r\n case 'responsavel':\r\n return item.responsavelId.trim().toLowerCase();\r\n case 'dataEnvio':\r\n return item.dataCriacao.trim().toLowerCase();\r\n case 'dataPrazo':\r\n return item.dataLimite.trim().toLowerCase();\r\n default:\r\n return item[property].trim().toLowerCase();\r\n }\r\n}\r\n@Component({\r\n selector: 'app-questionario-list',\r\n templateUrl: './questionario-list.component.html',\r\n styleUrls: ['./questionario-list.component.scss'],\r\n})\r\nexport class QuestionarioListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IPeaCriterioQuestionarioModel;\r\n public searchNome: string;\r\n\r\n public displayedColumns: string[] = ['selecao', 'pea', 'ug', 'responsavel', 'dataEnvio', 'dataPrazo', 'status'];\r\n\r\n public semDados = true;\r\n private segmentoUrl: string;\r\n public documento: string;\r\n public isPEA: boolean;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private questionarioService: QuestionarioService,\r\n private router: Router,\r\n private toastr: ToastrService,\r\n ) {\r\n super();\r\n this.segmentoUrl = this.recuperarSegmento();\r\n this.documento = this.segmentoUrl.toUpperCase();\r\n this.buscar();\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n switch (this.segmentoUrl) {\r\n case 'pea':\r\n this.isPEA = true;\r\n this.buscarQuestionariosPea();\r\n break;\r\n case 'paa':\r\n this.buscarQuestionariosPaa();\r\n break;\r\n default:\r\n this.buscarQuestionariosPea();\r\n break;\r\n }\r\n }\r\n\r\n public responder() {\r\n \r\n if(this.isPEA){\r\n this.router.navigate([`/questionario/${this.segmentoUrl}/${this.selectedModel.peaId}/criterio/${this.selectedModel.criterioId}/ug/${this.selectedModel.unidadeGestoraId}`]);\r\n }else{\r\n this.router.navigate([`/questionario/${this.segmentoUrl}/${this.selectedModel.paaId}/criterio/${this.selectedModel.criterioId}/ug/${this.selectedModel.unidadeGestoraId}`]);\r\n }\r\n \r\n }\r\n\r\n public visualizar(id: number, criterioId: number, unidadeGestoraId: number) {\r\n this.router.navigate([`/questionario/${this.segmentoUrl}/${id}/criterio/${criterioId}/ug/${unidadeGestoraId}/visualizar`]);\r\n }\r\n\r\n public visualizarQuestionario(object: any) {\r\n if (this.segmentoUrl == \"pea\") {\r\n this.router.navigate([`/questionario/${this.segmentoUrl}/${object.peaId}/criterio/${object.criterioId}/ug/${object.unidadeGestoraId}/visualizar`]);\r\n } else {\r\n this.router.navigate([`/questionario/${this.segmentoUrl}/${object.paaIndiceCriterio.paa.id}/criterio/${object.criterioId}/ug/${object.unidadeGestoraId}/visualizar`]);\r\n }\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.documentoId !== item.documentoId ? item : null;\r\n }\r\n\r\n private buscarQuestionariosPea() {\r\n this.tratarBuscar(this.questionarioService\r\n .obterQuestionariosPendentePea(this.searchNome));\r\n }\r\n\r\n private buscarQuestionariosPaa() {\r\n this.tratarBuscar(this.questionarioService\r\n .obterQuestionariosPendentePaa(this.searchNome));\r\n }\r\n\r\n private tratarBuscar(buscar: Promise>) {\r\n buscar.then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n }\r\n\r\n private recuperarSegmento() {\r\n let segmento = '';\r\n if (this.router.url == '/questionario/pea') {\r\n this.isPEA = true;\r\n segmento = 'pea';\r\n }\r\n else if (this.router.url == '/questionario/paa') {\r\n segmento = 'paa';\r\n this.displayedColumns = ['selecao', 'pea', 'paa','ug', 'responsavel', 'dataEnvio', 'dataPrazo', 'status'];\r\n }\r\n this.route.url.subscribe(val => segmento = val[val.length - 1].path);\r\n\r\n return segmento;\r\n }\r\n\r\n mostrarColunaPAAC(element: any): boolean{\r\n\t\treturn !this.isPEA;\r\n }\r\n\r\n retornaNomePea(element: any): string{\r\n let retorno =\"\" ;\r\n if(element.pea != undefined){\r\n retorno = element.pea.nome;\r\n }else if(element.paaIndiceCriterio.paa.pea){\r\n retorno = element.paaIndiceCriterio.paa.pea.nome;\r\n }\r\n return retorno; \r\n }\r\n\r\n sortData(sort) {\r\n this.buscar();\r\n}\r\n\r\n}\r\n\r\n","\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t Lista de\r\n\t\t\t\t\t\t\tQuestionários\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t Responder\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t Visualizar\r\n\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tPEAC\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\tretornaNomePea(element)\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tPAAC\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\telement.paaIndiceCriterio.paa.nome\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tUG\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.unidadeGestora.sigla }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tResponsável\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.responsavelId }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tData Envio\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\telement.dataCriacao\r\n\t\t\t\t\t\t\t\t\t\t\t\t| date: \"dd/MM/yyyy\"\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tData Prazo\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\telement.dataLimite\r\n\t\t\t\t\t\t\t\t\t\t\t\t| date: \"dd/MM/yyyy\"\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tStatus\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.status }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tNenhum questionário disponível\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IRecomendacaoModel } from 'src/app/models/recomendacao.model';\r\nimport { RecomendacaoService } from 'src/app/services/recomendacao.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-recomendacao-form',\r\n templateUrl: './recomendacao-form.component.html',\r\n styleUrls: ['./recomendacao-form.component.scss']\r\n})\r\nexport class RecomendacaoFormComponent extends BaseFormComponent implements OnInit {\r\n\r\n public model: IRecomendacaoModel = {} as IRecomendacaoModel;\r\n public semDados = true;\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n tipoRecomendacao: new FormControl(null, Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private recomendacaoService: RecomendacaoService,\r\n public matDialog: MatDialog,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n config: AngularEditorConfig = {\r\n editable: !this.visualizar,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n this.submit = true;\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.recomendacaoService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/recomendacao']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.updateValueAndValidity();\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/recomendacao']);\r\n }\r\n this.atribuirTitulo();\r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n\r\n Object.assign(this.model, this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.recomendacaoService.atualizar(this.model);\r\n } else {\r\n res = await this.recomendacaoService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro salvo com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (salvarEFechar) {\r\n this.router.navigate(['/recomendacao']);\r\n }else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/recomendacao/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(validacoes);\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigate(['/recomendacao']);\r\n }\r\n\r\n atribuirTitulo(){\r\n if (this.novoRegistro) {\r\n this.titulo = 'Nova Recomendação';\r\n } else {\r\n this.titulo = 'Editar Recomendação - ' + this.model.nome;\r\n }\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Recomendação - ' + this.model.nome;\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Recomendações\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { IRecomendacaoModel } from 'src/app/models/recomendacao.model';\r\nimport { RecomendacaoService } from 'src/app/services/recomendacao.service';\r\nimport { BaseListComponent } from '../../shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { ConstatacaoService } from 'src/app/services/constatacao.service';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'marco':\r\n if (item.tipoRecomendacao === 1) {\r\n return 'Interna';\r\n } else if (item.tipoRecomendacao === 2) {\r\n return 'Externa';\r\n } \r\n case 'nome': return item.nome.trim().toLowerCase(); \r\n default:\r\n return item[property];\r\n }\r\n };\r\n@Component({\r\n selector: 'app-recomendacao-list',\r\n templateUrl: './recomendacao-list.component.html',\r\n styleUrls: [ './recomendacao-list.component.scss' ],\r\n})\r\nexport class RecomendacaoListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IRecomendacaoModel;\r\n public displayedColumns: string[] = [ 'selecao', 'nome', 'marco', 'ativo' ];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n @ViewChild(MatPaginator, { static: true })\r\n paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true })\r\n sort: MatSort;\r\n\r\n constructor(\r\n private recomendacaoService: RecomendacaoService,\r\n private constatacaoService: ConstatacaoService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Cadastros,\r\n EnumAcaoRecurso.Consultar\r\n );\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Cadastros,\r\n EnumAcaoRecurso.Excluir\r\n );\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Cadastros,\r\n EnumAcaoRecurso.AtivarInativar\r\n );\r\n this.permissoes.incluir = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Cadastros,\r\n EnumAcaoRecurso.Inserir\r\n );\r\n this.permissoes.visualizar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Cadastros,\r\n EnumAcaoRecurso.Visualizar\r\n );\r\n }\r\n\r\n public novo() {\r\n this.router.navigate([ '/recomendacao/novo' ]);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.recomendacaoService\r\n .obter(this.searchNome, this.searchAtivo)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n });\r\n }\r\n\r\n public reativar(id: number) {\r\n this.recomendacaoService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro reativado com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public excluir(id: number) {\r\n this.recomendacaoService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro excluído com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.constatacaoService\r\n .obterPorRecomendacaoId(id)\r\n .then((res) => {\r\n if (res.dados == null) {\r\n this.recomendacaoService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro inativado com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Recomendação vinculada a uma constatação',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n public visualizar(id: number) {\r\n this.router.navigate([ `/recomendacao/${id}/visualizar` ]);\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([ `/recomendacao/${id}` ]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Recomendação
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Recomendação\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Recomendação {{element.nome}} Marco \r\n Interna\r\n Externa\r\n Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from \"@angular/core\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IBaseModel } from \"src/app/models/base.model\";\r\nimport { IRiscosModel } from \"src/app/models/riscos.model\";\r\nimport { IEnumModel } from \"src/app/models/enum.model\";\r\nimport { RiscosService } from \"src/app/services/riscos.service\";\r\nimport { CategoriaRiscoService } from \"src/app/services/categoria-risco.service\";\r\nimport { TipoEnfaseService } from \"src/app/services/tipo-enfase.service\";\r\nimport { SubtipoAuditoriaService } from \"src/app/services/subtipo-auditoria.service\";\r\nimport { ICategoriaRiscoModel } from \"src/app/models/categoria-risco.model\";\r\nimport { ITipoEnfaseModel } from \"src/app/models/tipo-enfase.model\";\r\nimport { ISubtipoAuditoriaModel } from \"src/app/models/subtipo-auditoria.model\";\r\nimport { FiltroModel } from \"src/app/models/filtro.model\";\r\nimport { BaseFormComponent } from \"../../shared/components/base-form/base-form.component\";\r\nimport Swal from \"sweetalert2\";\r\n\r\n@Component({\r\n\tselector: \"app-riscos-form\",\r\n\ttemplateUrl: \"./riscos-form.component.html\",\r\n\tstyleUrls: [\"./riscos-form.component.scss\"],\r\n})\r\nexport class RiscosFormComponent extends BaseFormComponent implements OnInit {\r\n\tpublic enumCategoriaRisco = [] as IEnumModel[];\r\n\tpublic model: IRiscosModel = {} as IRiscosModel;\r\n\r\n\tpublic categorias: { resultado: ICategoriaRiscoModel[] } = {\r\n\t\tresultado: [],\r\n\t};\r\n\tpublic tipoEnfase: { resultado: ITipoEnfaseModel[] } = { resultado: [] };\r\n\tpublic subtipoAuditoria = [] as ISubtipoAuditoriaModel[];\r\n\tpublic searchNome: string;\r\n\tpublic searchAtivo = true;\r\n\r\n\tpublic form = new FormGroup({\r\n\t\tid: new FormControl({ value: \"\", disabled: true }),\r\n\t\tnome: new FormControl(\"\", Validators.required),\r\n\t\tcategoriaRiscoId: new FormControl(null, Validators.required),\r\n\t\ttipoEnfaseId: new FormControl(null),\r\n\t\tsubtipoAuditoriaId: new FormControl(null),\r\n\t\tdescricao: new FormControl(\"\", Validators.required),\r\n\t});\r\n\r\n\tconstructor(\r\n\t\troute: ActivatedRoute,\r\n\t\ttoastr: ToastrService,\r\n\t\trouter: Router,\r\n\t\tlocaleService: BsLocaleService,\r\n\t\tprivate riscosService: RiscosService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tpublic categoriaRiscoService: CategoriaRiscoService,\r\n\t\tpublic tipoEnfaseService: TipoEnfaseService,\r\n\t\tpublic subtipoAuditoriaService: SubtipoAuditoriaService\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\r\n\t\tif (this.novoRegistro) {\r\n\t\t\tthis.titulo = \"Novo Risco\";\r\n\t\t}\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\ttry {\r\n\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\tconst res = await this.riscosService.obterPorId(this.id);\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.model = res.dados;\r\n\r\n\t\t\t\t\tif (this.visualizar) {\r\n\t\t\t\t\t\tthis.titulo = \"Visualizar Risco - \" + this.model.nome;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.titulo = \"Editar Risco - \" + this.model.nome;\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t\t\tthis.router.navigate([\"/riscos\"]);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.form.patchValue(this.model);\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem);\r\n\t\t\tthis.router.navigate([\"/riscos\"]);\r\n\t\t}\r\n\t\tthis.carregaCategoriaRisco();\r\n\t\tthis.carregaTipoEnfase();\r\n\t\tthis.carregaSubtipoAuditoria();\r\n\t}\r\n\r\n\tpublic async salvarDados(salvarEFechar: boolean) {\r\n\t\tif (this.form.invalid) {\r\n\t\t\tthis.exibirMensagemAlerta(\"Formulário inválido\");\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.submit = true;\r\n\r\n\t\tthis.atualizarModel(this.form.value);\r\n\r\n\t\ttry {\r\n\t\t\tlet res: IBaseModel = null;\r\n\r\n\t\t\tif (!this.novoRegistro) {\r\n\t\t\t\tres = await this.riscosService.atualizar(this.model);\r\n\t\t\t} else {\r\n\t\t\t\tres = await this.riscosService.inserir(this.model);\r\n\t\t\t}\r\n\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tthis.exibirMensagemSucesso(res.mensagem.descricao);\r\n\t\t\t\tif (salvarEFechar == true) this.router.navigate([\"/riscos\"]);\r\n\t\t\t\telse if (this.novoRegistro) {\r\n\t\t\t\t\tthis.router.navigate([`/riscos/${res.dados.id}`]);\r\n\t\t\t\t\tawait this.ngOnInit();\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tconst validacoes = this.montarMensagensValidacao(res);\r\n\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.exibirMensagemErro(err.mensagem);\r\n\t\t}\r\n\t}\r\n\tpublic async carregaCategoriaRisco() {\r\n\t\tconst filtro = {} as FiltroModel;\r\n\t\tthis.categoriaRiscoService\r\n\t\t\t.obterTodos(filtro)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (Array.isArray(res.dados.resultado)) {\r\n\t\t\t\t\tthis.categorias = res.dados;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(\r\n\t\t\t\t\t\t\"O resultado não é um array:\",\r\n\t\t\t\t\t\tres.dados.resultado\r\n\t\t\t\t\t);\r\n\t\t\t\t\tthis.categorias = { resultado: [] };\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemAlerta(err.mensagem.descricao);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic async carregaTipoEnfase() {\r\n\t\tconst filtro = {} as FiltroModel;\r\n\t\tthis.tipoEnfaseService\r\n\t\t\t.obterTodos(filtro)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (Array.isArray(res.dados.resultado)) {\r\n\t\t\t\t\tthis.tipoEnfase = res.dados;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(\r\n\t\t\t\t\t\t\"O resultado não é um array:\",\r\n\t\t\t\t\t\tres.dados.resultado\r\n\t\t\t\t\t);\r\n\t\t\t\t\tthis.tipoEnfase = { resultado: [] };\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemAlerta(err.mensagem.descricao);\r\n\t\t\t});\r\n\t}\r\n\tpublic async carregaSubtipoAuditoria() {\r\n\t\tthis.subtipoAuditoriaService\r\n\t\t\t.obter(this.searchNome, this.searchAtivo, true)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.subtipoAuditoria = res.dados;\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemAlerta(err.mensagem.descricao);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic async onSubmit() {\r\n\t\tthis.submit = true;\r\n\t\tthis.salvarDados(false);\r\n\t}\r\n\r\n\tprivate atualizarModel(values: any) {\r\n\t\tObject.assign(this.model, values);\r\n\t}\r\n\r\n\tpublic onBack() {\r\n\t\tthis.router.navigate([\"/riscos\"]);\r\n\t}\r\n\r\n\tpublic cancelar() {\r\n\t\tthis.router.navigate([\"/riscos\"]);\r\n\t}\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
    \r\n\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tPágina Inicial\r\n\t\t\t\t\t
  2. \r\n\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t Riscos\r\n\t\t\t\t\t
  4. \r\n\t\t\t\t\t
  5. {{ titulo }}
  6. \r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{ titulo }}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tCampo obrigatório\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tCampo obrigatório\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tCampo obrigatório\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tCampo obrigatório\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t Salvar\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tSalvar\r\n\t\t\t\t\t\t\t\t\tSalvar e fechar\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Cancelar\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Cancelar\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n","import { Component, OnInit, ViewChild } from \"@angular/core\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { Router } from \"@angular/router\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { defaultDataAcessor } from \"src/app/core/helpers/mat-sort-data-accessor\";\r\nimport { EnumAcaoRecurso } from \"src/app/models/enum/acao-recurso.enum\";\r\nimport { EnumRecursoPerfil } from \"src/app/models/enum/recurso-perfil.enum\";\r\nimport { IPermissaoModel } from \"src/app/models/permissao.model\";\r\nimport { IRiscosModel } from \"src/app/models/riscos.model\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { RiscosService } from \"src/app/services/riscos.service\";\r\nimport { FiltroModel } from \"src/app/models/filtro.model\";\r\nimport { TipoEnfaseService } from \"src/app/services/tipo-enfase.service\";\r\nimport { SubtipoAuditoriaService } from \"src/app/services/subtipo-auditoria.service\";\r\nimport { BaseListComponent } from \"src/app/shared/components/base-list/base-list.component\";\r\nimport { CategoriaRiscoService } from \"src/app/services/categoria-risco.service\";\r\nimport { ICategoriaRiscoModel } from \"src/app/models/categoria-risco.model\";\r\nimport Swal from \"sweetalert2\";\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n\tswitch (property) {\r\n\t\tcase \"nome\":\r\n\t\t\treturn item.nome.trim().toLowerCase();\r\n\t\tcase \"categoriaRisco\":\r\n\t\t\treturn item.categoriaRisco.trim().toLowerCase;\r\n\t\tcase \"tipoEnfase\":\r\n\t\t\treturn item.tipoEnfase.trim().toLowerCase;\r\n\t\tcase \"subtipoAuditoria\":\r\n\t\t\treturn item.subtipoAuditoria.trim().toLowerCase;\r\n\t\tcase \"ativo\":\r\n\t\t\treturn item.ativo;\r\n\t\tdefault:\r\n\t\t\treturn item.nome.trim().toLowerCase();\r\n\t}\r\n};\r\n\r\n@Component({\r\n\tselector: \"app-riscos-list\",\r\n\ttemplateUrl: \"./riscos-list.component.html\",\r\n\tstyleUrls: [\"./riscos-list.component.scss\"],\r\n})\r\nexport class RiscosListComponent extends BaseListComponent implements OnInit {\r\n\t// declarar aqui as variavis\r\n\tpublic dataSource = new MatTableDataSource([]);\r\n\tpublic selectedModel: IRiscosModel;\r\n\tpublic displayedColumns: string[] = [\r\n\t\t\"selecao\",\r\n\t\t\"nome\",\r\n\t\t\"categoriaRisco\",\r\n\t\t\"tipoEnfase\",\r\n\t\t\"subtipoAuditoria\",\r\n\t\t\"ativo\",\r\n\t];\r\n\tpublic searchNome: string;\r\n\tpublic searchAtivo = true;\r\n\tpublic semDados = true;\r\n\tpublic permissoes: IPermissaoModel;\r\n\tpublic filtro = {} as FiltroModel;\r\n\tpublic totalItens: number;\r\n\tpublic pageEvent: any;\r\n\tpublic categoriaRisco: { resultado: ICategoriaRiscoModel[] } = {\r\n\t\tresultado: [],\r\n\t};\r\n\tpublic riscos: any;\r\n\tpublic categorias: { nome: string }[] = [];\r\n\tpublic filtroSubTipoAuditoria: string | null = null;\r\n\tpublic filtroCategoriaRisco: string | null = null;\r\n\tpublic filtroTipoEnfase: string | null = null;\r\n\r\n\t@ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n\t@ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n\t@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n\tconstructor(\r\n\t\tprivate authService: AuthService,\r\n\t\tprivate riscosService: RiscosService,\r\n\t\tprivate router: Router,\r\n\t\tpublic tipoEnfaseService: TipoEnfaseService,\r\n\t\tpublic subtipoAuditoriaService: SubtipoAuditoriaService,\r\n\t\tpublic categoriaRiscoService: CategoriaRiscoService,\r\n\t\tprivate toastr: ToastrService\r\n\t) {\r\n\t\tsuper();\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\tthis.setarPermissoes();\r\n\t\tthis.configurarFiltro();\r\n\t\tawait this.buscar();\r\n\t\tthis.dataSource.sort = this.sort;\r\n\t}\r\n\r\n\tprivate setarPermissoes(): void {\r\n\t\tthis.permissoes = new IPermissaoModel();\r\n\t\tthis.permissoes.consultar = this.authService.possuiPermissao(\r\n\t\t\tEnumRecursoPerfil.Cadastros,\r\n\t\t\tEnumAcaoRecurso.Consultar\r\n\t\t);\r\n\t\tthis.permissoes.editar = this.authService.possuiPermissao(\r\n\t\t\tEnumRecursoPerfil.Cadastros,\r\n\t\t\tEnumAcaoRecurso.Editar\r\n\t\t);\r\n\t\tthis.permissoes.excluir = this.authService.possuiPermissao(\r\n\t\t\tEnumRecursoPerfil.Cadastros,\r\n\t\t\tEnumAcaoRecurso.Excluir\r\n\t\t);\r\n\t\tthis.permissoes.inativarReativar = this.authService.possuiPermissao(\r\n\t\t\tEnumRecursoPerfil.Cadastros,\r\n\t\t\tEnumAcaoRecurso.AtivarInativar\r\n\t\t);\r\n\t\tthis.permissoes.incluir = this.authService.possuiPermissao(\r\n\t\t\tEnumRecursoPerfil.Cadastros,\r\n\t\t\tEnumAcaoRecurso.Inserir\r\n\t\t);\r\n\t\tthis.permissoes.visualizar = this.authService.possuiPermissao(\r\n\t\t\tEnumRecursoPerfil.Cadastros,\r\n\t\t\tEnumAcaoRecurso.Visualizar\r\n\t\t);\r\n\t}\r\n\r\n\tngAfterViewInit() {\r\n\t\tthis.configurarFiltro();\r\n\r\n\t\tthis.getCategoriaRisco();\r\n\t\tthis.getSubtiposAuditoria();\r\n\t\tthis.getTipoEnfase();\r\n\r\n\t\tthis.buscar();\r\n\t\tthis.dataSource.sort = this.sort;\r\n\t\tthis.dataSource.paginator = this.paginator;\r\n\t\tthis.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n\t}\r\n\r\n\tpublic novo() {\r\n\t\tthis.router.navigate([\"/riscos/novo\"]);\r\n\t}\r\n\r\n\tasync buscar() {\r\n\t\tthis.selectedModel = null;\r\n\t\tthis.riscosService\r\n\t\t\t.obter(this.filtro)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.totalItens = res.dados.totalItens;\r\n\t\t\t\tthis.dataSource = new MatTableDataSource(res.dados.resultado);\r\n\t\t\t\tthis.riscos = res.dados.resultado;\r\n\t\t\t\tthis.paginator = this.tableOnePaginator;\r\n\t\t\t\tthis.paginator.length = this.totalItens;\r\n\t\t\t\tthis.dataSource.sort = this.sort;\r\n\t\t\t\tthis.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n\t\t\t\tthis.dataSource.sortingDataAccessor = (data, sortHeaderId) => {\r\n\t\t\t\t\tswitch (sortHeaderId) {\r\n\t\t\t\t\t\tcase \"categoriaRisco\":\r\n\t\t\t\t\t\t\treturn data.nomeCategoriaRisco?.toLowerCase() || \"\";\r\n\t\t\t\t\t\tcase \"nome\":\r\n\t\t\t\t\t\t\treturn data.nome.toLowerCase();\r\n\t\t\t\t\t\tcase \"tipoEnfase\":\r\n\t\t\t\t\t\t\treturn data.nomeTipoEnfase.toLowerCase();\r\n\t\t\t\t\t\tcase \"subtipoAuditoria\":\r\n\t\t\t\t\t\t\treturn data.nomeSubTipoAuditoria.toLowerCase();\r\n\t\t\t\t\t\tcase \"ativo\":\r\n\t\t\t\t\t\t\treturn data.ativo;\r\n\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\treturn data[sortHeaderId];\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\t\t\t\tthis.dataSource._updateChangeSubscription();\r\n\t\t\t\tthis.semDados = this.dataSource.filteredData.length === 0;\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic reativar(id: number) {\r\n\t\tthis.riscosService\r\n\t\t\t.reativar(id)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.exibirMensagemSucesso(\" Risco reativado com sucesso.\");\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err);\r\n\t\t\t})\r\n\t\t\t.finally(() => {\r\n\t\t\t\tthis.buscar();\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic inativar(id: number) {\r\n\t\tthis.riscosService\r\n\t\t\t.inativar(id)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.exibirMensagemSucesso(\"Riscos inativado com sucesso.\");\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem);\r\n\t\t\t})\r\n\t\t\t.finally(() => {\r\n\t\t\t\tthis.buscar();\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic editar(id: number) {\r\n\t\tthis.router.navigate([`/riscos/${id}`]);\r\n\t}\r\n\r\n\tpublic selecionar(item: any) {\r\n\t\tthis.selectedModel =\r\n\t\t\t!this.selectedModel || this.selectedModel.id !== item.id\r\n\t\t\t\t? item\r\n\t\t\t\t: null;\r\n\t}\r\n\r\n\tpublic excluir(id: number) {\r\n\t\tthis.riscosService\r\n\t\t\t.excluir(id)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.exibirMensagemSucesso(\"Risco excluído com sucesso.\");\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem);\r\n\t\t\t})\r\n\t\t\t.finally(() => {\r\n\t\t\t\tthis.buscar();\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic visualizar(id: number) {\r\n\t\tthis.router.navigate([`/riscos/${id}/visualizar`]);\r\n\t}\r\n\r\n\tprivate configurarFiltro() {\r\n\t\tthis.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n\t\tthis.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n\t\tthis.filtro.colunaOrder = this.sort.active;\r\n\t\tthis.filtro.ativo = this.searchAtivo;\r\n\t\tthis.filtro.pesquisa = this.searchNome;\r\n\t\tthis.filtro.direcao = this.sort.direction;\r\n\t}\r\n\r\n\tsortData(sort) {\r\n\t\tthis.filtro.colunaOrder = sort.active;\r\n\t\tthis.filtro.direcao = sort.direction;\r\n\r\n\t\tthis.buscar();\r\n\t}\r\n\r\n\tpageChanged(e) {\r\n\t\tthis.filtro.pagina = e.pageIndex + 1;\r\n\t\te.pageIndex = this.filtro.pagina;\r\n\t\tthis.filtro.itensPorPagina = e.pageSize;\r\n\t\tthis.buscar();\r\n\t}\r\n\r\n\t//funções do filtro para filtrar por cada tipo\r\n\r\n\tprivate uniqueFilters: Set = new Set();\r\n\r\n\tpublic selecionarCategoria(nomeCategoria: string) {\r\n\t\tthis.filtroCategoriaRisco = nomeCategoria;\r\n\t\tthis.dataSource.filter = nomeCategoria.trim().toLowerCase() || \"\";\r\n\t\tthis.filtroSubTipoAuditoria = \"\";\r\n\t\tthis.filtroTipoEnfase = \"\";\r\n\r\n\t\tthis.uniqueFilters.clear();\r\n\t\tif (nomeCategoria) {\r\n\t\t\tthis.uniqueFilters.add(nomeCategoria.trim().toLowerCase());\r\n\r\n\t\t\tthis.dataSource.filterPredicate = (\r\n\t\t\t\tdata: IRiscosModel,\r\n\t\t\t\tfilter: string\r\n\t\t\t) => {\r\n\t\t\t\tconst filterValues = filter\r\n\t\t\t\t\t.split(\"|\")\r\n\t\t\t\t\t.map((value) => value.trim().toLowerCase());\r\n\t\t\t\treturn filterValues.includes(\r\n\t\t\t\t\tdata.nomeCategoriaRisco.trim().toLowerCase()\r\n\t\t\t\t);\r\n\t\t\t};\r\n\r\n\t\t\tthis.dataSource.filter = Array.from(this.uniqueFilters).join(\"|\");\r\n\t\t} else {\r\n\t\t\tthis.uniqueFilters.clear();\r\n\t\t\tthis.dataSource.filter = \"\";\r\n\t\t}\r\n\t}\r\n\r\n\tpublic selecionarTipoEnfase(nomeTipoEnfase: string) {\r\n\t\tthis.filtroTipoEnfase = nomeTipoEnfase;\r\n\t\tthis.dataSource.filter = nomeTipoEnfase.trim().toLowerCase() || \"\";\r\n\t\tthis.filtroCategoriaRisco = \"\";\r\n\t\tthis.filtroSubTipoAuditoria = \"\";\r\n\r\n\t\tthis.uniqueFilters.clear();\r\n\t\tif (nomeTipoEnfase) {\r\n\t\t\tthis.uniqueFilters.add(nomeTipoEnfase.trim().toLowerCase());\r\n\r\n\t\t\tthis.dataSource.filterPredicate = (\r\n\t\t\t\tdata: IRiscosModel,\r\n\t\t\t\tfilter: string\r\n\t\t\t) => {\r\n\t\t\t\tconst filterValues = filter\r\n\t\t\t\t\t.split(\"|\")\r\n\t\t\t\t\t.map((value) => value.trim().toLowerCase());\r\n\t\t\t\treturn filterValues.includes(\r\n\t\t\t\t\tdata.nomeTipoEnfase.trim().toLowerCase()\r\n\t\t\t\t);\r\n\t\t\t};\r\n\r\n\t\t\tthis.dataSource.filter = Array.from(this.uniqueFilters).join(\"|\");\r\n\t\t} else {\r\n\t\t\tthis.uniqueFilters.clear();\r\n\t\t\tthis.dataSource.filter = \"\";\r\n\t\t}\r\n\t}\r\n\r\n\tpublic selecionarSubTipoAuditoria(nomeSubTipoAuditoria: string) {\r\n\t\tthis.filtroSubTipoAuditoria = nomeSubTipoAuditoria;\r\n\t\tthis.dataSource.filter =\r\n\t\t\tnomeSubTipoAuditoria.trim().toLowerCase() || \"\";\r\n\t\tthis.filtroCategoriaRisco = \"\";\r\n\t\tthis.filtroTipoEnfase = \"\";\r\n\r\n\t\tthis.uniqueFilters.clear();\r\n\r\n\t\tif (nomeSubTipoAuditoria) {\r\n\t\t\tthis.uniqueFilters.add(nomeSubTipoAuditoria.trim().toLowerCase());\r\n\r\n\t\t\tthis.dataSource.filterPredicate = (\r\n\t\t\t\tdata: IRiscosModel,\r\n\t\t\t\tfilter: string\r\n\t\t\t) => {\r\n\t\t\t\tconst filterValues = filter\r\n\t\t\t\t\t.split(\"|\")\r\n\t\t\t\t\t.map((value) => value.trim().toLowerCase());\r\n\t\t\t\treturn filterValues.includes(\r\n\t\t\t\t\tdata.nomeSubTipoAuditoria.trim().toLowerCase()\r\n\t\t\t\t);\r\n\t\t\t};\r\n\r\n\t\t\tthis.dataSource.filter = Array.from(this.uniqueFilters).join(\"|\");\r\n\t\t} else {\r\n\t\t\tthis.uniqueFilters.clear();\r\n\t\t\tthis.dataSource.filter = \"\";\r\n\t\t}\r\n\t}\r\n\r\n\t// funções para popular filtro e retirar duplicatas\r\n\tlistaCategoria: any[] = [];\r\n\tlistaTipoEnfase: any[] = [];\r\n\tlistaSubTipoAuditoria: any[] = [];\r\n\r\n\tpublic getSubtiposAuditoria() {\r\n\t\tthis.riscosService\r\n\t\t\t.obterSubTipoAuditoria()\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.listaSubTipoAuditoria = res.dados;\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.toastr.error(err.mensagem.descricao, 'Atenção');\r\n\t\t\t})\r\n\t}\r\n\r\n\tpublic getTipoEnfase() {\r\n\t\tthis.riscosService\r\n\t\t\t.obterTipoEnfase()\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.listaTipoEnfase = res.dados;\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.toastr.error(err.mensagem.descricao, 'Atenção');\r\n\t\t\t})\r\n\t}\r\n\r\n\tpublic getCategoriaRisco() {\r\n\t\tthis.riscosService\r\n\t\t\t.obterCategorias()\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.listaCategoria = res.dados;\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.toastr.error(err.mensagem.descricao, 'Atenção');\r\n\t\t\t})\r\n\t}\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
    \r\n\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tPágina Inicial\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
  2. \r\n\t\t\t\t\t
  3. Riscos
  4. \r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tRiscos\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t Novo\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t Editar\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tReativar\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t Excluir\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tVisualizar\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tCategoria\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tTodos os Resultados\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ categoria.nome }}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tTipo Enfase\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tTodos os Resultados\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ tipoEnfase.nome }}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tSubtipo de Auditoria\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tTodos os Resultados\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ subTipo.nome }}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tExibir todos\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tExibir somente ativos\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tExibir somente inativos\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tNome\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nome }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tCategoria\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nomeCategoriaRisco }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tTipo de Enfase\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nomeTipoEnfase }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tSubtipo de Auditoria\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.nomeSubTipoAuditoria }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tSituação\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tAtivo\r\n\t\t\t\t\t\t\t\t\t\tInativo\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tNenhum registro encontrado.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n","\r\nimport { AfterViewInit, Component, Inject, OnInit} from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport Inputmask from 'inputmask';\r\nimport Swal from 'sweetalert2';\r\nimport { PeriodoExercicioService } from 'src/app/services/periodo-exercicio.service';\r\nimport { IPeriodoExercicioModel } from 'src/app/models/periodo-exercicio.model';\r\nimport { INaturezaResponsabilidadeModel } from 'src/app/models/natureza-responsabilidade';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { IAtoNomeacaoModel } from 'src/app/models/ato-nomeacao.model';\r\nimport { NaturezaResponsabilidadeService } from 'src/app/services/natureza-responsabilidade.service';\r\nimport { LookupModalComponent } from 'src/app/shared/components/lookup-modal/lookup-modal.component';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { IAtoExoneracaoModel } from 'src/app/models/ato-exoneracao.model';\r\n\r\n@Component({\r\n selector: 'app-modal-incluir-periodo-exercicio',\r\n templateUrl: './modal-incluir-periodo-exercicio.component.html',\r\n styleUrls: ['./modal-incluir-periodo-exercicio.component.scss'],\r\n})\r\nexport class ModalIncluirPeriodoExercicioComponent\r\n implements OnInit, AfterViewInit {\r\n\r\n public enumTipoAgente = [];\r\n public enumTipoAto = [];\r\n public model: IPeriodoExercicioModel = {} as IPeriodoExercicioModel;\r\n public visualizar = true;\r\n public submited = false;\r\n public dataInicio: Date;\r\n public dataFim: Date;\r\n public dataAtoNomeacao: Date;\r\n public dataPublicacaoNomeacao: Date;\r\n public dataAtoExoneracao: Date;\r\n public dataPublicacaoExoneracao: Date;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n private periodoExercicioService: PeriodoExercicioService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private naturezaResponsabilidadeService: NaturezaResponsabilidadeService,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.model.responsavelId = data.responsavelId;\r\n this.model.unidadeGestoraId = data.unidadeGestoraId;\r\n\r\n if (data.editar) {\r\n if (!data.element?.id) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Responsável não encontrado.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.dialogRef.close(true);\r\n }\r\n else {\r\n this.obterPorId(data.element.id);\r\n }\r\n }\r\n this.visualizar = data.visualizar;\r\n }\r\n\r\n onDataInicioChange(newDate: Date) {\r\n this.dataInicio = new Date(newDate);\r\n }\r\n\r\n onDataFimChange(newDate: Date) {\r\n this.dataFim = new Date(newDate);\r\n }\r\n\r\n onDataAtoNomeacaoChange(newDate: Date) {\r\n this.dataAtoNomeacao = new Date(newDate);\r\n }\r\n\r\n onDataPublicacaoNomeacaoChange(newDate: Date) {\r\n this.dataPublicacaoNomeacao = new Date(newDate);\r\n }\r\n\r\n onNumeroNomeacaoChange(numero: number) {\r\n if (!this.model.atoNomeacao) {\r\n this.model.atoNomeacao = {} as IAtoNomeacaoModel;\r\n }\r\n this.model.atoNomeacao.numero = numero;\r\n }\r\n\r\n onDataAtoExoneracaoChange(newDate: Date) {\r\n this.dataAtoExoneracao = new Date(newDate);\r\n }\r\n\r\n onDataPublicacaoExoneracaoChange(newDate: Date) {\r\n this.dataPublicacaoExoneracao = new Date(newDate);\r\n }\r\n\r\n onNumeroExoneracaoChange(numero: number) {\r\n if (!this.model.atoExoneracao) {\r\n this.model.atoExoneracao = {} as IAtoExoneracaoModel;\r\n }\r\n this.model.atoExoneracao.numero = numero;\r\n }\r\n\r\n onTipoAtoNomeacaoChange(event: any) {\r\n if (!this.model.atoNomeacao) {\r\n this.model.atoNomeacao = {} as IAtoNomeacaoModel;\r\n if (!this.model.atoNomeacao.tipoAto) {\r\n this.model.atoNomeacao.tipoAto = {} as IEnumModel;\r\n }\r\n }\r\n this.model.atoNomeacao.tipoAto = {\r\n codigo: event.target.value\r\n } as IEnumModel;\r\n }\r\n\r\n onTipoAtoExoneracaoChange(event: any) {\r\n if (!this.model.atoExoneracao) {\r\n this.model.atoExoneracao = {} as IAtoExoneracaoModel;\r\n if (!this.model.atoExoneracao.tipoAto) {\r\n this.model.atoExoneracao.tipoAto = {} as IEnumModel;\r\n }\r\n }\r\n this.model.atoExoneracao.tipoAto = {\r\n codigo: event.target.value\r\n } as IEnumModel;\r\n }\r\n\r\n onTipoAgenteChange(event: any) {\r\n if (!this.model.tipoAgente) {\r\n this.model.tipoAgente = {\r\n codigo: event.target.value\r\n } as IEnumModel;\r\n }\r\n this.model.tipoAgente = {\r\n codigo: event.target.value\r\n } as IEnumModel;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.tabelaDominioService.obterTipoAgente().then((res) => this.enumTipoAgente = res.dados);\r\n this.tabelaDominioService.obterTipoAto().then((res) => this.enumTipoAto = res.dados);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n public obterPorId(id: number) {\r\n this.periodoExercicioService.obterPorId(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n this.dataInicio = this.model.dataInicio ? new Date(this.model.dataInicio) : null;\r\n this.dataFim = this.model.dataFim ? new Date(this.model.dataFim) : null;\r\n this.dataAtoNomeacao = this.model.atoNomeacao?.dataAto ? new Date(this.model.atoNomeacao.dataAto) : null;\r\n this.dataPublicacaoNomeacao = this.model.atoNomeacao?.dataPublicacao ? new Date(this.model.atoNomeacao.dataPublicacao) : null;\r\n this.dataAtoExoneracao = this.model.atoExoneracao?.dataAto ? new Date(this.model.atoExoneracao.dataAto) : null;\r\n this.dataPublicacaoExoneracao = this.model.atoNomeacao?.dataPublicacao ? new Date(this.model.atoExoneracao.dataPublicacao) : null;\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n public concluir(fechar: boolean) {\r\n\r\n this.submited = false;\r\n \r\n this.model.dataInicio = this.dataInicio ? new Date(this.dataInicio) : null;\r\n this.model.dataFim = this.dataFim ? new Date(this.dataFim) : null;\r\n\r\n if(this.model.dataFim){\r\n if(this.model.dataFim < this.model.dataInicio){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Data início não pode ser superior a data fim.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n }\r\n\r\n if (!this.model.atoNomeacao) { this.model.atoNomeacao = {} as IAtoNomeacaoModel; }\r\n if (!this.dataAtoNomeacao && !this.dataPublicacaoNomeacao && !this.model.atoNomeacao?.numero) { \r\n this.model.atoNomeacaoId = null; \r\n this.model.atoNomeacao = null; \r\n }\r\n else {\r\n this.model.atoNomeacao.dataAto = this.dataAtoNomeacao ? new Date(this.dataAtoNomeacao) : null;\r\n this.model.atoNomeacao.dataPublicacao = this.dataPublicacaoNomeacao ? new Date(this.dataPublicacaoNomeacao) : null; \r\n }\r\n\r\n if (!this.model.atoExoneracao) { this.model.atoExoneracao = {} as IAtoExoneracaoModel; }\r\n if (!this.dataAtoExoneracao && !this.dataPublicacaoExoneracao && !this.model.atoExoneracao?.numero) {\r\n this.model.atoExoneracao = null;\r\n this.model.atoExoneracaoId = null;\r\n }\r\n else {\r\n this.model.atoExoneracao.dataAto = this.dataAtoExoneracao ? new Date(this.dataAtoExoneracao) : null;\r\n this.model.atoExoneracao.dataPublicacao = this.dataPublicacaoExoneracao ? new Date(this.dataPublicacaoExoneracao) : null; \r\n }\r\n\r\n if (!this.model.naturezaResponsabilidadeId || !this.model.tipoAgente?.codigo\r\n || !this.model.unidadeGestoraId || !this.model.responsavelId || !this.model.dataInicio\r\n || !this.model.atoNomeacao || !this.model.atoNomeacao.tipoAto?.codigo || !this.model.atoNomeacao.dataAto || !this.model.atoNomeacao.numero || !this.model.atoNomeacao.dataPublicacao\r\n || (this.dataFim && !this.model.atoExoneracao?.dataAto && !this.model.atoExoneracao?.numero && !this.model.atoExoneracao?.dataPublicacao\r\n && !this.model.atoExoneracao?.tipoAto?.codigo)) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Formulário inválido',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.submited = true;\r\n return;\r\n }\r\n\r\n if (this.model.id) {\r\n this.periodoExercicioService.atualizar(this.model)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (fechar) {\r\n this.dialogRef.close(true); // Fecha a tela após salvar\r\n }\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n else {\r\n this.periodoExercicioService.inserir(this.model)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (fechar) {\r\n this.dialogRef.close(true);\r\n }\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n }\r\n\r\n public async exibirModalNaturezaResponsabilidade() {\r\n try {\r\n const res = await this.naturezaResponsabilidadeService.obter('', true);\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Natureza da Responsabilidade', res.dados);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.model.naturezaResponsabilidadeId = data.id;\r\n if (!this.model.naturezaResponsabilidade) { this.model.naturezaResponsabilidade = {} as INaturezaResponsabilidadeModel; }\r\n this.model.naturezaResponsabilidade.nome = data.nome;\r\n }\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public exibirModal(titulo: string, dados: any, exibirId = false, customizeColumns = null): MatDialogRef {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component-natureza';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = { titulo, dados, exibirId, customizeColumns };\r\n return this.matDialog.open(LookupModalComponent, dialogConfig);\r\n }\r\n\r\n public fechar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(true);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Incluir Período de exercício

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Ata de Nomeação/Designação

\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Ato de Exoneração

\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n Cancelar\r\n \r\n\r\n \r\n Fechar\r\n \r\n
\r\n \r\n\r\n","\r\nimport { AfterViewInit, Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport Inputmask from 'inputmask';\r\nimport { ModalCancelarComponent } from '../../../shared/components/modal-cancelar/modal-cancelar-component';\r\nimport Swal from 'sweetalert2';\r\nimport { PeriodoExercicioService } from 'src/app/services/periodo-exercicio.service';\r\nimport { ModalSelecionarResponsavelComponent } from '../modal-selecionar-responsavel/modal-selecionar-responsavel.component';\r\nimport { IPeriodoExercicioModel } from 'src/app/models/periodo-exercicio.model';\r\nimport { ResponsaveisService } from 'src/app/services/responsaveis.service ';\r\nimport { IResponsavelModel } from 'src/app/models/responsaveis.model';\r\nimport { ModalIncluirPeriodoExercicioComponent } from '../modal-incluir-periodo-exercicio/modal-incluir-periodo-exercicio.component';\r\n\r\n@Component({\r\n selector: 'app-modal-incluir-responsavel',\r\n templateUrl: './modal-incluir-responsavel.component.html',\r\n styleUrls: ['./modal-incluir-responsavel.component.scss'],\r\n})\r\nexport class ModalIncluirResponsavelComponent\r\n implements OnInit, AfterViewInit {\r\n\r\n public model: IResponsavelModel = {} as IResponsavelModel;\r\n public dataSource = new MatTableDataSource([]);\r\n public searchCpf: string;\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public visualizar = true;\r\n public semDados = true;\r\n public submited = false;\r\n public responsavelId;\r\n public unidadeGestoraId;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n private responsaveisService: ResponsaveisService,\r\n private periodoExercicioService: PeriodoExercicioService,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.visualizar = data.visualizar;\r\n this.unidadeGestoraId = data.unidadeGestoraId;\r\n if (!data.element?.idResponsavel) {\r\n if (data.editar) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Responsável não encontrado.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.dialogRef.close(true);\r\n }\r\n }\r\n else {\r\n this.obterResponsavelPorId(data.element.idResponsavel);\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n public obterResponsavelPorId(idResponsavel: string) {\r\n this.responsaveisService.obterPorResponsavelId(this.unidadeGestoraId, idResponsavel)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n this.responsavelId = res.dados.id;\r\n this.model.cpf = res.dados.cpf.padStart(11, '0');\r\n this.dataSource = new MatTableDataSource(this.model.periodoExercicio);\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n public async buscar() {\r\n\r\n this.periodoExercicioService.obterPorResponsavelId(this.unidadeGestoraId, this.model.responsavelId)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n });\r\n }\r\n\r\n public async obterPorCpf() {\r\n\r\n const cpfValido = this.isValidCPF(this.model.cpf);\r\n\r\n if (!cpfValido) {\r\n\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'warning',\r\n title: 'Atenção',\r\n text: 'CPF inválido, informe um CPF válido!',\r\n });\r\n\r\n return '';\r\n }\r\n\r\n await this.responsaveisService\r\n .ObterAgentePorCpf(this.unidadeGestoraId, this.model.cpf)\r\n .then((res) => {\r\n if (!res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'warning',\r\n title: 'Atenção',\r\n text: res.mensagem.descricao,\r\n });\r\n return;\r\n }\r\n this.model = res.dados;\r\n this.responsavelId = res.dados.id;\r\n this.model.cpf = res.dados.cpf.padStart(11, '0');\r\n this.dataSource = new MatTableDataSource(res.dados.periodoExercicio);\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n title: 'Atenção',\r\n text: err.mensagem.descricao,\r\n });\r\n })\r\n }\r\n\r\n public async concluir(salvar?: boolean) {\r\n\r\n this.submited = false;\r\n if (!this.model.cpf || !this.model.rg) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Formulário inválido',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.submited = true;\r\n return;\r\n }\r\n\r\n let res;\r\n if (this.model.id) {\r\n res = await this.responsaveisService.atualizar(this.model);\r\n }\r\n else {\r\n res = await this.responsaveisService.inserir(this.model);\r\n }\r\n\r\n try {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (salvar) { this.dialogRef.close(true); }\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (error) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: error.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n\r\n public modalSelecionarResponsavel() {\r\n\r\n try {\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component-selecionar-responsavel';\r\n dialogConfig.width = '700px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n\r\n const modal = this.matDialog.open(ModalSelecionarResponsavelComponent, dialogConfig);\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public fechar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n public cancelar() {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.data = { interno: true };\r\n this.matDialog.open(ModalCancelarComponent, dialogConfig).afterClosed();\r\n }\r\n\r\n public async modalIncluirPeriodoExercicio(editar?: boolean, element?: IPeriodoExercicioModel, indice?: number, visualizar?: boolean) {\r\n try {\r\n await this.concluir();\r\n if (!this.responsavelId) {\r\n await this.obterPorCpf();\r\n }\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component-incluir-periodo';\r\n dialogConfig.width = '1380px';\r\n dialogConfig.maxHeight = '700px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n element,\r\n editar,\r\n indice,\r\n visualizar,\r\n responsavelId: this.responsavelId,\r\n unidadeGestoraId: this.unidadeGestoraId,\r\n };\r\n const modal = this.matDialog.open(ModalIncluirPeriodoExercicioComponent, dialogConfig);\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.obterPorCpf();\r\n }\r\n });\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } \r\n }\r\n\r\n public isValidCPF(cpf) {\r\n // Validar se é String\r\n if (typeof cpf !== 'string') return false\r\n\r\n // Tirar formatação\r\n cpf = cpf.replace(/[^\\d]+/g, '')\r\n\r\n // Validar se tem tamanho 11 ou se é uma sequência de digitos repetidos\r\n if (cpf.length !== 11 || !!cpf.match(/(\\d)\\1{10}/)) return false\r\n\r\n // String para Array\r\n cpf = cpf.split('')\r\n\r\n const validator = cpf\r\n // Pegar os últimos 2 digitos de validação\r\n .filter((digit, index, array) => index >= array.length - 2 && digit)\r\n // Transformar digitos em números\r\n .map(el => +el)\r\n\r\n const toValidate = pop => cpf\r\n // Pegar Array de items para validar\r\n .filter((digit, index, array) => index < array.length - pop && digit)\r\n // Transformar digitos em números\r\n .map(el => +el)\r\n\r\n const rest = (count, pop) => (toValidate(pop)\r\n // Calcular Soma dos digitos e multiplicar por 10\r\n .reduce((soma, el, i) => soma + el * (count - i), 0) * 10)\r\n // Pegar o resto por 11\r\n % 11\r\n // transformar de 10 para 0\r\n % 10\r\n\r\n return !(rest(10, 2) !== validator[0] || rest(11, 1) !== validator[1])\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
Incluir responsável
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Períodos de Exercício

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Adicionar\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Ato de Nomeação/Designação\r\n \r\n Ato de Exoneração\r\n
Tipo de AgenteNatureza da responsabilidadeData InícioTipo de AtoNúmeroData do AtoData da PublicaçãoData FimTipo de AtoNúmeroData do AtoData da PublicaçãoAções
{{ element.tipoAgente?.descricao }}{{ element.naturezaResponsabilidade?.nome }}{{ element.dataInicio | date: \"dd/MM/yyyy\" }}{{ element.atoNomeacao?.tipoAto?.descricao }}{{ element.atoNomeacao?.numero }}\r\n {{ element.atoNomeacao?.dataAto | date: \"dd/MM/yyyy\" }}\r\n \r\n {{\r\n element.atoNomeacao?.dataPublicacao | date: \"dd/MM/yyyy\"\r\n }}\r\n {{ element.dataFim | date: \"dd/MM/yyyy\" }}{{ element.atoExoneracao?.tipoAto?.descricao }}{{ element.atoExoneracao?.numero }}\r\n {{ element.atoExoneracao?.dataAto | date: \"dd/MM/yyyy\" }}\r\n \r\n {{\r\n element.atoExoneracao?.dataPublicacao | date: \"dd/MM/yyyy\"\r\n }}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n Cancelar\r\n \r\n \r\n \r\n Fechar\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport Inputmask from 'inputmask';\r\nimport { ModalCancelarComponent } from '../../../shared/components/modal-cancelar/modal-cancelar-component';\r\nimport Swal from 'sweetalert2';\r\nimport { ISelecionarResponsavelModel } from 'src/app/models/selecionar-responsavel';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-selecionar-responsavel',\r\n templateUrl: './modal-selecionar-responsavel.component.html',\r\n styleUrls: ['./modal-selecionar-responsavel.component.scss'],\r\n})\r\nexport class ModalSelecionarResponsavelComponent\r\n implements OnInit, AfterViewInit {\r\n\r\n public displayedColumns = [\r\n 'cpf', 'nome', 'email',\r\n ];\r\n public dataSource = new MatTableDataSource([]);\r\n public searchNome: string;\r\n public seacrhEmail: string;\r\n public seacrCpf: number;\r\n public semDados = true;\r\n model: ISelecionarResponsavelModel;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.dataSource = new MatTableDataSource(data);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscar();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n public async selecionar() {\r\n {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'warning',\r\n text: 'Formulário inválido'\r\n });\r\n return;\r\n }\r\n }\r\n\r\n public async buscar() {\r\n this.dataSource = new MatTableDataSource([]);\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n\r\n public cancelar() {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.data = { interno: true };\r\n this.matDialog.open(ModalCancelarComponent, dialogConfig).afterClosed();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Selecionar Responsável

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n CPF {{element.cpf}} Nome {{element.nome}} E-mail {{element.email}}
\r\n\r\n \r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IRolResponsaveisModel } from 'src/app/models/rol-responsaveis.model';\r\nimport { IPeriodoExercicioModel } from 'src/app/models/periodo-exercicio.model';\r\nimport { RolResponsaveisService } from 'src/app/services/rol-responsaveis.service';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { ModalIncluirResponsavelComponent } from './modal-incluir-responsaveis/modal-incluir-responsavel.component';\r\nimport { IResponsavelModel } from 'src/app/models/responsaveis.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { ResponsaveisService } from 'src/app/services/responsaveis.service ';\r\nimport { PeriodoExercicioService } from 'src/app/services/periodo-exercicio.service';\r\nimport { IListaResponsavelModel } from 'src/app/models/lista-responsaveis.model';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'naturezaResponsabilidade':\r\n return item.nomeNaturezaResponsabilidadeId;\r\n case 'tipoAgente':\r\n return item.nomeTipoAgente; \r\n case 'Situação':\r\n return item.ativo; \r\n \r\n \r\n default:\r\n return item[property];\r\n }\r\n};\r\n@Component({\r\n selector: 'app-rol-responsaveis-form',\r\n templateUrl: './rol-responsaveis-form.component.html',\r\n styleUrls: ['./rol-responsaveis-form.component.scss'],\r\n})\r\nexport class RolResponsaveisFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IRolResponsaveisModel = {} as IRolResponsaveisModel;\r\n\r\n public selectedModel: IRolResponsaveisModel;\r\n public displayedColumns = [\r\n 'nome', 'naturezaResponsabilidade', 'tipoAgente', 'dataInicio', 'dataFim', 'ativo', 'actions'\r\n ];\r\n public dataSource = new MatTableDataSource([]);\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public dataInicio: Date;\r\n public dataFim: Date;\r\n public NaturezaResponsabilidade: string;\r\n public TipoAgente: string;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private responsaveisService: ResponsaveisService,\r\n private rolResponsaveisService: RolResponsaveisService,\r\n private periodoExercicioService: PeriodoExercicioService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Rol de Responsáveis';\r\n } \r\n }\r\n\r\n async ngOnInit() {\r\n\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.rolResponsaveisService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Rol de Responsáveis - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Rol de Responsáveis - ' + this.model.nome;\r\n }\r\n\r\n this.buscar();\r\n } else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/rolresponsaveis']);\r\n return;\r\n }\r\n }\r\n\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/rolresponsaveis']);\r\n } \r\n }\r\n\r\n public async buscar() {\r\n\r\n if (this.dataInicio && this.dataFim && this.dataInicio.getTime() > this.dataFim.getTime()) {\r\n this.exibirMensagemAlerta('Data inicial não pode ser maior que a data final');\r\n return;\r\n }\r\n\r\n this.responsaveisService\r\n .obterListaResponsaveis(this.id, this.searchNome,this.NaturezaResponsabilidade, this.TipoAgente, this.searchAtivo, this.dataInicio, this.dataFim, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public async modalIncluirResponsavel(editar?: boolean, element?: IResponsavelModel, visualizar?: boolean) {\r\n try {\r\n \r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component-incluir-responsavel';\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n element,\r\n editar,\r\n visualizar,\r\n unidadeGestoraId: this.id\r\n };\r\n const modal = this.matDialog.open(ModalIncluirResponsavelComponent, dialogConfig);\r\n modal.afterClosed().subscribe((sucesso) => {\r\n if (sucesso) {\r\n this.buscar();\r\n }\r\n });\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } finally {\r\n this.buscar();\r\n }\r\n }\r\n\r\n public async inativarReativarResponsaveis(id: number, acao: boolean) {\r\n let res;\r\n if (acao) {\r\n Swal.fire({\r\n title: 'Reativar Registro',\r\n text: 'Tem certeza que deseja reativar esse Registro?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(async (confirm) => {\r\n if(confirm.value) {\r\n res = await this.periodoExercicioService.reativar(id);\r\n }if (res.sucesso) {\r\n this.buscar();\r\n }else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n }\r\n else {\r\n Swal.fire({\r\n title: 'Inativar Registro',\r\n text: 'Tem certeza que deseja inativar esse Registro?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(async (confirm) => {\r\n if(confirm.value) {\r\n res = await this.periodoExercicioService.inativar(id);\r\n }\r\n if (res.sucesso) {\r\n this.buscar();\r\n }else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n });\r\n }\r\n }\r\n\r\n public excluirResponsaveis(id: number) {\r\n Swal.fire({\r\n title: 'Excluir Registro',\r\n text: 'Tem certeza que deseja excluir esse Registro?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n if(res.value) {\r\n this.periodoExercicioService.excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.buscar();\r\n }\r\n else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n });\r\n }\r\n })\r\n \r\n }\r\n\r\n public async imprimir() {\r\n this.router.navigate([`/rolresponsaveis/relatorio/unidades-gestoras`, { ids: this.id }]);\r\n }\r\n\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigate(['/rolresponsaveis']);\r\n }\r\n\r\n public cancelar() {\r\n this.submit = false;\r\n this.router.navigate(['/rolresponsaveis']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Rol de Responsáveis\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n Responsáveis\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Adicionar\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Exibir todos\r\n Exibir somente ativos\r\n Exibir somente inativos\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
Nome{{ element.nome }}Natureza da Responsabilidade{{ element.nomeNaturezaResponsabilidadeId }}Tipo de Agente{{ element.nomeTipoAgente }}Data Início{{ element.dataInicio | date: 'dd/MM/yyyy' }}Data Fim{{ element.dataFim | date: 'dd/MM/yyyy' }}Situação\r\n Ativo\r\n Inativo\r\n Visualizar\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Nenhum registro encontrado.\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Fechar\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n","import { Component, Injectable, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { IRolResponsaveisModel } from 'src/app/models/rol-responsaveis.model';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { RolResponsaveisService } from 'src/app/services/rol-responsaveis.service';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\nimport { ModalSelecionarUgImprimirComponent } from '../rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/modal-selecionar-ug-imprimir/modal-selecionar-ug-imprimir.component';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\n@Component({\r\n selector: 'app-rol-responsaveis-list',\r\n templateUrl: './rol-responsaveis-list.component.html',\r\n styleUrls: ['./rol-responsaveis-list.component.scss'],\r\n})\r\nexport class RolResponsaveisListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n private unidadesGestorasImprimirRolSource = new BehaviorSubject([]);\r\n unidadesGestorasImprimirRol = this.unidadesGestorasImprimirRolSource.asObservable();\r\n public ugSemDados = true;\r\n public selectedModel: IRolResponsaveisModel;\r\n public displayedColumns: string[] = [\r\n 'selecao',\r\n 'codigoUg',\r\n 'nome',\r\n 'dataInicio',\r\n 'dataFim',\r\n 'quantidadeResponsaveis',\r\n 'ativo',\r\n ];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public dataInicio: Date;\r\n public dataFim: Date;\r\n public semDados = true;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private rolResponsaveisService: RolResponsaveisService,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n private router: Router,\r\n public matDialog: MatDialog,\r\n private authService : AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Imprimir);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n if (this.dataInicio && this.dataFim && this.dataInicio.getTime() > this.dataFim.getTime()) {\r\n this.exibirMensagemAlerta('Data inicial não pode ser maior que a data final');\r\n return;\r\n }\r\n\r\n this.rolResponsaveisService\r\n .obter(this.searchNome, this.searchAtivo, this.dataInicio, this.dataFim, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n title: 'Atenção',\r\n text: err.mensagem.descricao,\r\n });\r\n })\r\n }\r\n\r\n public inativar(id: number) {\r\n this.rolResponsaveisService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Rol de Responsável inativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public reativar(id: number) {\r\n this.rolResponsaveisService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Rol de Responsável reativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/rolresponsaveis/${id}/visualizar`]);\r\n }\r\n\r\n public responsaveis(id: number) {\r\n this.router.navigate([`/rolresponsaveis/${id}/responsaveis`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel =\r\n !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public imprimirRol() {\r\n this.router.navigate([`/rolresponsaveis/relatorio`]);\r\n }\r\n\r\n public async exibirModalUgImprimir() {\r\n try {\r\n\r\n const res = await this.unidadeGestoraService.obter();\r\n if (res.sucesso) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = res.dados.resultado;\r\n \r\n const modal = this.matDialog.open(\r\n ModalSelecionarUgImprimirComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((data: IUnidadeGestoraModel[]) => {\r\n if (data) {\r\n let ids = '';\r\n data.forEach(element => {\r\n if (element.id) { ids += `${element.id};`; }\r\n });\r\n this.router.navigate([`/rolresponsaveis/relatorio/unidades-gestoras`, { ids }]);\r\n }\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Rol de Responsáveis
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Rol de Responsáveis\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Responsáveis\r\n \r\n \r\n \r\n Visualizar\r\n \r\n \r\n \r\n
\r\n \r\n Imprimir Rol\r\n \r\n \r\n Imprimir Rol por Unidade Gestora\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n Reativar\r\n \r\n \r\n \r\n Inativar\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Exibir todos\r\n Exibir somente ativos\r\n Exibir somente inativos\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Código UG\r\n \r\n \r\n {{ element.codigoUg }}\r\n \r\n \r\n\r\n \r\n \r\n Unidade Gestora\r\n \r\n \r\n {{ element.sigla }} - {{ element.nome }}\r\n \r\n \r\n\r\n \r\n \r\n Data Início\r\n \r\n \r\n {{ element.dataInicio | date: 'dd/MM/yyyy' }}\r\n \r\n \r\n\r\n \r\n \r\n Data Fim\r\n \r\n \r\n {{ element.dataFim | date: 'dd/MM/yyyy' }}\r\n \r\n \r\n\r\n \r\n \r\n Qtde de Responsáveis Vigentes\r\n \r\n \r\n {{ element.quantidadeResponsaveis }}\r\n \r\n \r\n\r\n \r\n \r\n Situação\r\n \r\n \r\n Ativo\r\n Inativo\r\n \r\n \r\n\r\n \r\n \r\n
\r\n Nenhum registro encontrado.\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n","import { Component } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { IImprimirResponsavelUnidadeGestoraModel } from 'src/app/models/imprimir-responsavel-unidade-gestora-pai.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { ResponsaveisService } from 'src/app/services/responsaveis.service ';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\nimport { RolResponsaveisListComponent } from '../../rol-responsaveis-list/rol-responsaveis-list.component';\r\n\r\n@Component({\r\n selector: 'app-imprimir-rol-responsavel-unidade-gestora',\r\n templateUrl: './imprimir-rol-responsavel-unidade-gestora.component.html',\r\n styleUrls: ['./imprimir-rol-responsavel-unidade-gestora.component.scss'],\r\n})\r\nexport class ImprimirRolResponsavelUnidadeGestoraComponent extends BaseListComponent {\r\n public dataHoje = new Date();\r\n public unidadesGestoras = [] as IImprimirResponsavelUnidadeGestoraModel[];\r\n public displayedColumns: string[] = [\r\n 'nome',\r\n 'nomeNaturezaResponsabilidade',\r\n 'tipoAgente',\r\n 'dataInicio',\r\n 'dataFim',\r\n 'ativo',\r\n ];\r\n\r\n public searchNome: string;\r\n public searchAtivo = undefined;\r\n public dataInicio: Date;\r\n public dataFim: Date;\r\n\r\n constructor(\r\n private responsaveisService: ResponsaveisService,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n public authService: AuthService,\r\n public rolResponsavelComponent: RolResponsaveisListComponent\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n\r\n public buscar() {\r\n const ugs = this.route.snapshot.paramMap.get('ids') || '';\r\n\r\n this.responsaveisService\r\n .imprimirResponsaveisUg(ugs.split(';').map(_ => parseInt(_, null)), this.searchNome, this.searchAtivo, this.dataInicio, this.dataFim)\r\n .then((res) => {\r\n this.unidadesGestoras = res.dados.unidadesGestoras;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n title: 'Atenção',\r\n text: err.mensagem.descricao,\r\n });\r\n })\r\n }\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/rolresponsaveis']);\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Rol de Responsáveis\r\n
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Imprimir Rol de Responsáveis por Unidade Gestora\r\n

\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n

\r\n Emitido pelo usuário\r\n {{ authService.usuario?.nome }} na data\r\n {{ dataHoje | date: \"dd/MM/yyyy HH:mm:ss\" }}\r\n

\r\n
\r\n
\r\n

Responsáveis por UG

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Nº da UGUnidade Gestora
\r\n {{ ug.codigoUg }}\r\n \r\n {{ ug.sigla }} - {{ ug.nome }}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Nome do ResponsávelNome da ResponsabilidadeTipo do AgenteData InícioData FimSituação
\r\n {{ responsavel.nome }}\r\n \r\n {{ responsavel.naturezaResponsabilidade?.nome }}\r\n \r\n {{ responsavel.tipoAgente?.descricao }}\r\n \r\n {{ responsavel.dataInicio | date: \"dd/MM/yyyy\" }}\r\n \r\n {{ responsavel.dataFim | date: \"dd/MM/yyyy\" }}\r\n \r\n Ativo\r\n Inativo\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\n\r\n@Component({\r\n selector: 'app-modal-selecionar-ug-imprimir',\r\n templateUrl: './modal-selecionar-ug-imprimir.component.html',\r\n styleUrls: ['./modal-selecionar-ug-imprimir.component.scss']\r\n})\r\nexport class ModalSelecionarUgImprimirComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = false;\r\n public displayedColumns = ['selecao', 'sigla', 'nome'];\r\n public elementosSelecionados = false;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.dataSource = new MatTableDataSource(data);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.filterPredicate = (data: { nome: string, sigla: string }, filterValue: string) => {\r\n return (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1 || (data.sigla || '').trim().toLowerCase().indexOf(filterValue) !== -1;\r\n };\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public filtrar(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public selecionarTodos() {\r\n this.dataSource.data.forEach(d => d.selecionado = !this.elementosSelecionados);\r\n this.elementosSelecionados = !this.elementosSelecionados;\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.dataSource.data.filter(d => d.selecionado));\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Adicionar Unidades Gestoras

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Sigla {{element.sigla}} Nome {{element.nome}}
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component } from '@angular/core';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { IRolResponsaveisModel } from 'src/app/models/rol-responsaveis.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { RolResponsaveisService } from 'src/app/services/rol-responsaveis.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-imprimir-rol-responsaveis',\r\n templateUrl: './imprimir-rol-responsaveis.component.html',\r\n styleUrls: ['./imprimir-rol-responsaveis.component.scss'],\r\n})\r\nexport class ImprimirRolResponsaveisComponent extends BaseListComponent {\r\n public dataHoje = new Date();\r\n public dataSource = new MatTableDataSource([]); \r\n public displayedColumns: string[] = [\r\n 'codigoUg', \r\n 'nome',\r\n 'dataInicio',\r\n 'dataFim',\r\n 'quantidadeResponsaveis',\r\n 'ativo',\r\n ];\r\n\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public dataInicio: Date;\r\n public dataFim: Date;\r\n\r\n constructor(\r\n private rolResponsaveisService: RolResponsaveisService, \r\n private router: Router,\r\n public authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n\r\n public buscar() {\r\n\r\n this.rolResponsaveisService\r\n .obter(this.searchNome, this.searchAtivo, this.dataInicio, this.dataFim, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource._updateChangeSubscription();\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n title: 'Atenção',\r\n text: err.mensagem.descricao,\r\n });\r\n })\r\n }\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/rolresponsaveis']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Rol de Responsáveis\r\n
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Imprimir rol de responsáveis

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Emitido pelo usuário {{ authService.usuario?.nome }} na data\r\n {{ dataHoje | date: 'dd/MM/yyyy HH:mm:ss' }}\r\n

\r\n
\r\n
\r\n

Rol de Responsáveis

\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n Código UG\r\n \r\n {{ element.codigoUg }}\r\n \r\n Unidade Gestora\r\n \r\n {{ element.sigla }} - {{ element.nome }}\r\n \r\n Data Início\r\n \r\n {{ element.dataInicio | date: \"dd/MM/yyyy\" }}\r\n \r\n Data Fim\r\n \r\n {{ element.dataFim | date: \"dd/MM/yyyy\" }}\r\n \r\n Qtde de Responsáveis Vigentes\r\n \r\n {{ element.quantidadeResponsaveis }}\r\n \r\n Situação\r\n \r\n Ativo\r\n Inativo\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from \"@angular/core\";\r\nimport { FormBuilder, FormGroup } from \"@angular/forms\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { Router } from \"@angular/router\";\r\nimport { IAgentePublicoACModel } from \"src/app/models/agente-publico-ac.model\";\r\nimport { EnumStatusSolicitacaoTecnica } from \"src/app/models/enum/status-solicitcao-tecnica.enum\";\r\nimport { IResponsavelModel } from \"src/app/models/responsaveis.model\";\r\nimport { AcessoCidadaoService } from \"src/app/services/acesso-cidadao.service\";\r\nimport { SolicitacaoTecnicaService } from \"src/app/services/solicitacao-tecnica.service\";\r\nimport { BaseListComponent } from \"src/app/shared/components/base-list/base-list.component\";\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n\tswitch (property) {\r\n\t\tcase \"docAssociado\":\r\n\t\t\treturn item?.planejamento?.opa?.numero;\r\n\t\tcase \"numSolicitacao\":\r\n\t\t\treturn item?.id;\r\n\t\tcase \"prazoResposta\":\r\n\t\t\treturn item?.prazo;\r\n\t\tcase \"assuntoSolicitacao\":\r\n\t\t\treturn item?.assunto;\r\n\t\tcase \"status\":\r\n\t\t\treturn item?.status?.descricao;\r\n\r\n\t\tdefault:\r\n\t\t\treturn item[property];\r\n\t}\r\n};\r\n\r\n@Component({\r\n\tselector: \"app-solicitacao-tecnica-list\",\r\n\ttemplateUrl: \"./solicitacao-tecnica-list.component.html\",\r\n})\r\nexport class SolicitacaoTecnicaListComponent\r\n\textends BaseListComponent\r\n\timplements OnInit\r\n{\r\n\r\n\tpublic EnumStatusSolicitacaoTecnica = EnumStatusSolicitacaoTecnica;\r\n\tpublic dataSource = new MatTableDataSource([]);\r\n\tpublic selectedModel: any;\r\n\tpublic pageEvent: any;\r\n\tpublic semDados = true;\r\n\tpublic prazoResposta = \"\";\r\n\tpublic numeroOpa = \"\";\r\n\tpublic numeroOsa = \"\";\r\n\tpublic numeroSolicitacao = \"\";\r\n\tpublic assunto = \"\";\r\n\tpublic status = \"\";\r\n\tpublic displayedColumns: string[] = [\r\n\t\t\"selecao\",\r\n\t\t\"documentoAssociado\",\r\n\t\t\"numero\",\r\n\t\t\"prazo\",\r\n\t\t\"assunto\",\r\n\t\t\"status\"\r\n\t];\r\n \tpublic responsaveis = [] as IResponsavelModel[];\r\n\r\n\tpublic arrayStatus = [\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.EmElaboracao, descricao: \"Em Elaboração\" },\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.Finalizada, descricao: \"Finalizada\" },\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.Enviada, descricao: \"Enviada\" },\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.Cancelada, descricao: \"Cancelada\" },\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.SolicitacaoProrrogacao, descricao: \"Solicitação de Prorrogação\" },\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.Prorrogada, descricao: \"Prorrogada\" },\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.AtendidaParcialmente, descricao: \"Atendida Parcialmente\" },\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.AtendidaTotalmente, descricao: \"Atendida Totalmente\" },\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.NaoAtendidaParcialmente, descricao: \"Não Atendida Parcialmente\" },\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.NaoAtendidaTotalmente, descricao: \"Não Atendida Totalmente\" },\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.Pendente, descricao: \"Pendente\" },\r\n\t\t{ codigo: EnumStatusSolicitacaoTecnica.ProrrogacaoRejeitada, descricao: \"Prorrogação rejeitada\" },\r\n\t];\r\n\r\n\tpublic form: FormGroup = this.fb.group({\r\n\t\tprazoResposta: [''],\r\n\t\tnumeroOpa: [''],\r\n\t\tnumeroOsa: [''],\r\n\t\tnumeroSolicitacao: [''],\r\n\t\tassuntoSolicitacao: [''],\r\n\t\tstatus: [''],\r\n\t\tresponsavelId: ['']\r\n\t});\r\n\r\n constructor(\r\n\t\tprivate solicitacaoTecnicaService: SolicitacaoTecnicaService,\r\n\t\tprivate router: Router,\r\n\t\tpublic fb: FormBuilder\r\n\t) {\r\n\t\tsuper();\r\n\t}\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n\t@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.ObterResponsaveis();\r\n \tthis.filtrar();\r\n\t}\r\n\r\n\r\n\tpublic ObterResponsaveis() {\r\n\t\tthis.solicitacaoTecnicaService.obterResponsaveisUGs()\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.responsaveis = res.dados;\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic visualizar(id: number) {\r\n\t\tthis.router.navigate([`/solicitacao-tecnica/${id}/visualizar`]);\r\n\t}\r\n\tpublic responder(id: number) {\r\n\t\tthis.router.navigate([`/solicitacao-tecnica/${id}/responder`]);\r\n\t}\r\n\r\n\r\n\tpublic filtrar() {\r\n\t\tthis.selectedModel = null;\r\n\t\tthis.solicitacaoTecnicaService\r\n\t\t\t.filtrar(this.form.value)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.dataSource = new MatTableDataSource(res.dados.resultado);\r\n\t\t\t\tthis.dataSource.paginator = this.paginator;\r\n\t\t\t\tthis.dataSource.sort = this.sort;\r\n\t\t\t\tthis.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n\r\n\t\t\t\tthis.semDados = this.dataSource.filteredData.length === 0;\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem?.descricao);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic reativar(id: number) {}\r\n\r\n\tpublic imprimir(id: number) {}\r\n\r\n\tpageChanged(e) {}\r\n\r\n\tpublic selecionar(item: any) {\r\n\t\tthis.selectedModel =\r\n\t\t\t!this.selectedModel || this.selectedModel.id !== item.id\r\n\t\t\t\t? item\r\n\t\t\t\t: null;\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Solicitação Técnica
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Listagem de Solicitação Técnica\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{status.descricao}}\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n {{responsavel.text}}\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Nº Doc. Associado {{element?.documentoAssociado}} Nº Solicitação {{element?.numero}} Prazo de Resposta {{element?.prazo | date:'dd/MM/yyyy'}} Assunto da Solicitação Responsável por Delegação {{ (element?.responsavelId) }} Status\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}
\r\n
Sem dados a exibir
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from \"@angular/core\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogRef,\r\n\tMAT_DIALOG_DATA,\r\n} from \"@angular/material/dialog\";\r\nimport { IAgentePublicoACModel } from \"src/app/models/agente-publico-ac.model\";\r\nimport { IItemSolicitacaoTecnicaModel } from \"src/app/models/item-solicitacao-tecnica.model\";\r\nimport { AcessoCidadaoService } from \"src/app/services/acesso-cidadao.service\";\r\nimport { SolicitacaoTecnicaService } from \"src/app/services/solicitacao-tecnica.service\";\r\nimport { BaseListComponent } from \"src/app/shared/components/base-list/base-list.component\";\r\nimport Swal from \"sweetalert2\";\r\n\r\n@Component({\r\n\tselector: \"app-modal-delegar-item\",\r\n\ttemplateUrl: \"./modal-delegar-item.component.html\",\r\n})\r\nexport class ModalDelegarItemComponent\r\n\textends BaseListComponent\r\n\timplements OnInit\r\n{\r\n\tconstructor(\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data,\r\n\t\tprivate acessoCidadaoService: AcessoCidadaoService,\r\n\t\tprivate solicitacaoTecnicaService: SolicitacaoTecnicaService\r\n\t) {\r\n\t\tsuper();\r\n\t\tthis.item = data.item;\r\n\t\tthis.responsavelDelegado = this.item?.responsavelId\r\n\t}\r\n\r\n\tpublic responsavelDelegado: any;\r\n\tpublic item: IItemSolicitacaoTecnicaModel;\r\n\tpublic responsaveis = [] as IAgentePublicoACModel[];\r\n\tpublic responsavelDelegacao = \"\";\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.ObterResponsaveis();\r\n\t}\r\n\r\n\tpublic ObterResponsaveis() {\r\n\t\tthis.acessoCidadaoService\r\n\t\t\t.ObterAgentesPublicosSecont()\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.responsaveis = res.dados;\r\n let responsavelEncontrado = this.responsaveis.find(\r\n\t\t\t\t\t(r) => r.id == this.responsavelDelegado\r\n\t\t\t\t)?.nome;\r\n\r\n if(responsavelEncontrado) {\r\n this.responsavelDelegado = responsavelEncontrado;\r\n } else {\r\n this.responsavelDelegado = '';\r\n }\r\n\t\t\t})\r\n\t}\r\n\r\n\tpublic delegar() {\r\n\t\tthis.solicitacaoTecnicaService\r\n\t\t\t.delegarItem(this.item.id, this.responsavelDelegacao)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.dialogRef.close();\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic fechar() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n}\r\n","
\r\n

\r\n Delegar Item\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{responsavel.nome}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from \"@angular/core\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogConfig,\r\n\tMatDialogRef,\r\n\tMAT_DIALOG_DATA,\r\n} from \"@angular/material/dialog\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { IArquivoModel } from \"src/app/models/arquivo.model\";\r\nimport {\r\n\tIArquivoRespostaModel,\r\n\tIItemSolicitacaoTecnicaModel,\r\n\tIRepostaItemModel,\r\n} from \"src/app/models/item-solicitacao-tecnica.model\";\r\nimport { SolicitacaoTecnicaService } from \"src/app/services/solicitacao-tecnica.service\";\r\nimport { ModalVisualizarItemComponent } from \"src/app/shared/components/aba-solicitacao-tecnica/modal-visualizar-item/modal-visualizar-item.component\";\r\nimport Swal from \"sweetalert2\";\r\nimport { ModalDelegarItemComponent } from \"../modal-delegar-item/modal-delegar-item/modal-delegar-item.component\";\r\n\r\n@Component({\r\n\tselector: \"app-modal-item-solicitacao\",\r\n\ttemplateUrl: \"./modal-item-solicitacao.component.html\",\r\n})\r\nexport class ModalItemSolicitacaoComponent implements OnInit {\r\n\tpublic dataSource = new MatTableDataSource([]);\r\n\tpublic dataSourceResposta = new MatTableDataSource(\r\n\t\t[]\r\n\t);\r\n\tpublic semDados: boolean = false;\r\n\tpublic semDadosResposta: boolean = false;\r\n\tpublic model: IItemSolicitacaoTecnicaModel =\r\n\t\t{} as IItemSolicitacaoTecnicaModel;\r\n\tpublic solicitacaoId: number;\r\n\tpublic responder = false;\r\n\tpublic tituloModal = \"\";\r\n\tpublic respostaItemModel: IRepostaItemModel = {} as IRepostaItemModel;\r\n public numeroSolicitacao: string;\r\n public visualizar = false;\r\n\r\n\tconstructor(\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\tpublic solicitacaoService: SolicitacaoTecnicaService,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data\r\n\t) {\r\n\t\tthis.model.id = data?.id;\r\n\t\tthis.solicitacaoId = data?.solicitacaoTecnicaId;\r\n\t\tthis.responder = data?.responder;\r\n this.numeroSolicitacao = data?.numeroSolicitacao;\r\n this.visualizar = data?.visualizar\r\n\t}\r\n\r\n\t@ViewChild(\"tabelaItemPaginator\", { static: true })\r\n\ttabelaItemPaginator: MatPaginator;\r\n\t@ViewChild(\"tabelaItemSort\", { static: true }) tabelaItemSort: MatSort;\r\n\r\n\t@ViewChild(\"tabelaRespostaPaginator\", { static: true })\r\n\ttabelaRespostaPaginator: MatPaginator;\r\n\t@ViewChild(\"tabelaRespostaSort\", { static: true })\r\n\ttabelaRespostaSort: MatSort;\r\n\r\n\tpublic arrayFiles = [];\r\n\r\n\tngOnInit(): void {\r\n\t\tif (this.responder) this.tituloModal = \"Responder Item de Solicitação\";\r\n\t\telse this.tituloModal = \"Visualizar Item de Solicitação\";\r\n\r\n\t\tthis.obterPorId();\r\n\r\n\t\tthis.dataSource.paginator = this.tabelaItemPaginator;\r\n\t\tthis.dataSource.sort = this.tabelaItemSort;\r\n\t\tthis.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n\r\n\t\tthis.dataSourceResposta.sortingDataAccessor = this.sortingDataAccessor;\r\n\t\tthis.dataSourceResposta.sort = this.tabelaRespostaSort;\r\n\t\tthis.dataSourceResposta.paginator = this.tabelaRespostaPaginator;\r\n\t}\r\n\r\n\tpublic obterPorId() {\r\n\t\tthis.solicitacaoService\r\n\t\t\t.obterItemId(this.solicitacaoId, this.model?.id)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.model = res.dados;\r\n\r\n\t\t\t\t\tthis.dataSource.data = res?.dados?.anexo;\r\n\t\t\t\t\tthis.dataSource.paginator = this.tabelaItemPaginator;\r\n\t\t\t\t\tthis.dataSource.sort = this.tabelaItemSort;\r\n\t\t\t\t\tthis.dataSource.sortingDataAccessor =\r\n\t\t\t\t\t\tthis.sortingDataAccessor;\r\n\r\n\t\t\t\t\tif (res?.dados?.respostaItemSolicitacaoTecnica)\r\n\t\t\t\t\t\tthis.respostaItemModel =\r\n\t\t\t\t\t\t\tres?.dados?.respostaItemSolicitacaoTecnica;\r\n\r\n\t\t\t\t\tif (res?.dados?.respostaItemSolicitacaoTecnica?.anexos)\r\n\t\t\t\t\t\tthis.dataSourceResposta.data =\r\n\t\t\t\t\t\t\tres?.dados?.respostaItemSolicitacaoTecnica?.anexos;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic async anexarArquivosResposta(e) {\r\n\t\tlet file = (e.target as HTMLInputElement).files;\r\n\r\n\t\tlet flatListFiles = Array.from(file);\r\n\r\n\t\tfor (let index = 0; index < file.length; index++) {\r\n\t\t\tconst fileToArray = await this.getBase64(file[index]);\r\n\t\t\tthis.dataSourceResposta.data.push({\r\n\t\t\t\tid: 0,\r\n\t\t\t\tnomeArquivo: flatListFiles[index].name,\r\n\t\t\t\tarquivo: fileToArray.toString(),\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tthis.dataSourceResposta.sortingDataAccessor = this.sortingDataAccessor;\r\n\t\tthis.dataSourceResposta.sort = this.tabelaRespostaSort;\r\n\t\tthis.dataSourceResposta.paginator = this.tabelaRespostaPaginator;\r\n\t}\r\n\r\n\tpublic async removerArquivoItemResposta(arquivo: IArquivoRespostaModel) {\r\n Swal.fire({\r\n\t\t\ttitle: \"Excluir Registro\",\r\n\t\t\ttext: \"Tem certeza que deseja excluir esse Registro?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then((res) => {\r\n\t\t\tif (res.value) {\r\n if (arquivo.id > 0) {\r\n this.solicitacaoService\r\n .excluirAnexoItemResposta(arquivo)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n let index =\r\n this.dataSourceResposta.data.indexOf(arquivo);\r\n this.dataSourceResposta.data.splice(index, 1);\r\n\r\n this.dataSourceResposta.sortingDataAccessor =\r\n this.sortingDataAccessor;\r\n this.dataSourceResposta.sort =\r\n this.tabelaRespostaSort;\r\n this.dataSourceResposta.paginator =\r\n this.tabelaRespostaPaginator;\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n });\r\n } else {\r\n let index = this.dataSourceResposta.data.indexOf(arquivo);\r\n this.dataSourceResposta.data.splice(index, 1);\r\n\r\n this.dataSourceResposta.sortingDataAccessor =\r\n this.sortingDataAccessor;\r\n this.dataSourceResposta.sort = this.tabelaRespostaSort;\r\n this.dataSourceResposta.paginator =\r\n this.tabelaRespostaPaginator;\r\n }\r\n }\r\n })\r\n\r\n\t}\r\n\r\n\tpublic Download(arquivo: IArquivoModel) {\r\n this.solicitacaoService.downloadAnexo(this.model.id, arquivo.id).then((res) =>{\r\n if (res.sucesso) {\r\n const link = document.createElement(\"a\");\r\n link.href = res.dados.toString();\r\n link.download = arquivo.nomeArquivo;\r\n link.click();\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }})\r\n\t}\r\n\r\n public finalizarItem(id: number) {\r\n Swal.fire({\r\n\t\t\ttitle: \"Finalizar Registro\",\r\n\t\t\ttext: \"Confirma finalização do item?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then((res) => {\r\n\t\t\tif (res.value) {\r\n this.solicitacaoService\r\n\t\t\t\t.finalizarItem(id)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t}).finally(() => {\r\n this.obterPorId();\r\n });\r\n }})\r\n\t}\r\n\r\n\r\n public enviarItem(id: number) {\r\n Swal.fire({\r\n\t\t\ttitle: \"Enviar Registro\",\r\n\t\t\ttext: \"Confirma envio do item?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then((res) => {\r\n\t\t\tif (res.value) {\r\n this.solicitacaoService\r\n\t\t\t\t.enviarItem(id)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t});\r\n this.dialogRef.close();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t}).finally(() => {\r\n this.obterPorId();\r\n });\r\n }})\r\n\t}\r\n\r\n\tpublic delegarItem(item: IItemSolicitacaoTecnicaModel) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component-delegar\";\r\n dialogConfig.width = \"45vw\";\r\n dialogConfig.height = 'auto';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = {\r\n\t\t\titem: item,\r\n\t\t};\r\n\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalDelegarItemComponent,\r\n\t\t\tdialogConfig\r\n\t\t);modal.afterClosed().subscribe((data) => {\r\n this.obterPorId();\r\n });\r\n\t}\r\n\r\n\tpublic sortingDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"arquivo\":\r\n\t\t\t\treturn item.nomeArquivo;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n\tpublic salvar() {\r\n\t\tthis.respostaItemModel.anexos = this.dataSourceResposta?.data;\r\n\r\n\t\tif (!this.respostaItemModel.descricao) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\ttimer: 5000,\r\n\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\ticon: \"warning\",\r\n\t\t\t\ttext: \"Informe a descrição da resposta!\",\r\n\t\t\t});\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.solicitacaoService\r\n\t\t\t.salvarItemResposta(this.model.id, this.respostaItemModel)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.dialogRef.close();\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic getBase64(file) {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\t\t\tvar reader = new FileReader();\r\n\t\t\treader.readAsDataURL(file);\r\n\t\t\treader.onload = function () {\r\n\t\t\t\tresolve(reader.result);\r\n\t\t\t};\r\n\t\t\treader.onerror = function (error) {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\ttext:\r\n\t\t\t\t\t\t\"Ocorreu um erro ao selecionar o arquivo\" +\r\n\t\t\t\t\t\terror.toString(),\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t};\r\n\t\t});\r\n\t}\r\n\r\n\tpublic downloadAnexoResposta(arquivo: IArquivoRespostaModel) {\r\n\t\tthis.solicitacaoService\r\n\t\t\t.downloadArquivoRespostaItem(arquivo)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tconst link = document.createElement(\"a\");\r\n\t\t\t\t\tlink.href = res.dados;\r\n\t\t\t\t\tlink.download = arquivo.nomeArquivo;\r\n\t\t\t\t\tlink.click();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic fechar() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n}\r\n","
\r\n\t

\r\n\t\t {{ tituloModal }}\r\n\t

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Arquivos do Item\r\n \r\n \r\n {{ element?.nomeArquivo }}\r\n \r\n \r\n\r\n \r\n \r\n Ação\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n 0\"\r\n class=\"table-no-data\"\r\n >\r\n Nenhum registro encontrado\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Arquivos da Resposta\r\n \r\n \r\n {{ element?.nomeArquivo }}\r\n \r\n \r\n\r\n \r\n \r\n Ações\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n 0\"\r\n class=\"table-no-data\"\r\n >\r\n Nenhum registro encontrado\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t Salvar\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t Finalizar\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t Enviar\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t Delegar\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t Anexar\r\n\t\t\t\t\tArquivos\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t Fechar\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n
\r\n","import { ModalJustificativaComponent } from './../../../shared/components/modal-justificativa/modal-justificativa.component';\r\nimport { AfterViewInit, Component, Input, OnInit, ViewChild } from \"@angular/core\";\r\nimport { MatDialog, MatDialogConfig } from \"@angular/material/dialog\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IItemSolicitacaoTecnicaModel } from \"src/app/models/item-solicitacao-tecnica.model\";\r\nimport { ISolicitacaoTecnicaModel, ISolicitacaoTecnicaUnidadeGestoraModel } from \"src/app/models/solicitacao-tecnica.model\";\r\nimport { SolicitacaoTecnicaService } from \"src/app/services/solicitacao-tecnica.service\";\r\nimport { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { ModalItemSolicitacaoComponent } from \"../modal-item-solicitacao/modal-item-solicitacao.component\";\r\nimport Swal from 'sweetalert2';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n\tswitch (property) {\r\n\t\tcase \"numero\":\r\n\t\t\treturn item?.numero;\r\n\t\tcase \"titulo\":\r\n\t\t\treturn item?.titulo;\r\n\t\tcase \"descricao\":\r\n\t\t\treturn item?.descricao;\r\n\t\tcase \"responsavelDelegado\":\r\n\t\t\treturn item?.nomeAuditor;\r\n\t\tcase \"status\":\r\n\t\t\treturn item?.status?.descricao;\r\n\t\tcase \"ug\":\r\n\t\t\treturn item?.siglaUg;\r\n\t\tcase \"responsavel\":\r\n\t\t\treturn item?.nomeAuditor;\r\n\r\n\t\tdefault:\r\n\t\t\treturn item[property];\r\n\t}\r\n}\r\n@Component({\r\n\tselector: \"app-solicitacao-tecnica-form\",\r\n\ttemplateUrl: \"./solicitacao-tecnica-form.component.html\",\r\n})\r\nexport class SolicitacaoTecnicaFormComponent\r\n\textends BaseFormComponent\r\n\timplements OnInit, AfterViewInit\r\n{\r\n\tpublic tituloPagina = \"\";\r\n\tpublic responder = false;\r\n public semDadosItens = true;\r\n\tpublic selectedModel: any;\r\n\tpublic pageEvent: any;\r\n public itensSolicitacaoDataSource =\r\n\t\tnew MatTableDataSource([]);\r\n public dataSourceUG =\r\n new MatTableDataSource([]);\r\n\r\n\tpublic model: ISolicitacaoTecnicaModel = {} as ISolicitacaoTecnicaModel;\r\n\tpublic displayedColumnsItems: string[] = [\r\n\t\t\"numero\",\r\n\t\t\"titulo\",\r\n\t\t\"descricao\",\r\n \"responsavelDelegado\",\r\n\t\t\"status\",\r\n\t\t\"actions\",\r\n\t];\r\n\r\n\tconstructor(\r\n\t\troute: ActivatedRoute,\r\n\t\ttoastr: ToastrService,\r\n\t\trouter: Router,\r\n\t\tlocaleService: BsLocaleService,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate solicicataoTecnicaService: SolicitacaoTecnicaService\r\n\t) {\r\n\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\t}\r\n\r\n\r\n @ViewChild(\"TableOnePaginator\", { static: true })\r\n\ttableOnePaginator: MatPaginator;\r\n\t@ViewChild(\"tabela1\", { static: true }) tabela1: MatSort;\r\n\r\n @ViewChild(\"TableTwoPaginator\", { static: true })\r\n\ttableTwoPaginator: MatPaginator;\r\n\t@ViewChild(\"tabela2\", { static: true }) tabela2: MatSort;\r\n\r\n\r\n\tngOnInit(): void {\r\n\t\tconst path = this.route.snapshot.routeConfig.path?.toString();\r\n\t\tif (path?.endsWith(\"responder\")) {\r\n\t\t\tthis.tituloPagina = \"Responder Solicitação Técnica\";\r\n\t\t\tthis.responder = true;\r\n\t\t}\r\n\t\tif (path?.endsWith(\"visualizar\")) {\r\n this.visualizar = true\r\n\t\t}\r\n\r\n\t\tthis.obterSolicitacaoTecnica();\r\n\t}\r\n\r\n ngAfterViewInit(): void {\r\n this.itensSolicitacaoDataSource.paginator = this.tableTwoPaginator;\r\n this.itensSolicitacaoDataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.itensSolicitacaoDataSource.sort = this.tabela2\r\n\r\n this.dataSourceUG.paginator = this.tableOnePaginator;\r\n this.dataSourceUG.sort = this.tabela1;\r\n this.dataSourceUG.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n\tpublic obterSolicitacaoTecnica() {\r\n\t\tthis.solicicataoTecnicaService\r\n\t\t\t.obterPorId(this.id)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.model = res.dados;\r\n\t\t\t\tif(this.visualizar)\r\n\t\t\t\t{\r\n\t\t\t\t\tthis.tituloPagina = \"Visualizar Solicitação Técnica - \" + (this.model.numero ? this.model.numero : \"\");\r\n\t\t\t\t}\r\n\t\t\t\tthis.itensSolicitacaoDataSource = new MatTableDataSource(\r\n\t\t\t\t\tres.dados.item\r\n\t\t\t\t);\r\n this.dataSourceUG.data = res.dados.solicitacaoTecnicaUgResponsavel\r\n\r\n this.itensSolicitacaoDataSource.paginator = this.tableTwoPaginator;\r\n this.itensSolicitacaoDataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.itensSolicitacaoDataSource.sort = this.tabela2\r\n\r\n this.dataSourceUG.paginator = this.tableOnePaginator;\r\n\t\t this.dataSourceUG.sort = this.tabela1;\r\n\t\t this.dataSourceUG.sortingDataAccessor = sortingDataAccessor;\r\n\r\n\t\t\t\tthis.semDadosItens =\r\n\t\t\t\t\tthis.itensSolicitacaoDataSource.filteredData.length === 0;\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem?.descricao);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic async visualizarItem(id: number) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component-resposta\";\r\n\t\tdialogConfig.width = \"60%\";\r\n\t\tdialogConfig.height = \"80%\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = false;\r\n\t\tdialogConfig.data = {\r\n\t\t\ttitulo: \"Visualizar Item de Solicitação\",\r\n\t\t\tid: id,\r\n\t\t\tsolicitacaoTecnicaId: this.id,\r\n numeroSolicitacao: this.model?.numero,\r\n visualizar: true\r\n\t\t};\r\n\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalItemSolicitacaoComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\t}\r\n\r\n\tpublic responderItem(id: number) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component-resposta\";\r\n\t\tdialogConfig.width = \"60%\";\r\n\t\tdialogConfig.height = \"90vh\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = {\r\n\t\t\ttitulo: \"Visualizar Item de Solicitação\",\r\n\t\t\tid: id,\r\n\t\t\tsolicitacaoTecnicaId: this.id,\r\n\t\t\tresponder: this.responder,\r\n numeroSolicitacao: this.model?.numero,\r\n visualizar: false\r\n\t\t};\r\n\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalItemSolicitacaoComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n modal.afterClosed().subscribe((data) => {\r\n this.obterSolicitacaoTecnica();\r\n });\r\n\t}\r\n\r\n \tpublic prorrogarPrazo(){\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component-prorrogar\";\r\n\t\tdialogConfig.width = '45vw';\r\n\t\tdialogConfig.maxHeight = '85vh';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = { prorrogarPrazo: true };\r\n\r\n\t\tconst modal = this.matDialog.open(ModalJustificativaComponent, dialogConfig);\r\n\t\t\r\n\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tthis.processarAfterClosedModalProgrrogacaoPrazo(data);\r\n\t\t\t}\r\n\t\t});\r\n \t}\r\n\r\n\tprivate processarAfterClosedModalProgrrogacaoPrazo(data: any) {\r\n\t\tthis.solicicataoTecnicaService.prorrogarPrazo(this.id, data).then((res) => {\r\n\t\t\tif(res.sucesso) {\r\n\t\t\t\tthis.mostraMensagemSucesso(res.mensagem.descricao);\r\n\t\t\t\tthis.router.navigate([\"/solicitacao-tecnica\"]);\r\n\t\t\t} else {\r\n\t\t\t\tthis.mostraMensagemAlerta(res.mensagem.descricao);\t\t\t\t\r\n\t\t\t} \r\n\t\t}).catch((err) => {\r\n\t\t\tthis.mostraMensagemErro(err?.mensagem?.descricao);\r\n\t\t})\r\n\t}\r\n\r\n\tpublic pageChanged(e) {}\r\n\r\n\tpublic onBack() {\r\n\t\tthis.router.navigate([\"/solicitacao-tecnica\"]);\r\n\t}\r\n\r\n\tprivate mostraMensagemSucesso(descricao: string): void {\r\n\t\tSwal.fire({\r\n\t\t\ttoast: true,\r\n\t\t\tposition: \"top-end\",\r\n\t\t\ticon: \"success\",\r\n\t\t\ttext: descricao,\r\n\t\t\tshowConfirmButton: false,\r\n\t\t\ttimer: 5000,\r\n\t\t\ttimerProgressBar: true,\r\n\t\t});\t\r\n\t}\r\n\r\n\tprivate mostraMensagemAlerta(descricao: string): void {\r\n\t\tSwal.fire({\r\n\t\t\ttoast: true,\r\n\t\t\tposition: \"top-end\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\ttext: descricao,\r\n\t\t\tshowConfirmButton: false,\r\n\t\t\ttimer: 5000,\r\n\t\t\ttimerProgressBar: true,\r\n\t\t});\r\n\t}\r\n\r\n\tprivate mostraMensagemErro(descricao: string): void {\r\n\t\tSwal.fire({\r\n\t\t\ttoast: true,\r\n\t\t\tposition: \"top-end\",\r\n\t\t\ticon: \"error\",\r\n\t\t\ttext: descricao,\r\n\t\t\tshowConfirmButton: false,\r\n\t\t\ttimer: 5000,\r\n\t\t\ttimerProgressBar: true,\r\n\t\t});\r\n\t}\r\n}\r\n","\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{ tituloPagina }}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tUnidade(s) Gestora(s)\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ element?.siglaUg }} -\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ element?.nomeUg }}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tResponsável\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ element?.nomeAuditor }}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t 0\r\n\t\t\t\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\tNenhum registro encontrado\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tNº do Item\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t-\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\telement.numero\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tTitulo\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element?.titulo }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tDescrição\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element?.descricao }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tResponsável Delegado\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\telement?.nomeAuditor\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t-\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tStatus\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t-\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\telement?.status?.descricao\r\n\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\telement?.status?.descricao\r\n\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\telement?.status?.descricao\r\n\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tEnviado\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\telement?.status?.descricao\r\n\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\telement?.status?.descricao\r\n\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tAção\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tNenhum registro encontrado.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tProrrogar Prazo\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t Cancelar\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t Sair\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { ISubtipoAuditoriaMatrizPlanejamentoModel } from 'src/app/models/subtipo-auditoria-matriz-planejamento.model';\r\nimport { SubtipoAuditoriaService } from 'src/app/services/subtipo-auditoria.service';\r\nimport { MatrizPlanejamentoService } from 'src/app/services/matriz-planejamento.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-subtipo-auditoria-form',\r\n templateUrl: './subtipo-auditoria-form.component.html',\r\n styleUrls: ['./subtipo-auditoria-form.component.scss']\r\n})\r\nexport class SubtipoAuditoriaFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ISubtipoAuditoriaModel = {} as ISubtipoAuditoriaModel;\r\n public modelSubtipoAuditoriaMatrizPlanejamento: ISubtipoAuditoriaMatrizPlanejamentoModel = {} as ISubtipoAuditoriaMatrizPlanejamentoModel;\r\n public matrizPlanejamentoDataSource = new MatTableDataSource([]);\r\n public subTipoAuditoriaCancelar: boolean;\r\n\r\n public semDados = true;\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private subtipoAuditoriaService: SubtipoAuditoriaService,\r\n private matrizPlanejamentoService: MatrizPlanejamentoService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Subtipo de Auditoria';\r\n }\r\n }\r\n\r\n config: AngularEditorConfig = {\r\n editable: !this.visualizar,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.subtipoAuditoriaService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n if (this.visualizar){\r\n this.titulo = 'Visualizar Subtipo de Auditoria - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Subtipo de Auditoria - ' + this.model.nome;\r\n }\r\n\r\n // matriz planejamento\r\n this.matrizPlanejamentoDataSource = new MatTableDataSource\r\n (\r\n this.model.subtipoAuditoriaMatrizPlanejamento\r\n );\r\n this.matrizPlanejamentoDataSource._updateChangeSubscription();\r\n this.semDados = this.matrizPlanejamentoDataSource.filteredData.length === 0;\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/subtipo-auditoria']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/subtipo-auditoria']);\r\n } \r\n this.state();\r\n this.form.patchValue(this.model);\r\n }\r\n\r\n public state() {\r\n // Subtipo Auditoria\r\n if (window.history.state.modelSubtipoAuditoria) {\r\n this.model = window.history.state.modelSubtipoAuditoria;\r\n }\r\n\r\n // Matriz Planejamento\r\n if (window.history.state.listaMatrizPlanejamento){\r\n this.matrizPlanejamentoDataSource = new MatTableDataSource\r\n (\r\n window.history.state.listaMatrizPlanejamento\r\n );\r\n this.matrizPlanejamentoDataSource._updateChangeSubscription();\r\n this.semDados = this.matrizPlanejamentoDataSource.filteredData.length === 0;\r\n }\r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n if (this.form.invalid) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Formulário invalido',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n this.submit = true;\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n this.model.subtipoAuditoriaMatrizPlanejamento = this.matrizPlanejamentoDataSource.data;\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.subtipoAuditoriaService.atualizar(this.model);\r\n } else {\r\n res = await this.subtipoAuditoriaService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (salvarEFechar) {\r\n this.router.navigate(['/subtipo-auditoria']);\r\n }else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/subtipo-auditoria/${res.dados.id}/edicao`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async exibirModalMatrizPlanejamento() {\r\n this.subTipoAuditoriaCancelar = true;\r\n try {\r\n const res = await this.matrizPlanejamentoService.obter('', true);\r\n if (res.sucesso) {\r\n const dadosFiltrados = res.dados.filter(questao => questao.ativo);\r\n const modal = this.exibirModal('Selecionar Matriz de planejamento', dadosFiltrados);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.modelSubtipoAuditoriaMatrizPlanejamento.matrizPlanejamentoId = data.id;\r\n this.modelSubtipoAuditoriaMatrizPlanejamento.matrizPlanejamento = data;\r\n }\r\n }\r\n );\r\n } else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n }\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n }\r\n }\r\n\r\n public incluirMatrizPlanejamento() {\r\n if (this.matrizPlanejamentoDataSource.data.findIndex(a => a.matrizPlanejamentoId === this.modelSubtipoAuditoriaMatrizPlanejamento.matrizPlanejamentoId) >= 0) {\r\n this.toastr.warning('Matriz de planejamento já cadastrada nesse subtipo de auditoria', 'Atenção');\r\n return;\r\n }\r\n\r\n this.matrizPlanejamentoDataSource.data.push(cloneDeep(this.modelSubtipoAuditoriaMatrizPlanejamento));\r\n this.matrizPlanejamentoDataSource._updateChangeSubscription();\r\n this.modelSubtipoAuditoriaMatrizPlanejamento = {} as ISubtipoAuditoriaMatrizPlanejamentoModel;\r\n this.semDados = false;\r\n }\r\n\r\n public excluirMatrizPlanejamento(ind: number) {\r\n this.matrizPlanejamentoDataSource.data.splice(ind, 1);\r\n this.matrizPlanejamentoDataSource._updateChangeSubscription();\r\n this.semDados = this.matrizPlanejamentoDataSource.filteredData.length === 0;\r\n }\r\n\r\n public visualizarMatrizPlanejamento(ind: number) {\r\n this.subTipoAuditoriaCancelar = true;\r\n this.atualizarModel(this.form.value);\r\n this.router.navigate([`/matriz-planejamento/${ind}/visualizar`], {\r\n state: {\r\n modelSubtipoAuditoria: this.model,\r\n listaMatrizPlanejamento: this.matrizPlanejamentoDataSource.data,\r\n rotaPrefixoSubtipoAuditoria: `/subtipo-auditoria/${this.id !== undefined ? this.id + '/' : ''}${this.prefixo}`\r\n },\r\n });\r\n }\r\n\r\n public async cadastroRapidoMatrizPlanejamento() {\r\n this.subTipoAuditoriaCancelar = true;\r\n this.atualizarModel(this.form.value);\r\n this.router.navigate([`/matriz-planejamento/novo`], {\r\n state: {\r\n modelSubtipoAuditoria: this.model,\r\n listaMatrizPlanejamento: this.matrizPlanejamentoDataSource.data,\r\n rotaPrefixoSubtipoAuditoria: `/subtipo-auditoria/${this.id !== undefined ? this.id + '/' : ''}${this.prefixo}`\r\n },\r\n });\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/subtipo-auditoria']);\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/subtipo-auditoria']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Subtipo de auditoria\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
Nome da matriz {{ element.matrizPlanejamento.nome }}\r\n
\r\n \r\n \r\n
\r\n
\r\n
Nenhuma matriz de planejamento cadastrada
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { SubtipoAuditoriaService } from 'src/app/services/subtipo-auditoria.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-subtipo-auditoria-list',\r\n templateUrl: './subtipo-auditoria-list.component.html',\r\n styleUrls: ['./subtipo-auditoria-list.component.scss']\r\n})\r\nexport class SubtipoAuditoriaListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ISubtipoAuditoriaModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private subtipoAuditoriaService: SubtipoAuditoriaService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/subtipo-auditoria/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.subtipoAuditoriaService\r\n .obter(this.searchNome, this.searchAtivo, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.subtipoAuditoriaService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Subtipo de Auditoria reativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.subtipoAuditoriaService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Subtipo de Auditoria inativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/subtipo-auditoria/${id}/edicao`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public excluir(id: number) {\r\n this.subtipoAuditoriaService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Subtipo de Auditoria excluído com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/subtipo-auditoria/${id}/visualizar`]);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Subtipos de Auditoria
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Subtipos de Auditoria\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nome {{element.nome}} Descrição {{element.descricao}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ITecnicaAuditoriaModel } from 'src/app/models/tecnica-auditoria.model';\r\nimport { TecnicaAuditoriaService } from 'src/app/services/tecnica-auditoria.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-tecnica-auditoria-form',\r\n templateUrl: './tecnica-auditoria-form.component.html',\r\n styleUrls: ['./tecnica-auditoria-form.component.scss']\r\n})\r\nexport class TecnicaAuditoriaFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ITecnicaAuditoriaModel = {} as ITecnicaAuditoriaModel;\r\n public auditoresDataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public salvar: boolean;\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private tecnicaAuditoriaService: TecnicaAuditoriaService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Nova Técnica de Auditoria';\r\n } \r\n }\r\n\r\n\r\n config: AngularEditorConfig = {\r\n editable: !this.visualizar,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.tecnicaAuditoriaService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n \r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Técnica de Auditoria - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Técnica de Auditoria - ' + this.model.nome;\r\n } \r\n \r\n\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/tecnica-auditoria']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/tecnica-auditoria']);\r\n }\r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n this.salvar = true\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.tecnicaAuditoriaService.atualizar(this.model);\r\n } else {\r\n res = await this.tecnicaAuditoriaService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (salvarEFechar) {\r\n this.router.navigate(['/tecnica-auditoria']);\r\n }else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/tecnica-auditoria/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/tecnica-auditoria']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Técnica de Auditoria\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { ITecnicaAuditoriaModel } from 'src/app/models/tecnica-auditoria.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TecnicaAuditoriaService } from 'src/app/services/tecnica-auditoria.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-tecnica-auditoria-list',\r\n templateUrl: './tecnica-auditoria-list.component.html',\r\n styleUrls: ['./tecnica-auditoria-list.component.scss']\r\n})\r\nexport class TecnicaAuditoriaListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ITecnicaAuditoriaModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private tecnicaAuditoriaService: TecnicaAuditoriaService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n\r\n public novo() {\r\n this.router.navigate(['/tecnica-auditoria/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.tecnicaAuditoriaService\r\n .obter(this.searchNome, this.searchAtivo, false)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.tecnicaAuditoriaService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Técnica de auditoria reativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.tecnicaAuditoriaService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Técnica de auditoria inativada com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/tecnica-auditoria/${id}`]);\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/tecnica-auditoria/${id}/visualizar`]);\r\n }\r\n\r\n public excluir(id: number) {\r\n this.tecnicaAuditoriaService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Técnica de auditoria excluída com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Técnicas de Auditoria
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Técnicas de Auditoria\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Técnica Auditoria {{element.nome}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Sem dados a exibir
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ITipoAuditoriaModel } from 'src/app/models/tipo-auditoria.model';\r\nimport { CoordenacaoService } from 'src/app/services/coordenacao.service';\r\nimport { TipoAuditoriaService } from 'src/app/services/tipo-auditoria.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-tipo-auditoria-form',\r\n templateUrl: './tipo-auditoria-form.component.html',\r\n styleUrls: ['./tipo-auditoria-form.component.scss']\r\n})\r\nexport class TipoAuditoriaFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ITipoAuditoriaModel = {} as ITipoAuditoriaModel;\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n quantidadeDias: new FormControl({ readonly: true }),\r\n qtdDiasPlanejamento: new FormControl(null, [Validators.required, Validators.min(1)]),\r\n qtdDiasExecucao: new FormControl(null, [Validators.required, Validators.min(1)]),\r\n quantidadeMembros: new FormControl(null, Validators.required),\r\n coordenacaoId: new FormControl(null),\r\n coordenacaoNome: new FormControl('', Validators.required)\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private tipoAuditoriaService: TipoAuditoriaService,\r\n private coordenacaoService: CoordenacaoService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Tipo de Auditoria';\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.tipoAuditoriaService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Tipo de Auditoria - ' + this.model.nome;\r\n } else {\r\n this.titulo = 'Editar Tipo de Auditoria - ' + this.model.nome;\r\n }\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/tipos-auditoria']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem);\r\n this.router.navigate(['/tipos-auditoria']);\r\n } \r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean)\r\n {\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n\r\n this.submit = true;\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.tipoAuditoriaService.atualizar(this.model);\r\n } else {\r\n res = await this.tipoAuditoriaService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n\r\n if(salvarEFechar == true){\r\n this.router.navigate(['/tipos-auditoria']);\r\n }else{\r\n this.router.navigate([`/tipos-auditoria/${res.dados.id}`]);\r\n }\r\n \r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem);\r\n }\r\n }\r\n public async onSubmit() {\r\n \r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigate(['/tipos-auditoria']);\r\n }\r\n\r\n public async exibirModalCoordenacao() {\r\n\t\t\t\r\n try {\r\n const res = await this.coordenacaoService.obter('', true, false);\r\n if (res.sucesso) {\r\n const customFilterPredicate = (data: { sigla: string, nome: string }, filterValue: string) => {\r\n return (data.sigla || '').trim().toLowerCase().indexOf(filterValue) !== -1\r\n || (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1;\r\n };\r\n\r\n res.dados.sort((a, b) => a['nome'].localeCompare(b['nome']));\r\n const modal = this.exibirModal(\r\n 'Selecionar Coordenação', \r\n res.dados,\r\n false,\r\n [\r\n { columnDef: 'selecao',\r\n header:''\r\n },\r\n {\r\n columnDef: 'nome',\r\n header: 'Nome'\r\n },\r\n {\r\n columnDef: 'sigla',\r\n header: 'Sigla'\r\n }],\r\n customFilterPredicate,\r\n 10);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.model.coordenacao = data;\r\n this.form.controls['coordenacaoId'].setValue(data.id);\r\n }\r\n });\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n\r\n public calcularTotalDias() {\r\n const total = Number(this.form.controls['qtdDiasPlanejamento'].value == null ? 0 : this.form.controls['qtdDiasPlanejamento'].value)\r\n + Number(this.form.controls['qtdDiasExecucao'].value == null ? 0 : this.form.controls['qtdDiasExecucao'].value);\r\n\r\n this.form.controls['quantidadeDias'].setValue(total);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial \r\n
  2. \r\n
  3. \r\n Tipos de Auditoria\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n = 48 && event.charCode <= 57\" \r\n maxlength=\"4\" id=\"quantidadeMembros\" class=\"form-control form-control-sm text-right\"\r\n formControlName=\"quantidadeMembros\"\r\n [ngClass]=\"{ 'is-invalid': f.submitted && form.controls['quantidadeMembros'].invalid }\" />\r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Campo obrigatório
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n = 48 && event.charCode <= 57\" maxlength=\"4\"\r\n id=\"qtdDiasPlanejamento\" class=\"form-control form-control-sm text-right\"\r\n formControlName=\"qtdDiasPlanejamento\"\r\n (change)=\"calcularTotalDias()\"\r\n [ngClass]=\"{ 'is-invalid': f.submitted && form.controls['qtdDiasPlanejamento'].invalid }\" />\r\n
\r\n
Informar uma quantidade de dias válida
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n = 48 && event.charCode <= 57\" maxlength=\"4\" id=\"qtdDiasExecucao\" class=\"form-control form-control-sm text-right\"\r\n formControlName=\"qtdDiasExecucao\"\r\n (change)=\"calcularTotalDias()\"\r\n [ngClass]=\"{ 'is-invalid': f.submitted && form.controls['qtdDiasExecucao'].invalid }\" />\r\n
\r\n
Informar uma quantidade de dias válida
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { ITipoAuditoriaModel } from 'src/app/models/tipo-auditoria.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TipoAuditoriaService } from 'src/app/services/tipo-auditoria.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'nome': return item.nome.trim().toLowerCase(); \r\n case 'sigla':\r\n return item.coordenacao.sigla.trim().toLowerCase();\r\n default:\r\n return item[property];\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-tipo-auditoria-list',\r\n templateUrl: './tipo-auditoria-list.component.html',\r\n styleUrls: ['./tipo-auditoria-list.component.scss']\r\n})\r\nexport class TipoAuditoriaListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ITipoAuditoriaModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'quantidadeMembros', 'quantidadeDias', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private tipoAuditoriaService: TipoAuditoriaService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n\r\n ngAfterViewInit() {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/tipos-auditoria/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.tipoAuditoriaService\r\n .obter(this.searchNome, this.searchAtivo, false)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.tipoAuditoriaService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro reativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.tipoAuditoriaService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro inativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .catch((err) => {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/tipos-auditoria/${id}`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public excluir(id: number) {\r\n this.tipoAuditoriaService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Tipo auditoria excluído com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/tipos-auditoria/${id}/visualizar`]);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Tipos de Auditoria
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Tipos de Auditoria\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nome {{element.nome}} Sigla da Coordenação {{element.coordenacao?.sigla}} Quant. de Membros {{element.quantidadeMembros}} Quant. Dias por Auditoria {{element.quantidadeDias}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum Registro Encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ITipoCriterioModel } from 'src/app/models/tipo-criterio.model';\r\nimport { TipoCriterioService } from 'src/app/services/tipo-criterio.service';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\n\r\n@Component({\r\n selector: 'app-tipo-criterio-form',\r\n templateUrl: './tipo-criterio-form.component.html',\r\n styleUrls: ['./tipo-criterio-form.component.scss'],\r\n})\r\nexport class TipoCriterioFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ITipoCriterioModel = {} as ITipoCriterioModel;\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private tipoCriterioService: TipoCriterioService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Tipo de Critério';\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.tipoCriterioService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Tipo de Critério - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Tipo de Critério - ' + this.model.nome;\r\n }\r\n } else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/tipos-criterio']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/tipos-criterio']);\r\n } \r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean = false) {\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n\r\n this.submit = true;\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.tipoCriterioService.atualizar(this.model);\r\n } else {\r\n res = await this.tipoCriterioService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso == false) \r\n {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n return; \r\n } \r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 15000,\r\n timerProgressBar: true,\r\n icon: 'success',\r\n text: res.mensagem.descricao\r\n });\r\n if (salvarEFechar) {\r\n this.router.navigate(['/tipos-criterio']);\r\n } else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/tipos-criterio/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n }\r\n }\r\n catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 15000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n text: err.mensagem.descricao\r\n });\r\n } \r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigate(['/tipos-criterio']);\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate(['/tipo-criterio']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Tipos de Critério\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { ITipoCriterioModel } from 'src/app/models/tipo-criterio.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TipoCriterioService } from 'src/app/services/tipo-criterio.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-tipo-criterio-list',\r\n templateUrl: './tipo-criterio-list.component.html',\r\n styleUrls: ['./tipo-criterio-list.component.scss'],\r\n})\r\nexport class TipoCriterioListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ITipoCriterioModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private tipoCriterioService: TipoCriterioService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n\r\n public novo() {\r\n if (this.permissoes.incluir) {\r\n this.router.navigate(['/tipos-criterio/novo']);\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 15000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n title: 'Erro',\r\n text: 'Você não tem permissão para realizar esta ação.',\r\n });\r\n }\r\n }\r\n\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n \r\n this.tipoCriterioService\r\n .obter(this.searchNome, this.searchAtivo, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 15000,\r\n timerProgressBar: true,\r\n icon: 'success',\r\n title: 'Atenção',\r\n text: err.mensagem.descricao,\r\n });\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n if (!this.permissoes.inativarReativar) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 15000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n title: 'Erro',\r\n text: 'Você não tem permissão para realizar esta ação.',\r\n });\r\n return;\r\n }\r\n\r\n this.tipoCriterioService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 15000,\r\n timerProgressBar: true,\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n });\r\n } else {\r\n {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }\r\n })\r\n .catch((err) => {\r\n {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 15000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n });\r\n }\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n if (this.permissoes.inativarReativar) {\r\n this.tipoCriterioService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 15000,\r\n timerProgressBar: true,\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n });\r\n } else {\r\n {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n }\r\n }\r\n })\r\n .catch((err) => {\r\n {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n });\r\n }\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: 'Você não tem permissão para inativar/reativar este item.',\r\n showConfirmButton: false,\r\n timer: 3000,\r\n });\r\n }\r\n }\r\n\r\n public editar(id: number) {\r\n if (this.permissoes.editar) {\r\n this.router.navigate([`/tipos-criterio/${id}`]);\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: 'Você não tem permissão para editar este item.',\r\n showConfirmButton: false,\r\n timer: 3000,\r\n });\r\n }\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel =\r\n !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public visualizar(id: number) {\r\n if (this.permissoes.visualizar) {\r\n this.router.navigate([`/tipos-criterio/${id}/visualizar`]);\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: 'Você não tem permissão para visualizar este item.',\r\n showConfirmButton: false,\r\n timer: 3000,\r\n });\r\n }\r\n }\r\n\r\n public excluir(id: number) {\r\n if (this.permissoes.excluir) {\r\n this.tipoCriterioService\r\n .excluirTipoCriterio(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 15000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 3000,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: 'Você não tem permissão para excluir este item.',\r\n showConfirmButton: false,\r\n timer: 3000,\r\n });\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Tipos de Critério
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Tipos de Critério\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nome {{element.nome}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ITipoDispensaModel } from 'src/app/models/tipo-dispensa.model';\r\nimport { TipoDispensaService } from 'src/app/services/tipo-dispensa.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-tipo-dispensa-form',\r\n templateUrl: './tipo-dispensa-form.component.html',\r\n styleUrls: ['./tipo-dispensa-form.component.scss']\r\n})\r\nexport class TipoDispensaFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ITipoDispensaModel = {} as ITipoDispensaModel;\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n quantidadeDiasPadrao: new FormControl(null, Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private tipoDispensaService: TipoDispensaService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Tipo de Dispensa';\r\n } \r\n }\r\n\r\n async ngOnInit() {\r\n\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.tipoDispensaService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n if (this.visualizar){\r\n this.titulo = 'Visualizar Tipo de Dispensa - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Tipo de Dispensa - ' + this.model.nome;\r\n }\r\n\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/tipos-dispensa']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/tipos-dispensa']);\r\n }\r\n }\r\n\r\n public async onSubmit() {\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n this.submit = true;\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.tipoDispensaService.atualizar(this.model);\r\n } else {\r\n res = await this.tipoDispensaService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/tipos-dispensa']);\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } \r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/tipos-dispensa']);\r\n }\r\n \r\n public cancelar() {\r\n this.router.navigate(['/tipos-dispensa']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Tipos de Dispensa\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n \r\n = 48 && event.charCode <= 57\" formControlName=\"quantidadeDiasPadrao\" data-inputmask=\"'alias': 'integer'\" inputmode=\"numeric\"\r\n [ngClass]=\"{ 'is-invalid': f.submitted &&\r\n form.controls['quantidadeDiasPadrao'].invalid }\" />\r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { ITipoDispensaModel } from 'src/app/models/tipo-dispensa.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TipoDispensaService } from 'src/app/services/tipo-dispensa.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'quantDiasPadrao':\r\n return item.quantidadeDiasPadrao;\r\n case 'nome': return item.nome.trim().toLowerCase();\r\n default:\r\n return item[property];\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-tipo-dispensa-list',\r\n templateUrl: './tipo-dispensa-list.component.html',\r\n styleUrls: ['./tipo-dispensa-list.component.scss']\r\n})\r\nexport class TipoDispensaListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ITipoDispensaModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'quantDiasPadrao', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private tipoDispensaService: TipoDispensaService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/tipos-dispensa/novo']);\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.tipoDispensaService\r\n .obter(this.searchNome, this.searchAtivo, true)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.tipoDispensaService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Tipo de dispensa reativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.tipoDispensaService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Tipo de dispensa inativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/tipos-dispensa/${id}`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public excluir(id: number) {\r\n this.tipoDispensaService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Tipo de Dispensa excluído com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/tipos-dispensa/${id}/visualizar`]);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Tipos de Dispensa
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Tipos de Dispensa\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Nome {{element.nome}} Quant. dias Padrão {{element.quantidadeDiasPadrao}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ITipoEnfaseModel } from 'src/app/models/tipo-enfase.model';\r\nimport { TipoEnfaseService } from 'src/app/services/tipo-enfase.service';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-tipo-enfase-form',\r\n templateUrl: './tipo-enfase-form.component.html',\r\n styleUrls: ['./tipo-enfase-form.component.scss']\r\n})\r\nexport class TipoEnfaseFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ITipoEnfaseModel = {} as ITipoEnfaseModel;\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required)\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private tipoEnfaseService: TipoEnfaseService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Tipo de ênfase';\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.tipoEnfaseService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n if (this.visualizar){\r\n this.titulo = 'Visualizar Tipo de ênfase - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Tipo de ênfase - ' + this.model.nome;\r\n }\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/tipo-enfase']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/tipo-enfase']);\r\n }\r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean){\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n this.submit = true;\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.tipoEnfaseService.atualizar(this.model);\r\n } else {\r\n res = await this.tipoEnfaseService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if(salvarEFechar == true)\r\n this.router.navigate(['/tipo-enfase']);\r\n else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/tipo-enfase/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } \r\n\r\n }\r\n\r\n public async onSubmit() {\r\n this.salvarDados(false);\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/tipo-enfase']);\r\n }\r\n \r\n public cancelar() {\r\n this.router.navigate(['/tipo-enfase']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Tipos de Ênfase\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { ITipoEnfaseModel } from 'src/app/models/tipo-enfase.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TipoEnfaseService } from 'src/app/services/tipo-enfase.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'quantDiasPadrao':\r\n return item.quantidadeDiasPadrao;\r\n case 'nome': return item.nome.trim().toLowerCase(); \r\n default:\r\n return item[property];\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-tipo-enfase-list',\r\n templateUrl: './tipo-enfase-list.component.html',\r\n styleUrls: ['./tipo-enfase-list.component.scss']\r\n})\r\nexport class TipoEnfaseListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ITipoEnfaseModel;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n public filtro = {} as FiltroModel;\r\n public totalItens: number;\r\n public pageEvent: any;\r\n\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private tipoEnfaseService: TipoEnfaseService,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n this.buscar();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Visualizar);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.configurarFiltro();\r\n this.buscar();\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n public novo() {\r\n this.router.navigate(['/tipo-enfase/novo']);\r\n }\r\n\r\n public atualizarFiltroStatus(valor) {\r\n this.filtro = {} as FiltroModel;\r\n this.searchAtivo = valor;\r\n this.buscar();\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n this.filtro.pesquisa = this.searchNome;\r\n this.tipoEnfaseService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.totalItens = res.dados.totalItens;\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n this.configurarFiltro();\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.tipoEnfaseService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Tipo de ênfase reativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.tipoEnfaseService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Tipo de ênfase inativado com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.router.navigate([`/tipo-enfase/${id}`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public excluir(id: number) {\r\n this.tipoEnfaseService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Tipo de ênfase excluído com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`/tipo-enfase/${id}/visualizar`]);\r\n }\r\n\r\n private configurarFiltro() {\r\n debugger\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.colunaOrder = this.sort.active;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchNome;\r\n this.filtro.direcao = this.sort.direction;\r\n }\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n}\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Tipos de Ênfase
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Tipos de Ênfase\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Nome {{element.nome}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ITipoUniversoItemModel } from 'src/app/models/tipo-universo.model';\r\n\r\n@Component({\r\n selector: 'app-modal-tipo-universo-item-descricao',\r\n templateUrl: './modal-tipo-universo-item-descricao.component.html',\r\n})\r\nexport class ModalTipoUniversoItemDescricaoComponent implements OnInit {\r\n\r\n public titulo: string = \"\";\r\n public model = {} as ITipoUniversoItemModel;\r\n\r\n constructor(\r\n public matDialog: MatDialog,\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.data = data;\r\n\r\n this.model = data.item as ITipoUniversoItemModel;\r\n\r\n if(this.model.nome && this.model.nome != \"\"){\r\n this.titulo += \"Editar \";\r\n }else{\r\n this.titulo += \"Incluir \";\r\n }\r\n\r\n this.titulo += this.model.tipoDescription;\r\n\r\n this.model.idUGAnterior = this.model.idUG;\r\n\r\n }\r\n\r\n public data = {} as any;\r\n ngOnInit(): void { }\r\n\r\n public onChangeNome(event){\r\n this.model.nome = event.target.value;\r\n }\r\n\r\n Confirmar() {\r\n let data = {\r\n item: this.model,\r\n indx: this.data.indx\r\n };\r\n\r\n this.dialogRef.close(data);\r\n }\r\n\r\n Cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n","
\r\n
\r\n\r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Nome\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
","import { Component, Inject, NgModule, OnInit, ViewChild } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { TipoUniversoService } from 'src/app/services/tipo-universo.service';\r\nimport { ITipoUniversoItemModel, ITipoUniversoModel } from 'src/app/models/tipo-universo.model';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatTable, MatTableDataSource, MatTableModule } from '@angular/material/table';\r\nimport { ITipoUniversoUGModel } from 'src/app/models/tipo-universo.model';\r\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { ModalTipoUniversoItemDescricaoComponent } from './modal-tipo-universo-item-descricao/modal-tipo-universo-item-descricao.component';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport Swal from 'sweetalert2';\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-tipo-universo-item',\r\n templateUrl: './modal-tipo-universo-item.component.html',\r\n styleUrls: ['./modal-tipo-universo-item.component.scss']\r\n })\r\n export class ModalTipoUniversoItemComponent extends BaseFormComponent implements OnInit{\r\n \r\n public model : ITipoUniversoUGModel = {} as ITipoUniversoUGModel;\r\n public dataSource = new MatTableDataSource([]);\r\n public displayedColumns = ['ug', 'valor'];\r\n public titulo = \"Editar SubTipo de Universo Auditável\";\r\n public tipoDescription = \"\";\r\n public nomeUG = \"\";\r\n public semDados: boolean;\r\n public idsUgsExistentes = [];\r\n public idClassificacaoTipo: number;\r\n public alterou: boolean;\r\n \r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n router: Router,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n public matDialog: MatDialog,\r\n private tipoUniversoService: TipoUniversoService,\r\n private unidadeGestoraService: UnidadeGestoraService\r\n \r\n ) { \r\n super(route, toastr, router, localeService, matDialog); \r\n\r\n \r\n this.model.idTipoUniversoAuditavel = data.idTipoUniverso;\r\n this.idClassificacaoTipo = data.idClassificacaoTipo;\r\n this.tipoDescription = data.tipoDescription;\r\n this.nomeUG = data.nomeUG;\r\n this.visualizar = data.visualizar;\r\n this.model.idUG = data.idUG;\r\n if(this.data.idsUgsExistentes){\r\n this.idsUgsExistentes = this.data.idsUgsExistentes;\r\n }\r\n \r\n if(!data.idUG && this.idClassificacaoTipo == 2){\r\n this.titulo = \"Incluir SubTipo de Universo Auditável\";\r\n }\r\n\r\n if(this.visualizar){\r\n this.titulo = 'Visualizar SubTipo de Universo Auditável';\r\n }\r\n\r\n this.buscarItens(data.idTipoUniverso, data.idUG);\r\n }\r\n\r\nasync ngOnInit() {\r\n \r\n}\r\n\r\npublic async buscarItens(idTipoUniverso: number, idUG: number){\r\n\r\n if(idTipoUniverso){\r\n\r\n const res = await this.tipoUniversoService.obterItens(idTipoUniverso, idUG);\r\n if(res.sucesso){\r\n this.model = res.dados;\r\n this.semDados = this.model.itens.length == 0;\r\n if(this.semDados){\r\n this.novoRegistro = true;\r\n }else{\r\n this.novoRegistro = false;\r\n }\r\n this.reordenar();\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.dialogRef.close();\r\n }\r\n\r\n }\r\n\r\n}\r\n\r\npublic async concluir(salvarEFechar: boolean){\r\n this.submit = true;\r\n\r\n if(this.novoRegistro){\r\n \r\n if(!this.model.itens || this.model.itens.length == 0){\r\n this.exibirMensagemErro(\"É necessário incluir pelo menos 1 subtipo para salvar.\")\r\n return;\r\n }\r\n\r\n if(this.idClassificacaoTipo == 2 && !this.model.idUG){\r\n return;\r\n }\r\n\r\n this.tipoUniversoService.inserirItens(this.model)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.alterou = false;\r\n if(salvarEFechar){\r\n this.dialogRef.close(true);\r\n }else{\r\n this.model = res.dados;\r\n this.novoRegistro = false;\r\n }\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(err => this.exibirMensagemErro(err))\r\n \r\n }else{\r\n\r\n this.tipoUniversoService.atualizarItens(this.model)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.alterou = false;\r\n if(salvarEFechar){\r\n this.dialogRef.close(true);\r\n }\r\n \r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(err => this.exibirMensagemErro(err))\r\n\r\n }\r\n\r\n}\r\n\r\npublic drop(event: CdkDragDrop, element: any) {\r\n\r\n}\r\n\r\npublic retornaItensArray(): ITipoUniversoItemModel[]{\r\n let itens= [] as ITipoUniversoItemModel[];\r\n\r\n this.model.itens.forEach(item => {\r\n itens.push(item);\r\n if(item.itens && item.itens.length > 0){\r\n item.itens.forEach(subItem => {\r\n itens.push(subItem);\r\n if(subItem.itens && subItem.itens.length > 0){\r\n subItem.itens.forEach(subSubItem => {\r\n itens.push(subSubItem);\r\n })\r\n }\r\n });\r\n }\r\n });\r\n\r\n return itens;\r\n}\r\n\r\npublic reordenar(){\r\n this.model.itens.forEach((item, idx) => {\r\n item.ordem = (idx + 1);\r\n item.ordemExibicao = `1.${item.ordem.toString()}`;\r\n if(item.itens && item.itens.length > 0){\r\n this.fnReordenacao(item);\r\n }\r\n });\r\n}\r\n\r\npublic fnReordenacao(item: ITipoUniversoItemModel){\r\n item.itens.forEach((subItem, subIdx) => {\r\n \r\n subItem.ordem = subIdx + 1;\r\n subItem.ordemExibicao = `${item.ordemExibicao}.${subItem.ordem.toString()}`\r\n if(subItem.itens && subItem.itens.length > 0){\r\n this.fnReordenacao(subItem);\r\n }\r\n });\r\n}\r\n\r\npublic exibirModalItemNovo(element: any, indx: string){\r\n\r\n\r\nlet item = {} as ITipoUniversoItemModel;\r\nitem.id = element?.id ?? 0;\r\nitem.idItemPai = element?.idItemPai ?? 0;\r\nitem.idTipoUniversoAuditavel = element?.idTipoUniversoAuditavel ?? this.model.idTipoUniversoAuditavel;\r\nitem.idUG = element?.idUG ?? this.model.idUG;\r\nitem.nome = element?.nome ?? \"\";\r\nitem.tipo = element?.tipo ?? 1;\r\n\r\nlet arrayIndices = JSON.parse(\"[\" + indx + \"]\");\r\n\r\nif(arrayIndices.length == 1 && arrayIndices[0] == null){\r\n \r\n item.tipo = 1;\r\n item.tipoDescription = element?.tipoDescription ?? \"SubTipo\";\r\n\r\n}else if(arrayIndices.length == 1 && arrayIndices[0] != null){\r\n \r\n item.tipo = 2;\r\n item.tipoDescription = element?.tipoDescription ?? \"Macroprocesso\";\r\n\r\n}else if(arrayIndices.length == 2){\r\n\r\n item.tipo = 3;\r\n item.tipoDescription = element?.tipoDescription ?? \"Processo\";\r\n\r\n}\r\n\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-descricao';\r\n dialogConfig.width = '450px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n item: item,\r\n indx: indx\r\n };\r\n\r\n const modal = this.matDialog.open(ModalTipoUniversoItemDescricaoComponent, dialogConfig);\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n \r\n let novoItem = data.item as ITipoUniversoItemModel;\r\n\r\n //NÃO HAVENDO ÍNDICE, ADICIONA-SE NO ITEM RAIZ\r\n if(!data.indx){\r\n\r\n if(this.existeNomeMesmoNivel(this.model.itens, novoItem.nome)){\r\n this.exibirMensagemErro(\"Já existe SubTipo com este nome.\");\r\n return;\r\n }\r\n\r\n novoItem.tipo = 1;\r\n novoItem.tipoDescription=\"SubTipo\";\r\n if(!this.model.itens){\r\n this.model.itens = [] as ITipoUniversoItemModel[];\r\n }\r\n this.model.itens.push(novoItem);\r\n this.alterou = true;\r\n this.reordenar();\r\n return;\r\n }\r\n\r\n //indx recebe os índices da hierarquia da árvore: \r\n //0 -> nível 1\r\n //0,0 -> nível 2 \r\n //0,0,0 -> nível 3 \r\n\r\n let arrayIndices = JSON.parse(\"[\" + data.indx + \"]\");\r\n \r\n if(arrayIndices.length == 1){\r\n\r\n if(this.existeNomeMesmoNivel(this.model.itens[arrayIndices[0]].itens, novoItem.nome)){\r\n this.exibirMensagemErro(\"Já existe Macroprocesso com este nome.\");\r\n return;\r\n }\r\n\r\n novoItem.tipo = 2;\r\n novoItem.tipoDescription = \"Macroprocesso\";\r\n\r\n if(!this.model.itens[arrayIndices[0]].itens){\r\n this.model.itens[arrayIndices[0]].itens = [] as ITipoUniversoItemModel[];\r\n }\r\n\r\n this.model.itens[arrayIndices[0]].itens.push(novoItem);\r\n \r\n }else if(arrayIndices.length == 2){\r\n \r\n if(this.existeNomeMesmoNivel(this.model.itens[arrayIndices[0]].itens[arrayIndices[1]].itens, novoItem.nome)){\r\n this.exibirMensagemErro(\"Já existe Macroprocesso com este nome.\");\r\n return;\r\n }\r\n\r\n novoItem.tipo = 3;\r\n novoItem.tipoDescription = \"Processo\";\r\n \r\n if(!this.model.itens[arrayIndices[0]].itens[arrayIndices[1]].itens){\r\n this.model.itens[arrayIndices[0]].itens[arrayIndices[1]].itens = [] as ITipoUniversoItemModel[];\r\n }\r\n\r\n this.model.itens[arrayIndices[0]].itens[arrayIndices[1]].itens.push(novoItem);\r\n\r\n }\r\n\r\n this.alterou = true;\r\n this.reordenar();\r\n\r\n }\r\n })\r\n\r\n}\r\n\r\nprivate existeNomeMesmoNivel(itens: ITipoUniversoItemModel[], nome: string){\r\n return itens && itens.find(item => item.nome.toUpperCase() == nome.toUpperCase());\r\n}\r\n\r\npublic exibirModalItemEditar(element: ITipoUniversoItemModel, indx: string){\r\n \r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-descricao';\r\n dialogConfig.width = '450px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n item: element,\r\n indx: indx\r\n };\r\n\r\n const modal = this.matDialog.open(ModalTipoUniversoItemDescricaoComponent, dialogConfig);\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n \r\n let novoItem = data.item as ITipoUniversoItemModel;\r\n let arrayIndices = JSON.parse(\"[\" + data.indx + \"]\");\r\n\r\n if(arrayIndices.length == 1){\r\n\r\n this.model.itens[arrayIndices[0]].nome = novoItem.nome;\r\n \r\n }else if(arrayIndices.length == 2){\r\n\r\n this.model.itens[arrayIndices[0]].itens[arrayIndices[1]].nome = novoItem.nome;\r\n \r\n }else if(arrayIndices.length == 2){\r\n \r\n this.model.itens[arrayIndices[0]].itens[arrayIndices[1]].itens[arrayIndices[2]].nome = novoItem.nome;\r\n\r\n }\r\n\r\n this.alterou = true;\r\n\r\n })\r\n\r\n}\r\n\r\npublic excluirItem(element: any, indx: string){\r\n\r\n Swal.fire({\r\n title: 'Excluir item',\r\n text: `Deseja realmente excluir este item?`,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(resConfirm => {\r\n if (resConfirm.isConfirmed) {\r\n\r\n let arrayIndices = JSON.parse(\"[\" + indx + \"]\");\r\n\r\n if(arrayIndices.length == 1){\r\n this.model.itens.splice(arrayIndices[0], 1);\r\n }else if(arrayIndices.length == 2){\r\n this.model.itens[arrayIndices[0]].itens.splice(arrayIndices[1], 1);\r\n }else if (arrayIndices.length == 3){\r\n this.model.itens[arrayIndices[0]].itens[arrayIndices[1]].itens.splice(arrayIndices[2], 1);\r\n }\r\n \r\n this.alterou = true;\r\n this.reordenar();\r\n\r\n }else{\r\n }\r\n });\r\n\r\n \r\n}\r\n\r\npublic async exibirModalUnidadeGestora(){\r\n \r\n let filtro = {} as FiltroModel;\r\n filtro.itensPorPagina = 999;\r\n filtro.ativo = true;\r\n const res = await this.unidadeGestoraService.obter(filtro);\r\n if (res.sucesso) {\r\n const customFilterPredicate = (data: { sigla: string, nome: string }, filterValue: string) => {\r\n return (data.sigla || '').trim().toLowerCase().indexOf(filterValue) !== -1\r\n || (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1;\r\n };\r\n\r\n const modal = this.exibirModal('Selecionar Unidade Gestora', res.dados.resultado.filter(_ => !this.idsUgsExistentes.find(i => i === _.id)).map(c => ({ ...c, sigla: c.sigla })), false, [\r\n {\r\n columnDef: 'selecao',\r\n header: ''\r\n },\r\n {\r\n columnDef: 'sigla',\r\n header: 'Sigla'\r\n },\r\n {\r\n columnDef: 'nome',\r\n header: 'Nome'\r\n }], customFilterPredicate);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.alterou = true;\r\n this.model.idUG = data.id;\r\n this.nomeUG = data.nome;\r\n this.submit = false;\r\n }\r\n }\r\n );\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n}\r\n\r\npublic moveUp(element: any, indx: string){\r\n let arrayIndices = JSON.parse(\"[\" + indx + \"]\");\r\n\r\n if(arrayIndices.length == 1){\r\n \r\n if((arrayIndices[0]) == 0)\r\n return;\r\n\r\n moveItemInArray(this.model.itens, arrayIndices[0], arrayIndices[0]-1)\r\n \r\n }else if(arrayIndices.length == 2){\r\n \r\n if((arrayIndices[1]) == 0)\r\n return;\r\n\r\n moveItemInArray(this.model.itens[arrayIndices[0]].itens, arrayIndices[1], arrayIndices[1]-1)\r\n\r\n }else{\r\n if((arrayIndices[2]) == 0)\r\n return;\r\n\r\n moveItemInArray(this.model.itens[arrayIndices[0]].itens[arrayIndices[1]].itens, arrayIndices[2], arrayIndices[2]-1)\r\n }\r\n\r\n this.alterou = true;\r\n this.reordenar();\r\n}\r\n\r\npublic moveDown(element: any, indx: string){\r\n\r\n let arrayIndices = JSON.parse(\"[\" + indx + \"]\");\r\n\r\n if(arrayIndices.length == 1){\r\n \r\n if((arrayIndices[0]) == this.model.itens.length -1)\r\n return;\r\n\r\n moveItemInArray(this.model.itens, arrayIndices[0], arrayIndices[0]+1)\r\n \r\n }else if(arrayIndices.length == 2){\r\n \r\n if((arrayIndices[1]) == this.model.itens[arrayIndices[0]].itens.length -1)\r\n return;\r\n\r\n moveItemInArray(this.model.itens[arrayIndices[0]].itens, arrayIndices[1], arrayIndices[1]+1)\r\n\r\n }else{\r\n if((arrayIndices[2]) == this.model.itens[arrayIndices[0]].itens[arrayIndices[1]].itens.length -1)\r\n return;\r\n\r\n moveItemInArray(this.model.itens[arrayIndices[0]].itens[arrayIndices[1]].itens, arrayIndices[2], arrayIndices[2]+1)\r\n }\r\n\r\n this.alterou = true;\r\n this.reordenar();\r\n\r\n}\r\n\r\n public cancelar() {\r\n\r\n if(this.alterou){\r\n const dialogConfig = new MatDialogConfig();\r\n \r\n const modal = this.matDialog.open(ModalCancelarComponent, dialogConfig);\r\n modal.afterClosed().subscribe((resultado) => {\r\n if (resultado == true) {\r\n this.dialogRef.close(true);\r\n }\r\n });\r\n }else{\r\n this.dialogRef.close(true);\r\n }\r\n \r\n }\r\n\r\n}\r\n\r\n ","
\r\n \r\n
\r\n
{{titulo}}
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n Classificação do Tipo\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n Unidade Gestora\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
#NomeTipo EntradaAções
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n {{ subTipo?.ordemExibicao }}\r\n
\r\n \r\n \r\n {{ subTipo?.nome }} \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n {{ subTipo?.tipoDescription }}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n 0\">\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n Nenhum item cadastrado\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport Swal from 'sweetalert2';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { ITipoUniversoModel, ITipoUniversoUGModel } from 'src/app/models/tipo-universo.model';\r\nimport { TipoUniversoService } from 'src/app/services/tipo-universo.service';\r\nimport { IndicadorService } from 'src/app/services/indicador.service';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ModalTipoUniversoItemComponent } from './modal-tipo-universo-item/modal-tipo-universo-item.component';\r\n\r\n@Component({\r\n selector: 'app-tipo-universo-form',\r\n templateUrl: './tipo-universo-form.component.html',\r\n styleUrls: ['./tipo-universo-form.component.scss']\r\n})\r\nexport class TipoUniversoFormComponent extends BaseFormComponent implements OnInit {\r\n public model: ITipoUniversoModel = {} as ITipoUniversoModel;\r\n public ugsDataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public idTipoClassificacao: number;\r\n\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({ value: '', disabled: true }),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n tipo: new FormControl(null, Validators.required),\r\n indicadorId: new FormControl(null, Validators.required)\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private tipoUniversoService: TipoUniversoService,\r\n private indicadorService: IndicadorService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo Tipo de universo auditável';\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.tipoUniversoService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n this.idTipoClassificacao = this.model.tipo;\r\n\r\n this.ugsDataSource = new MatTableDataSource(this.model.ugs);\r\n this.semDados = this.ugsDataSource.filteredData.length === 0;\r\n if(this.semDados){\r\n if(this.model.tipo == 1){\r\n this.alterarParaTipoPadronizado();\r\n }\r\n }\r\n\r\n if (this.visualizar){\r\n this.titulo = 'Visualizar Tipo de universo auditável - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Tipo de universo auditável - ' + this.model.nome;\r\n }\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/tipo-universo']);\r\n return;\r\n }\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.exibirMensagemErro(err);\r\n this.router.navigate(['/tipo-universo']);\r\n }\r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean){\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n this.submit = true;\r\n\r\n this.atualizarModel(this.form.value);\r\n this.model.tipo = this.idTipoClassificacao;\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.tipoUniversoService.atualizar(this.model);\r\n } else {\r\n res = await this.tipoUniversoService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n\r\n if(salvarEFechar == true)\r\n this.router.navigate(['/tipo-universo']);\r\n else\r\n if(this.novoRegistro){\r\n this.router.navigate([`/tipo-universo/${res.dados.id}`]);\r\n await this.ngOnInit();\r\n }\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err);\r\n } \r\n\r\n }\r\n\r\n public async exibirModalIndicador() {\r\n try {\r\n const res = await this.indicadorService.obter('', true);\r\n if (res.sucesso) {\r\n res.dados.sort((a, b) => a['nome'].localeCompare(b['nome']));\r\n const modal = this.exibirModal('Selecionar Indicador', res.dados);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n //this.salvarDadosPendente = true;\r\n this.model.indicadorNome = data.nome;\r\n this.model.indicadorId = data.id;\r\n this.form.controls['indicadorId'].setValue(data.id);\r\n }\r\n });\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n \r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public abrirModalUG(ug: ITipoUniversoUGModel, visualizar: boolean){\r\n \r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component-universo-item';\r\n dialogConfig.width = '1000px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n idTipoUniverso: this.id,\r\n idClassificacaoTipo: this.idTipoClassificacao,\r\n idUG: ug ? ug.idUG : null,\r\n visualizar: visualizar,\r\n tipoDescription: this.model.tipoDescription,\r\n nomeUG: ug ? ug.nome : \"\",\r\n idsUgsExistentes: this.model.ugs ? this.model.ugs.map(item => item.idUG) : null\r\n };\r\n\r\n const modal = this.matDialog.open(ModalTipoUniversoItemComponent, dialogConfig);\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n this.ngOnInit();\r\n }\r\n })\r\n }\r\n\r\n public excluirUG(element: any){\r\n\r\n Swal.fire({\r\n title: 'Excluir subtipo de Universo Auditável',\r\n text: `Esta ação excluirá todo o subtipo de universo auditável. Será necessário realizar um novo cadastro de subtipo de universo auditável. Tem certeza que deseja excluí-lo?`,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(resConfirm => {\r\n if (resConfirm.isConfirmed) {\r\n this.tipoUniversoService.excluirUG(this.id, element.idUG)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.ngOnInit();\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch(err => this.exibirMensagemErro(err))\r\n }\r\n })\r\n\r\n\r\n }\r\n\r\n public onChangeSelectTipo(event: any) {\r\n\r\n if(!this.semDados){\r\n Swal.fire({\r\n title: 'Alterar classificação',\r\n text: `Esta ação irá apagar os subtipos cadastrados. Deseja realmente continuar?`,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(resConfirm => {\r\n if (resConfirm.isConfirmed) {\r\n \r\n this.idTipoClassificacao = event.target.value;\r\n \r\n if(this.idTipoClassificacao == 1){\r\n \r\n this.alterarParaTipoPadronizado();\r\n\r\n }else{\r\n \r\n this.alterarParaTipoNaoPadronizado();\r\n\r\n }\r\n \r\n }else{\r\n \r\n this.model.tipo = this.idTipoClassificacao;\r\n \r\n }\r\n });\r\n }else{\r\n this.idTipoClassificacao = event.target.value;\r\n\r\n if(this.idTipoClassificacao == 1){\r\n \r\n this.alterarParaTipoPadronizado();\r\n\r\n }else{\r\n \r\n this.alterarParaTipoNaoPadronizado();\r\n \r\n }\r\n }\r\n\r\n\t}\r\n\r\n private alterarParaTipoPadronizado(){\r\n let novoItem = {} as ITipoUniversoUGModel;\r\n let listaItens = [] as ITipoUniversoUGModel[];\r\n listaItens.push(novoItem);\r\n \r\n this.model.tipo = 1;\r\n this.model.tipoDescription = \"Padronizada\";\r\n this.model.ugs = null;\r\n this.model.ugs = listaItens;\r\n this.ugsDataSource = new MatTableDataSource(this.model.ugs);\r\n this.semDados = false;\r\n this.form.controls['tipo'].setValue(this.model.tipo);\r\n }\r\n\r\n private alterarParaTipoNaoPadronizado(){\r\n this.model.tipo = 2;\r\n this.model.tipoDescription = \"Não-Padronizada\";\r\n this.model.ugs = null;\r\n this.ugsDataSource = new MatTableDataSource(this.model.ugs);\r\n this.semDados = true;\r\n this.form.controls['tipo'].setValue(this.model.tipo);\r\n }\r\n\r\n public cancelar() {\r\n if(this.form.dirty){\r\n const dialogConfig = new MatDialogConfig();\r\n \r\n const modal = this.matDialog.open(ModalCancelarComponent, dialogConfig);\r\n modal.afterClosed().subscribe((resultado) => {\r\n if (resultado == true) {\r\n this.router.navigate(['/tipo-universo']);\r\n }\r\n });\r\n\r\n }else{\r\n this.router.navigate(['/tipo-universo']);\r\n }\r\n }\r\n \r\n \r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Tipos de universo auditável\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n Classificação do Tipo\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n Subtipo de Universo Auditável\r\n
\r\n \r\n \r\n \r\n Adicionar \r\n \r\n
\r\n
\r\n \r\n \r\n Unidades Gestoras \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
\r\n {{ idTipoClassificacao == 1 \r\n ? \"Subtipo de Universo Auditável\" \r\n : element.sigla + \" - \" + element.nome }} \r\n
\r\n
\r\n Sem dados a exibir\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\nimport { ITipoUniversoModel } from 'src/app/models/tipo-universo.model';\r\nimport { IFiltroTipoUniverso } from 'src/app/models/filtros/filtro-tipo-universo.model';\r\nimport { IIndicadorModel } from 'src/app/models/indicador.model';\r\nimport { IndicadorService } from 'src/app/services/indicador.service';\r\nimport { TipoUniversoService } from 'src/app/services/tipo-universo.service';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'quantDiasPadrao':\r\n return item.quantidadeDiasPadrao;\r\n case 'nome': return item.nome.trim().toLowerCase(); \r\n default:\r\n return item[property];\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-tipo-universo-list',\r\n templateUrl: './tipo-universo-list.component.html',\r\n styleUrls: ['./tipo-universo-list.component.scss']\r\n})\r\nexport class TipoUniversoListComponent extends BaseListComponent {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: ITipoUniversoModel;\r\n public displayedColumns: string[] = ['selecao', 'nome','tipoDescription', 'indicador', 'ativo'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n public filtro = {} as IFiltroTipoUniverso;\r\n public totalItens: number;\r\n public pageEvent: any;\r\n public indicadores: IIndicadorModel[];\r\n\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private tipoUniversoService: TipoUniversoService,\r\n private toastr: ToastrService,\r\n private indicadorService: IndicadorService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.TipoUniversoAuditavel, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.TipoUniversoAuditavel, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.TipoUniversoAuditavel, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.TipoUniversoAuditavel, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.TipoUniversoAuditavel, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.TipoUniversoAuditavel, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.TipoUniversoAuditavel, EnumAcaoRecurso.Imprimir);\r\n }\r\n\r\n async ngAfterViewInit() {\r\n await this.configurarFiltro();\r\n this.buscar();\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n\r\n if(!this.permissoes.consultar){\r\n this.exibirMensagemErro(\"Você não possui permissão para Consulta.\");\r\n this.router.navigate(['/']);\r\n }\r\n }\r\n\r\n public novo() {\r\n \r\n if(!this.permissoes.incluir){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n this.router.navigate(['/tipo-universo/novo']);\r\n }\r\n\r\n public atualizarFiltroStatus(valor) {\r\n this.filtro = {} as IFiltroTipoUniverso;\r\n this.searchAtivo = valor;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.buscar();\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n\r\n this.tipoUniversoService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.totalItens = res.dados.totalItens;\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n this.configurarFiltro();\r\n }\r\n }).catch((err) => {\r\n this.exibirMensagemErro(err);\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n if(!this.permissoes.inativarReativar){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n this.tipoUniversoService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Tipo de universo auditável reativado com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n if(!this.permissoes.inativarReativar){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n this.tipoUniversoService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Tipo de universo auditável inativado com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n if(!this.permissoes.editar){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n this.router.navigate([`/tipo-universo/${id}`]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public excluir(id: number) {\r\n if(!this.permissoes.excluir){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n this.tipoUniversoService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(\"Tipo de universo auditável excluído com sucesso.\");\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n if(!this.permissoes.visualizar){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n this.router.navigate([`/tipo-universo/${id}/visualizar`]);\r\n }\r\n\r\n public imprimir(id: number){\r\n if(!this.permissoes.imprimir){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n }\r\n\r\n private async configurarFiltro() {\r\n \r\n await this.indicadorService.obter('', undefined, true).then(res => {\r\n if(res.sucesso){\r\n this.indicadores = res.dados;\r\n }\r\n });\r\n\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.colunaOrder = this.sort.active;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchNome;\r\n this.filtro.direcao = this.sort.direction;\r\n }\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n}\r\n\r\npublic selecionarIndicador(element: IIndicadorModel){\r\n if(element){\r\n this.filtro.idIndicador = element.id;\r\n }else{\r\n this.filtro.idIndicador = null;\r\n }\r\n this.buscar();\r\n}\r\n\r\npublic selecionarClassificacao(id: number){\r\n if(id){\r\n this.filtro.tipo = id;\r\n }else{\r\n this.filtro.tipo = null;\r\n }\r\n this.buscar();\r\n}\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Tipo de Universo Auditável
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Tipo de Universo Auditável\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tIndicador\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tTodos os Resultados\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ indicador.nome }}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n \r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tClassificação\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tTodos os Resultados\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tPadronizado\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tNão-padronizado\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Nome {{element.nome}} Classificação {{element.tipoDescription}} Indicador {{element.indicadorNome}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n","import { Component, OnInit, AfterViewInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport Inputmask from 'inputmask';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { IResponsavelUnidadeGestoraModel } from 'src/app/models/responsavel-unidade-gestora.model';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\nimport { AcessoCidadaoService } from 'src/app/services/acesso-cidadao.service';\r\nimport { OrganogramaService } from 'src/app/services/organograma.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from '../../../shared/components/base-form/base-form.component';\r\nimport { IUnidadeGestoraMaturidadeGRModel } from 'src/app/models/unidade-gestora-maturidadeGR.model';\r\nimport { UnidadeGestoraMaturidadeGRService } from 'src/app/services/unidade-gestora-maturidadeGR.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { UnidadeGestoraMaturidadeGRHistoricoService } from 'src/app/services/unidade-gestora-maturidadeGRHistorico.service';\r\nimport { IFiltroUnidadeGestoraMaturidadeGRHistoricoModel } from 'src/app/models/filtro-unidade-gestora-maturidadegrhistorico.model';\r\nimport { HistoricoModalComponent } from 'src/app/shared/components/historico-modal/historico-modal.component';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-aba-dados',\r\n templateUrl: './aba-dados.component.html',\r\n styleUrls: ['./aba-dados.component.scss']\r\n})\r\nexport class AbaDadosComponent extends BaseFormComponent implements OnInit {\r\n public model: IUnidadeGestoraModel = {} as IUnidadeGestoraModel;\r\n public enumTipoAdministracao = [] as IEnumModel[];\r\n public enumAnosObrigatorios = [] as IEnumModel[];\r\n public enumFuncoes = [] as IEnumModel[];\r\n public modelResponsavel: IResponsavelUnidadeGestoraModel = {} as IResponsavelUnidadeGestoraModel;\r\n public semDados = true;\r\n public ugDataSource = new MatTableDataSource([]);\r\n public maturidades = [] as IUnidadeGestoraMaturidadeGRModel[];\r\n public modoVisualizar: boolean;\r\n\r\n public form = new FormGroup({\r\n codigoUg: new FormControl('', Validators.required),\r\n gestao: new FormControl('', Validators.required),\r\n orgaoSuperior: new FormControl('', Validators.required),\r\n codigoUo: new FormControl('', Validators.required),\r\n sigla: new FormControl('', Validators.required),\r\n nome: new FormControl('', Validators.required),\r\n cnpj: new FormControl(''),\r\n orgaoId: new FormControl(null, Validators.required),\r\n responsavelId: new FormControl(null, Validators.required),\r\n responsavelDelegadoPermanenteId: new FormControl(null),\r\n unidadeGestoraResponsavelId: new FormControl(null),\r\n tipoAdministracaoId: new FormControl('', Validators.required),\r\n auditoriaObrigatoria: new FormControl({value:'',disabled: this.visualizar}),\r\n anosObrigatorios: new FormControl({value:'', disabled: this.visualizar }),\r\n executaOrcamento: new FormControl({value:'',disabled: this.visualizar}),\r\n executaObra: new FormControl({value:'',disabled: this.visualizar}),\r\n executaConvenio: new FormControl({value:'',disabled: this.visualizar}),\r\n auditoriaSistemas: new FormControl({value:'',disabled: this.visualizar}),\r\n empresaPublica: new FormControl({value:'',disabled: this.visualizar}),\r\n unidadeGestoraMaturidadeGRId: new FormControl({value: '', disabled: true}),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n private acessoCidadaoService: AcessoCidadaoService,\r\n private organogramaService: OrganogramaService,\r\n private unidadeGestoraMaturidadeGRService: UnidadeGestoraMaturidadeGRService,\r\n private unidadeGestoraMaturidadeGRHistoricoService: UnidadeGestoraMaturidadeGRHistoricoService,\r\n public matDialog: MatDialog,\r\n private sharedService: SharedService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Nova Unidade Gestora';\r\n }\r\n}\r\n\r\n\r\nasync ngOnInit() {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n this.modoVisualizar = this.sharedService.getModoVisualizacaoAbasUnidadeGestora();\r\n this.adicionarEnums();\r\n this.carregaMaturidades();\r\n\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.unidadeGestoraService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n \r\n\r\n this.desabilitaCamposModoVisualizacao();\r\n\r\n if (this.visualizar) {\r\n this.titulo = 'Visualisar Unidade Gestora - ' + this.model.sigla;\r\n }\r\n else{\r\n this.titulo = 'Editar Unidade Gestora - ' + this.model.sigla;\r\n }\r\n if (this.model.organogramaId) {\r\n this.form.controls['codigoUg'].enable();\r\n this.form.controls['cnpj'].enable();\r\n }\r\n\r\n if (this.model.importadoViaServico) {\r\n this.desabilitarUgImportadoViaServico();\r\n }\r\n\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/unidades-gestoras']);\r\n return;\r\n }\r\n }\r\n\r\n if (!this.model.importadoViaServico) {\r\n const tiposAdministracao: any[] = [];\r\n let result: any;\r\n\r\n result = await this.tabelaDominioService.obterTipoAdministracao();\r\n const { dados } = result[0];\r\n\r\n dados.forEach((item: { id: number; nome: string; }) => {\r\n tiposAdministracao.push({ codigo: item.id, nome: item.nome, descricao: item.nome });\r\n });\r\n\r\n this.enumTipoAdministracao = tiposAdministracao;\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/unidades-gestoras']);\r\n }\r\n}\r\n\r\nngAfterViewInit(): void {\r\n \r\n}\r\n\r\nprivate desabilitaCamposModoVisualizacao(){\r\n \r\n if (this.modoVisualizar) {\r\n this.form.disable();\r\n } else {\r\n this.form.enable();\r\n }\r\n\r\n this.form.controls['unidadeGestoraMaturidadeGRId'].disable(); \r\n}\r\n\r\nprivate desabilitarUgImportadoViaServico() {\r\n this.form.controls['cnpj'].disable();\r\n this.form.controls['codigoUg'].disable();\r\n this.form.controls['sigla'].disable();\r\n this.form.controls['gestao'].disable();\r\n this.form.controls['nome'].disable();\r\n this.form.controls['tipoAdministracaoId'].disable();\r\n this.enumTipoAdministracao = [{ codigo: this.model.tipoAdministracaoId, nome: this.model.tipoAdministracaoNome, descricao: this.model.tipoAdministracaoNome, guid: \"\" }];\r\n}\r\n\r\npublic async salvarDados(salvarEFechar: boolean)\r\n {\r\n \r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n\r\n this.submit = true;\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.unidadeGestoraService.atualizar(this.model);\r\n } else {\r\n res = await this.unidadeGestoraService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n\r\n if(salvarEFechar == true){\r\n this.router.navigate(['/unidades-gestoras']);\r\n }\r\n else{\r\n this.router.navigate([`/unidades-gestoras/${res.dados.id}`]);\r\n }\r\n\r\n } else {\r\n this.submit = false;\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(res.mensagem.descricao, true);\r\n }\r\n } catch (err) {\r\n this.submit = false;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigate(['/unidades-gestoras']);\r\n }\r\n\r\n public async exibirModalOrgao() {\r\n try {\r\n const res = await this.organogramaService.ObterOrgaos();\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Órgão', res.dados, false);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.model.orgaoId = data.id;\r\n this.model.nomeOrgao = data.nome;\r\n this.form.controls['orgaoId'].setValue(data.id);\r\n }\r\n }\r\n );\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async exibirModalResponsavelUnidade() {\r\n if (!this.model.orgaoId) {\r\n this.exibirMensagemAlerta('É necessário selecionar um órgão antes de escolher o responsável.');\r\n return;\r\n }\r\n\r\n try {\r\n const res = await this.acessoCidadaoService.ObterAgentesPublicosPorConjunto(this.model.orgaoId);\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Responsável pela Unidade', res.dados, false);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.model.responsavelId = data.id;\r\n this.model.nomeResponsavel = data.nome;\r\n this.form.controls['responsavelId'].setValue(data.id);\r\n }\r\n }\r\n );\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async exibirModalResponsavelDelegadoPermanenteUnidade() {\r\n if (!this.model.orgaoId) {\r\n this.exibirMensagemAlerta('É necessário selecionar um órgão antes de escolher o responsável.');\r\n return;\r\n }\r\n\r\n try {\r\n const res = await this.acessoCidadaoService.ObterAgentesPublicosPorConjunto(this.model.orgaoId);\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Responsável pela Unidade', res.dados, false);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.model.responsavelDelegadoPermanenteId = data.id;\r\n this.model.nomeResponsavelDelegadoPermanente = data.nome;\r\n this.form.controls['responsavelDelegadoPermanenteId'].setValue(data.id);\r\n }\r\n }\r\n );\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async exibirModalUnidadeGestoraResponsavel() {\r\n try {\r\n const res = await this.unidadeGestoraService.obter();\r\n if (res.sucesso) {\r\n const customFilterPredicate = (data: { sigla: string, nome: string }, filterValue: string) => {\r\n return (data.sigla || '').trim().toLowerCase().indexOf(filterValue) !== -1\r\n || (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1;\r\n };\r\n\r\n const modal = this.exibirModal('Selecionar Unidade Gestora Responsavel', res.dados.resultado.filter(_ => !this.ugDataSource.data.find(i => i.id === _.id)).map(c => ({ ...c, sigla: c.sigla })), false, [\r\n {\r\n columnDef: 'selecao',\r\n header: ''\r\n },\r\n {\r\n columnDef: 'sigla',\r\n header: 'Sigla'\r\n },\r\n {\r\n columnDef: 'nome',\r\n header: 'Nome'\r\n }], customFilterPredicate);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.model.unidadeGestoraResponsavelId = data.id;\r\n this.model.nomeUnidadeGestoraResponsavel = data.nome;\r\n this.form.controls['unidadeGestoraResponsavelId'].setValue(data.id);\r\n }\r\n }\r\n );\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n\r\n public adicionarEnums(){\r\n this.enumAnosObrigatorios.push({ codigo: 2, nome: \"1º\", descricao: \"1º\" , guid: \"\"});\r\n this.enumAnosObrigatorios.push({ codigo: 4, nome: \"2º\", descricao: \"2º\" , guid: \"\"});\r\n this.enumAnosObrigatorios.push({ codigo: 8, nome: \"3º\", descricao: \"3º\" , guid: \"\"});\r\n this.enumAnosObrigatorios.push({ codigo: 16, nome: \"4º\", descricao: \"4º\" , guid: \"\"});\r\n }\r\n\r\n public async carregaMaturidades(){\r\n const filtro = {} as FiltroModel;\r\n this.unidadeGestoraMaturidadeGRService\r\n .obter(filtro)\r\n .then((res) => {\r\n this.maturidades = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n }); \r\n }\r\n\r\n public async abrirModalHistoricoMaturidade(){\r\n const filtroHistorico = {} as IFiltroUnidadeGestoraMaturidadeGRHistoricoModel;\r\n filtroHistorico.idug = this.model.id;\r\n const dadosHistoricoMaturidade = await this.unidadeGestoraMaturidadeGRHistoricoService.obter(filtroHistorico)\r\n \r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-historico-component';\r\n dialogConfig.width = '800px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n codigo: this.model.codigoUg,\r\n sigla: this.model.sigla,\r\n nome:this.model.nome,\r\n historicoDados: dadosHistoricoMaturidade.dados\r\n };\r\n\r\n const modal = this.matDialog.open(\r\n HistoricoModalComponent,\r\n dialogConfig\r\n );\r\n\r\n\r\n }\r\n\r\n mudarAba(novaAba: number) {\r\n this.aba = novaAba;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n

\r\n Códigos do SIGEFES\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n = 999999999){this.value=this.value.slice(0,9)}\"\r\n onkeypress=\"return event.charCode >= 48 && event.charCode <= 57\"\r\n id=\"codigoUg\"\r\n class=\"form-control form-control-sm\"\r\n [attr.disabled]=\"visualizar ? true : null\"\r\n formControlName=\"codigoUg\"\r\n [ngClass]=\"{\r\n 'is-invalid':\r\n f.submitted && form.controls['codigoUg'].invalid\r\n }\"\r\n appKeyboardlock\r\n autocomplete=\"new-password\"\r\n />\r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n = 999999999){this.value=this.value.slice(0,9)}\"\r\n onkeypress=\"return event.charCode >= 48 && event.charCode <= 57\"\r\n id=\"gestao\"\r\n class=\"form-control form-control-sm\"\r\n [attr.disabled]=\"visualizar ? true : null\"\r\n formControlName=\"gestao\"\r\n [ngClass]=\"{\r\n 'is-invalid':\r\n f.submitted && form.controls['gestao'].invalid\r\n }\"\r\n appKeyboardlock\r\n autocomplete=\"new-password\"\r\n />\r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n = 999999999){this.value=this.value.slice(0,9)}\"\r\n onkeypress=\"return event.charCode >= 48 && event.charCode <= 57\"\r\n id=\"orgaoSuperior\"\r\n [attr.disabled]=\"visualizar ? true : null\"\r\n class=\"form-control form-control-sm\"\r\n formControlName=\"orgaoSuperior\"\r\n [ngClass]=\"{\r\n 'is-invalid':\r\n f.submitted &&\r\n form.controls['orgaoSuperior'].invalid\r\n }\"\r\n appKeyboardlock\r\n autocomplete=\"new-password\"\r\n />\r\n \r\n \r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n = 999999999){this.value=this.value.slice(0,9)}\"\r\n onkeypress=\"return event.charCode >= 48 && event.charCode <= 57\"\r\n maxlength=\"10\"\r\n id=\"codigoUo\"\r\n class=\"form-control form-control-sm\"\r\n [attr.disabled]=\"visualizar ? true : null\"\r\n formControlName=\"codigoUo\"\r\n [ngClass]=\"{\r\n 'is-invalid':\r\n f.submitted && form.controls['codigoUo'].invalid\r\n }\"\r\n appKeyboardlock\r\n autocomplete=\"new-password\"\r\n />\r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n Dados Gerais\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n Campo obrigatório\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{ item.descricao }}\r\n \r\n \r\n \r\n Campo obrigatório\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ item.nome }}\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n Campo obrigatório\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n Auditoria Obrigatória\r\n \r\n
\r\n \r\n Selecione o ano\r\n \r\n \r\n {{item.nome}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n Executa Orçamento\r\n \r\n
\r\n
\r\n \r\n Executa Obra\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n Executa Convênio\r\n \r\n
\r\n
\r\n \r\n Auditoria de Sistemas de TI\r\n \r\n
\r\n
\r\n \r\n Empresa Pública\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n Cancelar\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { ICategoriaRiscoModel } from 'src/app/models/categoria-risco.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CategoriaRiscoService } from 'src/app/services/categoria-risco.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\nimport { IEntendendoEntidadeListaModel } from 'src/app/models/entendendo-entidade-lista.model';\r\nimport { EntendendoEntidadeService } from 'src/app/services/entendendo-entidade.service';\r\nimport { FiltroQuestionarioUG } from 'src/app/models/filtro-questionario-ug.model';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\r\nimport { ModalQuestionarioNovaVersaoComponent } from './modal-questionario-nova-versao/modal-questionario-nova-versao.component';\r\nimport { ModalSolicitarPreenchimentoComponent } from './modal-solicitar-preenchimento/modal-solicitar-preenchimento.component';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport { EnumStatusAvaliacaoQuestionarioUG } from 'src/app/models/enum/status-avaliacao-questionario-ug.enum';\r\nimport { EnumTipoQuestionarioUG } from 'src/app/models/enum/tipo-questionario-ug.enum';\r\nimport { EnumTipoAvaliacaoQuestionarioUG } from 'src/app/models/enum/tipo-avaliacao-questionario-ug.enum';\r\nimport { EQuestionarioUGSituacao, EQuestionarioUGSituacaoDescricao } from 'src/app/models/enum/questionario-ug-situacao.enum';\r\nimport { QuestionarioUGService } from 'src/app/services/questionarioug.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { saveAs } from 'file-saver';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'versao': return item.versao.trim().toLowerCase();\r\n case 'data': return item.data.trim().toLowerCase();\r\n case 'situacao': return item.situacao.trim().toLowerCase();\r\n case 'ativo':\r\n return item.ativo;\r\n default:\r\n return item.versao.trim().toLowerCase();\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-aba-entendendo-entidade',\r\n templateUrl: './aba-entendendo-entidade.component.html',\r\n styleUrls: ['./aba-entendendo-entidade.component.scss']\r\n})\r\nexport class AbaEntendendoEntidadeComponent extends BaseListComponent {\r\n\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IEntendendoEntidadeListaModel;\r\n public displayedColumns: string[] = ['selecao', 'versao', 'data', 'situacao', 'status'];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n public filtro = {} as FiltroQuestionarioUG;\r\n public totalItens: number;\r\n public pageEvent: any;\r\n private currentDialogRef: MatDialogRef;\r\n\r\n public botaoNovoDisable = false;\r\n public botaoEditarDisable = false;\r\n public botaoExcluirDisable = false;\r\n public botaoImprimirDisable = false;\r\n public botaoPreenchimentoDisable = false;\r\n public botaoImportarDisable = false;\r\n public botaoVisualizarDisable = false;\r\n\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private http: HttpClient,\r\n private entendendoEntidadeService: EntendendoEntidadeService,\r\n private questionarioUGService: QuestionarioUGService,\r\n private router: Router,\r\n private matDialog: MatDialog,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n private sharedService: SharedService\r\n ) {\r\n super();\r\n }\r\n\r\n async ngOnInit() {\r\n this.setarPermissoes();\r\n await this.configuraTela();\r\n this.buscar();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Imprimir);\r\n this.permissoes.importar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Importar);\r\n\r\n }\r\n\r\n async ngAfterViewInit() {\r\n this.configurarFiltro();\r\n await this.configuraTela();\r\n this.buscar();\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n public novo() {\r\n\r\n if (!this.semDados) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n source: 'novo'\r\n };\r\n this.currentDialogRef = this.matDialog.open(ModalQuestionarioNovaVersaoComponent, dialogConfig);\r\n this.currentDialogRef.afterClosed().subscribe((data) => {\r\n this.buscar();\r\n });\r\n } else {\r\n this.router.navigate(['gerar-questionario']);\r\n }\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n this.entendendoEntidadeService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.totalItens = res.dados.totalItens;\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n }\r\n\r\n public reativar(id: number) {\r\n this.entendendoEntidadeService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Categoria de Risco reativado com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.entendendoEntidadeService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Categoria de Risco inativado com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n const situacoesNaoPermitidas = [\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Pendente],\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Finalizado]\r\n ];\r\n const situacaoAtual = this.selectedModel.situacao;\r\n if (!situacoesNaoPermitidas.includes(situacaoAtual) && this.selectedModel.ativo == true) {\r\n this.router.navigate([`editar-entendendo-entidade/${id}`]);\r\n }\r\n\r\n }\r\n\r\n preencher(id: number) {\r\n const situacaoAtual = this.selectedModel.situacao;\r\n\r\n const situacoesNaoPermitidas = [\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Pendente],\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Finalizado]\r\n ];\r\n\r\n if (!situacoesNaoPermitidas.includes(situacaoAtual) && this.selectedModel.ativo == true) {\r\n this.router.navigate([`questionario/pre-planejamento-resposta/${id}`]);\r\n } else {\r\n this.exibirMensagemAlerta('Questionário só pode ser preenchido se estiver com Status diferente de Finalizado ou Pendente e também que esteja ativo.');\r\n }\r\n }\r\n\r\n public importarArquivo() {\r\n if (!this.semDados) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n source: 'importarArquivo'\r\n };\r\n this.currentDialogRef = this.matDialog.open(ModalQuestionarioNovaVersaoComponent, dialogConfig);\r\n this.currentDialogRef.afterClosed().subscribe((data) => {\r\n this.buscar();\r\n });\r\n } else {\r\n this.router.navigate([`importacao-arquivo-questionario`]);\r\n }\r\n\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n isSelect() {\r\n if (this.selectedModel !== null) {\r\n return !this.selectedModel?.ativo;\r\n }\r\n }\r\n\r\n public excluir(id: number) {\r\n this.entendendoEntidadeService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Questionário excluído com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.router.navigate([`visualizar-entendendo-entidade/${id}`]);\r\n }\r\n\r\n public imprimir(id: number) {\r\n\r\n this.questionarioUGService.DownloadArquivoPorIdQuestionario(id).then((res) => {\r\n console.log(res);\r\n if (res && res.dados && typeof res.dados.url === 'string' && res.dados.url.trim() !== '') {\r\n this.http.get(res.dados.url, { responseType: 'blob' }).subscribe((blob) => {\r\n const fileName = res.dados.nomeArquivo;\r\n saveAs(blob, fileName);\r\n })\r\n }\r\n else {\r\n this.router.navigate([`imprimir-entendendo-entidade/${id}`]);\r\n }\r\n });\r\n\r\n\r\n\r\n\r\n\r\n }\r\n\r\n private configurarFiltro() {\r\n this.filtro.idUg = this.sharedService.getId();\r\n this.filtro.tipoQuestionario = 1; // criar um enum\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.colunaOrder = this.sort.active;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchNome;\r\n this.filtro.direcao = this.sort.direction;\r\n }\r\n\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n }\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n\r\n\r\n\r\n public solicitar(id: number) {\r\n const situacoesPermitidas = [\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.EmElaboracao],\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Avocado]\r\n ];\r\n\r\n const situacaoAtual = this.selectedModel.situacao;\r\n\r\n if (situacoesPermitidas.includes(situacaoAtual) && this.selectedModel.ativo == true) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-solicitar-preenchimento';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n param1: id\r\n };\r\n\r\n this.currentDialogRef = this.matDialog.open(ModalSolicitarPreenchimentoComponent, dialogConfig);\r\n this.currentDialogRef.afterClosed().subscribe((data) => {\r\n this.buscar();\r\n });\r\n }\r\n else {\r\n this.exibirMensagemAlerta('Questionario só pode ser Solicitado se estiver no Status de Pendente/Avocado e Ativo');\r\n }\r\n }\r\n\r\n public avocar(id: number) {\r\n const situacao = EQuestionarioUGSituacao.Pendente;\r\n if (this.selectedModel.situacao == EQuestionarioUGSituacaoDescricao[situacao] && this.selectedModel.ativo == true) {\r\n this.entendendoEntidadeService\r\n .Avocar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Questionário avocado com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n else {\r\n this.exibirMensagemAlerta('Questionario só pode ser avocado se estiver no status Pendente e Ativo');\r\n }\r\n\r\n }\r\n\r\n public async avaliar(id: number) {\r\n const situacaoEnviado = EQuestionarioUGSituacao.Enviado;\r\n const situacaoContestado = EQuestionarioUGSituacao.Contestado;\r\n const situacaoEmValidacao = EQuestionarioUGSituacao.EmValidacao;\r\n\r\n this.sharedService.setTipoQuestionario(EnumTipoQuestionarioUG.EntendendoEntidade);\r\n\r\n if (\r\n (this.selectedModel.situacao == EQuestionarioUGSituacaoDescricao[situacaoEnviado] ||\r\n this.selectedModel.situacao == EQuestionarioUGSituacaoDescricao[situacaoContestado] ||\r\n this.selectedModel.situacao == EQuestionarioUGSituacaoDescricao[situacaoEmValidacao]) &&\r\n this.selectedModel.ativo == true\r\n ) {\r\n await this.questionarioUGService.Avaliar(id);\r\n this.router.navigate([`avaliar-questionario/${id}`]);\r\n } else {\r\n this.exibirMensagemAlerta('Questionario só pode ser avaliado se estiver nos Status de Enviado, Contestado ou Em validação e também que esteja Ativo');\r\n }\r\n\r\n }\r\n\r\n public isButtonDisabled(): boolean {\r\n // Verifica se existe um modelo selecionado\r\n if (!this.selectedModel) {\r\n return true;\r\n }\r\n\r\n // Verifica as condições adicionais\r\n return !this.selectedModel.ativo ||\r\n !(this.selectedModel.situacao === 'Em Elaboração' || this.selectedModel.situacao === 'Avocado');\r\n }\r\n\r\n public isButtonDisabledEditar(): boolean {\r\n // Verifica se existe um modelo selecionado\r\n if (!this.selectedModel) {\r\n return true;\r\n }\r\n\r\n const situacoesNaoPermitidas = [\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Pendente],\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Finalizado]\r\n ];\r\n\r\n const situacaoAtual = this.selectedModel.situacao;\r\n\r\n // Verifica as condições adicionais\r\n return !this.selectedModel.ativo || situacoesNaoPermitidas.includes(situacaoAtual);\r\n\r\n }\r\n\r\n\r\n async configuraTela() {\r\n if (this.sharedService.getModoVisualizacaoAbasUnidadeGestora()) {\r\n this.botaoNovoDisable = true;\r\n this.botaoImportarDisable = true;\r\n this.botaoEditarDisable = true;\r\n this.botaoExcluirDisable = true;\r\n this.botaoImprimirDisable = false;\r\n this.botaoPreenchimentoDisable = true;\r\n this.botaoVisualizarDisable = false;\r\n }\r\n\r\n this.unidadeGestoraService.obterPorId(this.filtro.idUg)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n if (!res.dados.ativo) {\r\n this.botaoNovoDisable = true;\r\n this.botaoImportarDisable = true;\r\n this.botaoEditarDisable = true;\r\n this.botaoExcluirDisable = true;\r\n this.botaoImprimirDisable = true;\r\n this.botaoPreenchimentoDisable = true;\r\n this.botaoVisualizarDisable = true;\r\n }\r\n }\r\n });\r\n\r\n this.entendendoEntidadeService.DownloadArquivo(this.filtro.idUg)\r\n .then((res) => {\r\n if (res.dados.url != '') {\r\n this.botaoEditarDisable = true;\r\n this.botaoPreenchimentoDisable = true;\r\n this.botaoVisualizarDisable = true;\r\n }\r\n })\r\n\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Entendendo a Entidade\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Versão {{element.versao}} Data {{element.dataCriacaoFormatada}} Situação {{element.situacao}} Status \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { Component, ViewChild, OnInit } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { MatSort, Sort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { IModeloQuestionarioItemModel, IModeloQuestionarioModel } from \"src/app/models/modelo-questionario.model\";\r\nimport { IPermissaoModel } from \"src/app/models/permissao.model\";\r\nimport { EnumRecursoPerfil } from \"src/app/models/enum/recurso-perfil.enum\";\r\nimport { EnumAcaoRecurso } from \"src/app/models/enum/acao-recurso.enum\";\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { TabelaDominioService } from \"src/app/services/tabela-dominio.service\";\r\nimport { IEnumModel } from \"src/app/models/enum.model\";\r\nimport { PerguntaService } from \"src/app/services/pergunta.service\";\r\nimport { MatDialogConfig } from \"@angular/material/dialog\";\r\nimport { EntendendoEntidadeService } from \"src/app/services/entendendo-entidade.service\";\r\nimport { IQuestionarioUGItemModel, IQuestionarioUGModel } from \"src/app/models/questionario-ug.model\";\r\nimport { ModalQuestionarioUGPerguntaComponent } from \"./modal-pergunta/modal-pergunta.component\";\r\nimport { ModalQuestionarioUGSecaoComponent } from \"./modal-secao/modal-secao.component\";\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-editar-entendendo-entidade',\r\n templateUrl: './editar-entendendo-entidade.component.html',\r\n styleUrls: ['./editar-entendendo-entidade.component.scss']\r\n})\r\nexport class EditarEntendendoEntidadeComponent extends BaseFormComponent implements OnInit {\r\n \r\n public model= {} as IQuestionarioUGModel;\r\n public tiposDocumentos = [] as IEnumModel[];\r\n columnsToDisplay = ['ordem', 'nome', 'tipoDescription', 'obrigatorio', 'actions'];\r\n subColumnsToDisplay = ['ordem', 'nome', 'tipoDescription', 'obrigatorio', 'actions'];\r\n public idUnidadeGestora : number;\r\n\r\n constructor(\r\n private questionarioUGService: EntendendoEntidadeService,\r\n toastr: ToastrService,\r\n route: ActivatedRoute,\r\n router: Router,\r\n private authService: AuthService,\r\n localeService: BsLocaleService,\r\n private perguntaService: PerguntaService,\r\n private tabelaDominioService: TabelaDominioService,\r\n public matDialog: MatDialog\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({value: '', disabled:true}),\r\n nome: new FormControl('', Validators.required),\r\n tipoDocumento: new FormControl({value:[] as IEnumModel[]})\r\n })\r\n\r\n async ngOnInit(){\r\n await this.tabelaDominioService\r\n .obterTiposDocumentoTrabalho()\r\n .then((res) => this.tiposDocumentos = res.dados)\r\n .catch((err) => this.exibirMensagemErro(err));\r\n\r\n if(!this.novoRegistro){\r\n this.questionarioUGService\r\n .obterPorId(this.id)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.model = res.dados\r\n this.idUnidadeGestora = res.dados.unidadeGestoraId;\r\n this.form.controls['nome'].setValue(res.dados.nome);\r\n this.form.controls['id'].setValue(res.dados.id);\r\n this.form.controls['tipoDocumento'].setValue(res.dados.tipoDocumentoId);\r\n this.titulo = \"Editar Questionário - \" + this.model.nome.toString();\r\n this.reordenar();\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => this.exibirMensagemErro(err));\r\n }else{\r\n this.titulo = \"Novo questionário\";\r\n } \r\n\r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean){\r\n if (this.form.invalid) {\r\n this.exibirMensagemErro('Formulário invalido!');\r\n return;\r\n }\r\n\r\n this.model.nome = this.form.controls['nome'].value;\r\n this.model.id = this.id ?? 0;\r\n this.model.tipoDocumentoId = this.form.controls['tipoDocumento'].value;\r\n\r\n \r\n this.questionarioUGService\r\n .atualizar(this.model)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n if(salvarEFechar){\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.idUnidadeGestora}?aba=1`);\r\n }else{\r\n this.router.navigate([`editar-entendendo-entidade/${this.model.id}`]);\r\n }\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => this.exibirMensagemErro(err));\r\n \r\n }\r\n\r\n public drop(event: CdkDragDrop, element: any) {\r\n let contadorGeralIndice = 0;\r\n let contadorItem = 0;\r\n let contadorSubItem = 0;\r\n let indiceAnteriorModel = -1;\r\n let indiceAtualModel = -1;\r\n let moveu = false;\r\n\r\n this.model.itens.forEach((item, idx) => {\r\n if(moveu == true){\r\n return;\r\n }\r\n\r\n if(item.nome == element.nome){\r\n if(contadorGeralIndice == event.previousIndex){\r\n indiceAnteriorModel = idx;\r\n }\r\n \r\n if(contadorGeralIndice == event.currentIndex){\r\n indiceAtualModel = idx;\r\n }\r\n \r\n if(indiceAnteriorModel >= 0 && indiceAtualModel >= 0){\r\n moveItemInArray(this.model.itens, indiceAnteriorModel, indiceAtualModel); \r\n moveu = true; \r\n return;\r\n }\r\n \r\n contadorGeralIndice += 1;\r\n \r\n if(item.subItens){\r\n item.subItens.forEach((subItem, subIdx) => {\r\n if(moveu == true){\r\n return;\r\n }\r\n \r\n if(contadorGeralIndice == event.previousIndex){\r\n indiceAnteriorModel = subIdx;\r\n }\r\n \r\n if(contadorGeralIndice == event.currentIndex){\r\n indiceAtualModel = subIdx;\r\n }\r\n \r\n if(indiceAnteriorModel >= 0 && indiceAtualModel >= 0){\r\n moveItemInArray(item.subItens, indiceAnteriorModel, indiceAtualModel); \r\n moveu = true; \r\n return;\r\n }\r\n \r\n \r\n contadorGeralIndice += 1;\r\n });\r\n }\r\n }\r\n \r\n });\r\n\r\n this.reordenar();\r\n }\r\n\r\n public reordenar(){\r\n this.model.itens.forEach((item, idx) => {\r\n item.ordem = (idx + 1);\r\n item.ordemExibicao = item.ordem.toString();\r\n if(item.subItens){\r\n item.subItens.forEach((subItem, subIdx) => {\r\n const itemPai = this.model.itens.find(_ => _.id == subItem.idItemPai);\r\n subItem.ordem = subIdx + 1;\r\n subItem.ordemExibicao = `${item.ordemExibicao}.${subItem.ordem.toString()}`\r\n });\r\n }\r\n });\r\n }\r\n\r\n public async exibirModalPergunta(idItemPai: number, idx: number){\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n\r\n const modal = this.matDialog.open(ModalQuestionarioUGPerguntaComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n let novoItem = {} as IQuestionarioUGItemModel;\r\n novoItem.idQuestionarioUG = this.id;\r\n novoItem.nome = data.nome;\r\n novoItem.tipoId = 2;\r\n novoItem.tipoDescription = data.tipoEntrada.descricao;\r\n novoItem.obrigatorio = data.obrigatorio;\r\n novoItem.perguntaId = data.id;\r\n novoItem.atualizarModelo = data.atualizarModelo;\r\n\r\n if(idItemPai == -1 && idx == -1){\r\n if(!this.model.itens)\r\n this.model.itens = [] as IQuestionarioUGItemModel[];\r\n\r\n this.model.itens.push(novoItem);\r\n }else{\r\n const itemPai = this.model.itens[idx];\r\n \r\n if(!itemPai.subItens)\r\n itemPai.subItens = [] as IQuestionarioUGItemModel[];\r\n\r\n itemPai.subItens.push(novoItem);\r\n }\r\n this.reordenar();\r\n }\r\n })\r\n }\r\n\r\n public exibirModalSecao(element: any){\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n id: element ? element.id : 0,\r\n idModeloQuestionario : this.id,\r\n nome: element ? element.nome : \"\"\r\n };\r\n\r\n const modal = this.matDialog.open(ModalQuestionarioUGSecaoComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n \r\n let novaSecao = data as IQuestionarioUGItemModel;\r\n\r\n if(!this.model.itens || this.model.itens.length == 0){\r\n this.model.itens = [] as IQuestionarioUGItemModel[];\r\n this.model.itens.push(novaSecao);\r\n this.reordenar();\r\n return;\r\n }\r\n\r\n if(this.model.itens.find((element)=> element.nome.toUpperCase() == novaSecao.nome.toUpperCase())){\r\n this.exibirMensagemErro(\"Já existe seção com este nome.\");\r\n return;\r\n } \r\n\r\n var isNew = true;\r\n \r\n this.model.itens.forEach((element, idx) => {\r\n if(novaSecao.nomeAnterior == element.nome \r\n && novaSecao.nomeAnterior != \"\"){\r\n element.nome = novaSecao.nome;\r\n isNew = false;\r\n }\r\n });\r\n\r\n if(isNew){\r\n this.model.itens.push(novaSecao);\r\n }\r\n\r\n\r\n this.reordenar();\r\n }\r\n })\r\n }\r\n\r\n public excluirItem(element: IQuestionarioUGItemModel){\r\n \r\n if(element.id != 0 && element.obrigatorio == true){\r\n this.exibirMensagemErro(\"Não é possível excluir um item do modelo obrigatório.\")\r\n return;\r\n }\r\n\r\n var idxOf = this.model.itens.indexOf(element, 0);\r\n this.model.itens.splice(idxOf, 1);\r\n \r\n this.reordenar(); \r\n }\r\n\r\n public excluirSubItem(nomePai: string, element: IQuestionarioUGItemModel){\r\n \r\n if(element.id != 0 && element.obrigatorio == true){\r\n this.exibirMensagemErro(\"Não é possível excluir um item do modelo obrigatório.\")\r\n return;\r\n }\r\n\r\n let elementPai = this.model.itens.find((element)=> element.nome.toUpperCase() == nomePai.toUpperCase());\r\n const idxIndicePai = this.model.itens.indexOf(elementPai, 0);\r\n const itemPai = this.model.itens[idxIndicePai];\r\n var idxOf = itemPai.subItens.indexOf(element,0);\r\n itemPai.subItens.splice(idxOf, 1);\r\n\r\n this.reordenar(); \r\n }\r\n\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.model.unidadeGestoraId}?aba=1`);\r\n }\r\n\r\n public excluir(){\r\n \r\n Swal.fire({\r\n title: 'Atenção',\r\n text: \"Deseja realmente excluir o questionário?\",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n if (res.value) {\r\n this.questionarioUGService\r\n .excluir(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Questionário excluído com sucesso.');\r\n this.onBack();\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n });\r\n }\r\n });\r\n \r\n }\r\n\r\n public semDados(): boolean{\r\n return !this.model || !this.model.itens || this.model.itens.length == 0;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial \r\n
  2. \r\n
  3. \r\n Entendendo a Entidade\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n Documento de Trabalho\r\n \r\n \r\n \r\n {{ element.codigo }} -\r\n {{ element.descricao }}\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

\r\n \r\n Perguntas\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n Pergunta\r\n Seção\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
#NomeTipoObrigatórioAções
\r\n
\r\n \r\n \r\n {{ element?.ordemExibicao }}\r\n
\r\n
{{ element?.nome }}{{ element?.tipoDescription }} Sim \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{ subItem?.ordemExibicao }}\r\n
\r\n
{{ subItem?.nome }}{{ subItem?.tipoDescription }} Sim \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Nenhum item cadastrado\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n ","import { ToastrService } from 'ngx-toastr';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport {\r\n Component,\r\n OnInit,\r\n Inject,\r\n ViewChild,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport Swal from 'sweetalert2';\r\nimport { CoordenacaoService } from 'src/app/services/coordenacao.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IPerguntaModel } from 'src/app/models/pergunta.model';\r\nimport { PerguntaService } from 'src/app/services/pergunta.service';\r\nimport { IQuestionarioUGItemModel } from 'src/app/models/questionario-ug.model';\r\n\r\n@Component({\r\n selector: 'app-modal-pergunta',\r\n templateUrl: './modal-pergunta.component.html',\r\n styleUrls: ['./modal-pergunta.component.scss']\r\n})\r\nexport class ModalQuestionarioUGPerguntaComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n public model: IQuestionarioUGItemModel;\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'tipo', 'obrigatorio'];\r\n public selecionado: IPerguntaModel;\r\n public totalItens: number;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private perguntaService: PerguntaService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscarPerguntas();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n\r\n }\r\n\r\n public selecionar(item: IPerguntaModel) {\r\n this.selecionado = !this.selecionado || this.selecionado.id !== item.id ? item : null;\r\n }\r\n\r\n public async concluir() {\r\n\r\n Swal.fire({\r\n title: \"\",\r\n text: \"Deseja sugerir a atualização do questionário na base?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then((resConfirm) => {\r\n if (resConfirm.isConfirmed) {\r\n this.selecionado.atualizarModelo = true;\r\n }\r\n this.dialogRef.close(this.selecionado);\r\n });\r\n }\r\n\r\n public buscarPerguntas() {\r\n this.perguntaService\r\n .obter(\"\", true)\r\n .then((res) => {\r\n\r\n if (res.sucesso) {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.data.length == 0;\r\n this.totalItens = res.dados.length;\r\n this.dataSource.paginator = this.paginator;\r\n }\r\n });\r\n\r\n }\r\n\r\n public filtrar(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Inserir Pergunta

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Nome\r\n \r\n {{element.nome}} Tipo entrada\r\n \r\n {{element.tipoEntrada.descricao}} Obrigatório \r\n \r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { ToastrService } from 'ngx-toastr';\r\nimport { MatDialog,MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport {\r\n Component,\r\n OnInit,\r\n Inject,\r\n ViewChild,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { IQuestionarioUGItemModel } from 'src/app/models/questionario-ug.model';\r\n\r\n@Component({\r\n selector: 'app-modal-secao',\r\n templateUrl: './modal-secao.component.html',\r\n styleUrls: ['./modal-secao.component.scss']\r\n})\r\nexport class ModalQuestionarioUGSecaoComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n \r\n public model = {} as IQuestionarioUGItemModel;\r\n public campoObrigatorio = false;\r\n public titulo : string = 'Inserir seção';\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.model.id = data.id ?? 0;\r\n this.model.idQuestionarioUG = data.idModeloQuestionario;\r\n this.model.nome = data.nome;\r\n this.model.tipoId = 1;\r\n this.model.tipoDescription = \"Seção\";\r\n this.model.ativo = true;\r\n this.model.nomeAnterior = data.nome;\r\n\r\n if(this.model.id != 0 || this.model.nome !=\"\"){\r\n this.titulo = \"Editar seção\";\r\n }\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n \r\n }\r\n \r\n \r\n ngAfterViewInit(): void {\r\n \r\n }\r\n\r\n public async concluir() {\r\n \r\n this.dialogRef.close(this.model);\r\n\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\nimport { IEntendendoEntidadeListaModel } from 'src/app/models/entendendo-entidade-lista.model';\r\nimport { EntendendoEntidadeService } from 'src/app/services/entendendo-entidade.service';\r\nimport { MatDialogConfig } from '@angular/material/dialog';\r\nimport { ModalSelecaoQuestionarioComponent } from '../modal-selecao-questionario/modal-selecao-questionario.component';\r\nimport { IModeloQuestionarioItemModel } from 'src/app/models/modelo-questionario.model';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\n\r\n@Component({\r\n selector: 'app-gerar-questionario',\r\n templateUrl: './gerar-questionario.component.html',\r\n styleUrls: ['./gerar-questionario.component.scss']\r\n})\r\nexport class GerarQuestionarioComponent extends BaseListComponent {\r\n public filtro = {} as FiltroModel;\r\n model: any;\r\n unidadeGestoraId: number;\r\n modeloRelatorioId: number;\r\n \r\n \r\n constructor(\r\n private authService: AuthService,\r\n private entendendoEntidadeService: EntendendoEntidadeService,\r\n private matDialog: MatDialog,\r\n private router: Router,\r\n private sharedService: SharedService\r\n ) { \r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.unidadeGestoraId = this.sharedService.getId();\r\n }\r\n\r\n public gerarQuestionario() {\r\n if(!this.modeloRelatorioId || this.modeloRelatorioId == 0){\r\n this.exibirMensagemErro(\"Informe o modelo do questionário.\")\r\n return;\r\n }\r\n \r\n this.entendendoEntidadeService\r\n .inserir(this.modeloRelatorioId,this.unidadeGestoraId)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=1`);\r\n \r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n // this.buscar();\r\n });\r\n }\r\n\r\n public buscarQuestionario(){\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n\r\n const modal = this.matDialog.open(ModalSelecaoQuestionarioComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n this.filtro.pesquisa = data.nome;\r\n this.modeloRelatorioId = data.id;\r\n }\r\n })\r\n }\r\n\r\n public exibirModalquestionario(){\r\n \r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Entendendo a Entidade\r\n

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\nimport { IEntendendoEntidadeListaModel } from 'src/app/models/entendendo-entidade-lista.model';\r\nimport { EntendendoEntidadeService } from 'src/app/services/entendendo-entidade.service';\r\nimport { MatDialogConfig } from '@angular/material/dialog';\r\nimport { ModalSelecaoQuestionarioComponent } from '../modal-selecao-questionario/modal-selecao-questionario.component';\r\nimport { IModeloQuestionarioItemModel } from 'src/app/models/modelo-questionario.model';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { IArquivoModel } from 'src/app/models/arquivo.model';\r\nimport { IQuestionarioUGModel } from 'src/app/models/questionario-ug.model';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { QuestionarioUGRespostaService } from 'src/app/services/questionarioug-resposta.service';\r\n\r\n@Component({\r\n selector: 'app-importacao-arquivo-questionario',\r\n templateUrl: './importacao-arquivo-questionario.component.html',\r\n styleUrls: ['./importacao-arquivo-questionario.component.scss']\r\n})\r\nexport class ImportacaoArquivoQuestionarioComponent extends BaseFormComponent implements OnInit {\r\n public filtro = {} as FiltroModel;\r\n model: any;\r\n unidadeGestoraId: number;\r\n modeloRelatorioId: number;\r\n arquivo: File | null = null;\r\n mensagem: string = '';\r\n arquivoUrl: string;\r\n nomeArquivo: string;\r\n botaoEncerrarHabilitado: boolean = false;\r\n \r\n\r\n constructor(\r\n private authService: AuthService,\r\n private questionarioUGService: EntendendoEntidadeService,\r\n private questionarioUGRespostaService: QuestionarioUGRespostaService,\r\n matDialog: MatDialog,\r\n router: Router,\r\n private sharedService: SharedService,\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n localeService: BsLocaleService\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.unidadeGestoraId = this.sharedService.getId();\r\n this.downloadAnexo();\r\n }\r\n\r\n onFileSelected(event: any): void {\r\n const file: File = event.target.files[0];\r\n if (file) {\r\n // Verifica se a extensão do arquivo é PDF\r\n const fileExtension = file.name.split('.').pop()?.toLowerCase();\r\n if (fileExtension !== 'pdf') {\r\n // Emite um aviso caso a extensão não seja PDF\r\n this.toastr.error('O tipo de arquivo selecionado não é válido, selecione apenas arquivo PDF!', 'Extensão inválida');\r\n this.arquivo = null; // Reseta o arquivo selecionado\r\n } else {\r\n this.arquivo = file;\r\n }\r\n }\r\n }\r\n\r\n downloadAnexo(): void {\r\n\r\n this.questionarioUGService.DownloadArquivo(this.unidadeGestoraId).then(\r\n (res) => {\r\n this.arquivoUrl = res.dados.url;\r\n this.nomeArquivo = res.dados.nomeArquivo;\r\n if (this.arquivoUrl) {\r\n this.botaoEncerrarHabilitado = true; // Habilita o botão\r\n }\r\n },\r\n (error) => {\r\n }\r\n );\r\n\r\n }\r\n\r\n onEncerrarAvaliacao(){\r\n Swal.fire({\r\n title: 'Atenção',\r\n text: \"Esta ação não poderá ser desfeita! Deseja continuar? \",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n if (res.value) {\r\n\r\n this.questionarioUGService.encerrarQuestionarioImportacaoArquivo(this.unidadeGestoraId, 1)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=1`);\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n\r\n }\r\n})}\r\n\r\n enviarArquivo(): void {\r\n if (this.arquivo) {\r\n const arquivoModel: IArquivoModel = {\r\n id: 0,\r\n nomeArquivo: this.arquivo.name,\r\n entidadeArquivo: 1, \r\n arquivo: this.arquivo,\r\n url: ''\r\n };\r\n\r\n \r\n\r\n this.questionarioUGService.enviarArquivo(this.unidadeGestoraId, 1 ,arquivoModel).then(\r\n (response) => {\r\n this.downloadAnexo();\r\n this.exibirMensagemSucesso('Arquivo importado com sucesso');\r\n // this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=1`);\r\n },\r\n (error) => {\r\n this.exibirMensagemErro(error.mensagem.descricao);\r\n }\r\n );\r\n }\r\n }\r\n\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=1`);\r\n }\r\n\r\n\r\n}\r\n","\r\n\r\n \r\n
\r\n \r\n \r\n Encerrar Avaliação\r\n \r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { IQuestionarioUGModel, IVisualizarQuestionarioRespostaUGModel, QuestionarioUGItensResposta } from 'src/app/models/questionario-ug.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { EntendendoEntidadeService } from 'src/app/services/entendendo-entidade.service';\r\nimport { PerguntaService } from 'src/app/services/pergunta.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { QuestionarioUGRespostaService } from 'src/app/services/questionarioug-resposta.service';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IListaQuestionarioRespostaUGModel } from 'src/app/models/questionario-ug.model';\r\n\r\n@Component({\r\n selector: 'app-imprimir-entendendo-entidade',\r\n templateUrl: './imprimir-entendendo-entidade.component.html',\r\n styleUrls: ['./imprimir-entendendo-entidade.component.scss']\r\n})\r\nexport class ImprimirEntendendoEntidadeComponent extends BaseFormComponent implements OnInit {\r\n public tiles = [];\r\n public idUnidadeGestora : number;\r\n public versao : number;\r\n public dataFormatada : string; \r\n public nomeUnidadeGestora : string;\r\n public dataSource = new MatTableDataSource([]);\r\n displayedColumns: string[] = ['pergunta'];\r\n public model= {} as IListaQuestionarioRespostaUGModel;\r\n\r\n\r\n constructor(\r\n private questionarioUGService: EntendendoEntidadeService,\r\n toastr: ToastrService,\r\n route: ActivatedRoute,\r\n router: Router,\r\n private authService: AuthService,\r\n localeService: BsLocaleService,\r\n private perguntaService: PerguntaService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private questionarioService: QuestionarioUGRespostaService,\r\n public matDialog: MatDialog,\r\n public matGridListModule: MatGridListModule\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n if(!this.novoRegistro){\r\n this.questionarioService.ObterRespostaQuestionario(this.id)\r\n .then((res) => {\r\n this.model = res.dados;\r\n this.dataSource = new MatTableDataSource(res.dados.respostas);\r\n });\r\n }\r\n \r\n if(!this.novoRegistro){\r\n this.questionarioUGService\r\n .ImprimirRespostaQuestionario(this.id)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.idUnidadeGestora = res.dados[0].idUnidadeGestora;\r\n this.dataFormatada = res.dados[0].dataFormatada;\r\n this.versao = res.dados[0].versao;\r\n this.nomeUnidadeGestora = res.dados[0].nomeUnidadeGestora;\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n } \r\n }\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.idUnidadeGestora}?aba=1`);\r\n }\r\n\r\n}\r\n","\r\n\r\n\t
\r\n\t\t
\r\n\t\t\tENTENDIMENTO DA UNIDADE AUDITADA
\r\n\t\t\tVersäo: {{ versao }} \r\n\t\t\t
\r\n\t\t\tData: {{ dataFormatada }}\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
Unidade a ser auditada: {{ nomeUnidadeGestora }}
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{{ element.pergunta }}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { EnumTipoQuestionarioUG } from 'src/app/models/enum/tipo-questionario-ug.enum';\r\nimport { EntendendoEntidadeService } from 'src/app/services/entendendo-entidade.service';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\n\r\n@Component({\r\n selector: 'app-modal-questionario-importa-dados',\r\n templateUrl: './modal-questionario-importa-dados.component.html',\r\n styleUrls: ['./modal-questionario-importa-dados.component.scss']\r\n})\r\nexport class ModalQuestionarioImportaDadosComponent implements OnInit {\r\n unidadeGestoraId: number;\r\n\r\n constructor(\r\n private router: Router,\r\n private questionarioUGService: EntendendoEntidadeService,\r\n private sharedService: SharedService,\r\n private dialogRef: MatDialogRef\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.unidadeGestoraId = this.sharedService.getId();\r\n }\r\n\r\n public Sim() {\r\n this.questionarioUGService\r\n .inserirQuestionarioAPartirDoUltimo(this.unidadeGestoraId, EnumTipoQuestionarioUG.EntendendoEntidade)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n // aqui chamar o pagina principal\r\n this.dialogRef.close();\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=1`);\r\n window.location.reload();\r\n } else {\r\n // this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n // this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n // this.buscar();\r\n });\r\n }\r\n\r\n public Nao() {\r\n this.dialogRef.close();\r\n this.router.navigate(['gerar-questionario']);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Questionário Nova Versão

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Deseja importar os dados da versão ativa?

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\r\nimport { ModalQuestionarioImportaDadosComponent } from '../modal-questionario-importa-dados/modal-questionario-importa-dados.component';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-modal-questionario-nova-versao',\r\n templateUrl: './modal-questionario-nova-versao.component.html',\r\n styleUrls: ['./modal-questionario-nova-versao.component.scss']\r\n})\r\nexport class ModalQuestionarioNovaVersaoComponent implements OnInit {\r\n private currentDialogRef: MatDialogRef;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n private matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data: any ,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public Sim() {\r\n\r\n if(this.data.source === 'importarArquivo')\r\n {\r\n this.dialogRef.close();\r\n this.router.navigate([`importacao-arquivo-questionario`]);\r\n }\r\n else\r\n {\r\n this.dialogRef.close();\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal2-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n \r\n const modal = this.matDialog.open(ModalQuestionarioImportaDadosComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n \r\n }\r\n })\r\n }\r\n }\r\n\r\n public Nao() {\r\n this.dialogRef.close();\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Questionário Nova Versão

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Você solicitou a geração de uma nova versão, a versão atual será inativada e uma nova versão deverá ser preenchida! Tem certeza que deseja criar uma nova e inativar a versão atual?

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { ToastrService } from 'ngx-toastr';\r\nimport { MatDialog,MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport {\r\n Component,\r\n OnInit,\r\n Inject,\r\n ViewChild,\r\n AfterViewInit,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IModeloQuestionarioModel } from 'src/app/models/modelo-questionario.model';\r\nimport { ModeloQuestionarioService } from 'src/app/services/modelo-questionario.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\n\r\n@Component({\r\n selector: 'app-modal-selecao-questionario',\r\n templateUrl: './modal-selecao-questionario.component.html',\r\n styleUrls: ['./modal-selecao-questionario.component.scss']\r\n})\r\nexport class ModalSelecaoQuestionarioComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n @Output() nomeSelecionado = new EventEmitter();\r\n \r\n public filtro = {} as FiltroModel;\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public displayedColumns: string[] = ['selecao', 'nome'];\r\n public selecionado: IModeloQuestionarioModel;\r\n public totalItens: number;\r\n \r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private modeloQuestionarioService: ModeloQuestionarioService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.filtro.ativo = true;\r\n this.buscarModeloQuestionario();\r\n }\r\n \r\n \r\n ngAfterViewInit(): void {\r\n \r\n }\r\n\r\n\r\n public selecionar(item: IModeloQuestionarioModel) {\r\n this.selecionado = !this.selecionado || this.selecionado.id !== item.id ? item : null;\r\n this.nomeSelecionado.emit(item.nome);\r\n }\r\n\r\n public async concluir() {\r\n this.dialogRef.close(this.selecionado);\r\n }\r\n\r\n public buscarModeloQuestionario(){\r\n this.modeloQuestionarioService\r\n .obterModeloEntendendoEntidade(this.filtro)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length == 0;\r\n this.dataSource.paginator = this.paginator;\r\n }\r\n });\r\n \r\n }\r\n\r\n public filtrar(event: Event){\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n \r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Selecionar Modelo de Questionário

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Nome\r\n \r\n {{element.nome}} Tipo entrada\r\n \r\n {{element.tipoEntrada.descricao}} Obrigatório \r\n \r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { EntendendoEntidadeService } from 'src/app/services/entendendo-entidade.service';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\n\r\n@Component({\r\n selector: 'app-modal-solicitar-preenchimento',\r\n templateUrl: './modal-solicitar-preenchimento.component.html',\r\n styleUrls: ['./modal-solicitar-preenchimento.component.scss']\r\n})\r\nexport class ModalSolicitarPreenchimentoComponent implements OnInit {\r\n prazoDias: number;\r\n unidadeGestoraId: number;\r\n\r\n constructor(\r\n private router: Router,\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n private questionarioUGService: EntendendoEntidadeService,\r\n private sharedService: SharedService,\r\n private dialogRef: MatDialogRef\r\n\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.unidadeGestoraId = this.sharedService.getId();\r\n }\r\n\r\n public cancelar(){\r\n this.dialogRef.close();\r\n }\r\n\r\n public concluir(){\r\n\r\n this.questionarioUGService\r\n .solicitarPreenchimentoQuestionario(this.data.param1, this.prazoDias)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n // aqui chamar o pagina principal\r\n this.dialogRef.close();\r\n } else {\r\n // this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n // this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n // this.buscar();\r\n });\r\n }\r\n\r\n public onChangePreencherPrazo(event){\r\n this.prazoDias = event.target.value;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Prazo para Preenchimento

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n ","import { Component, NgModule, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { IQuestionarioUGModel, IVisualizarQuestionarioRespostaUGModel, QuestionarioUGItensResposta } from 'src/app/models/questionario-ug.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { EntendendoEntidadeService } from 'src/app/services/entendendo-entidade.service';\r\nimport { PerguntaService } from 'src/app/services/pergunta.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { IListaQuestionarioRespostaUGModel } from 'src/app/models/questionario-ug.model';\r\nimport { QuestionarioUGRespostaService } from 'src/app/services/questionarioug-resposta.service';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\n\r\n\r\n@Component({\r\n selector: 'app-visualizar-entendendo-entidade',\r\n templateUrl: './visualizar-entendendo-entidade.component.html',\r\n styleUrls: ['./visualizar-entendendo-entidade.component.scss']\r\n})\r\n\r\nexport class VisualizarEntendendoEntidadeComponent extends BaseFormComponent implements OnInit {\r\n public model= {} as IListaQuestionarioRespostaUGModel;\r\n public tiles = [];\r\n public idUnidadeGestora : number;\r\n public semDados: boolean;\r\n public dataSource = new MatTableDataSource([]);\r\n displayedColumns: string[] = ['pergunta','tipoAvaliacaoAuditor', 'avaliacaoAuditor', 'tipoReplica', 'replica', 'avaliacaoFinal', 'tipoAvaliacaoFinal'];\r\n\r\n constructor(\r\n private questionarioUGService: EntendendoEntidadeService,\r\n toastr: ToastrService,\r\n route: ActivatedRoute,\r\n router: Router,\r\n private authService: AuthService,\r\n localeService: BsLocaleService,\r\n private perguntaService: PerguntaService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private questionarioService: QuestionarioUGRespostaService,\r\n public matDialog: MatDialog,\r\n public matGridListModule: MatGridListModule\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({value: '', disabled:true}),\r\n nome: new FormControl('', Validators.required),\r\n tipoDocumento: new FormControl({value:[] as IEnumModel[]})\r\n })\r\n\r\n async ngOnInit() {\r\n\r\n if(!this.novoRegistro){\r\n this.questionarioService.ObterRespostaQuestionario(this.id)\r\n .then((res) => {\r\n this.model = res.dados;\r\n console.log(res.dados);\r\n this.titulo = \"Visualizar Questionário - \" + this.model.nomeQuestionario.toString();\r\n this.dataSource = new MatTableDataSource(res.dados.respostas);\r\n });\r\n }\r\n }\r\n\r\n public onBack() {\r\n \r\n this.submit = false;\r\n \r\n this.router.navigateByUrl(`/unidades-gestoras/${this.model.idUG}?aba=1`);\r\n }\r\n\r\n}\r\n","\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tSeção/Pergunta\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n {{ element.pergunta }}\r\n \r\n
\r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvaliação Auditor\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n {{element.tipoAvaliacaoAuditor\t}}\r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tResposta Revisada\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tRéplica\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n {{element.tipoReplica}}\r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tResposta Revisada da Réplica\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n \r\n \r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvaliação Final\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n {{element.tipoAvaliacaoFinal}}\r\n \r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Resposta Final\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\r\n\t\t\t\r\n\t\t
\r\n \r\n\t
\r\n
\r\n
\r\n \r\n Fechar\r\n \r\n
\r\n
\r\n\r\n\t\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { QuestionarioUGService } from 'src/app/services/questionarioug.service';\r\nimport { FiltroQuestionarioUG } from 'src/app/models/filtro-questionario-ug.model';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\r\nimport { ModalQuestionarioNovaVersaoSharedComponent } from '../shared/modal-questionario-nova-versao/modal-questionario-nova-versao.component';\r\nimport { ModalSolicitarPreenchimentoSharedComponent } from '../shared/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component';\r\nimport { EnumTipoQuestionarioUG } from 'src/app/models/enum/tipo-questionario-ug.enum';\r\nimport { IQuestionarioUGListaModel } from 'src/app/models/questionario-ug-lista.model';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport { EQuestionarioUGSituacao, EQuestionarioUGSituacaoDescricao } from 'src/app/models/enum/questionario-ug-situacao.enum';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'nome': return item.nome.trim().toLowerCase();\r\n case 'descricao': return item.descricao.trim().toLowerCase();\r\n case 'ativo':\r\n return item.ativo;\r\n default:\r\n return item.nome.trim().toLowerCase();\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-aba-maturidade-risco',\r\n templateUrl: './aba-maturidade-risco.component.html',\r\n styleUrls: ['./aba-maturidade-risco.component.scss']\r\n})\r\nexport class AbaMaturidadeRiscoComponent extends BaseListComponent {\r\n\r\npublic dataSource = new MatTableDataSource([]);\r\npublic selectedModel: IQuestionarioUGListaModel;\r\npublic displayedColumns: string[] = ['selecao', 'versao', 'data', 'resultado' , 'situacao','status'];\r\npublic searchNome: string;\r\npublic searchAtivo = true;\r\npublic semDados = true;\r\npublic permissoes: IPermissaoModel;\r\npublic filtro = {} as FiltroQuestionarioUG;\r\npublic totalItens: number;\r\npublic pageEvent: any;\r\nprivate currentDialogRef: MatDialogRef;\r\n\r\npublic botaoNovoDisable = false;\r\npublic botaoEditarDisable = false;\r\npublic botaoExcluirDisable = false;\r\npublic botaoImprimirDisable = false;\r\npublic botaoPreenchimentoDisable = false;\r\npublic botaoImportarDisable = false;\r\npublic botaoVisualizarDisable = false;\r\n\r\n@ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n@ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private questionarioUGService: QuestionarioUGService,\r\n private router: Router,\r\n private matDialog: MatDialog,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n private sharedService: SharedService\r\n ) {\r\n super();\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n async ngAfterViewInit() {\r\n this.configurarFiltro();\r\n await this.configuraTela();\r\n this.buscar();\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.importar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Importar);\r\n this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Imprimir);\r\n\r\n // comentado temporariamente pois esta com erro intermitente, mesmo com acesso fica apresentando a mensagem de erro apenas algumas vezes\r\n // if(!this.permissoes.consultar){\r\n // this.exibirMensagemErro(\"Você não possui permissão para Consultar.\");\r\n // this.router.navigate([`/unidades-gestoras/${this.sharedService.getId()}`]);\r\n // return;\r\n // }\r\n }\r\n\r\n\r\n\r\npublic novo() {\r\n\r\n if(!this.permissoes.incluir){\r\n this.exibirMensagemErro(\"Você não possui permissão para Incluir.\");\r\n return;\r\n }\r\n\r\n if (!this.semDados)\r\n {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n source: 'novo',\r\n tipoQuestionario: EnumTipoQuestionarioUG.MaturidadeRisco\r\n };\r\n this.sharedService.setTipoQuestionario(EnumTipoQuestionarioUG.MaturidadeRisco);\r\n this.currentDialogRef = this.matDialog.open(ModalQuestionarioNovaVersaoSharedComponent, dialogConfig);\r\n this.currentDialogRef.afterClosed().subscribe((data) => {\r\n this.buscar();\r\n });\r\n} else {\r\n this.sharedService.setTipoQuestionario(EnumTipoQuestionarioUG.MaturidadeRisco);\r\n this.router.navigate(['gerar-questionario-shared']);\r\n}\r\n}\r\n\r\npublic buscar() {\r\n this.selectedModel = null;\r\n this.questionarioUGService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.totalItens = res.dados.totalItens;\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n}\r\n\r\npublic reativar(id: number) {\r\n if(!this.permissoes.inativarReativar){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n this.questionarioUGService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Categoria de Risco reativado com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n}\r\n\r\npublic inativar(id: number) {\r\n if(!this.permissoes.inativarReativar){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n this.questionarioUGService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Categoria de Risco inativado com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n}\r\n\r\npublic editar(id: number) {\r\n if(!this.permissoes.editar){\r\n this.exibirMensagemErro(\"Você não possui permissão para Editar.\");\r\n return;\r\n }\r\n\r\n const situacoesNaoPermitidas = [\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Pendente],\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Finalizado]\r\n ];\r\n const situacaoAtual = this.selectedModel.situacao;\r\n\r\n if(!situacoesNaoPermitidas.includes(situacaoAtual) && this.selectedModel.ativo == true)\r\n {\r\n this.sharedService.setTipoQuestionario(EnumTipoQuestionarioUG.MaturidadeRisco);\r\n this.router.navigate([`editar-questionario/${id}`]);\r\n }\r\n}\r\n\r\npreencher(id: number) {\r\n const situacaoAtual = this.selectedModel.situacao;\r\n\r\n const situacoesNaoPermitidas = [\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Pendente],\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Finalizado]\r\n ];\r\n\r\n if (!situacoesNaoPermitidas.includes(situacaoAtual) && this.selectedModel.ativo == true) {\r\n this.router.navigate([`questionario/pre-planejamento-resposta/${id}`]);\r\n } else {\r\n this.exibirMensagemAlerta('Questionário só pode ser preenchido se estiver com Status diferente de Finalizado ou Pendente e também que esteja ativo.');\r\n }\r\n}\r\n\r\npublic importarArquivo(){\r\n if(!this.permissoes.importar){\r\n this.exibirMensagemErro(\"Você não possui permissão para Importar.\");\r\n return;\r\n }\r\n\r\n this.sharedService.setTipoQuestionario(EnumTipoQuestionarioUG.MaturidadeRisco);\r\n if (!this.semDados)\r\n {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n source: 'importarArquivo'\r\n };\r\n this.currentDialogRef = this.matDialog.open(ModalQuestionarioNovaVersaoSharedComponent, dialogConfig);\r\n this.currentDialogRef.afterClosed().subscribe((data) => {\r\n this.buscar();\r\n });\r\n} else {\r\n this.router.navigate([`importacao-arquivo-questionario-shared`]);\r\n}\r\n\r\n}\r\n\r\n\r\n isSelect(){\r\n if(this.selectedModel !== null){\r\n return !this.selectedModel?.ativo;\r\n }\r\n\r\n }\r\npublic selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n}\r\n\r\npublic excluir(id: number) {\r\n if(!this.permissoes.excluir){\r\n this.exibirMensagemErro(\"Você não possui permissão para Excluir.\");\r\n return;\r\n }\r\n\r\n this.questionarioUGService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Questionário excluído com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n}\r\n\r\npublic visualizar(id: number) {\r\n if(!this.permissoes.visualizar){\r\n this.exibirMensagemErro(\"Você não possui permissão para Visualizar.\");\r\n return;\r\n }\r\n\r\n this.sharedService.setTipoQuestionario(EnumTipoQuestionarioUG.MaturidadeRisco);\r\n this.router.navigate([`visualizar-questionario/${id}`]);\r\n}\r\n\r\npublic imprimir(id: number){\r\n if(!this.permissoes.imprimir){\r\n this.exibirMensagemErro(\"Você não possui permissão para Imprimir.\");\r\n return;\r\n }\r\n\r\n this.sharedService.setTipoQuestionario(EnumTipoQuestionarioUG.MaturidadeRisco);\r\n this.router.navigate([`imprimir-questionario/${id}`]);\r\n}\r\n\r\nprivate configurarFiltro() {\r\n this.filtro.idUg = this.sharedService.getId();\r\n this.filtro.tipoQuestionario = EnumTipoQuestionarioUG.MaturidadeRisco;\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.colunaOrder = this.sort.active;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchNome;\r\n this.filtro.direcao = this.sort.direction;\r\n}\r\n\r\nsortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n}\r\n\r\npageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n}\r\n\r\n\r\n\r\npublic solicitar(id: number){\r\n if(!this.permissoes.editar){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n const situacoesPermitidas = [\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.EmElaboracao],\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Avocado]\r\n ];\r\n\r\n const situacaoAtual = this.selectedModel.situacao;\r\n\r\n this.sharedService.setTipoQuestionario(EnumTipoQuestionarioUG.MaturidadeRisco);\r\n\r\n\r\n if(situacoesPermitidas.includes(situacaoAtual) && this.selectedModel.ativo == true){\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-solicitar-preenchimento';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n param1: id\r\n };\r\n\r\n this.currentDialogRef = this.matDialog.open(ModalSolicitarPreenchimentoSharedComponent, dialogConfig);\r\n this.currentDialogRef.afterClosed().subscribe((data) => {\r\n this.buscar();\r\n });\r\n }else{\r\n this.exibirMensagemAlerta('Questionario só pode ser Solicitado se estiver no Status de Pendente/Avocado e Ativo');\r\n }\r\n\r\n}\r\n\r\npublic avocar(id: number){\r\n if(!this.permissoes.editar){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n const situacao = EQuestionarioUGSituacao.Pendente;\r\n\r\n if(this.selectedModel.situacao == EQuestionarioUGSituacaoDescricao[situacao] && this.selectedModel.ativo == true){\r\n this.questionarioUGService\r\n .Avocar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Questionário avocado com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }else{\r\n this.exibirMensagemAlerta('Questionario só pode ser avocado se estiver no status Pendente e Ativo');\r\n }\r\n}\r\n\r\npublic async avaliar(id: number){\r\n if(!this.permissoes.editar){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n const situacaoEnviado = EQuestionarioUGSituacao.Enviado;\r\n const situacaoContestado = EQuestionarioUGSituacao.Contestado;\r\n const situacaoEmValidacao = EQuestionarioUGSituacao.EmValidacao;\r\n\r\n this.sharedService.setTipoQuestionario(EnumTipoQuestionarioUG.MaturidadeRisco);\r\n\r\n if (\r\n (this.selectedModel.situacao == EQuestionarioUGSituacaoDescricao[situacaoEnviado] ||\r\n this.selectedModel.situacao == EQuestionarioUGSituacaoDescricao[situacaoContestado] ||\r\n this.selectedModel.situacao == EQuestionarioUGSituacaoDescricao[situacaoEmValidacao] ) &&\r\n this.selectedModel.ativo == true\r\n ) {\r\n await this.questionarioUGService.Avaliar(id);\r\n this.router.navigate([`avaliar-questionario/${id}`]);\r\n } else {\r\n this.exibirMensagemAlerta('Questionario só pode ser avaliado se estiver nos Status de Enviado, Contestado ou Em validação e também que esteja Ativo');\r\n }\r\n\r\n}\r\n\r\npublic isButtonDisabled(): boolean {\r\n // Verifica se existe um modelo selecionado\r\n if (!this.selectedModel) {\r\n return true;\r\n }\r\n\r\n // Verifica as condições adicionais\r\n return !this.selectedModel.ativo ||\r\n !(this.selectedModel.situacao === 'Em Elaboração' || this.selectedModel.situacao === 'Avocado');\r\n}\r\n\r\npublic isButtonDisabledEditar(): boolean {\r\n // Verifica se existe um modelo selecionado\r\n if (!this.selectedModel) {\r\n return true;\r\n }\r\n\r\n const situacoesNaoPermitidas = [\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Pendente],\r\n EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Finalizado]\r\n ];\r\n\r\n const situacaoAtual = this.selectedModel.situacao;\r\n\r\n // Verifica as condições adicionais\r\n return !this.selectedModel.ativo || situacoesNaoPermitidas.includes(situacaoAtual);\r\n}\r\n\r\nasync configuraTela(){\r\n\r\n this.unidadeGestoraService.obterPorId(this.filtro.idUg)\r\n .then((res) => {\r\n if(res.sucesso){\r\n if(!res.dados.ativo){\r\n this.botaoNovoDisable = true;\r\n this.botaoImportarDisable = true;\r\n this.botaoEditarDisable = true;\r\n this.botaoExcluirDisable = true;\r\n this.botaoImprimirDisable = true;\r\n this.botaoPreenchimentoDisable = true;\r\n this.botaoVisualizarDisable = true;\r\n }\r\n }\r\n });\r\n\r\n}\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Maturidade de risco\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Versão {{element.versao}} Data {{element.dataCriacaoFormatada}} Resultado da avaliação {{element.resultado}} Situação {{element.situacao}} Status \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, NgModule, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { IQuestionarioUGModel, IVisualizarQuestionarioRespostaUGModel, QuestionarioUGItensResposta } from 'src/app/models/questionario-ug.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { EntendendoEntidadeService } from 'src/app/services/entendendo-entidade.service';\r\nimport { PerguntaService } from 'src/app/services/pergunta.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { IListaQuestionarioRespostaUGModel } from 'src/app/models/questionario-ug.model';\r\nimport { QuestionarioUGRespostaService } from 'src/app/services/questionarioug-resposta.service';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\n\r\n\r\n@Component({\r\n selector: 'app-visualizar-maturidade-de-risco',\r\n templateUrl: './visualizar-maturidade-de-risco.component.html',\r\n styleUrls: ['./visualizar-maturidade-de-risco.component.scss']\r\n})\r\n\r\nexport class VisualizarMaturidadeDeRiscoComponent extends BaseFormComponent implements OnInit {\r\n public model= {} as IListaQuestionarioRespostaUGModel;\r\n public tiles = [];\r\n public idUnidadeGestora : number;\r\n public semDados: boolean;\r\n public dataSource = new MatTableDataSource([]);\r\n displayedColumns: string[] = ['pergunta','tipoAvaliacaoAuditor', 'avaliacaoAuditor', 'tipoReplica', 'replica', 'avaliacaoFinal', 'tipoAvaliacaoFinal'];\r\n\r\n constructor(\r\n private questionarioUGService: EntendendoEntidadeService,\r\n toastr: ToastrService,\r\n route: ActivatedRoute,\r\n router: Router,\r\n private authService: AuthService,\r\n localeService: BsLocaleService,\r\n private perguntaService: PerguntaService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private questionarioService: QuestionarioUGRespostaService,\r\n public matDialog: MatDialog,\r\n public matGridListModule: MatGridListModule\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({value: '', disabled:true}),\r\n nome: new FormControl('', Validators.required),\r\n tipoDocumento: new FormControl({value:[] as IEnumModel[]})\r\n })\r\n\r\n async ngOnInit() {\r\n\r\n if(!this.novoRegistro){\r\n this.questionarioService.ObterRespostaQuestionario(this.id)\r\n .then((res) => {\r\n this.model = res.dados;\r\n this.titulo = \"Visualizar Questionário - \" + this.model.nomeQuestionario.toString();\r\n this.dataSource = new MatTableDataSource(res.dados.respostas);\r\n });\r\n }\r\n }\r\n\r\n public onBack() {\r\n\r\n this.submit = false;\r\n\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.model.idUG}?aba=1`);\r\n }\r\n\r\n}\r\n","\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tSeção/Pergunta\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n {{ element.pergunta }}\r\n \r\n
\r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvaliação Auditor\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n {{element.tipoAvaliacaoAuditor\t}}\r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tResposta Revisada\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tRéplica\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n {{element.tipoReplica}}\r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tResposta Revisada da Réplica\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvaliação Final\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n {{element.tipoAvaliacaoFinal}}\r\n \r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Resposta Final\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\r\n\t\t\r\n\t\t
\r\n \r\n\t
\r\n
\r\n
\r\n \r\n Fechar\r\n \r\n
\r\n
\r\n\r\n\t\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { IRiscosChavesListaModel } from 'src/app/models/riscos-chaves-lista.model';\r\nimport { RiscosChavesServices } from 'src/app/services/riscos-chaves.service';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport { QuestionarioUGService } from 'src/app/services/questionarioug.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Route } from '@angular/router';\r\nimport { FiltroRiscosChavesModel } from \"../../../models/filtro-riscos-chaves.model\";\r\nimport {\r\n EUniversoAuditavelSituacao,\r\n EUniversoAuditavelSituacaoDescricao\r\n} from \"../../../models/enum/universo-auditavel-situacao\";\r\nimport {\r\n ModalSolicitarPreenchimentoUniversoComponent\r\n} from \"../aba-universo-auditavel/modal-solicitar-preenchimento/modal-solicitar-preenchimento.component\";\r\nimport {\r\n ModalSolicitarPreenchimentoRiscosChavesComponent\r\n} from \"./modal-solicitar-preenchimento/modal-solicitar-preenchimento.component\";\r\nimport { ERiscosChavesSituacao, ERiscosChavesSituacaoDescricao } from \"../../../models/enum/riscos-chaves-situacao\";\r\nimport {\r\n ModalSelecaoUniversoAuditavelComponent\r\n} from \"./modal-selecao-universo-auditavel/modal-selecao-universo-auditavel.component\";\r\nimport { FiltroUniversoAuditavel } from \"../../../models/filtro-universo-auditavel\";\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'versao': return item.versao.trim().toLowerCase();\r\n case 'nome': return item.nomeTipoUniverso.trim().toLowerCase();\r\n case 'data': return item.data.trim().toLowerCase();\r\n case 'situacao': return item.situacao.trim().toLowerCase();\r\n case 'ativo':\r\n return item.ativo;\r\n default:\r\n return item.versao.trim().toLowerCase();\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-aba-riscos-chaves',\r\n templateUrl: './aba-riscos-chaves.component.html',\r\n styleUrls: ['./aba-riscos-chaves.component.scss']\r\n})\r\nexport class AbaRiscosChavesComponent extends BaseListComponent {\r\n\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IRiscosChavesListaModel;\r\n public displayedColumns: string[] = ['selecao', 'versao', 'nomeTipoUniverso', 'dataCriacaoFormatada', 'situacao', 'status'];\r\n public nomeTipoUniverso: string;\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public permissoes: IPermissaoModel;\r\n public filtro = {} as FiltroRiscosChavesModel;\r\n public totalItens: number;\r\n public pageEvent: any;\r\n public unidadeGestoraId: number;\r\n private currentDialogRef: MatDialogRef;\r\n tipoUniversoId: number;\r\n tipoUniverso: number;\r\n universoAuditavelId: number;\r\n\r\n public botaoNovoDisable = false;\r\n public botaoEditarDisable = false;\r\n public botaoExcluirDisable = false;\r\n public botaoImprimirDisable = false;\r\n public botaoPreenchimentoDisable = false;\r\n public botaoImportarDisable = false;\r\n public botaoVisualizarDisable = false;\r\n public universoSelecionado = false;\r\n public filtroUniverso = {} as FiltroUniversoAuditavel;\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private http: HttpClient,\r\n private riscosChavesService: RiscosChavesServices,\r\n private matDialog: MatDialog,\r\n private questionarioUGService: QuestionarioUGService,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n private sharedService: SharedService\r\n ) {\r\n super();\r\n }\r\n\r\n async ngOnInit() {\r\n this.setarPermissoes();\r\n this.configurarFiltro();\r\n this.buscar();\r\n }\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n // this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Excluir);\r\n // this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Inserir);\r\n // this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Visualizar);\r\n // this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Imprimir);\r\n this.permissoes.importar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioEntentendoEntidade, EnumAcaoRecurso.Importar);\r\n\r\n }\r\n\r\n async ngAfterViewInit() {\r\n\r\n //await this.configuraTela();\r\n this.buscar();\r\n\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n public novo() {\r\n\r\n // if (!this.semDados) {\r\n // const dialogConfig = new MatDialogConfig();\r\n // dialogConfig.id = 'modal-component';\r\n // dialogConfig.width = '650px';\r\n // dialogConfig.hasBackdrop = true;\r\n // dialogConfig.disableClose = true;\r\n // dialogConfig.data = {\r\n // source: 'novo'\r\n // };\r\n // //this.currentDialogRef = this.matDialog.open(ModalQuestionarioNovaVersaoComponent, dialogConfig);\r\n // this.currentDialogRef.afterClosed().subscribe((data) => {\r\n // this.buscar();\r\n // });\r\n // } else {\r\n\r\n this.router.navigate([`/gerar`]);\r\n\r\n // }\r\n }\r\n\r\n public buscar() {\r\n this.selectedModel = null;\r\n this.riscosChavesService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.totalItens = res.dados.totalItens;\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n private configurarFiltro() {\r\n this.filtro.unidadeGestoraId = this.sharedService.getId();\r\n // this.filtro.tipoQuestionario = 1; // criar um enum\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.colunaOrder = this.sort.active;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchNome;\r\n this.filtro.direcao = this.sort.direction;\r\n }\r\n\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n }\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n\r\n public editar(id: number) {\r\n if(!this.permissoes.editar){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n this.router.navigate([`/riscos-chaves-form/${id}`]);\r\n }\r\n\r\n public solicitar(id: number) {\r\n\r\n const situacoesPermitidas = [\r\n ERiscosChavesSituacaoDescricao[ERiscosChavesSituacao.EmElaboracao],\r\n ERiscosChavesSituacaoDescricao[ERiscosChavesSituacao.Avocado],\r\n ERiscosChavesSituacaoDescricao[ERiscosChavesSituacao.Expirado]\r\n ];\r\n const situacaoAtual = this.selectedModel.situacao;\r\n\r\n if(situacoesPermitidas.includes(situacaoAtual) && this.selectedModel.ativo == true){\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-solicitar-preenchimento-risco-chaves';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n param1: id\r\n };\r\n\r\n this.currentDialogRef = this.matDialog.open(ModalSolicitarPreenchimentoRiscosChavesComponent, dialogConfig);\r\n this.currentDialogRef.afterClosed().subscribe((data) => {\r\n this.buscar();\r\n });\r\n\r\n }\r\n }\r\n isSelect() {\r\n if (this.selectedModel !== null) {\r\n return !this.selectedModel?.ativo;\r\n }\r\n }\r\n public preencher(id: number) {}\r\n\r\n public avocar(id: number) {\r\n const situacao = ERiscosChavesSituacao.Pendente;\r\n if (this.selectedModel.situacao === ERiscosChavesSituacaoDescricao[situacao] && this.selectedModel.ativo == true){\r\n this.riscosChavesService.Avocar(id).then(res=>{\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Riscos chaves avocado com sucesso.');\r\n }else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }).catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n }).finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n }\r\n public isButtonDisabled(): boolean {\r\n // Verifica se existe um modelo selecionado\r\n if (!this.selectedModel) {\r\n return true;\r\n }\r\n // Verifica as condições adicionais\r\n return !this.selectedModel.ativo ||\r\n !(this.selectedModel.situacao === 'Em Elaboração' || this.selectedModel.situacao === 'Avocado' || this.selectedModel.situacao === 'Em revisão' || this.selectedModel.situacao === 'Em preenchimento');\r\n }\r\n public excluir(id: number) {\r\n\r\n if(!this.permissoes.excluir){\r\n this.exibirMensagemErro(\"Você não possui permissão para Excluir.\");\r\n return;\r\n }\r\n\r\n this.riscosChavesService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Universo excluído com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n public importarArquivo() {\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n router: 'importar-riscos-chaves',\r\n unidadeGestora: this.filtro.unidadeGestoraId\r\n\r\n };\r\n\r\n const modal = this.matDialog.open(ModalSelecaoUniversoAuditavelComponent , dialogConfig );\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n this.filtroUniverso.pesquisa = data.nomeTipoUniversoAuditavel;\r\n if(this.filtroUniverso.pesquisa)\r\n this.universoSelecionado = true;\r\n\r\n this.tipoUniversoId = data.tipoUniversoAuditavelId;\r\n this.universoAuditavelId = data.id;\r\n }\r\n })\r\n\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Riscos Chaves\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Versão {{element.versao}} Tipo de Universo Auditável {{element.nomeTipoUniverso}} Data {{element.dataCriacaoFormatada}} Situação {{element.situacao}} Status \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ViewChild,OnInit } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { RiscosChavesServices } from 'src/app/services/riscos-chaves.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\nimport { IRiscosChavesModel } from 'src/app/models/riscos-chaves.model';\r\nimport { IUniversoAuditavelModel } from 'src/app/models/universo-auditavel.model';\r\nimport { TipoUniversoService } from 'src/app/services/tipo-universo.service';\r\nimport { MatDialogConfig } from '@angular/material/dialog';\r\nimport { ModalSelecaoUniversoAuditavelComponent } from '../modal-selecao-universo-auditavel/modal-selecao-universo-auditavel.component';\r\nimport { ModalSelecaoCriterioAvaliacaoComponent } from '../modal-selecao-criterio-avaliacao/modal-selecao-criterio-avaliacao.component';\r\nimport { IModeloQuestionarioItemModel } from 'src/app/models/modelo-questionario.model';\r\nimport { MatDialogRef, MatDialog } from '@angular/material/dialog';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { UniversoAuditavelService } from 'src/app/services/universo-auditavel.service';\r\nimport { FiltroUniversoAuditavel } from 'src/app/models/filtro-universo-auditavel';\r\nimport { TipoUniversoEnum } from 'src/app/models/enum/tipo-universo.enum';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { FiltroCriterioAvaliacaoRiscos } from 'src/app/models/filtro-criterio-avaliacao-riscos.model';\r\nimport { ITipoUniversoModel } from 'src/app/models/tipo-universo.model';\r\n\r\n@Component({\r\n selector: 'app-gerar',\r\n templateUrl: './gerar.component.html',\r\n styleUrls: ['./gerar.component.scss']\r\n})\r\nexport class GerarComponent extends BaseListComponent {\r\n\r\n public filtroUniverso = {} as FiltroUniversoAuditavel;\r\n public filtroCriterios = {} as FiltroCriterioAvaliacaoRiscos;\r\n\tunidadeGestoraId: number;\r\n universoAuditavelId: number;\r\n\ttipoUniversoId: number;\r\n\ttipoUniverso: number;\r\n criterioAvaliacaoId: number;\r\n public dataSource: any[] = [];\r\n public universoSelecionado = false;\r\n public criterioSelecionado = false;\r\n public modelRiscosChaves : IRiscosChavesModel = {} as IRiscosChavesModel;\r\n public modelTipoUniverso : ITipoUniversoModel;\r\n\r\n constructor(\r\n private riscosChavesService: RiscosChavesServices,\r\n\t\tprivate universoAuditavelService: UniversoAuditavelService,\r\n\t\tprivate tipoUniversoService: TipoUniversoService,\r\n\t\tprivate matDialog: MatDialog,\r\n\t\tprivate router: Router,\r\n\t\tprivate sharedService: SharedService\r\n ) { \r\n super();\r\n }\r\n \r\n \r\n \r\n\r\n ngOnInit(): void {\r\n\r\n this.filtroUniverso.unidadeGestoraId = this.sharedService.getId();\r\n this.unidadeGestoraId = this.sharedService.getId();\r\n \r\n //this.buscar();\r\n\t}\r\n\r\n public buscar() {\r\n this.universoAuditavelService.obterAtivos(this.filtroUniverso).then((res)=>{\r\n this.dataSource = res.dados.resultado;\r\n }).catch((err)=> {\r\n this.exibirMensagemErro(err.mensagem);\r\n });\r\n }\r\n\r\n\tpublic buscarTipoUniversoAuditavel(){\r\n\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = 'modal-component';\r\n\t\tdialogConfig.width = '650px';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\r\n const modal = this.matDialog.open(ModalSelecaoUniversoAuditavelComponent , dialogConfig );\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n this.filtroUniverso.pesquisa = data.nomeTipoUniversoAuditavel;\r\n if(this.filtroUniverso.pesquisa)\r\n this.universoSelecionado = true;\r\n\r\n this.tipoUniversoId = data.tipoUniversoAuditavelId;\r\n this.universoAuditavelId = data.id;\r\n }\r\n })\r\n\t}\r\n\r\n public buscarCriterioAvaliacao(){\r\n\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = 'modal-component';\r\n\t\tdialogConfig.width = '650px';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\r\n const modal = this.matDialog.open(ModalSelecaoCriterioAvaliacaoComponent , dialogConfig );\r\n modal.afterClosed().subscribe((data) => {\r\n \r\n if(data){\r\n this.filtroCriterios.pesquisa = data.nome;\r\n if(this.filtroCriterios)\r\n this.criterioSelecionado = true;\r\n this.criterioAvaliacaoId = data.id;\r\n }\r\n })\r\n\t}\r\n\r\n public async verificaCriacao(){\r\n \r\n this.gerar();\r\n \r\n\r\n }\r\n\r\n\r\n public gerar(){\r\n \r\n if(!this.tipoUniversoId || this.tipoUniversoId == 0){\r\n this.exibirMensagemErro(\"Informe o modelo um tipo de Universo Auditável\")\r\n return;\r\n\r\n \r\n } \r\n else {\r\n this.inserirRiscosChaves(this.tipoUniversoId);\r\n }\r\n \r\n\r\n }\r\n public async inserirRiscosChaves(id: number){\r\n try {\r\n \r\n let res: IBaseModel = null;\r\n const result = await this.tipoUniversoService.obterPorId(id);\r\n if(result.sucesso){\r\n this.modelTipoUniverso = result.dados;\r\n this.modelRiscosChaves.nomeTipoUniverso = this.modelTipoUniverso.nome;\r\n this.modelRiscosChaves.tipoUniversoAuditavelId = this.tipoUniversoId;\r\n this.modelRiscosChaves.unidadeGestoraId = this.unidadeGestoraId;\r\n this.modelRiscosChaves.criterioAvaliacaoId = this.criterioAvaliacaoId \r\n }\r\n\r\n res = await this.riscosChavesService.inserir(this.modelRiscosChaves);\r\n if (res.sucesso) {\r\n this.router.navigate([`/riscos-chaves-form/${res.dados.id}`]);\r\n }\r\n \r\n }\r\n catch {\r\n \r\n }\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Tipo de Universo Auditável\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { BaseFormComponent } from \"../../../../shared/components/base-form/base-form.component\";\r\nimport { Component, OnInit } from \"@angular/core\";\r\nimport { FiltroModel } from \"../../../../models/filtro.model\";\r\nimport { AuthService } from \"../../../../services/auth.service\";\r\nimport { EntendendoEntidadeService } from \"../../../../services/entendendo-entidade.service\";\r\nimport { QuestionarioUGRespostaService } from \"../../../../services/questionarioug-resposta.service\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { SharedService } from \"../../../../services/shared.service\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { TipoUniversoService } from \"../../../../services/tipo-universo.service\";\r\nimport { UniversoAuditavelService } from \"../../../../services/universo-auditavel.service\";\r\nimport { IArquivoModel } from \"../../../../models/arquivo.model\";\r\nimport Swal from \"sweetalert2\";\r\n\r\n\r\n@Component({\r\n selector: 'app-importar-arquivo-risco-chaves',\r\n templateUrl: './importar-arquivo-risco-chaves.component.html',\r\n styleUrls: ['./importar-arquivo-risco-chaves.component.scss']\r\n})\r\nexport class ImportarArquivoRiscosChavesComponent extends BaseFormComponent implements OnInit{\r\n public filtro = {} as FiltroModel;\r\n\r\n tipoUniversoId:number;\r\n unidadeGestoraId:number;\r\n searchTerm: string = '';\r\n nomeTipoUniverso: string = '';\r\n arquivo: File | null = null;\r\n arquivoUrl: string;\r\n nomeArquivo: string;\r\n errorMessage: string | null = null;\r\n botaoEncerrarHabilitado: boolean = true;\r\n constructor(\r\n private authService: AuthService,\r\n private tipoUniversoService: TipoUniversoService,\r\n private universoAuditavelService: UniversoAuditavelService,\r\n matDialog: MatDialog,\r\n router: Router,\r\n private sharedService: SharedService,\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n localeService: BsLocaleService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.unidadeGestoraId = this.route.snapshot.queryParams['unidadeGestoraId']\r\n this.tipoUniversoId = this.route.snapshot.queryParams['tipoUniversoId']\r\n\r\n this.buscarTipoUniverso();\r\n this.downloadAnexo();\r\n }\r\n\r\n public buscarTipoUniverso(){\r\n\r\n if(this.tipoUniversoId !== null){\r\n this.tipoUniversoService.obterPorId(this.tipoUniversoId).then(res =>{\r\n if(res.sucesso){\r\n this.nomeTipoUniverso = res.dados.nome;\r\n }else{\r\n this.exibirMensagemAlerta('Tipo não encontrado!');\r\n }\r\n })\r\n }\r\n }\r\n\r\n\r\n onFileSelected(event: any): void {\r\n const file: File = event.target.files[0];\r\n if (file) {\r\n // Verifica se a extensão do arquivo é PDF\r\n const fileExtension = file.name.split('.').pop()?.toLowerCase();\r\n if (fileExtension !== 'pdf') {\r\n // Emite um aviso caso a extensão não seja PDF\r\n this.errorMessage = 'Por favor, selecione um arquivo PDF!';\r\n this.arquivo = null; // Reseta o arquivo selecionado\r\n } else {\r\n this.arquivo = file;\r\n this.errorMessage = null;\r\n }\r\n }\r\n }\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=4`);\r\n }\r\n\r\n enviarArquivo(): void {\r\n\r\n if (this.arquivo) {\r\n const arquivoModel: IArquivoModel = {\r\n id: 0,\r\n nomeArquivo: this.arquivo.name,\r\n entidadeArquivo: 1,\r\n arquivo: this.arquivo,\r\n url: ''\r\n };\r\n\r\n\r\n\r\n this.universoAuditavelService.enviarArquivo(this.unidadeGestoraId, this.tipoUniversoId , arquivoModel).then(\r\n (response) => {\r\n this.downloadAnexo();\r\n this.exibirMensagemSucesso('Arquivo importado com sucesso');\r\n // this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=1`);\r\n },\r\n (error) => {\r\n this.exibirMensagemErro(error.mensagem.descricao);\r\n }\r\n );\r\n }\r\n }\r\n\r\n search(): void {\r\n console.log('Searching for:', this.searchTerm);\r\n // Implementar lógica de pesquisa aqui\r\n }\r\n\r\n finalizarAvaliacao(): void {\r\n console.log('Avaliação finalizada');\r\n // Implementar lógica de finalização aqui\r\n }\r\n\r\n cancelar(): void {\r\n console.log('Operação cancelada');\r\n // Implementar lógica de cancelamento aqui\r\n }\r\n\r\n\r\n onEncerrarAvaliacao(){\r\n Swal.fire({\r\n title: 'Atenção',\r\n text: \"Esta ação não poderá ser desfeita! Deseja continuar? \",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n console.log(this.tipoUniversoId);\r\n console.log(this.unidadeGestoraId);\r\n if (res.value) {\r\n this.universoAuditavelService.encerrarUniversoImportacaoArquivo(this.unidadeGestoraId, this.tipoUniversoId)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=3`);\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n\r\n }\r\n })}\r\n\r\n downloadAnexo(): void {\r\n this.universoAuditavelService.DownloadArquivo(this.unidadeGestoraId, this.tipoUniversoId).then(res=> {\r\n if(res.sucesso && res.dados !== undefined){\r\n this.arquivoUrl = res.dados.url;\r\n this.nomeArquivo = res.dados.nomeArquivo;\r\n if (res.dados.id) {\r\n this.botaoEncerrarHabilitado = false; // Habilita o botão\r\n }\r\n }else{\r\n return;\r\n }\r\n });\r\n }\r\n}\r\n","\r\n\r\n\r\n
\r\n \r\n \r\n Encerrar Avaliação\r\n \r\n
\r\n","import { Component, OnInit, ViewChild, Output, EventEmitter } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { CriteriosAvaliacaoRiscoService } from 'src/app/services/criterios-avaliacao-risco.service';\r\nimport { IUniversoAuditavelModel } from 'src/app/models/universo-auditavel.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { FiltroUniversoAuditavel } from 'src/app/models/filtro-universo-auditavel';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { ITipoUniversoModel } from 'src/app/models/tipo-universo.model';\r\nimport { MatCheckboxChange } from \"@angular/material/checkbox\";\r\nimport { ICriteriosAvaliacaoRiscos } from 'src/app/models/criterios-avaliacao-riscos.model';\r\nimport { FiltroCriterioAvaliacaoRiscos } from 'src/app/models/filtro-criterio-avaliacao-riscos.model';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'versao': return item.versao.trim().toLowerCase();\r\n case 'data': return item.data.trim().toLowerCase();\r\n case 'situacao': return item.situacao.trim().toLowerCase();\r\n case 'ativo':\r\n return item.ativo;\r\n default:\r\n return item.versao;\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-modal-selecao-criterio-avaliacao',\r\n templateUrl: './modal-selecao-criterio-avaliacao.component.html',\r\n styleUrls: ['./modal-selecao-criterio-avaliacao.component.scss']\r\n})\r\nexport class ModalSelecaoCriterioAvaliacaoComponent extends BaseListComponent implements OnInit {\r\n\r\n public semDados = true;\r\n public totalItens: number;\r\n public selecionado: ITipoUniversoModel;\r\n public filtro = {} as FiltroCriterioAvaliacaoRiscos;\r\n public displayedColumns: string[] = ['selecao', 'nome'];\r\n public dataSource = new MatTableDataSource([]);\r\n\r\n \r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n @Output() nomeSelecionado = new EventEmitter();\r\n\r\n constructor(private dialogRef: MatDialogRef,\r\n private criterioAvaliacaoService: CriteriosAvaliacaoRiscoService,\r\n ) { \r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscar();\r\n }\r\n\r\n public buscar() {\r\n //this.selectedModel = null;\r\n this.criterioAvaliacaoService.obterAtivos(this.filtro).then((res)=>{\r\n this.totalItens = res.dados.totalItens;\r\n // @ts-ignore\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n\r\n }).catch((err)=> {\r\n this.exibirMensagemErro(err.mensagem);\r\n });\r\n }\r\n\r\n public async concluir() {\r\n // if(this.data !== null){\r\n // this.filtroUniverso.unidadeGestoraId = this.data.unidadeGestora;\r\n // this.filtroUniverso.tipoUniversoAuditavelId = this.tipoUniversoId;\r\n // this.filtroUniverso.ativo = true;\r\n\r\n this.dialogRef.close(this.selecionado);\r\n\r\n }\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n public filtrar(event: Event){\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n onCheckboxChange(event: MatCheckboxChange, element: any){\r\n if (event.checked){\r\n this.selecionado = !this.selecionado || this.selecionado.id !== element.id ? element : null;\r\n this.nomeSelecionado = element.nome;\r\n\r\n }\r\n }\r\n public selecionar(item: ITipoUniversoModel) {\r\n this.selecionado = !this.selecionado || this.selecionado.id !== item.id ? item : null;\r\n \r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Selecionar Critério Avaliação

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Nome\r\n \r\n {{element.nome}} Obrigatório \r\n \r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { Component, OnInit, ViewChild, Output, EventEmitter } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { RiscosService } from 'src/app/services/riscos.service';\r\nimport { RiscosChavesServices } from 'src/app/services/riscos-chaves.service';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { IRiscosModel } from 'src/app/models/riscos.model';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { MatCheckboxChange } from \"@angular/material/checkbox\";\r\nimport { FiltroRisco } from 'src/app/models/filtro-risco.model';\r\nimport { IRiscosChavesModel, IRiscosChavesProcessoItemModel } from 'src/app/models/riscos-chaves.model';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'versao': return item.versao.trim().toLowerCase();\r\n case 'data': return item.data.trim().toLowerCase();\r\n case 'situacao': return item.situacao.trim().toLowerCase();\r\n case 'ativo':\r\n return item.ativo;\r\n default:\r\n return item.versao;\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-modal-selecao-risco',\r\n templateUrl: './modal-selecao-risco.component.html',\r\n styleUrls: ['./modal-selecao-risco.component.scss']\r\n})\r\nexport class ModalSelecaoRiscoComponent extends BaseListComponent implements OnInit {\r\n\r\n public filtro = {} as FiltroRisco;\r\n public semDados = true;\r\n public riscosChavesId: number;\r\n public totalItens: number;\r\n public selecionado: IRiscosModel;\r\n public displayedColumns: string[] = ['selecao', 'nome'];\r\n public dataSource = new MatTableDataSource([]);\r\n public modelRiscosChaves: IRiscosChavesModel;\r\n \r\n\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n @Output() idSelecionado = new EventEmitter();\r\n\r\n constructor(private riscoService: RiscosService,\r\n private riscosChavesService: RiscosChavesServices,\r\n private route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n ) { \r\n super();\r\n }\r\n\r\n ngOnInit(): void { \r\n this.buscar();\r\n }\r\n\r\n public buscar() {\r\n this.riscoService.obterAtivos(this.filtro).then((res)=>{\r\n this.totalItens = res.dados.totalItens;\r\n // @ts-ignore\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n\r\n }).catch((err)=> {\r\n this.exibirMensagemErro(err.mensagem);\r\n });\r\n }\r\n\r\n public async concluir() {\r\n\r\n this.dialogRef.close(this.selecionado);\r\n\r\n }\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n public filtrar(event: Event){\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n onCheckboxChange(event: MatCheckboxChange, element: any){\r\n if (event.checked){\r\n this.selecionado = !this.selecionado || this.selecionado.id !== element.id ? element : null;\r\n this.idSelecionado = element.id;\r\n\r\n }\r\n }\r\n public async selecionar(item: IRiscosModel) {\r\n this.selecionado = !this.selecionado || this.selecionado.id !== item.id ? item : null;\r\n \r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Selecionar Risco

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Nome\r\n \r\n {{element.nome}} Obrigatório \r\n \r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { Component, OnInit, ViewChild, Output, EventEmitter, Inject } from \"@angular/core\";\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogConfig, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { UniversoAuditavelService } from 'src/app/services/universo-auditavel.service';\r\nimport { IUniversoAuditavelModel } from 'src/app/models/universo-auditavel.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { FiltroUniversoAuditavel } from 'src/app/models/filtro-universo-auditavel';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { ITipoUniversoModel } from 'src/app/models/tipo-universo.model';\r\nimport { MatCheckboxChange } from \"@angular/material/checkbox\";\r\nimport { FiltroRiscosChavesModel } from \"../../../../models/filtro-riscos-chaves.model\";\r\nimport { RiscosChavesServices } from \"../../../../services/riscos-chaves.service\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { BaseFormComponent } from \"../../../../shared/components/base-form/base-form.component\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport {\r\n ModalUniversoAuditavelImportacaoComponent\r\n} from \"../../shared/modal-universo-auditavel-importacao/modal-universo-auditavel-importacao.component\";\r\nimport {\r\n ModalRiscosChavesImportacaoComponent\r\n} from \"../../shared/modal-riscos-chaves-importacao/modal-riscos-chaves-importacao.component\";\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'versao': return item.versao.trim().toLowerCase();\r\n case 'data': return item.data.trim().toLowerCase();\r\n case 'situacao': return item.situacao.trim().toLowerCase();\r\n case 'ativo':\r\n return item.ativo;\r\n default:\r\n return item.versao;\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-modal-selecao-universo-auditavel',\r\n templateUrl: './modal-selecao-universo-auditavel.component.html',\r\n styleUrls: ['./modal-selecao-universo-auditavel.component.scss']\r\n})\r\nexport class ModalSelecaoUniversoAuditavelComponent extends BaseFormComponent implements OnInit {\r\n\r\n public semDados = true;\r\n public totalItens: number;\r\n public selecionado: ITipoUniversoModel;\r\n public filtro = {} as FiltroUniversoAuditavel;\r\n public filtroRiscosChaves = {} as FiltroRiscosChavesModel;\r\n public displayedColumns: string[] = ['selecao', 'nome'];\r\n public dataSource = new MatTableDataSource([]);\r\n public tipoUniversoId: number;\r\n public pageEvent: any;\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n @Output() nomeSelecionado = new EventEmitter();\r\n\r\n constructor(private dialogRef: MatDialogRef,\r\n private universoAuditavelService: UniversoAuditavelService,\r\n private risosChavesService: RiscosChavesServices,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n public toastr: ToastrService,\r\n public matDialog: MatDialog,\r\n route: ActivatedRoute,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscar();\r\n }\r\n\r\n public buscar() {\r\n\r\n this.universoAuditavelService.obterAtivos(this.filtro).then((res)=>{\r\n this.totalItens = res.dados.totalItens;\r\n // @ts-ignore\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n\r\n }).catch((err)=> {\r\n this.exibirMensagemErro(err.mensagem);\r\n });\r\n }\r\n\r\n public async concluir() {\r\n // if(this.data !== null){\r\n // this.filtroRiscosChaves.unidadeGestoraId = this.data.unidadeGestora;\r\n // this.filtroUniverso.tipoUniversoAuditavelId = this.tipoUniversoId;\r\n // this.filtroUniverso.ativo = true;\r\n\r\n if(this.data !== null){\r\n this.filtroRiscosChaves.unidadeGestoraId = this.data.unidadeGestora;\r\n this.filtroRiscosChaves.tipoUniversoAuditavelId = this.tipoUniversoId;\r\n\r\n const retorno = await this.risosChavesService.obter(this.filtroRiscosChaves);\r\n\r\n if(retorno.dados.resultado.length > 0){\r\n this.dialogRef.close();\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component-importar';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n source: 'importar-risco-chaves-novo',\r\n unidadeGestoraId: this.filtroRiscosChaves.unidadeGestoraId,\r\n tipoUniversoId: this.tipoUniversoId,\r\n\r\n };\r\n const modal= this.matDialog.open(ModalRiscosChavesImportacaoComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n\r\n });\r\n\r\n }else{\r\n this.router.navigate(['/importar-arquivo-riscos-chaves/novo'], { queryParams: { unidadeGestoraId: this.filtroRiscosChaves.unidadeGestoraId, tipoUniversoId: this.tipoUniversoId } });\r\n this.dialogRef.close(this.selecionado);\r\n }\r\n\r\n }\r\n\r\n this.dialogRef.close(this.selecionado);\r\n\r\n }\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n public filtrar(event: Event){\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n onCheckboxChange(event: MatCheckboxChange, element: any){\r\n if (event.checked){\r\n this.selecionado = !this.selecionado || this.selecionado.id !== element.id ? element : null;\r\n this.nomeSelecionado = element.nomeTipoUniversoAuditavel;\r\n this.tipoUniversoId = element.id;\r\n // this.tipoUniverso = element.tipo;\r\n }\r\n }\r\n public selecionar(item: ITipoUniversoModel) {\r\n this.selecionado = !this.selecionado || this.selecionado.id !== item.id ? item : null;\r\n this.tipoUniversoId = item.id;\r\n //this.tipoUniverso = item.tipo;\r\n }\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Selecionar Universo Auditável

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n Nome\r\n \r\n {{element.nomeTipoUniversoAuditavel}} Tipo entrada\r\n \r\n {{element.tipoEntrada.descricao}} Obrigatório \r\n \r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { EntendendoEntidadeService } from \"../../../../services/entendendo-entidade.service\";\r\nimport { SharedService } from \"../../../../services/shared.service\";\r\nimport { UniversoAuditavelService } from \"../../../../services/universo-auditavel.service\";\r\nimport { RiscosChavesServices } from \"../../../../services/riscos-chaves.service\";\r\n\r\n@Component({\r\n selector: 'app-modal-solicitar-preenchimento',\r\n templateUrl: './modal-solicitar-preenchimento.component.html',\r\n styleUrls: ['./modal-solicitar-preenchimento.component.scss']\r\n})\r\nexport class ModalSolicitarPreenchimentoRiscosChavesComponent implements OnInit{\r\n\r\n prazoDias: number;\r\n\r\n public mensagemAlerta: string;\r\n\r\n constructor(\r\n private router: Router,\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n private riscosChavesService: RiscosChavesServices,\r\n private sharedService: SharedService,\r\n private dialogRef: MatDialogRef\r\n\r\n ) { }\r\n\r\n ngOnInit(): void {}\r\n public cancelar(){\r\n this.dialogRef.close();\r\n }\r\n\r\n public concluir(){\r\n\r\n if (!this.prazoDias || this.prazoDias < 1) {\r\n this.exibirMensagemAlerta(\"Preencha um prazo!\");\r\n return;\r\n }\r\n this.riscosChavesService\r\n .solicitarPreenchimentoFormulario(this.data.param1, this.prazoDias)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n // aqui chamar o pagina principal\r\n this.dialogRef.close();\r\n } else {\r\n // this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n // this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n // this.buscar();\r\n });\r\n }\r\n\r\n public onChangePreencherPrazo(event){\r\n this.prazoDias = event.target.value;\r\n }\r\n public exibirMensagemAlerta(mensagem: string): void{\r\n this.mensagemAlerta = mensagem;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Prazo para Preenchimento

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialogConfig, MatDialog } from '@angular/material/dialog';\r\nimport { FiltroRisco } from 'src/app/models/filtro-risco.model';\r\nimport { CriteriosAvaliacaoRiscoService } from 'src/app/services/criterios-avaliacao-risco.service';\r\nimport { RiscosChavesServices } from 'src/app/services/riscos-chaves.service';\r\nimport { RiscosService } from 'src/app/services/riscos.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { ModalSelecaoRiscoComponent } from '../modal-selecao-risco/modal-selecao-risco.component';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { IRiscosChavesProcessoItemModel } from 'src/app/models/riscos-chaves.model';\r\nimport { ICriteriosAvaliacaoRiscos } from 'src/app/models/criterios-avaliacao-riscos.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { EscalasService } from 'src/app/services/escalas.service';\r\n\r\nexport interface Risco {\r\n descricao: string;\r\n impacto: number;\r\n probabilidade: number;\r\n ri: number;\r\n nivelRisco: string;\r\n situacao: string;\r\n riscoControle: number;\r\n rr: number;\r\n nivelRiscoResidual: string;\r\n}\r\n\r\n@Component({\r\n selector: 'app-preenchimento-riscos-criterios',\r\n templateUrl: './preenchimento-riscos-criterios.component.html',\r\n styleUrls: ['./preenchimento-riscos-criterios.component.scss']\r\n})\r\nexport class PreenchimentoRiscosCriteriosComponent extends BaseListComponent implements OnInit {\r\n\r\n public filtro = {} as FiltroRisco;\r\n public modelRiscosChavesProcessoItem: IRiscosChavesProcessoItemModel = {} as IRiscosChavesProcessoItemModel;\r\n public modelCriterioAvaliacaoRisco: ICriteriosAvaliacaoRiscos = {} as ICriteriosAvaliacaoRiscos;\r\n public dataSource = new MatTableDataSource([]);\r\n public nomeRisco: string;\r\n id: number;\r\n processoId: number;\r\n displayedColumnDescricao: string[] = ['descricao'];\r\n displayedColumnEscalas: string[] = [];\r\n displayedColumns: string[] = ['ri', 'nivelRisco', 'situacao', 'riscoControle', 'rr', 'nivelRiscoResidual', 'acoes']\r\n\r\n\r\n\r\n \r\n\r\n constructor(private riscosChavesService: RiscosChavesServices,\r\n private riscosService: RiscosService,\r\n private escalasService: EscalasService,\r\n private criteriosAvaliacaoService: CriteriosAvaliacaoRiscoService,\r\n private sharedService: SharedService,\r\n private matDialog: MatDialog,\r\n private route: ActivatedRoute\r\n ) { \r\n super();\r\n }\r\n\r\n async ngOnInit() {\r\n this.id = parseInt(this.route.snapshot.paramMap.get('id'));\r\n this.processoId = parseInt(this.route.snapshot.paramMap.get('processoId'));\r\n await this.riscosChavesService.obterPorId(this.id)\r\n this.obterDescricaoRisco();\r\n \r\n }\r\n\r\n excluirRisco(index: number) {\r\n // this.dataSource.splice(index, 1);\r\n // this.dataSource = [...this.dataSource]; // Atualiza o array\r\n }\r\n\r\n public obterDescricaoRisco() {\r\n //this.selectedModel = null;\r\n this.riscosChavesService\r\n .obterItensProcesso(41,655)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados); \r\n console.log(this.dataSource.data) \r\n this.obterEscalas();\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n }\r\n\r\n public buscarRisco(){\r\n \r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = 'modal-component';\r\n\t\tdialogConfig.width = '650px';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\r\n const modal = this.matDialog.open(ModalSelecaoRiscoComponent , dialogConfig );\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n this.filtro.pesquisa = data.id;\r\n this.adicionarRisco(data.id);\r\n }\r\n })\r\n\t}\r\n\r\n public async adicionarRisco(riscoId: number){\r\n try {\r\n \r\n const result = await (await this.riscosService.obterPorId(riscoId)).dados;7\r\n this.nomeRisco = result.nome;\r\n if (this.id) {\r\n const res = await this.riscosChavesService.obterPorId(this.id).then((res)=>{\r\n this.modelRiscosChavesProcessoItem.riscoChaveId = res.dados.id;\r\n this.modelRiscosChavesProcessoItem.criterioAvaliacaoId = res.dados.criterioAvaliacaoId;\r\n this.modelRiscosChavesProcessoItem.riscoId = riscoId;\r\n this.modelRiscosChavesProcessoItem.processoId = this.processoId;\r\n this.modelRiscosChavesProcessoItem.nomeRisco = this.nomeRisco; \r\n })\r\n await this.riscosChavesService.inserirProcessoItem(this.modelRiscosChavesProcessoItem);\r\n }\r\n } catch (error) {\r\n console.error(\"Erro inesperado ao inserir o risco no processo!:\", error);\r\n }\r\n\r\n }\r\n\r\n public obterEscalas() {\r\n\r\n if (this.dataSource.data.length > 0) {\r\n this.displayedColumnEscalas = this.dataSource.data[0].escalasCriterioAvaliacao.map(e => e.nome);\r\n }\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Unidades Gestora\r\n
  4. \r\n
  5. Editar Unidade Gestora
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n

Riscos

\r\n \r\n \r\n \r\n \r\n Descrição do Risco \r\n \r\n Descrição do Risco \r\n {{risco.nomeRisco}}\r\n \r\n \r\n \r\n \r\n\r\n \r\n {{ escala }} \r\n \r\n \r\n \r\n \r\n \r\n {{ mag.magnitude }} \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n RI \r\n {{ risco.ri }} \r\n \r\n \r\n \r\n \r\n Nível de Risco \r\n {{ risco.nivelRisco }} \r\n \r\n \r\n \r\n \r\n Situação \r\n \r\n \r\n Inexistente\r\n Fraco\r\n Forte\r\n \r\n \r\n \r\n \r\n \r\n \r\n Risco de Controle \r\n {{ risco.riscoControle }} \r\n \r\n \r\n \r\n \r\n RR \r\n {{ risco.rr }} \r\n \r\n \r\n \r\n \r\n Nível de Risco \r\n {{ risco.nivelRiscoResidual }} \r\n \r\n \r\n \r\n \r\n Ações \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { RiscosChavesServices } from 'src/app/services/riscos-chaves.service';\r\nimport { CriteriosAvaliacaoRiscoService } from 'src/app/services/criterios-avaliacao-risco.service';\r\nimport { TipoUniversoService } from 'src/app/services/tipo-universo.service';\r\nimport { IRiscosChavesModel } from 'src/app/models/riscos-chaves.model';\r\nimport { IUniversoAuditavelModel } from 'src/app/models/universo-auditavel.model';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ITipoUniversoModel, \r\n ITipoUniversoItemModel, \r\n ITipoUniversoUGModel \r\n} from 'src/app/models/tipo-universo.model';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-riscos-chaves-form',\r\n templateUrl: './riscos-chaves-form.component.html',\r\n styleUrls: ['./riscos-chaves-form.component.scss']\r\n})\r\nexport class RiscosChavesFormComponent extends BaseFormComponent implements OnInit {\r\n\r\n public tipoUniversoId : number;\r\n public unidadeGestoraId : number;\r\n public criterioAvaliacaoId: number;\r\n public criterioId: string;\r\n public unidadeGestora: number;\r\n public processoId: number;\r\n public semDados: boolean;\r\n public modelRiscosChaves : IRiscosChavesModel = {} as IRiscosChavesModel;\r\n public modelTipoUniverso : ITipoUniversoModel = {} as ITipoUniversoModel;\r\n public modelTipoUniversoItens : ITipoUniversoUGModel = {} as ITipoUniversoUGModel;\r\n \r\n \r\n\r\n constructor(route: ActivatedRoute, \r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private riscosChavesService: RiscosChavesServices,\r\n private tipoUniversoService: TipoUniversoService,\r\n private criterioAvaliacaoService: CriteriosAvaliacaoRiscoService,\r\n public matDialog: MatDialog,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n if(this.id){\r\n const res = await this.riscosChavesService.obterPorId(this.id);\r\n if(res.sucesso){\r\n this.tipoUniversoId = res.dados.tipoUniversoAuditavelId; \r\n this.unidadeGestoraId = res.dados.unidadeGestoraId;\r\n this.criterioAvaliacaoId = res.dados.criterioAvaliacaoId;\r\n\r\n }\r\n \r\n }\r\n if(this.tipoUniversoId != null){\r\n this.buscarTipoUniverso(this.tipoUniversoId);\r\n }\r\n }\r\n\r\n public async buscarTipoUniverso(idTipo:number){\r\n this.buscarItens(this.tipoUniversoId, this.unidadeGestoraId);\r\n }\r\n\r\n public async buscarItens(idTipoUniverso: number, idUG: number){\r\n\r\n if(idTipoUniverso){\r\n const res = await this.tipoUniversoService.obterItens(idTipoUniverso, idUG);\r\n if(res.sucesso){\r\n this.modelTipoUniversoItens = res.dados;\r\n this.criterioId = this.criterioAvaliacaoId.toString();\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n\r\n }\r\n }\r\n\r\n public async abrirPreenchimento(processoId: number){\r\n \r\n const res = await this.criterioAvaliacaoService.obterPorId(this.criterioAvaliacaoId);\r\n if(res.sucesso){\r\n if(this.id)\r\n this.router.navigate([`/preenchimento-riscos-criterios`,this.id, processoId]);\r\n }\r\n\r\n }\r\n\r\n getRowSpan(subtipo: any): number {\r\n let rowCount = 0;\r\n subtipo.itens.forEach(macro => {\r\n if (macro.tipo === 2) {\r\n rowCount += macro.itens.length || 1; // Se não houver processos, contar pelo menos 1 linha\r\n }\r\n });\r\n return rowCount || 1; // Se não houver macros, contar pelo menos 1 linha\r\n }\r\n\r\n \r\n\r\n}\r\n\r\n\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial \r\n
  2. \r\n
  3. \r\n Riscos Chaves\r\n
  4. \r\n
  5. Titulo
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
SubtipoMacroprocessoProcessosMagnitude (Risco Inerente)Magnitude (Risco Residual)Ações
{{ subtipo.nome }}
{{ macro.nome }}
{{ processo.nome }}{{ processo.magnitudeRiscoInerente || 0 }}{{ processo.magnitudeRiscoResidual || 0 }}\r\n \r\n \r\n
Magnitude1 2
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n","import { BaseListComponent } from \"../../../shared/components/base-list/base-list.component\";\r\nimport { Component, ViewChild } from \"@angular/core\";\r\nimport { IQuestionarioUGListaModel } from \"../../../models/questionario-ug-lista.model\";\r\nimport { IUniversoAuditavelModel } from \"../../../models/universo-auditavel.model\";\r\nimport { AuthService } from \"../../../services/auth.service\";\r\nimport { QuestionarioUGService } from \"../../../services/questionarioug.service\";\r\nimport { Router } from \"@angular/router\";\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { UnidadeGestoraService } from \"../../../services/unidade-gestora.service\";\r\nimport { SharedService } from \"../../../services/shared.service\";\r\nimport { FiltroUniversoAuditavel } from \"../../../models/filtro-universo-auditavel\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { UniversoAuditavelService } from \"../../../services/universo-auditavel.service\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { IPermissaoModel } from \"../../../models/permissao.model\";\r\nimport { EnumRecursoPerfil } from \"../../../models/enum/recurso-perfil.enum\";\r\nimport { EnumAcaoRecurso } from \"../../../models/enum/acao-recurso.enum\";\r\nimport { EnumTipoQuestionarioUG } from \"../../../models/enum/tipo-questionario-ug.enum\";\r\nimport {\r\n ModalUniversoAuditavelNovaVersaoComponent\r\n} from \"../shared/modal-universo-auditavel-nova-versao/modal-universo-auditavel-nova-versao.component\";\r\nimport {\r\n EQuestionarioUGSituacao,\r\n EQuestionarioUGSituacaoDescricao\r\n} from \"../../../models/enum/questionario-ug-situacao.enum\";\r\nimport {\r\n EUniversoAuditavelSituacao,\r\n EUniversoAuditavelSituacaoDescricao\r\n} from \"../../../models/enum/universo-auditavel-situacao\";\r\nimport {\r\n ModalSolicitarPreenchimentoUniversoComponent\r\n} from \"./modal-solicitar-preenchimento/modal-solicitar-preenchimento.component\";\r\nimport { ModalSelecaoTipoUniversoComponent } from \"./modal-selecao-tipo-universo/modal-selecao-tipo-universo.component\";\r\nimport { MatCheckboxChange } from \"@angular/material/checkbox\";\r\n\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'versao': return item.versao.trim().toLowerCase();\r\n case 'data': return item.data.trim().toLowerCase();\r\n case 'situacao': return item.situacao.trim().toLowerCase();\r\n case 'ativo':\r\n return item.ativo;\r\n default:\r\n return item.versao;\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-aba-universo-auditavel',\r\n templateUrl: './aba-univserso-auditavel.component.html',\r\n styleUrls: ['./aba-univserso-auditavel.component.scss']\r\n})\r\n\r\nexport class AbaUniversoAuditavelComponent extends BaseListComponent{\r\n\r\n public selectedModel: IUniversoAuditavelModel;\r\n public dataSource = new MatTableDataSource([]);\r\n public filtro = {} as FiltroUniversoAuditavel;\r\n public searchAtivo = true;\r\n public botaoImportarDisable = false;\r\n public pageEvent: any;\r\n public totalItens: number;\r\n public displayedColumns: string[] = ['selecao', 'versao', 'nomeTipoUniversoAuditavel', 'dataCriacaoFormatada' , 'ativo', 'status'];\r\n public semDados = true;\r\n public botaoImprimirDisable = false;\r\n public botaoExcluirDisable = false;\r\n public botaoVisualizarDisable = false;\r\n public botaoEditarDisable = false;\r\n public botaoNovoDisable = false;\r\n public permissoes: IPermissaoModel;\r\n private currentDialogRef: MatDialogRef;\r\n tipoUniversoId: number;\r\n tipoUniverso: number;\r\n\r\n\r\n\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n optionsSituacao = [\r\n { id: undefined, nome: 'Todos' },\r\n { id: 1, nome: 'Em elaboração' },\r\n { id: 2, nome: 'Em preenchimento' },\r\n { id: 3, nome: 'Revisão' },\r\n { id: 4, nome: 'Pendente' },\r\n { id: 5, nome: 'Avocado' },\r\n { id: 6, nome: 'Expirado' },\r\n { id: 7, nome: 'Finalizado' },\r\n ];\r\n\r\n optionsTipoUniverso = [\r\n { id: undefined, nome: 'Todos' },\r\n { id: 1, nome: 'Pradonizado' },\r\n { id: 2, nome: 'Não Pradonizado ' },\r\n ];\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private questionarioUGService: QuestionarioUGService,\r\n private router: Router,\r\n private matDialog: MatDialog,\r\n private universoAuditavelService: UniversoAuditavelService,\r\n private sharedService: SharedService\r\n ) {\r\n super();\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n\r\n }\r\n\r\n async ngAfterViewInit() {\r\n this.configurarFiltro();\r\n this.buscar();\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Consultar);\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Excluir);\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.AtivarInativar);\r\n this.permissoes.incluir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Inserir);\r\n this.permissoes.visualizar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Visualizar);\r\n this.permissoes.importar = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Importar);\r\n this.permissoes.imprimir = this.authService.possuiPermissao(EnumRecursoPerfil.QuestionarioMaturidade, EnumAcaoRecurso.Imprimir);\r\n\r\n }\r\n\r\n\r\n\r\n\r\n public editar(id: number) {\r\n if(!this.permissoes.editar){\r\n this.exibirMensagemErro(\"Você não possui permissão para esta ação.\");\r\n return;\r\n }\r\n\r\n this.router.navigate([`/universo-auditavel-form/${id}`]);\r\n }\r\n public excluir(id: number) {\r\n\r\n if(!this.permissoes.excluir){\r\n this.exibirMensagemErro(\"Você não possui permissão para Excluir.\");\r\n return;\r\n }\r\n\r\n this.universoAuditavelService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Universo excluído com sucesso.');\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n public novo() {\r\n if(!this.permissoes.incluir){\r\n this.exibirMensagemErro(\"Você não possui permissão para Incluir.\");\r\n return;\r\n }\r\n this.sharedService.setId(this.filtro.unidadeGestoraId);\r\n this.router.navigate(['tipo-universo-auditavel/novo']);\r\n }\r\n public visualizar(id: number) {\r\n this.router.navigate([`visualizar-universo-auditavel/${id}`]);\r\n }\r\n public imprimir(id: number) {}\r\n\r\n selecionarOpcao(option: any) {\r\n this.filtro.status = option.nome === 'Todos' ? undefined : option.nome;\r\n this.buscar();\r\n }\r\n\r\n isChecked(option: any): boolean {\r\n return option.nome === 'Todos'\r\n ? this.filtro?.status === undefined\r\n : this.filtro?.status === option.nome;\r\n }\r\n handleCheckboxChange(event: MatCheckboxChange, element: any): void {\r\n event.source._inputElement.nativeElement.click();\r\n if(element.arquivoId !== undefined){\r\n this.botaoEditarDisable = true;\r\n }else{\r\n this.botaoEditarDisable = false;\r\n }\r\n this.selectedModel = event.checked ? element : null;\r\n }\r\n\r\n public preencher(id: number, acao:string) {\r\n\r\n const situacaoAtual = this.selectedModel.status;\r\n\r\n const situacoesNaoPermitidas = [\r\n EUniversoAuditavelSituacao[EUniversoAuditavelSituacao.Pendente],\r\n EUniversoAuditavelSituacao[EUniversoAuditavelSituacao.Finalizado]\r\n ];\r\n\r\n if(!situacoesNaoPermitidas.includes(situacaoAtual) && this.selectedModel.ativo === true){\r\n this.router.navigate([`universo-auditavel-preechimento-form`]);\r\n this.sharedService.setParams(this.selectedModel.unidadeGestoraId, id, this.selectedModel.tipoUniversoAuditavelId, acao );\r\n\r\n }else{\r\n this.exibirMensagemAlerta('Universo só pode ser preenchido se estiver com Status diferente de Finalizado ou Pendente e também que esteja ativo.');\r\n }\r\n\r\n }\r\n public solicitar(id: number) {\r\n\r\n const situacoesPermitidas = [\r\n EUniversoAuditavelSituacaoDescricao[EUniversoAuditavelSituacao.EmElaboracao],\r\n EUniversoAuditavelSituacaoDescricao[EUniversoAuditavelSituacao.Avocado]\r\n ];\r\n const situacaoAtual = this.selectedModel.status;\r\n\r\n if(situacoesPermitidas.includes(situacaoAtual) && this.selectedModel.ativo == true){\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-solicitar-preenchimento';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n param1: id\r\n };\r\n\r\n this.currentDialogRef = this.matDialog.open(ModalSolicitarPreenchimentoUniversoComponent, dialogConfig);\r\n this.currentDialogRef.afterClosed().subscribe((data) => {\r\n this.buscar();\r\n });\r\n\r\n }\r\n\r\n\r\n }\r\n public avocar(id: number) {\r\n const situacao = EUniversoAuditavelSituacao.Pendente;\r\n if (this.selectedModel.status === EUniversoAuditavelSituacaoDescricao[situacao] && this.selectedModel.ativo == true){\r\n this.universoAuditavelService.Avocar(id).then(res=>{\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Universo Auditável avocado com sucesso.');\r\n }else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }).catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n }).finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n }\r\n\r\n public avaliar(id: number) {}\r\n public buscar() {\r\n\r\n this.selectedModel = null;\r\n\r\n this.universoAuditavelService.obter(this.filtro).then((res)=>{\r\n this.totalItens = res.dados.totalItens;\r\n // @ts-ignore\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n this.configurarFiltro();\r\n\r\n }).catch((err)=> {\r\n this.exibirMensagemErro(err.mensagem);\r\n });\r\n }\r\n private async configurarFiltro() {\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = this.tableOnePaginator.pageSize;\r\n this.filtro.colunaOrder = this.sort.active;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.direcao = this.sort.direction;\r\n this.filtro.unidadeGestoraId = this.sharedService.getId();\r\n }\r\n public importarArquivo() {\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n router: 'importar-arquivo-universo-auditavel',\r\n unidadeGestora: this.filtro.unidadeGestoraId\r\n };\r\n\r\n const modal = this.matDialog.open(ModalSelecaoTipoUniversoComponent , dialogConfig );\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n this.filtro.pesquisa = data.nome;\r\n this.tipoUniversoId = data.id;\r\n this.tipoUniverso = data.tipo;\r\n }\r\n })\r\n }\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n public isButtonDisabled(): boolean {\r\n // Verifica se existe um modelo selecionado\r\n if (!this.selectedModel) {\r\n return true;\r\n }\r\n\r\n // Verifica as condições adicionais\r\n return !this.selectedModel.ativo ||\r\n !(this.selectedModel.status === 'Em Elaboração' || this.selectedModel.status === 'Avocado' || this.selectedModel.status === 'Em revisão' || this.selectedModel.status === 'Em preenchimento');\r\n }\r\n\r\n public isButtonPreechimentoDisabled(): boolean {\r\n // Verifica se existe um modelo selecionado\r\n if (!this.selectedModel) {\r\n return true;\r\n }\r\n\r\n // Verifica as condições adicionais\r\n return !this.selectedModel.ativo ||\r\n !(this.selectedModel.status === 'Em revisão');\r\n }\r\n\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n\r\n this.buscar();\r\n }\r\n isSelect() {\r\n if (this.selectedModel !== null) {\r\n return !this.selectedModel?.ativo;\r\n }\r\n }\r\n\r\n public isButtonDisabledEditar(): boolean { return true}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Universo Auditável\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n {{ option.nome }}\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n {{ option.nome }}\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n Versão {{element.versao}} Data {{element.dataCriacaoFormatada}} Tipo Universo Auditável {{element.nomeTipoUniversoAuditavel}} Situação {{element.status}} Status \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { BaseListComponent } from \"../../../../shared/components/base-list/base-list.component\";\r\nimport { Component } from \"@angular/core\";\r\nimport { FiltroModel } from \"../../../../models/filtro.model\";\r\nimport { AuthService } from \"../../../../services/auth.service\";\r\nimport { EntendendoEntidadeService } from \"../../../../services/entendendo-entidade.service\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogConfig,\r\n\tMatDialogRef,\r\n} from \"@angular/material/dialog\";\r\nimport { Router } from \"@angular/router\";\r\nimport { SharedService } from \"../../../../services/shared.service\";\r\nimport { TipoUniversoService } from \"../../../../services/tipo-universo.service\";\r\nimport { ModalSelecaoTipoUniversoComponent } from \"../modal-selecao-tipo-universo/modal-selecao-tipo-universo.component\";\r\nimport { UniversoAuditavelService } from \"../../../../services/universo-auditavel.service\";\r\nimport { IUniversoAuditavelModel } from \"../../../../models/universo-auditavel.model\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { FiltroUniversoAuditavel } from \"../../../../models/filtro-universo-auditavel\";\r\nimport { ModalUniversoAuditavelNovaVersaoComponent } from \"../../shared/modal-universo-auditavel-nova-versao/modal-universo-auditavel-nova-versao.component\";\r\nimport { TipoUniversoEnum } from \"../../../../models/enum/tipo-universo.enum\";\r\n\r\n@Component({\r\n\tselector: \"app-gerar-universo-auditavel\",\r\n\ttemplateUrl: \"./gerar-universo-auditavel.component.html\",\r\n\tstyleUrls: [\"./gerar-universo-auditavel.component.scss\"],\r\n})\r\nexport class GerarUniversoAuditavelComponent extends BaseListComponent {\r\n\tpublic filtro = {} as FiltroUniversoAuditavel;\r\n\tunidadeGestoraId: number;\r\n\ttipoUniversoId: number;\r\n\ttipoUniverso: number;\r\n\tpublic dataSource: any[] = [];\r\n\tprivate currentDialogRef: MatDialogRef;\r\n\r\n\tconstructor(\r\n\t\tprivate authService: AuthService,\r\n\t\tprivate universoAuditavelService: UniversoAuditavelService,\r\n\t\tprivate tipoUniversoService: TipoUniversoService,\r\n\t\tprivate matDialog: MatDialog,\r\n\t\tprivate router: Router,\r\n\t\tprivate sharedService: SharedService\r\n\t) {\r\n\t\tsuper();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.filtro.unidadeGestoraId = this.sharedService.getId();\r\n\t\tthis.unidadeGestoraId = this.sharedService.getId();\r\n\t\tthis.buscar();\r\n\t}\r\n\r\n\tpublic buscar() {\r\n\t\tthis.universoAuditavelService\r\n\t\t\t.obter(this.filtro)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.dataSource = res.dados.resultado;\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem);\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic buscarTipoUniversoAuditavel() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component\";\r\n\t\tdialogConfig.width = \"650px\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalSelecaoTipoUniversoComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\r\n\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tthis.filtro.pesquisa = data.nome;\r\n\t\t\t\tthis.tipoUniversoId = data.id;\r\n\t\t\t\tthis.tipoUniverso = data.tipo;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic cancelar() {\r\n\t\tthis.router.navigateByUrl(\r\n\t\t\t`/unidades-gestoras/${this.filtro.unidadeGestoraId}?aba=3`\r\n\t\t);\r\n\t}\r\n\r\n\tpublic async verificaCriacao() {\r\n\t\tconst itemExiste = this.dataSource.filter(\r\n\t\t\t(item) => item.nomeTipoUniversoAuditavel === this.filtro.pesquisa\r\n\t\t);\r\n\t\tif (this.tipoUniverso === TipoUniversoEnum.NaoPadronizado) {\r\n\t\t\tconst retorno = await this.tipoUniversoService.obterPorId(\r\n\t\t\t\tthis.tipoUniversoId\r\n\t\t\t);\r\n\t\t\tif (retorno.sucesso) {\r\n\t\t\t\tconst verificaUG = retorno.dados.ugs.filter(\r\n\t\t\t\t\t(res) => res.idUG === this.unidadeGestoraId\r\n\t\t\t\t);\r\n\t\t\t\tif (verificaUG.length === 0) {\r\n\t\t\t\t\tthis.exibirMensagemAlerta(\r\n\t\t\t\t\t\t\"Unidade Gestora não cadastrada no Tipo de Universo Não-Padronizado selecionado!\"\r\n\t\t\t\t\t);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (itemExiste.length > 0) {\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.id = \"modal-component\";\r\n\t\t\tdialogConfig.width = \"650px\";\r\n\t\t\tdialogConfig.hasBackdrop = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.data = {\r\n\t\t\t\tsource: \"novo\",\r\n\t\t\t\tunidadeGestoraId: this.unidadeGestoraId,\r\n\t\t\t\ttipoUniversoId: this.tipoUniversoId,\r\n\t\t\t\ttipoUniverso: this.tipoUniverso,\r\n\t\t\t};\r\n\t\t\tthis.currentDialogRef = this.matDialog.open(\r\n\t\t\t\tModalUniversoAuditavelNovaVersaoComponent,\r\n\t\t\t\tdialogConfig\r\n\t\t\t);\r\n\t\t\tthis.currentDialogRef.afterClosed().subscribe((data) => {\r\n\t\t\t\tthis.buscar();\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.gerarUniversoAuditavel();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async verificaTipoNaoPadronizado() {\r\n\t\tconst item = await this.tipoUniversoService.obterPorId(\r\n\t\t\tthis.tipoUniversoId\r\n\t\t);\r\n\r\n\t\tif (item.sucesso) {\r\n\t\t\tconst verificaUG = item.dados.ugs.filter(\r\n\t\t\t\t(res) => res.idUG === this.unidadeGestoraId\r\n\t\t\t);\r\n\r\n\t\t\tif (verificaUG.length > 1) {\r\n\t\t\t\treturn true;\r\n\t\t\t} else {\r\n\t\t\t\tthis.exibirMensagemAlerta(\r\n\t\t\t\t\t\"Unidade Gestora não cadastrada no Tipo de Universo Não-Padronizado selecionado!\"\r\n\t\t\t\t);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tpublic gerarUniversoAuditavel() {\r\n\t\tif (!this.tipoUniversoId || this.tipoUniversoId == 0) {\r\n\t\t\tthis.exibirMensagemErro(\"Informe um tipo de Universo Auditável\");\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tlet params: IUniversoAuditavelModel = {\r\n\t\t\tunidadeGestoraId: this.unidadeGestoraId,\r\n\t\t\ttipoUniversoAuditavelId: this.tipoUniversoId,\r\n\t\t};\r\n\r\n\t\tthis.universoAuditavelService\r\n\t\t\t.inserir(params)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.router.navigateByUrl(\r\n\t\t\t\t\t\t`/unidades-gestoras/${this.unidadeGestoraId}?aba=3`\r\n\t\t\t\t\t);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.exibirMensagemAlerta(res.mensagem.descricao);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.exibirMensagemErro(err.mensagem);\r\n\t\t\t});\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Universo Auditável\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { BaseFormComponent } from \"../../../../shared/components/base-form/base-form.component\";\r\nimport { Component, OnInit } from \"@angular/core\";\r\nimport { FiltroModel } from \"../../../../models/filtro.model\";\r\nimport { AuthService } from \"../../../../services/auth.service\";\r\nimport { EntendendoEntidadeService } from \"../../../../services/entendendo-entidade.service\";\r\nimport { QuestionarioUGRespostaService } from \"../../../../services/questionarioug-resposta.service\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { SharedService } from \"../../../../services/shared.service\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { TipoUniversoService } from \"../../../../services/tipo-universo.service\";\r\nimport { UniversoAuditavelService } from \"../../../../services/universo-auditavel.service\";\r\nimport { IArquivoModel } from \"../../../../models/arquivo.model\";\r\nimport Swal from \"sweetalert2\";\r\n\r\n\r\n@Component({\r\n selector: 'app-importar-arquivo-universo-auditavel',\r\n templateUrl: './importar-arquivo-universo-auditavel.component.html',\r\n styleUrls: ['./importar-arquivo-universo-auditavel.component.scss']\r\n})\r\nexport class ImportarArquivoUniversoAuditavelComponent extends BaseFormComponent implements OnInit{\r\n public filtro = {} as FiltroModel;\r\n\r\n tipoUniversoId:number;\r\n unidadeGestoraId:number;\r\n searchTerm: string = '';\r\n nomeTipoUniverso: string = '';\r\n arquivo: File | null = null;\r\n arquivoUrl: string;\r\n nomeArquivo: string;\r\n errorMessage: string | null = null;\r\n botaoEncerrarHabilitado: boolean = true;\r\n constructor(\r\n private authService: AuthService,\r\n private tipoUniversoService: TipoUniversoService,\r\n private universoAuditavelService: UniversoAuditavelService,\r\n matDialog: MatDialog,\r\n router: Router,\r\n private sharedService: SharedService,\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n localeService: BsLocaleService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.unidadeGestoraId = this.route.snapshot.queryParams['unidadeGestoraId']\r\n this.tipoUniversoId = this.route.snapshot.queryParams['tipoUniversoId']\r\n\r\n this.buscarTipoUniverso();\r\n this.downloadAnexo();\r\n }\r\n\r\n public buscarTipoUniverso(){\r\n\r\n if(this.tipoUniversoId !== null){\r\n this.tipoUniversoService.obterPorId(this.tipoUniversoId).then(res =>{\r\n if(res.sucesso){\r\n this.nomeTipoUniverso = res.dados.nome;\r\n }else{\r\n this.exibirMensagemAlerta('Tipo não encontrado!');\r\n }\r\n })\r\n }\r\n }\r\n\r\n\r\n onFileSelected(event: any): void {\r\n const file: File = event.target.files[0];\r\n if (file) {\r\n // Verifica se a extensão do arquivo é PDF\r\n const fileExtension = file.name.split('.').pop()?.toLowerCase();\r\n if (fileExtension !== 'pdf') {\r\n // Emite um aviso caso a extensão não seja PDF\r\n this.errorMessage = 'Por favor, selecione um arquivo PDF!';\r\n this.arquivo = null; // Reseta o arquivo selecionado\r\n } else {\r\n this.arquivo = file;\r\n this.errorMessage = null;\r\n }\r\n }\r\n }\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=3`);\r\n }\r\n\r\n enviarArquivo(): void {\r\n\r\n if (this.arquivo) {\r\n const arquivoModel: IArquivoModel = {\r\n id: 0,\r\n nomeArquivo: this.arquivo.name,\r\n entidadeArquivo: 1,\r\n arquivo: this.arquivo,\r\n url: ''\r\n };\r\n\r\n\r\n\r\n this.universoAuditavelService.enviarArquivo(this.unidadeGestoraId, this.tipoUniversoId , arquivoModel).then(\r\n (response) => {\r\n this.downloadAnexo();\r\n this.exibirMensagemSucesso('Arquivo importado com sucesso');\r\n // this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=1`);\r\n },\r\n (error) => {\r\n this.exibirMensagemErro(error.mensagem.descricao);\r\n }\r\n );\r\n }\r\n }\r\n\r\n search(): void {\r\n console.log('Searching for:', this.searchTerm);\r\n // Implementar lógica de pesquisa aqui\r\n }\r\n\r\n finalizarAvaliacao(): void {\r\n console.log('Avaliação finalizada');\r\n // Implementar lógica de finalização aqui\r\n }\r\n\r\n cancelar(): void {\r\n console.log('Operação cancelada');\r\n // Implementar lógica de cancelamento aqui\r\n }\r\n\r\n\r\n onEncerrarAvaliacao(){\r\n Swal.fire({\r\n title: 'Atenção',\r\n text: \"Esta ação não poderá ser desfeita! Deseja continuar? \",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n console.log(this.tipoUniversoId);\r\n console.log(this.unidadeGestoraId);\r\n if (res.value) {\r\n this.universoAuditavelService.encerrarUniversoImportacaoArquivo(this.unidadeGestoraId, this.tipoUniversoId)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=3`);\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n\r\n }\r\n })}\r\n\r\n downloadAnexo(): void {\r\n this.universoAuditavelService.DownloadArquivo(this.unidadeGestoraId, this.tipoUniversoId).then(res=> {\r\n if(res.sucesso && res.dados !== undefined){\r\n this.arquivoUrl = res.dados.url;\r\n this.nomeArquivo = res.dados.nomeArquivo;\r\n if (res.dados.id) {\r\n this.botaoEncerrarHabilitado = false; // Habilita o botão\r\n }\r\n }else{\r\n return;\r\n }\r\n });\r\n }\r\n}\r\n","\r\n\r\n\r\n
\r\n \r\n \r\n Encerrar Avaliação\r\n \r\n
\r\n","import { BaseFormComponent } from \"../../../../shared/components/base-form/base-form.component\";\r\nimport { AfterViewInit, Component, EventEmitter, Inject, OnInit, Output, ViewChild } from \"@angular/core\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { FiltroModel } from \"../../../../models/filtro.model\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogConfig, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { TipoUniversoService } from \"../../../../services/tipo-universo.service\";\r\nimport { ITipoUniversoModel } from \"../../../../models/tipo-universo.model\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { defaultDataAcessor } from \"../../../../core/helpers/mat-sort-data-accessor\";\r\nimport { IFiltroTipoUniverso } from \"../../../../models/filtros/filtro-tipo-universo.model\";\r\nimport { IModeloQuestionarioModel } from \"../../../../models/modelo-questionario.model\";\r\nimport { IUniversoAuditavelModel } from \"../../../../models/universo-auditavel.model\";\r\nimport { UniversoAuditavelService } from \"../../../../services/universo-auditavel.service\";\r\nimport { FiltroUniversoAuditavel } from \"../../../../models/filtro-universo-auditavel\";\r\nimport { MatCheckboxChange } from \"@angular/material/checkbox\";\r\nimport {\r\n ModalUniversoAuditavelImportacaoComponent\r\n} from \"../../shared/modal-universo-auditavel-importacao/modal-universo-auditavel-importacao.component\";\r\nimport {\r\n ModalUniversoAuditavelNovaVersaoComponent\r\n} from \"../../shared/modal-universo-auditavel-nova-versao/modal-universo-auditavel-nova-versao.component\";\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-selecao-tipo-universo',\r\n templateUrl: './modal-selecao-tipo-universo.component.html',\r\n styleUrls: ['./modal-selecao-tipo-universo.component.scss']\r\n})\r\nexport class ModalSelecaoTipoUniversoComponent extends BaseFormComponent implements AfterViewInit, OnInit{\r\n @ViewChild('TableOnePaginator', { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n @Output() nomeSelecionado = new EventEmitter();\r\n public filtro = {} as IFiltroTipoUniverso;\r\n public filtroUniverso = {} as FiltroUniversoAuditavel;\r\n public selecionado: ITipoUniversoModel;\r\n public totalItens: number;\r\n public pageEvent: any;\r\n public tipoUniversoId: number;\r\n public tipoUniverso: number;\r\n public displayedColumns: string[] = ['selecao', 'nome'];\r\n public semDados = true;\r\n public dataSource = new MatTableDataSource([]);\r\n private currentDialogRef: MatDialogRef;\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private tipoUniversoService: TipoUniversoService,\r\n private universoService: UniversoAuditavelService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.dataSource.paginator = this.paginator;\r\n this.paginator.pageSize = 10;\r\n this.filtro.ativo = true;\r\n this.filtro.itensPorPagina = this.paginator.pageSize;\r\n this.buscarTipoUniverso();\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.filtro.ativo = true;\r\n // this.filtro.itensPorPagina = this.paginator.pageSize;\r\n // console.log(this.filtro.itensPorPagina);\r\n // this.buscarTipoUniverso();\r\n }\r\n\r\n public async concluir() {\r\n if(this.data !== null){\r\n this.filtroUniverso.unidadeGestoraId = this.data.unidadeGestora;\r\n this.filtroUniverso.tipoUniversoAuditavelId = this.tipoUniversoId;\r\n this.filtroUniverso.ativo = true;\r\n\r\n const retorno = await this.universoService.obter(this.filtroUniverso);\r\n\r\n if(retorno.dados.resultado.length > 0){\r\n this.dialogRef.close();\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component-importar';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n source: 'importar-universo-auditavel-novo',\r\n unidadeGestoraId: this.filtroUniverso.unidadeGestoraId,\r\n tipoUniversoId: this.tipoUniversoId,\r\n tipoUniverso: this.tipoUniverso,\r\n\r\n };\r\n const modal= this.matDialog.open(ModalUniversoAuditavelImportacaoComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n\r\n });\r\n }else{\r\n this.router.navigate(['/importar-arquivo-universo-auditavel/novo'], { queryParams: { unidadeGestoraId: this.filtroUniverso.unidadeGestoraId, tipoUniversoId: this.tipoUniversoId } });\r\n this.dialogRef.close(this.selecionado);\r\n }\r\n }else{\r\n this.dialogRef.close(this.selecionado);\r\n }\r\n\r\n }\r\n\r\n public buscarTipoUniverso(){\r\n this.tipoUniversoService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.totalItens = res.dados.totalItens;\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n }).catch((err) => {\r\n this.exibirMensagemErro(err);\r\n });\r\n }\r\n public selecionar(item: ITipoUniversoModel) {\r\n this.selecionado = !this.selecionado || this.selecionado.id !== item.id ? item : null;\r\n this.tipoUniversoId = item.id;\r\n this.tipoUniverso = item.tipo;\r\n }\r\n\r\n onCheckboxChange(event: MatCheckboxChange, element: any){\r\n if (event.checked){\r\n this.selecionado = !this.selecionado || this.selecionado.id !== element.id ? element : null;\r\n this.nomeSelecionado = element.nome;\r\n this.tipoUniversoId = element.id;\r\n this.tipoUniverso = element.tipo;\r\n }\r\n }\r\n\r\n public filtrar(event: Event){\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscarTipoUniverso();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Selecionar Tipo Universo

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n Nome\r\n \r\n {{element.nome}} Tipo entrada\r\n \r\n {{element.tipoEntrada.descricao}} Obrigatório \r\n \r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { EntendendoEntidadeService } from \"../../../../services/entendendo-entidade.service\";\r\nimport { SharedService } from \"../../../../services/shared.service\";\r\nimport { UniversoAuditavelService } from \"../../../../services/universo-auditavel.service\";\r\n\r\n@Component({\r\n selector: 'app-modal-solicitar-preenchimento',\r\n templateUrl: './modal-solicitar-preenchimento.component.html',\r\n styleUrls: ['./modal-solicitar-preenchimento.component.scss']\r\n})\r\nexport class ModalSolicitarPreenchimentoUniversoComponent implements OnInit{\r\n\r\n prazoDias: number;\r\n UniversoAuditavelId: number;\r\n\r\n constructor(\r\n private router: Router,\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n private universoAuditavelService: UniversoAuditavelService,\r\n private sharedService: SharedService,\r\n private dialogRef: MatDialogRef\r\n\r\n ) { }\r\n\r\n ngOnInit(): void {}\r\n public cancelar(){\r\n this.dialogRef.close();\r\n }\r\n\r\n public concluir(){\r\n this.universoAuditavelService\r\n .solicitarPreenchimentoQuestionario(this.data.param1, this.prazoDias)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n // aqui chamar o pagina principal\r\n this.dialogRef.close();\r\n } else {\r\n // this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n // this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n // this.buscar();\r\n });\r\n }\r\n\r\n public onChangePreencherPrazo(event){\r\n this.prazoDias = event.target.value;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Prazo para Preenchimento

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n","import { BaseFormComponent } from \"../../../../shared/components/base-form/base-form.component\";\r\nimport { Component, OnInit } from \"@angular/core\";\r\nimport { AuthService } from \"../../../../services/auth.service\";\r\nimport { QuestionarioUGService } from \"../../../../services/questionarioug.service\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { MatDialog, MatDialogConfig } from \"@angular/material/dialog\";\r\nimport { UniversoAuditavelService } from \"../../../../services/universo-auditavel.service\";\r\nimport { SharedService } from \"../../../../services/shared.service\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport {\r\n ITipoUniversoItemModel,\r\n ITipoUniversoModel,\r\n ITipoUniversoUGModel\r\n} from \"../../../../models/tipo-universo.model\";\r\nimport { TipoUniversoService } from \"../../../../services/tipo-universo.service\";\r\nimport { IUniversoAuditavelModel } from \"../../../../models/universo-auditavel.model\";\r\nimport {\r\n ModalTipoUniversoItemDescricaoComponent\r\n} from \"../../../tipo-universo-form/modal-tipo-universo-item/modal-tipo-universo-item-descricao/modal-tipo-universo-item-descricao.component\";\r\nimport { moveItemInArray } from \"@angular/cdk/drag-drop\";\r\nimport Swal from \"sweetalert2\";\r\nimport { ModalCancelarComponent } from \"../../../../shared/components/modal-cancelar/modal-cancelar-component\";\r\n\r\n\r\n@Component({\r\n selector: 'app-universo-auditavel-form',\r\n templateUrl: './universo-auditavel-form.component.html',\r\n styleUrls: ['./universo-auditavel-form.component.scss']\r\n})\r\n\r\nexport class UniversoAuditavelFormComponent extends BaseFormComponent implements OnInit{\r\n\r\n\r\n public modelTipoUniverso : ITipoUniversoModel = {} as ITipoUniversoModel;\r\n public modelUniversoAuditavel : IUniversoAuditavelModel = {} as IUniversoAuditavelModel;\r\n public modelTipoUniversoItens : ITipoUniversoUGModel = {} as ITipoUniversoUGModel;\r\n public id: number;\r\n public unidadeGestora: number;\r\n public idTipoUniverso: number;\r\n public semDados: boolean;\r\n public titulo: string;\r\n public tipoDescription = \"\";\r\n public nomeUG: string[] = [];\r\n public idClassificacaoTipo: number;\r\n public alterou: boolean;\r\n\r\n\r\n constructor(\r\n private authService: AuthService,\r\n public matDialog: MatDialog,\r\n private universoAuditavelService: UniversoAuditavelService,\r\n private tipoUniversoService: TipoUniversoService,\r\n private sharedService: SharedService,\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n const id = this.route.snapshot.paramMap.get(\"id\");\r\n this.id = parseInt(id,10);\r\n }\r\n async ngOnInit() {\r\n\r\n if(this.id){\r\n const res = await this.universoAuditavelService.obterPorId(this.id);\r\n if(res.sucesso){\r\n this.modelUniversoAuditavel = res.dados;\r\n this.unidadeGestora = this.modelUniversoAuditavel.unidadeGestoraId;\r\n this.idTipoUniverso = this.modelUniversoAuditavel.tipoUniversoAuditavelId;\r\n\r\n }\r\n\r\n this.buscarTipoUniverso(this.idTipoUniverso);\r\n }\r\n }\r\n\r\n public async buscarTipoUniverso(idTipo:number){\r\n const res = await this.tipoUniversoService.obterPorId(idTipo);\r\n if(res.sucesso){\r\n this.modelTipoUniverso = res.dados;\r\n\r\n this.titulo = 'Editar Mapeamento Universo Auditável ' + this.modelTipoUniverso.nome;\r\n this.tipoDescription = res.dados.tipoDescription;\r\n this.idClassificacaoTipo = res.dados.tipo;\r\n }\r\n this.buscarItens(this.idTipoUniverso, this.unidadeGestora);\r\n }\r\n public async buscarItens(idTipoUniverso: number, idUG: number){\r\n\r\n if(idTipoUniverso){\r\n\r\n const res = await this.tipoUniversoService.obterItens(idTipoUniverso, idUG);\r\n if(res.sucesso){\r\n this.modelTipoUniversoItens = res.dados;\r\n this.semDados = this.modelTipoUniversoItens.itens.length == 0;\r\n if(this.semDados){\r\n this.novoRegistro = true;\r\n }else{\r\n this.novoRegistro = false;\r\n }\r\n this.reordenar();\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n\r\n }\r\n }\r\n\r\n public exibirModalItemNovo(element: any, indx: string){\r\n\r\n\r\n let item = {} as ITipoUniversoItemModel;\r\n item.id = element?.id ?? 0;\r\n item.idItemPai = element?.idItemPai ?? 0;\r\n item.idTipoUniversoAuditavel = element?.idTipoUniversoAuditavel ?? this.modelTipoUniversoItens.idTipoUniversoAuditavel;\r\n item.idUG = element?.idUG ?? this.modelTipoUniversoItens.idUG;\r\n item.nome = element?.nome ?? \"\";\r\n item.tipo = element?.tipo ?? 1;\r\n\r\n let arrayIndices = JSON.parse(\"[\" + indx + \"]\");\r\n\r\n if(arrayIndices.length == 1 && arrayIndices[0] == null){\r\n\r\n item.tipo = 1;\r\n item.tipoDescription = element?.tipoDescription ?? \"SubTipo\";\r\n\r\n }else if(arrayIndices.length == 1 && arrayIndices[0] != null){\r\n\r\n item.tipo = 2;\r\n item.tipoDescription = element?.tipoDescription ?? \"Macroprocesso\";\r\n\r\n }else if(arrayIndices.length == 2){\r\n\r\n item.tipo = 3;\r\n item.tipoDescription = element?.tipoDescription ?? \"Processo\";\r\n\r\n }\r\n\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-descricao';\r\n dialogConfig.width = '450px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n item: item,\r\n indx: indx\r\n };\r\n\r\n const modal = this.matDialog.open(ModalTipoUniversoItemDescricaoComponent, dialogConfig);\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n\r\n let novoItem = data.item as ITipoUniversoItemModel;\r\n\r\n //NÃO HAVENDO ÍNDICE, ADICIONA-SE NO ITEM RAIZ\r\n if(!data.indx){\r\n\r\n if(this.existeNomeMesmoNivel(this.modelTipoUniversoItens.itens, novoItem.nome)){\r\n this.exibirMensagemErro(\"Já existe SubTipo com este nome.\");\r\n return;\r\n }\r\n\r\n novoItem.tipo = 1;\r\n novoItem.tipoDescription=\"SubTipo\";\r\n if(!this.modelTipoUniversoItens.itens){\r\n this.modelTipoUniversoItens.itens = [] as ITipoUniversoItemModel[];\r\n }\r\n this.modelTipoUniversoItens.itens.push(novoItem);\r\n this.alterou = true;\r\n this.reordenar();\r\n return;\r\n }\r\n\r\n //indx recebe os índices da hierarquia da árvore:\r\n //0 -> nível 1\r\n //0,0 -> nível 2\r\n //0,0,0 -> nível 3\r\n\r\n let arrayIndices = JSON.parse(\"[\" + data.indx + \"]\");\r\n\r\n if(arrayIndices.length == 1){\r\n\r\n if(this.existeNomeMesmoNivel(this.modelTipoUniversoItens.itens[arrayIndices[0]].itens, novoItem.nome)){\r\n this.exibirMensagemErro(\"Já existe Macroprocesso com este nome.\");\r\n return;\r\n }\r\n\r\n novoItem.tipo = 2;\r\n novoItem.tipoDescription = \"Macroprocesso\";\r\n\r\n if(!this.modelTipoUniversoItens.itens[arrayIndices[0]].itens){\r\n this.modelTipoUniversoItens.itens[arrayIndices[0]].itens = [] as ITipoUniversoItemModel[];\r\n }\r\n\r\n this.modelTipoUniversoItens.itens[arrayIndices[0]].itens.push(novoItem);\r\n\r\n }else if(arrayIndices.length == 2){\r\n\r\n if(this.existeNomeMesmoNivel(this.modelTipoUniversoItens.itens[arrayIndices[0]].itens[arrayIndices[1]].itens, novoItem.nome)){\r\n this.exibirMensagemErro(\"Já existe Macroprocesso com este nome.\");\r\n return;\r\n }\r\n\r\n novoItem.tipo = 3;\r\n novoItem.tipoDescription = \"Processo\";\r\n\r\n if(!this.modelTipoUniversoItens.itens[arrayIndices[0]].itens[arrayIndices[1]].itens){\r\n this.modelTipoUniversoItens.itens[arrayIndices[0]].itens[arrayIndices[1]].itens = [] as ITipoUniversoItemModel[];\r\n }\r\n\r\n this.modelTipoUniversoItens.itens[arrayIndices[0]].itens[arrayIndices[1]].itens.push(novoItem);\r\n\r\n }\r\n this.alterou = true;\r\n this.reordenar();\r\n }\r\n })\r\n\r\n }\r\n public cancelar() {\r\n\r\n if(this.alterou){\r\n const dialogConfig = new MatDialogConfig();\r\n\r\n const modal = this.matDialog.open(ModalCancelarComponent, dialogConfig);\r\n modal.afterClosed().subscribe((resultado) => {\r\n if (resultado == true) {\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestora}?aba=3`);\r\n\r\n }\r\n });\r\n }else{\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestora}?aba=3`);\r\n\r\n }\r\n\r\n }\r\n\r\n retornoAbaUnidade(){\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestora}?aba=3`);\r\n }\r\n\r\n public async concluir(salvarEFechar: boolean){\r\n this.submit = true;\r\n\r\n if(this.novoRegistro){\r\n\r\n if(!this.modelTipoUniversoItens.itens || this.modelTipoUniversoItens.itens.length == 0){\r\n this.exibirMensagemErro(\"É necessário incluir pelo menos 1 subtipo para salvar.\")\r\n return;\r\n }\r\n\r\n if(this.idClassificacaoTipo == 2 && !this.modelTipoUniversoItens.idUG){\r\n return;\r\n }\r\n\r\n this.tipoUniversoService.inserirItens(this.modelTipoUniversoItens)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.alterou = false;\r\n if(salvarEFechar){\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestora}?aba=3`);\r\n }else{\r\n this.modelTipoUniversoItens = res.dados;\r\n this.novoRegistro = false;\r\n }\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(err => this.exibirMensagemErro(err))\r\n\r\n }else{\r\n\r\n this.tipoUniversoService.atualizarItens(this.modelTipoUniversoItens)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.alterou = false;\r\n if(salvarEFechar){\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestora}?aba=3`);\r\n }\r\n\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(err => this.exibirMensagemErro(err))\r\n\r\n }\r\n\r\n }\r\n private existeNomeMesmoNivel(itens: ITipoUniversoItemModel[], nome: string){\r\n return itens && itens.find(item => item.nome.toUpperCase() == nome.toUpperCase());\r\n }\r\n\r\n public reordenar(){\r\n this.modelTipoUniversoItens.itens.forEach((item, idx) => {\r\n item.ordem = (idx + 1);\r\n item.ordemExibicao = `1.${item.ordem.toString()}`;\r\n if(item.itens && item.itens.length > 0){\r\n this.fnReordenacao(item);\r\n }\r\n });\r\n }\r\n public fnReordenacao(item: ITipoUniversoItemModel){\r\n item.itens.forEach((subItem, subIdx) => {\r\n\r\n subItem.ordem = subIdx + 1;\r\n subItem.ordemExibicao = `${item.ordemExibicao}.${subItem.ordem.toString()}`\r\n if(subItem.itens && subItem.itens.length > 0){\r\n this.fnReordenacao(subItem);\r\n }\r\n });\r\n }\r\n\r\n public exibirModalItemEditar(element: ITipoUniversoItemModel, indx: string){\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-descricao';\r\n dialogConfig.width = '450px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n item: element,\r\n indx: indx\r\n };\r\n\r\n const modal = this.matDialog.open(ModalTipoUniversoItemDescricaoComponent, dialogConfig);\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n\r\n let novoItem = data.item as ITipoUniversoItemModel;\r\n let arrayIndices = JSON.parse(\"[\" + data.indx + \"]\");\r\n\r\n if(arrayIndices.length == 1){\r\n\r\n this.modelTipoUniversoItens.itens[arrayIndices[0]].nome = novoItem.nome;\r\n\r\n }else if(arrayIndices.length == 2){\r\n\r\n this.modelTipoUniversoItens.itens[arrayIndices[0]].itens[arrayIndices[1]].nome = novoItem.nome;\r\n\r\n }else if(arrayIndices.length == 2){\r\n\r\n this.modelTipoUniversoItens.itens[arrayIndices[0]].itens[arrayIndices[1]].itens[arrayIndices[2]].nome = novoItem.nome;\r\n\r\n }\r\n\r\n this.alterou = true;\r\n\r\n })\r\n\r\n }\r\n\r\n public excluirItem(element: any, indx: string){\r\n\r\n Swal.fire({\r\n title: 'Excluir item',\r\n text: `Deseja realmente excluir este item?`,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(resConfirm => {\r\n if (resConfirm.isConfirmed) {\r\n\r\n let arrayIndices = JSON.parse(\"[\" + indx + \"]\");\r\n\r\n if(arrayIndices.length == 1){\r\n this.modelTipoUniversoItens.itens.splice(arrayIndices[0], 1);\r\n }else if(arrayIndices.length == 2){\r\n this.modelTipoUniversoItens.itens[arrayIndices[0]].itens.splice(arrayIndices[1], 1);\r\n }else if (arrayIndices.length == 3){\r\n this.modelTipoUniversoItens.itens[arrayIndices[0]].itens[arrayIndices[1]].itens.splice(arrayIndices[2], 1);\r\n }\r\n\r\n this.alterou = true;\r\n this.reordenar();\r\n\r\n }else{\r\n }\r\n });\r\n\r\n\r\n }\r\n\r\n\r\n public moveUp(element: any, indx: string){\r\n let arrayIndices = JSON.parse(\"[\" + indx + \"]\");\r\n\r\n if(arrayIndices.length == 1){\r\n\r\n if((arrayIndices[0]) == 0)\r\n return;\r\n\r\n moveItemInArray(this.modelTipoUniversoItens.itens, arrayIndices[0], arrayIndices[0]-1)\r\n\r\n }else if(arrayIndices.length == 2){\r\n\r\n if((arrayIndices[1]) == 0)\r\n return;\r\n\r\n moveItemInArray(this.modelTipoUniversoItens.itens[arrayIndices[0]].itens, arrayIndices[1], arrayIndices[1]-1)\r\n\r\n }else{\r\n if((arrayIndices[2]) == 0)\r\n return;\r\n\r\n moveItemInArray(this.modelTipoUniversoItens.itens[arrayIndices[0]].itens[arrayIndices[1]].itens, arrayIndices[2], arrayIndices[2]-1)\r\n }\r\n\r\n this.alterou = true;\r\n this.reordenar();\r\n }\r\n\r\n public moveDown(element: any, indx: string){\r\n\r\n let arrayIndices = JSON.parse(\"[\" + indx + \"]\");\r\n\r\n if(arrayIndices.length == 1){\r\n\r\n if((arrayIndices[0]) == this.modelTipoUniversoItens.itens.length -1)\r\n return;\r\n\r\n moveItemInArray(this.modelTipoUniversoItens.itens, arrayIndices[0], arrayIndices[0]+1)\r\n\r\n }else if(arrayIndices.length == 2){\r\n\r\n if((arrayIndices[1]) == this.modelTipoUniversoItens.itens[arrayIndices[0]].itens.length -1)\r\n return;\r\n\r\n moveItemInArray(this.modelTipoUniversoItens.itens[arrayIndices[0]].itens, arrayIndices[1], arrayIndices[1]+1)\r\n\r\n }else{\r\n if((arrayIndices[2]) == this.modelTipoUniversoItens.itens[arrayIndices[0]].itens[arrayIndices[1]].itens.length -1)\r\n return;\r\n\r\n moveItemInArray(this.modelTipoUniversoItens.itens[arrayIndices[0]].itens[arrayIndices[1]].itens, arrayIndices[2], arrayIndices[2]+1)\r\n }\r\n\r\n this.alterou = true;\r\n this.reordenar();\r\n\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Universo auditável\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Classificação do Tipo\r\n
\r\n \r\n
\r\n
\r\n
\r\n Unidade Gestora\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n Adicionar Subtipo\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n\r\n
#NomeTipo EntradaAções
\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n
\r\n\r\n {{ subTipo?.ordemExibicao }}\r\n
\r\n \r\n \r\n {{ subTipo?.nome }} \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n {{ subTipo?.tipoDescription }}\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n\r\n 0\">\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n Nenhum item cadastrado\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n","import { BaseFormComponent } from \"../../../../shared/components/base-form/base-form.component\";\r\nimport { ChangeDetectorRef, Component, OnInit } from \"@angular/core\";\r\nimport { SharedService } from \"../../../../services/shared.service\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { TipoUniversoService } from \"../../../../services/tipo-universo.service\";\r\nimport { UniversoAuditavelService } from \"../../../../services/universo-auditavel.service\";\r\nimport { AuthService } from \"../../../../services/auth.service\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport {\r\n IUniversoAuditavelItemRespostaModel,\r\n IUniversoAuditavelModel\r\n} from \"../../../../models/universo-auditavel.model\";\r\nimport {\r\n ITipoUniversoItemModel,\r\n ITipoUniversoModel,\r\n ITipoUniversoUGModel\r\n} from \"../../../../models/tipo-universo.model\";\r\nimport { UniversoAuditavelItemRespostaService } from \"../../../../services/universo-auditavel-item-resposta.service\";\r\nimport { TipoUniversoEnum } from \"../../../../models/enum/tipo-universo.enum\";\r\nimport { UnidadeGestoraService } from \"../../../../services/unidade-gestora.service\";\r\nimport { FormBuilder, FormGroup } from \"@angular/forms\";\r\nimport Swal from \"sweetalert2\";\r\nimport {\r\n EUniversoAuditavelSituacao,\r\n EUniversoAuditavelSituacaoDescricao\r\n} from \"../../../../models/enum/universo-auditavel-situacao\";\r\n\r\n\r\n@Component({\r\n selector: 'app-universo-auditavel-preechimento-form',\r\n templateUrl: './universo-auditavel-preechimento-form.component.html',\r\n styleUrls: ['./universo-auditavel-preechimento-form.component.scss']\r\n})\r\nexport class UniversoAuditavelPreechimentoFormComponent extends BaseFormComponent implements OnInit{\r\n\r\n public titulo: string;\r\n public modelUniversoAuditavel : IUniversoAuditavelModel = {} as IUniversoAuditavelModel;\r\n public modelTipoUniverso : ITipoUniversoModel = {} as ITipoUniversoModel;\r\n public modelTipoUniversoItens : ITipoUniversoUGModel = {} as ITipoUniversoUGModel;\r\n public semDados: boolean;\r\n public respostaItens: IUniversoAuditavelItemRespostaModel[] = [];\r\n\r\n public dropdownData: { value: string, text: string , unidade: string}[] = [];\r\n formGroup: FormGroup;\r\n criteriosResposta: { [key: string]: IUniversoAuditavelItemRespostaModel[] } = {};\r\n errorMessage: string | null = null;\r\n errorMessageForm: boolean = false;\r\n unidadeSelecionada: string = '';\r\n unidadeGestora: number;\r\n universoAuditavel: number;\r\n tipoUniversoAuditavel: number;\r\n indicadorId: number;\r\n selectedDropdownValue: string = '';\r\n unidadeGestoraNome: string = '';\r\n acao: string = '';\r\n submitted = false;\r\n habilitaBotaoFinalizar: boolean = false;\r\n\r\n\r\n constructor(\r\n private authService: AuthService,\r\n public matDialog: MatDialog,\r\n private universoAuditavelService: UniversoAuditavelService,\r\n private tipoUniversoService: TipoUniversoService,\r\n private universoAuditavelItemRespostaService: UniversoAuditavelItemRespostaService,\r\n private sharedService: SharedService,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private cdr: ChangeDetectorRef,\r\n private fb: FormBuilder\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n const params = this.sharedService.getParams();\r\n\r\n this.universoAuditavel = params.universoId;\r\n this.unidadeGestora = params.unidadeGestoraId;\r\n this.tipoUniversoAuditavel = params.tipouniversoId;\r\n this.acao = params.acao;\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n this.formGroup = this.fb.group({});\r\n const res = await this.universoAuditavelService.obterPorId(this.universoAuditavel);\r\n let alteraStatus = '';\r\n if(res.sucesso){\r\n\r\n this.modelUniversoAuditavel = res.dados;\r\n\r\n if(this.acao === 'preencer'){\r\n alteraStatus = EUniversoAuditavelSituacaoDescricao[EUniversoAuditavelSituacao.EmPreenchimento];\r\n }else if(this.acao === 'revisar'){\r\n alteraStatus = EUniversoAuditavelSituacaoDescricao[EUniversoAuditavelSituacao.Revisao];\r\n }\r\n if(this.modelUniversoAuditavel.status === EUniversoAuditavelSituacaoDescricao[EUniversoAuditavelSituacao.EmElaboracao]){\r\n\r\n\r\n let params: IUniversoAuditavelModel = {\r\n id: this.modelUniversoAuditavel.id,\r\n unidadeGestoraId: this.unidadeGestora,\r\n tipoUniversoAuditavelId: this.modelUniversoAuditavel.tipoUniversoAuditavelId,\r\n versao: this.modelUniversoAuditavel.versao,\r\n ativo: this.modelUniversoAuditavel.ativo,\r\n nomeTipoUniversoAuditavel: this.modelUniversoAuditavel.nomeTipoUniversoAuditavel,\r\n status: alteraStatus,\r\n dataCriacao : this.modelUniversoAuditavel.dataCriacao,\r\n\r\n };\r\n await this.universoAuditavelService.atualizar(params);\r\n }\r\n }\r\n\r\n this.buscarTipoUniverso(this.tipoUniversoAuditavel);\r\n\r\n this.montaComboUniversoAuditavel();\r\n\r\n }\r\n\r\n public montaComboUniversoAuditavel (){\r\n this.universoAuditavelService.obterCriterioPorTipo(this.unidadeGestora, this.tipoUniversoAuditavel ).then(res=>{\r\n if (res.sucesso){\r\n this.dropdownData = res.dados;\r\n }\r\n });\r\n }\r\n\r\n limparCampos(): void {\r\n Object.keys(this.formGroup.controls).forEach((controlName) => {\r\n if (controlName.startsWith('resposta-')) {\r\n this.formGroup.get(controlName)?.reset();\r\n }\r\n });\r\n }\r\n\r\n public async onSelectionChange(event: any) {\r\n const selectedValue = event.target.value;\r\n const selectedItem = this.dropdownData.find(item => item.value === selectedValue);\r\n this.unidadeSelecionada = selectedItem ? selectedItem.unidade : '';\r\n\r\n this.limparCampos();\r\n\r\n delete this.criteriosResposta[this.selectedDropdownValue];\r\n this.selectedDropdownValue = selectedValue;\r\n\r\n await this.buscarRespostaItens(parseInt(selectedValue, 10));\r\n\r\n if (!this.criteriosResposta[this.selectedDropdownValue]) {\r\n this.criteriosResposta[this.selectedDropdownValue] = [];\r\n }\r\n }\r\n\r\n\r\n public async buscarRespostaItens(selectedValue: number): Promise {\r\n try {\r\n const res = await this.universoAuditavelItemRespostaService.ObterRespostaPorCriterio(\r\n selectedValue,\r\n this.unidadeGestora,\r\n this.tipoUniversoAuditavel\r\n );\r\n if (res.dados !== null) {\r\n this.respostaItens = res.dados;\r\n\r\n this.initializeFormControls();\r\n }\r\n } catch (error) {\r\n console.error(\"Erro ao buscar itens de resposta:\", error);\r\n }\r\n }\r\n\r\n initializeFormControls(): void {\r\n const valoresParaPreencher: any = {};\r\n\r\n this.modelTipoUniversoItens.itens.forEach((subtipo) => {\r\n subtipo.itens.forEach((macro) => {\r\n macro.itens.forEach((processo) => {\r\n\r\n const respostaItem = this.respostaItens.find(\r\n (item) => item.tipouniversoItemId === processo.id\r\n );\r\n\r\n if (respostaItem) {\r\n const controleValor = Number(respostaItem.resposta);\r\n valoresParaPreencher[`resposta-${processo.id}`] = controleValor;\r\n } else {\r\n valoresParaPreencher[`resposta-${processo.id}`] = null;\r\n }\r\n });\r\n });\r\n });\r\n\r\n // Usando setValue para definir todos os valores\r\n this.formGroup.setValue(valoresParaPreencher);\r\n }\r\n public async buscarTipoUniverso(idTipo:number){\r\n const res = await this.tipoUniversoService.obterPorId(idTipo);\r\n if(res.sucesso){\r\n this.modelTipoUniverso = res.dados;\r\n\r\n if(this.acao === 'preencer'){\r\n this.titulo = 'Preencher Mapeamento Universo Auditável ' + this.modelTipoUniverso.nome;\r\n }else{\r\n this.titulo = 'Revisar Mapeamento Universo Auditável '+ this.modelTipoUniverso.nome;\r\n }\r\n\r\n this.indicadorId = this.modelTipoUniverso.indicadorId;\r\n\r\n const unidade = await this.unidadeGestoraService.obterPorId(this.unidadeGestora);\r\n\r\n if (unidade.sucesso) {\r\n this.unidadeGestoraNome = unidade.dados.sigla + '-' + unidade.dados.nome;\r\n }\r\n }\r\n\r\n this.buscarItens(this.tipoUniversoAuditavel, this.modelTipoUniverso.tipo === TipoUniversoEnum.Padronizado ? null : this.unidadeGestora);\r\n }\r\n\r\n gerarRespostas(): any[] {\r\n if (!this.selectedDropdownValue) {\r\n this.exibirMensagemAlerta('Nenhum critério selecionado.');\r\n this.errorMessage = 'Por favor, selecione um Critério!';\r\n return [];\r\n }\r\n\r\n // Limpa completamente as respostas anteriores do critério selecionado\r\n this.criteriosResposta[this.selectedDropdownValue] = [];\r\n\r\n const responses: any[] = [];\r\n\r\n this.modelTipoUniversoItens.itens.forEach((subtipo: any) => {\r\n subtipo.itens.forEach((macro: any) => {\r\n const macroResponses: IUniversoAuditavelItemRespostaModel[] = [];\r\n\r\n macro.itens.forEach((processo: any) => {\r\n const processoControl = this.formGroup.get('resposta-' + processo.id);\r\n\r\n if (processoControl?.value === null || processoControl?.value === '') {\r\n processoControl?.setErrors({ required: true });\r\n } else {\r\n processoControl?.setErrors(null);\r\n }\r\n\r\n if (processoControl) {\r\n const existingResponse = this.findExistingResponse(\r\n this.selectedDropdownValue,\r\n processo.id\r\n );\r\n\r\n macroResponses.push({\r\n ...existingResponse,\r\n resposta: processoControl.value || '',\r\n criterioId: parseInt(this.selectedDropdownValue, 10),\r\n unidadeGestoraId: this.unidadeGestora,\r\n tipouniversoItemId: processo.id,\r\n universoAuditavelId: this.universoAuditavel,\r\n tipouniversoId: this.tipoUniversoAuditavel,\r\n indicadorId: this.indicadorId\r\n } as IUniversoAuditavelItemRespostaModel);\r\n } else {\r\n console.warn(`Controle não encontrado para processo-${processo.id}`);\r\n }\r\n });\r\n\r\n if (macroResponses.length > 0) {\r\n responses.push(macroResponses);\r\n }\r\n });\r\n });\r\n\r\n this.criteriosResposta[this.selectedDropdownValue] = responses;\r\n\r\n return responses;\r\n }\r\n\r\n\r\n// Método auxiliar para encontrar resposta existente\r\n private findExistingResponse(criterioId: string, processoId: number): Partial {\r\n const existingResponses = this.criteriosResposta[criterioId];\r\n if (!existingResponses) return {};\r\n\r\n for (const macroGroup of existingResponses as IUniversoAuditavelItemRespostaModel[][]) {\r\n for (const response of macroGroup) {\r\n if (response.tipouniversoItemId === processoId) {\r\n return response;\r\n }\r\n }\r\n }\r\n\r\n return {};\r\n }\r\n\r\n public async onSubmit(salvarEFechar: boolean){\r\n this.submitted = true;\r\n this.gerarRespostas();\r\n if (this.formGroup.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n const allResponses: IUniversoAuditavelItemRespostaModel[] = Object.values(this.criteriosResposta).reduce((acc, curr) => {\r\n // @ts-ignore\r\n return acc.concat(curr);\r\n }, []);\r\n const itensUniverso: IUniversoAuditavelItemRespostaModel[] = allResponses.reduce((acc, curr) => acc.concat(curr), []);\r\n\r\n const res = await this.universoAuditavelItemRespostaService.inserir(itensUniverso);\r\n\r\n if(res.sucesso){\r\n if(salvarEFechar){\r\n this.exibirMensagemSucesso('Resposta Enviadas com Sucesso!');\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestora}?aba=3`);\r\n }else{\r\n this.exibirMensagemSucesso('Resposta Enviadas com Sucesso!');\r\n }\r\n\r\n }else{\r\n this.exibirMensagemErro('Erro ao inserir Registro');\r\n }\r\n }\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestora}?aba=3`);\r\n }\r\n public async buscarItens(idTipoUniverso: number, idUG: number) {\r\n\r\n if (idTipoUniverso) {\r\n const res = await this.tipoUniversoService.obterItens(idTipoUniverso, idUG);\r\n if (res.sucesso) {\r\n this.modelTipoUniversoItens = res.dados;\r\n this.semDados = this.modelTipoUniversoItens.itens.length == 0;\r\n if (this.semDados) {\r\n this.novoRegistro = true;\r\n } else {\r\n this.novoRegistro = false;\r\n }\r\n\r\n this.reordenar();\r\n\r\n if (this.modelTipoUniversoItens && this.modelTipoUniversoItens.itens) {\r\n this.modelTipoUniversoItens.itens.forEach(subtipo => {\r\n subtipo.itens.forEach(macro => {\r\n macro.itens.forEach(processo => {\r\n this.formGroup.addControl('resposta-' + processo.id, this.fb.control(''));\r\n });\r\n });\r\n });\r\n } else {\r\n console.warn('Dados não estão carregados.');\r\n }\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }\r\n }\r\n\r\n onFinalizar(){\r\n\r\n Swal.fire({\r\n title: \"Finalizar Preenchimento\",\r\n text: \"Tem certeza que deseja finalizar o mapeamento do universo auditável?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then((res) => {\r\n if (res.value) {\r\n this.universoAuditavelService\r\n .finalizarUniversoAuditavel(this.universoAuditavel, this.acao)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestora}?aba=3`);\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'success',\r\n text: 'Universo Finalizado com Sucesso ',\r\n });\r\n } else {\r\n {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n });\r\n }\r\n }\r\n })\r\n .catch((err) => {\r\n {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n });\r\n }\r\n });\r\n }\r\n });\r\n\r\n }\r\n isHabilitaBotaoFinalizar(){\r\n return this.habilitaBotaoFinalizar;\r\n }\r\n public reordenar(){\r\n this.modelTipoUniversoItens.itens.forEach((item, idx) => {\r\n item.ordem = (idx + 1);\r\n item.ordemExibicao = `1.${item.ordem.toString()}`;\r\n if(item.itens && item.itens.length > 0){\r\n this.fnReordenacao(item);\r\n }\r\n });\r\n }\r\n public fnReordenacao(item: ITipoUniversoItemModel){\r\n item.itens.forEach((subItem, subIdx) => {\r\n\r\n subItem.ordem = subIdx + 1;\r\n subItem.ordemExibicao = `${item.ordemExibicao}.${subItem.ordem.toString()}`\r\n if(subItem.itens && subItem.itens.length > 0){\r\n this.fnReordenacao(subItem);\r\n }\r\n });\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n \r\n
  2. \r\n
  3. \r\n Universo auditável\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n

{{ errorMessage }}

\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
{{ modelTipoUniverso.nome }}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Este campo é obrigatório.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n","import { Component, ElementRef, OnInit, ViewChild } from \"@angular/core\";\r\nimport { BaseFormComponent } from \"../../../../shared/components/base-form/base-form.component\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { AuthService } from \"../../../../services/auth.service\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { PerguntaService } from \"../../../../services/pergunta.service\";\r\nimport { TabelaDominioService } from \"../../../../services/tabela-dominio.service\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { MatGridListModule } from \"@angular/material/grid-list\";\r\nimport { UniversoAuditavelService } from \"../../../../services/universo-auditavel.service\";\r\nimport {\r\n IUniversoAuditavelItemRespostaItensModel,\r\n IUniversoAuditavelModel\r\n} from \"../../../../models/universo-auditavel.model\";\r\nimport { TipoUniversoEnum } from \"../../../../models/enum/tipo-universo.enum\";\r\nimport { TipoUniversoService } from \"../../../../services/tipo-universo.service\";\r\nimport { UnidadeGestoraService } from \"../../../../services/unidade-gestora.service\";\r\nimport {\r\n ITipoUniversoItemModel,\r\n ITipoUniversoModel,\r\n ITipoUniversoUGModel\r\n} from \"../../../../models/tipo-universo.model\";\r\nimport { UniversoAuditavelItemRespostaService } from \"../../../../services/universo-auditavel-item-resposta.service\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { element } from \"protractor\";\r\n\r\n@Component({\r\n selector: 'app-visualizar-universo-auditavel',\r\n templateUrl: './visualizar-universo-auditavel.component.html',\r\n styleUrls: ['./visualizar-universo-auditavel.component.scss']\r\n})\r\n\r\nexport class VisualizarUniversoAuditavelComponent extends BaseFormComponent implements OnInit{\r\n constructor(\r\n toastr: ToastrService,\r\n route: ActivatedRoute,\r\n router: Router,\r\n private authService: AuthService,\r\n localeService: BsLocaleService,\r\n private perguntaService: PerguntaService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private universoAuditavelService: UniversoAuditavelService,\r\n private universoAuditavelItemService: UniversoAuditavelItemRespostaService,\r\n public matDialog: MatDialog,\r\n private tipoUniversoService: TipoUniversoService,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n public matGridListModule: MatGridListModule\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n this.dataSource = new MatTableDataSource();\r\n\r\n }\r\n public modelUniversoAuditavel = {} as IUniversoAuditavelModel;\r\n public dropdownData: { value: string, text: string , unidade: string}[] = [];\r\n public semDados: boolean;\r\n public modelTipoUniverso: ITipoUniversoModel = {} as ITipoUniversoModel;\r\n public modelTipoUniversoItens: IUniversoAuditavelItemRespostaItensModel = {} as IUniversoAuditavelItemRespostaItensModel;\r\n unidadeGestoraNome: string = '';\r\n indicadorNome: string = '';\r\n unidadeGestora: number;\r\n totalItens: number;\r\n colspanIdicador: number;\r\n criterios: string[] = [];\r\n dataSource: MatTableDataSource;\r\n displayedColumns: string[] = ['subtipo', 'macroprocesso', 'processos', ...this.criterios];\r\n headerRows = ['header-row-grupo', 'header-row-detalhes'];\r\n displayedColumnsGrupo = ['grupo-agrupamento', 'grupo-indicador'];\r\n async ngOnInit() {\r\n const res = await this.universoAuditavelService.obterPorId(this.id);\r\n if ( res.sucesso){\r\n this.modelUniversoAuditavel = res.dados;\r\n }\r\n\r\n this.buscarTipoUniverso(this.modelUniversoAuditavel.tipoUniversoAuditavelId);\r\n }\r\n\r\n getDivididosPorColunas(itemMacro: any) {\r\n const processos = itemMacro.itens.filter(\r\n processo => processo.idItemPai === itemMacro.tipoUniversoAuditavelItemId && processo.criterioId\r\n );\r\n\r\n const coluna1 = processos.slice(0, Math.ceil(processos.length / 2));\r\n const coluna2 = processos.slice(Math.ceil(processos.length / 2));\r\n\r\n return [coluna1, coluna2];\r\n }\r\n\r\n getCriterioValue(element: IUniversoAuditavelItemRespostaItensModel, criterioNome: string): string[] {\r\n let respostas: string[] = [];\r\n\r\n if (element.itens.length > 0) {\r\n for (const value of element.itens) {\r\n const respostasEncontradas = value.itens\r\n .filter(resp => value.tipoUniversoAuditavelItemId === resp.idItemPai && resp.criterioNome === criterioNome)\r\n .map(resp => resp.universoAuditavelItemRespostas);\r\n\r\n respostas.push(...respostasEncontradas);\r\n }\r\n }\r\n\r\n return respostas; // Retorna um array de respostas\r\n }\r\n\r\n\r\n public async buscarTipoUniverso(idTipo:number){\r\n const res = await this.tipoUniversoService.obterPorId(idTipo);\r\n if(res.sucesso){\r\n this.modelTipoUniverso = res.dados;\r\n this.unidadeGestora = this.modelUniversoAuditavel.unidadeGestoraId;\r\n this.titulo = 'Visualizar Mapeamento Universo Auditável - '+ this.modelTipoUniverso.nome;\r\n\r\n const unidade = await this.unidadeGestoraService.obterPorId(this.unidadeGestora);\r\n\r\n if (unidade.sucesso) {\r\n this.unidadeGestoraNome = unidade.dados.sigla + '-' + unidade.dados.nome;\r\n }\r\n }\r\n\r\n this.buscarItens(this.modelTipoUniverso.id, this.unidadeGestora );\r\n }\r\n\r\n contarItens(obj: any): number {\r\n\r\n return obj.itens.reduce((acc: number, item: any) => {\r\n return acc + 1 + (item.itens ? this.contarItens(item) : 0);\r\n }, 0);\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigateByUrl(\r\n `/unidades-gestoras/${this.unidadeGestora}?aba=3`\r\n );\r\n }\r\n\r\n public async buscarItens(idTipoUniverso: number, idUG: number) {\r\n\r\n if (idTipoUniverso) {\r\n const res = await this.universoAuditavelItemService.ObterRespostaPorCriterios(idUG, idTipoUniverso);\r\n if (res.sucesso) {\r\n this.modelTipoUniversoItens = res.dados;\r\n this.reordenar();\r\n this.processData();\r\n\r\n }\r\n }\r\n }\r\n contarItensTipo2(obj) {\r\n function contarItens(itens) {\r\n return itens.reduce((total, item) => {\r\n let count = item.tipo === 2 ? item.itens.length : 0;\r\n return total + count + contarItens(item.itens);\r\n }, 0);\r\n }\r\n return contarItens(obj.itens);\r\n }\r\n\r\n retornoAbaUnidade(){\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestora}?aba=3`);\r\n }\r\n\r\n processData() {\r\n if (!this.modelTipoUniversoItens || Object.keys(this.modelTipoUniversoItens).length === 0) {\r\n this.dataSource.data = [];\r\n return;\r\n }\r\n\r\n const criteriosSet = new Set();\r\n Object.values(this.modelTipoUniversoItens).forEach((value, idx) => {\r\n this.totalItens = this.contarItensTipo2(value);\r\n });\r\n\r\n\r\n Object.values(this.modelTipoUniversoItens).forEach((value, idx) => {\r\n this.processItemsForCriterios(value, criteriosSet);\r\n });\r\n\r\n this.criterios = Array.from(criteriosSet);\r\n Object.values(this.modelTipoUniversoItens).forEach((value, idx) => {\r\n if(idx === 0){\r\n this.indicadorNome = value.indicadorDescricao;\r\n }\r\n });\r\n\r\n this.colspanIdicador = this.criterios.length ;\r\n this.displayedColumns = [\r\n 'subtipo',\r\n 'macroprocesso',\r\n 'processos',\r\n ...this.criterios.map(c => `criterio_${c}`)\r\n ];\r\n this.dataSource.data = Object.values(this.modelTipoUniversoItens);\r\n }\r\n\r\n processItemsForCriterios(item: IUniversoAuditavelItemRespostaItensModel, criteriosSet: Set) {\r\n if (item.criterioNome) {\r\n criteriosSet.add(item.criterioNome);\r\n }\r\n\r\n if (item.itens && Object.values(item.itens).length > 0) {\r\n Object.values(item.itens).forEach(value => {\r\n this.processItemsForCriterios(value, criteriosSet);\r\n });\r\n }\r\n }\r\n\r\n\r\n public reordenar() {\r\n // Verifica se model é um objeto com as chaves e percorre as chaves\r\n Object.keys(this.modelTipoUniversoItens).forEach((key, idx) => {\r\n this.reordenarItem(this.modelTipoUniversoItens[key], idx + 1, ''); // Começa a ordem com uma string vazia\r\n });\r\n }\r\n\r\n reordenarItem(item: IUniversoAuditavelItemRespostaItensModel, index: number, prefixo: string) {\r\n const novaOrdem = prefixo ? `${prefixo}.${index}` : `${index}`;\r\n item.ordemExibicao = novaOrdem;\r\n\r\n if (item.itens && Object.keys(item.itens).length > 0) {\r\n Object.keys(item.itens).forEach((key, idx) => {\r\n this.reordenarItem(item.itens[key], idx + 1, novaOrdem);\r\n });\r\n }\r\n }\r\n\r\n public onBack() {\r\n\r\n this.submit = false;\r\n\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.modelUniversoAuditavel.unidadeGestoraId}?aba=3`);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n \r\n
  2. \r\n
  3. \r\n Universo auditável\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
Unidade Gestora : {{unidadeGestoraNome}} Indicador Subtipo \r\n \r\n {{ element.ordemExibicao }} - {{ element.tipoUniversoAuditavelItemNome }}\r\n \r\n Macroprocesso \r\n \r\n
\r\n {{ itemMacro.ordemExibicao }} - {{ itemMacro.tipoUniversoAuditavelItemNome }}\r\n
\r\n
\r\n
Processo \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ processo.ordemExibicao }} - {{ processo.tipoUniversoAuditavelItemNome }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{indicadorNome}} \r\n {{ criterio }} \r\n
\r\n
\r\n {{ resposta }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormArray, FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IArquivoModel } from 'src/app/models/arquivo.model';\r\nimport { AvaliacaoRequest, IListaQuestionarioRespostaUGModel, QuestionarioUGItensResposta } from 'src/app/models/questionario-ug.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { EntendendoEntidadeService } from 'src/app/services/entendendo-entidade.service';\r\nimport { PerguntaService } from 'src/app/services/pergunta.service';\r\nimport { QuestionarioUGRespostaService } from 'src/app/services/questionarioug-resposta.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ResponsaveisService } from 'src/app/services/responsaveis.service ';\r\nimport { MatCheckboxChange } from '@angular/material/checkbox';\r\nimport { EnumTipoAvaliacaoQuestionarioUG } from 'src/app/models/enum/tipo-avaliacao-questionario-ug.enum';\r\nimport { EnumStatusAvaliacaoQuestionarioUG } from 'src/app/models/enum/status-avaliacao-questionario-ug.enum';\r\nimport { ModalAvaliarQuestionarioComponent } from '../modal-avaliar-questionario/modal-avaliar-questionario.component';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { EnumTipoQuestionarioUG } from 'src/app/models/enum/tipo-questionario-ug.enum';\r\nimport { EQuestionarioUGSituacao, EQuestionarioUGSituacaoDescricao } from 'src/app/models/enum/questionario-ug-situacao.enum';\r\nimport Swal from 'sweetalert2';\r\nimport { SelectionModel } from \"@angular/cdk/collections\";\r\n\r\n\r\n@Component({\r\n selector: 'app-avaliar-questionario',\r\n templateUrl: './avaliar-questionario.component.html',\r\n styleUrls: ['./avaliar-questionario.component.scss']\r\n})\r\nexport class AvaliarQuestionarioComponent extends BaseFormComponent implements OnInit {\r\n public model= {} as IListaQuestionarioRespostaUGModel;\r\n formGroup: FormGroup;\r\n arquivo: File | null = null;\r\n displayedColumns: string[] = ['questionAndResponse', 'situacao'];\r\n public dataSource = new MatTableDataSource([]);\r\n imprimir: boolean;\r\n selectedItems: QuestionarioUGItensResposta[] = [];\r\n selectedIds: number[] = [];\r\n exibeCamposStatusEmReplica: boolean;\r\n avaliacao: AvaliacaoRequest;\r\n tipoQuestionario: number;\r\n isButtonAvaliarDisabled: boolean = false;\r\n isButtonReAvaliarDisabled: boolean = false;\r\n isButtonEnviarReplicaDisabled: boolean = false;\r\n\r\n selection = new SelectionModel(true, []);\r\n public dataSource2: any[] = [];\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private questionarioUGRespostaService: QuestionarioUGRespostaService,\r\n toastr: ToastrService,\r\n route: ActivatedRoute,\r\n router: Router,\r\n private authService: AuthService,\r\n localeService: BsLocaleService,\r\n private perguntaService: PerguntaService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private responsaveisService: ResponsaveisService,\r\n public matDialog: MatDialog,\r\n private sharedService: SharedService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n this.formGroup = this.fb.group({\r\n checkboxs: this.fb.array([]),\r\n respostas: this.fb.array([]),\r\n arquivos: this.fb.array([]) // Novo FormArray para os arquivos\r\n });\r\n}\r\n\r\n ngOnInit(): void {\r\n this.buscar();\r\n this.tipoQuestionario = this.sharedService.getTipoQuestionario();\r\n };\r\n\r\n\r\n buscar() {\r\n this.questionarioUGRespostaService.ObterRespostaQuestionario(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n let aba = 0;\r\n if(this.tipoQuestionario == EnumTipoQuestionarioUG.EntendendoEntidade){\r\n aba = 1;\r\n }else if (this.tipoQuestionario == EnumTipoQuestionarioUG.MaturidadeRisco){\r\n aba = 2;\r\n }\r\n\r\n this.isDesabilitaBotoes(res.dados.status);\r\n\r\n this.dataSource = new MatTableDataSource(res.dados.respostas);\r\n\r\n this.dataSource2 = res.dados.respostas;\r\n\r\n // Limpa o FormArray antes de adicionar novos controles\r\n const respostasFormArray = this.formGroup.get('respostas') as FormArray;\r\n respostasFormArray.clear();\r\n //const checkboxesFormArray = this.fb.array([]); // Novo FormArray para os checkboxes\r\n const checkboxesFormArray = this.formGroup.get('checkboxs') as FormArray;\r\n //checkboxesFormArray.clear(); // REMOVA ESTA LINHA\r\n this.selectedIds = [];\r\n this.selection.clear();\r\n\r\n // Adiciona controles ao FormArray dinamicamente\r\n res.dados.respostas.forEach((item, index) => {\r\n respostasFormArray.push(new FormControl(item.resposta));\r\n checkboxesFormArray.push(new FormControl(false)); // Inicializa como 'false'\r\n //respostasFormArray.at(index).setValue(false, { emitEvent: false });\r\n });\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => this.exibirMensagemErro(err));\r\n }\r\n\r\n getRespostaFormControl(index: number): FormControl {\r\n const respostasFormArray = this.formGroup.get('respostas') as FormArray;\r\n return respostasFormArray.at(index) as FormControl;\r\n }\r\n\r\n getCheckBoxFormControl(index: number): FormControl {\r\n const checkBoxsFormArray = this.formGroup.get('checkboxs') as FormArray;\r\n return checkBoxsFormArray.at(index) as FormControl;\r\n }\r\n\r\n checkExists(value):boolean{\r\n return this.selectedIds.includes(value);\r\n }\r\n\r\n onCheckboxChange(event: MatCheckboxChange, element: any) {\r\n if (event.checked) {\r\n if(!this.checkExists(element.idItemQuestionario)){\r\n this.selectedIds.push(element.idItemQuestionario);\r\n this.selection.toggle(element);\r\n }\r\n } else {\r\n const index = this.selectedIds.indexOf(element.idItemQuestionario);\r\n if (index > -1) {\r\n this.selectedIds.splice(index, 1);\r\n }\r\n if(this.selectedIds.length === 0){\r\n this.selection.clear();\r\n }\r\n }\r\n }\r\n masterToggle() {\r\n this.isAllSelected() ?\r\n this.selection.clear() :\r\n this.dataSource2.forEach(row =>\r\n {\r\n if((row.tipoAvaliacaoAuditor != \"Concordo\" && row.tipoReplica != \"Concordo\" )){\r\n this.selection.select(row);\r\n }\r\n }\r\n );\r\n }\r\n\r\n\r\n isAllSelected() {\r\n const numSelected = this.selection.selected.length;\r\n const numRows = this.dataSource2.filter(x => x.tipoAvaliacaoAuditor != \"Concordo\" && x.idTipoSecaoOuPergunta != 1 ).length;\r\n return numSelected === numRows;\r\n }\r\n\r\n onAvaliar(){\r\n const idsSelecionados = this.selectedIds;\r\n\r\n const idsSelecionadosString: string = idsSelecionados.join(',');\r\n const perguntaSelecionada = this.model.respostas.find(item => idsSelecionados.includes(item.idItemQuestionario));\r\n // Verifica se há mais de uma pergunta selecionada\r\n if (idsSelecionados.length > 1) {\r\n this.exibirMensagemAlerta('Só pode ter um registro selecionado para avaliar');\r\n return;\r\n }\r\n\r\n // Verifica se há pelo menos uma pergunta selecionada\r\n if (idsSelecionados.length === 0) {\r\n this.exibirMensagemAlerta('Selecione uma pergunta para avaliar');\r\n return;\r\n }\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n ids: idsSelecionadosString,\r\n pergunta: perguntaSelecionada.pergunta,\r\n resposta: perguntaSelecionada.resposta,\r\n tipoEntrada: perguntaSelecionada.tipoEntrada,\r\n tipoQuestionario: this.tipoQuestionario,\r\n perguntaOpcao: perguntaSelecionada.perguntaOpcao,\r\n idQuestionario: this.id\r\n };\r\n\r\n const modal = this.matDialog.open(ModalAvaliarQuestionarioComponent, dialogConfig);\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n this.selection.clear();\r\n this.buscar();\r\n });\r\n\r\n }\r\n onConcordar(){\r\n\r\n let idsSelecionados: number[] = [];\r\n\r\n if(this.selectedIds.length > 0){\r\n idsSelecionados = this.selectedIds;\r\n }else{\r\n // @ts-ignore\r\n idsSelecionados = this.selection.selected.map(item => {\r\n if (item.idTipoSecaoOuPergunta != 1) {\r\n return item.idItemQuestionario;\r\n }\r\n return null;\r\n }).filter(id => id !== null);\r\n }\r\n const idsSelecionadosString: string = idsSelecionados.join(',');\r\n\r\n if (idsSelecionados.length === 0) {\r\n this.exibirMensagemAlerta('Selecione uma pergunta para avaliar');\r\n return;\r\n }\r\n\r\n this.avaliacao = {\r\n statusAvaliacao: EnumStatusAvaliacaoQuestionarioUG.concordo,\r\n texto: \"\",\r\n tipoAvaliacao: EnumTipoAvaliacaoQuestionarioUG.avaliacaoFinal\r\n };\r\n\r\n if(idsSelecionados.length > 1)\r\n {\r\n Swal.fire({\r\n title: 'Atenção',\r\n text: \"Concordar com as respostas selecionadas? Caso confirme, todas serão finalizadas! \",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n if(res.isConfirmed)\r\n this.questionarioUGRespostaService.fazerAvaliacaoOuReplica(idsSelecionadosString, this.avaliacao)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Registro Atualizado com sucesso');\r\n this.buscar();\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n })\r\n }\r\n else\r\n {\r\n this.questionarioUGRespostaService.fazerAvaliacaoOuReplica(idsSelecionadosString, this.avaliacao)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Registro Atualizado com sucesso');\r\n this.buscar();\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(error => {\r\n this.toastr.error(error.mensagem.descricao);\r\n });\r\n }\r\n }\r\n onReavaliar(){\r\n const idsSelecionados = this.selectedIds;\r\n const idsSelecionadosString: string = idsSelecionados.join(',');\r\n const perguntaSelecionada = this.model.respostas.find(item => idsSelecionados.includes(item.idItemQuestionario));\r\n // Verifica se há mais de uma pergunta selecionada\r\n if (idsSelecionados.length > 1) {\r\n this.exibirMensagemAlerta('Só pode ter um registro selecionado para avaliar');\r\n return;\r\n }\r\n\r\n // Verifica se há pelo menos uma pergunta selecionada\r\n if (idsSelecionados.length === 0) {\r\n this.exibirMensagemAlerta('Selecione uma pergunta para avaliar');\r\n return;\r\n }\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n ids: idsSelecionadosString,\r\n pergunta: perguntaSelecionada.pergunta,\r\n resposta: perguntaSelecionada.resposta,\r\n reavaliar: true,\r\n tipoQuestionario: this.tipoQuestionario\r\n };\r\n\r\n const modal = this.matDialog.open(ModalAvaliarQuestionarioComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n this.selection.clear();\r\n this.buscar();\r\n });\r\n\r\n\r\n }\r\n onEncerrarAvaliacao(){\r\n Swal.fire({\r\n title: 'Atenção',\r\n text: \"Esta ação não poderá ser desfeita! Deseja continuar? \",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n if (res.value) {\r\n\r\n this.questionarioUGRespostaService.FinalizarQuestionarioAvaliacao(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n let aba = 0;\r\n if(this.tipoQuestionario == EnumTipoQuestionarioUG.EntendendoEntidade){\r\n aba = 1;\r\n }else if (this.tipoQuestionario == EnumTipoQuestionarioUG.MaturidadeRisco){\r\n aba = 2;\r\n }\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.model.idUG}?aba=${this.aba}`);\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n }\r\n})\r\n\r\n }\r\n onEnviarReplica(){\r\n this.questionarioUGRespostaService.enviarParaReplica(this.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n let aba = 0;\r\n if(this.tipoQuestionario == EnumTipoQuestionarioUG.EntendendoEntidade){\r\n aba = 1;\r\n }else if (this.tipoQuestionario == EnumTipoQuestionarioUG.MaturidadeRisco){\r\n aba = 2;\r\n }\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.model.idUG}?aba=${this.aba}`);\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n }\r\n onFechar(){\r\n let aba = 0;\r\n if(this.tipoQuestionario == EnumTipoQuestionarioUG.EntendendoEntidade){\r\n aba = 1;\r\n }else if (this.tipoQuestionario == EnumTipoQuestionarioUG.MaturidadeRisco){\r\n aba = 2;\r\n }\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.model.idUG}?aba=${this.aba}`);\r\n }\r\n\r\n isTodosAvaliados() {\r\n const filteredItems = this.dataSource.data.filter(item => item.idTipoSecaoOuPergunta === 2);\r\n const algumAvaliado = filteredItems.some(\r\n item => item.tipoAvaliacaoAuditor === 'Discordo'\r\n || item.tipoAvaliacaoAuditor === 'Concordo Parcialmente'\r\n || item.tipoAvaliacaoAuditor === 'Concordo'\r\n );\r\n return algumAvaliado;\r\n }\r\n\r\n isDesabilitaBotoes(status: string){\r\n if(status == EQuestionarioUGSituacaoDescricao[EQuestionarioUGSituacao.Contestado]){\r\n this.isButtonAvaliarDisabled = true;\r\n this.isButtonEnviarReplicaDisabled = true;\r\n }\r\n else\r\n {\r\n this.isButtonReAvaliarDisabled = true;\r\n }\r\n }\r\n\r\n}\r\n\r\n","\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Avaliar Questionário\r\n

\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n Avaliar\r\n \r\n \r\n Concordar\r\n \r\n \r\n Reavaliar\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n

{{ element.pergunta }}

\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
Situação\r\n {{ element.idTipoSecaoOuPergunta === 2 ? element.tipoAvaliacaoAuditor : \"\" }}\r\n
\r\n
\r\n \r\n Encerrar Avaliação\r\n \r\n \r\n Enviar para Réplica\r\n \r\n \r\n Fechar\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n","import { BaseFormComponent } from \"src/app/shared/components/base-form/base-form.component\";\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { TabelaDominioService } from \"src/app/services/tabela-dominio.service\";\r\nimport { IEnumModel } from \"src/app/models/enum.model\";\r\nimport { PerguntaService } from \"src/app/services/pergunta.service\";\r\nimport { MatDialogConfig } from \"@angular/material/dialog\";\r\nimport { QuestionarioUGService } from \"src/app/services/questionarioug.service\";\r\nimport { IQuestionarioUGItemModel, IQuestionarioUGModel } from \"src/app/models/questionario-ug.model\";\r\nimport { EditarQuestionarioModalPerguntaComponent } from \"./modal-pergunta/modal-pergunta.component\";\r\nimport { EditarQuestionarioModalSecaoComponent } from \"./modal-secao/modal-secao.component\";\r\n\r\n@Component({\r\n selector: 'app-editar-questionario',\r\n templateUrl: './editar-questionario.component.html',\r\n styleUrls: ['./editar-questionario.component.scss']\r\n})\r\nexport class EditarQuestionarioComponent extends BaseFormComponent implements OnInit {\r\n \r\n public model= {} as IQuestionarioUGModel;\r\n public tiposDocumentos = [] as IEnumModel[];\r\n columnsToDisplay = ['ordem', 'nome', 'tipoDescription', 'obrigatorio', 'actions'];\r\n subColumnsToDisplay = ['ordem', 'nome', 'tipoDescription', 'obrigatorio', 'actions'];\r\n public idUnidadeGestora : number;\r\n\r\n constructor(\r\n private questionarioUGService: QuestionarioUGService,\r\n toastr: ToastrService,\r\n route: ActivatedRoute,\r\n router: Router,\r\n private authService: AuthService,\r\n localeService: BsLocaleService,\r\n private perguntaService: PerguntaService,\r\n private tabelaDominioService: TabelaDominioService,\r\n public matDialog: MatDialog\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({value: '', disabled:true}),\r\n nome: new FormControl('', Validators.required),\r\n tipoDocumento: new FormControl({value:[] as IEnumModel[]})\r\n })\r\n\r\n async ngOnInit(){\r\n await this.tabelaDominioService\r\n .obterTiposDocumentoTrabalho()\r\n .then((res) => this.tiposDocumentos = res.dados)\r\n .catch((err) => this.exibirMensagemErro(err));\r\n\r\n if(!this.novoRegistro){\r\n this.questionarioUGService\r\n .obterPorId(this.id)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.model = res.dados\r\n this.idUnidadeGestora = res.dados.unidadeGestoraId;\r\n this.form.controls['nome'].setValue(res.dados.nome);\r\n this.form.controls['id'].setValue(res.dados.id);\r\n this.form.controls['tipoDocumento'].setValue(res.dados.tipoDocumentoId);\r\n this.titulo = \"Editar Questionário - #\" + this.model.id.toString();\r\n this.reordenar();\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => this.exibirMensagemErro(err));\r\n }else{\r\n this.titulo = \"Novo questionário\";\r\n } \r\n\r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean){\r\n if (this.form.invalid) {\r\n this.exibirMensagemErro('Formulário invalido!');\r\n return;\r\n }\r\n\r\n this.model.nome = this.form.controls['nome'].value;\r\n this.model.id = this.id ?? 0;\r\n this.model.tipoDocumentoId = this.form.controls['tipoDocumento'].value;\r\n\r\n let aba = 0;\r\n if(this.model.tipoDocumentoId == 9){\r\n aba = 1;\r\n }else if(this.model.tipoDocumentoId == 10){\r\n aba = 2;\r\n }\r\n\r\n \r\n this.questionarioUGService\r\n .atualizar(this.model)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n if(salvarEFechar){\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.idUnidadeGestora}?aba=${aba}`);\r\n }else{\r\n this.router.navigate([`editar-questionario/${this.model.id}`]);\r\n }\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => this.exibirMensagemErro(err));\r\n \r\n }\r\n\r\n public drop(event: CdkDragDrop, element: any) {\r\n let contadorGeralIndice = 0;\r\n let contadorItem = 0;\r\n let contadorSubItem = 0;\r\n let indiceAnteriorModel = -1;\r\n let indiceAtualModel = -1;\r\n let moveu = false;\r\n\r\n this.model.itens.forEach((item, idx) => {\r\n if(moveu == true){\r\n return;\r\n }\r\n\r\n if(item.nome == element.nome){\r\n if(contadorGeralIndice == event.previousIndex){\r\n indiceAnteriorModel = idx;\r\n }\r\n \r\n if(contadorGeralIndice == event.currentIndex){\r\n indiceAtualModel = idx;\r\n }\r\n \r\n if(indiceAnteriorModel >= 0 && indiceAtualModel >= 0){\r\n moveItemInArray(this.model.itens, indiceAnteriorModel, indiceAtualModel); \r\n moveu = true; \r\n return;\r\n }\r\n \r\n contadorGeralIndice += 1;\r\n \r\n if(item.subItens){\r\n item.subItens.forEach((subItem, subIdx) => {\r\n debugger\r\n if(moveu == true){\r\n return;\r\n }\r\n \r\n if(contadorGeralIndice == event.previousIndex){\r\n indiceAnteriorModel = subIdx;\r\n }\r\n \r\n if(contadorGeralIndice == event.currentIndex){\r\n indiceAtualModel = subIdx;\r\n }\r\n \r\n if(indiceAnteriorModel >= 0 && indiceAtualModel >= 0){\r\n moveItemInArray(item.subItens, indiceAnteriorModel, indiceAtualModel); \r\n moveu = true; \r\n return;\r\n }\r\n \r\n \r\n contadorGeralIndice += 1;\r\n });\r\n }\r\n }\r\n \r\n });\r\n\r\n this.reordenar();\r\n }\r\n\r\n public reordenar(){\r\n this.model.itens.forEach((item, idx) => {\r\n item.ordem = (idx + 1);\r\n item.ordemExibicao = item.ordem.toString();\r\n if(item.subItens){\r\n item.subItens.forEach((subItem, subIdx) => {\r\n const itemPai = this.model.itens.find(_ => _.id == subItem.idItemPai);\r\n subItem.ordem = subIdx + 1;\r\n subItem.ordemExibicao = `${item.ordemExibicao}.${subItem.ordem.toString()}`\r\n });\r\n }\r\n });\r\n }\r\n\r\n public async exibirModalPergunta(idItemPai: number, idx: number){\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n\r\n const modal = this.matDialog.open(EditarQuestionarioModalPerguntaComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n let novoItem = {} as IQuestionarioUGItemModel;\r\n novoItem.idQuestionarioUG = this.id;\r\n novoItem.nome = data.nome;\r\n novoItem.tipoId = 2;\r\n novoItem.tipoDescription = data.tipoEntrada.descricao;\r\n novoItem.obrigatorio = data.obrigatorio;\r\n novoItem.perguntaId = data.id;\r\n novoItem.atualizarModelo = data.atualizarModelo;\r\n\r\n if(idItemPai == -1 && idx == -1){\r\n if(!this.model.itens)\r\n this.model.itens = [] as IQuestionarioUGItemModel[];\r\n\r\n this.model.itens.push(novoItem);\r\n }else{\r\n const itemPai = this.model.itens[idx];\r\n \r\n if(!itemPai.subItens)\r\n itemPai.subItens = [] as IQuestionarioUGItemModel[];\r\n\r\n itemPai.subItens.push(novoItem);\r\n }\r\n this.reordenar();\r\n }\r\n })\r\n }\r\n\r\n public exibirModalSecao(element: any){\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n id: element ? element.id : 0,\r\n idModeloQuestionario : this.id,\r\n nome: element ? element.nome : \"\"\r\n };\r\n\r\n const modal = this.matDialog.open(EditarQuestionarioModalSecaoComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n debugger;\r\n if(data){\r\n let novaSecao = data as IQuestionarioUGItemModel;\r\n \r\n\r\n if(!this.model.itens || this.model.itens.length == 0){\r\n this.model.itens = [] as IQuestionarioUGItemModel[];\r\n this.model.itens.push(novaSecao);\r\n this.reordenar();\r\n return;\r\n }\r\n\r\n if(this.model.itens.find((element)=> element.nome.toUpperCase() == novaSecao.nome.toUpperCase())){\r\n this.exibirMensagemErro(\"Já existe seção com este nome.\");\r\n return;\r\n } \r\n\r\n var isNew = true;\r\n \r\n this.model.itens.forEach((element, idx) => {\r\n if(novaSecao.nomeAnterior == element.nome \r\n && novaSecao.nomeAnterior != \"\"){\r\n element.nome = novaSecao.nome;\r\n isNew = false;\r\n }\r\n });\r\n\r\n if(isNew){\r\n this.model.itens.push(novaSecao);\r\n this.reordenar();\r\n }\r\n }\r\n })\r\n }\r\n\r\n public excluirItem(element: IQuestionarioUGItemModel){\r\n \r\n if(element.id != 0 && element.obrigatorio == true){\r\n this.exibirMensagemErro(\"Não é possível excluir um item do modelo obrigatório.\")\r\n return;\r\n }\r\n\r\n var idxOf = this.model.itens.indexOf(element, 0);\r\n this.model.itens.splice(idxOf, 1);\r\n \r\n this.reordenar(); \r\n }\r\n\r\n public excluirSubItem(nomePai: string, element: IQuestionarioUGItemModel){\r\n \r\n if(element.id != 0 && element.obrigatorio == true){\r\n this.exibirMensagemErro(\"Não é possível excluir um item do modelo obrigatório.\")\r\n return;\r\n }\r\n\r\n let elementPai = this.model.itens.find((element)=> element.nome.toUpperCase() == nomePai.toUpperCase());\r\n const idxIndicePai = this.model.itens.indexOf(elementPai, 0);\r\n const itemPai = this.model.itens[idxIndicePai];\r\n var idxOf = itemPai.subItens.indexOf(element,0);\r\n itemPai.subItens.splice(idxOf, 1);\r\n\r\n this.reordenar(); \r\n }\r\n\r\n public onBack() {\r\n this.submit = false;\r\n\r\n let tipoDocumento = this.form.controls['tipoDocumento'].value;\r\n console.log(tipoDocumento);\r\n let aba = 0;\r\n if(tipoDocumento == 9){\r\n aba = 1;\r\n }else if(tipoDocumento == 10){\r\n aba = 2;\r\n }\r\n\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.model.unidadeGestoraId}?aba=${aba}`);\r\n }\r\n\r\n public semDados(): boolean{\r\n return !this.model || !this.model.itens || this.model.itens.length == 0;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial \r\n
  2. \r\n
  3. \r\n Questionário\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n {{ titulo }}\r\n

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n Documento de Trabalho\r\n \r\n \r\n \r\n {{ element.codigo }} -\r\n {{ element.descricao }}\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

\r\n \r\n Perguntas\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n Pergunta\r\n Seção\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
#NomeTipoObrigatórioAções
\r\n
\r\n \r\n \r\n {{ element?.ordemExibicao }}\r\n
\r\n
{{ element?.nome }}{{ element?.tipoDescription }} Sim \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{ subItem?.ordemExibicao }}\r\n
\r\n
{{ subItem?.nome }}{{ subItem?.tipoDescription }} Sim \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Nenhum item cadastrado\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n ","import { ToastrService } from 'ngx-toastr';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport {\r\n Component,\r\n OnInit,\r\n Inject,\r\n ViewChild,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IPerguntaModel } from 'src/app/models/pergunta.model';\r\nimport { PerguntaService } from 'src/app/services/pergunta.service';\r\nimport { IQuestionarioUGItemModel } from 'src/app/models/questionario-ug.model';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-editar-questionario-modal-pergunta',\r\n templateUrl: './modal-pergunta.component.html',\r\n styleUrls: ['./modal-pergunta.component.scss']\r\n})\r\nexport class EditarQuestionarioModalPerguntaComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n public model: IQuestionarioUGItemModel;\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public displayedColumns: string[] = ['selecao', 'nome', 'tipo', 'obrigatorio'];\r\n public selecionado: IPerguntaModel;\r\n public totalItens: number;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private perguntaService: PerguntaService,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscarPerguntas();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n\r\n }\r\n\r\n public selecionar(item: IPerguntaModel) {\r\n this.selecionado = !this.selecionado || this.selecionado.id !== item.id ? item : null;\r\n }\r\n\r\n public async concluir() {\r\n Swal.fire({\r\n title: \"\",\r\n text: \"Deseja sugerir a atualização do questionário na base?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then((resConfirm) => {\r\n if (resConfirm.isConfirmed) {\r\n this.selecionado.atualizarModelo = true;\r\n }\r\n this.dialogRef.close(this.selecionado);\r\n });\r\n }\r\n\r\n public buscarPerguntas() {\r\n this.perguntaService\r\n .obter(\"\", true)\r\n .then((res) => {\r\n\r\n if (res.sucesso) {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.data.length == 0;\r\n this.totalItens = res.dados.length;\r\n this.dataSource.paginator = this.paginator;\r\n }\r\n });\r\n\r\n }\r\n\r\n public filtrar(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Inserir Pergunta

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Nome\r\n \r\n {{element.nome}} Tipo entrada\r\n \r\n {{element.tipoEntrada.descricao}} Obrigatório \r\n \r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { ToastrService } from 'ngx-toastr';\r\nimport { MatDialog,MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport {\r\n Component,\r\n OnInit,\r\n Inject,\r\n ViewChild,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { IQuestionarioUGItemModel } from 'src/app/models/questionario-ug.model';\r\n\r\n@Component({\r\n selector: 'app-editar-questionario-modal-secao',\r\n templateUrl: './modal-secao.component.html',\r\n styleUrls: ['./modal-secao.component.scss']\r\n})\r\nexport class EditarQuestionarioModalSecaoComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n \r\n public model = {} as IQuestionarioUGItemModel;\r\n public campoObrigatorio = false;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.model.id = data.id ?? 0;\r\n this.model.idQuestionarioUG = data.idModeloQuestionario;\r\n this.model.nome = data.nome;\r\n this.model.tipoId = 1;\r\n this.model.tipoDescription = \"Seção\";\r\n this.model.ativo = true;\r\n this.model.nomeAnterior = data.nome;\r\n }\r\n\r\n ngOnInit(): void {\r\n \r\n }\r\n \r\n \r\n ngAfterViewInit(): void {\r\n \r\n }\r\n\r\n public async concluir() {\r\n \r\n this.dialogRef.close(this.model);\r\n\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Inserir seção

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
","import { Component } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport { QuestionarioUGService } from 'src/app/services/questionarioug.service';\r\nimport { MatDialogConfig } from '@angular/material/dialog';\r\nimport { ModalSelecaoQuestionarioSharedComponent } from '../modal-selecao-questionario/modal-selecao-questionario.component';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { EnumTipoQuestionarioUG } from 'src/app/models/enum/tipo-questionario-ug.enum';\r\n\r\n@Component({\r\n selector: 'app-gerar-questionario-shared',\r\n templateUrl: './gerar-questionario.component.html',\r\n styleUrls: ['./gerar-questionario.component.scss']\r\n})\r\nexport class GerarQuestionarioSharedComponent extends BaseListComponent {\r\n public filtro = {} as FiltroModel;\r\n model: any;\r\n unidadeGestoraId: number;\r\n modeloRelatorioId: number;\r\n tipoQuestionario: number;\r\n titulo: string;\r\n \r\n \r\n constructor(\r\n private authService: AuthService,\r\n private questionarioUGService: QuestionarioUGService,\r\n private matDialog: MatDialog,\r\n private router: Router,\r\n private sharedService: SharedService\r\n ) { \r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.unidadeGestoraId = this.sharedService.getId();\r\n this.tipoQuestionario = this.sharedService.getTipoQuestionario();\r\n\r\n if(this.tipoQuestionario == EnumTipoQuestionarioUG.EntendendoEntidade){\r\n this.titulo = \"Entendendo a Entidade\";\r\n }else if (this.tipoQuestionario == EnumTipoQuestionarioUG.MaturidadeRisco){\r\n this.titulo = \"Maturidade de Risco\";\r\n }\r\n }\r\n\r\n public gerarQuestionario() {\r\n if(!this.modeloRelatorioId || this.modeloRelatorioId == 0){\r\n this.exibirMensagemErro(\"Informe o modelo do questionário.\")\r\n return;\r\n }\r\n\r\n this.questionarioUGService\r\n .inserir(this.modeloRelatorioId,this.unidadeGestoraId)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n // aqui chamar o pagina principal\r\n let aba = 0;\r\n if(this.tipoQuestionario == EnumTipoQuestionarioUG.EntendendoEntidade){\r\n aba = 1;\r\n }else if (this.tipoQuestionario == EnumTipoQuestionarioUG.MaturidadeRisco){\r\n aba = 2;\r\n }\r\n\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=${aba}`);\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n // this.buscar();\r\n });\r\n }\r\n\r\n public buscarQuestionario(){\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n\r\n const modal = this.matDialog.open(ModalSelecaoQuestionarioSharedComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n this.filtro.pesquisa = data.nome;\r\n this.modeloRelatorioId = data.id;\r\n }\r\n })\r\n }\r\n\r\n public exibirModalquestionario(){\r\n \r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n {{titulo}}\r\n

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { QuestionarioUGService } from 'src/app/services/questionarioug.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { IArquivoModel } from 'src/app/models/arquivo.model';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { EnumTipoQuestionarioUG } from 'src/app/models/enum/tipo-questionario-ug.enum';\r\nimport { IUnidadeGestoraMaturidadeGRModel } from 'src/app/models/unidade-gestora-maturidadeGR.model';\r\nimport { UnidadeGestoraMaturidadeGRService } from 'src/app/services/unidade-gestora-maturidadeGR.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-importacao-arquivo-questionario-shared',\r\n templateUrl: './importacao-arquivo-questionario.component.html',\r\n styleUrls: ['./importacao-arquivo-questionario.component.scss']\r\n})\r\nexport class ImportacaoArquivoQuestionarioSharedComponent extends BaseFormComponent implements OnInit {\r\n public filtro = {} as FiltroModel;\r\n model: any;\r\n unidadeGestoraId: number;\r\n modeloRelatorioId: number;\r\n arquivo: File | null = null;\r\n mensagem: string = '';\r\n arquivoUrl: string;\r\n nomeArquivo: string;\r\n titulo: string = '';\r\n tipoQuestionario: number;\r\n botaoEncerrarHabilitado: boolean = false;\r\n unidadeGestoraMaturidadeGRId: number;\r\n public listMaturidades = [] as IUnidadeGestoraMaturidadeGRModel[];\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private questionarioUGService: QuestionarioUGService,\r\n matDialog: MatDialog,\r\n router: Router,\r\n private sharedService: SharedService,\r\n public unidadeGestoraMaturidadeGRService: UnidadeGestoraMaturidadeGRService,\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n localeService: BsLocaleService\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n async ngOnInit() {\r\n await this.carregaMaturidades();\r\n this.unidadeGestoraId = this.sharedService.getId();\r\n this.tipoQuestionario = this.sharedService.getTipoQuestionario();\r\n\r\n if(this.tipoQuestionario == EnumTipoQuestionarioUG.EntendendoEntidade){\r\n this.titulo = \"Entendendo a Entidade\";\r\n }else if (this.tipoQuestionario == EnumTipoQuestionarioUG.MaturidadeRisco){\r\n this.titulo = \"Maturidade de Risco\";\r\n }\r\n this.downloadAnexo();\r\n }\r\n\r\n onFileSelected(event: any): void {\r\n const file: File = event.target.files[0];\r\n if (file) {\r\n // Verifica se a extensão do arquivo é PDF\r\n const fileExtension = file.name.split('.').pop()?.toLowerCase();\r\n if (fileExtension !== 'pdf') {\r\n // Emite um aviso caso a extensão não seja PDF\r\n this.toastr.error('O tipo de arquivo selecionado não é válido, selecione apenas arquivo PDF!', 'Extensão inválida');\r\n this.arquivo = null; // Reseta o arquivo selecionado\r\n } else {\r\n this.arquivo = file;\r\n }\r\n }\r\n }\r\n\r\n downloadAnexo(): void {\r\n\r\n this.questionarioUGService.DownloadArquivoPorTipo(this.unidadeGestoraId, this.tipoQuestionario).then(\r\n (res) => {\r\n \r\n this.arquivoUrl = res.dados.url;\r\n this.nomeArquivo = res.dados.nomeArquivo;\r\n if(this.arquivoUrl && this.unidadeGestoraMaturidadeGRId){\r\n this.botaoEncerrarHabilitado = true;\r\n }\r\n },\r\n (error) => {\r\n }\r\n );\r\n\r\n }\r\n\r\n enviarArquivo(): void {\r\n if (this.arquivo) {\r\n const tipoQuestionarioId = this.sharedService.getTipoQuestionario();\r\n const arquivoModel: IArquivoModel = {\r\n id: 0,\r\n nomeArquivo: this.arquivo.name,\r\n entidadeArquivo: tipoQuestionarioId, \r\n arquivo: this.arquivo,\r\n url: ''\r\n };\r\n\r\n \r\n\r\n this.questionarioUGService.enviarArquivo(this.unidadeGestoraId, tipoQuestionarioId ,arquivoModel).then(\r\n (response) => {\r\n this.downloadAnexo();\r\n this.exibirMensagemSucesso('Arquivo importado com sucesso');\r\n },\r\n (error) => {\r\n this.exibirMensagemErro(error.mensagem.descricao);\r\n }\r\n );\r\n }\r\n }\r\n\r\n public onBack() {\r\n this.submit = false;\r\n\r\n let aba = 0;\r\n if(this.tipoQuestionario == 1){\r\n aba = 1;\r\n }else if(this.tipoQuestionario == 2){\r\n aba = 2;\r\n }\r\n \r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=${aba}`);\r\n }\r\n\r\n onEncerrarAvaliacao(){\r\n\r\n Swal.fire({\r\n title: 'Atenção',\r\n text: \"Esta ação não poderá ser desfeita! Deseja continuar? \",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then((res) => {\r\n if (res.value) {\r\n\r\n this.questionarioUGService.encerrarQuestionarioImportacaoArquivo(this.unidadeGestoraId, this.tipoQuestionario, this.unidadeGestoraMaturidadeGRId)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=${this.tipoQuestionario}`);\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n\r\n }\r\n})\r\n\r\n }\r\n\r\n public async onChangeSelectMaturidade(element) {\r\n\t\tthis.unidadeGestoraMaturidadeGRId = element.target.value;\r\n if(this.arquivoUrl){\r\n this.botaoEncerrarHabilitado = true;\r\n }\r\n\t}\r\n\r\n public async carregaMaturidades(){\r\n const filtro = {} as FiltroModel;\r\n this.unidadeGestoraMaturidadeGRService\r\n .obter(filtro)\r\n .then((res) => {\r\n this.listMaturidades = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n }); \r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n Encerrar Avaliação\r\n \r\n
\r\n \r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { IListaQuestionarioRespostaUGModel, QuestionarioUGItensResposta } from 'src/app/models/questionario-ug.model';\r\nimport { QuestionarioUGService } from 'src/app/services/questionarioug.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { QuestionarioUGRespostaService } from 'src/app/services/questionarioug-resposta.service';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\n\r\n@Component({\r\n selector: 'app-imprimir-questionario',\r\n templateUrl: './imprimir-questionario.component.html',\r\n styleUrls: ['./imprimir-questionario.component.scss']\r\n})\r\nexport class ImprimirQuestionarioComponent extends BaseFormComponent implements OnInit {\r\n public tiles = [];\r\n public idUnidadeGestora : number;\r\n public versao : number;\r\n public titulo: string='MATURIDADE DE RISCO';\r\n public dataFormatada : string; \r\n public nomeUnidadeGestora : string;\r\n public dataSource = new MatTableDataSource([]);\r\n displayedColumns: string[] = ['pergunta'];\r\n public model= {} as IListaQuestionarioRespostaUGModel;\r\n\r\n constructor(\r\n private questionarioUGService: QuestionarioUGService,\r\n toastr: ToastrService,\r\n route: ActivatedRoute,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n public sharedService: SharedService,\r\n private questionarioService: QuestionarioUGRespostaService,\r\n public matDialog: MatDialog,\r\n public matGridListModule: MatGridListModule\r\n\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({value: '', disabled:true}),\r\n nome: new FormControl('', Validators.required),\r\n tipoDocumento: new FormControl({value:[] as IEnumModel[]})\r\n })\r\n\r\n async ngOnInit() {\r\n \r\n if(!this.novoRegistro){\r\n this.questionarioService.ObterRespostaQuestionario(this.id)\r\n .then((res) => {\r\n this.model = res.dados;\r\n this.dataSource = new MatTableDataSource(res.dados.respostas);\r\n });\r\n }\r\n \r\n if(!this.novoRegistro){\r\n this.questionarioUGService\r\n .ImprimirRespostaQuestionario(this.id)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.idUnidadeGestora = res.dados[0].idUnidadeGestora;\r\n this.dataFormatada = res.dados[0].dataFormatada;\r\n this.versao = res.dados[0].versao;\r\n this.nomeUnidadeGestora = res.dados[0].nomeUnidadeGestora;\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n } \r\n }\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n public onBack() {\r\n this.submit = false;\r\n let aba = this.sharedService.getTipoQuestionario();\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.idUnidadeGestora}?aba=${aba}`);\r\n }\r\n\r\n}\r\n","\r\n
\r\n\t{{ titulo }}
\r\n\tVersäo: {{ versao }} \r\n\t
\r\n\tData: {{ dataFormatada }}\r\n
\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
Unidade a ser auditada: {{ nomeUnidadeGestora }}
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{{ element.pergunta }}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{{ element.avaliacaoFinal }}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n
","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { EnumStatusAvaliacaoQuestionarioUG } from 'src/app/models/enum/status-avaliacao-questionario-ug.enum';\r\nimport { EnumTipoAvaliacaoQuestionarioUG } from 'src/app/models/enum/tipo-avaliacao-questionario-ug.enum';\r\nimport { AvaliacaoRequest } from 'src/app/models/questionario-ug.model';\r\nimport { QuestionarioUGRespostaService } from 'src/app/services/questionarioug-resposta.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\nimport { EnumTipoQuestionarioUG } from 'src/app/models/enum/tipo-questionario-ug.enum';\r\nimport { IPerguntaOpcaoModel } from 'src/app/models/pergunta-opcao.model';\r\n\r\n@Component({\r\n selector: 'app-modal-avaliar-questionario',\r\n templateUrl: './modal-avaliar-questionario.component.html',\r\n styleUrls: ['./modal-avaliar-questionario.component.scss']\r\n})\r\nexport class ModalAvaliarQuestionarioComponent extends BaseFormComponent implements OnInit {\r\n form: FormGroup; // Declarando o FormGroup\r\n opcoesAvaliacao = [\r\n { value: EnumStatusAvaliacaoQuestionarioUG.concordo, label: 'Concordo' },\r\n { value: EnumStatusAvaliacaoQuestionarioUG.concordoParcialmente, label: 'Concordo Parcialmente' },\r\n { value: EnumStatusAvaliacaoQuestionarioUG.discordo, label: 'Discordo' }\r\n ];\r\n avaliacao: AvaliacaoRequest;\r\n reavaliar: boolean;\r\n tipoAvaliacao: number;\r\n htmlResposta: SafeHtml | undefined;\r\n titulo: string = \"\";\r\n perguntaOpcao: any;\r\n\r\n constructor(\r\n public route: ActivatedRoute,\r\n public toastr: ToastrService,\r\n public router: Router,\r\n public localeService: BsLocaleService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n private fb: FormBuilder,\r\n private sanitizer: DomSanitizer,\r\n private questionarioUGRespostaService: QuestionarioUGRespostaService,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.reavaliar = this.data.reavaliar;\r\n this.form = this.fb.group({\r\n pergunta: [this.data.pergunta],\r\n resposta: [this.data.resposta],\r\n tipoEntrada: [this.data.tipoEntrada],\r\n respostaRevisada: [''] ,\r\n statusAvaliacao: [null]\r\n });\r\n this.perguntaOpcao = this.data.perguntaOpcao;\r\n const respostaHTML = this.data.resposta;\r\n\r\n // Atualize o controle do formulário\r\n this.form.get('resposta')?.setValue(respostaHTML);\r\n\r\n // Sanitizar o HTML para exibição segura\r\n this.htmlResposta = this.sanitizer.bypassSecurityTrustHtml(respostaHTML);\r\n\r\n if(this.data.tipoQuestionario == EnumTipoQuestionarioUG.EntendendoEntidade){\r\n this.titulo = \"Entendendo a Entidade\";\r\n }else if (this.data.tipoQuestionario == EnumTipoQuestionarioUG.MaturidadeRisco){\r\n this.titulo = \"Maturidade da Gestão de Risco\";\r\n }\r\n\r\n if(this.reavaliar){\r\n this.titulo += \" - Reavaliar Resposta\";\r\n }else{\r\n this.titulo += \" - Avaliar Resposta\";\r\n }\r\n\r\n }\r\n\r\n config: AngularEditorConfig = {\r\n editable: true,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n // ['bold']\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n cancelar(){\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.data = { interno: true };\r\n this.matDialog.open(ModalCancelarComponent, dialogConfig).afterClosed();\r\n\r\n }\r\n salvar(salvarEFechar: boolean){\r\n\r\n if(this.reavaliar)\r\n {\r\n this.tipoAvaliacao = EnumTipoAvaliacaoQuestionarioUG.avaliacaoFinal;\r\n }\r\n else\r\n {\r\n this.tipoAvaliacao = EnumTipoAvaliacaoQuestionarioUG.avaliacao;\r\n }\r\n\r\n const idsSelecionadosString: string = [this.data.ids].join(',');\r\n this.avaliacao = {\r\n statusAvaliacao: this.form.value.statusAvaliacao,\r\n texto: this.form.value.respostaRevisada,\r\n tipoAvaliacao: this.tipoAvaliacao\r\n };\r\n\r\n this.questionarioUGRespostaService.fazerAvaliacaoOuReplica(idsSelecionadosString, this.avaliacao)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n if(salvarEFechar){\r\n this.dialogRef.close();\r\n }\r\n this.exibirMensagemSucesso('Avaliacao Realizada com Sucesso');\r\n }\r\n else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n Resposta Revisada \r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{ item.nome }}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n Salvar\r\n Salvar e fechar\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { EnumTipoQuestionarioUG } from 'src/app/models/enum/tipo-questionario-ug.enum';\r\nimport { QuestionarioUGService } from 'src/app/services/questionarioug.service';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\n\r\n@Component({\r\n selector: 'app-modal-questionario-importa-dados-shared',\r\n templateUrl: './modal-questionario-importa-dados.component.html',\r\n styleUrls: ['./modal-questionario-importa-dados.component.scss']\r\n})\r\nexport class ModalQuestionarioImportaDadosSharedComponent implements OnInit {\r\n unidadeGestoraId: number;\r\n\r\n constructor(\r\n private router: Router,\r\n @Inject(MAT_DIALOG_DATA) public data: any ,\r\n private questionarioUGService: QuestionarioUGService,\r\n private sharedService: SharedService,\r\n private dialogRef: MatDialogRef\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.unidadeGestoraId = this.sharedService.getId();\r\n }\r\n\r\n public Sim() {\r\n if(!this.data.tipoQuestionario){\r\n this.dialogRef.close();\r\n }\r\n\r\n let aba = 0;\r\n if(this.data.tipoQuestionario == 1){\r\n aba = 1;\r\n }else if (this.data.tipoQuestionario == 2){\r\n aba = 2;\r\n }\r\n\r\n this.questionarioUGService\r\n .inserirQuestionarioAPartirDoUltimo(this.unidadeGestoraId, this.data.tipoQuestionario)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n // aqui chamar o pagina principal\r\n this.dialogRef.close();\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=${aba}`);\r\n window.location.reload();\r\n } else {\r\n // this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n // this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n // this.buscar();\r\n });\r\n }\r\n\r\n public Nao() {\r\n this.dialogRef.close();\r\n this.router.navigate(['gerar-questionario-shared']);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Questionário Nova Versão

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Deseja importar os dados da versão ativa?

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\r\nimport { ModalQuestionarioImportaDadosSharedComponent } from '../modal-questionario-importa-dados/modal-questionario-importa-dados.component';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-modal-questionario-nova-versao-shared',\r\n templateUrl: './modal-questionario-nova-versao.component.html',\r\n styleUrls: ['./modal-questionario-nova-versao.component.scss']\r\n})\r\nexport class ModalQuestionarioNovaVersaoSharedComponent implements OnInit {\r\n private currentDialogRef: MatDialogRef;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n private matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data: any ,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public Sim() {\r\n if(!this.data.tipoQuestionario){\r\n this.dialogRef.close();\r\n }\r\n\r\n if(this.data.source === 'importarArquivo')\r\n {\r\n this.dialogRef.close();\r\n this.router.navigate([`importacao-arquivo-questionario-shared`]);\r\n }\r\n else\r\n {\r\n this.dialogRef.close();\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal2-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n tipoQuestionario: this.data.tipoQuestionario\r\n };\r\n\r\n const modal = this.matDialog.open(ModalQuestionarioImportaDadosSharedComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n\r\n }\r\n })\r\n }\r\n }\r\n\r\n public Nao() {\r\n this.dialogRef.close();\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Questionário Nova Versão

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Você solicitou a geração de uma nova versão, a versão atual será inativada e uma nova versão deverá ser preenchida! Tem certeza que deseja criar uma nova e inativar a versão atual?

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { Component, Inject, OnInit } from \"@angular/core\";\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { Location } from \"@angular/common\";\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-riscos-chaves-importarcao',\r\n templateUrl: 'modal-riscos-chaves-importacao.component.html',\r\n styleUrls: ['modal-riscos-chaves-importacao.component.scss']\r\n})\r\nexport class ModalRiscosChavesImportacaoComponent implements OnInit{\r\n private currentDialogRef: MatDialogRef;\r\n\r\n unidadeGestoraId: number;\r\n tipoUniversoId: number;\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n private matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data: any ,\r\n private router: Router,\r\n ) {\r\n\r\n\r\n }\r\n ngOnInit(): void {\r\n this.unidadeGestoraId = this.data.unidadeGestoraId;\r\n this.tipoUniversoId = this.data.tipoUniversoId;\r\n }\r\n public Sim(){\r\n this.dialogRef.close();\r\n this.router.navigate(['/importar-arquivo-riscos-chaves/novo'], { queryParams: { unidadeGestoraId: this.unidadeGestoraId, tipoRiscosChaves: this.tipoUniversoId } });\r\n }\r\n public Nao() {\r\n this.dialogRef.close();\r\n }\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Riscos Chaves Nova Versão

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Esta ação gerará uma nova versão, a versão atual será inativada e uma nova versão deverá ser importada! Tem certeza que deseja importar uma nova versão e inativar a versão atual?

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { ToastrService } from 'ngx-toastr';\r\nimport { MatDialog,MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Component, OnInit, Inject, ViewChild, AfterViewInit, Output, EventEmitter} from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IModeloQuestionarioModel } from 'src/app/models/modelo-questionario.model';\r\nimport { ModeloQuestionarioService } from 'src/app/services/modelo-questionario.service';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { FiltroModeloQuestionario } from 'src/app/models/filtro-modelo-questionario';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\nimport { EnumTipoQuestionarioUG } from 'src/app/models/enum/tipo-questionario-ug.enum';\r\nimport { EnumTipoDocumentoAprovacao } from 'src/app/models/enum/tipo-documento-aprovacao.enum';\r\n\r\n@Component({\r\n selector: 'app-modal-selecao-questionario-shared',\r\n templateUrl: './modal-selecao-questionario.component.html',\r\n styleUrls: ['./modal-selecao-questionario.component.scss']\r\n})\r\nexport class ModalSelecaoQuestionarioSharedComponent extends BaseFormComponent implements AfterViewInit, OnInit {\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n @Output() nomeSelecionado = new EventEmitter();\r\n \r\n public filtro = {} as FiltroModeloQuestionario;\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public displayedColumns: string[] = ['selecao', 'nome'];\r\n public selecionado: IModeloQuestionarioModel;\r\n public totalItens: number;\r\n \r\n constructor(\r\n route: ActivatedRoute,\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n localeService: BsLocaleService,\r\n router: Router,\r\n private modeloQuestionarioService: ModeloQuestionarioService,\r\n public matDialog: MatDialog,\r\n private sharedService: SharedService,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscarModeloQuestionario();\r\n }\r\n \r\n \r\n ngAfterViewInit(): void {\r\n \r\n }\r\n\r\n\r\n public selecionar(item: IModeloQuestionarioModel) {\r\n this.selecionado = !this.selecionado || this.selecionado.id !== item.id ? item : null;\r\n this.nomeSelecionado.emit(item.nome);\r\n }\r\n\r\n public async concluir() {\r\n this.dialogRef.close(this.selecionado);\r\n }\r\n\r\n public buscarModeloQuestionario(){\r\n let tipoQuestionario = this.sharedService.getTipoQuestionario();\r\n if(tipoQuestionario == EnumTipoQuestionarioUG.EntendendoEntidade){\r\n this.filtro.tipoDocumentoId = EnumTipoDocumentoAprovacao.EntendendoEntidade;\r\n }else if(tipoQuestionario == EnumTipoQuestionarioUG.MaturidadeRisco){\r\n this.filtro.tipoDocumentoId = EnumTipoDocumentoAprovacao.MaturidadeGestaoRisco;\r\n }\r\n\r\n this.modeloQuestionarioService\r\n .obterModeloQuestionario(this.filtro)\r\n .then((res) => {\r\n if(res.sucesso){\r\n this.totalItens = res.dados.totalItens;\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length == 0;\r\n }\r\n });\r\n \r\n }\r\n\r\n public filtrar(event: Event){\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(null);\r\n }\r\n\r\n \r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Selecionar Modelo de Questionário

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Nome\r\n \r\n {{element.nome}} Tipo entrada\r\n \r\n {{element.tipoEntrada.descricao}} Obrigatório \r\n \r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { QuestionarioUGService } from 'src/app/services/questionarioug.service';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\n\r\n@Component({\r\n selector: 'app-modal-solicitar-preenchimento-shared',\r\n templateUrl: './modal-solicitar-preenchimento.component.html',\r\n styleUrls: ['./modal-solicitar-preenchimento.component.scss']\r\n})\r\nexport class ModalSolicitarPreenchimentoSharedComponent implements OnInit {\r\n prazoDias: number;\r\n unidadeGestoraId: number;\r\n\r\n constructor(\r\n private router: Router,\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n private questionarioUGService: QuestionarioUGService,\r\n private sharedService: SharedService,\r\n private dialogRef: MatDialogRef\r\n\r\n ) { }\r\n public mensagemAlerta: string;\r\n\r\n ngOnInit(): void {\r\n this.unidadeGestoraId = this.sharedService.getId();\r\n }\r\n\r\n public cancelar(){\r\n this.dialogRef.close();\r\n }\r\n\r\n public concluir(){\r\n if (!this.prazoDias || this.prazoDias < 1) {\r\n this.exibirMensagemAlerta(\"Preencha um prazo!\");\r\n return;\r\n }\r\n\r\n this.questionarioUGService\r\n .solicitarPreenchimentoQuestionario(this.data.param1, this.prazoDias)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n // aqui chamar o pagina principal\r\n this.dialogRef.close();\r\n } else {\r\n // this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n // this.exibirMensagemErro(err.mensagem);\r\n })\r\n .finally(() => {\r\n // this.buscar();\r\n });\r\n }\r\n\r\n public onChangePreencherPrazo(event){\r\n this.prazoDias = event.target.value;\r\n }\r\n\r\n public exibirMensagemAlerta(mensagem: string): void{\r\n this.mensagemAlerta = mensagem;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Prazo para Preenchimento

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ mensagemAlerta }}\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n ","import { Component, Inject, OnInit } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { QuestionarioUGService } from \"../../../../services/questionarioug.service\";\r\nimport { SharedService } from \"../../../../services/shared.service\";\r\nimport { UniversoAuditavelService } from \"../../../../services/universo-auditavel.service\";\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-universo-auditavel-importa-dados',\r\n templateUrl: './modal-universo-auditavel-importa-dados.component.html',\r\n styleUrls: ['./modal-universo-auditavel-importa-dados.component.scss']\r\n})\r\nexport class ModalUniversoAuditavelImportaDadosComponent implements OnInit{\r\n unidadeGestoraId: number;\r\n constructor(\r\n private router: Router,\r\n @Inject(MAT_DIALOG_DATA) public data: any ,\r\n private universoAuditavelService: UniversoAuditavelService,\r\n private sharedService: SharedService,\r\n private dialogRef: MatDialogRef\r\n ) { }\r\n ngOnInit(): void {\r\n this.unidadeGestoraId = this.sharedService.getId();\r\n }\r\n public Nao() {\r\n this.dialogRef.close();\r\n this.router.navigate(['tipo-universo-auditavel/novo']);\r\n }\r\n public Sim(){\r\n\r\n if(!this.data.tipoUniversoId){\r\n this.dialogRef.close();\r\n }\r\n\r\n this.universoAuditavelService.inserirUniversoAPartirDoUltimo(this.data.unidadeGestoraId, this.data.tipoUniversoId).then(res=>{\r\n if (res.sucesso) {\r\n this.dialogRef.close();\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.unidadeGestoraId}?aba=3`);\r\n }\r\n })\r\n\r\n }\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Universo Auditável Nova Versão

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Deseja importar os dados da versão ativa?

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from \"@angular/core\";\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { Location } from \"@angular/common\";\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-universo-auditavel-importarcao',\r\n templateUrl: 'modal-universo-auditavel-importacao.component.html',\r\n styleUrls: ['modal-universo-auditavel-importacao.component.scss']\r\n})\r\nexport class ModalUniversoAuditavelImportacaoComponent implements OnInit{\r\n private currentDialogRef: MatDialogRef;\r\n\r\n unidadeGestoraId: number;\r\n tipoUniversoId: number;\r\n tipoUniverso: number;\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n private matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data: any ,\r\n private router: Router,\r\n ) {\r\n\r\n\r\n }\r\n ngOnInit(): void {\r\n this.unidadeGestoraId = this.data.unidadeGestoraId;\r\n this.tipoUniversoId = this.data.tipoUniversoId;\r\n this.tipoUniverso = this.data.tipoUniverso;\r\n }\r\n public Sim(){\r\n this.dialogRef.close();\r\n this.router.navigate(['/importar-arquivo-universo-auditavel/novo'], { queryParams: { unidadeGestoraId: this.unidadeGestoraId, tipoUniversoId: this.tipoUniversoId } });\r\n }\r\n public Nao() {\r\n this.dialogRef.close();\r\n }\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Questionário Nova Versão

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Esta ação gerará uma nova versão, a versão atual será inativada e uma nova versão deverá ser importada! Tem certeza que deseja importar uma nova versão e inativar a versão atual?

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from \"@angular/core\";\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogConfig, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { Router } from \"@angular/router\";\r\nimport {\r\n ModalUniversoAuditavelImportaDadosComponent\r\n} from \"../modal-universo-auditavel-importa-dados/modal-universo-auditavel-importa-dados.component\";\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-universo-auditavel-nova-versao',\r\n templateUrl: './modal-universo-auditavel-nova-versao.component.html',\r\n styleUrls: ['./modal-universo-auditavel-nova-versao.component.scss']\r\n})\r\nexport class ModalUniversoAuditavelNovaVersaoComponent implements OnInit{\r\n private currentDialogRef: MatDialogRef;\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n private matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data: any ,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public Sim() {\r\n if(this.data.source === 'importarArquivo')\r\n {\r\n this.dialogRef.close();\r\n this.router.navigate([`importacao-arquivo-universo-auditavel-shared`]);\r\n }else {\r\n this.dialogRef.close();\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal2-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n unidadeGestoraId: this.data.unidadeGestoraId,\r\n tipoUniversoId: this.data.tipoUniversoId\r\n };\r\n\r\n const modal = this.matDialog.open(ModalUniversoAuditavelImportaDadosComponent, dialogConfig);\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n\r\n })\r\n }\r\n\r\n }\r\n\r\n public Nao() {\r\n this.router.navigateByUrl(\r\n `/unidades-gestoras/${this.data.unidadeGestoraId}?aba=3`\r\n );\r\n this.dialogRef.close();\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Universo Auditável Nova Versão

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Você solicitou a geração de uma nova versão de mesmo tipo, a versão atual será inativada e uma nova versão será disponibilizada para preenchimento! Tem certeza que deseja criar uma nova e inativar a versão atual?

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, NgModule, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { IListaQuestionarioRespostaUGModel, IQuestionarioUGModel, IVisualizarQuestionarioRespostaUGModel, QuestionarioUGItensResposta } from 'src/app/models/questionario-ug.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { QuestionarioUGService } from 'src/app/services/questionarioug.service';\r\nimport { PerguntaService } from 'src/app/services/pergunta.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { QuestionarioUGRespostaService } from 'src/app/services/questionarioug-resposta.service';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\n\r\n@Component({\r\n selector: 'app-visualizar-questionario',\r\n templateUrl: './visualizar-questionario.component.html',\r\n styleUrls: ['./visualizar-questionario.component.scss']\r\n})\r\n\r\nexport class VisualizarQuestionarioComponent extends BaseFormComponent implements OnInit {\r\n public model= {} as IListaQuestionarioRespostaUGModel;\r\n public tiles = [];\r\n public idUnidadeGestora : number;\r\n public semDados: boolean;\r\n public dataSource = new MatTableDataSource([]);\r\n displayedColumns: string[] = ['pergunta','tipoAvaliacaoAuditor', 'avaliacaoAuditor', 'tipoReplica', 'replica', 'avaliacaoFinal', 'tipoAvaliacaoFinal'];\r\n public titulo: string = 'Visualizar questionário';\r\n\r\n constructor(\r\n private questionarioUGService: QuestionarioUGService,\r\n toastr: ToastrService,\r\n route: ActivatedRoute,\r\n router: Router,\r\n private authService: AuthService,\r\n localeService: BsLocaleService,\r\n public sharedService: SharedService,\r\n private perguntaService: PerguntaService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private questionarioService: QuestionarioUGRespostaService,\r\n public matDialog: MatDialog,\r\n public matGridListModule: MatGridListModule\r\n ) { \r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n public form = new FormGroup({\r\n id: new FormControl({value: '', disabled:true}),\r\n nome: new FormControl('', Validators.required),\r\n tipoDocumento: new FormControl({value:[] as IEnumModel[]})\r\n })\r\n\r\n async ngOnInit() {\r\n\r\n if(!this.novoRegistro){\r\n this.questionarioService.ObterRespostaQuestionario(this.id)\r\n .then((res) => {\r\n this.model = res.dados;\r\n this.dataSource = new MatTableDataSource(res.dados.respostas);\r\n });\r\n } \r\n\r\n }\r\n\r\n public onBack() {\r\n debugger\r\n this.submit = false;\r\n let aba = this.sharedService.getTipoQuestionario();\r\n let idUG = this.sharedService.getId();\r\n this.router.navigateByUrl(`/unidades-gestoras/${idUG}?aba=${aba}`);\r\n }\r\n\r\n}\r\n","\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tSeção/Pergunta\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n {{ element.pergunta }}\r\n \r\n
\r\n \r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvaliação Auditor\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n {{element.tipoAvaliacaoAuditor\t}}\r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tResposta Revisada\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n\r\n \r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tRéplica\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n {{element.tipoReplica}}\r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tResposta Revisada da Réplica\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvaliação Final\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n {{element.tipoAvaliacaoFinal}}\r\n\r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t Resposta Final\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\r\n\r\n\t\t
\r\n\r\n\t
\r\n
\r\n
\r\n \r\n Fechar\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport Inputmask from 'inputmask';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { IResponsavelUnidadeGestoraModel } from 'src/app/models/responsavel-unidade-gestora.model';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\nimport { AcessoCidadaoService } from 'src/app/services/acesso-cidadao.service';\r\nimport { OrganogramaService } from 'src/app/services/organograma.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from '../../shared/components/base-form/base-form.component';\r\nimport { IUnidadeGestoraMaturidadeGRModel } from 'src/app/models/unidade-gestora-maturidadeGR.model';\r\nimport { UnidadeGestoraMaturidadeGRService } from 'src/app/services/unidade-gestora-maturidadeGR.service';\r\nimport { FiltroModel } from 'src/app/models/filtro.model';\r\nimport { UnidadeGestoraMaturidadeGRHistoricoService } from 'src/app/services/unidade-gestora-maturidadeGRHistorico.service';\r\nimport { IFiltroUnidadeGestoraMaturidadeGRHistoricoModel } from 'src/app/models/filtro-unidade-gestora-maturidadegrhistorico.model';\r\nimport { HistoricoModalComponent } from 'src/app/shared/components/historico-modal/historico-modal.component';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-unidade-gestora-form',\r\n templateUrl: './unidade-gestora-form.component.html',\r\n styleUrls: ['./unidade-gestora-form.component.scss']\r\n})\r\nexport class UnidadeGestoraFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IUnidadeGestoraModel = {} as IUnidadeGestoraModel;\r\n public enumTipoAdministracao = [] as IEnumModel[];\r\n public enumAnosObrigatorios = [] as IEnumModel[];\r\n public enumFuncoes = [] as IEnumModel[];\r\n public modelResponsavel: IResponsavelUnidadeGestoraModel = {} as IResponsavelUnidadeGestoraModel;\r\n public semDados = true;\r\n public ugDataSource = new MatTableDataSource([]);\r\n public maturidades = [] as IUnidadeGestoraMaturidadeGRModel[];\r\n public unidadeGestoraId: number;\r\n public salvarDadosPendente = false;\r\n\r\n public form = new FormGroup({\r\n codigoUg: new FormControl('', Validators.required),\r\n gestao: new FormControl('', Validators.required),\r\n orgaoSuperior: new FormControl('', Validators.required),\r\n codigoUo: new FormControl('', Validators.required),\r\n sigla: new FormControl('', Validators.required),\r\n nome: new FormControl('', Validators.required),\r\n cnpj: new FormControl(''),\r\n orgaoId: new FormControl(null, Validators.required),\r\n responsavelId: new FormControl(null, Validators.required),\r\n unidadeGestoraResponsavelId: new FormControl(null),\r\n tipoAdministracaoId: new FormControl('', Validators.required),\r\n auditoriaObrigatoria: new FormControl({value:'',disabled: this.visualizar}),\r\n anosObrigatorios: new FormControl({value:'', disabled: this.visualizar }),\r\n executaOrcamento: new FormControl({value:'',disabled: this.visualizar}),\r\n executaObra: new FormControl({value:'',disabled: this.visualizar}),\r\n executaConvenio: new FormControl({value:'',disabled: this.visualizar}),\r\n auditoriaSistemas: new FormControl({value:'',disabled: this.visualizar}),\r\n empresaPublica: new FormControl({value:'',disabled: this.visualizar}),\r\n unidadeGestoraMaturidadeGRId: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n private acessoCidadaoService: AcessoCidadaoService,\r\n private organogramaService: OrganogramaService,\r\n private unidadeGestoraMaturidadeGRService: UnidadeGestoraMaturidadeGRService,\r\n private unidadeGestoraMaturidadeGRHistoricoService: UnidadeGestoraMaturidadeGRHistoricoService,\r\n public matDialog: MatDialog,\r\n private sharedService: SharedService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Nova Unidade Gestora';\r\n }\r\n }\r\n\r\n ngAfterViewInit(){\r\n const numeroAba = this.route.snapshot.queryParamMap.get(\"aba\");\r\n if (numeroAba) {\r\n this.aba = Number(numeroAba);\r\n } \r\n }\r\n\r\n async ngOnInit() {\r\n \r\n Inputmask().mask(document.querySelectorAll('input'));\r\n this.adicionarEnums();\r\n this.carregaMaturidades();\r\n this.sharedService.setId(this.id);\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.unidadeGestoraService.obterPorId(this.id);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n if (this.visualizar) {\r\n this.titulo = 'Visualisar Unidade Gestora - ' + this.model.sigla;\r\n }\r\n else{\r\n this.titulo = 'Editar Unidade Gestora - ' + this.model.sigla;\r\n }\r\n if (this.model.organogramaId) {\r\n this.form.controls['codigoUg'].enable();\r\n this.form.controls['cnpj'].enable();\r\n }\r\n\r\n if (this.model.importadoViaServico) {\r\n this.desabilitarUgImportadoViaServico();\r\n }\r\n\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/unidades-gestoras']);\r\n return;\r\n }\r\n }\r\n\r\n if (!this.model.importadoViaServico) {\r\n const tiposAdministracao: any[] = [];\r\n let result: any;\r\n\r\n result = await this.tabelaDominioService.obterTipoAdministracao();\r\n const { dados } = result[0];\r\n\r\n dados.forEach((item: { id: number; nome: string; }) => {\r\n tiposAdministracao.push({ codigo: item.id, nome: item.nome, descricao: item.nome });\r\n });\r\n\r\n this.enumTipoAdministracao = tiposAdministracao;\r\n }\r\n\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/unidades-gestoras']);\r\n }\r\n }\r\n\r\n private desabilitarUgImportadoViaServico() {\r\n this.form.controls['cnpj'].disable();\r\n this.form.controls['codigoUg'].disable();\r\n this.form.controls['sigla'].disable();\r\n this.form.controls['gestao'].disable();\r\n this.form.controls['nome'].disable();\r\n this.form.controls['tipoAdministracaoId'].disable();\r\n this.enumTipoAdministracao = [{ codigo: this.model.tipoAdministracaoId, nome: this.model.tipoAdministracaoNome, descricao: this.model.tipoAdministracaoNome, guid: \"\" }];\r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean)\r\n {\r\n \r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n\r\n this.submit = true;\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n if (!this.novoRegistro) {\r\n res = await this.unidadeGestoraService.atualizar(this.model);\r\n } else {\r\n res = await this.unidadeGestoraService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n\r\n if(salvarEFechar == true){\r\n this.router.navigate(['/unidades-gestoras']);\r\n }\r\n else{\r\n this.router.navigate([`/unidades-gestoras/${res.dados.id}`]);\r\n }\r\n\r\n } else {\r\n this.submit = false;\r\n const validacoes = this.montarMensagensValidacao(res);\r\n this.exibirMensagemAlerta(res.mensagem.descricao, true);\r\n }\r\n } catch (err) {\r\n this.submit = false;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public onBack() {\r\n this.submit = false;\r\n this.router.navigate(['/unidades-gestoras']);\r\n }\r\n\r\n public async exibirModalOrgao() {\r\n try {\r\n const res = await this.organogramaService.ObterOrgaos();\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Órgão', res.dados, false);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.model.orgaoId = data.id;\r\n this.model.nomeOrgao = data.nome;\r\n this.form.controls['orgaoId'].setValue(data.id);\r\n }\r\n }\r\n );\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async exibirModalResponsavelUnidade() {\r\n if (!this.model.orgaoId) {\r\n this.exibirMensagemAlerta('É necessário selecionar um órgão antes de escolher o responsável.');\r\n return;\r\n }\r\n\r\n try {\r\n const res = await this.acessoCidadaoService.ObterAgentesPublicosPorConjunto(this.model.orgaoId);\r\n if (res.sucesso) {\r\n const modal = this.exibirModal('Selecionar Responsável pela Unidade', res.dados, false);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.model.responsavelId = data.id;\r\n this.model.nomeResponsavel = data.nome;\r\n this.form.controls['responsavelId'].setValue(data.id);\r\n }\r\n }\r\n );\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async exibirModalUnidadeGestoraResponsavel() {\r\n try {\r\n const res = await this.unidadeGestoraService.obter();\r\n if (res.sucesso) {\r\n const customFilterPredicate = (data: { sigla: string, nome: string }, filterValue: string) => {\r\n return (data.sigla || '').trim().toLowerCase().indexOf(filterValue) !== -1\r\n || (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1;\r\n };\r\n\r\n const modal = this.exibirModal('Selecionar Unidade Gestora Responsavel', res.dados.resultado.filter(_ => !this.ugDataSource.data.find(i => i.id === _.id)).map(c => ({ ...c, sigla: c.sigla })), false, [\r\n {\r\n columnDef: 'selecao',\r\n header: ''\r\n },\r\n {\r\n columnDef: 'sigla',\r\n header: 'Sigla'\r\n },\r\n {\r\n columnDef: 'nome',\r\n header: 'Nome'\r\n }], customFilterPredicate);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.model.unidadeGestoraResponsavelId = data.id;\r\n this.model.nomeUnidadeGestoraResponsavel = data.nome;\r\n this.form.controls['unidadeGestoraResponsavelId'].setValue(data.id);\r\n }\r\n }\r\n );\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n\r\n public adicionarEnums(){\r\n this.enumAnosObrigatorios.push({ codigo: 2, nome: \"1º\", descricao: \"1º\" , guid: \"\"});\r\n this.enumAnosObrigatorios.push({ codigo: 4, nome: \"2º\", descricao: \"2º\" , guid: \"\"});\r\n this.enumAnosObrigatorios.push({ codigo: 8, nome: \"3º\", descricao: \"3º\" , guid: \"\"});\r\n this.enumAnosObrigatorios.push({ codigo: 16, nome: \"4º\", descricao: \"4º\" , guid: \"\"});\r\n }\r\n\r\n public async carregaMaturidades(){\r\n const filtro = {} as FiltroModel;\r\n this.unidadeGestoraMaturidadeGRService\r\n .obter(filtro)\r\n .then((res) => {\r\n this.maturidades = res.dados;\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n }); \r\n }\r\n\r\n public async abrirModalHistoricoMaturidade(){\r\n const filtroHistorico = {} as IFiltroUnidadeGestoraMaturidadeGRHistoricoModel;\r\n filtroHistorico.idug = this.model.id;\r\n const dadosHistoricoMaturidade = await this.unidadeGestoraMaturidadeGRHistoricoService.obter(filtroHistorico)\r\n \r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-historico-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n const txtTitulo = `Histórico da UG: ${this.model.sigla}`;\r\n dialogConfig.data = {\r\n historicoDados: dadosHistoricoMaturidade.dados,\r\n tituloModal: txtTitulo\r\n };\r\n\r\n const modal = this.matDialog.open(\r\n HistoricoModalComponent,\r\n dialogConfig\r\n );\r\n\r\n\r\n }\r\n\r\n onChangeAba(novaAba: number){\r\n //this.router.navigate([`/unidades-gestoras/${this.id}?aba=${novaAba}`]);\r\n this.router.navigateByUrl(`/unidades-gestoras/${this.id}?aba=${novaAba}`);\r\n }\r\n\r\n mudarAba(novaAba: number) {\r\n console.log(novaAba);\r\n if (this.novoRegistro || (this.aba === 0 && this.salvarDadosPendente)) {\r\n this.exibirMensagemErro('Por favor, salve os dados antes de prosseguir');\r\n\r\n return;\r\n }\r\n\r\n this.aba = novaAba; \r\n }\r\n \r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Unidades Gestoras\r\n
  4. \r\n
  5. {{ titulo }}
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\n\r\n@Component({\r\n selector: 'app-modal-associar',\r\n templateUrl: './modal-associar.component.html',\r\n styleUrls: ['./modal-associar.component.scss']\r\n})\r\nexport class ModalAssociarComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public todasUnidadesGestoras = [] as IUnidadeGestoraModel[];\r\n public unidadesGestorasDisponiveis = [] as IUnidadeGestoraModel[];\r\n public idSelecionado: number;\r\n public semDados = true;\r\n public displayedColumns = ['id', 'sigla', 'nome', 'actions'];\r\n\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.todasUnidadesGestoras = data;\r\n this.unidadesGestorasDisponiveis = data;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public remover(ind: number) {\r\n this.dataSource.data.splice(ind, 1);\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.data.length === 0;\r\n\r\n const idsSelecionadas = this.dataSource.data.map((a) => (a.id));\r\n this.unidadesGestorasDisponiveis = this.todasUnidadesGestoras.filter(u => idsSelecionadas.indexOf(u.id) < 0);\r\n }\r\n\r\n public adicionar() {\r\n const idsSelecionadas = this.dataSource.data.map((a) => (a.id));\r\n idsSelecionadas.push(this.idSelecionado);\r\n\r\n this.unidadesGestorasDisponiveis = this.todasUnidadesGestoras.filter(u => idsSelecionadas.indexOf(u.id) < 0);\r\n this.dataSource.data.push(cloneDeep(this.todasUnidadesGestoras.find(a => a.id === this.idSelecionado)));\r\n this.dataSource._updateChangeSubscription();\r\n delete (this.idSelecionado);\r\n this.semDados = false;\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.dataSource.data);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Associar Unidades Gestoras

\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
Id {{element.id}} Sigla {{element.sigla}} Nome {{element.nome}} \r\n
\r\n \r\n
\r\n
\r\n
Nenhuma Unidade Gestora selecionada
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-modal-importacao',\r\n templateUrl: './modal-importacao.component.html',\r\n styleUrls: ['./modal-importacao.component.scss']\r\n})\r\nexport class ModalImportacaoComponent implements OnInit {\r\n constructor(private dialogRef: MatDialogRef) { }\r\n public sigla: string;\r\n ngOnInit(): void {\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.sigla);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Importar Unidade

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { OnInit, AfterViewInit } from '@angular/core';\r\nimport { Component, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { FiltroUnidadeGestora } from 'src/app/models/filtro-unidade-gestora';\r\n\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport { BaseListComponent } from 'src/app/shared/components/base-list/base-list.component';\r\nimport Swal from 'sweetalert2';\r\n\r\nimport { ModalImportacaoComponent } from './modal-importacao/modal-importacao.component';\r\nimport { SharedService } from 'src/app/services/shared.service';\r\n\r\nconst sortingDataAccessor = (item, property) => {\r\n switch (property) {\r\n case 'id':\r\n return parseInt(item.codigoUg, 10);\r\n case 'codigoUg':\r\n return parseInt(item.codigoUg, 10); \r\n case 'sigla':\r\n return item.sigla.trim().toLowerCase(); ;\r\n case 'nome':\r\n return item.nome.trim().toLowerCase(); ;\r\n case 'responsavel':\r\n return item.nomeResponsavel.trim().toLowerCase(); ;\r\n case 'ativo':\r\n return item.ativo.trim().toLowerCase(); ;\r\n default:\r\n return item.nome.trim().toLowerCase(); ;\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-unidade-gestora-list',\r\n templateUrl: './unidade-gestora-list.component.html',\r\n styleUrls: [ './unidade-gestora-list.component.scss' ],\r\n})\r\nexport class UnidadeGestoraListComponent extends BaseListComponent implements OnInit, AfterViewInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public selectedModel: IUnidadeGestoraModel;\r\n public displayedColumns: string[] = [ 'selecao', 'codigoUg', 'sigla', 'nome', 'responsavel', 'ativo' ];\r\n public searchNome: string;\r\n public searchAtivo = true;\r\n public semDados = true;\r\n public totalItens: number;\r\n public searchPesquisa: string;\r\n public pageEvent: any;\r\n public filtro = {} as FiltroUnidadeGestora;\r\n\r\n @ViewChild('TableOnePaginator', { static: true })\r\n tableOnePaginator: MatPaginator;\r\n @ViewChild(MatPaginator, { static: true })\r\n paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true })\r\n sort: MatSort;\r\n\r\n constructor(\r\n private unidadeGestoraService: UnidadeGestoraService,\r\n private router: Router,\r\n private matDialog: MatDialog,\r\n private authService: AuthService,\r\n private sharedService: SharedService\r\n ) {\r\n super();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.configurarFiltro();\r\n this.buscar();\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setarPermissoes();\r\n }\r\n\r\n\r\n\r\n private setarPermissoes(): void {\r\n this.permissoes = new IPermissaoModel();\r\n this.permissoes.consultar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Cadastros,\r\n EnumAcaoRecurso.Consultar\r\n );\r\n this.permissoes.editar = this.authService.possuiPermissao(EnumRecursoPerfil.Cadastros, EnumAcaoRecurso.Editar);\r\n this.permissoes.excluir = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Cadastros,\r\n EnumAcaoRecurso.Excluir\r\n );\r\n this.permissoes.inativarReativar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Cadastros,\r\n EnumAcaoRecurso.AtivarInativar\r\n );\r\n this.permissoes.incluir = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Cadastros,\r\n EnumAcaoRecurso.Inserir\r\n );\r\n this.permissoes.visualizar = this.authService.possuiPermissao(\r\n EnumRecursoPerfil.Cadastros,\r\n EnumAcaoRecurso.Visualizar\r\n );\r\n }\r\n\r\n public novo() {\r\n this.router.navigate([ '/unidades-gestoras/novo' ]);\r\n }\r\n\r\n public buscar() {\r\n this.configurarFiltro();\r\n //this.selectedModel = null;\r\n this.unidadeGestoraService\r\n .obter(this.filtro)\r\n .then((res) => {\r\n this.dataSource = new MatTableDataSource(res.dados.resultado.sort((a, b) =>\r\n a['nome'].localeCompare(b['nome'])\r\n ) as IUnidadeGestoraModel[]);\r\n this.dataSource = new MatTableDataSource(res.dados.resultado);\r\n this.totalItens = res.dados.totalItens;\r\n this.paginator = this.tableOnePaginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = sortingDataAccessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n });\r\n }\r\n\r\n sortData(sort) {\r\n this.filtro.colunaOrder = sort.active;\r\n this.filtro.direcao = sort.direction;\r\n \r\n this.buscar();\r\n }\r\n\r\n private configurarFiltro() {\r\n this.filtro.pagina = this.tableOnePaginator.pageIndex + 1;\r\n this.filtro.itensPorPagina = +this.tableOnePaginator.pageSize;\r\n this.filtro.colunaOrder = this.sort.active;\r\n this.filtro.direcao = this.sort.direction;\r\n this.filtro.ativo = this.searchAtivo;\r\n this.filtro.pesquisa = this.searchNome == undefined ? '' : this.searchNome;\r\n this.filtro.nome = this.searchNome == undefined ? '' : this.searchNome;\r\n this.filtro.sigla = this.searchNome == undefined ? '' : this.searchNome;\r\n }\r\n\r\n pageChanged(e) {\r\n this.filtro.pagina = e.pageIndex + 1;\r\n e.pageIndex = this.filtro.pagina;\r\n this.filtro.itensPorPagina = e.pageSize;\r\n this.buscar();\r\n }\r\n\r\n public reativar(id: number) {\r\n this.unidadeGestoraService\r\n .reativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Unidade Gestora reativada com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public inativar(id: number) {\r\n this.unidadeGestoraService\r\n .inativar(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Unidade Gestora inativada com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public editar(id: number) {\r\n this.sharedService.setModoVisualizacaoAbasUnidadeGestora(false);\r\n this.router.navigate([ `/unidades-gestoras/${id}` ]);\r\n }\r\n\r\n public selecionar(item: any) {\r\n this.selectedModel = !this.selectedModel || this.selectedModel.id !== item.id ? item : null;\r\n }\r\n\r\n public excluir(id: number) {\r\n this.unidadeGestoraService\r\n .excluir(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Unidade Gestora excluída com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n title: 'Erro',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public visualizar(id: number) {\r\n this.sharedService.setModoVisualizacaoAbasUnidadeGestora(true);\r\n this.router.navigate([ `/unidades-gestoras/${id}/visualizar` ]);\r\n }\r\n\r\n public importarUgPorServico() {\r\n this.unidadeGestoraService\r\n .importarUgServico()\r\n .then((res) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.toString(),\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n title: 'Error na importação de UG via serviço',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n\r\n public importar() {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '450px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n\r\n const dialogRef = this.matDialog.open(ModalImportacaoComponent, dialogConfig);\r\n\r\n dialogRef.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.unidadeGestoraService\r\n .importar(data)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Importação Finalizada!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.buscar();\r\n });\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. Unidades Gestoras
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Unidades Gestoras\r\n

\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n Código UG {{element.codigoUg}} Sigla {{element.sigla}} Nome {{element.nome}} Responsável {{element.nomeResponsavel}} Situação \r\n Ativo\r\n Inativo\r\n
\r\n
Nenhum registro encontrado.
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IAgentePublicoACModel } from '../models/agente-publico-ac.model';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { BaseService } from './base.service';\r\nimport { IPerfilAcessoCidadaoModel } from '../models/perfil-acessocidadao.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AcessoCidadaoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public ObterAgentesPublicosSecont(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/acessocidadao/secont/agentesPublicosAtivos`)\r\n .toPromise();\r\n }\r\n\r\n public ObterAgentesPublicosPorConjunto(conjuntoId: string): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/acessocidadao/conjunto/${conjuntoId}/agentespublicos`)\r\n .toPromise();\r\n }\r\n\r\n public ObterPorId(id: string): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/acessocidadao/agentepublico/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public ObterPerfisAcessoCidadao(): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/acessocidadao/buscarPerfisAcessoCidadao`)\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { FiltroModel } from '../models/filtro.model';\r\nimport { BaseService } from './base.service';\r\nimport { filterBy } from '../core/helpers/filterby';\r\nimport { IAgentePublicoModel } from '../models/agente-publico.model';\r\nimport { IAgentePublicoViewModel } from '../models/viewmodels/agente-publico-viewmodel';\r\nimport { IFiltroAgentePublico } from '../models/filtros/filtro-agente-publico.model';\r\nimport { IAgentePublicoDisponibilidadeModel } from '../models/agente-publico-disponibilidade.model';\r\nimport { IAgentePublicoDispensaModel } from '../models/agente-publico-dispensa.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AgentePublicoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro: FiltroModel): Promise> {\r\n return this.httpClient\r\n .get>(filterBy(filtro,`${this.apiBaseUrl}/agentePublico`))\r\n .toPromise();\r\n }\r\n\r\n public obterViewModel(filtro: IFiltroAgentePublico): Promise>{\r\n return this \r\n .httpClient\r\n .get>(filterBy(filtro, `${this.apiBaseUrl}/agentePublico/obterViewModel`))\r\n .toPromise();\r\n }\r\n\r\n public async getDadosBasicos(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/agentePublico/${id}/AbaDadosBasicos`)\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/agentePublico/${id}`)\r\n .toPromise();\r\n }\r\n\r\n \r\n public async sincronizar(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/agentePublico/sincronizar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/agentePublico/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/agentePublico/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async getDadosDisponibilidade(id: number, ano: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/agentePublico/${id}/AbaDisponibilidade/${ano}`, {})\r\n .toPromise();\r\n }\r\n\r\n public async salvarDadosDisponibilidade(dados: IAgentePublicoDisponibilidadeModel[]) : Promise>{\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/agentePublico/AbaDisponibilidade/atualizarDisponibilidade`, dados)\r\n .toPromise();\r\n }\r\n\r\n public async getDadosDispensas(id: number, ano: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/agentePublico/${id}/AbaDispensas/${ano}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserirDispensa(dispensa: IAgentePublicoDispensaModel): Promise>{\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/agentePublico/AbaDispensas/inserir`, dispensa)\r\n .toPromise();\r\n }\r\n\r\n public async atualizarDispensa(dispensa: IAgentePublicoDispensaModel): Promise>{\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/agentePublico/AbaDispensas/atualizar`, dispensa)\r\n .toPromise();\r\n }\r\n\r\n public async excluirDispensa(id: number): Promise>{\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/agentePublico/AbaDispensas/excluir/${id}`)\r\n .toPromise();\r\n }\r\n\r\n \r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IAmostraModel } from '../models/amostra.model';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AmostraService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n public async obterAmostra(id: number, tipoAmostra: string): Promise> {\r\n if(tipoAmostra === \"planejamento\"){\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/amostras/planejamento/${id}`)\r\n .toPromise();\r\n }if(tipoAmostra === \"osa\"){\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/amostras/osas/${id}`)\r\n .toPromise();\r\n }if(tipoAmostra === \"auditoria\"){\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/amostras/auditoria/${id}`)\r\n .toPromise();\r\n }\r\n }\r\n\r\n public async obterAmostraId(id: number, amostraId: number, tipoAmostra:string): Promise> {\r\n if(tipoAmostra === \"planejamento\") {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/amostras/${amostraId}/planejamento/${id}`)\r\n .toPromise();\r\n }if(tipoAmostra === \"osa\"){\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/amostras/${amostraId}/osas/${id}`)\r\n .toPromise();\r\n }if(tipoAmostra === \"auditoria\"){\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/amostras/${amostraId}/auditoria/${id}`)\r\n .toPromise();\r\n }\r\n }\r\n\r\n public async download(id: number, tipoAmostra: string): Promise> {\r\n if(tipoAmostra === \"planejamento\"){\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/amostras/anexo-planejamento/${id}/download`)\r\n .toPromise();\r\n }if(tipoAmostra === \"osa\"){\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/amostras/anexo-osa/${id}/download`)\r\n .toPromise();\r\n }\r\n }\r\n\r\n public async salvarAmostra(id: number, model: IAmostraModel, tipoAmostra: string): Promise> {\r\n if(tipoAmostra === \"planejamento\"){\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/amostras/planejamento/${id}`, model)\r\n .toPromise();\r\n }if(tipoAmostra === \"osa\"){\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/amostras/osas/${id}`, model)\r\n .toPromise();\r\n }if(tipoAmostra === \"auditoria\"){\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/amostras/auditoria/${id}`, model)\r\n .toPromise();\r\n }\r\n }\r\n\r\n public async excluirAmostra(id: number, amostraId: number, tipoAmostra: string): Promise> {\r\n if(tipoAmostra === \"planejamento\"){\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/amostras/${amostraId}/planejamento/${id}`, {})\r\n .toPromise();\r\n }if (tipoAmostra === \"osa\"){\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/amostras/${amostraId}/osas/${id}`, {})\r\n .toPromise();\r\n }if(tipoAmostra === \"auditoria\"){\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/amostras/${amostraId}/auditoria/${id}`, {})\r\n .toPromise();\r\n }\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IAprovacaoModel } from '../models/aprovacao.model';\r\nimport { IAvaliacaoModel } from '../models/avaliacao.model';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IEnumModel } from '../models/enum.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { filterBy } from './auditoria.service';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AprovacaoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro?: any): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro, `${this.apiBaseUrl}/aprovacao`) )\r\n .toPromise();\r\n }\r\n\r\n public async aprovarReprovar(id: number, tipoDocumento: number, situacaoAvaliacao: number, comentario: string): Promise> {\r\n const request = {\r\n tipoTrabalho: {\r\n codigo: tipoDocumento\r\n },\r\n situacao: {\r\n codigo: situacaoAvaliacao\r\n },\r\n comentario\r\n } as IAvaliacaoModel;\r\n\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/aprovacao/${id}/aprovar-reprovar`, request)\r\n .toPromise();\r\n }\r\n\r\n public async imprimir(id: number): Promise> {\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/avaliacao/${id}/imprimir`, {})\r\n .toPromise();\r\n }\r\n\r\n public async imprimirRelatoria(id: number): Promise> {\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/avaliacao/${id}/imprimir-relatoria`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { IAuditoriaListModel } from 'src/app/models/auditoria.model';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { BaseService } from './base.service';\r\nimport { FiltroModel } from '../models/filtro.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuditoriaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obterPorFiltros(filtro: FiltroModel) {\r\n return this.httpClient\r\n .get>>(\r\n filterBy(filtro, `${this.apiBaseUrl}/auditoria`, )\r\n );\r\n }\r\n\r\n}\r\n\r\nexport interface FilterByOptions {\r\n recursive?: boolean;\r\n dateSeparator?: string;\r\n}\r\n\r\nexport function filterBy(filter: any, url: string, options?: FilterByOptions) {\r\n const recursive = options && options.recursive;\r\n const dateSeparator = options && options.dateSeparator || '-';\r\n const joinParams = (obj: any, prepend?: string) => {\r\n const arr = [];\r\n Object.keys(obj)\r\n .filter(key => {\r\n const value = obj[key];\r\n return value !== null && value !== undefined && (value instanceof Date || typeof value !== 'object' || recursive);\r\n })\r\n .forEach(key => {\r\n const value = obj[key];\r\n let str: string;\r\n if (typeof value === 'object') {\r\n str = value instanceof Date\r\n ? `${prepend || ''}${key}=${dateToString(value, dateSeparator)}`\r\n : joinParams(value, `${prepend || ''}${key}.`);\r\n } else {\r\n str = `${prepend || ''}${key}=${value}`;\r\n }\r\n if (str) {\r\n arr.push(str);\r\n }\r\n });\r\n return arr.length ? arr.join('&') : null;\r\n };\r\n\r\n if (!filter || typeof filter !== 'object') {\r\n return url;\r\n }\r\n\r\n const filterUrl = joinParams(filter);\r\n if (!filterUrl) {\r\n return url;\r\n }\r\n\r\n const concatChar = url.indexOf('?') === -1 ? '?' : '&';\r\n return `${url}${concatChar}${filterUrl}`;\r\n}\r\n\r\nfunction dateToString(date: Date, separator: string) {\r\n return [\r\n ('0' + (date.getMonth() + 1)).slice(-2),\r\n ('0' + date.getDate()).slice(-2),\r\n date.getFullYear()\r\n ].join(separator);\r\n}","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { EnumRecursoPerfil } from '../models/enum/recurso-perfil.enum';\r\nimport { IPerfilUsuarioModel } from '../models/perfil-usuario.model';\r\nimport { IUsuarioEstadoModel } from '../models/usuario-estado.model';\r\nimport { BaseService } from './base.service';\r\nimport { IEnumModel } from '../models/enum.model';\r\n\r\n@Injectable()\r\nexport class AuthService extends BaseService {\r\n public usuario: IPerfilUsuarioModel;\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async obterPerfilUsuario(): Promise> {\r\n if (this.usuario) {\r\n return Promise.resolve({ sucesso: true, dados: this.usuario } as IBaseModel);\r\n } else {\r\n try {\r\n const res = await this.httpClient\r\n .get>(`${this.apiBaseUrl}/usuario/perfil`)\r\n .toPromise();\r\n this.usuario = res.dados;\r\n return res;\r\n }\r\n catch (err) {\r\n delete (this.usuario);\r\n throw (err);\r\n }\r\n }\r\n }\r\n\r\n public obterEstado(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/usuario/estado`)\r\n .toPromise();\r\n }\r\n\r\n public logout(): void {\r\n window.location.replace('./conta/logout');\r\n }\r\n\r\n public login(): void {\r\n window.location.replace('./conta/login?returnUrl=' + window.location);\r\n }\r\n\r\n public possuiPermissao(recurso: string, acao: string) {\r\n if (EnumRecursoPerfil.Aberto == recurso)\r\n return true;\r\n var recursos = this.usuario && this.usuario.permissoesRecursos && this.usuario.permissoesRecursos.find(d => d.recurso.toUpperCase() == recurso.toUpperCase());\r\n return recursos != undefined && recursos.acoes.some(d => d.toUpperCase() == acao.toUpperCase());\r\n }\r\n\r\n public possuiPerfis(perfis: string[]) {\r\n return this.usuario\r\n && this.usuario.perfis\r\n && perfis.some(p => this.usuario.perfis.indexOf(p) >= 0);\r\n }\r\n\r\n public possuiPermissaoRecurso(recurso: string, acao: string) {\r\n return false;\r\n }\r\n\r\n public async obterPerfisSimplificado(): Promise> {\r\n \r\n try {\r\n const res = await this.httpClient\r\n .get>(`${this.apiBaseUrl}/usuario/obterPerfisSimplificado`)\r\n .toPromise();\r\n return res;\r\n }\r\n catch (err) {\r\n throw (err);\r\n }\r\n \r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IAprovacaoModel } from '../models/aprovacao.model';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ILinhaDoTempoModel } from '../models/linha-tempo.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AvaliacaoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(tipoDocumento: number, tipoDocumentoId: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/avaliacao/${tipoDocumento}/tipoTrabalho/${tipoDocumentoId}`, { })\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class BaseService {\r\n public apiBaseUrl = '';\r\n\r\n constructor(public httpClient: HttpClient, private locationStrategy: LocationStrategy) {\r\n const baseHref = this.locationStrategy.getBaseHref();\r\n const apiUrl = baseHref.endsWith('/') ? baseHref + 'api' : baseHref + '/api';\r\n this.apiBaseUrl = `${window.location.origin}${apiUrl}`;\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICalendarioModel } from '../models/calendario.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CalendarioService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/calendario`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/calendario/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ICalendarioModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/calendario`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ICalendarioModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/calendario/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/calendario/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/calendario/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/calendario/${id}/excluir`, {})\r\n .toPromise (); \r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICapituloRelatorioModel } from '../models/capitulo-relatorio.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CapituloRelatorioService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/capitulorelatorio`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/capitulorelatorio/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ICapituloRelatorioModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/capitulorelatorio`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ICapituloRelatorioModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/capitulorelatorio/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async aprovarReprovarCapitulo(id: number, aprovado: boolean): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/capitulorelatorio/${id}/aprovar/${aprovado}`, {})\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/capitulorelatorio/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/capitulorelatorio/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICategoriaRiscoModel } from '../models/categoria-risco.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { FiltroModel } from '../models/filtro.model';\r\nimport { BaseService } from './base.service';\r\nimport { filterBy } from '../core/helpers/filterby';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CategoriaRiscoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro: FiltroModel): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/CategoriaRisco`))\r\n .toPromise();\r\n }\r\n public obterTodos(filtro: FiltroModel): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/CategoriaRisco/conjunto`))\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/CategoriaRisco/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ICategoriaRiscoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/CategoriaRisco`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ICategoriaRiscoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/CategoriaRisco/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/CategoriaRisco/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/CategoriaRisco/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/CategoriaRisco/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IConstatacaoRecomendacaoModel } from '../models/constatacao-recomendacao.model';\r\nimport { IConstatacaoModel } from '../models/constatacao.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ConstatacaoService extends BaseService {\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/constatacao`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient.get>(`${this.apiBaseUrl}/constatacao/${id}`).toPromise();\r\n }\r\n\r\n public async obterPorRecomendacaoId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/constatacao/${id}/recomendacao`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IConstatacaoModel): Promise> {\r\n return this.httpClient.post>(`${this.apiBaseUrl}/constatacao`, data).toPromise();\r\n }\r\n\r\n public async atualizar(data: IConstatacaoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/constatacao/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient.post>(`${this.apiBaseUrl}/constatacao/${id}/reativar`, {}).toPromise();\r\n }\r\n\r\n public async vincularConstatacaoRecomendacao(\r\n constatacaoId: number,\r\n data: { recomendacoes: number[] }\r\n ): Promise> {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/Constatacao/${constatacaoId}/recomendacao-constatacao/salvar`,\r\n data\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async desvincularConstatacaoRecomendacao(constatacaoId: number, recomendacaoId): Promise> {\r\n return this.httpClient\r\n .delete>(\r\n `${this.apiBaseUrl}/Constatacao/${constatacaoId}/recomendacao/${recomendacaoId}/excluir`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient.post>(`${this.apiBaseUrl}/constatacao/${id}/inativar`, {}).toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient.delete>(`${this.apiBaseUrl}/constatacao/${id}`, {}).toPromise();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IControle } from '../models/controle.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ControleService extends BaseService {\r\n\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(criteriosAvaliacaoRiscosId: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('criteriosAvaliacaoRiscosId', criteriosAvaliacaoRiscosId || '0');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/controle`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/controle/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IControle): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/controle`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IControle): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/controle/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/controle/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IAuditorCoordenacaoModel } from '../models/auditor-coordenacao.model';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICoordenacaoModel } from '../models/coordenacao.model';\r\nimport { BaseService } from './base.service';\r\nimport { promise } from 'protractor';\r\nimport { ICoordenacaoTipoTrabalhoModel } from '../models/coordenacao-tipo-trabalho.model';\r\nimport { ICoordenacaoAgentePublicoDisponibilidadeModel } from '../models/coordenacao-agentepublico-disponibilidade.model';\r\nimport { ICoordenacaoAgentePublicoDispensaModel } from '../models/coordenacao-agentepublico-dispensa.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CoordenacaoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/coordenacao`, { params })\r\n .toPromise();\r\n }\r\n\r\n public obterCoordenacoesCoordenador(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/coordenacao/obter-coordenacoes-coordenador`, {})\r\n .toPromise();\r\n }\r\n\r\n public obterAuditorPorCoordenacao(id: number, auditorId: string, cargoAuditor: number, ano: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/coordenacao/${id}/auditores/${auditorId}/novo-cargo/${cargoAuditor}/${ano}`, {})\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number, exibeInativos: boolean = true): Promise> {\r\n let params = new HttpParams();\r\n if (exibeInativos) {\r\n params = params.append('exibeInativos', exibeInativos.toString());\r\n }\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/coordenacao/${id}`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorIdAno(id: number, ano:number): Promise> {\r\n \r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/coordenacao/${id}/${ano}`, { })\r\n .toPromise();\r\n }\r\n\r\n public async obterCoordenadoresAtivos(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/coordenacao/obter-coordenadores-ativos`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ICoordenacaoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/coordenacao`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ICoordenacaoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/coordenacao/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/coordenacao/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/coordenacao/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/coordenacao/${id}/excluir`, {})\r\n .toPromise (); \r\n }\r\n\r\n public async validarCoordenador(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/coordenacao/${id}/validarUsuarioCoordenacao`)\r\n .toPromise();\r\n }\r\n\r\n public async inserirTipoTrabalho(data: ICoordenacaoTipoTrabalhoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/coordenacao/inserirTipoTrabalho`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizarTipoTrabalho(data: ICoordenacaoTipoTrabalhoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/coordenacao/atualizarTipoTrabalho`, data)\r\n .toPromise();\r\n }\r\n public async reativarTipoTrabalho(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/coordenacao/${id}/reativarTipoTrabalho`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativarTipoTrabalho(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/coordenacao/${id}/inativarTipoTrabalho`, {})\r\n .toPromise();\r\n }\r\n public async excluirTipoTrabalho(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/coordenacao/${id}/excluirTipoTrabalho`, {})\r\n .toPromise (); \r\n }\r\n\r\n public async obterCapacidadePorAno(id: number, ano: number): Promise> {\r\n \r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/coordenacao/${id}/obterCapacidadePorAno/${ano}`, { })\r\n .toPromise();\r\n }\r\n public async getDadosDisponibilidade(id: number, ano: number): Promise>>{\r\n return this.httpClient\r\n .get>>(`${this.apiBaseUrl}/coordenacao/${id}/AbaDisponibilidade/${ano}`, {})\r\n .toPromise();\r\n }\r\n\r\n public async getDadosDispensa(id: number, ano: number): Promise>>{\r\n return this.httpClient\r\n .get>>(`${this.apiBaseUrl}/coordenacao/${id}/AbaDisponibilidadeDispensa/${ano}`, {})\r\n .toPromise();\r\n }\r\n\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICriterioModel } from '../models/criterio.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CriterioService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/criterio`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/criterio/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ICriterioModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/criterio`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ICriterioModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/criterio/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/criterio/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/criterio/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n public async excluirCriterio(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/criterio/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICriteriosAvaliacaoRiscos } from '../models/criterios-avaliacao-riscos.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { filterBy } from './auditoria.service';\r\nimport { FiltroCriterioAvaliacaoRiscos } from '../models/filtro-criterio-avaliacao-riscos.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CriteriosAvaliacaoRiscoService extends BaseService {\r\n\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/criteriosAvaliacaoRiscos`, { params })\r\n .toPromise();\r\n }\r\n\r\n public obterAtivos(filtro: FiltroCriterioAvaliacaoRiscos): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/criteriosAvaliacaoRiscos/obterAtivos`))\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/criteriosAvaliacaoRiscos/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ICriteriosAvaliacaoRiscos): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/criteriosAvaliacaoRiscos`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ICriteriosAvaliacaoRiscos): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/criteriosAvaliacaoRiscos/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/criteriosAvaliacaoRiscos/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/criteriosAvaliacaoRiscos/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/criteriosAvaliacaoRiscos/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from \"@angular/common\";\r\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { IAtividadeModel } from \"../models/atividade.model\";\r\nimport { IBaseModel } from \"../models/base.model\";\r\nimport { ICronogramaModel } from \"../models/cronograma.model\";\r\nimport { ISubAtividadeModel } from \"../models/sub-atividade.model\";\r\nimport { BaseService } from \"./base.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CronogramaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async obterCronograma(planejamentoId :number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/cronogramas/${planejamentoId}`)\r\n .toPromise();\r\n }\r\n\r\n public obterAtividade(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/atividades`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterAtividadePorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/atividades/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public obterSubAtividade(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/subatividades`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterSubAtividadePorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/subatividades/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async salvar(data: ICronogramaModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/cronogramas/salvar`, data )\r\n .toPromise();\r\n }\r\n\r\n public async excluirAtividade(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/cronogramas/${id}/excluir-atividade`, {})\r\n .toPromise ();\r\n }\r\n\r\n public async excluirSubAtividade(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/cronogramas/${id}/excluir-subatividade`, {})\r\n .toPromise ();\r\n }\r\n\r\n public async inserirAtividade(data: IAtividadeModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/cronogramas/atividade`, data )\r\n .toPromise();\r\n }\r\n\r\n public async inserirsubAtividade(data: ISubAtividadeModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/cronogramas/subatividade`, data )\r\n .toPromise();\r\n }\r\n\r\n public async atualizarAtividade(model: any, id: number): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/cronogramas/atividade/${id}` , model)\r\n .toPromise();\r\n }\r\n\r\n public async atualizarSubAtividade(model: ISubAtividadeModel, id: number): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/cronogramas/subatividade/${id}` , model)\r\n .toPromise();\r\n }\r\n\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICustoRecursoPlanejamentoModel } from '../models/custo-recurso-planejamento.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CustoRecursoPlanejamentoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async inserir(data: ICustoRecursoPlanejamentoModel, tipoTrabalho: string): Promise> {\r\n if(tipoTrabalho === 'planejamento'){\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/custoRecursoPlanejamento`, data)\r\n .toPromise();\r\n }\r\n if(tipoTrabalho === 'osa'){\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/custoRecursoOsa`, data)\r\n .toPromise();\r\n }\r\n }\r\n\r\n\r\n public async obterPorId(id: number, tipoTrabalho: string): Promise> {\r\n if(tipoTrabalho === 'planejamento'){\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/custoRecursoPlanejamento/${id}`)\r\n .toPromise();\r\n }\r\n if(tipoTrabalho === 'osa'){\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/custoRecursoOsa/osa/${id}`)\r\n .toPromise();\r\n }\r\n }\r\n\r\n public async excluir(id: number, tipoTrabalho: string): Promise> {\r\n if(tipoTrabalho === 'planejamento'){\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/custoRecursoPlanejamento/${id}`)\r\n .toPromise();\r\n }\r\n if(tipoTrabalho === 'osa'){\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/custoRecursoOsa/${id}`)\r\n .toPromise();\r\n }\r\n\r\n }\r\n\r\n public async atualizar(data: ICustoRecursoPlanejamentoModel, tipoTrabalho: string): Promise> {\r\n if(tipoTrabalho === 'planejamento'){\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/custoRecursoPlanejamento/${data.id}`, data)\r\n .toPromise();\r\n }\r\n if(tipoTrabalho === 'osa'){\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/custoRecursoOsa/${data.id}`, data)\r\n .toPromise();\r\n }\r\n }\r\n\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICustoRecursoModel } from '../models/custo-recurso.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CustoRecursoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/custoRecurso`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/custoRecurso/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ICustoRecursoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/custoRecurso`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ICustoRecursoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/custoRecurso/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/custoRecurso/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/custoRecurso/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/custoRecurso/${id}`)\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ILocalAtuacaoModel } from '../models/edocs/local-atuacao.model';\r\nimport { IPapelModel } from '../models/edocs/papel.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class EdocsService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async obterPapeis(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/edocs/papeis`)\r\n .toPromise();\r\n }\r\n\r\n public async obterLocaisAtuacao(idPapel: string): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/edocs/${idPapel}/locais-atuacao`)\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { FiltroModel } from '../models/filtro.model';\r\nimport { BaseService } from './base.service';\r\nimport { filterBy } from '../core/helpers/filterby';\r\nimport { IEntendendoEntidadeListaModel } from '../models/entendendo-entidade-lista.model';\r\nimport { FiltroQuestionarioUG } from '../models/filtro-questionario-ug.model';\r\nimport { IImprimirQuestionarioRespostaUGModel, IListaQuestionarioRespostaUGModel, IQuestionarioUGModel, IVisualizarQuestionarioRespostaUGModel } from '../models/questionario-ug.model';\r\nimport { IArquivoModel } from '../models/arquivo.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class EntendendoEntidadeService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro: FiltroQuestionarioUG): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/QuestionarioUG`))\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/QuestionarioUG/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(id: number, idUG: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${id}/${idUG}/inserir`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inserirQuestionarioAPartirDoUltimo(idUG: number, idTipoRelatorio: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${idUG}/${idTipoRelatorio}/inserirCopia`, {})\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IQuestionarioUGModel): Promise>{\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/QuestionarioUG`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/QuestionarioUG/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n\r\n public async solicitarPreenchimentoQuestionario(id: number, qtdeDiasPrazo: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${id}/${qtdeDiasPrazo}/solicitarPreenchimento`, {})\r\n .toPromise();\r\n }\r\n\r\n public async enviarArquivo(idUG: number, idTipoQuestionario: number, anexo : IArquivoModel): Promise> {\r\n const formData: FormData = new FormData();\r\n\r\n formData.append('id', anexo.id.toString());\r\n formData.append('nomeArquivo', anexo.nomeArquivo);\r\n formData.append('entidadeArquivo', anexo.entidadeArquivo.toString());\r\n formData.append('arquivo', anexo.arquivo);\r\n\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${idUG}/${idTipoQuestionario}/enviarArquivo`,formData, {})\r\n .toPromise();\r\n }\r\n\r\n public async Avocar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${id}/avocar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async DownloadArquivo(idUG: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${idUG}/obterArquivo`, {})\r\n .toPromise();\r\n }\r\n\r\n public ObterQuestionarioPendente(filtro: FiltroQuestionarioUG): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/QuestionarioUG/pre-planejamento`))\r\n .toPromise();\r\n }\r\n\r\n public async VisualizarRespostaQuestionario(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/QuestionarioUG/visualizar/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async ImprimirRespostaQuestionario(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/QuestionarioUG/imprimir/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async encerrarQuestionarioImportacaoArquivo(idUG: number, idTipoQuestionario: number): Promise> {\r\n \r\n\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${idUG}/${idTipoQuestionario}/0/encerrar-avaliacao-arquivo-importado`,null, {})\r\n .toPromise();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IEscalas } from '../models/escalas.model';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EscalasService extends BaseService {\r\n\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(criteriosAvaliacaoRiscosId: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('criteriosAvaliacaoRiscosId', criteriosAvaliacaoRiscosId || '0');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/escalas`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/escalas/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IEscalas): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/escalas`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IEscalas): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/escalas/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/escalas/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IFaixaClassificacaoModel } from '../models/faixa-classificacao';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FaixaClassificacaoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/faixaclassificacao`)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IFaixaClassificacaoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/faixaclassificacao`, data)\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from \"@angular/common\";\r\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { IBaseModel } from \"../models/base.model\";\r\nimport { IFasesAtividadeModel } from \"../models/fases-atividade-model\";\r\nimport { BaseService } from \"./base.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FaseAtividadeService extends BaseService {\r\n\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa?: string, ativo?: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/fasesatividades`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async inserir(model: IFasesAtividadeModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/fasesatividades`, model)\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/fasesatividades/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IFasesAtividadeModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/fasesatividades/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/fasesatividades/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/fasesatividades/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/fasesatividades/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IFluxoAprovacaoModel } from '../models/fluxo-aprovacao.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FluxoAprovacaoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/fluxoaprovacao`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/fluxoaprovacao/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IFluxoAprovacaoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/fluxoaprovacao`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IFluxoAprovacaoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/fluxoaprovacao/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/fluxoaprovacao/${id}`, {})\r\n .toPromise();\r\n }\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient.post>(`${this.apiBaseUrl}/fluxoaprovacao/${id}/reativar`, {}).toPromise();\r\n }\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient.post>(`${this.apiBaseUrl}/fluxoaprovacao/${id}/inativar`, {}).toPromise();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IFormulaRiscoInerente } from '../models/formula-risco-inerente.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FormulaRiscoInerenteService extends BaseService {\r\n\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(criteriosAvaliacaoRiscosId: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('criteriosAvaliacaoRiscosId', criteriosAvaliacaoRiscosId || '0');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/formulaRiscoInerente`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/formulaRiscoInerente/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IFormulaRiscoInerente): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/formulaRiscoInerente/`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IFormulaRiscoInerente): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/formulaRiscoInerente/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/formulaRiscoInerente/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IFormulaRiscoResidual } from '../models/formula-risco-residual.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FormulaRiscoResidualService extends BaseService {\r\n\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(criteriosAvaliacaoRiscosId: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('criteriosAvaliacaoRiscosId', criteriosAvaliacaoRiscosId || '0');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/formulaRiscoResidual`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/formulaRiscoResidual/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IFormulaRiscoResidual): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/formulaRiscoResidual`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IFormulaRiscoResidual): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/formulaRiscoResidual/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/formulaRiscoResidual/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IIndicadorModel } from '../models/indicador.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class IndicadorService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/indicador`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/indicador/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IIndicadorModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/indicador`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IIndicadorModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/indicador/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/indicador/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/indicador/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/indicador/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ILogModel } from '../models/log.model';\r\nimport { IFiltroLog } from '../models/filtros/filtro-log.model';\r\nimport { IEnumModel } from '../models/enum.model';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LogService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro: IFiltroLog): Promise>> {\r\n const params = this.recuperarParametrosFiltro(filtro);\r\n\r\n return this.httpClient\r\n .get>>(`${this.apiBaseUrl}/logsistema`, { params })\r\n .toPromise();\r\n }\r\n\r\n public obterFuncionalidades(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/logsistema/funcionalidades`, {})\r\n .toPromise();\r\n }\r\n\r\n public obterTiposLog(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/logsistema/tipos-log`, {})\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/logsistema/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async exportar(filtro: IFiltroLog): Promise {\r\n const params = this.recuperarParametrosFiltro(filtro);\r\n\r\n return this.httpClient\r\n .get(`${this.apiBaseUrl}/logsistema/exportar`, { params, responseType: 'blob' })\r\n .toPromise();\r\n }\r\n\r\n private recuperarParametrosFiltro(filtro: IFiltroLog): HttpParams {\r\n let params = new HttpParams();\r\n params = params.append('pagina', filtro.pagina.toString());\r\n params = params.append('tamanhoPagina', filtro.tamanhoPagina.toString());\r\n params = params.append('ordenacaoColuna', filtro.ordenacaoColuna.toString());\r\n params = params.append('ordenacaoSentido', filtro.ordenacaoSentido.toString());\r\n\r\n if (filtro.dataInicial){\r\n params = params.append('dataInicial', filtro.dataInicial.toString());\r\n }\r\n if (filtro.dataFinal){\r\n params = params.append('dataFinal', filtro.dataFinal.toString());\r\n }\r\n if (filtro.funcionalidade){\r\n params = params.append('funcionalidade', filtro.funcionalidade.toString());\r\n }\r\n if (filtro.tipoLog){\r\n params = params.append('tipoLog', filtro.tipoLog.toString());\r\n }\r\n if (filtro.nomeUsuario){\r\n params = params.append('nomeUsuario', filtro.nomeUsuario);\r\n }\r\n\r\n return params;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IMaginitudesEscalaRisco } from '../models/maginitudes-escala-risco.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MagnitudesEscalaRiscoService extends BaseService {\r\n\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(escalaId: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('escalaId', escalaId || '0');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/magnitudesEscalaRisco`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/magnitudesEscalaRisco/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IMaginitudesEscalaRisco): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/magnitudesEscalaRisco`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IMaginitudesEscalaRisco): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/magnitudesEscalaRisco/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/magnitudesEscalaRisco/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}","import { IUnidadeGestoraModel } from './../models/unidade-gestora.model';\r\nimport { IQuestaoModel } from 'src/app/models/questao.model';\r\nimport { BaseService } from './base.service';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { Subject } from 'rxjs';\r\nimport { ISubtipoAuditoriaModel } from '../models/subtipo-auditoria.model';\r\n\r\ntype subjectOfArray = any | any[] | Subject;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ManterMatrizPlanejamentoService extends BaseService {\r\n\r\n private _dados: Subject = new Subject();\r\n\r\n public get dados(): subjectOfArray {\r\n return this._dados.asObservable() as Subject;\r\n }\r\n\r\n public set dados(value: subjectOfArray) {\r\n this._dados.next(value);\r\n }\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async excluirQuestao(planejamentoId: number, idSubtipo: number, idQuestao: number, tipoTrabalho: string): Promise> {\r\n if (tipoTrabalho === 'planejamento') {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/planejamento/${planejamentoId}/questao/${idQuestao}/subTipo/${idSubtipo}/excluir`, {})\r\n .toPromise();\r\n } else if (tipoTrabalho === 'osa') {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/osas/${planejamentoId}/questao/${idQuestao}/subTipo/${idSubtipo}/excluir`, {})\r\n .toPromise();\r\n }\r\n\r\n }\r\n\r\n public async obter(): Promise {\r\n this.httpClient.get>(`${this.apiBaseUrl}/subtipoauditoria`).toPromise().then(x => this.dados = x.dados)\r\n }\r\n\r\n public async vincularQuestao(tipoTrabalho: number, matrizPlanejamentoId: number, questaoId: number, isQuestaoPlanejamento: boolean, relacionamentoId: number, subTipoAuditoriaId: number): Promise> {\r\n if (isQuestaoPlanejamento) {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/matrizPlanejamento/${matrizPlanejamentoId}/questaoEspecifica/${questaoId}/${tipoTrabalho}/${relacionamentoId}/${subTipoAuditoriaId}`, {})\r\n .toPromise();\r\n }\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/matrizPlanejamento/${matrizPlanejamentoId}/questao/${questaoId}/${tipoTrabalho}/${relacionamentoId}/${subTipoAuditoriaId}`, {})\r\n .toPromise();\r\n }\r\n\r\n public obterQuestaoSubtipo(subtipoAuditoriaId: number, descricao: string): Promise> {\r\n let query = new HttpParams();\r\n query = query.append(\"subtipoAuditoriaId\", subtipoAuditoriaId.toString());\r\n query = query.append(\"descricao\", descricao);\r\n return this.httpClient.get>(`${this.apiBaseUrl}/subtipoAuditoria/questoes`, { params: query }).toPromise();\r\n }\r\n\r\n public obterUgSubtipo(id: number, subtipoAuditoriaId: number): Promise> {\r\n return this.httpClient.get>(`${this.apiBaseUrl}/planejamento/${id}/subTipoAuditoria/${subtipoAuditoriaId}/unidades-gestoras`).toPromise();\r\n }\r\n\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IMatrizPlanejamentoModel } from '../models/matriz-planejamento.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class MatrizPlanejamentoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/matrizPlanejamento`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/matrizPlanejamento/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IMatrizPlanejamentoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/matrizPlanejamento`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IMatrizPlanejamentoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/matrizPlanejamento/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/matrizPlanejamento/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/matrizPlanejamento/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/matrizPlanejamento/${id}`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IMenuModel } from '../models/menu.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n })\r\n export class MenuService extends BaseService {\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async obter(): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/menu/`)\r\n .toPromise();\r\n }\r\n } ","import { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { BaseService } from './base.service';\r\nimport { IModeloQuestionarioModel } from '../models/modelo-questionario.model';\r\nimport { FiltroModel } from '../models/filtro.model';\r\nimport { promise } from 'protractor';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { filterBy } from '../core/helpers/filterby';\r\nimport { FiltroModeloQuestionario } from '../models/filtro-modelo-questionario';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n })\r\n export class ModeloQuestionarioService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async obter(filtro: FiltroModel): Promise>>{\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', filtro.pesquisa || '');\r\n\r\n if (filtro.ativo !== undefined) {\r\n params = params.append('ativo', filtro.ativo.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>>(filterBy(filtro, `${this.apiBaseUrl}/modeloquestionario`), {})\r\n .toPromise()\r\n }\r\n\r\n public async obterPorId(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/modeloquestionario/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IModeloQuestionarioModel): Promise>{\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/modeloquestionario`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IModeloQuestionarioModel): Promise>{\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/modeloquestionario`, data)\r\n .toPromise();\r\n }\r\n \r\n public async reativar(id: number): Promise>{\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/modeloquestionario/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise>{\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/modeloquestionario/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise>{\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/modeloquestionario/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n\r\n public async obterModeloQuestionario(filtro: FiltroModeloQuestionario): Promise>>{\r\n let params = new HttpParams();\r\n params = params.append('ativo', 'true');\r\n return this.httpClient\r\n .get>>(filterBy(filtro, `${this.apiBaseUrl}/modeloquestionario/`), {})\r\n .toPromise()\r\n }\r\n\r\n public async obterModeloEntendendoEntidade(filtro: FiltroModel): Promise>>{\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', filtro.pesquisa || '');\r\n\r\n if (filtro.ativo !== undefined) {\r\n params = params.append('ativo', filtro.ativo.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>>(filterBy(filtro, `${this.apiBaseUrl}/modeloquestionario/modelos-entendendo-entidade`), {})\r\n .toPromise()\r\n }\r\n\r\n public async aprovarReprovarItem(id: number, idModeloQuestionario: number, aprovado: boolean): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/modeloquestionario/${id}/aprovar-ou-reprovar-item/${idModeloQuestionario}/${aprovado}`, {})\r\n .toPromise();\r\n }\r\n }","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IModeloRelatorioModel } from '../models/modelo-relatorio.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ModeloRelatorioService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/modelorelatorio`, { params })\r\n .toPromise();\r\n }\r\n\r\n public obterPorTipoTrabalho(tipoTrabalho: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/modelorelatorio/${tipoTrabalho}/tipoTrabalho`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/modelorelatorio/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IModeloRelatorioModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/modelorelatorio`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IModeloRelatorioModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/modelorelatorio/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/modelorelatorio/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/modelorelatorio/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/modelorelatorio/${id}/excluir/`, {})\r\n .toPromise();\r\n }\r\n}\r\n\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { INaturezaResponsabilidadeModel } from '../models/natureza-responsabilidade';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class NaturezaResponsabilidadeService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/naturezaresponsabilidade`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/naturezaresponsabilidade/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: INaturezaResponsabilidadeModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/naturezaresponsabilidade`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: INaturezaResponsabilidadeModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/naturezaresponsabilidade/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/naturezaresponsabilidade/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/naturezaresponsabilidade/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/naturezaresponsabilidade/${id}/excluir/`, {})\r\n .toPromise();\r\n }\r\n \r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { INiveisRiscoInerente } from '../models/niveis-risco-inerente.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NiveisRiscoInerenteService extends BaseService {\r\n\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(criteriosAvaliacaoRiscosId: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('criteriosAvaliacaoRiscosId', criteriosAvaliacaoRiscosId || '0');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/niveisRiscoInerente`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/niveisRiscoInerente/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: INiveisRiscoInerente): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/niveisRiscoInerente`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: INiveisRiscoInerente): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/niveisRiscoInerente/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/niveisRiscoInerente/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { INiveisRiscoResidual } from '../models/niveis-risco-residual.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NiveisRiscoResidualService extends BaseService {\r\n\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(criteriosAvaliacaoRiscosId: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('criteriosAvaliacaoRiscosId', criteriosAvaliacaoRiscosId || '0');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/niveisRiscoResidual`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/niveisRiscoResidual/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: INiveisRiscoResidual): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/niveisRiscoResidual`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: INiveisRiscoResidual): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/niveisRiscoResidual/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/niveisRiscoResidual/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IOpaModel } from '../models/opa.model';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IFiltroOpa } from '../models/filtros/filtro-opa.model';\r\nimport { IEnumModel } from '../models/enum.model';\r\nimport { IValidacaoNivelModel } from '../models/validaca-nivel-aprovacao.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { IEntranharDocumentoModel } from '../models/edocs/entranhar-documento.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OpaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro: IFiltroOpa): Promise>> {\r\n const params = this.recuperarParametrosFiltro(filtro);\r\n\r\n return this.httpClient\r\n .get>>(`${this.apiBaseUrl}/opa`, { params })\r\n .toPromise();\r\n }\r\n\r\n public obterOrigens(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/opa/origens`, {})\r\n .toPromise();\r\n }\r\n\r\n public obterStatus(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/opa/status`, {})\r\n .toPromise();\r\n }\r\n\r\n public obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/opa/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public obterRelatorio(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/opa/${id}/relatorio`)\r\n .toPromise();\r\n }\r\n\r\n public gerarNova(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/opa/novo`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IOpaModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/opa`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IOpaModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/opa/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/opa/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number, justificativa: string): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/opa/${id}/inativar`, { justificativa })\r\n .toPromise();\r\n }\r\n\r\n public imprimir(id: number): Promise{\r\n return this.httpClient\r\n .get(`${this.apiBaseUrl}/opa/${id}/imprimir`)\r\n .toPromise();\r\n }\r\n\r\n public async imprimirOpaConsolidado(ids: string): Promise> {\r\n let params = new HttpParams();\r\n ids.split(',').map(_ => params = params.append('ids', _));\r\n \r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/opa/imprimir-opa-consolidado`, {params})\r\n .toPromise();\r\n}\r\n\r\n public async enviarAprovacao(id: number): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/opa/${id}/enviar-aprovacao`, null)\r\n .toPromise();\r\n }\r\n\r\n public async aprovar(id: number): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/opa/${id}/aprovar`, null)\r\n .toPromise();\r\n }\r\n\r\n public async homologar(id: number, entranharDocumento: IEntranharDocumentoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/opa/${id}/homologar`, entranharDocumento)\r\n .toPromise();\r\n }\r\n\r\n public async gerarNovaVersao(data: IOpaModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/opa/${data.id}/gerar-versao`, data)\r\n .toPromise();\r\n }\r\n\r\n private recuperarParametrosFiltro(filtro: IFiltroOpa): HttpParams {\r\n let params = new HttpParams();\r\n params = params.append('pagina', filtro.pagina.toString());\r\n params = params.append('itensPorPagina', filtro.itensPorPagina.toString());\r\n params = params.append('colunaOrder', filtro.colunaOrder.toString());\r\n params = params.append('direcao', filtro.direcao.toString());\r\n\r\n if (filtro.dataInicial){\r\n params = params.append('dataInicial', filtro.dataInicial.toString());\r\n }\r\n if (filtro.dataFinal){\r\n params = params.append('dataFinal', filtro.dataFinal.toString());\r\n }\r\n if (filtro.ativo !== undefined && filtro.ativo !== null) {\r\n params = params.append('ativo', filtro.ativo.toString());\r\n }\r\n if (filtro.auditor) {\r\n params = params.append('auditor', filtro.auditor.toString());\r\n }\r\n if (filtro.coordenador) {\r\n params = params.append('coordenador', filtro.coordenador.toString());\r\n }\r\n if (filtro.numeroObjeto) {\r\n params = params.append('numeroObjeto', filtro.numeroObjeto);\r\n }\r\n if (filtro.origem) {\r\n params = params.append('origem', filtro.origem.toString());\r\n }\r\n if (filtro.status) {\r\n params = params.append('status', filtro.status.toString());\r\n }\r\n if (filtro.subtipoAuditoria) {\r\n params = params.append('subtipoAuditoria', filtro.subtipoAuditoria.toString());\r\n }\r\n if (filtro.tipoAuditoria) {\r\n params = params.append('tipoAuditoria', filtro.tipoAuditoria.toString());\r\n }\r\n if (filtro.unidadeGestora) {\r\n params = params.append('unidadeGestora', filtro.unidadeGestora.toString());\r\n }\r\n\r\n return params;\r\n }\r\n\r\n public async verificarNivelAprovacao(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/opa/${id}/verificar-nivel-aprovacao`)\r\n .toPromise();\r\n }\r\n\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IOrgaoModel } from '../models/orgao.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class OrganogramaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public ObterOrgaos(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/organograma/orgaos`)\r\n .toPromise();\r\n }\r\n}\r\n","import { PaginacaoModel } from './../models/paginacao.model';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { IAlocarEquipeObterModel, ISalvarAlocarEquipeModel } from '../models/alocar-equipe-component';\r\nimport { IAtividadeModel } from '../models/atividade.model';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICronogramaModel } from '../models/cronograma.model';\r\nimport { IOsaAtividadeModel } from '../models/osa-atividade.model';\r\nimport { IOsaFiltroModel } from '../models/osa-filtro-model';\r\nimport { IOsaModelImprimir } from '../models/osa-imprimir';\r\nimport { IOsaModel } from '../models/osa-model';\r\nimport { IOsaSubAtividadeModel } from '../models/osa-sub-atividade.model';\r\nimport { ISubAtividadeModel } from '../models/sub-atividade.model';\r\nimport { IValidacaoNivelModel } from '../models/validaca-nivel-aprovacao.model';\r\nimport { BaseService } from './base.service';\r\nimport { IEntranharDocumentoModel } from '../models/edocs/entranhar-documento.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OsaService extends BaseService {\r\n public osaDate!: IOsaModel[];\r\n private osaSource = new BehaviorSubject('');\r\n public currentOsa = this.osaSource.asObservable();\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro?: IOsaFiltroModel): Promise> {\r\n const params = this.recuperarParametrosFiltro(filtro);\r\n return this.httpClient\r\n .get>>(`${this.apiBaseUrl}/osas`, { params })\r\n .toPromise().then(result => {\r\n this.osaSource.next(result.dados)\r\n return result.dados;\r\n });\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/osas/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async salvarOsa(\r\n id: number, data: any): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/osas/${id}`, data)\r\n .toPromise();\r\n }\r\n\r\n\r\n public async gerarNovaVersao(\r\n id: number, data?: any): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/osas/${id}/nova-versao`, data)\r\n .toPromise();\r\n }\r\n\r\n\r\n public async inativar(id: number, justificativa: string): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/osas/${id}/inativar`, { justificativa })\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/osas/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async enviarAprovacao(id: number): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/osas/${id}/enviar-aprovacao`, null)\r\n .toPromise();\r\n }\r\n\r\n public async getImprimir(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/osas/${id}/imprimir`)\r\n .toPromise();\r\n }\r\n\r\n private recuperarParametrosFiltro(filtro: IOsaFiltroModel): HttpParams {\r\n let params = new HttpParams();\r\n if (filtro) {\r\n if (filtro.dataInicioRealizacao) {\r\n params = params.append('dataInicioRealizacao', filtro.dataInicioRealizacao?.toString());\r\n }\r\n if (filtro.dataFimRealizacao) {\r\n params = params.append('dataFimRealizacao', filtro.dataFimRealizacao?.toString());\r\n }\r\n if (filtro.dataInicioPrevisto) {\r\n params = params.append('dataInicioPrevisto', filtro.dataInicioPrevisto?.toString());\r\n }\r\n if (filtro.dataFimPrevisto) {\r\n params = params.append('dataFimPrevisto', filtro.dataFimPrevisto?.toString());\r\n }\r\n if (filtro.ativo !== undefined && filtro.ativo !== null) {\r\n params = params.append('ativo', filtro.ativo?.toString());\r\n }\r\n if (filtro.coordenador) {\r\n params = params.append('coordenador', filtro.coordenador?.toString());\r\n }\r\n if (filtro.objeto) {\r\n params = params.append('objeto', filtro.objeto);\r\n }\r\n if (filtro.origemAuditoria) {\r\n params = params.append('origemAuditoria', filtro.origemAuditoria?.toString());\r\n }\r\n if (filtro.ativo) {\r\n params = params.append('ativo', filtro.ativo?.toString());\r\n }\r\n if (filtro.subtipoAuditoriaId) {\r\n params = params.append('subtipoAuditoria', filtro.subtipoAuditoriaId?.toString());\r\n }\r\n if (filtro.tipoAuditoriaId) {\r\n params = params.append('tipoAuditoria', filtro.tipoAuditoriaId?.toString());\r\n }\r\n if (filtro.unidadeGestoraId) {\r\n params = params.append('unidadeGestoraId', filtro.unidadeGestoraId?.toString());\r\n }\r\n if (filtro.numeroOsa) {\r\n params = params.append('numeroOsa', filtro.numeroOsa?.toString());\r\n }\r\n if (filtro.numeroOpa) {\r\n params = params.append('numeroOpa', filtro.numeroOpa?.toString());\r\n }\r\n if (filtro.status) {\r\n params = params.append('status', filtro.status?.toString());\r\n }\r\n if (filtro.pagina) {\r\n params = params.append('pagina', filtro.pagina?.toString());\r\n }\r\n if (filtro.itensPorPagina) {\r\n params = params.append('itensPorPagina', filtro.itensPorPagina?.toString());\r\n }\r\n }\r\n return params;\r\n }\r\n\r\n public async salvarOsaAtividade(id: number, atividadeId: number, data: IOsaAtividadeModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/osas/${id}/atividades/${atividadeId}/osaatividade`, data)\r\n .toPromise();\r\n }\r\n\r\n public async salvarOsaSubAtividade(id: number, subAtividadeId: number, data: IOsaSubAtividadeModel ): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/osas/${id}/subatividade/${subAtividadeId}/osasubatividade`, data)\r\n .toPromise();\r\n }\r\n\r\n public async obterCronogramaOsa(osaId: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/osas/cronograma/${osaId}`)\r\n .toPromise();\r\n }\r\n\r\n public async alocarEquipeOsa(\r\n id: number, data: IOsaModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/osas/alocar-equipe`, data)\r\n .toPromise();\r\n }\r\n\r\n public async homologar(id: number, entranharDocumento: IEntranharDocumentoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/osas/${id}/homologar`, entranharDocumento)\r\n .toPromise();\r\n }\r\n\r\n public obterAlocarEquipeId(osaId: number, equipeId: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/osas/${osaId}/equipe/${equipeId}`)\r\n .toPromise();\r\n }\r\n\r\n public obterAlocarEquipeOsaId(osaId: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/osas/${osaId}/equipes`)\r\n .toPromise();\r\n }\r\n\r\n public salvarAlocarEquipeOsaId(osaId: number, data: ISalvarAlocarEquipeModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/osas/${osaId}/alocar-equipe`, data)\r\n .toPromise();\r\n }\r\n\r\n public desvincularAuditorId(osaId: number, equipeId: number) {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/osas/${osaId}/equipe/${equipeId}/desvincular`)\r\n .toPromise();\r\n }\r\n\r\n public async verificarNivelAprovacao(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/osas/${id}/verificar-nivel-aprovacao`)\r\n .toPromise();\r\n }\r\n\r\n}\r\n","import { IPaaEquipeModel } from './../models/paa-equipe.model';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseService } from './base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { IPaaModel } from '../models/paa.model';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IPaaDistribuicaoModel } from '../models/paa-distribuicao.model';\r\nimport { IPaaDistribuicaoColunasModel } from '../models/paa-distribuicao-colunas.model';\r\nimport { IPaaGraficoModel } from '../models/paa-grafico.model';\r\nimport { IPaaDistribuicaoHistoricoModel } from '../models/paa-distribuicao.historico.model';\r\nimport { IEntranharDocumentoModel } from '../models/edocs/entranhar-documento.model';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IPaaCoordenacaoDispensaModel } from '../models/paa-coordenacao-dispensa.model';\r\nimport { IPaaDistribuicaoImprimirModel } from '../models/paa-distribuicao-imprimir.model';\r\nimport { ImprimirModel } from '../models/imprimir-model';\r\nimport { IValidacaoNivelModel } from '../models/validaca-nivel-aprovacao.model';\r\nimport { IAlocacaoPendenciasModel } from '../models/paa-alocacao-pendencias.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { filterBy } from '../core/helpers/filterby';\r\nimport { IPaaDadosBasicosModel } from '../models/paa-dados-basicos.model';\r\nimport { FiltroModel } from '../models/filtro.model';\r\nimport { IPaaInformacoesBasicasModel } from '../models/paa-informacoes-basicas.model';\r\nimport { IPaaCoordenacaoCapacidadeModel } from '../models/paa-coordenacao-capacidade.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PaaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async atualizarPaa(data: IPaaDadosBasicosModel): Promise> {\r\n \r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paa`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/paa/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n\r\n\r\n\r\n public obter( \r\n pesquisa: string,\r\n ativo: boolean,\r\n simplificado = false,\r\n filtro?: FiltroModel\r\n ): Promise>> {\r\n \r\n let params = new HttpParams();\r\n if (ativo !== undefined) {\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n }\r\n\r\n\r\n if(filtro != null && Object.keys(filtro).length > 0) {\r\n \r\n \r\n return this.httpClient\r\n .get>>(filterBy(filtro, `${this.apiBaseUrl}/paa`), { params })\r\n .toPromise();\r\n }\r\n\r\n return this.httpClient\r\n .get>>(`${this.apiBaseUrl}/paa`, { params })\r\n .toPromise();\r\n }\r\n\r\n \r\n public async obterPorId(id: number): Promise> {\r\n \r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IPaaModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paa/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async enviarAprovacao(id: number, idPerfilSelecionado: string): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paa/${id}/enviar-aprovacao/${idPerfilSelecionado}`, null)\r\n .toPromise();\r\n }\r\n\r\n public async aprovar(id: number): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paa/${id}/aprovar`, null)\r\n .toPromise();\r\n }\r\n\r\n public async rejeitar(id: number, justificativa: string): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paa/${id}/rejeitar`, { justificativa })\r\n .toPromise();\r\n }\r\n\r\n public async enviarHomologacao(id: number): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paa/${id}/enviar-homologacao`, null)\r\n .toPromise();\r\n }\r\n\r\n public async verificarNivelAprovacao(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/verificar-nivel-aprovacao`)\r\n .toPromise();\r\n }\r\n\r\n public async homologar(id: number, entranharDocumento: IEntranharDocumentoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paa/${id}/homologar`, entranharDocumento)\r\n .toPromise();\r\n }\r\n\r\n\r\n public obterPainelDistribuicaoColunas(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/painel-distribuicao/colunas`)\r\n .toPromise();\r\n }\r\n\r\n public async AlterarSatusDistribuicaoColunas(item: IPaaDistribuicaoColunasModel[]): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/paa/painel-distribuicao/distribuicao-colunas`, item)\r\n .toPromise();\r\n }\r\n \r\n public async obterAlocacoesEquipe(id: number): Promise> {\r\n const params = new HttpParams();\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/equipes`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterEquipe(id: number): Promise> {\r\n const params = new HttpParams();\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/obter-equipe`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterEquipesPorPaaId(id: number): Promise> {\r\n const params = new HttpParams();\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/obter-equipes`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterGrafico(id: number): Promise> {\r\n const params = new HttpParams();\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/obter-grafico-equipe`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async validarAlocacaoEquipe(data: IPaaEquipeModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/paa/validar-alocacao-equipe`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizarAlocacaoEquipe(data: IPaaEquipeModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paa/atualizar-alocacao-equipe`, data)\r\n .toPromise();\r\n }\r\n\r\n public obterDispensasPeriodo(dataInicio: string, dataFim: string): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('dataInicio', dataInicio);\r\n params = params.append('dataFim', dataFim);\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/dispensas-periodo/`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async imprimir(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/imprimir`, {})\r\n .toPromise();\r\n }\r\n\r\n public async VerificaDataAlocacao(dataReferencia: string, isDataInicial: boolean, idTipoAuditoria:number): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('dataReferencia', dataReferencia);\r\n params = params.append('isDataInicial', isDataInicial.toString());\r\n params = params.append('idTipoAuditoria', idTipoAuditoria.toString());\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/validaDataAlocacao`, {params})\r\n .toPromise();\r\n }\r\n\r\n \r\n public async adicionarDistribuicao(item: IPaaDistribuicaoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/paa/painel-distribuicao/adicionar`, item)\r\n .toPromise();\r\n }\r\n\r\n public async buscarInformacoesBasicas(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/obterInformacoesBasicas`)\r\n .toPromise();\r\n }\r\n\r\n public async atualizarCapacidadeTrabalho(id: number, item: IPaaCoordenacaoCapacidadeModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/paa/${id}/capacidade-trabalho`, item)\r\n .toPromise();\r\n }\r\n public obterPainelDistribuicao(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/painel-distribuicao`)\r\n .toPromise();\r\n }\r\n\r\n public async obterCapacidadeTrabalhoPorIdAndAno(id: number, ano: number): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('ano', ano.toString());\r\n \r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/capacidade-trabalho`, { params })\r\n .toPromise();\r\n } \r\n\r\n public obterHistoricoDistribuicao(id: number, unidadeGestoraId: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paaAbaDistribuicao/${id}/unidade-gestora/${unidadeGestoraId}/historico-distribuicao`)\r\n .toPromise();\r\n }\r\n\r\n}\r\n","import { IPaaCoordenacaoCapacidadeModel } from 'src/app/models/paa-coordenacao-capacidade.model';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IPaaAbaCapacidadeModalCapacidade, IPaaAbaCapacidadeModel } from 'src/app/models/paa-aba-capacidade.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n })\r\n export class PaaAbaCapacidadeService extends BaseService{\r\n constructor(httpclient: HttpClient, locationStrategy: LocationStrategy){\r\n super(httpclient, locationStrategy);\r\n }\r\n\r\n public async atualizarCapacidadeTrabalho(id: number, item: IPaaCoordenacaoCapacidadeModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/paaAbaCapacidade/${id}/capacidade-trabalho`, item)\r\n .toPromise();\r\n }\r\n \r\n\r\n\r\n public async obter(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paaAbaCapacidade/${id}/capacidade-trabalho`)\r\n .toPromise();\r\n } \r\n\r\n public async obterDetalheCoordenacao(id: number, idCoordenacao: number, ano: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paaAbaCapacidade/${id}/detalha-coordenacao/${idCoordenacao}/${ano}`)\r\n .toPromise();\r\n } \r\n }","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base.service';\r\nimport { IBaseModel } from '../../models/base.model';\r\nimport { IPaaDadosBasicosModel } from '../../models/paa-dados-basicos.model';\r\nimport { IPaaModel } from '../../models/paa.model';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LocationStrategy } from '@angular/common';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n })\r\nexport class PaaAbaDadosBasicosService extends BaseService{\r\n \r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async obterDadosBasicos(id: number): Promise>{\r\n \r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paaAbaDadosBasicos/${id}/dadosbasicos`)\r\n .toPromise();\r\n }\r\n\r\n public gerarNova(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/novo`)\r\n .toPromise();\r\n }\r\n\r\n public async atualizarDadosBasicos(data: IPaaDadosBasicosModel): Promise>{\r\n \r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paaAbaDadosBasicos`, data)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IPaaDadosBasicosModel): Promise> {\r\n \r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/paaAbaDadosBasicos`, data)\r\n .toPromise();\r\n }\r\n}\r\n","import { IPaaCoordenacaoCapacidadeModel } from 'src/app/models/paa-coordenacao-capacidade.model';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base.service';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { IPaaDistribuicaoImprimirModel } from 'src/app/models/paa-distribuicao-imprimir.model';\r\nimport { IPaaDistribuicaoModel } from 'src/app/models/paa-distribuicao.model';\r\nimport { IPaaDistribuicaoColunasModel } from 'src/app/models/paa-distribuicao-colunas.model';\r\nimport { IPaaModel } from 'src/app/models/paa.model';\r\nimport { IPaaDistribuicaoHistoricoModel } from 'src/app/models/paa-distribuicao.historico.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n })\r\n export class PaaAbaDistribuicaoService extends BaseService{\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy){\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obterPainelDistribuicaoImprimir(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/painel-distribuicao/imprimir`)\r\n .toPromise();\r\n }\r\n \r\n public obterPainelDistribuicao(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paaAbaDistribuicao/${id}/painel-distribuicao`)\r\n .toPromise();\r\n }\r\n \r\n public obterPainelDistribuicaoColunas(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paa/${id}/painel-distribuicao/colunas`)\r\n .toPromise();\r\n }\r\n \r\n public async AlterarSatusDistribuicaoColunas(item: IPaaDistribuicaoColunasModel[]): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/paa/painel-distribuicao/distribuicao-colunas`, item)\r\n .toPromise();\r\n }\r\n \r\n public async AlterarStatusDistribuicao(id: number, ativo: boolean, justificativa: string): Promise> {\r\n const dados = {\r\n ativo,\r\n justificativa\r\n };\r\n \r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paaAbaDistribuicao/${id}/painel-distribuicao/status`, dados)\r\n .toPromise();\r\n }\r\n \r\n public async AlterartipoAuditoriaDistribuicao(id: number, tipoAuditoriaId: number, justificativa: string): Promise> {\r\n const dados = {\r\n justificativa\r\n };\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paaAbaDistribuicao/${id}/painel-distribuicao/tipo-auditoria/${tipoAuditoriaId}`, dados)\r\n .toPromise();\r\n }\r\n \r\n public async AlterarTipoEnfaseDistribuicao(id: number, tipoEnfaseId: number, justificativaEnfase: string): Promise>{\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paaAbaDistribuicao/${id}/painel-distribuicao/tipo-enfase/${tipoEnfaseId}&${justificativaEnfase}`, null)\r\n .toPromise();\r\n }\r\n \r\n public async ValidarTipoAuditoria(id: number, tipoAuditoriaId: number): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/paaAbaDistribuicao/${id}/painel-distribuicao/validar-tipo-auditoria/${tipoAuditoriaId}`, null)\r\n .toPromise();\r\n }\r\n \r\n \r\n\r\n public obterHistoricoDistribuicao(id: number, unidadeGestoraId: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paaAbaDistribuicao/${id}/unidade-gestora/${unidadeGestoraId}/historico-distribuicao`)\r\n .toPromise();\r\n }\r\n\r\n public obterHistoricoAuditoria(id: number, unidadeGestoraId: number, auditoriaObrigatoria: boolean): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paaAbaDistribuicao/${id}/unidade-gestora/${unidadeGestoraId}/historico-distribuicao/auditoriaObrigatoria/${auditoriaObrigatoria}`)\r\n .toPromise();\r\n }\r\n }","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { IPaaAbaIndicesCriteriosModel } from '../../models/paa-aba-indices-criterios.model';\r\nimport { IBaseModel } from '../../models/base.model';\r\nimport { IPaaCriterioRespostaModel } from '../../models/paa-criterio-resposta.model';\r\nimport { IPaaIndiceCriterioModel } from '../../models/paa-indice-criterio.model';\r\nimport { IPaaCriterioQuestionarioModel } from '../../models/paa-criterio-questionario.model';\r\nimport { IEnviarQuestionarioModel } from '../../models/enviar-questionario.model';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n })\r\nexport class PaaAbaIndicesCriteriosService extends BaseService{\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy){\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(id: number): Promise> {\r\n \r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paaabaindicescriterios/${id}/obterPorId`)\r\n .toPromise();\r\n }\r\n\r\n public obterCriterioResposta(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/paaabaindicescriterios/indices-criterios/respostas/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async adicionarIndiceCriterio(item: IPaaIndiceCriterioModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/paaabaindicescriterios/indices-criterios/adicionar`, item)\r\n .toPromise();\r\n }\r\n\r\n public async removerIndiceCriterio(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/paaabaindicescriterios/indices-criterios/remover/${id}`)\r\n .toPromise();\r\n }\r\n \r\n public async removerIndiceCriterios(paaId: number, indicadorId: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/paaabaindicescriterios/indices-criterios/remover/paa/${paaId}/indicador/${indicadorId}`)\r\n .toPromise();\r\n }\r\n\r\n public async enviarQuestionariosPaa(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/paaabaindicescriterios/${id}/enviar-questionario`, {})\r\n .toPromise();\r\n }\r\n\r\n public async enviarRespostasCriterio(id: number, dados: IPaaCriterioRespostaModel[]): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/paaabaindicescriterios/${id}/responder-criterio`, dados)\r\n .toPromise();\r\n }\r\n\r\n public async obterVisualizacaoQuestionario(\r\n id: number\r\n ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/paaabaindicescriterios/${id}/visualizar-questionario`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async questionariosRespondidos(\r\n id: number\r\n ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/paaabaindicescriterios/${id}/questionario-respondido`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async cancelarEnvioQuestionario(\r\n id: number\r\n ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/paaabaindicescriterios/${id}/cancelar-questionario`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async enviarQuestionarios(id: number, model: IEnviarQuestionarioModel): Promise> {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/paaabaindicescriterios/${id}/enviar-questionario`,\r\n model\r\n )\r\n .toPromise();\r\n }\r\n}\r\n\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IParametrizacaoDocumentoEdocsModel } from '../models/parametrizacao-documento-edocs.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ParametrizacaoDocumentoEdocsService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/parametrizacaodocumentoedocs`)\r\n .toPromise();\r\n }\r\n\r\n public async atualizarTodos(data: IParametrizacaoDocumentoEdocsModel[]): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/parametrizacaodocumentoedocs`, data)\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IParametrizacaoModel } from '../models/parametrizacao.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ParametrizacaoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/parametrizacao`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: string): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/parametrizacao/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IParametrizacaoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/parametrizacao`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IParametrizacaoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/parametrizacao/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizaTodos(data: IParametrizacaoModel[]): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/parametrizacao`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: string): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/parametrizacao/${id}`)\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { filterBy } from '../core/helpers/filterby';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICargaCriterioPeaModel } from '../models/carga-criterio-pea.model';\r\nimport { IAutuacaoModel } from '../models/edocs/autuacao.model';\r\nimport { IEnviarQuestionarioModel } from '../models/enviar-questionario.model';\r\nimport { FiltroModel } from '../models/filtro.model';\r\nimport { IImprimirPeaModel } from '../models/imprimir-pea.model';\r\nimport { IPaaModel } from '../models/paa.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { IPaineisDistribuicaoModel } from '../models/paineis-distribuicao.model';\r\nimport { IPeaCoordenacaoCapacidadeModel } from '../models/pea-coordenacao-capacidade.model';\r\nimport { IPeaCriterioQuestionarioModel } from '../models/pea-criterio-questionario.model';\r\nimport { IPeaCriterioRespostaModel } from '../models/pea-criterio-resposta.model';\r\nimport { IPeaRankingPrioridadeModel } from '../models/pea-ranking-prioridade.model';\r\nimport { IPeaModel } from '../models/pea.model';\r\nimport { IPendenciasRankingModel } from '../models/pendencias-ranking.model';\r\nimport { IQuestionarioModel } from '../models/questionario.model';\r\nimport { IResponsavelUnidadeGestoraModel } from '../models/responsavel-unidade-gestora.model';\r\nimport { IValidacaoNivelModel } from '../models/validaca-nivel-aprovacao.model';\r\nimport { BaseService } from './base.service';\r\nimport { IPeaDadosBasicosModel } from '../models/pea-dados-basicos.model';\r\nimport { param } from 'jquery';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PeaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(\r\n pesquisa: string,\r\n ativo: boolean,\r\n simplificado = false,\r\n filtro?: FiltroModel\r\n ): Promise>> {\r\n let params = new HttpParams();\r\n if (ativo !== undefined) {\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n }\r\n\r\n if(filtro && Object.keys(filtro).length > 0) {\r\n return this.httpClient\r\n .get>>(filterBy(filtro, `${this.apiBaseUrl}/pea`), { params })\r\n .toPromise();\r\n }\r\n\r\n return this.httpClient\r\n .get>>(`${this.apiBaseUrl}/pea`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/pea/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async obterDadosBasicos(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/pea/${id}/dadosbasicos`)\r\n .toPromise();\r\n }\r\n\r\n\r\n public async imprimirPea(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/pea/${id}/imprimir-pea`)\r\n .toPromise();\r\n }\r\n\r\n public async imprimirPeaConsolidado(ids: string): Promise> {\r\n let params = new HttpParams();\r\n ids.split(',').map(_ => params = params.append('ids', _));\r\n \r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/pea/imprimir-pea-consolidado`, {params})\r\n .toPromise();\r\n }\r\n\r\n public async obterAnosPaa(id: number): Promise>> {\r\n return this.httpClient\r\n .get>>(\r\n `${this.apiBaseUrl}/pea/${id}/anos-disponiveis-paa`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async obterCargaCriteriosPorId(\r\n id: number\r\n ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/pea/${id}/carga-criterios`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IPeaDadosBasicosModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/pea`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IPeaModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/pea/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizarDadosBasicos(data: IPeaDadosBasicosModel): Promise>{\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/pea/${data.id}/dadosBasicos`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/pea/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/pea/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/pea/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n\r\n public async enviarAprovacao(id: number, idPerfil: string): Promise> {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/pea/${id}/enviar-aprovacao/${idPerfil}`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async enviarRespostasCriterio(\r\n id: number,\r\n dados: IPeaCriterioRespostaModel[]\r\n ): Promise> {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/pea/${id}/responder-criterio`,\r\n dados\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async importarRespostas(\r\n id: number,\r\n fileData: string\r\n ): Promise> {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/pea/${id}/importar-respostas`,\r\n { fileData }\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async obterCapacidadeTrabalhoPorId(\r\n id: number\r\n ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/pea/${id}/capacidade-trabalho`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async obterCapacidadeTrabalhoPorIdAndAno(\r\n id: number,\r\n ano: number\r\n ): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('ano', ano.toString());\r\n\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/pea/${id}/capacidade-trabalho`,\r\n { params }\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async obterPainelDistribuicaoPorPeaId(\r\n id: number\r\n ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/pea/${id}/painel-distribuicao`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async atualizarCapacidadeTrabalho(\r\n id: number,\r\n item: IPeaCoordenacaoCapacidadeModel\r\n ): Promise> {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/pea/${id}/capacidade-trabalho`,\r\n item\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async enviarQuestionarios(id: number, model: IEnviarQuestionarioModel): Promise> {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/pea/${id}/enviar-questionario`,\r\n model\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async obterQuestionarioPendente(\r\n pesquisa: string\r\n ): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/questionario/pea`,\r\n { params }\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async obterQuestionarioPorPeaIdeCriterioId(\r\n peaId: number,\r\n criterioId: number\r\n ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/questionario/pea/${peaId}/criterio/${criterioId}`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async salvarRespostasQuestionarioPorPeaId(\r\n id: number,\r\n data: IPeaCriterioQuestionarioModel[]\r\n ): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/questionario/pea/${id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async enviarRespostasQuestionarioPorPeaId(\r\n id: number,\r\n data: IPeaCriterioQuestionarioModel[]\r\n ): Promise> {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/questionario/${id}/enviar`,\r\n data\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async aprovar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/pea/${id}/aprovar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async homologar(\r\n id: number,\r\n comentario: string\r\n ): Promise> {\r\n\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/pea/${id}/homologar/${comentario}`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async rejeitar(\r\n id: number,\r\n justificativa: string\r\n ): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/pea/${id}/rejeitar`, {\r\n justificativa,\r\n })\r\n .toPromise();\r\n }\r\n\r\n public async gerarPaa(\r\n id: number,\r\n data: IPaaModel\r\n ): Promise> {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/pea/${id}/gerar-paa`,\r\n data\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async ObterResponsaveisUG(\r\n idUg: number\r\n ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/questionario/pea/responsaveis-ug/${idUg}`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public DelegarQuestionario(\r\n peaId: number,\r\n criterioId: number,\r\n idResponsavel: string,\r\n unidadeGestoraId: number\r\n ): Promise> {\r\n return this.httpClient\r\n .put>(\r\n `${this.apiBaseUrl}/questionario/pea/${peaId}/responsavel/${idResponsavel}/criterio/${criterioId}/ug/${unidadeGestoraId}`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async obterVisualizacaoQuestionario(\r\n id: number\r\n ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/pea/${id}/visualizar-questionario`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async enviarQuestionarioCancelado(\r\n id: number\r\n ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/pea/${id}/cancelar-questionario`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public async questionariosRespondidos(\r\n id: number\r\n ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/pea/${id}/questionario-respondido`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n public GerarRankingDistribuicao(\r\n peaId: number\r\n ): Promise> {\r\n return this.httpClient\r\n .put>(\r\n `${this.apiBaseUrl}/pearankingprioridade/ranking-distribuicao/${peaId}/peaId`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n public AtualizarFaixaClassificacao(data: IPeaModel): Promise>{\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/pea/${data.id}/atualizar-faixaclassificacao`, data)\r\n .toPromise();\r\n }\r\n\r\n public imprimir(id: number): Promise{\r\n return this.httpClient\r\n .get(`${this.apiBaseUrl}/pea/${id}/imprimir`)\r\n .toPromise();\r\n }\r\n\r\n public async verificarNivelAprovacao(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/pea/${id}/verificar-nivel-aprovacao`)\r\n .toPromise();\r\n }\r\n\r\n public async removerClassificacaoPersonalizada(id: number): Promise>{\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/pea/${id}/remover-classificacao-personalizada`, {})\r\n .toPromise();\r\n }\r\n\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { filterBy } from '../core/helpers/filterby';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IFiltroPendenciaModel } from '../models/filtro-pendencia.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { IPendenciaModel } from '../models/pendencia.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PendenciaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async obter(filtro: IFiltroPendenciaModel) {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', filtro.pesquisa || '');\r\n\r\n if (Object.keys(filtro).length > 0) {\r\n return this.httpClient\r\n .get>>(filterBy(filtro, `${this.apiBaseUrl}/pendencia`), { params })\r\n .toPromise();\r\n }\r\n }\r\n\r\n public async obterPendencias(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/pendencia/nao-resolvidas`)\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IPerguntaModel } from '../models/pergunta.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PerguntaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/pergunta`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/pergunta/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IPerguntaModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/pergunta`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IPerguntaModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/pergunta/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/pergunta/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/pergunta/${id}/inativar`, {})\r\n .toPromise();\r\n \r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/pergunta/${id}/excluir`, {})\r\n .toPromise();\r\n \r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IPeriodoExercicioModel } from '../models/periodo-exercicio.model';\r\nimport { BaseService } from './base.service';\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PeriodoExercicioService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy );\r\n }\r\n\r\n public async obterPorResponsavelId(unidadeGestoraId: number, id: string): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/periodoexercicio/unidade-gestora/${unidadeGestoraId}/responsavel/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/periodoexercicio/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IPeriodoExercicioModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/periodoexercicio`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IPeriodoExercicioModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/periodoexercicio/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise>{\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/periodoexercicio/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise>{\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/periodoexercicio/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise>{\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/periodoexercicio/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IPeriodoModel } from '../models/periodo.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PeriodoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/periodo`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/periodo/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IPeriodoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/periodo`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IPeriodoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/periodo/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/periodo/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/periodo/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/periodo/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\n\r\nimport { IPlanejamentoAuditoresSalvarModel, IPlanejamentoSubtipoAuditoriaSalvarModel, IPlanejamentoSubtipoExcluirModel, IPlanejamentoUGSubtipoSalvarModel } from '../models/planejamento-subtipo-auditoria.model';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IPlanejamentoModel } from '../models/planejamento.model';\r\nimport { IValidacaoNivelModel } from '../models/validaca-nivel-aprovacao.model';\r\nimport { BaseService } from './base.service';\r\nimport { IPlanejamentoEquipeModel } from '../models/planejamento-equipe.model';\r\nimport { IPlanejamentoImprimirModel } from '../models/planejamento-imprimir.model';\r\nimport { Subject } from 'rxjs';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { filterBy } from './auditoria.service';\r\nimport { IEntranharDocumentoModel } from '../models/edocs/entranhar-documento.model';\r\nimport { ISubtipoAuditoriaModel } from '../models/subtipo-auditoria.model';\r\n\r\ntype subjectOfArray = any | any[] | Subject;\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PlanejamentoService extends BaseService {\r\n private _planejamentoSubTipoAuditoria: subjectOfArray = new Subject();\r\n\r\n public get planejamentoSubTipoAuditoria(): subjectOfArray {\r\n return this._planejamentoSubTipoAuditoria.asObservable() as Subject;\r\n }\r\n\r\n public set planejamentoSubTipoAuditoria(value: subjectOfArray ) {\r\n this._planejamentoSubTipoAuditoria.next(value);\r\n }\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa?: string, ativo?: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/planejamento`, { params })\r\n .toPromise();\r\n }\r\n\r\n public obterFiltrado(filtro: any): Promise>> {\r\n\r\n return this.httpClient\r\n .get>>(filterBy(filtro, `${this.apiBaseUrl}/planejamento`) )\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/planejamento/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async obterAbaMatrizPorIdImprimir(tipoTrabalho: number, id: number, imprimir: boolean=false): Promise> {\r\n var url = `${this.apiBaseUrl}/aba-matriz-planejamento/${tipoTrabalho}/tipoTrabalho/${id}/imprimir`;\r\n return this.httpClient\r\n .get>(url)\r\n .toPromise();\r\n }\r\n\r\n public async obterAbaMatrizPorId(tipoTrabalho: number, id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/aba-matriz-planejamento/${tipoTrabalho}/tipoTrabalho/${id}`)\r\n .toPromise().then(a => {\r\n this.planejamentoSubTipoAuditoria = a.dados as any;\r\n return a;\r\n });\r\n }\r\n\r\n public async imprimir(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/planejamento/${id}/imprimir-planejamento`)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IPlanejamentoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/planejamento/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async salvarSubtipoAuditoria(id: number, data: IPlanejamentoSubtipoAuditoriaSalvarModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/planejamento/${id}/salvar-subTipos`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluirSubtipoAuditoria(id: number, subtipoId: number, data: IPlanejamentoSubtipoExcluirModel): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/planejamento/${id}/SubTipo/${subtipoId}/excluir`, data)\r\n .toPromise();\r\n }\r\n\r\n public async salvarUgSubtipo(id: number, data: IPlanejamentoUGSubtipoSalvarModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/planejamento/${id}/salvar-ugs-subTipo`, data)\r\n .toPromise();\r\n }\r\n\r\n public async salvarAlocarEquipe(id: number, data: IPlanejamentoAuditoresSalvarModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/planejamento/${id}/alocar-equipe`, data)\r\n .toPromise();\r\n }\r\n\r\n public async obterAlocarEquipe(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/planejamento/${id}/equipes`)\r\n .toPromise();\r\n }\r\n\r\n public async desvincularAlocarEquipe(id: number, auditorId: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/planejamento/${id}/equipe/${auditorId}/desvincular`)\r\n .toPromise();\r\n }\r\n\r\n public async desvincularUgSubtipo(id: number, subtipoId: number, ug: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/planejamento/${id}/ug/${ug}/subtipo/${subtipoId}/desvincular`)\r\n .toPromise();\r\n }\r\n\r\n public async enviarAprovacao(id: number): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/planejamento/${id}/enviar-aprovacao`, null)\r\n .toPromise();\r\n }\r\n\r\n public async homologar(id: number, entranharDocumento: IEntranharDocumentoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/planejamento/${id}/homologar`, entranharDocumento)\r\n .toPromise();\r\n }\r\n\r\n public async verificarNivelAprovacao(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/planejamento/${id}/verificar-nivel-aprovacao`)\r\n .toPromise();\r\n }\r\n\r\n\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IProcedimentoAuditoriaModel } from '../models/procedimento-auditoria.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ProcedimentoAuditoriaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/procedimentoAuditoria`, { params })\r\n .toPromise();\r\n }\r\n\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/procedimentoAuditoria/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IProcedimentoAuditoriaModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/procedimentoAuditoria`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IProcedimentoAuditoriaModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/procedimentoAuditoria/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/procedimentoAuditoria/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/procedimentoAuditoria/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/procedimentoAuditoria/${id}`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IQuestaoModel } from '../models/questao.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class QuestaoService extends BaseService {\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa?: string, ativo?: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient.get>(`${this.apiBaseUrl}/questao`, { params }).toPromise();\r\n }\r\n\r\n public obterPorTipoTrabalho(tipoTrabalho: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/questao/tipoTrabalho/${tipoTrabalho}`)\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number, tipoTrabalho: string): Promise> {\r\n if (tipoTrabalho === 'planejamento') {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/questao/${id}/planejamento`)\r\n .toPromise();\r\n } else if (tipoTrabalho === 'osa') {\r\n return this.httpClient.get>(`${this.apiBaseUrl}/questao/${id}/osa`).toPromise();\r\n } else {\r\n return this.httpClient.get>(`${this.apiBaseUrl}/questao/${id}`).toPromise();\r\n }\r\n }\r\n\r\n public async inserir(\r\n data: IQuestaoModel,\r\n tipoTrabalho: string,\r\n tipoTrabalhoId: number,\r\n subTipoAuditoriaId: number\r\n ): Promise> {\r\n if (tipoTrabalho === 'planejamento') {\r\n data.tipoTrabalhoId = tipoTrabalhoId;\r\n data.subTipoAuditoriaId = subTipoAuditoriaId;\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/questao/planejamento`, data)\r\n .toPromise();\r\n } else if (tipoTrabalho === 'osa') {\r\n data.tipoTrabalhoId = tipoTrabalhoId;\r\n return this.httpClient.post>(`${this.apiBaseUrl}/questao/osa`, data).toPromise();\r\n } else {\r\n return this.httpClient.post>(`${this.apiBaseUrl}/questao`, data).toPromise();\r\n }\r\n }\r\n\r\n public async atualizar(\r\n data: IQuestaoModel,\r\n tipoTrabalho: string,\r\n tipoTrabalhoId: number\r\n ): Promise> {\r\n if (tipoTrabalho === 'planejamento') {\r\n data.tipoTrabalhoId = tipoTrabalhoId;\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/questao/planejamento`, data)\r\n .toPromise();\r\n } else if (tipoTrabalho === 'osa') {\r\n data.tipoTrabalhoId = tipoTrabalhoId;\r\n return this.httpClient.post>(`${this.apiBaseUrl}/questao/osa`, data).toPromise();\r\n } else {\r\n return this.httpClient.post>(`${this.apiBaseUrl}/questao`, data).toPromise();\r\n }\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient.post>(`${this.apiBaseUrl}/questao/${id}/reativar`, {}).toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient.post>(`${this.apiBaseUrl}/questao/${id}/inativar`, {}).toPromise();\r\n }\r\n\r\n public async excluir(id: number, tipoTrabalho: string): Promise> {\r\n if (tipoTrabalho === 'planejamento') {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/questao/${id}/planejamento`, {})\r\n .toPromise();\r\n } else if (tipoTrabalho === 'osa') {\r\n return this.httpClient.delete>(`${this.apiBaseUrl}/questao/${id}/osa`, {}).toPromise();\r\n } else {\r\n return this.httpClient.delete>(`${this.apiBaseUrl}/questao/${id}`, {}).toPromise();\r\n }\r\n }\r\n\r\n public async vincularQuestaoConstatacao(questaoId: number, data: { constatacoes: number[] }, tipoTrabalho: string) {\r\n if (tipoTrabalho === 'planejamento') {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/Questao/${questaoId}/questao-constatacao/salvar/planejamento`,\r\n data\r\n )\r\n .toPromise();\r\n } else if (tipoTrabalho === 'osa') {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/Questao/${questaoId}/questao-constatacao/salvar/osa`, data)\r\n .toPromise();\r\n } else {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/Questao/${questaoId}/questao-constatacao/salvar`, data)\r\n .toPromise();\r\n }\r\n }\r\n\r\n public async vincularQuestaoProcedimento(\r\n questaoId: number,\r\n data: { procedimentos: number[] },\r\n tipoTrabalho: string\r\n ) {\r\n if (tipoTrabalho === 'planejamento') {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/Questao/${questaoId}/questao-procedimento/salvar/planejamento`,\r\n data\r\n )\r\n .toPromise();\r\n } else if (tipoTrabalho === 'osa') {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/Questao/${questaoId}/questao-procedimento/salvar/osa`, data)\r\n .toPromise();\r\n } else {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/Questao/${questaoId}/questao-procedimento/salvar`, data)\r\n .toPromise();\r\n }\r\n }\r\n\r\n public async desVincularQuestaoConstatacao(questaoId: number, constatcaoId: number, tipoTrabalho: string) {\r\n if (tipoTrabalho === 'planejamento') {\r\n return this.httpClient\r\n .delete>(\r\n `${this.apiBaseUrl}/Questao/${questaoId}/constatacao/${constatcaoId}/excluir/planejamento`\r\n )\r\n .toPromise();\r\n } else if (tipoTrabalho === 'osa') {\r\n return this.httpClient\r\n .delete>(\r\n `${this.apiBaseUrl}/Questao/${questaoId}/constatacao/${constatcaoId}/excluir/osa`\r\n )\r\n .toPromise();\r\n } else {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/Questao/${questaoId}/constatacao/${constatcaoId}/excluir`)\r\n .toPromise();\r\n }\r\n }\r\n\r\n public async desVincularQuestaoProcedimento(questaoId: number, procedimentoId: number, tipoTrabalho: string) {\r\n if (tipoTrabalho === 'planejamento') {\r\n return this.httpClient\r\n .delete>(\r\n `${this.apiBaseUrl}/Questao/${questaoId}/procedimento/${procedimentoId}/excluir/planejamento`\r\n )\r\n .toPromise();\r\n } else if (tipoTrabalho === 'osa') {\r\n return this.httpClient\r\n .delete>(\r\n `${this.apiBaseUrl}/Questao/${questaoId}/procedimento/${procedimentoId}/excluir/osa`\r\n )\r\n .toPromise();\r\n } else {\r\n return this.httpClient\r\n .delete>(\r\n `${this.apiBaseUrl}/Questao/${questaoId}/procedimento/${procedimentoId}/excluir`\r\n )\r\n .toPromise();\r\n }\r\n }\r\n\r\n public async aprovar(questaoId: number): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/questao/${questaoId}/avaliar`, { avaliar: 1 })\r\n .toPromise();\r\n }\r\n\r\n public async reprovar(questaoId: number): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/questao/${questaoId}/avaliar`, { avaliar: 0 })\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICriterioQuestionarioModel } from '../models/criterio-questionario.model';\r\nimport { IQuestionarioModel } from '../models/questionario.model';\r\nimport { BaseService } from './base.service';\r\nimport { IQuestionarioPaaModel } from '../models/questionario.paa.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class QuestionarioService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async enviarQuestionariosPea(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/pea/${id}/enviar-questionario`, {})\r\n .toPromise();\r\n }\r\n\r\n public async obterQuestionariosPendentePea(pesquisa: string): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/questionario/pea`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterQuestionarioPendentePorPeaId(id: number, criterioId: number, unidadeGestoraId: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/questionario/pea/${id}/criterio/${criterioId}/ug/${unidadeGestoraId}`)\r\n .toPromise();\r\n }\r\n\r\n public async salvarRespostasQuestionarioPorPeaId(id: number, data: ICriterioQuestionarioModel[]): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/questionario/pea/${id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async enviarRespostasQuestionarioPorPeaId(id: number, data: ICriterioQuestionarioModel[]): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/questionario/pea/${id}/enviar`, data)\r\n .toPromise();\r\n }\r\n\r\n public async obterQuestionariosPendentePaa(pesquisa: string): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/questionario/paa`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterQuestionarioPendentePorPaaId(id: number, idCriterio: number, unidadeGestoraId: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/questionario/paa/${id}/criterio/${idCriterio}/ug/${unidadeGestoraId}`)\r\n .toPromise();\r\n }\r\n\r\n public async salvarRespostasQuestionarioPorPaaId(id: number, data: ICriterioQuestionarioModel[]): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/questionario/paa/${id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async enviarRespostasQuestionarioPorPaaId(id: number, data: ICriterioQuestionarioModel[]): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/questionario/paa/${id}/enviar`, data)\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { FiltroModel } from '../models/filtro.model';\r\nimport { BaseService } from './base.service';\r\nimport { filterBy } from '../core/helpers/filterby';\r\nimport { IEntendendoEntidadeListaModel } from '../models/entendendo-entidade-lista.model';\r\nimport { FiltroQuestionarioUG } from '../models/filtro-questionario-ug.model';\r\nimport { AvaliacaoRequest, IImprimirQuestionarioRespostaUGModel, IListaQuestionarioRespostaUGModel, IQuestionarioUGModel, IVisualizarQuestionarioRespostaUGModel } from '../models/questionario-ug.model';\r\nimport { IArquivoModel } from '../models/arquivo.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class QuestionarioUGRespostaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async ObterRespostaQuestionario(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/QuestionarioUGResposta/resposta/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async salvarRespostasQuestionarioPorId(id: number, data: IListaQuestionarioRespostaUGModel[]): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUGResposta/salvar/${id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async enviarRespostasQuestionarioPorId(id: number, data: IListaQuestionarioRespostaUGModel[]): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUGResposta/enviar/${id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async anexarArquivo(idItemQuestionarioUG: number, anexo : IArquivoModel): Promise> {\r\n const formData: FormData = new FormData();\r\n\r\n formData.append('id', anexo.id.toString());\r\n formData.append('nomeArquivo', anexo.nomeArquivo);\r\n formData.append('entidadeArquivo', anexo.entidadeArquivo.toString());\r\n formData.append('arquivo', anexo.arquivo);\r\n\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUGResposta/anexarArquivo/${idItemQuestionarioUG}`,formData, {})\r\n .toPromise();\r\n }\r\n\r\n public DelegarQuestionario(\r\n questionarioItemsId: string,\r\n idResponsavel: string\r\n ): Promise> {\r\n return this.httpClient\r\n .put>(\r\n `${this.apiBaseUrl}/QuestionarioUGResposta/questionario/${questionarioItemsId}/responsavel/${idResponsavel}`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n public FinalizarPerguntaQuestionario(\r\n questionarioItemsId: string\r\n ): Promise> {\r\n return this.httpClient\r\n .put>(\r\n `${this.apiBaseUrl}/QuestionarioUGResposta/finalizarperguntaquestionario/${questionarioItemsId}`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n public EnviarReplicaQuestionario(\r\n questionarioItemsId: string,\r\n replica: string,\r\n tiporeplica: number\r\n ): Promise> {\r\n return this.httpClient\r\n .put>(\r\n `${this.apiBaseUrl}/QuestionarioUGResposta/responder-replica/${questionarioItemsId}/replica/${replica}/tiporeplica/${tiporeplica}`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n fazerAvaliacaoOuReplica(\r\n questionarioItemsId: string,\r\n avaliacaoDto: AvaliacaoRequest\r\n ): Promise> {\r\n return this.httpClient.put>(\r\n `${this.apiBaseUrl}/QuestionarioUGResposta/avaliacao/${questionarioItemsId}`,\r\n avaliacaoDto\r\n ).toPromise();\r\n }\r\n\r\n enviarParaReplica(\r\n questionarioId: number\r\n ): Promise> {\r\n return this.httpClient.put>(\r\n `${this.apiBaseUrl}/QuestionarioUGResposta/enviar-para-replica/${questionarioId}`, null\r\n ).toPromise();\r\n }\r\n\r\n FinalizarQuestionarioAvaliacao(\r\n questionarioId: number\r\n ): Promise> {\r\n return this.httpClient.put>(\r\n `${this.apiBaseUrl}/QuestionarioUGResposta/finalizar-questionario-avaliacao/${questionarioId}`, null\r\n ).toPromise();\r\n }\r\n\r\n\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { BaseService } from './base.service';\r\nimport { filterBy } from '../core/helpers/filterby';\r\nimport { IQuestionarioUGListaModel } from '../models/questionario-ug-lista.model';\r\nimport { FiltroQuestionarioUG } from '../models/filtro-questionario-ug.model';\r\nimport { IImprimirQuestionarioRespostaUGModel, IListaQuestionarioRespostaUGModel, IQuestionarioUGModel, IVisualizarQuestionarioRespostaUGModel } from '../models/questionario-ug.model';\r\nimport { IArquivoModel } from '../models/arquivo.model';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n })\r\n\r\nexport class QuestionarioUGService extends BaseService{\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro: FiltroQuestionarioUG): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/QuestionarioUG`))\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/QuestionarioUG/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(id: number, idUG: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${id}/${idUG}/inserir`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inserirQuestionarioAPartirDoUltimo(idUG: number, idTipoRelatorio: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${idUG}/${idTipoRelatorio}/inserirCopia`, {})\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IQuestionarioUGModel): Promise>{\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/QuestionarioUG`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/QuestionarioUG/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n\r\n public async solicitarPreenchimentoQuestionario(id: number, qtdeDiasPrazo: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${id}/${qtdeDiasPrazo}/solicitarPreenchimento`, {})\r\n .toPromise();\r\n }\r\n \r\n public async enviarArquivo(idUG: number, idTipoQuestionario: number, anexo : IArquivoModel): Promise> {\r\n const formData: FormData = new FormData();\r\n \r\n formData.append('id', anexo.id.toString());\r\n formData.append('nomeArquivo', anexo.nomeArquivo);\r\n formData.append('entidadeArquivo', anexo.entidadeArquivo.toString());\r\n formData.append('arquivo', anexo.arquivo);\r\n \r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${idUG}/${idTipoQuestionario}/enviarArquivo`,formData, {})\r\n .toPromise();\r\n }\r\n\r\n public async Avocar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${id}/avocar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async Avaliar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${id}/avaliar`, {})\r\n .toPromise();\r\n }\r\n \r\n public async DownloadArquivo(idUG: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${idUG}/obterArquivo`, {})\r\n .toPromise();\r\n }\r\n\r\n public async DownloadArquivoPorTipo(idUG: number, idTipoQuestionario: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${idUG}/obterArquivoPorTipo/${idTipoQuestionario}`, {})\r\n .toPromise();\r\n }\r\n\r\n public async DownloadArquivoPorIdQuestionario(idQuestionario: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${idQuestionario}/download-arquivo`, {})\r\n .toPromise();\r\n }\r\n \r\n public ObterQuestionarioPendente(filtro: FiltroQuestionarioUG): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/QuestionarioUG/pre-planejamento`))\r\n .toPromise();\r\n }\r\n \r\n public async VisualizarRespostaQuestionario(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/QuestionarioUG/visualizar/${id}`)\r\n .toPromise();\r\n }\r\n \r\n public async ImprimirRespostaQuestionario(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/QuestionarioUG/imprimir/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async encerrarQuestionarioImportacaoArquivo(idUG: number, idTipoQuestionario: number, idMaturidade: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/QuestionarioUG/${idUG}/${idTipoQuestionario}/${idMaturidade}/encerrar-avaliacao-arquivo-importado`,null, {})\r\n .toPromise();\r\n }\r\n}","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ICriterioQuestionarioModel } from '../models/criterio-questionario.model';\r\nimport { IPaaRankingPrioridadeModel } from '../models/paa-ranking-prioridade.model';\r\nimport { IPeaRankingPrioridadeModel } from '../models/pea-ranking-prioridade.model';\r\nimport { IPendenciasRankingModel } from '../models/pendencias-ranking.model';\r\nimport { IQuestionarioModel } from '../models/questionario.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RankingDistribuicaoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obterRankingDistribuicao(\r\n id: number,\r\n indicadorId: number,\r\n tipoDocumento: 1 | 2\r\n ): Promise> {\r\n let url = '';\r\n if (tipoDocumento == 1) {\r\n url = `${this.apiBaseUrl}/pearankingprioridade/ranking-distribuicao/${id}/peaId`;\r\n }\r\n else if (tipoDocumento == 2) {\r\n url = `${this.apiBaseUrl}/paarankingprioridade/ranking-distribuicao/paa/${id}/indicador/${indicadorId}`;\r\n }\r\n else\r\n return;\r\n\r\n return this.httpClient\r\n .get>(\r\n `${url}`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public obterRankingDistribuicaoSimplificado(\r\n id: number,\r\n indicadorId: number,\r\n tipoDocumento: 1 | 2\r\n ): Promise> {\r\n let url = '';\r\n if (tipoDocumento == 1) {\r\n url = `${this.apiBaseUrl}/pearankingprioridade/ranking-distribuicao/${id}/peaId`;\r\n }\r\n else if (tipoDocumento == 2) {\r\n url = `${this.apiBaseUrl}/paarankingprioridade/ranking-distribuicao-simplificado/paa/${id}/indicador/${indicadorId}`;\r\n }\r\n else\r\n return;\r\n\r\n return this.httpClient\r\n .get>(\r\n `${url}`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public gerarRankingDistribuicao(\r\n id: number,\r\n tipoDocumento: 1 | 2\r\n ): Promise> {\r\n let url = '';\r\n if (tipoDocumento == 1) {\r\n url = `${this.apiBaseUrl}/pearankingprioridade/ranking-distribuicao/${id}/peaId`;\r\n }\r\n else if (tipoDocumento == 2) {\r\n url = `${this.apiBaseUrl}/paarankingprioridade/ranking-distribuicao/paa/${id}`;\r\n }\r\n else\r\n return;\r\n\r\n return this.httpClient\r\n .put>(\r\n `${url}`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IRecomendacaoModel } from '../models/recomendacao.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RecomendacaoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/recomendacao`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/recomendacao/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IRecomendacaoModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/recomendacao`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IRecomendacaoModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/recomendacao/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/recomendacao/${id}`, {})\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/recomendacao/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/recomendacao/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IAvaliacaoRelatoriaModel } from '../models/avaliacao-relatoria-model';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IRelatoriaCapituloModel } from '../models/relatoria-capitulo.model';\r\nimport { BaseService } from './base.service';\r\nimport { RelatoriaService } from './relatoria.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RelatoriaCapituloService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, private relatoriaService: RelatoriaService, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/relatoriascapitulos/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(idTipodeTrabalho: number, idItem: number, tipoTrabalho: number): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/relatoriascapitulos/${idItem}/tipo-trabalho/${idTipodeTrabalho}/excluir`, {})\r\n .toPromise().then(res => {\r\n this.relatoriaService.obterPorTipoTrabalho(idTipodeTrabalho, tipoTrabalho);\r\n return res;\r\n });\r\n }\r\n\r\n public async reativar(idTipodeTrabalho: number, idItem: number, tipoTrabalho: number): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/relatoriascapitulos/${idItem}/tipo-trabalho/${idTipodeTrabalho}/reativar`, {})\r\n .toPromise().then(res => {\r\n this.relatoriaService.obterPorTipoTrabalho(idTipodeTrabalho, tipoTrabalho);\r\n return res;\r\n });\r\n }\r\n\r\n public async avaliarExclusao(id: number, situacao: IAvaliacaoRelatoriaModel, tipoTrabalho: number, tipoTrabalhoId: number): Promise> {\r\n return this.httpClient\r\n .patch>(`${this.apiBaseUrl}/relatoriascapitulos/${id}/avaliar-exclusao/`, situacao)\r\n .toPromise().then(res => {\r\n this.relatoriaService.obterPorTipoTrabalho(tipoTrabalhoId, tipoTrabalho);\r\n return res;\r\n });\r\n }\r\n\r\n public async salvar(relatoriaDados: IRelatoriaCapituloModel, tipoTrabalho: number, id?: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/relatoriascapitulos/salvar`, relatoriaDados)\r\n .toPromise().then(res => {\r\n if (id) { this.relatoriaService.obterPorTipoTrabalho(id, tipoTrabalho); }\r\n return res;\r\n });\r\n }\r\n}\r\n\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IModeloRelatorioModel } from '../models/modelo-relatorio.model';\r\nimport { IRelatoriaModel } from '../models/relatoria.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RelatoriaService extends BaseService {\r\n private relatoriaSource = new BehaviorSubject('');\r\n public reltoriaCurrent = this.relatoriaSource.asObservable();\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy); \r\n }\r\n\r\n public async excluirRelatoria(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/relatorias/${id}/excluir`)\r\n .toPromise().then(res => {\r\n if(res.sucesso) this.relatoriaSource.next('');\r\n return res;\r\n });\r\n }\r\n\r\n public async gerar(relatoriaModel: (IRelatoriaModel | IModeloRelatorioModel)): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/relatorias/gerar-relatoria`, relatoriaModel )\r\n .toPromise();\r\n }\r\n\r\n public async obterPorTipoTrabalho(tipoTrabalhoId: number, tipoTrabalho: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/relatorias/${tipoTrabalhoId}/tipo-trabalho/${tipoTrabalho}`, {})\r\n .toPromise().then(res => {\r\n this.relatoriaSource.next(res.dados);\r\n return res;\r\n });\r\n } \r\n\r\n public async habilitarGerar(idTrabalho: number, tipoTrabalho: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/relatorias/habilitar-gerar/${idTrabalho}/${tipoTrabalho}`, {})\r\n .toPromise();\r\n } \r\n \r\n}\r\n\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IImprimirResponsavelUnidadeGestoraPaiModel } from '../models/imprimir-responsavel-unidade-gestora.model';\r\nimport { IResponsavelModel } from '../models/responsaveis.model';\r\nimport { BaseService } from './base.service';\r\nimport { IListaResponsavelModel } from '../models/lista-responsaveis.model';\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ResponsaveisService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(unidadeGestoraId: number, pesquisa: string,naturezaResponsabilidade: string,tipoAgente: string, ativo: boolean, dataInicio: Date = null, dataFim: Date = null, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (naturezaResponsabilidade !== undefined) {\r\n params = params.append('naturezaResponsabilidade', naturezaResponsabilidade.toString());\r\n }\r\n\r\n if (tipoAgente !== undefined) {\r\n params = params.append('tipoAgente', tipoAgente.toString());\r\n }\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (dataInicio) {\r\n params = params.append('dataInicio', dataInicio.toDateString());\r\n }\r\n\r\n if (dataFim) {\r\n params = params.append('dataFim', dataFim.toDateString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/responsavel/unidades-gestora/${unidadeGestoraId}`, { params })\r\n .toPromise();\r\n }\r\n\r\n public obterListaResponsaveis(unidadeGestoraId: number, pesquisa: string,naturezaResponsabilidade: string,tipoAgente: string, ativo: boolean, dataInicio: Date = null, dataFim: Date = null, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (naturezaResponsabilidade !== undefined) {\r\n params = params.append('naturezaResponsabilidade', naturezaResponsabilidade.toString());\r\n }\r\n\r\n if (tipoAgente !== undefined) {\r\n params = params.append('tipoAgente', tipoAgente.toString());\r\n }\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (dataInicio) {\r\n params = params.append('dataInicio', dataInicio.toDateString());\r\n }\r\n\r\n if (dataFim) {\r\n params = params.append('dataFim', dataFim.toDateString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/responsavel/lista-responsaveis/${unidadeGestoraId}`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async ObterAgentePorCpf(unidadeGestoraId: number, cpf: string): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/responsavel/unidade-gestora/${unidadeGestoraId}/cpf/${cpf}`)\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/responsavel/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async obterPorResponsavelId(unidadeGestoraId: number, responsavelId: string): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/responsavel/${responsavelId}/unidade-gestora/${unidadeGestoraId}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IResponsavelModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/responsavel`, data)\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/responsavel/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/responsavel/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IResponsavelModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/responsavel/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(unidadeGestoraId: number, id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/responsavel/${id}/unidades-gestora/${unidadeGestoraId}/excluir`, {})\r\n .toPromise (); \r\n }\r\n\r\n public imprimirResponsaveisUg(ids: number[], pesquisa: string, ativo: boolean, dataInicio: Date = null, dataFim: Date = null): Promise> {\r\n let params = new HttpParams();\r\n\r\n ids.forEach(id => { if (id) { params = params.append('ids', id.toString() || ''); } });\r\n\r\n params = params.append('pesquisa', pesquisa || '');\r\n \r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (dataInicio) {\r\n params = params.append('dataInicio', dataInicio.toDateString());\r\n }\r\n\r\n if (dataFim) {\r\n params = params.append('dataFim', dataFim.toDateString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/responsavel/imprimir-responsaveis-por-ugs`, { params })\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { IRiscosChavesModel, IRiscosChavesProcessoItemModel } from '../models/riscos-chaves.model';\r\nimport { FiltroModel } from '../models/filtro.model';\r\nimport { BaseService } from './base.service';\r\nimport { filterBy } from '../core/helpers/filterby';\r\nimport { IRiscosChavesListaModel } from '../models/riscos-chaves-lista.model';\r\nimport { FiltroQuestionarioUG } from '../models/filtro-questionario-ug.model';\r\nimport { IImprimirQuestionarioRespostaUGModel, IListaQuestionarioRespostaUGModel, IQuestionarioUGModel, IVisualizarQuestionarioRespostaUGModel } from '../models/questionario-ug.model';\r\nimport { IArquivoModel } from '../models/arquivo.model';\r\nimport { FiltroRiscosChavesModel } from \"../models/filtro-riscos-chaves.model\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RiscosChavesServices extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro: FiltroRiscosChavesModel): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/RiscosChaves`))\r\n .toPromise();\r\n }\r\n public async solicitarPreenchimentoFormulario(id: number, qtdeDiasPrazo: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/RiscosChaves/${id}/${qtdeDiasPrazo}/solicitarPreenchimento`, {})\r\n .toPromise();\r\n }\r\n\r\n public async Avocar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/RiscosChaves/${id}/avocar`, {})\r\n .toPromise();\r\n }\r\n\r\n public obterItensProcesso(riscoChaveId: number, processoId: number):\r\n Promise> {\r\n const url = `${this.apiBaseUrl}/riscosChaves/${riscoChaveId}/${processoId}`;\r\n return this.httpClient\r\n .get>(url)\r\n\r\n .toPromise();\r\n \r\n }\r\n public async obterPorId(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/RiscosChaves/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(\r\n data: IRiscosChavesModel\r\n ): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/riscosChaves`, data)\r\n .toPromise();\r\n }\r\n\r\n public async inserirProcessoItem(\r\n data: IRiscosChavesProcessoItemModel\r\n ): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/riscosChaves/InserirProcessoItem`, data)\r\n .toPromise();\r\n }\r\n\r\n\r\n public async atualizar(data: IRiscosChavesModel): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.put>(`${this.apiBaseUrl}/RiscosChaves/${data.id}`, data)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/RiscosChaves/excluir/${id}`, {})\r\n .toPromise();\r\n }\r\n\r\n\r\n}","import { LocationStrategy } from \"@angular/common\";\r\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { IBaseModel } from \"../models/base.model\";\r\nimport { IRiscosModel } from \"../models/riscos.model\";\r\nimport { PaginacaoModel } from \"../models/paginacao.model\";\r\nimport { FiltroModel } from \"../models/filtro.model\";\r\nimport { BaseService } from \"./base.service\";\r\nimport { filterBy } from \"../core/helpers/filterby\";\r\nimport { FiltroRisco } from \"../models/filtro-risco.model\";\r\n\r\n@Injectable({\r\n\tprovidedIn: \"root\",\r\n})\r\nexport class RiscosService extends BaseService {\r\n\tconstructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n\t\tsuper(httpClient, locationStrategy);\r\n\t}\r\n\r\n\tpublic obter(\r\n\t\tfiltro: FiltroModel\r\n\t): Promise>> {\r\n\t\treturn this.httpClient\r\n\t\t\t.get>>(\r\n\t\t\t\tfilterBy(filtro, `${this.apiBaseUrl}/Riscos`)\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\tpublic obterAtivos(filtro: FiltroRisco): Promise>> {\r\n\t\treturn this.httpClient\r\n\t\t .get>>(filterBy(filtro,`${this.apiBaseUrl}/Riscos/obterAtivos`))\r\n\t\t .toPromise();\r\n\t }\r\n\r\n\tpublic async obterPorId(id: number): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.get>(`${this.apiBaseUrl}/Riscos/${id}`)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async inserir(\r\n\t\tdata: IRiscosModel\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.post>(`${this.apiBaseUrl}/Riscos`, data)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async atualizar(data: IRiscosModel): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.put>(`${this.apiBaseUrl}/Riscos/${data.id}`, data)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async reativar(id: number): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.post>(\r\n\t\t\t\t`${this.apiBaseUrl}/Riscos/${id}/reativar`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async inativar(id: number): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.post>(\r\n\t\t\t\t`${this.apiBaseUrl}/Riscos/${id}/inativar`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async excluir(id: number): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.delete>(\r\n\t\t\t\t`${this.apiBaseUrl}/Riscos/${id}/excluir`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic obterCategorias(): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t .get>(`${this.apiBaseUrl}/Riscos/obterCategorias`, {})\r\n\t\t .toPromise();\r\n\t}\r\n\r\n\tpublic obterSubTipoAuditoria(): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t .get>(`${this.apiBaseUrl}/Riscos/obterSubTipoAuditoria`, {})\r\n\t\t .toPromise();\r\n\t}\r\n\r\n\tpublic obterTipoEnfase(): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t .get>(`${this.apiBaseUrl}/Riscos/obterTipoEnfase`, {})\r\n\t\t .toPromise();\r\n\t}\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { data } from 'jquery';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IRolResponsaveisModel } from '../models/rol-responsaveis.model';\r\nimport { BaseService } from './base.service';\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RolResponsaveisService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, dataInicio: Date = null, dataFim: Date = null, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (dataInicio) {\r\n params = params.append('dataInicio', dataInicio.toDateString());\r\n }\r\n\r\n if (dataFim) {\r\n params = params.append('dataFim', dataFim.toDateString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/rolresponsaveis`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/rolresponsaveis/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(request: IRolResponsaveisModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/tipocriterio/${request.id}`, request)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(request: IRolResponsaveisModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/rolresponsaveis`, request)\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/rolresponsaveis/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/rolresponsaveis/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { EnumTipoQuestionarioUG } from '../models/enum/tipo-questionario-ug.enum';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SharedService {\r\n private unidadeGestoraId: number;\r\n private universoAuditavelId: number;\r\n private tipoUniversoAuditavelId: number;\r\n private subject = new Subject();\r\n private tipoQuestionario: EnumTipoQuestionarioUG;\r\n private modoVisualizarTelaUnidadeGestora : boolean;\r\n\r\n sendSalvarEvent() {\r\n this.subject.next();\r\n\r\n }\r\n\r\n setParams(unidadeGestoraId: number, universoId: number, tipouniversoId: number , acao: string): void {\r\n const params = { unidadeGestoraId : unidadeGestoraId, universoId : universoId, tipouniversoId: tipouniversoId, acao: acao };\r\n localStorage.setItem('params', JSON.stringify(params));\r\n }\r\n\r\n getParams(): any {\r\n const params = localStorage.getItem('params');\r\n return params ? JSON.parse(params) : null;\r\n }\r\n\r\n getEvent():Observable{\r\n return this.subject.asObservable();\r\n }\r\n\r\n setId(id: number) {\r\n this.unidadeGestoraId = id;\r\n }\r\n\r\n getId(): number {\r\n return this.unidadeGestoraId;\r\n }\r\n\r\n setTipoQuestionario(tipo: EnumTipoQuestionarioUG){\r\n this.tipoQuestionario = tipo;\r\n }\r\n\r\n getTipoQuestionario(): EnumTipoQuestionarioUG{\r\n return this.tipoQuestionario;\r\n }\r\n\r\n setModoVisualizacaoAbasUnidadeGestora(modoVisualizacao: boolean) {\r\n this.modoVisualizarTelaUnidadeGestora = modoVisualizacao;\r\n }\r\n\r\n getModoVisualizacaoAbasUnidadeGestora() : boolean {\r\n return this.modoVisualizarTelaUnidadeGestora;\r\n }\r\n\r\n setIdUniversoAuditavel(id: number){\r\n this.universoAuditavelId = id;\r\n }\r\n\r\n getIdUniversoAuditavel(): number{\r\n return this.universoAuditavelId;\r\n }\r\n\r\n setIdTipoUniversoAuditavel(id: number){\r\n this.tipoUniversoAuditavelId = id;\r\n }\r\n\r\n getIdTipoUniversoAuditavel(): number{\r\n return this.tipoUniversoAuditavelId ;\r\n }\r\n}\r\n","import { IUgResponsavelModel } from \"./../models/item-solicitacao-tecnica.model\";\r\nimport { IUnidadeGestoraModel } from \"src/app/models/unidade-gestora.model\";\r\nimport { IBaseModel } from \"src/app/models/base.model\";\r\nimport { ISolicitacaoTecnicaModel } from \"./../models/solicitacao-tecnica.model\";\r\nimport { LocationStrategy } from \"@angular/common\";\r\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BaseService } from \"./base.service\";\r\nimport {\r\n\tIArquivoRespostaModel,\r\n\tIItemSolicitacaoTecnicaModel,\r\n\tIRepostaItemModel,\r\n} from \"../models/item-solicitacao-tecnica.model\";\r\nimport { IArquivoModel } from \"../models/arquivo.model\";\r\nimport { IResponsavelModel } from \"../models/responsaveis.model\";\r\nimport { PaginacaoModel } from \"../models/paginacao.model\";\r\nimport { filterBy } from './auditoria.service';\r\n\r\n@Injectable({\r\n\tprovidedIn: \"root\",\r\n})\r\nexport class SolicitacaoTecnicaService extends BaseService {\r\n\tconstructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n\t\tsuper(httpClient, locationStrategy);\r\n\t}\r\n\r\n\tpublic async obter(\r\n\t\ttipoTrabalhoId: number,\r\n\t\ttipoTrabalho: string\r\n\t): Promise> {\r\n\t\tif (tipoTrabalho === \"planejamento\") {\r\n\t\t\treturn this.httpClient\r\n\t\t\t\t.get>(\r\n\t\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/planejamento/tipo-trabalho/${tipoTrabalhoId}`\r\n\t\t\t\t)\r\n\t\t\t\t.toPromise();\r\n\t\t}\r\n\t\tif (tipoTrabalho === \"osa\") {\r\n\t\t\treturn this.httpClient\r\n\t\t\t\t.get>(\r\n\t\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/osa/tipo-trabalho/${tipoTrabalhoId}`\r\n\t\t\t\t)\r\n\t\t\t\t.toPromise();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async obterPorId(\r\n\t\tid: number\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.get>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}`\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async obterUnidadeGestora(tipoTrabalho: string, tipoTrabalhoId: number,\r\n\t): Promise> {\r\n\t\t\treturn this.httpClient\r\n\t\t\t\t.get>(\r\n\t\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${tipoTrabalho}/tipo-trabalho/${tipoTrabalhoId}/unidades-gestoras`\r\n\t\t\t\t)\r\n\t\t\t\t.toPromise();\r\n\r\n\t}\r\n\r\n\tpublic async obterResponsaveis(\r\n\t\tunidadeGestoraId: number\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.get>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/responsaveis-unidade-gestora/${unidadeGestoraId}`\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\r\n\tpublic async salvarSolicitacao(\r\n\t\tdata: ISolicitacaoTecnicaModel\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.post>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/salvar`,\r\n\t\t\t\tdata\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\tpublic async excluir(id: number): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.delete>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/excluir`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async desvincularUgResponsavel(\r\n\t\tsolicitacaoTecnicaId: number,\r\n\t\tunidadeGestoraId: number\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.delete>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${solicitacaoTecnicaId}/unidade-gestora/${unidadeGestoraId}/excluir`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async salvarUgResponsavel(\r\n\t\tid: number,\r\n\t\tdata: any\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.post>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/salvar-ugs-responsavel`,\r\n\t\t\t\tdata\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async cancelarSolicitacao(\r\n\t\tid: number,\r\n\t\tjustificativa: string\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.patch>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/cancelar`,\r\n\t\t\t\t{ justificativa }\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async habilitarRespostaSolicitacao(\r\n\t\tid: number,\r\n\t\tjustificativa: string,\r\n\t\tprazo: Date\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.patch>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/habilitar-resposta`,\r\n\t\t\t\t{ justificativa, prazo }\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async finalizar(\r\n\t\tid: number\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.patch>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/finalizar`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async enviar(\r\n\t\tid: number,\r\n\t\ttipoTrabalho: string\r\n\t): Promise> {\r\n\t\tif (tipoTrabalho === \"planejamento\") {\r\n\t\t\treturn this.httpClient\r\n\t\t\t\t.patch>(\r\n\t\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/tipo-trabalho/planejamento/enviar`,\r\n\t\t\t\t\t{}\r\n\t\t\t\t)\r\n\t\t\t\t.toPromise();\r\n\t\t}\r\n\t\tif (tipoTrabalho === \"osa\") {\r\n\t\t\treturn this.httpClient\r\n\t\t\t\t.patch>(\r\n\t\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/tipo-trabalho/osa/enviar`,\r\n\t\t\t\t\t{}\r\n\t\t\t\t)\r\n\t\t\t\t.toPromise();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async obterUgResponsavel(\r\n\t\tsolicitacaoTecnicaId: number\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.get>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${solicitacaoTecnicaId}/ugs-responsavel`\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n public async avaliarProrrogacao(\r\n\t\tid: number, dados: any\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.patch>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/avaliar`, dados\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\t// ITEM\r\n\tpublic async obterItemId(\r\n\t\tsolicitacaoTecnicaId: number,\r\n\t\tid: number\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.get>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${solicitacaoTecnicaId}/item/${id}`\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n public async obterRespostaItem(id: number, itemId: number): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.get>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/item/${itemId}/respostas`\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async salvarItem(\r\n\t\tid: number,\r\n\t\tdata: IItemSolicitacaoTecnicaModel\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.post>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/salvar-item`,\r\n\t\t\t\tdata\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async excluirItem(\r\n\t\tid: number,\r\n\t\titemId: number\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.delete>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/item/${itemId}/excluir`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async cancelarItem(\r\n\t\tid: number,\r\n\t\titemId: number,\r\n\t\tjustificativa: string\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.patch>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/item/${itemId}/cancelar`,\r\n\t\t\t\t{ justificativa }\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async finalizarItem(id: number): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.put>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/item/${id}/finalizar`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n public async enviarItem(id: number): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.put>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/item/${id}/enviar`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async delegarItem(\r\n\t\tidItem: number,\r\n\t\tidResponsavel: string\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.put>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/item/${idItem}/responsavel/${idResponsavel}/delegar`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\t// ARQUIVO\r\n\r\n\tpublic async salvarItemResposta(\r\n\t\titemSolicitacaoTecnicaId: number,\r\n\t\titemResposta: IRepostaItemModel\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.post>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/item/${itemSolicitacaoTecnicaId}/resposta`,\r\n\t\t\t\titemResposta\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async salvarAnexo(dados: any\t): Promise> {\t\t\r\n\t\treturn this.httpClient\r\n\t\t\t.post>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/item/salvar-anexo`,\r\n\t\t\t\tdados\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async excluirAnexo(\r\n\t\tid: number,\r\n\t\titemId: number,\r\n\t\tanexoId: number\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.delete>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/item/${itemId}/anexo/${anexoId}/excluir`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async downloadAnexo(\r\n\t\titemId: number,\r\n\t\tanexoId: number\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.get>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/item/${itemId}/anexo/${anexoId}/download`,\r\n\t\t\t\t{}\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async filtrar(filtro: any): Promise>> {\r\n\t\treturn this.httpClient\r\n\t\t.get>>(filterBy(filtro, `${this.apiBaseUrl}/solicitacao-tecnica/filtrar`) )\r\n \t.toPromise();\r\n\t}\r\n\tprivate recuperarParametrosFiltro(filtro: any): HttpParams {\r\n\t\tlet params = new HttpParams();\r\n\r\n\t\tif (filtro.responsavelDelegacao){\r\n\t\t params = params.append('responsavelId', filtro.responsavelDelegacao.toString());\r\n\t\t}\r\n\t\tif (filtro.prazoResposta){\r\n\t\t params = params.append('prazo', filtro.prazoResposta.toString());\r\n\t\t}\r\n\t\tif (filtro.numeroOsa) {\r\n\t\t params = params.append('numOsa', filtro.numeroOsa.toString());\r\n\t\t}\r\n\t\tif (filtro.numeroOpa) {\r\n\t\t params = params.append('numOpa', filtro.numeroOpa.toString());\r\n\t\t}\r\n\t\tif (filtro.numeroSolicitacao) {\r\n\t\t params = params.append('numSolicitacao', filtro.numeroSolicitacao.toString());\r\n\t\t}\r\n\t\tif (filtro.status) {\r\n\t\t params = params.append('status', filtro.status.toString());\r\n\t\t}\r\n\r\n\t\treturn params;\r\n\t }\r\n\r\n\t//Resposta Item\r\n\r\n public async prorrogarPrazo(\r\n\t\tid: number, dados: any\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.patch>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/${id}/prorrogar-prazo`, dados\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async excluirAnexoItemResposta(\r\n\t\tarquivo: IArquivoRespostaModel\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.delete>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/item/resposta/${arquivo.id}/anexo-resposta/excluir`\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async downloadArquivoRespostaItem(\r\n\t\tarquivo: IArquivoRespostaModel\r\n\t): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.get>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/item/resposta/${arquivo.id}/anexo-resposta/download`\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n\r\n\tpublic async obterResponsaveisUGs(): Promise> {\r\n\t\treturn this.httpClient\r\n\t\t\t.get>(\r\n\t\t\t\t`${this.apiBaseUrl}/solicitacao-tecnica/responsaveis-unidades-gestoras`\r\n\t\t\t)\r\n\t\t\t.toPromise();\r\n\t}\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ISubtipoAuditoriaModel } from '../models/subtipo-auditoria.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SubtipoAuditoriaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa?: string, ativo?: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/subtipoauditoria`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/subtipoauditoria/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async obterPorIds(ids: number[]): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/subtipoauditoria/${ids}/obterporids`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ISubtipoAuditoriaModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/subtipoauditoria`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ISubtipoAuditoriaModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/subtipoauditoria/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/subtipoauditoria/${id}`, {})\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/subtipoauditoria/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/subtipoauditoria/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public obterAtivos(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/subtipoauditoria/ativos`)\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IEnumModel } from '../models/enum.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TabelaDominioService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n private obterValores(tabela: string): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/TabelaDominio/${tabela}`)\r\n .toPromise();\r\n }\r\n\r\n public obterTipoEntradaCriterio(): Promise> {\r\n return this.obterValores('TipoEntradaCriterio');\r\n }\r\n\r\n public obterTipoAgente(): Promise> {\r\n return this.obterValores('TipoAgente');\r\n }\r\n\r\n public obterTipoAto(): Promise> {\r\n return this.obterValores('TipoAto');\r\n }\r\n\r\n public obterTipoEntradaPergunta(): Promise> {\r\n return this.obterValores('TipoEntradaPergunta');\r\n }\r\n\r\n public obterTipoComparacao(): Promise> {\r\n return this.obterValores('TipoComparacao');\r\n }\r\n\r\n public obterTipoCapituloRelatorio(): Promise> {\r\n return this.obterValores('TipoCapituloRelatorio');\r\n }\r\n\r\n public async obterTipoAdministracao() {\r\n const request = this.httpClient\r\n .get(`${this.apiBaseUrl}/TipoAdministracao`)\r\n .toPromise();\r\n\r\n const response = await Promise.all([request]);\r\n return response;\r\n }\r\n\r\n public obterOperadorMembroAprovador(): Promise> {\r\n return this.obterValores('OperadorMembroAprovador');\r\n }\r\n\r\n public obterPerfilCargo(): Promise> {\r\n return this.obterValores('PerfilCargo');\r\n }\r\n\r\n public obterFuncaoResponsavelUnidadeGestora(): Promise> {\r\n return this.obterValores('FuncaoResponsavelUnidadeGestora');\r\n }\r\n\r\n public obterTiposDocumentoTrabalho(): Promise> {\r\n return this.obterValores('TipoDocumentoAprovacao');\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ITecnicaAuditoriaModel } from '../models/tecnica-auditoria.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TecnicaAuditoriaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tecnicaauditoria`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tecnicaauditoria/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ITecnicaAuditoriaModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tecnicaauditoria`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ITecnicaAuditoriaModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/tecnicaauditoria/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tecnicaauditoria/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tecnicaauditoria/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/tecnicaauditoria/${id}`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IAuditorCoordenacaoModel } from '../models/auditor-coordenacao.model';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ITipoAuditoriaModel } from '../models/tipo-auditoria.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TipoAuditoriaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipoauditoria`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipoauditoria/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public obterAtivos(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipoauditoria/ativos`)\r\n .toPromise();\r\n }\r\n\r\n public async obterCoordenadorTipoAuditoria(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipoauditoria/${id}/coordenador`)\r\n .toPromise();\r\n }\r\n\r\n public async obterAuditoresCoordenacaoTipoAuditoria(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipoauditoria/${id}/auditores`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ITipoAuditoriaModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipoauditoria`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ITipoAuditoriaModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/tipoauditoria/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipoauditoria/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipoauditoria/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/tipoauditoria/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ITipoCriterioModel } from '../models/tipo-criterio.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TipoCriterioService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipocriterio`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipocriterio/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ITipoCriterioModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipocriterio`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ITipoCriterioModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/tipocriterio/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipocriterio/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipocriterio/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluirTipoCriterio(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/tipocriterio/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ITipoDispensaModel } from '../models/tipo-dispensa.model';\r\nimport { BaseService } from './base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TipoDispensaService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(pesquisa: string, ativo: boolean, simplificado = false): Promise> {\r\n let params = new HttpParams();\r\n params = params.append('pesquisa', pesquisa || '');\r\n\r\n if (ativo !== undefined) {\r\n params = params.append('ativo', ativo.toString());\r\n }\r\n\r\n if (simplificado) {\r\n params = params.append('simplificado', simplificado.toString());\r\n }\r\n\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipodispensa`, { params })\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipodispensa/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ITipoDispensaModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipodispensa`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ITipoDispensaModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/tipodispensa/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipodispensa/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipodispensa/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/tipodispensa/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ITipoEnfaseModel } from '../models/tipo-enfase.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { FiltroModel } from '../models/filtro.model';\r\nimport { BaseService } from './base.service';\r\nimport { filterBy } from '../core/helpers/filterby';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TipoEnfaseService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro: FiltroModel): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/tipoEnfase`))\r\n .toPromise();\r\n }\r\n public obterTodos(filtro: FiltroModel): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/tipoEnfase/conjunto`))\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipoEnfase/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ITipoEnfaseModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipoEnfase`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ITipoEnfaseModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/tipoEnfase/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipoEnfase/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipoEnfase/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/tipoEnfase/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { BaseService } from \"./base.service\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { LocationStrategy } from \"@angular/common\";\r\nimport { ITipoTrabalhoModel } from \"../models/tipo-trabalho.model\";\r\nimport { IBaseModel } from \"../models/base.model\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n })\r\n\r\n export class TipoTrabalhoService extends BaseService{\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipoTrabalho`)\r\n .toPromise();\r\n }\r\n\r\n }\r\n\r\n","import { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { ITipoUniversoModel, ITipoUniversoUGModel } from '../models/tipo-universo.model';\r\nimport { PaginacaoModel } from '../models/paginacao.model';\r\nimport { FiltroModel } from '../models/filtro.model';\r\nimport { BaseService } from './base.service';\r\nimport { filterBy } from '../core/helpers/filterby';\r\nimport { IFiltroTipoUniverso } from '../models/filtros/filtro-tipo-universo.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\n\r\nexport class TipoUniversoService extends BaseService{\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro: IFiltroTipoUniverso): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/tipoUniversoAuditavel`))\r\n .toPromise();\r\n }\r\n\r\n public obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipoUniversoAuditavel/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public obterItens(id:number, idUg: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/tipoUniversoAuditavel/${id}/${idUg}`)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipoUniversoAuditavel/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n \r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipoUniversoAuditavel/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/tipoUniversoAuditavel/${id}`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: ITipoUniversoModel): Promise>{\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipoUniversoAuditavel`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: ITipoUniversoModel): Promise>{\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/tipoUniversoAuditavel`, data)\r\n .toPromise();\r\n }\r\n\r\n public async inserirItens(data: ITipoUniversoUGModel): Promise>{\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/tipoUniversoAuditavel/inserirItens`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizarItens(data: ITipoUniversoUGModel): Promise>{\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/tipoUniversoAuditavel/atualizarItens`, data)\r\n .toPromise();\r\n }\r\n\r\n public async excluirUG(id: number, idUG: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/tipoUniversoAuditavel/${id}/excluirUG/${idUG}`, {})\r\n .toPromise();\r\n }\r\n}","import { PaginacaoModel } from './../models/paginacao.model';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { BaseService } from './base.service';\r\nimport { filterBy } from './auditoria.service';\r\nimport { IUnidadeGestoraMaturidadeGRModel } from '../models/unidade-gestora-maturidadeGR.model';\r\nimport { FiltroModel } from '../models/filtro.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class UnidadeGestoraMaturidadeGRService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro?: FiltroModel): Promise> {\r\n return this.httpClient\r\n .get>(filterBy(filtro, `${this.apiBaseUrl}/unidadegestoramaturidadegr`))\r\n .toPromise();\r\n }\r\n\r\n \r\n}\r\n","import { PaginacaoModel } from './../models/paginacao.model';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { BaseService } from './base.service';\r\nimport { filterBy } from './auditoria.service';\r\nimport { IUnidadeGestoraMaturidadeGRHistoricoModel } from '../models/unidade-gestora-maturidadeGRHistorico.model';\r\nimport { IFiltroUnidadeGestoraMaturidadeGRHistoricoModel } from '../models/filtro-unidade-gestora-maturidadegrhistorico.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class UnidadeGestoraMaturidadeGRHistoricoService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro?: IFiltroUnidadeGestoraMaturidadeGRHistoricoModel): Promise> {\r\n return this.httpClient\r\n .get>(filterBy(filtro, `${this.apiBaseUrl}/unidadegestoramaturidadegrhistorico`))\r\n .toPromise();\r\n }\r\n\r\n \r\n}\r\n","import { PaginacaoModel } from './../models/paginacao.model';\r\nimport { FiltroModel } from './../models/filtro.model';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { IBaseModel } from '../models/base.model';\r\nimport { IUnidadeGestoraModel } from '../models/unidade-gestora.model';\r\nimport { BaseService } from './base.service';\r\nimport { filterBy } from './auditoria.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class UnidadeGestoraService extends BaseService {\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro?: FiltroModel): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro, `${this.apiBaseUrl}/unidadegestora`))\r\n .toPromise();\r\n }\r\n\r\n public async obterPorId(id: number): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/unidadegestora/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public obterAtivos(): Promise> {\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/unidadegestora/ativos`)\r\n .toPromise();\r\n }\r\n\r\n public async inserir(data: IUnidadeGestoraModel): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/unidadegestora`, data)\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IUnidadeGestoraModel): Promise> {\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/unidadegestora/${data.id}`, data)\r\n .toPromise();\r\n }\r\n\r\n public async reativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/unidadegestora/${id}/reativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async inativar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/unidadegestora/${id}/inativar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/unidadegestora/${id}/excluir`, {})\r\n .toPromise();\r\n }\r\n\r\n public async importarUgServico() {\r\n return this.httpClient\r\n .get(`/incluir-ug-servico`)\r\n .toPromise();\r\n }\r\n\r\n public async importar(sigla: string): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/unidadegestora/importar/${sigla}`, {})\r\n .toPromise();\r\n }\r\n}\r\n","import { BaseService } from \"./base.service\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { LocationStrategy } from \"@angular/common\";\r\nimport {\r\n IUniversoAuditavelItemRespostaItensModel,\r\n IUniversoAuditavelItemRespostaModel,\r\n IUniversoAuditavelModel\r\n} from \"../models/universo-auditavel.model\";\r\nimport { IBaseModel } from \"../models/base.model\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { IListaQuestionarioRespostaUGModel } from \"../models/questionario-ug.model\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class UniversoAuditavelItemRespostaService extends BaseService{\r\n\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public async inserir(data: IUniversoAuditavelItemRespostaModel[]): Promise> {\r\n // Logando os dados que serão enviados\r\n console.log('Dados enviados para inserção:', data);\r\n\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/UniversoAuditavelItemResposta/inserir`, data)\r\n .toPromise();\r\n }\r\n\r\n public async ObterRespostaPorCriterio(idCriterio: number, idUG: number, idTipoUNiverso: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/UniversoAuditavelItemResposta/resposta/${idCriterio}/${idUG}/${idTipoUNiverso}`)\r\n .toPromise();\r\n }\r\n\r\n public async ObterRespostaPorCriterios(idUG: number, idTipoUNiverso: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/UniversoAuditavelItemResposta/respostasProCriterios/${idTipoUNiverso}/${idUG}`)\r\n .toPromise();\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { BaseService } from \"./base.service\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { LocationStrategy } from \"@angular/common\";\r\nimport { IBaseModel } from \"../models/base.model\";\r\nimport { IUniversoAuditavelModel } from \"../models/universo-auditavel.model\";\r\nimport { PaginacaoModel } from \"../models/paginacao.model\";\r\nimport { filterBy } from \"../core/helpers/filterby\";\r\nimport { FiltroUniversoAuditavel } from \"../models/filtro-universo-auditavel\";\r\nimport { UniversAuditavelListaModel } from \"../models/univers-auditavel-lista.model\";\r\nimport { IArquivoModel } from \"../models/arquivo.model\";\r\nimport { IResponsavelModel } from \"../models/responsaveis.model\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\n\r\n\r\nexport class UniversoAuditavelService extends BaseService{\r\n constructor(httpClient: HttpClient, locationStrategy: LocationStrategy) {\r\n super(httpClient, locationStrategy);\r\n }\r\n\r\n public obter(filtro: FiltroUniversoAuditavel): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/universoauditavel/obter`))\r\n .toPromise();\r\n }\r\n public obterAtivos(filtro: FiltroUniversoAuditavel): Promise>> {\r\n return this.httpClient\r\n .get>>(filterBy(filtro,`${this.apiBaseUrl}/universoauditavel/obterAtivos`))\r\n .toPromise();\r\n }\r\n public async obterPorId(id: number): Promise>{\r\n return this.httpClient\r\n .get>(`${this.apiBaseUrl}/UniversoAuditavel/obterPorId/${id}`)\r\n .toPromise();\r\n }\r\n\r\n public async solicitarPreenchimentoQuestionario(id: number, qtdeDiasPrazo: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/UniversoAuditavel/${id}/${qtdeDiasPrazo}/solicitarPreenchimento`, {})\r\n .toPromise();\r\n }\r\n\r\n public async Avocar(id: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/UniversoAuditavel/${id}/avocar`, {})\r\n .toPromise();\r\n }\r\n\r\n public async excluir(id: number): Promise> {\r\n return this.httpClient\r\n .delete>(`${this.apiBaseUrl}/UniversoAuditavel/excluir/${id}`, {})\r\n .toPromise();\r\n }\r\n public async inserir(data: IUniversoAuditavelModel): Promise>{\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/UniversoAuditavel/inserir`, data)\r\n .toPromise();\r\n }\r\n public async inserirUniversoAPartirDoUltimo(idUG: number, idTipoUniversoAuditavel: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/UniversoAuditavel/${idUG}/${idTipoUniversoAuditavel}/inserirCopia`, {})\r\n .toPromise();\r\n }\r\n\r\n public async atualizar(data: IUniversoAuditavelModel): Promise>{\r\n return this.httpClient\r\n .put>(`${this.apiBaseUrl}/UniversoAuditavel/atualizar`, data)\r\n .toPromise();\r\n }\r\n\r\n public async enviarArquivo(idUG: number, idTipoUniversoAuditavel: number, anexo : IArquivoModel): Promise> {\r\n const formData: FormData = new FormData();\r\n\r\n formData.append('id', anexo.id.toString());\r\n formData.append('nomeArquivo', anexo.nomeArquivo);\r\n formData.append('entidadeArquivo', anexo.entidadeArquivo.toString());\r\n formData.append('arquivo', anexo.arquivo);\r\n\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/UniversoAuditavel/${idUG}/${idTipoUniversoAuditavel}/enviarArquivo`,formData, {})\r\n .toPromise();\r\n }\r\n\r\n public async DownloadArquivo(idUG: number, idTipoUniverso: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/UniversoAuditavel/${idUG}/${idTipoUniverso}/obterArquivo`, {})\r\n .toPromise();\r\n }\r\n\r\n public async encerrarUniversoImportacaoArquivo(idUG: number, idTipoUniverso: number): Promise> {\r\n return this.httpClient\r\n .post>(`${this.apiBaseUrl}/UniversoAuditavel/${idUG}/${idTipoUniverso}/encerrar-avaliacao-arquivo-importado`,null, {})\r\n .toPromise();\r\n }\r\n\r\n public async obterCriterioPorTipo(idUG: number , idTipoUniverso: number ): Promise> {\r\n return this.httpClient\r\n .get>(\r\n `${this.apiBaseUrl}/UniversoAuditavel/montaComboUniversoAuditavel/${idUG}/${idTipoUniverso}`\r\n )\r\n .toPromise();\r\n }\r\n\r\n public finalizarUniversoAuditavel(\r\n id: number,\r\n acao: string\r\n ): Promise> {\r\n return this.httpClient\r\n .put>(\r\n `${this.apiBaseUrl}/UniversoAuditavel/${id}/${acao}/finaliza-resposta-universo-auditavel`,\r\n {}\r\n )\r\n .toPromise();\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IAmostraModel } from 'src/app/models/amostra.model';\r\nimport { AmostraService } from 'src/app/services/amostra.service';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from '../base-form/base-form.component';\r\nimport { InserirAmostraComponent } from './inserir-amostra/inserir-amostra.component';\r\n\r\n@Component({\r\n selector: 'app-aba-amostra',\r\n templateUrl: './aba-amostra.component.html',\r\n styleUrls: ['./aba-amostra.component.scss']\r\n})\r\nexport class AbaAmostraComponent extends BaseFormComponent implements OnInit {\r\n public displayedColumns: string[] = ['nome', 'descricao', 'ug', 'arquivos', 'acoes'];\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public amostra: IAmostraModel = {} as IAmostraModel;\r\n public tipoAmostra!: string;\r\n @Input() public visualizar: boolean;\r\n @Input() public hiddenEdicao: boolean;\r\n @Input() public planejamentoId: number;\r\n @Input() public numeroOpa: string;\r\n @Input() public statusPlanejamento: number;\r\n \r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n @ViewChild('tabela1') public tabela1: MatSort;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n public matDialog: MatDialog,\r\n private amostraService: AmostraService,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.router.url.includes(\"planejamento\")) {\r\n this.tipoAmostra = 'planejamento'\r\n this.planejamentoId = this.id;\r\n }\r\n if (this.router.url.includes(\"osa\")) {\r\n this.tipoAmostra = 'osa'\r\n }\r\n if (this.router.url.includes(\"auditoria\")) {\r\n this.tipoAmostra = 'auditoria'\r\n }\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.visualizar = this.route.snapshot.routeConfig.path.includes('visualizar') || this.route.snapshot.routeConfig.path.includes('osa');\r\n this.obterAmostra(this.tipoAmostra)\r\n }\r\n\r\n public obterAmostra(tipoAmostra: string) {\r\n this.amostraService.obterAmostra(this.id, tipoAmostra)\r\n .then(res => {\r\n if (res.sucesso) {\r\n this.dataSource = new MatTableDataSource(res.dados);\r\n\r\n this.dataSource._updateChangeSubscription();\r\n\r\n this.dataSource.sortingDataAccessor = (item: IAmostraModel, property) => {\r\n switch (property) {\r\n case 'nome':\r\n return item?.nome;\r\n case 'descricao':\r\n return item?.descricao;\r\n case 'arquivos':\r\n return item.amostraArquivos[0].nome;\r\n case 'ug':\r\n return item?.amostraUnidadeGestoras[0].unidadeGestora.sigla;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.tabela1;\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'warning',\r\n title: 'Atenção',\r\n text: res.mensagem.descricao,\r\n });\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public Download(id, nome) {\r\n this.amostraService.download(id, this.tipoAmostra).then((res) =>{\r\n if (res.sucesso) {\r\n const link = document.createElement(\"a\");\r\n link.href = res.dados.toString();\r\n link.download = nome;\r\n link.click();\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }})\r\n\t}\r\n\r\n public obterAmostraPorId(amostra: IAmostraModel, tipoAmostra: string) {\r\n this.amostraService.obterAmostraId(this.id, amostra.id, tipoAmostra).then(res => {\r\n if (res.sucesso) {\r\n this.amostra = res.dados\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemAlerta(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public exibirModalAdicionarAmostra(dados?: IAmostraModel, visualizar?: boolean) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '45vw';\r\n dialogConfig.maxHeight = '85vh';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = false;\r\n\r\n dialogConfig.data = {\r\n id: this.planejamentoId,\r\n tipoAmostra: this.tipoAmostra,\r\n visualizar,\r\n numeroOpa: this.numeroOpa,\r\n dados\r\n }\r\n\r\n const modal = this.matDialog.open(InserirAmostraComponent, dialogConfig);\r\n modal.afterClosed().subscribe(data => {\r\n this.obterAmostra(this.tipoAmostra);\r\n });\r\n }\r\n\r\n public visualizarModalAdicionarAmostra(dados?: IAmostraModel) {\r\n this.exibirModalAdicionarAmostra(dados, true);\r\n }\r\n\r\n public imprimir(element: IAmostraModel) {\r\n this.router.navigate([`${this.tipoAmostra}/${this.id}/planejar/amostra/${element.id}/imprimir`], {state: {planejamentoId: this.id, numeroOpa: this.numeroOpa, statusPlanejamento: this.statusPlanejamento}})\r\n }\r\n\r\n public excluirAmostra(amostra: IAmostraModel) {\r\n Swal.fire({\r\n title: 'Excluir Amostra',\r\n text: 'Tem certeza que deseja excluir essa Amostra?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n })\r\n .then((res) => {\r\n if (res.value) {\r\n this.amostraService.excluirAmostra(this.id, amostra.id, this.tipoAmostra)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Amostra excluída com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.obterAmostra(this.tipoAmostra)\r\n });\r\n }\r\n })\r\n }\r\n}\r\n","
\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
Nome{{ element?.nome }}Descrição\r\n\t\t\t\t\t\t{{ element?.descricao }}\r\n\t\t\t\t\tUG - Sigla\r\n\t\t\t\t\t\t{{ items?.unidadeGestora?.sigla }}{{ \"\r\n\t\t\t\t\t\t\t\" }}\r\n\t\t\t\t\tArquivos\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tArquivos\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t Não possui arquivos\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{{ items.nome }}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
Ações
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\tNenhum registro encontrado.\r\n\t\t
\r\n\t\t\r\n\t\t\r\n\t
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { IAmostraModel } from 'src/app/models/amostra.model';\r\nimport { AmostraService } from 'src/app/services/amostra.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-imprimir-amostra',\r\n templateUrl: './imprimir-amostra.component.html',\r\n styleUrls: ['./imprimir-amostra.component.scss']\r\n})\r\nexport class ImprimirAmostraComponent implements OnInit {\r\n public model = {} as IAmostraModel;\r\n public planejamentoId!: number;\r\n public amostraId!: number;\r\n public tipoAmostra!: string;\r\n public numeroOpa: string;\r\n public tituloImpressao: string;\r\n public statusPlanejamento: number;\r\n constructor(\r\n private amostraService: AmostraService,\r\n public route: ActivatedRoute,\r\n public router: Router,\r\n ) {\r\n this.planejamentoId = Number(this.route.snapshot.paramMap.get('id'));\r\n this.amostraId = Number(this.route.snapshot.paramMap.get('amostraId'));\r\n\r\n if (this.router.url.includes(\"planejamento\")) {\r\n this.tipoAmostra = 'planejamento';\r\n var extras =this.router.getCurrentNavigation().extras;\r\n this.numeroOpa = extras.state.numeroOpa;\r\n this.tituloImpressao = `Amostra – OPA Nº ${this.numeroOpa}`;\r\n this.statusPlanejamento = extras.state.statusPlanejamento;\r\n }\r\n if (this.router.url.includes(\"osa\")) {\r\n this.tipoAmostra = 'osa';\r\n this.tituloImpressao = `Relatório Amostra`;\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.buscar();\r\n }\r\n\r\n public buscar() {\r\n this.amostraService.obterAmostraId(this.planejamentoId, this.amostraId, this.tipoAmostra).then(res => {\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }).catch(err => {\r\n\r\n }).finally(() => '')\r\n }\r\n\r\n public cancelar() {\r\n this.router.navigate([`planejamento/${window.history.state.planejamentoId}/planejar`], { state: { aba: 3 }})\r\n }\r\n\r\n public print() {\r\n window.print();\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

\r\n {{tituloImpressao}}\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n Nome:\r\n

{{model?.nome}}

\r\n
\r\n
\r\n Descrição:\r\n

{{model?.descricao}}

\r\n
\r\n
\r\n Unidade Gestora associada:\r\n

{{ item?.unidadeGestora.nome }}

\r\n
\r\n
\r\n\r\n Arquivos:\r\n

{{ item?.nome }}

\r\n
\r\n
\r\n
\r\n
\r\n
","import { SolicitacaoTecnicaService } from './../../../../services/solicitacao-tecnica.service';\r\nimport { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IPeaUnidadeGestoraModel } from 'src/app/models/pea-unidade-gestora.model';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\nimport { ModalSelecionarUgComponent } from 'src/app/pages/pea-form/modal-selecionar-ug/modal-selecionar-ug.component';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\nimport { ModalCancelarComponent } from '../../modal-cancelar/modal-cancelar-component';\r\nimport { IAmostraModel } from 'src/app/models/amostra.model';\r\nimport { IAmostraUnidadeGestora } from 'src/app/models/amostra-unidade-gestoras.model';\r\nimport { AmostraService } from 'src/app/services/amostra.service';\r\nimport Swal from 'sweetalert2';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-inserir-amostra',\r\n templateUrl: './inserir-amostra.component.html',\r\n styleUrls: ['./inserir-amostra.component.scss']\r\n})\r\nexport class InserirAmostraComponent implements OnInit {\r\n public id!: number;\r\n public validar!: boolean;\r\n public dados = {\r\n nome: '',\r\n descricao: '',\r\n unidadeGestora: [] as IUnidadeGestoraModel[],\r\n arrayFiles: [],\r\n }\r\n\r\n public model = {} as IAmostraModel;\r\n public tipoAmostra!: string;\r\n public numeroOpa: string;\r\n public visualizar: boolean = false;\r\n\r\n public ugDataSource = new MatTableDataSource([]);\r\n public ugSemDados = true;\r\n\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n public matDialog: MatDialog,\r\n private ugService: SolicitacaoTecnicaService,\r\n private amostraService: AmostraService,\r\n public router: Router,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n this.id = data.id;\r\n if (data.dados) this.model = data.dados;\r\n if (data.tipoAmostra) this.tipoAmostra = data.tipoAmostra;\r\n if (data.visualizar) this.visualizar = data.visualizar;\r\n if (data.numeroOpa) this.numeroOpa = data.numeroOpa;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dados.nome = this.model.nome;\r\n this.dados.descricao = this.model.descricao;\r\n\r\n if (this.model.amostraArquivos) {\r\n this.dados.arrayFiles = this.model.amostraArquivos;\r\n }\r\n\r\n if (this.model.amostraUnidadeGestoras?.length > 0) {\r\n const formatPeaUnidadeGestora = this.model?.amostraUnidadeGestoras.map(item => {\r\n return {\r\n id: item?.unidadeGestoraId,\r\n text: `${item?.unidadeGestora?.sigla} - ${item?.unidadeGestora?.nome}`,\r\n value: item?.unidadeGestoraId\r\n } as IUnidadeGestoraModel\r\n })\r\n\r\n this.dados.unidadeGestora = formatPeaUnidadeGestora;\r\n this.atualizarListaUgs(formatPeaUnidadeGestora)\r\n }\r\n }\r\n\r\n public atualizarListaUgs(unidadeGestora: IUnidadeGestoraModel[]) {\r\n const listaUgs = unidadeGestora.map(_ => ({ ..._, nome: `${_.sigla} - ${_.nome}` }));\r\n this.ugDataSource.paginator = this.paginator;\r\n this.ugDataSource.sort = this.sort;\r\n this.ugDataSource.filterPredicate = (data: { nome: string }, filterValue: string) => {\r\n return (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1;\r\n };\r\n listaUgs.sort((a, b) => a['nome'].localeCompare(b['nome']));\r\n this.ugDataSource = new MatTableDataSource(\r\n listaUgs\r\n );\r\n this.ugDataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.ugDataSource._updateChangeSubscription();\r\n this.ugSemDados = this.ugDataSource.filteredData.length === 0;\r\n }\r\n\r\n\r\n public async exibirModalUg() {\r\n const res = await this.ugService.obterUnidadeGestora(this.tipoAmostra, this.id);\r\n\r\n if (res.sucesso) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component-45';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n const unidadesAdicionadas = [] as any[];\r\n if (this.dados.unidadeGestora !== undefined) {\r\n this.dados.unidadeGestora.forEach((d) => {\r\n return unidadesAdicionadas.push(d)\r\n }\r\n\r\n );\r\n dialogConfig.data = res.dados.filter(\r\n (d) => !unidadesAdicionadas.some((x) => +d?.value == x?.id)\r\n );\r\n } else {\r\n dialogConfig.data = res.dados;\r\n this.dados.unidadeGestora = [] as IUnidadeGestoraModel[];\r\n }\r\n const modal = this.matDialog.open(\r\n ModalSelecionarUgComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n if (Array.isArray(data)) {\r\n let unidadeSelecionada = [] as IUnidadeGestoraModel[];\r\n unidadeSelecionada = data.map(\r\n (d) =>\r\n ({\r\n value: d.value,\r\n text: d.text,\r\n } as IUnidadeGestoraModel)\r\n );\r\n unidadeSelecionada.forEach((x) =>\r\n this.dados.unidadeGestora.push(x)\r\n );\r\n }\r\n\r\n this.atualizarListaUgs(this.dados.unidadeGestora);\r\n }\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public excluirUg(ind: number) {\r\n this.ugDataSource.data.splice(ind, 1);\r\n this.dados.unidadeGestora.splice(ind, 1);\r\n this.atualizarListaUgs(this.dados.unidadeGestora\r\n );\r\n\r\n }\r\n\r\n public deleteFile(i: number) {\r\n if (this.dados.arrayFiles[i]) this.dados.arrayFiles.splice(i, 1)\r\n }\r\n\r\n\r\n public getBase64(file) {\r\n return new Promise((resolve, reject) => {\r\n var reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = function () {\r\n resolve(reader.result)\r\n };\r\n reader.onerror = function (error) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: \"Ocorreu um erro ao selecionar o arquivo\" + error.toString(),\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n })\r\n };\r\n })\r\n }\r\n\r\n public async uploadAmostra(e) {\r\n let file = (e.target as HTMLInputElement).files;\r\n\r\n let flatListFiles = Array.from(file);\r\n\r\n for (let index = 0; index < file.length; index++) {\r\n const fileToArray = await this.getBase64(file[index]);\r\n this.dados.arrayFiles.push({\r\n nome: flatListFiles[index].name,\r\n conteudo: fileToArray.toString()\r\n })\r\n }\r\n }\r\n\r\n public salvar() {\r\n if (!this.dados.nome || !this.dados.descricao) {\r\n this.validar = true;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'warning',\r\n text: 'Preencha os campos obrigatórios',\r\n });\r\n return\r\n }\r\n\r\n this.model.nome = this.dados.nome;\r\n this.model.descricao = this.dados.descricao;\r\n this.model.amostraArquivos = this.dados.arrayFiles;\r\n\r\n this.model.amostraUnidadeGestoras = this.dados.unidadeGestora.map(item => {\r\n return { unidadeGestoraId: +item.value } as IAmostraUnidadeGestora\r\n })\r\n\r\n this.amostraService.salvarAmostra(this.id, this.model, this.tipoAmostra).then(res => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n });\r\n }\r\n }).catch(err => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n });\r\n }).then(() => {\r\n if (this.model.amostraArquivos.length > 5) {\r\n setTimeout(() => {\r\n this.matDialog.closeAll();\r\n }, 5000)\r\n } else {\r\n this.matDialog.closeAll();\r\n }\r\n }).finally()\r\n\r\n }\r\n\r\n public cancelar() {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.data = { interno: true };\r\n this.matDialog.open(ModalCancelarComponent, dialogConfig).afterClosed();\r\n }\r\n}\r\n","
\r\n\t

Inserir amostra

\r\n
\r\n
\r\n\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\r\n\t\t
\r\n\t\t\t
\r\n\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t
\r\n\t\r\n
\r\n
\r\n\t\r\n\t\r\n
\r\n","import { ICronogramaModel } from './../../../models/cronograma.model';\r\nimport { Component, Input, OnInit, } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IFasesAtividadeModel } from 'src/app/models/fases-atividade-model';\r\nimport { CronogramaService } from 'src/app/services/cronograma.service';\r\nimport { FaseAtividadeService } from 'src/app/services/fase-atividade.service';\r\nimport { ModalAtividadeSubatividadeComponent } from './modal-atividade-subatividade/modal-atividade-subatividade.component';\r\nimport Swal from 'sweetalert2';\r\nimport { IAtividadeModel } from 'src/app/models/atividade.model';\r\nimport { ISubAtividadeModel } from 'src/app/models/sub-atividade.model';\r\nimport { BaseFormComponent } from '../base-form/base-form.component';\r\nimport { OsaService } from 'src/app/services/osa.service';\r\nimport { IOsaAtividadeModel } from 'src/app/models/osa-atividade.model';\r\nimport { IOsaSubAtividadeModel } from 'src/app/models/osa-sub-atividade.model';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-aba-cronograma',\r\n templateUrl: './aba-cronograma.component.html',\r\n styleUrls: ['./aba-cronograma.component.scss']\r\n})\r\n\r\nexport class AbaCronogramaComponent extends BaseFormComponent implements OnInit {\r\n public model: IFasesAtividadeModel[];\r\n public atividadesModel: IAtividadeModel = {} as IAtividadeModel;\r\n @Input() public tipo!: string;\r\n @Input() public visualizar;\r\n @Input() public hiddenEdicao;\r\n public cronograma: ICronogramaModel = {} as ICronogramaModel;\r\n public submitted: boolean;\r\n public homologado: boolean = false;\r\n\r\n\r\n constructor(\r\n private faseAtividadeService: FaseAtividadeService,\r\n private cronogramaService: CronogramaService,\r\n public toastr: ToastrService,\r\n public route: ActivatedRoute,\r\n public router: Router,\r\n public matDialog: MatDialog,\r\n public localeService: BsLocaleService,\r\n public osaService: OsaService,\r\n\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n public form = new FormGroup({\r\n\t\tprazoEntregaMatriz: new FormControl(\"\", Validators.required),\r\n\t\tprazoRespostaAuditado: new FormControl(\"\", Validators.required),\r\n\t\tprazoEntregaRelatorio: new FormControl(\"\", Validators.required),\r\n\t});\r\n\r\n ngOnInit() {\r\n if (this.tipo === 'planejamento') {\r\n this.obterCronograma()\r\n }\r\n else {\r\n this.obterCronogramaOsa()\r\n this.obterCampos()\r\n }\r\n }\r\n\r\n public obterCampos() {\r\n this.osaService.obterPorId(this.id).then((res) => {\r\n if(res.sucesso){\r\n this.cronograma.prazoEntregaMatriz = res?.dados?.prazoEntregaMatriz ? new Date(res.dados.prazoEntregaMatriz) : null;\r\n this.cronograma.prazoEntregaRelatorio = res?.dados?.prazoEntregaRelatorio ? new Date(res.dados.prazoEntregaRelatorio) : null;\r\n this.cronograma.prazoRespostaAuditado = res?.dados?.prazoRespostaAuditado ? new Date(res.dados.prazoEntregaRelatorio) : null;\r\n this.homologado = res?.dados?.status?.codigo==4;\r\n }\r\n else{\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n obterCronogramaOsa() {\r\n this.osaService.obterCronogramaOsa(this.id).then(res => {\r\n if (res.sucesso) {\r\n this.model = res.dados.fasesAtividade\r\n this.cronograma = res.dados\r\n }\r\n else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n obterCronograma() {\r\n this.cronogramaService.obterCronograma(this.id).then(res => {\r\n if (res.sucesso) {\r\n this.model = res.dados.fasesAtividade\r\n this.cronograma = res.dados\r\n }\r\n else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n\r\n }\r\n\r\n public salvar(){\r\n this.submitted = true\r\n if(this.form.invalid){\r\n this.exibirMensagemAlerta('Formulário inválido');\r\n return;\r\n }\r\n this.osaService.salvarOsa(this.id, this.cronograma ).then((res) => {\r\n if(res.sucesso){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }else{\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n }).catch((err) =>{\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n public excluirAtividade(id: number) {\r\n Swal.fire({\r\n title: 'Excluir Atividade',\r\n text: 'Tem certeza que deseja excluir essa Atividade?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n })\r\n .then((res) => {\r\n if (res.value) {\r\n this.cronogramaService\r\n .excluirAtividade(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Atividade excluída com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.obterCronograma()\r\n });\r\n }\r\n })\r\n }\r\n\r\n public excluirSubAtividade(id: number) {\r\n Swal.fire({\r\n title: 'Excluir Sub atividade',\r\n text: 'Tem certeza que deseja excluir essa Sub atividade?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n })\r\n .then((res) => {\r\n if (res.value) {\r\n this.cronogramaService\r\n .excluirSubAtividade(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Sub atividade excluída com sucesso.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.obterCronograma()\r\n });\r\n }\r\n }\r\n )\r\n }\r\n\r\n public modalIncluir(element?: IAtividadeModel | ISubAtividadeModel, acao?: string) {\r\n try {\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-incluir-atividade-sub';\r\n dialogConfig.width = '700px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n planejamentoId: this.id,\r\n acao,\r\n element\r\n };\r\n const modal = this.matDialog.open(ModalAtividadeSubatividadeComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n this.obterCronograma()\r\n })\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } finally {\r\n }\r\n }\r\n\r\n\r\n public async salvarOsaAtividade( element: IOsaAtividadeModel) {\r\n this.osaService.salvarOsaAtividade(this.id, element.atividadeId, {\r\n quantidadeDiasRealizado: Number(element.quantidadeDiasRealizado)\r\n }as IOsaAtividadeModel)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.obterCronogramaOsa();\r\n })\r\n }\r\n\r\n\r\n public salvarOsaSubAtividade(element: IOsaSubAtividadeModel) {\r\n this.osaService.salvarOsaSubAtividade(this.id, element.id, {\r\n quantidadeDiasRealizado: Number(element.quantidadeDiasRealizado)\r\n } as IOsaSubAtividadeModel)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.obterCronogramaOsa();\r\n })\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n

Listagem de fases

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n

ᅠFase:ᅠᅠ{{ fase.nome }}\r\n

\r\n

\r\n Dias Planejados:ᅠ {{ fase.quantidadeDias }}\r\n

\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n

ㅤAtividade: ᅠᅠ{{\r\n atividade.nome }}

\r\n

\r\n Dias Planejados:ᅠ{{ atividade.quantidadeDias }}\r\n

\r\n\r\n \r\n = 48 && event.charCode <= 57\"\r\n [disabled]=\"!atividade.selecionado\" class=\"diasRealizado\" maxlength=\"10\"/>\r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n

ᅠ{{ subAtividade.nome }}

\r\n

\r\n Dias Planejados:ᅠ\r\n {{ subAtividade.quantidadeDias }}\r\n

\r\n \r\n = 48 && event.charCode <= 57\"\r\n class=\"diasRealizado\" />\r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IAtividadeModel } from 'src/app/models/atividade.model';\r\nimport { ISubAtividadeModel } from 'src/app/models/sub-atividade.model';\r\nimport { CronogramaService } from 'src/app/services/cronograma.service';\r\nimport Swal from 'sweetalert2';\r\nimport { ModalCancelarComponent } from '../../modal-cancelar/modal-cancelar-component';\r\n\r\n@Component({\r\n selector: 'app-modal-atividade-subatividade',\r\n templateUrl: './modal-atividade-subatividade.component.html',\r\n styleUrls: ['./modal-atividade-subatividade.component.scss']\r\n})\r\nexport class ModalAtividadeSubatividadeComponent implements OnInit {\r\n public model: IAtividadeModel = {} as IAtividadeModel;\r\n public modelSub: ISubAtividadeModel = {} as ISubAtividadeModel\r\n public id: number;\r\n public novoRegistro = true;\r\n public titulo;\r\n public acao!: string;\r\n public editar: boolean = false;\r\n public valido: boolean = false\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl(null, Validators.required),\r\n quantidadeDias: new FormControl(null, Validators.required,),\r\n });\r\n\r\n constructor(\r\n public matDialog: MatDialog,\r\n public route: ActivatedRoute,\r\n public toastr: ToastrService,\r\n public router: Router,\r\n public localeService: BsLocaleService,\r\n private dialogRef: MatDialogRef,\r\n private cronogramaService: CronogramaService,\r\n @Inject(MAT_DIALOG_DATA) public data,\r\n\r\n ) {\r\n this.id = data.planejamentoId\r\n this.acao = data.acao;\r\n\r\n if (data.element.fasesAtividadeId) {\r\n this.titulo = 'Inserir SubAtividade';\r\n this.model = data.element;\r\n } else {\r\n this.titulo = 'Inserir Atividade';\r\n this.model = data.element\r\n }\r\n\r\n if (this.acao === 'editar') {\r\n this.titulo = 'Editar Atividade'\r\n this.model = data.element\r\n this.editar = true;\r\n }\r\n\r\n if (this.acao === 'editarSub') {\r\n this.titulo = 'Editar sub Atividade'\r\n this.modelSub = data.element\r\n this.editar = true;\r\n }\r\n\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n try {\r\n if (this.editar) {\r\n this.form.patchValue(this.model);\r\n }\r\n } catch (err) {\r\n this.toastr.error(err.mensagem.descricao, 'Atenção');\r\n }\r\n }\r\n\r\n public concluir() {\r\n if (this.form.invalid) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Formulário Inválido',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.valido = true;\r\n return;\r\n }\r\n this.atualizarModel(this.form.value);\r\n this.model.quantidadeDias = Number(this.model.quantidadeDias)\r\n if (this.titulo === 'Inserir Atividade') {\r\n\r\n const atividade = {\r\n fasesAtividadeId: this.model.id,\r\n planejamentoId: this.id,\r\n nome: this.model.nome,\r\n quantidadeDias: Number(this.form.get('quantidadeDias').value),\r\n } as IAtividadeModel\r\n\r\n this.cronogramaService.inserirAtividade(atividade)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.dialogRef.close(this.model);\r\n })\r\n }\r\n\r\n if (this.titulo === \"Editar Atividade\") {\r\n this.cronogramaService.atualizarAtividade({\r\n nome: this.model.nome,\r\n quantidadeDias: Number(this.form.get('quantidadeDias').value),\r\n }, this.model.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }).catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n this.dialogRef.close(this.model);\r\n }\r\n\r\n if (this.titulo === \"Editar sub Atividade\") {\r\n\r\n this.modelSub.quantidadeDias = Number(this.form.get(\"quantidadeDias\").value);\r\n this.modelSub.nome = this.form.get('nome').value;\r\n\r\n this.cronogramaService.atualizarSubAtividade(this.modelSub, this.modelSub.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n this.dialogRef.close(this.model);\r\n }\r\n\r\n if (this.titulo === \"Inserir SubAtividade\") {\r\n\r\n this.modelSub.atividadeId = this.model.id;\r\n this.modelSub.nome = this.model.nome;\r\n this.modelSub.quantidadeDias = this.model.quantidadeDias;\r\n\r\n this.cronogramaService.inserirsubAtividade(this.modelSub)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n .finally(() => {\r\n this.dialogRef.close(this.modelSub);\r\n })\r\n }\r\n }\r\n\r\n private atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public cancelar() {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.data = { interno: true };\r\n this.matDialog.open(ModalCancelarComponent, dialogConfig).afterClosed();\r\n }\r\n}\r\n","
\r\n
\r\n

\r\n {{titulo}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n = 48 && event.charCode <= 57\" id=\"validationCustom02\" min=\"1\" required [ngClass]=\"{\r\n 'is-invalid': valido && form.controls['quantidadeDias'].invalid}\">\r\n
\r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
","import { IEnumModel } from './../../../models/enum.model';\r\n\r\nimport { ISubTipoAuditoriaType } from 'src/app/models/subtipo-auditoria.model';\r\nimport { ManterMatrizPlanejamentoService } from './../../../services/manter-matriz-planejamento.service';\r\nimport { ModalAdicionarQuestoesComponent } from './modal-adicionar-questoes/modal-adicionar-questoes.component';\r\nimport { Component, Input, OnInit, ViewChild, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport Swal from 'sweetalert2';\r\nimport { ModalUgComponent } from './modal-ug/modal-ug.component';\r\nimport { PlanejamentoService } from 'src/app/services/planejamento.service';\r\n\r\n@Component({\r\n selector: 'app-aba-matriz-planejamento',\r\n templateUrl: './aba-matriz-planejamento.component.html',\r\n styleUrls: ['./aba-matriz-planejamento.component.scss']\r\n})\r\nexport class AbaMatrizPlanejamentoComponent implements OnInit, OnChanges {\r\n\r\n public displayedColumns: string[] = ['questao', 'legislacao', 'acoes'];\r\n public dataSource = new MatTableDataSource();\r\n @Input() public id: number;\r\n @Input() public visualizar: boolean;\r\n @Input() public idPlanejamentoOsa!: number;\r\n public tipoTrabalho: IEnumModel = {} as IEnumModel;\r\n public tipotrabalhoId: number;\r\n public title: string\r\n\r\n @ViewChild(\"TableOnePaginator\", { static: true }) tableOnePaginator: MatPaginator;\r\n @ViewChild(\"tabela1\", { static: true }) tabela1: MatSort;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private matDialog: MatDialog,\r\n private planejamentoService: PlanejamentoService,\r\n public manterMatrizPlanejamentoService: ManterMatrizPlanejamentoService,\r\n public route: ActivatedRoute,\r\n public router: Router) {\r\n\r\n this.tipotrabalhoId = +this.route.snapshot.paramMap.get(\"id\");\r\n\r\n if (this.router.url.includes(\"planejamento\")) {\r\n this.tipoTrabalho.nome = 'planejamento';\r\n this.tipoTrabalho.codigo = 7;\r\n }\r\n else if (this.router.url.includes(\"osa\")) {\r\n this.tipoTrabalho.nome = 'osa';\r\n this.tipoTrabalho.codigo = 4;\r\n this.visualizar=true;\r\n }\r\n\r\n this.carregarRegistros();\r\n }\r\n\r\n public visualizarMatriz() {\r\n this.router.navigate([\"/matriz-planejamento-visualizar/\" + this.tipotrabalhoId]);\r\n }\r\n\r\n public carregarRegistros(): void {\r\n this.planejamentoService.planejamentoSubTipoAuditoria.subscribe((dados: any) => {\r\n if (dados.length > 0) {\r\n this.dataSource.data = dados;\r\n } else {\r\n this.dataSource.data = null;\r\n }\r\n });\r\n }\r\n\r\n public atualizaRegistros(dados: any[]): void {\r\n this.dataSource.data = this.dataSource.data ? this.dataSource.data : [];\r\n dados.forEach(item => {\r\n if (!this.dataSource.data.some((x: any) => x.id == item.id)) {\r\n this.dataSource.data.push(item);\r\n }\r\n });\r\n }\r\n\r\n public excluirRegistro(id: number): void {\r\n this.dataSource.data = this.dataSource.data.filter((x: any) => x.id != id);\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.id = changes.id.currentValue;\r\n this.obter();\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n async obter() {\r\n this.planejamentoService.obterAbaMatrizPorId(this.tipoTrabalho.codigo, this.tipotrabalhoId);\r\n this.dataSource.sort = this.sort;\r\n }\r\n\r\n public modalUnidadeGestora(item: any): void {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-ug';\r\n dialogConfig.width = \"40%\";\r\n dialogConfig.maxHeight = \"auto\";\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = false;\r\n dialogConfig.data = {\r\n id: this.id,\r\n subTipoId: item.id\r\n };\r\n const modal = this.matDialog.open(\r\n ModalUgComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n }\r\n });\r\n\r\n }\r\n\r\n public abrirModalAdicionarItem(matriz: any, questoes: any[], subtipoAuditoriaId: number) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component-solicitacao-tecnica';\r\n dialogConfig.width = '50%';\r\n dialogConfig.height = '60%';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = false;\r\n dialogConfig.data = { titulo: `Adicionar questão`, data: matriz, tipoTrabalho: 'matrizPlanejamento', tipoTrabalhoId: this.tipotrabalhoId, questoes };\r\n\r\n const modal = this.matDialog.open(\r\n ModalAdicionarQuestoesComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe((data: any[]) => {\r\n if (data) {\r\n const dados = data.map(a => {\r\n if (this.tipoTrabalho.nome === \"planejamento\" || this.tipoTrabalho.nome === \"osa\") {\r\n return {\r\n matriz,\r\n subTipoAuditoriaId: subtipoAuditoriaId,\r\n relacionamentoId: this.tipotrabalhoId,\r\n questaoId: a.id || a.value,\r\n isQuestaoEspecifica: a.questaoId > 0,\r\n questao: a,\r\n }\r\n } else {\r\n return {\r\n subTipoAuditoriaId: matriz.id,\r\n questaoId: a.id || a.value,\r\n questao: a,\r\n }\r\n }\r\n })\r\n let questoesJoin = dados.map(a => a.questao.nome).join(' , ');\r\n\r\n if (questoesJoin == '' && dados.length == 0) {\r\n return;\r\n }\r\n\r\n Swal.fire({\r\n title: data.length === 1 ? 'Incluir Questão' : 'Incluir Questões',\r\n text: data.length === 1 ? 'Tem certeza que deseja incluir a seguinte questão? ' + questoesJoin : 'Tem certeza que deseja incluir as seguintes questões? ' + questoesJoin,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n })\r\n .then(async (res) => {\r\n if (res.value) {\r\n dados.forEach(item => {\r\n let encontrado = questoes.find(a => { return item.questaoId === a.questaoId });\r\n\r\n if (Object.keys(encontrado ?? {}).length > 0) {\r\n return;\r\n }\r\n this.manterMatrizPlanejamentoService.vincularQuestao(this.tipoTrabalho.codigo, matriz?.matrizPlanejamento?.id, item?.questaoId, item?.isQuestaoEspecifica, item?.relacionamentoId,item?.subTipoAuditoriaId).then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"success\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }).catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }).finally(() => {\r\n let id = this.route.snapshot.paramMap.get('id');\r\n if (this.tipoTrabalho.nome === \"planejamento\") {\r\n this.planejamentoService.obterPorId(+id);\r\n }\r\n this.obter();\r\n })\r\n })\r\n }\r\n })\r\n }\r\n })\r\n }\r\n}\r\n","
\r\n \r\n
\r\n
0; else content\">\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n Nenhum registro encontrado.\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n Nenhum registro encontrado.\r\n
\r\n
\r\n
\r\n","import { IEnumModel } from './../../../../models/enum.model';\r\nimport { ManterMatrizPlanejamentoService } from './../../../../services/manter-matriz-planejamento.service';\r\nimport { QuestaoFormComponent } from 'src/app/pages/questao-form/questao-form.component';\r\nimport { Component, Input, OnInit, ViewChild, AfterViewInit, EventEmitter, Output } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IMatrizPlanejamentoQuestaoModel } from 'src/app/models/matriz-planejamento-questao.model';\r\nimport { IQuestaoModel } from 'src/app/models/questao.model';\r\nimport Swal from 'sweetalert2';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MatrizPlanejamentoService } from 'src/app/services/matriz-planejamento.service';\r\nimport { IMatrizPlanejamentoModel } from 'src/app/models/matriz-planejamento.model';\r\nimport { PlanejamentoService } from 'src/app/services/planejamento.service';\r\nimport { QuestaoService } from 'src/app/services/questao.service';\r\n\r\n@Component({\r\n selector: 'app-listagem-questoes',\r\n templateUrl: './listagem-questoes.component.html',\r\n styleUrls: ['./listagem-questoes.component.scss']\r\n})\r\nexport class ListagemQuestoesComponent implements OnInit, AfterViewInit {\r\n\r\n constructor(\r\n private matDialog: MatDialog,\r\n private planejamentoService: PlanejamentoService,\r\n private matrizPlanejamentoService: MatrizPlanejamentoService,\r\n public router: Router,\r\n private questaoService: QuestaoService,\r\n public route: ActivatedRoute) {\r\n {\r\n this.tipotrabalhoId = +this.route.snapshot.paramMap.get(\"id\");\r\n\r\n if (this.router.url.includes(\"planejamento\")) {\r\n this.tipoTrabalho.nome = 'planejamento';\r\n this.tipoTrabalho.codigo = 7;\r\n this.isPlanejamento = true;\r\n }\r\n else if (this.router.url.includes(\"osa\")) {\r\n this.tipoTrabalho.nome = 'osa';\r\n this.tipoTrabalho.codigo = 4;\r\n this.isPlanejamento = false;\r\n }\r\n }\r\n }\r\n\r\n @Input() displayedColumns!: string[];\r\n @Input() subtipoId!: number;\r\n @Input() planejamentoId!: number;\r\n @Input() listaDados: IQuestaoModel[] = [] as IQuestaoModel[];\r\n @Input() matrizPlanejamento!: IMatrizPlanejamentoModel;\r\n @Output() excluirItemEvento: EventEmitter = new EventEmitter();\r\n @Input() visualizar: boolean;\r\n public isPlanejamento: boolean;\r\n public tipotrabalhoId: number;\r\n public tipoTrabalho: IEnumModel = {} as IEnumModel\r\n\r\n @ViewChild(MatSort) sort: MatSort;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n\r\n public dataSource: MatTableDataSource = new MatTableDataSource(this.listaDados);\r\n\r\n ngOnInit(): void {\r\n this.dataSource = new MatTableDataSource(this.listaDados);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n\r\n }\r\n\r\n\r\n public modalEditarQuestao(questao: IQuestaoModel, visualizar: Boolean = false) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-listagem-questoes-manter-planejamento';\r\n dialogConfig.width = '65%';\r\n dialogConfig.height = '85%';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = false;\r\n\r\n dialogConfig.data = {\r\n titulo: visualizar ? 'Editar questão' : 'Visualizar questão',\r\n data: questao,\r\n visualizar,\r\n tipoTrabalho: this.tipoTrabalho,\r\n tipoTrabalhoId: this.tipotrabalhoId\r\n };\r\n\r\n const modal = this.matDialog.open(\r\n QuestaoFormComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n this.excluirItemEvento.next();\r\n });\r\n }\r\n\r\n public routeIncludes(tipoTrabalho: string) {\r\n return this.router.url.includes(tipoTrabalho);\r\n }\r\n\r\n public sortingDataAccessor = (item: IQuestaoModel, property) => {\r\n switch (property) {\r\n case \"legislacao\":\r\n return item?.legislacaoAplicavelCriterio;\r\n case \"questao\":\r\n return item?.nome;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n\r\n public async excluirQuestao(idQuestao: number) {\r\n Swal.fire({\r\n title: 'Excluir Registro',\r\n text: 'Tem certeza que deseja excluir esse registro?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n })\r\n .then(async (res) => {\r\n if (res.value) {\r\n try {\r\n const res = (await this.questaoService.excluir(idQuestao, this.tipoTrabalho?.nome));\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n\r\n if (this.dataSource.data.length > 0) {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n }\r\n this.excluirItemEvento.next();\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (error) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: error.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n })\r\n\r\n\r\n\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Questão{{ element?.questao?.nome}}Legislação
Ações\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n Nenhum registro encontrado.\r\n
\r\n\r\n \r\n \r\n
\r\n","\r\nimport { ManterMatrizPlanejamentoService } from './../../../../services/manter-matriz-planejamento.service';\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { Component, Inject, OnInit, ViewChild, AfterViewInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport Swal from 'sweetalert2';\r\n\r\nimport { IQuestaoModel } from 'src/app/models/questao.model';\r\nimport { SubtipoAuditoriaService } from 'src/app/services/subtipo-auditoria.service';\r\nimport { IMatrizPlanejamentoQuestaoModel } from 'src/app/models/matriz-planejamento-questao.model';\r\nimport { QuestaoService } from './../../../../services/questao.service';\r\nimport { IMatrizPlanejamentoModel } from './../../../../models/matriz-planejamento.model';\r\nimport { QuestaoFormComponent } from 'src/app/pages/questao-form/questao-form.component';\r\nimport { ModalUgComponent } from '../modal-ug/modal-ug.component';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\n\r\ninterface IMatDialogDataModel {\r\n titulo: string;\r\n data: IMatrizPlanejamentoModel,\r\n planejamentoId: number;\r\n questoes: any[];\r\n tipoTrabalhoId: number;\r\n}\r\n\r\n@Component({\r\n selector: 'app-modal-adicionar-questoes',\r\n templateUrl: './modal-adicionar-questoes.component.html',\r\n styleUrls: ['./modal-adicionar-questoes.component.scss']\r\n})\r\nexport class ModalAdicionarQuestoesComponent implements OnInit, AfterViewInit {\r\n\r\n public titulo: string = '';\r\n public dataSource: MatTableDataSource = new MatTableDataSource();\r\n public questaoSelecionada: any[] = {} as any[];\r\n public displayedColumns: string[] = ['incluir', 'questao'];\r\n public selectedModel: IMatrizPlanejamentoQuestaoModel[] = [] as IMatrizPlanejamentoQuestaoModel[];\r\n public matrizPlanejamentoModel: IMatrizPlanejamentoModel = {} as IMatrizPlanejamentoModel;\r\n public listSubtipo: ISubtipoAuditoriaModel[] = [] as ISubtipoAuditoriaModel[];\r\n public id: number = null;\r\n public tipoTrabalho: IEnumModel = {} as IEnumModel;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n public dialogRef: MatDialogRef,\r\n private router: Router,\r\n private questaoService: QuestaoService,\r\n private subtipoAuditoriaService: SubtipoAuditoriaService,\r\n private manterMatrizPlanejamentoService: ManterMatrizPlanejamentoService,\r\n public route: ActivatedRoute,\r\n public matDialog: MatDialog,\r\n\t\t@Inject(MAT_DIALOG_DATA) public dados: IMatDialogDataModel\r\n ) {\r\n this.titulo = dados.titulo;\r\n this.matrizPlanejamentoModel = dados.data;\r\n this.id = dados?.tipoTrabalhoId;\r\n this.questaoSelecionada = dados.questoes;\r\n\r\n if (this.router.url.includes(\"planejamento\")) {\r\n this.tipoTrabalho.nome = 'planejamento';\r\n this.tipoTrabalho.codigo = 7;\r\n }\r\n else if (this.router.url.includes(\"osa\")) {\r\n this.tipoTrabalho.nome = 'osa';\r\n this.tipoTrabalho.codigo = 4;\r\n }else {\r\n this.tipoTrabalho = null\r\n }\r\n }\r\n\r\n public filtrarModel: FormGroup = this.fb.group({\r\n\t\ttituloAuditoria: [\"\", Validators.required],\r\n\t\tdescricao: [\"\", Validators.required],\r\n\t\tsubtipo: [\"\"]\r\n\t});\r\n\r\n ngOnInit(): void {\r\n this.obterQuestoes();\r\n this.obterSubtiposAuditoria();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n this.dataSource.sort = this.sort;\r\n }\r\n\r\n public onSubmit(): void {\r\n this.dialogRef.close(this.selecionados());\r\n }\r\n\r\n\r\n public selecionados() : IQuestaoModel[]{\r\n let selecionados : IQuestaoModel[] = this.dataSource.data.filter(item => item.selecionado);\r\n return selecionados;\r\n }\r\n\r\n public cancelar(): void {\r\n this.dialogRef.close();\r\n }\r\n\r\n public buscarComFiltro(): void {\r\n /*if(!+this.filtrarModel?.value?.subtipo){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text:'Selecione o subtipo!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }*/\r\n this.manterMatrizPlanejamentoService.obterQuestaoSubtipo(this.filtrarModel?.value?.subtipo, this.filtrarModel?.value?.descricao)\r\n .then(res => {\r\n if(res.sucesso){\r\n let questoes = res.dados\r\n this.dataSource.data = questoes.map(a => {\r\n const questaoSelecionada = this.questaoSelecionada.find(b => b?.questaoId === +a?.value);\r\n if(questaoSelecionada?.questaoId) a.selecionado = true;\r\n return a;\r\n });\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n this.dataSource.sort = this.sort\r\n }else{\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n }\r\n\r\n public async obterQuestoes(): Promise {\r\n let questoes = (await this.questaoService.obterPorTipoTrabalho(this.tipoTrabalho.codigo)).dados;\r\n this.dataSource.data = questoes.map(a => {\r\n const questaoSelecionada = this.questaoSelecionada.find(b => b?.questaoId === a?.id);\r\n if(questaoSelecionada?.questaoId && !questaoSelecionada?.readonly){\r\n a.selecionado = true;\r\n a.readonly = false\r\n } else if(questaoSelecionada?.questaoId && questaoSelecionada?.readonly){\r\n a.readonly = true\r\n }\r\n return a;\r\n });\r\n }\r\n\r\n public async obterSubtiposAuditoria(): Promise {\r\n this.listSubtipo = (await this.subtipoAuditoriaService.obter()).dados;\r\n }\r\n\r\n public abrirModalAdicionarQuestao(visualizar: Boolean = false): void {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-listagem-questoes-manter-planejamento';\r\n dialogConfig.width = '65%';\r\n dialogConfig.height = '85%';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = false;\r\n\r\n dialogConfig.data = {\r\n titulo: 'Adicionar questão',\r\n visualizar,\r\n tipoTrabalho: this.tipoTrabalho,\r\n tipoTrabalhoId: this.id,\r\n subTipoCategoria : this.dados.data?.matrizPlanejamento?.id\r\n };\r\n\r\n const modal = this.matDialog.open(\r\n QuestaoFormComponent,\r\n dialogConfig\r\n );\r\n\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n let selecionados : IQuestaoModel[] = [];\r\n selecionados.push(data.data as IQuestaoModel);\r\n this.dialogRef.close(selecionados);\r\n }\r\n this.ngOnInit()\r\n });\r\n\r\n }\r\n\r\n\r\n public sortingDataAccessor: (T: IQuestaoModel, I: any) => any = (item: IQuestaoModel, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"questao\":\r\n\t\t\t\treturn item?.nome;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

{{ titulo }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Incluir \r\n \r\n \r\n Questão{{element?.nome || element?.text }}
\r\n
\r\n Nenhum registro encontrado.\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-modal-editar-questao',\r\n templateUrl: './modal-editar-questao.component.html',\r\n styleUrls: ['./modal-editar-questao.component.scss']\r\n})\r\nexport class ModalEditarQuestaoComponent implements OnInit {\r\n\r\n public titulo: string = 'Editar questão';\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public cancelar() {\r\n\r\n }\r\n\r\n\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

{{ titulo }}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\nimport { ManterMatrizPlanejamentoService } from 'src/app/services/manter-matriz-planejamento.service';\r\nimport { UnidadeGestoraService } from 'src/app/services/unidade-gestora.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-ug',\r\n templateUrl: './modal-ug.component.html',\r\n styleUrls: ['./modal-ug.component.scss']\r\n})\r\nexport class ModalUgComponent implements OnInit {\r\n\r\n public dataSource = new MatTableDataSource([]);\r\n public displayedColumns: string[] = ['unidadeGestora'];\r\n public semDados = true;\r\n\r\n constructor(\r\n private matDialog: MatDialog,\r\n private service: ManterMatrizPlanejamentoService,\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {}\r\n\r\n\r\n @ViewChild(MatSort) sort: MatSort;\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n\r\n ngOnInit(): void {\r\n this.buscar()\r\n }\r\n\r\n public buscar() {\r\n this.service.obterUgSubtipo(this.data.id, this.data.subTipoId).then((res) => {\r\n if(res.sucesso){\r\n this.dataSource.data = res.dados\r\n this.dataSource.paginator = this.paginator;\r\n\t\t this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor\r\n this.semDados = this.dataSource?.filteredData?.length === 0;\r\n }else{\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n\r\n }\r\n\r\n public sortingDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"unidadeGestora\":\r\n\t\t\t\treturn item?.siglaUg;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n public fechar(){\r\n this.dialogRef.close()\r\n }\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
Unidade Gestora
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{{ element?.siglaUg }} - {{ element.nomeUg }}\r\n\t\t\t\t\r\n\t\t\t
\r\n\r\n\t\t\t\r\n\t\t\r\n\t\t
\r\n\t\t\tNenhum registro encontrado.\r\n\t\t
\r\n\t\t\r\n\t\t\r\n\t
\r\n
\r\n\r\n","import { IEnumModel } from 'src/app/models/enum.model';\r\n\r\nimport { ModalVisualizarRespostaComponent } from './modal-visualizar-resposta/modal-visualizar-resposta.component';\r\nimport { IncluirSolicitacaoComponent } from './modal-incluir-solicitacao/modal-incluir-solicitacao.component';\r\nimport { ModalJustificativaComponent } from './../modal-justificativa/modal-justificativa.component';\r\nimport { SolicitacaoTecnicaService } from \"./../../../services/solicitacao-tecnica.service\";\r\nimport { ISolicitacaoTecnicaModel } from \"./../../../models/solicitacao-tecnica.model\";\r\nimport { Component, Input, OnInit, ViewChild } from \"@angular/core\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport Swal from \"sweetalert2\";\r\nimport { MatDialog, MatDialogConfig } from \"@angular/material/dialog\";\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n@Component({\r\n\tselector: \"app-aba-solicitacao-tecnica\",\r\n\ttemplateUrl: \"./aba-solicitacao-tecnica.component.html\",\r\n\tstyleUrls: [\"./aba-solicitacao-tecnica.component.scss\"],\r\n})\r\nexport class AbaSolicitacaoTecnicaComponent implements OnInit {\r\n\tpublic displayedColumns: string[] = [\r\n\t\t\"selecao\",\r\n\t\t\"numero\",\r\n\t\t\"assunto\",\r\n\t\t\"prazo\",\r\n\t\t\"responsavel\",\r\n\t\t\"status\",\r\n\t\t\"resposta\",\r\n\t];\r\n\tpublic dataSource = new MatTableDataSource([]);\r\n\tpublic semDados = true;\r\n\tpublic selectedModel: ISolicitacaoTecnicaModel;\r\n\tpublic permitido: boolean = false;\r\n\tpublic cancelada: boolean;\r\n\tpublic dataVencida: boolean;\r\n\tpublic tipotrabalhoId: number;\r\n\t@Input() numeroOpa: string;\r\n\tpublic tipoTrabalho: IEnumModel = {} as IEnumModel;\r\n\t@Input() visualizar: boolean;\r\n\t@Input() planejamentoId: number;\r\n\r\n\tconstructor(\r\n\t\tprivate solicitacaoTecnica: SolicitacaoTecnicaService,\r\n\t\tprivate matDialog: MatDialog,\r\n\t\tpublic router: Router,\r\n\t\tpublic route: ActivatedRoute) {\r\n\t\tthis.tipotrabalhoId = +this.route.snapshot.paramMap.get(\"id\");\r\n\r\n\t\tif (this.router.url.includes(\"planejamento\")) {\r\n\t\t\tthis.tipoTrabalho.nome = 'planejamento';\r\n\t\t\tthis.tipoTrabalho.codigo = 7;\r\n\t\t}\r\n\t\tif (this.router.url.includes(\"osa\")) {\r\n\t\t\tthis.tipoTrabalho.nome = 'osa';\r\n\t\t\tthis.tipoTrabalho.codigo = 4;\r\n\t\t}\r\n\t}\r\n\r\n\t@ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n\t@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.dataSource.paginator = this.paginator;\r\n\t\tthis.dataSource.sort = this.sort;\r\n\t\tthis.obter()\r\n\t}\r\n\r\n\tpublic obter() {\r\n\t\tthis.solicitacaoTecnica\r\n\t\t\t.obter(this.tipotrabalhoId, this.tipoTrabalho?.nome)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.dados) {\r\n\t\t\t\t\tthis.dataSource = new MatTableDataSource(res.dados);\r\n\t\t\t\t\tthis.semDados = this.dataSource.filteredData.length === 0;\r\n\t\t\t\t\tthis.dataSource.paginator = this.paginator;\r\n\t\t\t\t\tthis.dataSource.sort = this.sort;\r\n\t\t\t\t\tthis.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n\t\t\t\t\tthis.selectedModel = null\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t}\r\n\r\n\r\n\tpublic selecionar(item: any) {\r\n\t\tthis.selectedModel =\r\n\t\t\t!this.selectedModel || this.selectedModel.id !== item.id\r\n\t\t\t\t? item\r\n\t\t\t\t: null;\r\n\t\tif (this.selectedModel?.status?.codigo === 4 || this.selectedModel?.status?.codigo !== 3) {\r\n\t\t\tthis.cancelada = true\r\n\t\t} else {\r\n\t\t\tthis.cancelada = false\r\n\t\t}\r\n\r\n\t\tif (this.selectedModel?.status?.codigo === 1 || this.selectedModel?.status?.codigo === 2) {\r\n\t\t\tthis.permitido = true;\r\n\t\t} else {\r\n\t\t\tthis.permitido = false;\r\n\t\t}\r\n\r\n\t\tvar dataAtual = new Date()\r\n\r\n\t\tif (new Date(this.selectedModel?.prazo) < dataAtual) {\r\n\t\t\tthis.dataVencida = true\r\n\t\t}\r\n\t}\r\n\r\n\tpublic habilitarResposta(id: number, prazo: Date) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = 'modal-component';\r\n\t\tdialogConfig.width = '45vw';\r\n\t\tdialogConfig.maxHeight = '85vh';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = false;\r\n\t\tdialogConfig.data = {\r\n\t\t}\r\n\t\tconst modal = this.matDialog.open(ModalJustificativaComponent, dialogConfig);\r\n\t\tmodal.afterClosed().subscribe(data => {\r\n\t\t\tif (data) {\r\n\t\t\t\tthis.solicitacaoTecnica.habilitarRespostaSolicitacao(id, data, prazo)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}).catch((err) => {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}).finally(() => {\r\n\t\t\t\t\t\tthis.obter()\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic imprimir(element: ISolicitacaoTecnicaModel) {\r\n\t\tthis.router.navigateByUrl(`${this.tipoTrabalho}/${this.tipotrabalhoId}/solicitacao-tecnica/${element?.id}/imprimir`)\r\n\t}\r\n\r\n\r\n\tpublic sortingDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"prazo\":\r\n\t\t\t\treturn item?.prazo;\r\n\t\t\tcase \"status\":\r\n\t\t\t\treturn item?.status?.descricao;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n\tpublic incluirSolicitacaoTecnica(titulo: string, visualizar?: boolean, selectedModel?: ISolicitacaoTecnicaModel,): void {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = 'modal-component-solicitacao-tecnica';\r\n\t\tdialogConfig.width = '80%';\r\n\t\tdialogConfig.height = '90%';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = {\r\n\t\t\ttitulo,\r\n\t\t\telement: selectedModel,\r\n\t\t\tid: selectedModel?.id,\r\n\t\t\tstatus: selectedModel?.status,\r\n\t\t\tvisualizar,\r\n\t\t\ttipoTrabalhoId: this.tipotrabalhoId,\r\n\t\t\tplanejamentoId: this.planejamentoId,\r\n\t\t\tnumeroOpa: this.numeroOpa,\r\n\t\t\ttipoTrabalho: this.tipoTrabalho,\r\n\t\t\tnumeroST: selectedModel?.numero\r\n\t\t};\r\n\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tIncluirSolicitacaoComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\r\n\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t}\r\n\t\t\tthis.obter()\r\n\t\t});\r\n\t}\r\n\r\n\tpublic modalVisualizarResposta(id: number): void {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = 'modal-component-resposta';\r\n\t\tdialogConfig.width = '60%';\r\n\t\tdialogConfig.height = 'auto';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = false;\r\n\t\tdialogConfig.data = {\r\n\t\t\ttitulo: 'Visualizar Resposta',\r\n\t\t\tid: id,\r\n\t\t};\r\n\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalVisualizarRespostaComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\r\n\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic cancelarSolicitacao(id: number) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = 'modal-component';\r\n\t\tdialogConfig.width = '45vw';\r\n\t\tdialogConfig.maxHeight = '85vh';\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = false;\r\n\t\tdialogConfig.data = {\r\n\t\t}\r\n\t\tconst modal = this.matDialog.open(ModalJustificativaComponent, dialogConfig);\r\n\t\tmodal.afterClosed().subscribe(data => {\r\n\t\t\tif (data) {\r\n\t\t\t\tthis.solicitacaoTecnica.cancelarSolicitacao(id, data)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}).catch((err) => {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}).finally(() => {\r\n\t\t\t\t\t\tthis.obter()\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t}\r\n\r\n\tpublic excluir(id: number) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: \"Excluir Registro\",\r\n\t\t\ttext: \"Tem certeza que deseja excluir esse Registro?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then((res) => {\r\n\t\t\tif (res.value) {\r\n\t\t\t\tthis.solicitacaoTecnica\r\n\t\t\t\t\t.excluir(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch((err) => {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}).finally(() => {\r\n\t\t\t\t\t\tthis.obter()\r\n\t\t\t\t\t}\r\n\t\t\t\t\t);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n
\r\n \r\n \r\n N° Solicitação
Técnica
{{ element?.numero ? element?.numero : '-' }}Assunto\r\n \r\n Prazo{{ element?.prazo | date: 'shortDate' }}Responsável{{ element?.quantidadeResponsaveis }}Status\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n Resposta\r\n
\r\n \r\n
\r\n
\r\n
\r\n\t\t\tNenhum registro encontrado.\r\n\t\t
\r\n \r\n \r\n\r\n
\r\n
\r\n","import { ActivatedRoute, Router } from '@angular/router';\r\nimport { SolicitacaoTecnicaService } from './../../../../services/solicitacao-tecnica.service';\r\nimport { ISolicitacaoTecnicaModel } from './../../../../models/solicitacao-tecnica.model';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-imprimir-solicitacao',\r\n templateUrl: './imprimir-solicitacao.component.html',\r\n styleUrls: ['./imprimir-solicitacao.component.scss']\r\n})\r\nexport class ImprimirSolicitacaoComponent implements OnInit {\r\n\r\n\tpublic model: ISolicitacaoTecnicaModel = {} as ISolicitacaoTecnicaModel;\r\n constructor(\r\n public serviceSolicitacao: SolicitacaoTecnicaService,\r\n public route: ActivatedRoute,\r\n public router: Router,\r\n ) {\r\n this.model.id = Number(this.route.snapshot.paramMap.get('solicitacaotecnicaId'));\r\n }\r\n\r\n ngOnInit(): void {\r\n this.obterPorId()\r\n }\r\n\r\n public obterPorId() {\r\n\t\tthis.serviceSolicitacao.obterPorId(this.model?.id).then((res) => {\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tthis.model = res.dados\r\n\r\n\t\t\t} else {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\r\n public cancelar() {\r\n window.history.back()\r\n }\r\n\r\n public print() {\r\n window.print();\r\n }\r\n}\r\n","\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

Solicitação Técnica

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tAssociado a:\r\n\t\t\t\t\t\t\t

{{ model?.planejamento?.opa?.numero }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tNº Solicitação Técnica:\r\n\t\t\t\t\t\t\t

{{ model?.numero }}

\r\n\t\t\t\t\t\t\t

-

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tPrazo:\r\n\t\t\t\t\t\t\t

{{ model?.prazo | date: \"shortDate\" }}

\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tStatus:\r\n\t\t\t\t\t\t\t

{{ model?.status?.descricao }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\tAssunto:\r\n\t\t\t\t\t\t

{{ model?.assunto }}

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tUnidade Gestora:\r\n\t\t\t\t\t\t\t

{{ ug?.siglaUg }} - {{ ug?.nomeUg }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tResponsável:\r\n\t\t\t\t\t\t\t

{{ ug?.nomeAuditor }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\tItem Nº: \r\n\t\t\t\t\t\t

{{ item?.numero }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tTitulo:\r\n\t\t\t\t\t\t\t

{{ item?.titulo }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tDescrição:\r\n\t\t\t\t\t\t\t

{{ item?.descricao }}

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tArquivos do Item:\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

{{ anexo?.nomeArquivo }}

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tDescrição da Resposta:\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{ item?.resposta?.descricao }}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t

NÃO RESPONDIDO

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tArquivos da Resposta:\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

{{ anexo?.nomeArquivo }}

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
","\r\nimport { SolicitacaoTecnicaService } from 'src/app/services/solicitacao-tecnica.service';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport Swal from 'sweetalert2';\r\n\r\nexport interface IAprovarModel {\r\n prazo: Date;\r\n avaliacao: boolean | number;\r\n}\r\n@Component({\r\n selector: 'app-modal-avaliar-prorrogacao',\r\n templateUrl: './modal-avaliar-prorrogacao.component.html',\r\n styleUrls: ['./modal-avaliar-prorrogacao.component.scss']\r\n})\r\nexport class ModalAvaliarProrrogacaoComponent implements OnInit {\r\n public submitted: boolean = false;\r\n public model: IAprovarModel = {} as IAprovarModel;\r\n public solicitacaoId: number;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public service: SolicitacaoTecnicaService,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n this.solicitacaoId = data?.solicitacaoId\r\n }\r\n\r\n public form = new FormGroup({\r\n\t\tprazo: new FormControl(\"\", Validators.required),\r\n justificativa: new FormControl(\"\", Validators.required)\r\n\t});\r\n\r\n ngOnInit(): void {\r\n this.model.avaliacao = 1\r\n this.form.controls['prazo'].setValue(new Date(this.data?.data))\r\n }\r\n\r\n public salvar(){\r\n this.submitted = true;\r\n if(+this.model.avaliacao === 1){\r\n if(this.form.controls['prazo'].invalid){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: 'Favor preencher o Prazo.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return\r\n }\r\n }\r\n\r\n const data = new Date(this.form.get('prazo').value);\r\n const justificativa = this.form.get('justificativa').value;\r\n\r\n const dados = {\r\n avaliacao: this.model?.avaliacao\r\n } as any;\r\n\r\n (this.model?.avaliacao === false || this.model.avaliacao === 0) ? dados.justificativa = justificativa : dados.data = data;\r\n\r\n if(this.form.valid) {\r\n this.service.avaliarProrrogacao(this.solicitacaoId, dados).then((res) => {\r\n if(res.sucesso){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"success\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.dialogRef.close();\r\n }else{\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }).catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n }\r\n\r\n public cancelar() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","\t
\r\n\t\t

Avaliação

\r\n\t
\r\n\t
\r\n
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n
\r\n
Campo obrigatório
\r\n
\r\n\t\t\t
\r\n\t\t
\r\n\r\n
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n
\r\n
Campo obrigatório
\r\n
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n
\r\n\t
\r\n\r\n
\r\n\t\r\n\r\n\t\r\n
\r\n","import { SolicitacaoTecnicaService } from \"./../../../../services/solicitacao-tecnica.service\";\r\nimport { IItemSolicitacaoTecnicaModel } from \"./../../../../models/item-solicitacao-tecnica.model\";\r\nimport {\r\n\tComponent,\r\n\tInject,\r\n\tOnInit,\r\n\tViewChild,\r\n\tAfterViewInit,\r\n} from \"@angular/core\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { AngularEditorConfig } from \"@kolkov/angular-editor\";\r\nimport { IArquivoModel } from \"src/app/models/arquivo.model\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport Swal from \"sweetalert2\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogConfig,\r\n\tMatDialogRef,\r\n\tMAT_DIALOG_DATA,\r\n} from \"@angular/material/dialog\";\r\nimport { ModalArquivoComponent } from \"../../modal-arquivo/modal-arquivo.component\";\r\n\r\n@Component({\r\n\tselector: \"app-modal-incluir-item\",\r\n\ttemplateUrl: \"./modal-incluir-item.component.html\",\r\n\tstyleUrls: [\"./modal-incluir-item.component.scss\"],\r\n})\r\nexport class ModalIncluirItemComponent implements OnInit, AfterViewInit {\r\n\tpublic model: IItemSolicitacaoTecnicaModel = {} as IItemSolicitacaoTecnicaModel;\r\n\tpublic dataSource = new MatTableDataSource([]);\r\n\tpublic semDados: boolean = true;\r\n\tpublic submitted: boolean;\r\n\tpublic titulo: string = \"\";\r\n\tpublic visualizar: boolean;\r\n\tpublic solicitacaoId: number;\r\n public nSolicitacaoTecnica: number;\r\n\tpublic nrItem: number;\r\n\r\n\tpublic form = new FormGroup({\r\n\t\ttitulo: new FormControl(\"\", Validators.required),\r\n\t\tdescricao: new FormControl(\"\", Validators.required),\r\n\t});\r\n\r\n\tconstructor(\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\tpublic solicitacaoService: SolicitacaoTecnicaService,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data\r\n\t) {\r\n\t\tthis.visualizar = data?.visualizar;\r\n\t\tthis.titulo = data?.titulo;\r\n\t\tthis.solicitacaoId = data?.id;\r\n\t\tthis.model.id = data?.element?.id;\r\n \tthis.nSolicitacaoTecnica = data?.numero;\r\n\t\tthis.nrItem = data?.element?.numero;\r\n\t}\r\n\r\n\t@ViewChild(\"myDiv\") private angularEditor: any;\r\n\r\n\t@ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n\t@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n\tconfig: AngularEditorConfig = {\r\n\t\teditable: true,\r\n\t\tspellcheck: true,\r\n\t\theight: \"10rem\",\r\n\t\tminHeight: \"5rem\",\r\n\t\ttranslate: \"yes\",\r\n\t\tenableToolbar: true,\r\n\t\tshowToolbar: true,\r\n\t\tdefaultParagraphSeparator: \"\",\r\n\t\tdefaultFontName: \"\",\r\n\t\tdefaultFontSize: \"\",\r\n\t\tfonts: [\r\n\t\t\t{ class: \"arial\", name: \"Arial\" },\r\n\t\t\t{ class: \"times-new-roman\", name: \"Times New Roman\" },\r\n\t\t\t{ class: \"calibri\", name: \"Calibri\" },\r\n\t\t\t{ class: \"comic-sans-ms\", name: \"Comic Sans MS\" },\r\n\t\t],\r\n\t\tcustomClasses: [\r\n\t\t\t{\r\n\t\t\t\tname: \"quote\",\r\n\t\t\t\tclass: \"quote\",\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: \"redText\",\r\n\t\t\t\tclass: \"redText\",\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: \"titleText\",\r\n\t\t\t\tclass: \"titleText\",\r\n\t\t\t\ttag: \"h1\",\r\n\t\t\t},\r\n\t\t],\r\n\t\tuploadUrl: \"v1/image\",\r\n\t\tuploadWithCredentials: false,\r\n\t\tsanitize: true,\r\n\t\ttoolbarPosition: \"top\",\r\n\t\ttoolbarHiddenButtons: [[\"bold\", \"italic\"], [\"fontSize\"]],\r\n\t};\r\n\r\n\tngAfterViewInit(): void {\r\n\t\tfunction load(e: any) {\r\n\t\t\tvar element = e.target as HTMLTextAreaElement;\r\n\t\t\tlet permitirTeclas =\r\n\t\t\t\te.key !== \"Backspace\" &&\r\n\t\t\t\te.key !== \"ArrowLeft\" &&\r\n\t\t\t\te.key !== \"ArrowRight\";\r\n\t\t\tif (element.innerHTML.length === 500 && permitirTeclas) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t}\r\n\t\t}\r\n\t\tthis.angularEditor?.textArea?.nativeElement?.addEventListener(\r\n\t\t\t\"keydown\",\r\n\t\t\tload,\r\n\t\t\tfalse\r\n\t\t);\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n if(this.model?.id){\r\n this.obterPorId()\r\n }\r\n\t\tthis.dataSource.paginator = this.paginator;\r\n\t\tthis.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor\r\n\r\n\t\tif (this.visualizar === true) {\r\n\t\t\tthis.form.disable();\r\n\t\t}\r\n\t}\r\n\r\n public obterPorId(){\r\n this.solicitacaoService.obterItemId(this.solicitacaoId, this.model?.id).then((res) =>{\r\n if(res.sucesso){\r\n this.form.controls['titulo'].setValue(res?.dados?.titulo)\r\n this.form.controls['descricao'].setValue(res?.dados?.descricao)\r\n this.dataSource.data = res?.dados?.anexo;\r\n\r\n\t\t this.dataSource.paginator = this.paginator;\r\n\t\t this.dataSource.sort = this.sort;\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor\r\n }else{\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n }\r\n\r\n public sortingDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"arquivo\":\r\n\t\t\t\treturn item?.nomeArquivo;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n\tpublic Download(arquivo: IArquivoModel) {\r\n this.solicitacaoService.downloadAnexo(this.model.id, arquivo.id).then((res) =>{\r\n if (res.sucesso) {\r\n const link = document.createElement(\"a\");\r\n link.href = res.dados.toString();\r\n link.download = arquivo.nomeArquivo;\r\n link.click();\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }})\r\n\t}\r\n\r\n\tpublic salvar(modalIncluirArquivo?: boolean, isClose?: boolean) {\r\n\t\tthis.submitted = true;\r\n\t\tif (this.form.invalid) {\r\n\t\t\treturn\r\n\t\t}\r\n\t\tconst dados = {\r\n\t\t\tid: this.model?.id,\r\n solicitacaoTecnicaId:this.solicitacaoId,\r\n\t\t\ttitulo: this.form.get(\"titulo\").value,\r\n\t\t\tdescricao: this.form.get(\"descricao\").value,\r\n\t\t} as IItemSolicitacaoTecnicaModel;\r\n\t\tthis.solicitacaoService\r\n\t\t\t.salvarItem(this.solicitacaoId, dados)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.model.id = res?.dados?.id;\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n if (isClose) this.dialogRef.close(true);\r\n if (modalIncluirArquivo) this.modalIncluirArquivo();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t})\r\n\t\t\t.finally(() => {});\r\n\t}\r\n\r\n\tpublic modalIncluirArquivo() {\r\n if(!this.model?.id){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n title: \"Atenção\",\r\n icon: \"warning\",\r\n text: \"Antes, salve as informações!\",\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.salvar(true);\r\n }else{\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = \"modal-component-arquivo\";\r\n dialogConfig.width = \"45vw\";\r\n dialogConfig.height = 'auto';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n id: this.model?.id,\r\n numero: this.model?.numero,\r\n nSolicitacaoTecnica: this.nSolicitacaoTecnica,\r\n solicitacaoId: this.solicitacaoId\r\n };\r\n const modal = this.matDialog.open(ModalArquivoComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if(data){\r\n\r\n }\r\n this.obterPorId()\r\n });\r\n }\r\n\t}\r\n\r\n\tpublic excluirArquivo(id: number) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: \"Excluir Registro\",\r\n\t\t\ttext: \"Tem certeza que deseja excluir esse Registro?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then((res) => {\r\n\t\t\tif (res.value) {\r\n\t\t\t\tthis.solicitacaoService\r\n\t\t\t\t\t.excluirAnexo(this.solicitacaoId, this.model?.id, id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch((err) => {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.finally(() => {\r\n this.obterPorId()\r\n });\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic cancelar() {\r\n\t\tthis.dialogRef.close(false);\r\n\t}\r\n}\r\n","
\r\n

\r\n \r\n {{titulo}} Item\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
Arquivos\r\n {{ element?.nomeArquivo }}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\" class=\"table-no-data\">\r\n Nenhum registro encontrado\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n","\r\nimport { IItemSolicitacaoTecnicaModel } from \"./../../../../models/item-solicitacao-tecnica.model\";\r\nimport { IResponsavelModel } from \"src/app/models/responsaveis.model\";\r\nimport { IUnidadeGestoraModel } from \"src/app/models/unidade-gestora.model\";\r\nimport {\r\n\tISolicitacaoTecnicaModel,\r\n\tISolicitacaoTecnicaUnidadeGestoraModel,\r\n} from \"./../../../../models/solicitacao-tecnica.model\";\r\nimport { SolicitacaoTecnicaService } from \"./../../../../services/solicitacao-tecnica.service\";\r\nimport { ModalIncluirItemComponent } from \"./../modal-incluir-item/modal-incluir-item.component\";\r\nimport { angularEditorConfig } from \"./../../../util/angularEditorConfig\";\r\nimport { AngularEditorConfig } from \"@kolkov/angular-editor\";\r\nimport {\r\n\tComponent,\r\n\tInject,\r\n\tOnInit,\r\n\tViewChild,\r\n\tAfterViewInit,\r\n} from \"@angular/core\";\r\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogConfig,\r\n\tMatDialogRef,\r\n\tMAT_DIALOG_DATA,\r\n} from \"@angular/material/dialog\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport Swal from \"sweetalert2\";\r\nimport { ModalJustificativaComponent } from \"../../modal-justificativa/modal-justificativa.component\";\r\nimport { ModalIncluirUgComponent } from \"../modal-incluir-ug/modal-incluir-ug.component\";\r\nimport { IEnumModel } from \"src/app/models/enum.model\";\r\nimport { ModalAvaliarProrrogacaoComponent } from \"../modal-avaliar-prorrogacao/modal-avaliar-prorrogacao.component\";\r\nimport { EnumTipoDocumentoAprovacao } from \"src/app/models/enum/tipo-documento-aprovacao.enum\";\r\n@Component({\r\n\tselector: \"app-modal-incluir-solicitacao\",\r\n\ttemplateUrl: \"./modal-incluir-solicitacao.component.html\",\r\n\tstyleUrls: [\"./modal-incluir-solicitacao.component.scss\"],\r\n})\r\nexport class IncluirSolicitacaoComponent implements OnInit, AfterViewInit {\r\n\tpublic editorConfig: AngularEditorConfig = angularEditorConfig(\r\n\t\t\"Digite o assunto\",\r\n\t\t\"200px\",\r\n\t\t\"100%\"\r\n\t);\r\n\tpublic dataSourceUG = new MatTableDataSource([]);\r\n\tpublic dataSourceItems = new MatTableDataSource([]);\r\n\tpublic visualizar: boolean;\r\n\tpublic titulo: string = \"\";\r\n\tpublic model: ISolicitacaoTecnicaModel = {} as ISolicitacaoTecnicaModel;\r\n\tpublic submitted: boolean;\r\n\tpublic unidadesGetoras: IUnidadeGestoraModel[];\r\n\tpublic responsaveis: IResponsavelModel[];\r\n\tpublic ugSelecionada: IUnidadeGestoraModel;\r\n\tpublic responsavelSelecionado: IResponsavelModel;\r\n\tpublic permitidoIncluir: boolean;\r\n\tpublic tipoTrabalho: IEnumModel = {} as IEnumModel;\r\n\tpublic planejamentoId: number;\r\n\tpublic prorrogacao = true\r\n\tpublic numeroST: string;\r\n\r\n\tpublic incluirSolicitacao: FormGroup = this.fb.group({\r\n\t\tassunto: [\"\", Validators.required],\r\n\t\tprazoResposta: [\"\", Validators.required],\r\n\t});\r\n\r\n\t@ViewChild(\"TableOnePaginator\", { static: true })\r\n\ttableOnePaginator: MatPaginator;\r\n\t@ViewChild(\"tabela1\", { static: true }) tabela1: MatSort;\r\n\r\n\t@ViewChild(\"TableTwoPaginator\", { static: true })\r\n\ttableTwoPaginator: MatPaginator;\r\n\t@ViewChild(\"tabela2\", { static: true }) tabela2: MatSort;\r\n\r\n\t@ViewChild(\"TableThreePaginator\", { static: true })\r\n\ttableThreePaginator: MatPaginator;\r\n\t@ViewChild(\"tabela3\", { static: true }) tabela3: MatSort;\r\n\r\n\t@ViewChild(\"maxLengthEditor\") private angularEditor: any;\r\n\r\n\tconstructor(\r\n\t\tprivate fb: FormBuilder,\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tpublic serviceSolicitacao: SolicitacaoTecnicaService,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data\r\n\t) {\r\n\t\tif (data?.id) {\r\n\t\t\tthis.model.id = data?.id;\r\n\t\t}\r\n\t\tthis.visualizar = data?.visualizar;\r\n\t\tthis.titulo = data?.titulo;\r\n\t\tthis.model.status = data?.status;\r\n\t\tthis.model.tipoTrabalhoId = data?.tipoTrabalhoId;\r\n\t\tthis.model.associado = data?.numeroOpa;\r\n\t\tthis.tipoTrabalho = data.tipoTrabalho;\r\n\t\tthis.planejamentoId = data.planejamentoId;\r\n\t\tthis.numeroST = data?.numeroST;\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tif (this.model?.id) {\r\n\t\t\tthis.obterPorId();\r\n\t\t}\r\n\r\n\r\n\t\tthis.dataSourceItems.paginator = this.tableThreePaginator;\r\n\t\tthis.dataSourceItems.sort = this.tabela3;\r\n\t\tthis.dataSourceItems.sortingDataAccessor = this.sortingDataAccessor;\r\n\r\n\t\tthis.dataSourceUG.paginator = this.tableOnePaginator;\r\n\t\tthis.dataSourceUG.sort = this.tabela1;\r\n\t\tthis.dataSourceUG.sortingDataAccessor = this.sortingDataAccessor;\r\n\r\n\t}\r\n\r\n\tngAfterViewInit() {\r\n\r\n\t\tfunction maxLengthAngularEditor(e: any) {\r\n\t\t\tvar element = e.target as HTMLTextAreaElement;\r\n\t\t\tlet permitirTeclas =\r\n\t\t\t\te.key !== \"Backspace\" &&\r\n\t\t\t\te.key !== \"ArrowLeft\" &&\r\n\t\t\t\te.key !== \"ArrowRight\";\r\n\t\t\tif (element.innerHTML.length === 500 && permitirTeclas) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tthis.angularEditor?.textArea?.nativeElement.addEventListener(\r\n\t\t\t\"keydown\",\r\n\t\t\tmaxLengthAngularEditor,\r\n\t\t\tfalse\r\n\t\t);\r\n\t}\r\n\r\n\tpublic sortingDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"ug\":\r\n\t\t\t\treturn item?.unidadeGestora?.text;\r\n\t\t\tcase \"responsavel\":\r\n\t\t\t\treturn item?.responsavel?.text;\r\n case \"tituloItem\":\r\n\t\t\t\treturn item?.titulo;\r\n\t\t\tcase \"numero\":\r\n\t\t\t\treturn item?.numero;\r\n\t\t\tcase \"status\":\r\n\t\t\t\treturn item?.status?.descricao;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n\r\n\tpublic obterPorId() {\r\n\t\tthis.serviceSolicitacao.obterPorId(this.model?.id).then((res) => {\r\n\t\t\tif (res.sucesso) {\r\n\t\t\t\tthis.dataSourceItems =\r\n\t\t\t\t\tnew MatTableDataSource(\r\n\t\t\t\t\t\tres.dados.item\r\n\t\t\t\t\t);\r\n\t\t\t\tthis.incluirSolicitacao.controls[\"assunto\"].setValue(\r\n\t\t\t\t\tres.dados.assunto\r\n\t\t\t\t);\r\n this.model.prazo = new Date(res.dados.prazo);\r\n this.model.id = res?.dados?.id;\r\n this.model.status = res?.dados?.status\r\n this.model.numero = res.dados.numero\r\n this.model.prorrogarSolicitacao = res?.dados?.prorrogarSolicitacao\r\n\t\tthis.dataSourceItems.paginator = this.tableThreePaginator;\r\n this.dataSourceItems.sort = this.tabela3;\r\n this.dataSourceItems.sortingDataAccessor = this.sortingDataAccessor;\r\n\r\n this.serviceSolicitacao.obterUgResponsavel(this.model.id).then((res) => {\r\n if(res.sucesso) {\r\n this.dataSourceUG.data = res.dados.map(a => {\r\n return {\r\n solicitacaoTecnicaId: a.solicitacaoTecnicaId,\r\n unidadeGestora: {\r\n value: a.unidadeGestoraId,\r\n text: `${a.siglaUg} - ${a.nomeUg}`\r\n },\r\n responsavel: {\r\n value: a.responsavelId,\r\n text: a.nomeAuditor\r\n }\r\n } as ISolicitacaoTecnicaUnidadeGestoraModel\r\n });\r\n\r\n this.dataSourceUG.paginator = this.tableOnePaginator;\r\n this.dataSourceUG.sort = this.tabela1;\r\n this.dataSourceUG.sortingDataAccessor = this.sortingDataAccessor;\r\n }\r\n })\r\n\r\n\r\n\t\t\t} else {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic finalizar() {\r\n\t\tthis.serviceSolicitacao\r\n\t\t\t.finalizar(this.model?.id)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.model.status = res?.dados?.status;\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic enviar() {\r\n\t\tthis.serviceSolicitacao\r\n\t\t\t.enviar(this.model?.id, this.tipoTrabalho?.nome)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.model.status = res?.dados?.status;\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n this.dialogRef.close()\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t}\r\n\r\n\r\n\tpublic excluirUg(i: number, element: ISolicitacaoTecnicaUnidadeGestoraModel) {\r\n if(element?.solicitacaoTecnicaId) {\r\n Swal.fire({\r\n title: \"Excluir Registro\",\r\n text: \"Tem certeza que deseja excluir esse Registro?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then((res) => {\r\n if (res.value) {\r\n this.serviceSolicitacao.desvincularUgResponsavel(element.solicitacaoTecnicaId, element.unidadeGestora.value).then((res) => {\r\n if(res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"success\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.obterPorId();\r\n }\r\n })\r\n }})\r\n } else {\r\n this.dataSourceUG.data.splice(i, 1);\r\n this.dataSourceUG._updateChangeSubscription();\r\n }\r\n\t}\r\n\r\n\tpublic salvar(exibirModalAdicionarItem?: boolean) {\r\n\t\tthis.submitted = true;\r\n\t\tif (this.incluirSolicitacao.invalid) {\r\n\t\t\treturn;\r\n\t\t}\r\n if(this.dataSourceUG.data.length <= 0){\r\n Swal.fire({\r\n toast: true,\r\n title: '',\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: 'Selecione ao menos uma Unidade Gestora',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return\r\n }\r\n\t\tconst dados = {\r\n\t\t\tid: this.model?.id,\r\n\t\t\tprazo: this.incluirSolicitacao.get(\"prazoResposta\").value,\r\n\t\t\tassunto: this.incluirSolicitacao.get(\"assunto\").value,\r\n\t\t\ttipoTrabalho: {codigo: this.tipoTrabalho.codigo} ,\r\n\t\t\ttipoTrabalhoId: this.data?.tipoTrabalhoId\r\n\t\t} as ISolicitacaoTecnicaModel;\r\n\r\n\t\tthis.serviceSolicitacao\r\n\t\t\t.salvarSolicitacao(dados)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.model.id = res?.dados?.id;\r\n this.salvarUgResponsavel()\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n if (exibirModalAdicionarItem) this.modalIncluiritem('Incluir', false);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t}).finally(()=>{\r\n this.obterPorId()\r\n })\r\n\t}\r\n\r\n\tpublic modalIncluiritem(\r\n\t\ttitulo: string,\r\n\t\tvisualizar: boolean,\r\n\t\telement?: IItemSolicitacaoTecnicaModel\r\n\t)\r\n {if(!this.model?.id){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n title: \"Atenção\",\r\n icon: \"warning\",\r\n text: \"Antes, salve as informações!\",\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.salvar(true)\r\n }else{\r\n const dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component\";\r\n\t\tdialogConfig.width = \"45vw\";\r\n\t\tdialogConfig.maxHeight = \"90vh\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = {\r\n\t\t\ttitulo,\r\n\t\t\tvisualizar,\r\n\t\t\tid: this.model?.id,\r\n\t\t\telement,\r\n \t\tnSolicitacaoTecnica: this.numeroST\r\n\t\t};\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalIncluirItemComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\tif (data) {\r\n\t\t\tthis.obterPorId()\r\n\t\t} \r\n });\r\n }\r\n\r\n\t}\r\n\tpublic modalIncluirUg() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component-ug\";\r\n\t\tdialogConfig.width = \"70vw\";\r\n\t\tdialogConfig.maxHeight = \"65vh\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = {\r\n id: this.model?.tipoTrabalhoId,\r\n dataSourcePaiUg: this.dataSourceUG.data,\r\n tipoTrabalho: this.tipoTrabalho,\r\n planejamentoId: this.planejamentoId\r\n };\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalIncluirUgComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\t\tmodal.afterClosed().subscribe((data: ISolicitacaoTecnicaUnidadeGestoraModel[]) => {\r\n if (data) {\r\n data.forEach(element => {\r\n this.dataSourceUG.data = [...this.dataSourceUG.data, element]\r\n });\r\n }\r\n });\r\n\t}\r\n\r\n public salvarUgResponsavel(){\r\n const dados = {\r\n ugsResponsavel: this.dataSourceUG.data.map((item) => {\r\n return {\r\n unidadeGestoraId: +item.unidadeGestora.value,\r\n responsavelId: item.responsavel.value\r\n }\r\n })\r\n }\r\n this.serviceSolicitacao.salvarUgResponsavel(this.model.id, dados).then((res) => {\r\n if(res.sucesso){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"success\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.obterPorId()\r\n }else{\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }).catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n text: err.mensagem.descricao,\r\n icon: \"error\",\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n\tpublic excluirItem(id: number) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: \"Excluir Registro\",\r\n\t\t\ttext: \"Tem certeza que deseja excluir esse Registro?\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: \"Sim\",\r\n\t\t\tcancelButtonText: \"Não\",\r\n\t\t}).then((res) => {\r\n\t\t\tif (res.value) {\r\n\t\t\t\tthis.serviceSolicitacao\r\n\t\t\t\t\t.excluirItem(this.model?.id, id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch((err) => {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.finally(() => {\r\n this.obterPorId()\r\n });\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic cancelarItem(id: number) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component\";\r\n\t\tdialogConfig.width = \"45vw\";\r\n\t\tdialogConfig.maxHeight = \"85vh\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = false;\r\n\t\tdialogConfig.data = {};\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalJustificativaComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tthis.serviceSolicitacao\r\n\t\t\t\t\t.cancelarItem(this.model?.id, id , data)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"success\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch((err) => {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.finally(() => {\r\n this.obterPorId()\r\n });\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic avaliar() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component\";\r\n\t\tdialogConfig.width = \"25vw\";\r\n\t\tdialogConfig.maxHeight = \"85vh\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = {\r\n solicitacaoId: this.model?.id,\r\n data: this.model?.prorrogarSolicitacao?.data\r\n };\r\n\t\tconst modal = this.matDialog.open(\r\n\t\t\tModalAvaliarProrrogacaoComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\tthis.obterPorId()\r\n\t\t});\r\n\t}\r\n\r\n\tpublic cancelar() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n}\r\n","\r\n
\r\n
\r\n

{{ titulo }} Solicitação Técnica

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n Unidade(s) Gestora(s)\r\n \r\n {{element?.unidadeGestora?.text}}\r\n \r\n Responsável\r\n \r\n {{ element?.responsavel?.text }}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n Nenhum registro encontrado\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
Campo obrigatório
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n Nº\r\n \r\n -\r\n {{ element.numero }}\r\n \r\n Titulo do item\r\n \r\n {{ element.titulo }}\r\n \r\n Status\r\n \r\n -\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n {{element?.status?.descricao}}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
0\">\r\n Nenhum registro encontrado\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { SolicitacaoTecnicaService } from './../../../../services/solicitacao-tecnica.service';\r\nimport { Component, Inject, OnInit, ViewChild } from \"@angular/core\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogRef,\r\n\tMAT_DIALOG_DATA,\r\n} from \"@angular/material/dialog\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { IResponsavelModel } from \"src/app/models/responsaveis.model\";\r\nimport { ISolicitacaoTecnicaUnidadeGestoraModel } from \"src/app/models/solicitacao-tecnica.model\";\r\nimport { IUnidadeGestoraModel } from \"src/app/models/unidade-gestora.model\";\r\nimport Swal from 'sweetalert2';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\n\r\n@Component({\r\n\tselector: \"app-modal-incluir-ug\",\r\n\ttemplateUrl: \"./modal-incluir-ug.component.html\",\r\n\tstyleUrls: [\"./modal-incluir-ug.component.scss\"],\r\n})\r\nexport class ModalIncluirUgComponent implements OnInit {\r\n\tpublic dataSourceUG =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic unidadesGetoras: IUnidadeGestoraModel[];\r\n\tpublic responsaveis: IResponsavelModel[];\r\n\tpublic ugSelecionada: IUnidadeGestoraModel = {} as IUnidadeGestoraModel;\r\n\tpublic responsavelSelecionado: IResponsavelModel = {} as IResponsavelModel;\r\n public ugCadastrada: ISolicitacaoTecnicaUnidadeGestoraModel[] = [] as ISolicitacaoTecnicaUnidadeGestoraModel[];\r\n public dataSourceUgPai: ISolicitacaoTecnicaUnidadeGestoraModel[] = [] as ISolicitacaoTecnicaUnidadeGestoraModel[];\r\n public tipoTrabalho: IEnumModel = {} as IEnumModel;\r\n public planejamentoId: number;\r\n\r\n\tpublic form = new FormGroup({\r\n\t\tug: new FormControl(\"\", Validators.required),\r\n\t\tresponsavel: new FormControl(\"\", Validators.required),\r\n\t});\r\n\r\n\tconstructor(\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n public service: SolicitacaoTecnicaService,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data\r\n\t) {\r\n this.dataSourceUgPai = data.dataSourcePaiUg;\r\n this.tipoTrabalho = data.tipoTrabalho\r\n if(this.tipoTrabalho?.codigo === 4){\r\n this.planejamentoId = data?.planejamentoId\r\n }else if(this.tipoTrabalho?.codigo === 7){\r\n this.planejamentoId = data?.id\r\n }\r\n }\r\n\r\n\t@ViewChild(\"TableOnePaginator\", { static: true })\r\n\ttableOnePaginator: MatPaginator;\r\n\t@ViewChild(\"tabela1\", { static: true }) tabela1: MatSort;\r\n\r\n\tngOnInit(): void {\r\n this.responsavelSelecionado = undefined;\r\n this.ugSelecionada = undefined;\r\n this.obterUG()\r\n\t\tthis.dataSourceUG.sort = this.tabela1;\r\n\t\tthis.dataSourceUG.sortingDataAccessor = this.sortingDataAccessor;\r\n }\r\n\r\n public obterUG(){\r\n this.service.obterUnidadeGestora( this.tipoTrabalho.nome, this.planejamentoId).then((res) => {\r\n if(res.sucesso){\r\n this.unidadesGetoras = res.dados\r\n }else{\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n }\r\n\r\n public obterResponsaveis(id: number){\r\n this.service.obterResponsaveis(id).then((res) => {\r\n if(res.sucesso){\r\n this.responsaveis = res.dados;\r\n }else{\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }})\r\n\r\n }\r\n\r\n\tpublic salvar() {\r\n\t\tthis.dialogRef.close(this.dataSourceUG.data);\r\n\t}\r\n\r\n\tpublic adicionarUg() {\r\n\r\n const findUgSelecionada = this.dataSourceUgPai.find(x => (x?.responsavel?.value === this.responsavelSelecionado?.value) && ((Number(x?.unidadeGestora?.value) === Number(this.ugSelecionada?.value))))\r\n const findDataUgSelecionada = this.dataSourceUG.data.find(x => (x?.responsavel?.value === this.responsavelSelecionado?.value) && ((Number(x?.unidadeGestora?.value) === Number(this.ugSelecionada?.value))))\r\n\r\n if ((Object?.keys(findUgSelecionada || {} )?.length > 0) || (Object?.keys(findDataUgSelecionada || {} )?.length > 0)) {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: ' Unidade gestora, já selecionada!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n\r\n\t\tthis.dataSourceUG.data.push({\r\n\t\t\tunidadeGestora: {\r\n\t\t\t\ttext: this.ugSelecionada.text,\r\n\t\t\t\tvalue: this.ugSelecionada.value,\r\n\t\t\t},\r\n\t\t\tresponsavel: {\r\n\t\t\t\ttext: this.responsavelSelecionado.text,\r\n\t\t\t\tvalue: this.responsavelSelecionado.value,\r\n\t\t\t},\r\n\t\t} as ISolicitacaoTecnicaUnidadeGestoraModel);\r\n\t\tthis.dataSourceUG.data = this.dataSourceUG.data;\r\n\t\tthis.dataSourceUG.paginator = this.tableOnePaginator;\r\n\r\n this.ugSelecionada = undefined;\r\n\t\tthis.responsavelSelecionado = undefined;\r\n\r\n\t}\r\n\r\n\tpublic sortingDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"ug\":\r\n\t\t\t\treturn item.unidadeGestora?.sigla;\r\n\t\t\tcase \"responsavel\":\r\n\t\t\t\treturn item.unidadeGestora?.sigla;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n\tpublic excluirUg(i: number, element: ISolicitacaoTecnicaUnidadeGestoraModel) {\r\n this.dataSourceUG.data.splice(i, 1);\r\n\t\tthis.dataSourceUG._updateChangeSubscription();\r\n\r\n\r\n\t}\r\n\r\n\tpublic cancelar() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n}\r\n","
\r\n\t

Incluir UG

\r\n
\r\n
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{{ item.text }}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{{ item.text }}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n
\r\n \r\n \r\n Adicionar\r\n \r\n
\r\n\t\t\t
\r\n\t\t
\r\n\t
0\">\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tUnidade(s) Gestora(s)\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{ element?.unidadeGestora?.text }}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tResponsável\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{ element?.responsavel?.text }}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tAção\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t 0\"\r\n\t\t\t\t>\r\n\t\t\t\t\tNenhum registro encontrado\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n
\r\n\t\r\n\t\t Salvar\r\n\t\r\n\t\r\n
\r\n","import { SolicitacaoTecnicaService } from \"./../../../../services/solicitacao-tecnica.service\";\r\nimport { IArquivoModel } from \"./../../../../models/arquivo.model\";\r\nimport { IArquivoRespostaModel, IItemSolicitacaoTecnicaModel, IRepostaItemModel } from \"./../../../../models/item-solicitacao-tecnica.model\";\r\nimport {\r\n\tComponent,\r\n\tOnInit,\r\n\tViewChild,\r\n\tAfterViewInit,\r\n\tInject,\r\n} from \"@angular/core\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogRef,\r\n\tMAT_DIALOG_DATA,\r\n} from \"@angular/material/dialog\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport Swal from \"sweetalert2\";\r\n\r\n@Component({\r\n\tselector: \"app-modal-visualizar-item\",\r\n\ttemplateUrl: \"./modal-visualizar-item.component.html\",\r\n\tstyleUrls: [\"./modal-visualizar-item.component.scss\"],\r\n})\r\nexport class ModalVisualizarItemComponent implements OnInit, AfterViewInit {\r\n\tpublic dataSource = new MatTableDataSource([]);\r\n\tpublic dataSourceResposta = new MatTableDataSource([]);\r\n\tpublic semDados: boolean = false;\r\n\tpublic semDadosResposta: boolean = false;\r\n\tpublic model: IItemSolicitacaoTecnicaModel =\r\n\t\t{} as IItemSolicitacaoTecnicaModel;\r\n\tpublic solicitacaoId: number;\r\n\tpublic numeroSolicitacao: any;\r\n public resposta: IItemSolicitacaoTecnicaModel = {} as IItemSolicitacaoTecnicaModel;\r\n\r\n\tconstructor(\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\tpublic solicitacaoService: SolicitacaoTecnicaService,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data\r\n\t) {\r\n\t\tthis.model.id = data?.id;\r\n\t\tthis.solicitacaoId = data?.solicitacaoTecnicaId;\r\n\t\tthis.numeroSolicitacao = data?.numeroSolicitacao;\r\n\t}\r\n\r\n\t@ViewChild(\"tabelaItemPaginator\", { static: true })\r\n\ttabelaItemPaginator: MatPaginator;\r\n\t@ViewChild(\"tabelaItemSort\", { static: true }) tabelaItemSort: MatSort;\r\n\r\n\t@ViewChild(\"tabelaRespostaPaginator\", { static: true })\r\n\ttabelaRespostaPaginator: MatPaginator;\r\n\t@ViewChild(\"tabelaRespostaSort\", { static: true })\r\n\ttabelaRespostaSort: MatSort;\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.obterPorId();\r\n\r\n if(this.dataSource.data?.length > 0) {\r\n this.dataSource.paginator = this.tabelaItemPaginator;\r\n this.dataSource.sort = this.tabelaItemSort;\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n }\r\n\r\n if(this.dataSourceResposta.data?.length > 0) {\r\n this.dataSourceResposta.sortingDataAccessor = this.sortingDataAccessor;\r\n this.dataSourceResposta.sort = this.tabelaRespostaSort;\r\n this.dataSourceResposta.paginator = this.tabelaRespostaPaginator;\r\n }\r\n\t}\r\n\r\n\tngAfterViewInit(): void {}\r\n\r\n\tpublic obterPorId() {\r\n\t\tthis.solicitacaoService\r\n\t\t\t.obterItemId(this.solicitacaoId, this.model?.id)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\tthis.model = res.dados;\r\n\t\t\t\t\tthis.dataSource.data = res?.dados?.anexo;\r\n if(this.dataSource.data?.length > 0) {\r\n this.dataSource.paginator = this.tabelaItemPaginator;\r\n this.dataSource.sort = this.tabelaItemSort;\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n }\r\n this.obterResposta()\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n public obterResposta() {\r\n this.solicitacaoService.obterRespostaItem(this.solicitacaoId, this.model?.id).then((res) => {\r\n if (res.sucesso) {\r\n this.resposta.respostaItemSolicitacaoTecnica = res?.dados?.respostaItemSolicitacaoTecnica\r\n this.dataSourceResposta.data = res?.dados?.respostaItemSolicitacaoTecnica?.anexos\r\n if( this.dataSourceResposta.data?.length > 0) {\r\n this.dataSourceResposta.sortingDataAccessor = this.sortingDataAccessor;\r\n this.dataSourceResposta.sort = this.tabelaRespostaSort;\r\n this.dataSourceResposta.paginator = this.tabelaRespostaPaginator;\r\n }\r\n }\r\n })}\r\n\r\n\tpublic Download(arquivo: IArquivoModel) {\r\n this.solicitacaoService.downloadAnexo(this.model.id, arquivo.id).then((res) =>{\r\n if (res.sucesso) {\r\n const link = document.createElement(\"a\");\r\n link.href = res.dados.toString();\r\n link.download = arquivo.nomeArquivo;\r\n link.click();\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }})\r\n\t}\r\n\r\n public DownloadResposta(arquivo: IArquivoRespostaModel) {\r\n this.solicitacaoService.downloadArquivoRespostaItem(arquivo).then((res) =>{\r\n if (res.sucesso) {\r\n const link = document.createElement(\"a\");\r\n link.href = res.dados.toString();\r\n link.download = arquivo.nomeArquivo;\r\n link.click();\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }})\r\n\t}\r\n\r\n\tpublic sortingDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"arquivo\":\r\n\t\t\t\treturn item.nomeArquivo;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n\tpublic fechar() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n}\r\n","
\r\n

\r\n \r\n Visualizar Resposta\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Arquivos do Item\r\n {{ element?.nomeArquivo }}\r\n
\r\n
0\" class=\"table-no-data\">\r\n Nenhum registro encontrado\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Arquivos da Resposta\r\n {{ element?.nomeArquivo }}\r\n
\r\n
0\" class=\"table-no-data\">\r\n Nenhum registro encontrado\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { SolicitacaoTecnicaService } from './../../../../services/solicitacao-tecnica.service';\r\nimport { ISolicitacaoTecnicaModel } from './../../../../models/solicitacao-tecnica.model';\r\nimport { IItemSolicitacaoTecnicaModel, IRepostaItemModel } from './../../../../models/item-solicitacao-tecnica.model';\r\nimport { angularEditorConfig } from './../../../util/angularEditorConfig';\r\nimport { Component, Inject, OnInit, ViewChild } from \"@angular/core\";\r\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatDialog, MatDialogConfig, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ModalIncluirItemComponent } from '../modal-incluir-item/modal-incluir-item.component';\r\nimport { ModalVisualizarItemComponent } from '../modal-visualizar-item/modal-visualizar-item.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n\tselector: \"app-modal-visualizar-resposta\",\r\n\ttemplateUrl: \"./modal-visualizar-resposta.component.html\",\r\n\tstyleUrls: [\"./modal-visualizar-resposta.component.scss\"],\r\n})\r\nexport class ModalVisualizarRespostaComponent implements OnInit {\r\n\r\n\tpublic titulo: string = \"Visualizar Resposta\";\r\n public dataSourceItems = new MatTableDataSource();\r\n public editorConfig = angularEditorConfig(null, '180px', '100%', false);\r\n public model: ISolicitacaoTecnicaModel = {} as ISolicitacaoTecnicaModel\r\n\r\n\r\n @ViewChild(\"TableOnePaginator\", { static: true })\r\n\ttableOnePaginator: MatPaginator;\r\n\t@ViewChild(\"tabela1\", { static: true }) tabela1: MatSort;\r\n\r\n\tconstructor(private fb: FormBuilder,\r\n private dialogRef: MatDialog,\r\n public matDialog: MatDialog,\r\n\t\tpublic serviceSolicitacao: SolicitacaoTecnicaService,\r\n @Inject(MAT_DIALOG_DATA) public data) {\r\n this.model.id = data?.id\r\n }\r\n\r\n\tngOnInit(): void {\r\n if(this.model?.id){\r\n this.obterPorId()\r\n }\r\n this.dataSourceItems.sort = this.tabela1;\r\n this.dataSourceItems.paginator = this.tableOnePaginator;\r\n this.dataSourceItems.sortingDataAccessor = this.sortingDataAccessor\r\n }\r\n\r\n public obterPorId() {\r\n\t\tthis.serviceSolicitacao.obterPorId(this.model?.id).then((res) => {\r\n\t\t\tif (res.sucesso) {\r\n this.model = res.dados\r\n this.model.prazo = new Date(res.dados.prazo)\r\n\t\t\t\tthis.dataSourceItems = new MatTableDataSource(res?.dados?.item)\r\n\r\n this.dataSourceItems.sort = this.tabela1;\r\n this.dataSourceItems.paginator = this.tableOnePaginator;\r\n this.dataSourceItems.sortingDataAccessor = this.sortingDataAccessor\r\n\t\t\t} else {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttoast: true,\r\n\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\ticon: \"warning\",\r\n\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\r\n\r\n\r\n\r\n\tfechar() {\r\n this.dialogRef.closeAll();\r\n }\r\n\r\n public modalVisulizaItem(id: number) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '45vw';\r\n dialogConfig.maxHeight = '90vh';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n solicitacaoTecnicaId: this.model?.id,\r\n id,\r\n numeroSolicitacao: this.model.numero\r\n }\r\n const modal = this.matDialog.open(ModalVisualizarItemComponent, dialogConfig);\r\n modal.afterClosed().subscribe(data => {\r\n });\r\n }\r\n\r\n public sortingDataAccessor = (item: IItemSolicitacaoTecnicaModel, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"prazo\":\r\n\t\t\t\treturn item?.solicitacaoTecnica?.prazo;\r\n\t\t\tcase \"status\":\r\n\t\t\t\treturn item?.status?.descricao;\r\n\t\t\tcase \"numero\":\r\n\t\t\t\treturn item?.numero;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

{{ titulo }}

\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t
\r\n\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t
\r\n\r\n","import { CoordenacaoService } from \"src/app/services/coordenacao.service\";\r\nimport { IAuditorModel } from \"./../../../models/alocar-equipe-component\";\r\nimport { Component, Inject, OnInit, ViewChild } from \"@angular/core\";\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { MatPaginator, PageEvent } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { IAlocarEquipeModel } from \"src/app/models/alocar-equipe-component\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport Swal from \"sweetalert2\";\r\nimport { IAuditorCoordenacaoModel } from \"src/app/models/auditor-coordenacao.model\";\r\n\r\n@Component({\r\n\tselector: \"app-alocar-equipe\",\r\n\ttemplateUrl: \"./alocar-equipe.component.html\",\r\n\tstyleUrls: [\"./alocar-equipe.component.scss\"],\r\n})\r\nexport class AlocarEquipeComponent implements OnInit {\r\n\tpublic model: IAlocarEquipeModel = {} as IAlocarEquipeModel;\r\n\tpublic dataObrigatoria!: any;\r\n\tpublic auditorDataSource =\r\n\t\tnew MatTableDataSource();\r\n\tpublic auditorSemDados: boolean = true;\r\n\tpublic auditorOutraCoordenacaoDataSource =\r\n\t\tnew MatTableDataSource();\r\n\tpublic auditorOutraCoordenacaoSemDados: boolean = true;\r\n\tpublic minDate!: Date;\r\n\tpublic maxDate!: Date;\r\n\tpublic novaListaAuditores = [] as IAuditorModel[];\r\n\r\n\t@ViewChild(\"TableOnePaginator\", { static: true })\r\n\ttableOnePaginator: MatPaginator;\r\n\t@ViewChild(\"tabela1\", { static: true }) tabela1: MatSort;\r\n\r\n\t@ViewChild(\"TableTwoPaginator\", { static: true })\r\n\ttableTwoPaginator: MatPaginator;\r\n\t@ViewChild(\"tabela2\", { static: true }) tabela2: MatSort;\r\n\r\n\tconstructor(\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\tpublic coordenacaoService: CoordenacaoService,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: IAlocarEquipeModel\r\n\t) {\r\n\t\tif (data) {\r\n\t\t\tthis.model = data;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic obterCoordenadoresAuditoria() {\r\n\t\treturn new Promise((resolve) => {\r\n\t\t\tthis.coordenacaoService\r\n\t\t\t\t.obterCoordenadoresAtivos()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.sucesso) {\r\n\t\t\t\t\t\tresolve(res.dados);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\t\t\ttext: res.mensagem.descricao,\r\n\t\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch((err) => {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttoast: true,\r\n\t\t\t\t\t\tposition: \"top-end\",\r\n\t\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\t\ttext: err.mensagem.descricao,\r\n\t\t\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\t\t\ttimer: 5000,\r\n\t\t\t\t\t\ttimerProgressBar: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.obterCoordenadoresAuditoria().then((res) => {\r\n\t\t\tthis.minDate = new Date(this.model.minDataInicio, 1 - 1, 1);\r\n\t\t\tthis.maxDate = new Date(this.model.maxDataFim, 12 - 1, 31);\r\n\r\n // Auditor da própria coordenação\r\n this.auditorDataSource.data = ((res as IAuditorCoordenacaoModel[])\r\n ?.filter(a => a.coordenacao.id === this.model.tipoAuditoria?.coordenacao?.id))\r\n ?.map((item) => {\r\n const selecionarAuditor = this.model.auditoresSelecionados?.find(a => a?.auditorId === item?.auditorId);\r\n if(selecionarAuditor?.auditorId) item.selecionado = true;\r\n return item\r\n })\r\n\t\t\tthis.auditorDataSource.paginator = this.tableOnePaginator;\r\n\t\t\tthis.auditorDataSource.sort = this.tabela2;\r\n this.auditorSemDados = this.auditorDataSource.data.length === 0;\r\n // Fim auditor própria coordenacão\r\n\r\n // Auditor de outra coordenação\r\n this.auditorOutraCoordenacaoDataSource.data = (res as IAuditorCoordenacaoModel[])\r\n ?.filter(a => a.coordenacao.id !== this.model.tipoAuditoria?.coordenacao?.id)\r\n ?.map((item) => {\r\n const selecionarAuditor = this.model.auditoresSelecionados?.find(a => a?.auditorId === item?.auditorId);\r\n if(selecionarAuditor?.auditorId) item.selecionado = true;\r\n return item\r\n })\r\n this.auditorOutraCoordenacaoDataSource.paginator = this.tableTwoPaginator;\r\n this.auditorOutraCoordenacaoDataSource.sort = this.tabela1;\r\n this.auditorOutraCoordenacaoSemDados = this.auditorOutraCoordenacaoDataSource.data.length === 0;\r\n // Fim auditor outra coordenação\r\n\t\t});\r\n\t}\r\n\r\n\tsetDataObrigatoria() {}\r\n\r\n public dataValida(): boolean {\r\n if (new Date(this.model.dataFim) >= new Date(this.model.dataInicio)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n\tconcatUg(a: string, b: string) {\r\n\t\tif (a && b) {\r\n\t\t\treturn a + \" - \" + b;\r\n\t\t}\r\n\t\treturn \"\";\r\n\t}\r\n\r\n\tselecionarAuditores(a: IAuditorModel[] | IAuditorCoordenacaoModel[]) {\r\n\t\ta.forEach((item) => {\r\n\t\t\tif (item.selecionado === true) {\r\n\t\t\t\tthis.novaListaAuditores.push(item);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tconcluir() {\r\n\t\tthis.selecionarAuditores(this.auditorDataSource.data);\r\n\t\tthis.selecionarAuditores(this.auditorOutraCoordenacaoDataSource.data);\r\n\r\n\t\tthis.model.auditoresSelecionados = this.novaListaAuditores;\r\n\r\n if(!this.dataValida()) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'A data fim não pode ser maior que a data inicio',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n } else if (this.model.auditoresSelecionados.length === 0) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: 'Selecione ao menos 1 auditor',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n } else {\r\n this.dialogRef.close(this.model);\r\n return;\r\n }\r\n\r\n\t}\r\n\r\n\tcancelar() {\r\n\t\tthis.dialogRef.close(false);\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n

Alocar Equipe

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n A data inicio não pode ser maior que a data fim\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n A data fim não pode ser menor que a data inicio\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n Auditores da {{ model.tipoAuditoria?.coordenacao?.nome }}\r\n \r\n {{ element.nomeAuditor }}\r\n
\r\n
\r\n Nenhum Auditor cadastrado\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n Auditores de outras Coordenações\r\n \r\n {{ element.nomeAuditor }}\r\n
\r\n
\r\n Nenhuma Auditor cadastrado\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-button',\r\n templateUrl: './app-button.component.html',\r\n styleUrls: ['./app-button.component.scss'],\r\n})\r\nexport class AppButtonComponent implements OnInit {\r\n @Input() type = 'button';\r\n @Input() block = false;\r\n @Input() color = 'primary';\r\n @Input() text = '';\r\n @Input() disabled = false;\r\n @Input() loading = false;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.disabled = this.disabled || this.loading;\r\n }\r\n}\r\n","\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport {\r\n\tMatDialog,\r\n\tMatDialogConfig,\r\n\tMatDialogRef,\r\n} from \"@angular/material/dialog\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { BsLocaleService } from \"ngx-bootstrap/datepicker\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IBaseModel } from \"src/app/models/base.model\";\r\nimport { IPendenciasModel } from \"src/app/models/pendencias.model\";\r\nimport Swal from \"sweetalert2\";\r\nimport { LookupModalComponent } from \"../lookup-modal/lookup-modal.component\";\r\nimport { LookupMultiselectModalComponent } from \"../lookup-multiselect-modal/lookup-multiselect-modal.component\";\r\n\r\n@Component({\r\n\tselector: \"app-base-form\",\r\n\ttemplate: ``,\r\n\tstyleUrls: ['./base-form.component.scss'],\r\n})\r\nexport class BaseFormComponent implements OnInit {\r\n\tpublic id: number;\r\n\tpublic novoRegistro = true;\r\n\tpublic visualizacao = true;\r\n\tpublic submit = false;\r\n\tpublic visualizar = false;\r\n\tpublic prefixo = \"novo\";\r\n\tpublic titulo: string;\r\n\tpublic responder = false;\r\n\tpublic aba: number = 0;\r\n\r\n\tconstructor(\r\n\t\tpublic route: ActivatedRoute,\r\n\t\tpublic toastr: ToastrService,\r\n\t\tpublic router: Router,\r\n\t\tpublic localeService: BsLocaleService,\r\n\t\tpublic matDialog: MatDialog\r\n\t) {\r\n\t\tthis.localeService.use(\"pt-br\");\r\n\t\tconst visualizacao = this.route.snapshot.routeConfig?.data[\"visualizacao\"];\r\n\t\tconst id = this.route.snapshot.paramMap.get(\"id\");\r\n\t\tconst path = this.route.snapshot.url.pop()?.toString();\r\n\t\tif (id) {\r\n\t\t\tthis.id = parseInt(id, 10);\r\n\t\t\tthis.novoRegistro = false;\r\n\t\t}\r\n\r\n\t\t// TODO REMOVER\r\n\t\tif (visualizacao) {\r\n\t\t\tthis.visualizacao = visualizacao;\r\n\t\t}\r\n\r\n\t\tif (path?.includes(\"edicao\")) {\r\n\t\t\tthis.prefixo = \"edicao\";\r\n\t\t}\r\n\t\tif (path?.includes(\"visualizar\")) {\r\n\t\t\tthis.prefixo = \"visualizar\";\r\n\t\t\tthis.visualizar = true;\r\n\t\t}\r\n\t}\r\n\r\n\tngOnInit(): void { }\r\n\r\n\tpublic montarMensagensValidacao(model: IBaseModel) {\r\n\t\tlet validacaoTexto = \"\";\r\n\r\n\t\tif (model.resultadoValidacao && model.resultadoValidacao.length > 0) {\r\n\t\t\tvalidacaoTexto = \"\";\r\n\t\t\tfor (const val of model.resultadoValidacao) {\r\n\t\t\t\tvalidacaoTexto += ` • ${val.errorMessage} `;\r\n\r\n\t\t\t\t// validacaoTexto +=\r\n\t\t\t\t// \tvalidacaoTexto === \"\"\r\n\t\t\t\t// \t\t? `• ${val.errorMessage}`\r\n\t\t\t\t// \t\t: `
• ${val.errorMessage}`;\r\n\t\t\t}\r\n\t\t} else if (model.mensagem?.descricao) {\r\n\t\t\tvalidacaoTexto = ' ' + model.mensagem.descricao;\r\n\t\t}\r\n\r\n\t\treturn validacaoTexto;\r\n\t}\r\n\r\n\tpublic exibirMensagemAlerta(mensagem: string, html: boolean = false, titulo: string = \"\") {\r\n\t\tSwal.fire({\r\n\t\t\ttoast: true,\r\n\t\t\tposition: \"top-end\",\r\n\t\t\ticon: \"warning\",\r\n\t\t\thtml: mensagem,\r\n\t\t\tshowConfirmButton: false,\r\n\t\t\tshowCloseButton: true,\r\n\t\t\ttitle: titulo,\r\n\t\t});\r\n\t}\r\n\r\n\tpublic exibirMensagemSucesso(mensagem: string) {\r\n\t\tSwal.fire({\r\n\t\t\ttoast: true,\r\n\t\t\tposition: \"top-end\",\r\n\t\t\ticon: \"success\",\r\n\t\t\ttext: mensagem,\r\n\t\t\tshowConfirmButton: false,\r\n\t\t\ttimer: 5000,\r\n\t\t\ttimerProgressBar: true,\r\n\t\t});\r\n\t}\r\n\r\n\tpublic exibirMensagemErro(mensagem: string, html: boolean = false) {\r\n\t\tSwal.fire({\r\n\t\t\ttoast: true,\r\n\t\t\tposition: \"top-end\",\r\n\t\t\ticon: \"error\",\r\n\t\t\thtml: mensagem,\r\n\t\t\tshowConfirmButton: false,\r\n\t\t\tshowCloseButton: true,\r\n\t\t});\r\n\t}\r\n\r\n\tpublic exibirModal(\r\n\t\ttitulo: string,\r\n\t\tdados: any,\r\n\t\texibirId = true,\r\n\t\tcustomizeColumns = null,\r\n\t\tcustomFilterPredicate = null,\r\n\t\tpageSizeOptions = null\r\n\t): MatDialogRef {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component\";\r\n\t\tdialogConfig.width = \"650px\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = {\r\n\t\t\ttitulo,\r\n\t\t\tdados,\r\n\t\t\texibirId,\r\n\t\t\tcustomizeColumns,\r\n\t\t\tcustomFilterPredicate,\r\n\t\t\tpageSizeOptions\r\n\t\t};\r\n\t\treturn this.matDialog.open(LookupModalComponent, dialogConfig);\r\n\t}\r\n\r\n\tpublic exibirModalMultiselect(\r\n\t\ttitulo: string,\r\n\t\tdados: any,\r\n\t\tbotaoOk = \"Selecionar\",\r\n\t\texibirId = true\r\n\t): MatDialogRef {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component\";\r\n\t\tdialogConfig.width = \"650px\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = { titulo, dados, botaoOk, exibirId: false };\r\n\t\treturn this.matDialog.open(\r\n\t\t\tLookupMultiselectModalComponent,\r\n\t\t\tdialogConfig\r\n\t\t);\r\n\t}\r\n\r\n\tpublic showPendencias(pendencias: IPendenciasModel[]) {\r\n\t\tconst list = pendencias?.map(\r\n\t\t\t(pendencia) =>\r\n\t\t\t\t`
${pendencia.grupo}: ${pendencia.descricao}
`\r\n\t\t);\r\n\t\tif (list && list.length > 0) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttoast: true,\r\n\t\t\t\tposition: \"top-end\",\r\n\t\t\t\ticon: \"warning\",\r\n\t\t\t\thtml: list.join(\"\"),\r\n\t\t\t\tshowConfirmButton: false,\r\n\t\t\t\tshowCloseButton: true,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tpublic exibirMensagemPadrao(retorno: IBaseModel) {\r\n\t\tif (retorno.sucesso) {\r\n\t\t\tthis.exibirMensagemSucesso(retorno.mensagem.descricao);\r\n\t\t} else {\r\n\t\t\tthis.exibirMensagemErro(retorno.mensagem.descricao);\r\n\t\t}\r\n\t}\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { IPermissaoModel } from 'src/app/models/permissao.model';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-base-list',\r\n template: ``\r\n})\r\nexport class BaseListComponent implements OnInit {\r\n\r\n public permissoes: IPermissaoModel;\r\n \r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public exibirMensagemAlerta(mensagem: string, html: boolean = false){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: html ? '' : mensagem,\r\n html: html ? mensagem : '',\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n }\r\n\r\n public exibirMensagemSucesso(mensagem: string){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: mensagem,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n\r\n public exibirMensagemErro(mensagem: string){\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: mensagem,\r\n showConfirmButton: false,\r\n showCloseButton: true,\r\n });\r\n }\r\n\r\n}\r\n","import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { Component, Input, OnInit, Output, AfterViewInit, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IAvaliacaoRelatoriaModel } from 'src/app/models/avaliacao-relatoria-model';\r\nimport { IRelatoriaCapituloModel } from 'src/app/models/relatoria-capitulo.model';\r\nimport { IRelatoriaModel } from 'src/app/models/relatoria.model';\r\nimport { RelatoriaCapituloService } from 'src/app/services/relatoria-capitulo.service';\r\nimport { RelatoriaService } from 'src/app/services/relatoria.service';\r\nimport Swal from 'sweetalert2';\r\nimport { Location } from '@angular/common';\r\nimport { BaseFormComponent } from '../base-form/base-form.component';\r\nimport { ModalHistoricoRelatoriaComponent } from './modal-historico-relatoria/modal-historico-relatoria.component';\r\nimport { ModalRelatoriaCapituloComponent } from './modal-relatoria-capitulo/modal-relatoria-capitulo.component';\r\nimport { angularEditorConfig } from './../../util/angularEditorConfig';\r\n\r\n@Component({\r\n selector: 'app-capitulo',\r\n templateUrl: './capitulo.component.html',\r\n styleUrls: ['./capitulo.component.scss'],\r\n})\r\nexport class CapituloComponent extends BaseFormComponent implements OnInit {\r\n\r\n @Input() relatoriaDados: IRelatoriaCapituloModel[];\r\n @Input() somenteLeitura: Boolean;\r\n @Input() public model: any = {};\r\n @Input() id: number;\r\n @Input() dadosObtidos: IRelatoriaModel;\r\n @Input() obterRelatorio: () => void;\r\n @Input() obterDados: () => void;\r\n @Input() public impressao: boolean;\r\n @Input() public reprovado: boolean;\r\n @Input() public homologado: boolean;\r\n @Input() public emAprovacao: boolean;\r\n @Input() tipoTrabalhoRef: number;\r\n relatoriaDadosEspelho: any;\r\n\r\n\r\n public situacao = {} as IAvaliacaoRelatoriaModel;\r\n tipoTrabalho;\r\n public keywords = ['Período', 'Indicador', 'UGs', 'Coordenações', 'Capacidade de trabalho', 'Auditores da Coordenação', 'Distribuição Contempladas', 'Ranking de Distribuição'] as string[];\r\n public keywordsPaaPadrao = ['Período do PEAC', 'Indicadores do PAAC corrente', 'UGs do PAAC corrente', 'Coordenações do PAAC corrente', 'Capacidade de trabalho do PAAC corrente',\r\n 'Auditores da Coordenação do PAAC corrente', 'Distribuição Contempladas do PEAC', 'Ranking de Distribuição do PAAC corrente', 'Indicadores e Critérios do PAAC corrente',\r\n 'Painel de Distribuição do PAAC corrente', 'Auditorias inativas no Painel de Distribuição com respectiva justificativa', 'Auditorias por Tipo e Coordenação e UGs',\r\n 'Alocação da Equipe', 'Calendário do PAAC corrente', 'Capacidade total PAAC', 'Capacidade total PEAC'] as string[];\r\n public keywordsOpa = ['Tipo de auditoria', 'Origem', 'Unidade auditada', 'Objeto', 'Período', 'Coordenador', 'Auditores do OPA', 'Subtipo de Auditoria do OPA', 'Tipo de Ênfase',\r\n 'Data da Apresentação do Planejamento', 'Quantidade de dias Úteis', 'Data prevista Início', 'Data prevista Fim', 'Data Início de Realização', 'Data Fim de Realização', 'Número da Opa'] as string[];\r\n public keywordsPlanejamento = ['Auditores do Planejamento', 'Subtipo de Auditoria do Planejamento', 'UGs do Planejamento'] as string[];\r\n public keywordsOsa = ['Auditores do OSA', 'Subtipo de Auditoria do OSA'] as string[];\r\n\r\n public keywordsPaa = this.keywordsPaaPadrao;\r\n public keywordsPaaEspecial = this.keywordsPaaPadrao;\r\n public novaVersao = false;\r\n public config: AngularEditorConfig = angularEditorConfig('Descreva o capitulo');\r\n public habilitarEdicaoRelatoria = {\r\n index: null,\r\n indexSubChapter: null,\r\n active: false,\r\n activeAll: false,\r\n atctiveCapitulo: false,\r\n };\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private _location: Location,\r\n public matDialog: MatDialog,\r\n private relatoriaService: RelatoriaService,\r\n private relatoriaCapituloService: RelatoriaCapituloService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n if(!this.tipoTrabalhoRef || this.tipoTrabalhoRef == 0){\r\n const path = this.route.routeConfig.path?.toString();\r\n if (path?.includes('pea')) {\r\n this.tipoTrabalho = 1;\r\n }\r\n else if (path?.includes('paa')) {\r\n this.tipoTrabalho = 2;\r\n }\r\n else if (path?.includes('opa')) {\r\n this.tipoTrabalho = 3;\r\n }\r\n else if (path?.includes('osa')) {\r\n this.tipoTrabalho = 4;\r\n }\r\n else if (path?.includes('planejamento')) {\r\n this.tipoTrabalho = 7;\r\n }\r\n }else{\r\n this.tipoTrabalho = this.tipoTrabalhoRef;\r\n }\r\n \r\n if(this.impressao){\r\n this.habilitarEdicaoRelatoria.activeAll = false;\r\n }\r\n if (this.router.url.includes(\"nova-versao\")) {\r\n this.novaVersao = true\r\n }\r\n }\r\n\r\n public habilitarEdicaoCapituloRelatoria(index?: (number | null), status?: (boolean | null), indexSubChapter?: (number | null), activeAll?: boolean, editarCapitulo?: boolean) {\r\n if (activeAll) {\r\n return this.habilitarEdicaoRelatoria.activeAll = true;\r\n }\r\n\r\n let capitulo = this.relatoriaDados.find((_, indexCapitulo) => indexCapitulo === index);\r\n\r\n if (editarCapitulo == false) {\r\n capitulo.active = false;\r\n\r\n this.relatoriaService.obterPorTipoTrabalho(this.id, this.tipoTrabalho).then(() => {\r\n this.relatoriaService.reltoriaCurrent.subscribe(relatoriaDados => {\r\n this.relatoriaDadosEspelho = relatoriaDados;\r\n this.dadosObtidos = relatoriaDados;\r\n });\r\n });\r\n\r\n capitulo = this.relatoriaDadosEspelho.find((_, indexCapitulo) => indexCapitulo === index);\r\n this.relatoriaDados = this.relatoriaDadosEspelho;\r\n this.mudarAba(5);\r\n }\r\n\r\n if ((!indexSubChapter && indexSubChapter < 0) || editarCapitulo) {\r\n capitulo.active = status;\r\n }\r\n else {\r\n const subCapitulo = capitulo.subRelatoriaCapitulos.find((_, indexSubCapitulo) => indexSubCapitulo === indexSubChapter);\r\n subCapitulo.active = status;\r\n }\r\n }\r\n\r\n public mudarAba(ind: number) {\r\n this.aba = ind;\r\n }\r\n\r\n public habilitarTodasEdicoesCapituloRelatoria() {\r\n this.relatoriaDados.forEach((capitulo, index) => {\r\n this.habilitarEdicaoCapituloRelatoria(index, true)\r\n capitulo.subRelatoriaCapitulos.forEach((subCapitulo, indexSub) => {\r\n this.habilitarEdicaoCapituloRelatoria(index, true, indexSub)\r\n })\r\n })\r\n }\r\n\r\n\r\n public modalRelatoriaCapitulo(element?: IRelatoriaCapituloModel, subCapitulo?: boolean) {\r\n try {\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-relatoria-capitulo';\r\n dialogConfig.width = '1200px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n element,\r\n subCapitulo,\r\n id: this.id,\r\n tipoTrabalho: this.tipoTrabalho\r\n };\r\n const modal = this.matDialog.open(ModalRelatoriaCapituloComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n this.relatoriaService.reltoriaCurrent.subscribe(relatoriaDados => {\r\n this.relatoriaDados = relatoriaDados.relatoriasCapitulos\r\n this.dadosObtidos = relatoriaDados;\r\n })\r\n });\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public async imprimir() {\r\n this.router.navigate([`imprimir-relatoria/${this.id}/tipo-trabalho/${this.tipoTrabalho}`]);\r\n this.impressao = true\r\n }\r\n\r\n public modalHistoricoRelatoria(element: IRelatoriaCapituloModel) {\r\n try {\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-historico-relatoria';\r\n dialogConfig.width = '800px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n capitulo: element\r\n };\r\n const modal = this.matDialog.open(ModalHistoricoRelatoriaComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n }\r\n });\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public excluirRelatoria() {\r\n\r\n Swal.fire({\r\n title: 'Excluir Relatoria',\r\n text: 'Tem certeza que deseja excluir essa Relatoria?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(res => {\r\n\r\n if (res.value) {\r\n\r\n this.relatoriaService.excluirRelatoria(this.dadosObtidos.id).then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.obterDados();\r\n this.relatoriaService.reltoriaCurrent.subscribe(relatoriaDados => {\r\n this.relatoriaDados = relatoriaDados.relatoriasCapitulos\r\n this.dadosObtidos = relatoriaDados;\r\n })\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public excluirCapitulo(itemId: number, capituloFixo: boolean, isCapitulo: boolean) {\r\n if (capituloFixo) {\r\n this.exibirMensagemErro('Capítulo obrigatório. Não é permitida a sua exclusão.');\r\n return;\r\n }\r\n \r\n if(isCapitulo && this.dadosObtidos.relatoriasCapitulos.length == 1){\r\n this.exibirMensagemErro(\"Ação não permitida pois é necessário ao menos 1 capítulo.\");\r\n return;\r\n }\r\n\r\n\r\n Swal.fire({\r\n title: 'Excluir',\r\n text: 'Tem certeza que deseja excluir?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(res => {\r\n if (res.value) {\r\n this.relatoriaCapituloService.excluir(this.id, itemId, this.tipoTrabalho)\r\n .then(res => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n })\r\n\r\n }\r\n\r\n public reativarCapitulo(itemId: number) {\r\n Swal.fire({\r\n title: 'Reativar',\r\n text: 'Tem certeza que deseja reativar?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(res => {\r\n if (res.value) {\r\n this.relatoriaCapituloService.reativar(this.id, itemId, this.tipoTrabalho)\r\n .then(res => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n })\r\n\r\n }\r\n\r\n public avaliarExclusao(id: number, status: boolean) {\r\n if (this.model?.situacao?.codigo !== 1) return;\r\n\r\n var name: string = \"\";\r\n if (status) {\r\n this.situacao = { situacao: { codigo: 1 } } as IAvaliacaoRelatoriaModel;\r\n name = 'confirmar'\r\n } else {\r\n this.situacao = { situacao: { codigo: 2 } } as IAvaliacaoRelatoriaModel;\r\n name = 'rejeitar'\r\n }\r\n Swal.fire({\r\n title: 'Avaliar exclusão do capítulo!',\r\n text: 'Tem certeza que deseja ' + name + ' a exclusão desse capítulo?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(res => {\r\n if (res.value) {\r\n this.relatoriaCapituloService.avaliarExclusao(id, this.situacao, this.tipoTrabalho, this.id).then(res => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n })\r\n }\r\n\r\n public async salvarOne(itemCapitulo?: IRelatoriaCapituloModel, i?: number, isubcapitulo?: number, salvarTodos?: boolean) {\r\n if (!salvarTodos) {\r\n\r\n Swal.fire({\r\n title: isubcapitulo == undefined ? 'Salvar o capítulo?' : 'Salvar o sub-capítulo?',\r\n text: isubcapitulo == undefined ? 'Deseja realmente alterar este capítulo?' : 'Deseja realmente alterar este sub-capítulo?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(res => {\r\n if (res.value) {\r\n this.relatoriaCapituloService.salvar(itemCapitulo, this.tipoTrabalho, this.id)\r\n .then(res => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.obterRelatorio();\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.obterDados();\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n })\r\n }\r\n else {\r\n const res = await this.relatoriaCapituloService.salvar(itemCapitulo, this.tipoTrabalho);\r\n try {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n\r\n if (!salvarTodos) {\r\n this.relatoriaService.obterPorTipoTrabalho(this.id, this.tipoTrabalho).then(() => {\r\n this.relatoriaService.reltoriaCurrent.subscribe(relatoriaDados => {\r\n this.relatoriaDados = relatoriaDados.relatoriasCapitulos;\r\n this.dadosObtidos = relatoriaDados;\r\n });\r\n });\r\n }\r\n\r\n } catch (error) {\r\n this.exibirMensagemErro(error.mensagem.descricao);\r\n }\r\n finally {\r\n this.habilitarEdicaoRelatoria.activeAll = false;\r\n this.habilitarEdicaoCapituloRelatoria(i, false, isubcapitulo, null, false);\r\n this.habilitarEdicaoCapituloRelatoria(i, false, null, null, false);\r\n }\r\n }\r\n }\r\n\r\n async onDrop(event: CdkDragDrop) {\r\n if (this.model?.situacao?.codigo !== 1) return;\r\n\r\n moveItemInArray(this.relatoriaDados, event.previousIndex, event.currentIndex);\r\n const capitulos = this.relatoriaDados.filter(_ => !_.relatoriaCapituloPaiId && _.status.codigo != 4);\r\n capitulos.forEach((element, idx) => {\r\n element.numero = idx + 1;\r\n const subCapitulos = this.relatoriaDados.filter(_ => _.relatoriaCapituloPaiId === element.id && _.status.codigo != 4);\r\n subCapitulos.forEach((subElement, subIdx) => {\r\n subElement.numero = subIdx + 1;\r\n });\r\n });\r\n await this.salvarTodos();\r\n }\r\n\r\n async onSubDrop(idCapitulo: number, event: CdkDragDrop) {\r\n if (this.model?.situacao?.codigo !== 1) return;\r\n\r\n const capitulo = this.relatoriaDados.find(_ => _.id === idCapitulo);\r\n moveItemInArray(this.relatoriaDados.find(_ => _.id === idCapitulo).subRelatoriaCapitulos, event.previousIndex, event.currentIndex);\r\n capitulo.subRelatoriaCapitulos.filter(_ => _.status.codigo != 4).forEach((element, idx) => {\r\n element.numero = idx + 1;\r\n });\r\n await this.salvarTodos();\r\n }\r\n\r\n public async salvarTodos() {\r\n const tasks = [];\r\n\r\n this.relatoriaDados.filter(_ => _.status.codigo !== 3 && _.status.codigo !== 4).forEach((item) => {\r\n tasks.push(this.salvarOne(item, null, null, true));\r\n item?.subRelatoriaCapitulos.filter(_ => _.status.codigo !== 3 && _.status.codigo !== 4).forEach(subItem => {\r\n tasks.push(this.salvarOne(subItem, null, null, true));\r\n });\r\n });\r\n\r\n Promise.all(tasks)\r\n .finally(() =>\r\n this.relatoriaService.obterPorTipoTrabalho(this.id, this.tipoTrabalho).then(() => {\r\n this.relatoriaService.reltoriaCurrent.subscribe(relatoriaDados => {\r\n this.relatoriaDados = relatoriaDados.relatoriasCapitulos;\r\n this.dadosObtidos = relatoriaDados;\r\n });\r\n })\r\n );\r\n }\r\n\r\n public mostrarBotaoEditar() {\r\n return !this.impressao\r\n && !this.somenteLeitura\r\n && (this.dadosObtidos == undefined || this.dadosObtidos?.tipoTrabalhoStatus?.codigo === 1 || this.dadosObtidos.tipoTrabalho.codigo === 4);\r\n }\r\n\r\n public mostrarBotaoExcluir() {\r\n return !this.impressao\r\n && !this.somenteLeitura\r\n && (this.dadosObtidos == undefined || this.dadosObtidos?.tipoTrabalhoStatus?.codigo === 1);\r\n }\r\n\r\n \r\n addTag(keyword: string, position: number) {\r\n //this.atualizarModel(this.form.value);\r\n this.model.conteudo += `{{${keyword}}}`;\r\n //this.form.patchValue(this.model);\r\n this.relatoriaDados[position].conteudo += `{{${keyword}}}`;\r\n }\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\tEditar\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\tExcluir\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\tImprimir\r\n\t\t\r\n\t
\r\n\r\n\t\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {{ itemRelatoria.numero }}.  \r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{{ itemRelatoria.nome }}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tExcluído (aguardando aceite)\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tExcluído\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tEditar capítulo\r\n\t\t\t\t\t\t\t\tExcluir capítulo\r\n\t\t\t\t\t\t\t\tReativar\r\n\t\t\t\t\t\t\t\tIncluir capítulo\r\n\t\t\t\t\t\t\t\tIncluir subcapitulos\r\n\t\t\t\t\t\t\t\tHistórico\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tSalvar\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tCancelar\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{{ itemRelatoria.numero }}.{{\r\n\t\t\t\t\t\t\t\t\t\tsubcapitulo.numero\r\n\t\t\t\t\t\t\t\t\t}}. \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t{{ subcapitulo.nome }}\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tExcluído (aguardando aceite)\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tExcluído\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tEditar\r\n\t\t\t\t\t\t\t\t\tExcluir\r\n\t\t\t\t\t\t\t\t\tReativar\r\n\t\t\t\t\t\t\t\t\tIncluir subcapitulos\r\n\t\t\t\t\t\t\t\t\tHistórico\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tSalvar\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tCancelar\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\tSalvar relatoria\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\tCancelar Edição\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\r\n\r\n","import { AfterViewInit, Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport Inputmask from 'inputmask';\r\nimport Swal from 'sweetalert2';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { ModalVisualizarHistoricoComponent } from './modal-visualizar-historico/modal-visualizar-historico.component';\r\nimport { IHistoricoRelatoriaCapituloModel } from 'src/app/models/historico-relatoria-capitulo.model';\r\nimport { RelatoriaCapituloService } from 'src/app/services/relatoria-capitulo.service';\r\n\r\n@Component({\r\n selector: 'app-modal-historico-relatoria',\r\n templateUrl: './modal-historico-relatoria.component.html',\r\n styleUrls: ['./modal-historico-relatoria.component.scss'],\r\n})\r\n\r\nexport class ModalHistoricoRelatoriaComponent\r\n implements OnInit, AfterViewInit {\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n public relatoriaCapituloService: RelatoriaCapituloService,\r\n\r\n @Inject(MAT_DIALOG_DATA) public data) {\r\n }\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n }\r\n\r\n public modalVisualizarHistorico(element: IHistoricoRelatoriaCapituloModel) {\r\n\r\n try {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-visualizar-historico';\r\n dialogConfig.width = '800px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n historico: element,\r\n };\r\n\r\n const modal = this.matDialog.open(ModalVisualizarHistoricoComponent, dialogConfig);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n }\r\n });\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n } \r\n }\r\n\r\n validarExibicao(element: IHistoricoRelatoriaCapituloModel): boolean{\r\n return element.status.descricao != 'Inclusão';\r\n }\r\n\r\n\r\n public fechar() {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","
\r\n \r\n
\r\n

Histórico

\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Capítulo/SubcapítuloRealizadoTipoRealizado porConsultar
0\" scope=\"row\">{{ data.capitulo.numeroPai }}.{{ data.capitulo.numero }}{{ data.capitulo.numero }}\r\n {{ element.dataAlteracao | date: \"dd/MM/yyyy\" }} às\r\n {{ element.dataAlteracao | date: \"HH:mm\" }}\r\n {{ element.status.descricao }}{{ element.usuario }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { AfterViewInit, Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport Inputmask from 'inputmask';\r\nimport { IRelatoriaModel } from 'src/app/models/relatoria.model';\r\nimport { IRelatoriaCapituloModel } from 'src/app/models/relatoria-capitulo.model';\r\nimport { IHistoricoRelatoriaCapituloModel } from 'src/app/models/historico-relatoria-capitulo.model';\r\n\r\n@Component({\r\n selector: 'app-modal-visualizar-historico',\r\n templateUrl: './modal-visualizar-historico.component.html',\r\n styleUrls: ['./modal-visualizar-historico.component.scss'],\r\n})\r\n\r\nexport class ModalVisualizarHistoricoComponent\r\n implements OnInit, AfterViewInit {\r\n [x: string]: any;\r\n public historico: IHistoricoRelatoriaCapituloModel = {} as IHistoricoRelatoriaCapituloModel;\r\n public modelRelatoria: IRelatoriaModel = {} as IRelatoriaModel;\r\n public model: IRelatoriaCapituloModel = {} as IRelatoriaCapituloModel;\r\n differences: any[] = [];\r\n public removido: string;\r\n public adicionado: string;\r\n public semAlteracao: string;\r\n public textoDestacado: string = '';\r\n public textoRemovido: string = '';\r\n public dataFormatada: string = '';\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n\r\n @Inject(MAT_DIALOG_DATA) public data) {\r\n this.historico = data.historico;\r\n }\r\n\r\n ngOnInit(): void {\r\n const minLength = Math.min(this.historico.conteudoAnterior.length, this.historico.conteudoAtual.length);\r\n let diffStartIndex = 0;\r\n while (diffStartIndex < minLength && this.historico.conteudoAnterior[diffStartIndex] === this.historico.conteudoAtual[diffStartIndex]) {\r\n diffStartIndex++;\r\n }\r\n\r\n let diffEndIndex = 0;\r\n while (\r\n diffEndIndex < minLength - diffStartIndex &&\r\n this.historico.conteudoAnterior[this.historico.conteudoAnterior.length - diffEndIndex - 1] === this.historico.conteudoAtual[this.historico.conteudoAtual.length - diffEndIndex - 1]\r\n ) {\r\n diffEndIndex++;\r\n }\r\n this.removido = this.historico.conteudoAnterior.substring(diffStartIndex, this.historico.conteudoAnterior.length - diffEndIndex);\r\n this.adicionado = this.historico.conteudoAtual.substring(diffStartIndex, this.historico.conteudoAtual.length - diffEndIndex);\r\n this.semAlteracao = this.historico.conteudoAtual.substring(0, diffStartIndex) + this.adicionado + this.historico.conteudoAtual.substring(this.historico.conteudoAtual.length - diffEndIndex);\r\n this.dataFormatada = this.getFormattedDate(this.historico.dataAlteracao);\r\n \r\n this.differences = [\r\n { value: this.removido, removido: true },\r\n { value: this.adicionado, adicionado: true },\r\n { value: this.semAlteracao, semAlteracao: true }\r\n ];\r\n }\r\n\r\n destacarAlteracoes() {\r\n let diffOutput = '';\r\n let startIndex = 0;\r\n\r\n // Encontra o índice onde a diferença ocorre\r\n for (let i = 0; i < this.historico.conteudoAnterior.length; i++) {\r\n if (this.historico.conteudoAnterior[i] !== this.historico.conteudoAtual[i]) {\r\n diffOutput += `${this.historico.conteudoAnterior.substring(startIndex, i)}`;\r\n diffOutput += `${this.historico.conteudoAtual.substring(i, i + 1)}`;\r\n startIndex = i + 1;\r\n }\r\n }\r\n\r\n // Adiciona o restante do texto que não sofreu alterações\r\n diffOutput += `${this.historico.conteudoAnterior.substring(startIndex)}`;\r\n\r\n this.textoDestacado = diffOutput != '' ? diffOutput : this.historico.conteudoAtual;\r\n }\r\n\r\n identificarRemocoes() {\r\n let removido = this.diffString(this.historico.conteudoAnterior, this.historico.conteudoAtual);\r\n this.textoRemovido = this.realcarRemocoes(removido);\r\n }\r\n\r\n // Algoritmo de diferença de strings (Exemplo simples)\r\n diffString(textoOriginal: string, textoAtual: string): string {\r\n let diffOutput = '';\r\n for (let i = 0; i < textoOriginal.length; i++) {\r\n if (textoOriginal[i] !== textoAtual[i]) {\r\n diffOutput += textoOriginal[i];\r\n }\r\n }\r\n return diffOutput;\r\n }\r\n\r\n realcarRemocoes(textoRemovido: string): string {\r\n return this.historico.conteudoAnterior.replace(\r\n new RegExp(`(${textoRemovido})`, 'g'),\r\n '$1'\r\n );\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n this.destacarAlteracoes();\r\n this.identificarRemocoes();\r\n }\r\n\r\n public getFormattedDate(data) {\r\n var date = new Date(data);\r\n var day = date.getDate();\r\n var month = date.getMonth() + 1;\r\n var year = date.getFullYear();\r\n var hour = date.getHours();\r\n var minutes = date.getMinutes();\r\n return day + '/' + month + '/' + year + ' às ' + hour + ':' + minutes;\r\n }\r\n\r\n public fechar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n\t
\r\n\r\n\t
\r\n\t\t

Capítulo/Subcapítulo

\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\r\n\t
\r\n\t\t\r\n\t
\r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { CapituloRelatorioService } from 'src/app/services/capitulo-relatorio.service';\r\nimport { TabelaDominioService } from 'src/app/services/tabela-dominio.service';\r\nimport { ModalCancelarComponent } from 'src/app/shared/components/modal-cancelar/modal-cancelar-component';\r\nimport { MatChipInputEvent } from '@angular/material/chips';\r\nimport { IRelatoriaCapituloModel } from 'src/app/models/relatoria-capitulo.model';\r\nimport { RelatoriaCapituloService } from 'src/app/services/relatoria-capitulo.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-relatoria-capitulo',\r\n templateUrl: './modal-relatoria-capitulo.component.html',\r\n styleUrls: ['./modal-relatoria-capitulo.component.scss'],\r\n})\r\nexport class ModalRelatoriaCapituloComponent implements OnInit {\r\n public keywords = ['Período', 'Indicador', 'UGs', 'Coordenações', 'Capacidade de trabalho', 'Auditores da Coordenação', 'Distribuição Contempladas', 'Ranking de Distribuição'] as string[];\r\n public keywordsPaaPadrao = ['Período do PEAC', 'Indicadores do PAAC corrente', 'UGs do PAAC corrente', 'Coordenações do PAAC corrente', 'Capacidade de trabalho do PAAC corrente',\r\n 'Auditores da Coordenação do PAAC corrente', 'Distribuição Contempladas do PEAC', 'Ranking de Distribuição do PAAC corrente', 'Indicadores e Critérios do PAAC corrente',\r\n 'Painel de Distribuição do PAAC corrente', 'Auditorias inativas no Painel de Distribuição com respectiva justificativa', 'Auditorias por Tipo e Coordenação e UGs',\r\n 'Alocação da Equipe', 'Calendário do PAAC corrente', 'Capacidade total PAAC', 'Capacidade total PEAC'] as string[];\r\n public keywordsOpa = ['Tipo de auditoria', 'Origem', 'Unidade auditada', 'Objeto', 'Período', 'Coordenador', 'Auditores do OPA', 'Subtipo de Auditoria do OPA', 'Tipo de Ênfase',\r\n 'Data da Apresentação do Planejamento', 'Quantidade de dias Úteis', 'Data prevista Início', 'Data prevista Fim', 'Data Início de Realização', 'Data Fim de Realização', 'Número da Opa'] as string[];\r\n public keywordsOpaSub = ['Tipo de auditoria', 'Origem', 'Unidade auditada', 'Objeto', 'Período', 'Coordenador', 'Auditores do OPA', 'Subtipo de Auditoria do OPA'] as string[];\r\n public keywordsPlanejamento = ['Auditores do Planejamento', 'Subtipo de Auditoria do Planejamento', 'UGs do Planejamento'] as string[];\r\n public keywordsOsa = ['Auditores do OSA', 'Subtipo de Auditoria do OSA'] as string[];\r\n public titulo;\r\n public keywordsPaa = this.keywordsPaaPadrao;\r\n public keywordsPaaEspecial = this.keywordsPaaPadrao;\r\n public model: IRelatoriaCapituloModel = {} as IRelatoriaCapituloModel;\r\n public subCapituloPodeInserirNaBase = false;\r\n public isFormValid: boolean = false; // Variável para controlar a habilitação do botão de envio\r\n\r\n public form = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n conteudo: new FormControl('', Validators.required),\r\n tags: new FormControl(null)\r\n });\r\n\r\n constructor(\r\n public route: ActivatedRoute,\r\n public toastr: ToastrService,\r\n public router: Router,\r\n public localeService: BsLocaleService,\r\n private tabelaDominioService: TabelaDominioService,\r\n private capituloRelatorioService: CapituloRelatorioService,\r\n private relatoriaCapituloService: RelatoriaCapituloService,\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n if (data.subCapitulo) {\r\n this.titulo = 'Subcapítulo';\r\n this.subCapituloPodeInserirNaBase = data.element?.capituloRelatorioId > 0;\r\n }\r\n else {\r\n this.titulo = 'Capítulo';\r\n }\r\n\r\n }\r\n\r\n config: AngularEditorConfig = {\r\n editable: true,\r\n spellcheck: true,\r\n sanitize: false,\r\n height: '15rem',\r\n minHeight: '5rem',\r\n placeholder: '',\r\n translate: 'yes',\r\n defaultParagraphSeparator: 'p',\r\n defaultFontName: 'Arial',\r\n toolbarHiddenButtons: [\r\n // ['bold']\r\n ],\r\n customClasses: [\r\n {\r\n name: 'quote',\r\n class: 'quote',\r\n },\r\n {\r\n name: 'redText',\r\n class: 'redText',\r\n },\r\n {\r\n name: 'titleText',\r\n class: 'titleText',\r\n tag: 'h1',\r\n },\r\n ],\r\n };\r\n\r\n async ngOnInit() {\r\n this.form.get('nome').valueChanges.subscribe(() => this.updateFormValidity());\r\n this.form.get('conteudo').valueChanges.subscribe(() => this.updateFormValidity());\r\n\r\n this.updateFormValidity(); // Certifique-se de que a validade do formulário seja atualizada inicialmente\r\n }\r\n\r\n private updateFormValidity() {\r\n this.isFormValid = this.form.controls['nome'].valid && this.form.controls['conteudo'].valid;\r\n }\r\n\r\n public concluir() {\r\n\r\n if (!this.isFormValid) {\r\n this.toastr.warning('Por favor, preencha todos os campos obrigatórios!', 'Atenção');\r\n return;\r\n }\r\n \r\n if (!this.data) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: 'Capítulo/Sub-Capítulo de referência não encontrado.',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n\r\n if (this.titulo == 'Subcapítulo' && !this.subCapituloPodeInserirNaBase) {\r\n this.salvar(false);\r\n }\r\n if(this.titulo == 'Subcapítulo'){\r\n Swal.fire({\r\n title: 'Inclusão de SubCapítulo!',\r\n text: 'Deseja incluir o SubCapítulo no modelo padrão do relatório? \\nAo confirmar, sua sugestão será enviada ao usuário responsável para avaliação.',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(res => {\r\n this.salvar(res.value);\r\n })\r\n }\r\n else {\r\n Swal.fire({\r\n title: 'Inclusão de capítulo!',\r\n text: 'Deseja incluir o Capítulo no modelo padrão do relatório? \\nAo confirmar, sua sugestão será enviada ao usuário responsável para avaliação.',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n }).then(res => {\r\n this.salvar(res.value);\r\n })\r\n }\r\n }\r\n\r\n public salvar(incluirNaBase) {\r\n this.atualizarModel(this.form.value);\r\n const eSubCapitulo = this.data?.element?.relatoriaCapituloPaiId > 0;\r\n\r\n const newCapitulo = {\r\n conteudo: this.model.conteudo,\r\n nome: this.model.nome,\r\n numero: this.data.element.numero + 1,\r\n relatoriaId: this.data?.element.relatoriaId ?? null,\r\n } as IRelatoriaCapituloModel;\r\n\r\n if (this.data.subCapitulo) {\r\n newCapitulo.relatoriaCapituloPaiId = eSubCapitulo ? this.data.element.relatoriaCapituloPaiId : this.data.element.id;\r\n newCapitulo.relatoriaId = null;\r\n if (this.data.element.relatoriaCapituloPaiId) {\r\n newCapitulo.numero = (this.data.element?.numero ?? 0) + 1;\r\n } else {\r\n newCapitulo.numero = (this.data.element?.subRelatoriaCapitulos[this.data.element.subRelatoriaCapitulos.length - 1]?.numero ?? 0) + 1;\r\n }\r\n }\r\n\r\n if (incluirNaBase) {\r\n newCapitulo.novoCapituloModeloRelatorio = true;\r\n }\r\n\r\n this.relatoriaCapituloService.salvar(newCapitulo, this.data.tipoTrabalho, this.data.id)\r\n .then(res => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.dialogRef.close(this.model);\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }).catch(err => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }\r\n\r\n public atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n public cancelar() {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.data = { interno: true };\r\n this.matDialog.open(ModalCancelarComponent, dialogConfig).afterClosed();\r\n }\r\n\r\n addKeywordFromInput(event: MatChipInputEvent) {\r\n if (event.value) {\r\n if (this.keywords.includes(event.value)) {\r\n this.toastr.error('Tag já adicionada ao capítulo.', 'Atenção');\r\n } else {\r\n this.keywords.push(event.value);\r\n }\r\n }\r\n }\r\n\r\n addTag(keyword: string) {\r\n this.atualizarModel(this.form.value);\r\n this.model.conteudo += `{{${keyword}}}`;\r\n this.form.patchValue(this.model);\r\n }\r\n}\r\n","
\r\n \r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Campo obrigatório\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{keyword}}\r\n \r\n \r\n \r\n \r\n {{keyword}}\r\n \r\n \r\n \r\n \r\n {{keyword}}\r\n \r\n \r\n \r\n \r\n {{keyword}}\r\n \r\n \r\n \r\n \r\n {{keyword}}\r\n \r\n \r\n \r\n \r\n {{keyword}}\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n Cancelar\r\n \r\n
\r\n \r\n \r\n \r\n\r\n","import { toFormatValue, toRemoveCharacters } from 'src/app/shared/util/toFormatValue';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { DateHelper } from 'src/app/core/helpers/date.helper';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ICustoRecursoPlanejamentoModel } from 'src/app/models/custo-recurso-planejamento.model';\r\nimport { CustoRecursoPlanejamentoService } from 'src/app/services/custo-recurso-planejamento.service';\r\nimport { CustoRecursoService } from 'src/app/services/custo-recurso.service';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from '../base-form/base-form.component';\r\nimport { ModalCustoRecursoPlanejamentoComponent } from './modal-custo-recurso-planejamento/modal-custo-recurso-planejamento.component';\r\n\r\n@Component({\r\n selector: 'app-custos-recursos',\r\n templateUrl: './custos-recursos.component.html',\r\n styleUrls: ['./custos-recursos.component.scss']\r\n})\r\nexport class CustosRecursosComponent extends BaseFormComponent implements OnInit {\r\n public modelCustoRecursoPlanejamento: ICustoRecursoPlanejamentoModel = {} as ICustoRecursoPlanejamentoModel;\r\n public custoRecursoColunas = ['selecao', 'nome', 'valorUnitario', 'quantidade', 'valorTotal'];\r\n public custoRecursoPlanejamentoDataSource = new MatTableDataSource([]);\r\n public custoRecursoPlanejamentoSemDados = true;\r\n public searchAtivo = true;\r\n public submit: boolean;\r\n public tipoTrabalho: string;\r\n @Input() visualizar: boolean;\r\n @Input() hiddenEdicao: boolean;\r\n\r\n public formCustoRecurso = new FormGroup({\r\n nome: new FormControl('', Validators.required),\r\n valorUnitario: new FormControl('', Validators.required),\r\n quantidade: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private custoRecursoService: CustoRecursoService,\r\n private custoRecursoPlanejamentoService: CustoRecursoPlanejamentoService,\r\n public matDialog: MatDialog,\r\n private dateHelper: DateHelper,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.router.url.includes(\"planejamento\")) {\r\n this.tipoTrabalho = 'planejamento';\r\n }\r\n if (this.router.url.includes(\"osa\")) {\r\n this.tipoTrabalho = 'osa';\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.obterCustoRecurso()\r\n }\r\n\r\n public async obterCustoRecurso() {\r\n try {\r\n this.custoRecursoPlanejamentoService.obterPorId(this.id, this.tipoTrabalho).then((res) => {\r\n if (res.sucesso) {\r\n this.custoRecursoPlanejamentoDataSource = new MatTableDataSource\r\n (\r\n res.dados\r\n );\r\n this.custoRecursoPlanejamentoDataSource._updateChangeSubscription();\r\n this.modelCustoRecursoPlanejamento = {} as ICustoRecursoPlanejamentoModel;\r\n this.custoRecursoPlanejamentoSemDados = res.dados.length != 0 ? false : true;\r\n } else {\r\n this.submit = false;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/planejamento']);\r\n return;\r\n }\r\n });\r\n } catch (err) {\r\n this.submit = false;\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem?.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/planejamento']);\r\n }\r\n }\r\n\r\n public async exibirModalCustoRecurso() {\r\n try {\r\n const res = await this.custoRecursoService.obter('', true);\r\n if (res.sucesso) {\r\n const dadosFiltrados = res.dados.filter(constatacao => constatacao.ativo);\r\n const modal = this.exibirModal('Selecionar custo e recurso ', dadosFiltrados);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.modelCustoRecursoPlanejamento.id = data.id;\r\n this.modelCustoRecursoPlanejamento.nome = data.nome;\r\n this.modelCustoRecursoPlanejamento.valorUnitario = data.valorMedio;\r\n }\r\n }\r\n );\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async incluirCustoRecurso() {\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n this.formCustoRecurso.value.planejamentoId = this.id;\r\n const dados = {\r\n nome: this.modelCustoRecursoPlanejamento.nome,\r\n planejamentoId: this.id,\r\n osaId: this.id,\r\n valorUnitario: toRemoveCharacters(this.modelCustoRecursoPlanejamento.valorUnitario),\r\n quantidade: Number(this.modelCustoRecursoPlanejamento.quantidade)\r\n } as ICustoRecursoPlanejamentoModel\r\n res = await this.custoRecursoPlanejamentoService.inserir(dados, this.tipoTrabalho);\r\n\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro salvo com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.obterCustoRecurso();\r\n\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: validacoes,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n public async editarCustoRecurso(model: ICustoRecursoPlanejamentoModel) {\r\n try {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '650px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = model;\r\n const modal = this.matDialog.open(\r\n ModalCustoRecursoPlanejamentoComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n data.planejamentoId = this.id;\r\n const dados = {\r\n id: data.id,\r\n nome: data.nome,\r\n planejamentoId: this.id,\r\n osaId: this.id,\r\n valorUnitario: Number(toRemoveCharacters(data.valorUnitario)),\r\n quantidade: data.quantidade\r\n } as ICustoRecursoPlanejamentoModel\r\n this.custoRecursoPlanejamentoService.atualizar(dados, this.tipoTrabalho)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro atualizado com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.obterCustoRecurso();\r\n }else{\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n }\r\n });\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n }\r\n\r\n\r\n public excluirCustoRecurso(ind: number) {\r\n Swal.fire({\r\n title: \"Excluir Registro\",\r\n text: \"Tem certeza que deseja excluir esse Registro?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then((res) => {\r\n if (res.value) {\r\n this.custoRecursoPlanejamentoService\r\n .excluir(ind, this.tipoTrabalho)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'success',\r\n text: 'Registro excluído com sucesso!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.obterCustoRecurso();\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n })\r\n }})\r\n\r\n }\r\n\r\n formatarInput(value) {\r\n return toFormatValue(value);\r\n }\r\n}\r\n","
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n = 48 && event.charCode <= 57\" id=\"valor\" class=\"form-control form-control-sm text-right\"\r\n [(ngModel)]=\"modelCustoRecursoPlanejamento.valorUnitario\" formControlName=\"valorUnitario\"\r\n (keyup)=\"modelCustoRecursoPlanejamento.valorUnitario = formatarInput($event.target.value)\" />\r\n
\r\n
\r\n \r\n = 48 && event.charCode <= 57\" id=\"quantidade\" class=\"form-control form-control-sm text-right\"\r\n [(ngModel)]=\"modelCustoRecursoPlanejamento.quantidade\" formControlName=\"quantidade\" />\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Item {{ element.nome }}Valor Unitário {{ formatarInput(element.valorUnitario) }}Quantidade {{ element.quantidade }}Valor Total {{ formatarInput(element.valorUnitario * element.quantidade) }}\r\n
\r\n \r\n \r\n
\r\n
\r\n
Nenhum custo recurso
\r\n
\r\n
\r\n
\r\n","export class CustoRecurso{ \r\n public nome!: string; \r\n public valorUnitario!: number;\r\n public quantidade!: number;\r\n public id!: number;\r\n\r\n constructor(id, nome, valorUnitario, quantidade){\r\n this.id = id;\r\n this.nome = nome\r\n this.valorUnitario = Number(valorUnitario);\r\n this.quantidade = quantidade;\r\n }\r\n}","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { ICustoRecursoPlanejamentoModel } from 'src/app/models/custo-recurso-planejamento.model';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport Inputmask from 'inputmask';\r\nimport { CustoRecurso } from './custo-recurso';\r\nimport { toFormatValue, toRemoveCharacters} from 'src/app/shared/util/toFormatValue';\r\n\r\n@Component({\r\n selector: 'app-modal-custo-recurso-planejamento',\r\n templateUrl: './modal-custo-recurso-planejamento.component.html',\r\n styleUrls: ['./modal-custo-recurso-planejamento.component.scss']\r\n})\r\nexport class ModalCustoRecursoPlanejamentoComponent implements OnInit {\r\n public modelCustoRecursoPlanejamento!: any;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public toastr: ToastrService,\r\n @Inject(MAT_DIALOG_DATA) private data) {\r\n this.modelCustoRecursoPlanejamento = new CustoRecurso(this.data.id, this.data.nome, this.data.valorUnitario, Number(this.data.quantidade));\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n formatarInput(value) {\r\n return toFormatValue(value);\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.modelCustoRecursoPlanejamento);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Edição custo e recurso

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n = 48 && event.charCode <= 57\" />\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n = 48 && event.charCode <= 57\"/>\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { toIntlNumberString } from 'src/app/core/helpers/number.helper';\r\nimport { IFaixaClassificacaoModel } from 'src/app/models/faixa-classificacao';\r\nimport { FaixaClassificacaoService } from 'src/app/services/faixa-classificacao.service';\r\nimport Swal from 'sweetalert2';\r\nimport { BaseFormComponent } from '../base-form/base-form.component';\r\n\r\n@Component({\r\n selector: 'app-faixa-classificacao-component',\r\n templateUrl: './faixa-classificacao-component.component.html',\r\n styleUrls: ['./faixa-classificacao-component.component.scss']\r\n})\r\nexport class FaixaClassificacaoComponentComponent extends BaseFormComponent implements OnInit, OnChanges {\r\n\r\n @Input() public desabilitado!: boolean;\r\n @Input() public model: IFaixaClassificacaoModel = {} as IFaixaClassificacaoModel;\r\n @Output() public faixadeClassificacaoOutput: EventEmitter = new EventEmitter();\r\n\r\n\r\n public form = new FormGroup({\r\n pisoBaixo: new FormControl(this.model.pisoBaixo, Validators.required),\r\n tetoBaixo: new FormControl(null, Validators.required),\r\n pisoMedio: new FormControl(null, Validators.required),\r\n tetoMedio: new FormControl(null, Validators.required),\r\n pisoAlto: new FormControl(null, Validators.required),\r\n tetoAlto: new FormControl(null, Validators.required),\r\n });\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private faixaService: FaixaClassificacaoService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n this.titulo = 'Editar Faixa de Classificação';\r\n }\r\n\r\n async ngOnChanges(changes: SimpleChanges): Promise {\r\n \r\n this.form.controls['pisoBaixo'].setValue(this.formatarNumero(this.model.pisoBaixo));\r\n this.form.controls['tetoBaixo'].setValue(this.formatarNumero(this.model.tetoBaixo));\r\n this.form.controls['pisoMedio'].setValue(this.formatarNumero(this.model.pisoMedio));\r\n this.form.controls['tetoMedio'].setValue(this.formatarNumero(this.model.tetoMedio));\r\n this.form.controls['pisoAlto'].setValue(this.formatarNumero(this.model.pisoAlto));\r\n this.form.controls['tetoAlto'].setValue(this.formatarNumero(this.model.tetoAlto));\r\n }\r\n\r\n enviarClassificacao() {\r\n this.faixadeClassificacaoOutput.emit(this.salvarModel());\r\n }\r\n\r\n async ngOnInit() {\r\n\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n\r\n if (!this.model) {\r\n try {\r\n const res = await this.faixaService.obter();\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n\r\n this.form.controls['pisoBaixo'].setValue(this.formatarNumero(this.model.pisoBaixo));\r\n this.form.controls['tetoBaixo'].setValue(this.formatarNumero(this.model.tetoBaixo));\r\n this.form.controls['pisoMedio'].setValue(this.formatarNumero(this.model.pisoMedio));\r\n this.form.controls['tetoMedio'].setValue(this.formatarNumero(this.model.tetoMedio));\r\n this.form.controls['pisoAlto'].setValue(this.formatarNumero(this.model.pisoAlto));\r\n this.form.controls['tetoAlto'].setValue(this.formatarNumero(this.model.tetoAlto));\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'warning',\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n\r\n } catch (err) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n this.router.navigate(['/']);\r\n }\r\n }\r\n }\r\n\r\n private formatarNumero(n: number) {\r\n return n?.toFixed(4)?.toString()?.replace('.', ',');\r\n }\r\n\r\n public salvarModel() {\r\n this.model.pisoBaixo = parseFloat(toIntlNumberString(this.form.controls['pisoBaixo'].value));\r\n this.model.tetoBaixo = parseFloat(toIntlNumberString(this.form.controls['tetoBaixo'].value));\r\n this.model.pisoMedio = parseFloat(toIntlNumberString(this.form.controls['pisoMedio'].value));\r\n this.model.tetoMedio = parseFloat(toIntlNumberString(this.form.controls['tetoMedio'].value));\r\n this.model.pisoAlto = parseFloat(toIntlNumberString(this.form.controls['pisoAlto'].value));\r\n this.model.tetoAlto = parseFloat(toIntlNumberString(this.form.controls['tetoAlto'].value));\r\n return this.model;\r\n }\r\n\r\n public calcular(field) {\r\n if (!this.form.controls['pisoBaixo'].value) {\r\n this.form.controls['pisoBaixo'].setValue('0,0000');\r\n }\r\n if (!this.form.controls['tetoBaixo'].value) {\r\n this.form.controls['tetoBaixo'].setValue('0,0000');\r\n }\r\n if (!this.form.controls['pisoMedio'].value) {\r\n this.form.controls['pisoMedio'].setValue('0,0000');\r\n }\r\n if (!this.form.controls['tetoMedio'].value) {\r\n this.form.controls['tetoMedio'].setValue('0,0000');\r\n }\r\n if (!this.form.controls['pisoAlto'].value) {\r\n this.form.controls['pisoAlto'].setValue('0,0000');\r\n }\r\n if (!this.form.controls['tetoAlto'].value) {\r\n this.form.controls['tetoAlto'].setValue('0,0000');\r\n }\r\n\r\n this.model.pisoBaixo = parseFloat(toIntlNumberString(this.form.controls['pisoBaixo'].value) || '0,0000');\r\n this.model.tetoBaixo = parseFloat(toIntlNumberString(this.form.controls['tetoBaixo'].value) || '0,0000');\r\n this.model.pisoMedio = parseFloat(toIntlNumberString(this.form.controls['pisoMedio'].value) || '0,0000');\r\n this.model.tetoMedio = parseFloat(toIntlNumberString(this.form.controls['tetoMedio'].value) || '0,0000');\r\n this.model.pisoAlto = parseFloat(toIntlNumberString(this.form.controls['pisoAlto'].value) || '0,0000');\r\n this.model.tetoAlto = parseFloat(toIntlNumberString(this.form.controls['tetoAlto'].value) || '0,0000');\r\n\r\n this.validarFormulario();\r\n\r\n const nomeCampoAlterado = field.id;\r\n if (nomeCampoAlterado === 'tetoBaixo') {\r\n this.model.pisoMedio = this.model.tetoBaixo + 0.0001;\r\n this.form.controls['pisoMedio'].setValue(this.formatarNumero(this.model.pisoMedio));\r\n }\r\n else if (nomeCampoAlterado === 'pisoMedio') {\r\n this.model.tetoBaixo = this.model.pisoMedio - 0.0001;\r\n this.form.controls['tetoBaixo'].setValue(this.formatarNumero(this.model.tetoBaixo));\r\n }\r\n else if (nomeCampoAlterado === 'tetoMedio') {\r\n this.model.pisoAlto = this.model.tetoMedio + 0.0001;\r\n this.form.controls['pisoAlto'].setValue(this.formatarNumero(this.model.pisoAlto));\r\n }\r\n else if (nomeCampoAlterado === 'pisoAlto') {\r\n this.model.tetoMedio = this.model.pisoAlto - 0.0001;\r\n this.form.controls['tetoMedio'].setValue(this.formatarNumero(this.model.tetoMedio));\r\n }\r\n\r\n if (this.model.pisoBaixo < 0)\r\n this.model.pisoBaixo = 0;\r\n\r\n if (this.model.tetoAlto > 10)\r\n this.model.tetoAlto = 10;\r\n }\r\n\r\n public validarFormulario() {\r\n\r\n if (this.model.pisoMedio >= this.model.tetoMedio) {\r\n this.form.controls['pisoMedio'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['pisoMedio'].setErrors(null);\r\n }\r\n\r\n if (this.model.tetoBaixo >= this.model.pisoMedio) {\r\n this.form.controls['tetoBaixo'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['tetoBaixo'].setErrors(null);\r\n }\r\n\r\n if (this.model.pisoBaixo >= this.model.tetoBaixo) {\r\n this.form.controls['pisoBaixo'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['pisoBaixo'].setErrors(null);\r\n }\r\n\r\n if (this.model.tetoMedio >= this.model.pisoAlto) {\r\n this.form.controls['tetoMedio'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['tetoMedio'].setErrors(null);\r\n }\r\n\r\n if (this.model.pisoAlto >= this.model.tetoAlto) {\r\n this.form.controls['pisoAlto'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['pisoAlto'].setErrors(null);\r\n }\r\n\r\n if (this.model.tetoAlto > 10) {\r\n this.form.controls['tetoAlto'].setErrors({ invalid: true });\r\n } else {\r\n this.form.controls['tetoAlto'].setErrors(null);\r\n }\r\n }\r\n\r\n public onBack() {\r\n this.router.navigate(['/']);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n a\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n a\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n a\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, Inject, OnInit, Input } from '@angular/core';\r\nimport { MatDialog, MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IHistoricoModel } from 'src/app/models/historico.model';\r\nimport { AvaliacaoService } from 'src/app/services/avaliacao.service';\r\nimport { BaseFormComponent } from '../base-form/base-form.component';\r\nimport { IUnidadeGestoraMaturidadeGRHistoricoModel } from 'src/app/models/unidade-gestora-maturidadeGRHistorico.model'; \r\nimport { UnidadeGestoraMaturidadeGRHistoricoService } from 'src/app/services/unidade-gestora-maturidadeGRHistorico.service';\r\nimport { IFiltroUnidadeGestoraMaturidadeGRHistoricoModel } from 'src/app/models/filtro-unidade-gestora-maturidadegrhistorico.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\n\r\n@Component({\r\n selector: 'app-historico-modal',\r\n templateUrl: './historico-modal.component.html',\r\n styleUrls: ['./historico-modal.component.scss']\r\n})\r\nexport class HistoricoModalComponent extends BaseFormComponent implements OnInit {\r\n public historicoDados: IUnidadeGestoraMaturidadeGRHistoricoModel[];\r\n public dataSource = new MatTableDataSource([]);\r\n public tituloModal: string = `Histórico de Alteração da Avaliação da Maturidade da Gestão de Riscos`;\r\n public semDados = true;\r\n public displayedColumns: string[] = ['pessoaNome','dataInclusao', 'maturidade'];\r\n public codigo: string;\r\n public sigla: string;\r\n public nome: string;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private avaliacaoService: AvaliacaoService,\r\n public matDialog: MatDialog,\r\n private unidadeGestoraMaturidadeGRHistoricoService: UnidadeGestoraMaturidadeGRHistoricoService,\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n \r\n this.semDados = data.historicoDados.length == 0;\r\n this.dataSource = new MatTableDataSource(data.historicoDados);\r\n\r\n this.codigo = data.codigo;\r\n this.sigla = data.sigla;\r\n this.nome = data.nome;\r\n\r\n \r\n }\r\n\r\n ngOnInit() {\r\n \r\n \r\n }\r\n\r\n\r\n \r\n \r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

{{ tituloModal }}

\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
Alterado por\r\n\t\t\t\t\t\t\t\t\t\t\t{{ element.pessoaNome }}\r\n\t\t\t\t\t\t\t\t\t\tData da alteração\r\n\t\t\t\t\t\t\t\t\t\t\t{{ element.dataInclusao | date: 'dd MMM yyyy HH:mm'}}\r\n\t\t\t\t\t\t\t\t\t\tResultado da Avaliação\r\n\t\t\t\t\t\t\t\t\t\t\t{{ element.unidadeGestoraMaturidadeGR.nome }}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tSem dados a exibir\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t Fechar\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport { ILinhaDoTempoModel } from 'src/app/models/linha-tempo.model';\r\nimport { AvaliacaoService } from 'src/app/services/avaliacao.service';\r\nimport { BaseFormComponent } from '../base-form/base-form.component';\r\nimport { data } from 'jquery';\r\n\r\n@Component({\r\n selector: 'app-linha-do-tempo',\r\n templateUrl: './linha-do-tempo.component.html',\r\n styleUrls: ['./linha-do-tempo.component.scss']\r\n})\r\nexport class LinhaDoTempoComponent extends BaseFormComponent implements OnInit {\r\n @Input() aba: number;\r\n @Input() public model: ILinhaDoTempoModel = {} as ILinhaDoTempoModel;\r\n @Input() tipoTrabalhoRef: number;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private avaliacaoService: AvaliacaoService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Linha do Tempo';\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.obterTipoDocumento();\r\n this.avaliacaoService.obter(this.model?.tipoDocumento?.codigo, this.id)\r\n .then(_ => {\r\n this.model = {} as ILinhaDoTempoModel;\r\n\r\n this.model.datas = _?.dados?.datas;\r\n let tamanhoArray = this.model.datas?.length;\r\n if (tamanhoArray > 0) {\r\n this.model.datas[tamanhoArray-1].acoes.push({\r\n acao: { codigo: 0, nome: 'Criado', descricao: 'Criado com sucesso.' } as IEnumModel\r\n });\r\n }\r\n else {\r\n this.model.datas = [\r\n {\r\n acoes: [{\r\n acao: { codigo: 0, nome: 'Criado', descricao: 'Criado com sucesso.' } as IEnumModel\r\n }]\r\n }\r\n ]\r\n }\r\n\r\n this.model.tipoDocumento = _.dados?.tipoDocumento;\r\n });\r\n }\r\n\r\n public imprimir(id: number) {\r\n console.log(this.model.datas)\r\n localStorage.setItem('timelineImprimir', this.router.url)\r\n let url= '';\r\n switch (this.model?.tipoDocumento.nome) {\r\n case 'PEA':\r\n url = `${window.location.origin}/imprimir-linha-do-tempo/${id}/tipo-trabalho/pea`;\r\n window.open(url, '_blank');\r\n break;\r\n case 'PAA':\r\n url = `${window.location.origin}/imprimir-linha-do-tempo/${id}/tipo-trabalho/paa`;\r\n window.open(url, '_blank');\r\n break;\r\n case 'PAACEspecial':\r\n url = `${window.location.origin}/imprimir-linha-do-tempo/${id}/tipo-trabalho/paa`;\r\n window.open(url, '_blank');\r\n break;\r\n case 'OPA':\r\n url = `${window.location.origin}/imprimir-linha-do-tempo/${id}/tipo-trabalho/opa`;\r\n window.open(url, '_blank');\r\n break;\r\n case 'Planejamento':\r\n url = `${window.location.origin}/imprimir-linha-do-tempo/${id}/tipo-trabalho/planejamento`;\r\n window.open(url, '_blank');\r\n break;\r\n case 'OSA':\r\n url = `${window.location.origin}/imprimir-linha-do-tempo/${id}/tipo-trabalho/osa`;\r\n window.open(url, '_blank');\r\n break;\r\n }\r\n }\r\n\r\n public imprimirRelatoria(id: number) {\r\n localStorage.setItem('timelineImprimir', this.router.url)\r\n let url = '';\r\n switch (this.model?.tipoDocumento.nome) {\r\n case 'PEA':\r\n url = `${window.location.origin}/visualizar-relatoria/${id}/tipo-trabalho/pea`;\r\n window.open(url, '_blank'); \r\n break;\r\n case 'PAA':\r\n url = `${window.location.origin}/visualizar-relatoria/${id}/tipo-trabalho/paa`;\r\n window.open(url, '_blank');\r\n break;\r\n case 'PAACEspecial':\r\n url = `${window.location.origin}/visualizar-relatoria/${id}/tipo-trabalho/paa`;\r\n window.open(url, '_blank');\r\n break;\r\n case 'OPA':\r\n url = `${window.location.origin}/visualizar-relatoria/${id}/tipo-trabalho/opa`;\r\n window.open(url, '_blank');\r\n break;\r\n case 'Planejamento':\r\n url = `${window.location.origin}/visualizar-relatoria/${id}/tipo-trabalho/planejamento`;\r\n window.open(url, '_blank');\r\n break;\r\n case 'OSA':\r\n url = `${window.location.origin}/visualizar-relatoria/${id}/tipo-trabalho/osa`;\r\n window.open(url, '_blank');\r\n break;\r\n }\r\n }\r\n\r\n public obterTipoDocumento() {\r\n\r\n if(!this.tipoTrabalhoRef || this.tipoTrabalhoRef == 0){\r\n const path = this.route.routeConfig.path?.toString();\r\n\r\n if (path?.includes('pea')) {\r\n this.model.tipoDocumento = {\r\n codigo: 1,\r\n nome: 'PEAC',\r\n descricao: 'PEAC'\r\n } as IEnumModel;\r\n }\r\n else if (path?.includes('paa')) {\r\n this.model.tipoDocumento = {\r\n codigo: 2,\r\n nome: 'PAAC',\r\n descricao: 'PAAC'\r\n } as IEnumModel;\r\n }\r\n else if (path?.includes('opa')) {\r\n this.model.tipoDocumento = {\r\n codigo: 3,\r\n nome: 'OPA',\r\n descricao: 'OPA'\r\n } as IEnumModel;\r\n }\r\n else if (path?.includes('osa')) {\r\n this.model.tipoDocumento = {\r\n codigo: 4,\r\n nome: 'OSA',\r\n descricao: 'OSA'\r\n } as IEnumModel;\r\n }\r\n else if (path?.includes('auditoria')) {\r\n this.model.tipoDocumento = {\r\n codigo: 6,\r\n nome: 'auditoria',\r\n descricao: 'auditoria'\r\n } as IEnumModel;\r\n }\r\n else if (path?.includes('planejamento')) {\r\n this.model.tipoDocumento = {\r\n codigo: 7,\r\n nome: 'Planejamento',\r\n descricao: 'Planejamento'\r\n } as IEnumModel;\r\n }\r\n }else{\r\n\r\n if(this.tipoTrabalhoRef == 2){\r\n this.model.tipoDocumento = {\r\n codigo: 2,\r\n nome: 'PAAC',\r\n descricao: 'PAAC'\r\n } as IEnumModel;\r\n }else if(this.tipoTrabalhoRef == 8){\r\n this.model.tipoDocumento = {\r\n codigo: 8,\r\n nome: 'PAAC - Especial',\r\n descricao: 'PAAC - Especial'\r\n } as IEnumModel;\r\n }\r\n \r\n }\r\n \r\n }\r\n\r\n mostrarBotaoFechar(): boolean{\r\n const path = this.route.routeConfig.path?.toString();\r\n return path?.includes('paa');\r\n }\r\n\r\n public cancelar() {\r\n const path = this.route.routeConfig.path?.toString();\r\n \r\n if(path?.includes('paa')){\r\n this.router.navigate(['/paa']);\r\n }else if(path?.includes('pea')){\r\n this.router.navigate(['/pea']);\r\n }else if(path?.includes('opa')){\r\n this.router.navigate(['/opa']);\r\n }else if(path?.includes('osa')){\r\n this.router.navigate(['/osa']);\r\n }else if(path?.includes('auditoria')){\r\n this.router.navigate(['/auditoria']);\r\n }else if(path?.includes('planejamento')){\r\n this.router.navigate(['/planejamento']);\r\n }\r\n \r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n

Linha do Tempo

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{ element.data | date: 'dd MMM yyyy' }}\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n Fechar\r\n \r\n
","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\n\r\n@Component({\r\n selector: 'app-lookup-modal',\r\n templateUrl: './lookup-modal.component.html',\r\n styleUrls: ['./lookup-modal.component.scss']\r\n})\r\nexport class LookupModalComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public exibirId = true;\r\n public titulo = '';\r\n public selecionado: any;\r\n public displayedColumns: string[];\r\n public columns: { columnDef: string, header: string }[];\r\n public customFilterPredicate;\r\n public pageSizeOptions: string[] = [\"5\"];\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n if(data.pageSizeOptions){\r\n this.pageSizeOptions = [`${data.pageSizeOptions}`];\r\n }\r\n\r\n if (data.customizeColumns) {\r\n this.columns = data.customizeColumns;\r\n }\r\n else if (data.exibirId) {\r\n this.columns = [\r\n {\r\n columnDef: 'selecao',\r\n header: ''\r\n },\r\n {\r\n columnDef: 'id',\r\n header: 'ID'\r\n },\r\n {\r\n columnDef: 'nome',\r\n header: 'Nome'\r\n }];\r\n } else {\r\n this.columns = [\r\n {\r\n columnDef: 'selecao',\r\n header: ''\r\n },\r\n {\r\n columnDef: 'nome',\r\n header: 'Nome'\r\n }];\r\n }\r\n\r\n this.displayedColumns = this.columns.map(x => x.columnDef);\r\n this.exibirId = data.exibirId;\r\n this.titulo = data.titulo;\r\n this.dataSource = new MatTableDataSource(data.dados);\r\n this.dataSource._updateChangeSubscription();\r\n\r\n if (data.customFilterPredicate) {\r\n this.customFilterPredicate = data.customFilterPredicate;\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n if (this.customFilterPredicate) {\r\n this.dataSource.filterPredicate = this.customFilterPredicate;\r\n }\r\n else {\r\n this.dataSource.filterPredicate = (data: { nome: string }, filterValue: string) => {\r\n return (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1;\r\n };\r\n }\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public filtrar(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public selecionarItem(item: any) {\r\n this.selecionado = !this.selecionado || this.selecionado.id !== item.id ? item : null;\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.selecionado);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
{{ column.header }} \r\n \r\n \r\n \r\n {{ element[column.columnDef] }}\r\n \r\n
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { defaultDataAcessor } from 'src/app/core/helpers/mat-sort-data-accessor';\r\n\r\n@Component({\r\n selector: 'app-lookup-multiselect-modal',\r\n templateUrl: './lookup-multiselect-modal.component.html',\r\n styleUrls: ['./lookup-multiselect-modal.component.scss']\r\n})\r\nexport class LookupMultiselectModalComponent implements OnInit {\r\n public dataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public exibirId = true;\r\n public titulo = '';\r\n public botaoOk = '';\r\n public displayedColumns: string[];\r\n public todosSelecionados = false;\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n if (data.exibirId) {\r\n this.displayedColumns = ['selecao', 'id', 'nome'];\r\n } else {\r\n this.displayedColumns = ['selecao', 'nome'];\r\n }\r\n\r\n this.botaoOk = data.botaoOk;\r\n this.exibirId = data.exibirId;\r\n this.titulo = data.titulo;\r\n this.dataSource = new MatTableDataSource(data.dados);\r\n this.dataSource._updateChangeSubscription();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.filterPredicate = (data: { nome: string }, filterValue: string) => {\r\n return (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1;\r\n };\r\n this.dataSource.sortingDataAccessor = defaultDataAcessor;\r\n this.dataSource._updateChangeSubscription();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public filtrar(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n this.semDados = this.dataSource.filteredData.length === 0;\r\n }\r\n\r\n public selecionarTodos() {\r\n this.dataSource.data.forEach(d => d.selecionado = !this.todosSelecionados);\r\n this.todosSelecionados = !this.todosSelecionados;\r\n }\r\n\r\n public verificarItensSelecionados(){\r\n return this.dataSource.data.filter(d => d.selecionado).length > 0;\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.dataSource.data.filter(d => d.selecionado));\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Id {{element.id}} Nome {{element.nome}}
\r\n
Sem dados a exibir
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { SolicitacaoTecnicaService } from './../../../services/solicitacao-tecnica.service';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { IArquivoModel } from 'src/app/models/arquivo.model';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Component, Inject, OnInit, ViewChild, OnChanges, SimpleChanges } from '@angular/core';\r\nimport Swal from 'sweetalert2';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\n\r\n@Component({\r\n selector: 'app-modal-arquivo',\r\n templateUrl: './modal-arquivo.component.html',\r\n styleUrls: ['./modal-arquivo.component.scss']\r\n})\r\nexport class ModalArquivoComponent implements OnInit, OnChanges{\r\n\r\n public dataSource = new MatTableDataSource();\r\n public semDados: boolean;\r\n public arquivo: File;\r\n public nomeArquivo: string = '';\r\n public conteudoArquivo: string;\r\n public model: IArquivoModel = {} as IArquivoModel;\r\n public numeroItem: number;\r\n public nSolicitacaoTecnica: number;\r\n\r\n public form = new FormGroup({\r\n arquivo: new FormControl('', Validators.required),\r\n });\r\n\r\n constructor(\r\n public matDialog: MatDialog,\r\n private dialogRef: MatDialogRef,\r\n private solicitacaoTencica: SolicitacaoTecnicaService,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n this.numeroItem = data?.numero;\r\n this.nSolicitacaoTecnica = data?.nSolicitacaoTecnica\r\n }\r\n\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n\t@ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n\t\tthis.dataSource.sort = this.sort;\r\n this.dataSource.paginator = this.paginator;\r\n }\r\n\r\n public salvar() {\r\n const dados = {\r\n Id: this.data?.id,\r\n Arquivos: this.dataSource.data\r\n }as any;\r\n\r\n this.solicitacaoTencica\r\n .salvarAnexo(dados)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"success\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n \r\n setTimeout(() => this.dialogRef.close(), 500);\r\n\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n });\r\n }\r\n\r\n public onFileChange(event) {\r\n \r\n if (event.target.files && event.target.files.length > 0) {\r\n const selectedFiles = event.srcElement.files; \r\n for (let i = 0; i < selectedFiles.length; i++) {\r\n const file = selectedFiles[i];\r\n const reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = (e: any) => {\r\n const base64 = \"base64,\";\r\n const base64full: any = reader.result;\r\n var item = {\r\n id: 0,\r\n nomeArquivo: file.name,\r\n name: file.name,\r\n Arquivo: base64full.substring(base64full.indexOf(base64) + base64.length)\r\n }; \r\n this.dataSource.data.push(item)\r\n this.dataSource.paginator = this.paginator;\r\n };\r\n } \r\n }\r\n }\r\n\r\n\r\n public excluirArquivo(i: number){\r\n if(this.dataSource.data[i].id > 0){\r\n Swal.fire({\r\n title: \"Excluir Registro\",\r\n text: \"Tem certeza que deseja excluir esse Registro?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then((res) => {\r\n if (res.value) {\r\n this.solicitacaoTencica.excluirAnexo(this.data?.solicitacaoId, this.data?.id, this.dataSource.data[i].id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"success\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n if (this.dataSource.data[i]) this.dataSource.data.splice(i, 1)\r\n this.dataSource._updateChangeSubscription();\r\n } else {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: res.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n text: err.mensagem.descricao,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n });\r\n }})\r\n }else{\r\n if (this.dataSource.data[i]) this.dataSource.data.splice(i, 1)\r\n this.dataSource._updateChangeSubscription();\r\n }\r\n\r\n }\r\n\r\n public getBase64(file) {\r\n return new Promise((resolve, reject) => {\r\n var reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = function () {\r\n resolve(reader.result)\r\n };\r\n reader.onerror = function (error) {\r\n Swal.fire({\r\n toast: true,\r\n position: 'top-end',\r\n icon: 'error',\r\n text: \"Ocorreu um erro ao selecionar o arquivo\" + error.toString(),\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n })\r\n };\r\n })\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close()\r\n }\r\n\r\n public Download(dataurl, filename) {\r\n const link = document.createElement(\"a\");\r\n link.href = dataurl;\r\n link.download = filename;\r\n link.click();\r\n }\r\n}\r\n","
\r\n

\r\n \r\n Anexar Arquivo\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\t\t\t\t
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
Arquivos\r\n {{ element.name }}\r\n \r\n Ações\r\n \r\n
\r\n \r\n
\r\n
\r\n
0\" class=\"table-no-data\">\r\n Adicione um novo arquivo!\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-modal-cancelar',\r\n templateUrl: './modal-cancelar.component.html',\r\n})\r\nexport class ModalCancelarComponent implements OnInit {\r\n\r\n constructor(\r\n public matDialog: MatDialog,\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.data = data;\r\n }\r\n\r\n public data = {} as any;\r\n ngOnInit(): void { }\r\n\r\n Sim() {\r\n if (this.data && this.data.interno) {\r\n this.matDialog.closeAll();\r\n }\r\n else {\r\n this.dialogRef.close(true);\r\n }\r\n }\r\n\r\n Nao() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n","
\r\n
\r\n\r\n
\r\n

Cancelar Atividade

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-modal-confirma-cancelar',\r\n templateUrl: './modal-confirma-cancelar.component.html',\r\n styleUrls: ['./modal-confirma-cancelar.component.scss']\r\n})\r\nexport class ModalConfirmaCancelarComponent implements OnInit {\r\n\r\n constructor(\r\n public matDialog: MatDialog,\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n this.data = data;\r\n }\r\n\r\n public data = {} as any;\r\n ngOnInit(): void { }\r\n\r\n Sim() {\r\n if (this.data && this.data.interno) {\r\n this.matDialog.closeAll();\r\n }\r\n else {\r\n this.dialogRef.close(true);\r\n }\r\n }\r\n\r\n Nao() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n","
\r\n
\r\n\r\n
\r\n

Cancelar Atividade

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BaseFormComponent } from 'src/app/shared/components/base-form/base-form.component';\r\n\r\n@Component({\r\n selector: 'app-modal-confirmacao-rejeitar',\r\n templateUrl: './modal-confirmacao-rejeitar.component.html',\r\n styleUrls: ['./modal-confirmacao-rejeitar.component.scss']\r\n})\r\nexport class ModalConfirmarRejeitarComponent extends BaseFormComponent implements OnInit {\r\n public form = new FormGroup({\r\n justificativa: new FormControl('', Validators.required),\r\n });\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n public matDialog: MatDialog,\r\n private dialogRef: MatDialogRef) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.form.get('justificativa').value);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

Tem certeza que deseja rejeitar esse registro?

\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\n\r\n@Component({\r\n selector: 'app-modal-confirmar-inativacao',\r\n templateUrl: './modal-confirmar-inativacao.component.html',\r\n styleUrls: ['./modal-confirmar-inativacao.component.scss']\r\n})\r\nexport class ModalConfirmarInativacaoComponent implements OnInit {\r\n public titulo = 'Tem certeza que deseja inativar esse registro?';\r\n public form = new FormGroup({\r\n justificativa: new FormControl('', Validators.required),\r\n });\r\n\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n\r\n constructor(private dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) data) {\r\n if (data){\r\n this.titulo = data.titulo ? data.titulo : this.titulo;\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public concluir() {\r\n this.dialogRef.close(this.form.get('justificativa').value);\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","
\r\n
\r\n
\r\n

{{titulo}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { ModalCancelarComponent } from './../modal-cancelar/modal-cancelar-component';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialogConfig, MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-modal-justificativa',\r\n templateUrl: './modal-justificativa.component.html',\r\n styleUrls: ['./modal-justificativa.component.scss']\r\n})\r\nexport class ModalJustificativaComponent implements OnInit {\r\n public submitted: boolean\r\n public justificativa: string;\r\n public prorrogacao: boolean = false\r\n\r\n public form = new FormGroup({\r\n justificativa: new FormControl('', Validators.required)\r\n });\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n public matDialog: MatDialog,\r\n @Inject(MAT_DIALOG_DATA) public data\r\n ) {\r\n this.prorrogacao = data?.prorrogarPrazo\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public submit(){\r\n this.submitted = true\r\n if(!this.prorrogacao){\r\n if(this.form.controls['justificativa'].invalid){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n title: 'Atenção',\r\n text: 'A justificativa é obrigatória',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n this.justificativa = this.form.get('justificativa').value\r\n this.dialogRef.close(this.justificativa);\r\n }else if(this.prorrogacao){\r\n if(this.form.invalid){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n title: 'Atenção',\r\n text: 'Formulário Inválido',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n const dados = {\r\n justificativa: this.form.get('justificativa').value\r\n }\r\n this.dialogRef.close(dados);\r\n }\r\n\r\n }\r\n\r\n public cancelar() {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Campo obrigatório\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { LoadingBarService } from '@ngx-loading-bar/core';\r\nimport html2pdf from 'html2pdf.js';\r\nimport jsPDF from 'jspdf';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-pdf-export',\r\n templateUrl: './pdf-export.component.html',\r\n styleUrls: ['./pdf-export.component.scss']\r\n})\r\nexport class PdfExportComponent implements OnInit {\r\n @Input() fileName!: string;\r\n @Input() orientation: 'p' | 'l' = 'p'; // 'p' para retrato, 'l' para paisagem\r\n @Input() format: string = \"a4\";\r\n @Input() headerHeight: number = 30;\r\n @Input() footerHeight: number = 30;\r\n @Input() resizeTableSelectors?: string[];\r\n @Input() keepTogetherSelectors?: string[];\r\n @Input() showWatermark: false;\r\n\r\n @Output() cancelar = new EventEmitter();\r\n\r\n constructor(\r\n public authService: AuthService,\r\n private loadingBar: LoadingBarService,\r\n private spinner: NgxSpinnerService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n async generatePDF() {\r\n try {\r\n // Inicia os indicadores de carregamento\r\n this.loadingBar.start();\r\n this.spinner.show();\r\n\r\n const contentElement = document.querySelector('.content-pdf-export') as HTMLElement;\r\n if (contentElement) {\r\n const opt = {\r\n margin: [this.headerHeight, 0, this.footerHeight, 5],\r\n filename: this.fileName,\r\n image: { type: 'jpeg', quality: 0.98 },\r\n html2canvas: { scale: 2, useCORS: true },\r\n jsPDF: { unit: 'mm', format: this.format, orientation: this.orientation },\r\n pagebreak: {\r\n mode: ['css'], // Modo para evitar quebras\r\n avoid: this.keepTogetherSelectors?.join(', ') // Seletores que devem evitar quebra\r\n }\r\n };\r\n\r\n const pdf = new jsPDF('p', 'mm', 'a4');\r\n const pageWidth = pdf.internal.pageSize.getWidth();\r\n const pageHeight = pdf.internal.pageSize.getHeight();\r\n const pageWidthInPixels = (pageWidth * 96) / 25.4;\r\n\r\n const contentClone = contentElement.cloneNode(true) as HTMLElement;\r\n contentClone.style.maxWidth = `${pageWidthInPixels - 10}px`;\r\n\r\n const tempContainer = document.createElement('div');\r\n tempContainer.style.visibility = 'hidden';\r\n tempContainer.appendChild(contentClone);\r\n document.body.appendChild(tempContainer);\r\n\r\n this.resizeTables(contentClone, pageWidthInPixels);\r\n this.resizeImages(contentClone, pageWidthInPixels);\r\n document.body.removeChild(tempContainer);\r\n\r\n const fullContent = document.createElement('div');\r\n fullContent.appendChild(contentClone);\r\n\r\n await new Promise(resolve => setTimeout(resolve, 0));\r\n\r\n await html2pdf()\r\n .from(fullContent)\r\n .set(opt)\r\n .toPdf()\r\n .get('pdf')\r\n .then((pdf: any) => {\r\n const totalPages = pdf.internal.getNumberOfPages();\r\n\r\n if (totalPages > 0) {\r\n const lastPageIndex = totalPages - 1;\r\n const lastPageContent = pdf.internal.pages[lastPageIndex];\r\n console.log(lastPageContent);\r\n\r\n if (lastPageContent.length === 0) {\r\n pdf.deletePage(totalPages);\r\n } else {\r\n for (let i = 1; i <= totalPages; i++) {\r\n pdf.setPage(i);\r\n this.addWatermark(pdf, './marca-d-agua.png');\r\n // Adiciona a marca d'água na página\r\n this.addHeader(pdf);\r\n this.addFooter(pdf, i, totalPages, this.footerHeight, pageHeight, pageWidth);\r\n }\r\n }\r\n }\r\n\r\n try {\r\n const pdfBlob = pdf.output('blob');\r\n const pdfURL = URL.createObjectURL(pdfBlob);\r\n const popupWindow = window.open(pdfURL, '_blank', 'width=800,height=600,scrollbars=yes');\r\n\r\n if (!popupWindow) {\r\n throw new Error('Não foi possível abrir a janela pop-up.');\r\n }\r\n } catch (error) {\r\n console.error('Erro ao gerar o PDF:', error);\r\n }\r\n });\r\n } else {\r\n console.error('Elemento não encontrado!');\r\n }\r\n\r\n console.log('PDF gerado com sucesso!');\r\n } catch (error) {\r\n console.error('Erro ao gerar PDF:', error);\r\n } finally {\r\n // Finaliza os indicadores de carregamento\r\n this.loadingBar.complete();\r\n this.spinner.hide();\r\n }\r\n }\r\n\r\n resizeTables(contentClone: HTMLElement, pageWidthInPixels: number) {\r\n\r\n if (this.resizeTableSelectors && this.resizeTableSelectors.length > 0) {\r\n\r\n this.resizeTableSelectors.forEach((selector) => {\r\n // Ajustar tabelas que ultrapassam a largura\r\n const tables = contentClone.querySelectorAll(selector);\r\n tables.forEach((table) => {\r\n const tableElement = table as HTMLElement;\r\n\r\n // Obter largura da tabela em pixels\r\n const tableWidthInPixels = tableElement.offsetWidth;\r\n\r\n // Calcular fator de escala necessário\r\n if (tableWidthInPixels > pageWidthInPixels) {\r\n const scaleFactor = Math.min(pageWidthInPixels / tableWidthInPixels, 0.64);\r\n // Ajustar o tamanho da tabela proporcionalmente\r\n tableElement.style.transform = `scale(${scaleFactor})`;\r\n tableElement.style.transformOrigin = 'top left';\r\n\r\n let parent = table.parentElement; // Começa com o elemento pai imediato\r\n\r\n // Procura até encontrar a div com a classe \"my-3\"\r\n while (parent && !parent.classList.contains('my-3')) {\r\n parent = parent.parentElement;\r\n }\r\n\r\n // Se encontrou a div com \"my-3\", aplica uma altura máxima\r\n if (parent && parent.classList.contains('my-3')) {\r\n // parent.classList.remove('my-3');\r\n // parent.style.marginBottom = '10px';\r\n // Calcular a nova altura após a escala\r\n const scaledHeight = Math.max(tableElement.offsetHeight * scaleFactor + 33, 350);\r\n parent.style.height = `${scaledHeight}px`;\r\n parent.style.overflow = 'hidden';\r\n }\r\n }\r\n });\r\n });\r\n }\r\n }\r\n\r\n resizeImages(contentClone: HTMLElement, pageWidthInPixels: number) {\r\n // Selecionar todas as imagens no conteúdo clonado\r\n const images = contentClone.querySelectorAll('img');\r\n\r\n images.forEach((img) => {\r\n const imgElement = img as HTMLImageElement;\r\n\r\n // Obter largura da imagem em pixels\r\n const imageWidthInPixels = imgElement.naturalWidth;\r\n\r\n // Calcular fator de escala necessário\r\n if (imageWidthInPixels > pageWidthInPixels) {\r\n const scaleFactor = Math.min(pageWidthInPixels / imageWidthInPixels, 0.90);\r\n\r\n // Aplicar redimensionamento com escala\r\n imgElement.style.transform = `scale(${scaleFactor})`;\r\n imgElement.style.transformOrigin = 'top left';\r\n\r\n // Ajustar largura e altura proporcionalmente\r\n const scaledWidth = imgElement.offsetWidth * scaleFactor;\r\n const scaledHeight = imgElement.offsetHeight * scaleFactor;\r\n\r\n imgElement.style.width = `${scaledWidth}px`;\r\n imgElement.style.height = `${scaledHeight}px`;\r\n }\r\n });\r\n }\r\n\r\n addHeader(pdf: jsPDF): void {\r\n const margin = 5;\r\n const imgData = \"assets/img/logo_brasao_ES.png\";\r\n const imgWidth = 20; // largura da imagem\r\n const imgHeight = 20; // altura da imagem\r\n const imgX = margin + 20; // Margem da esquerda\r\n const imgY = margin; // Parte superior da página\r\n\r\n // Adicionar imagem\r\n pdf.addImage(imgData, \"PNG\", imgX, imgY, imgWidth, imgHeight);\r\n\r\n // Adicionar título e subtítulo\r\n const titleX = imgX + imgWidth + 5; // Espaço à direita da imagem\r\n const titleY = imgY + 10; // Centraliza o texto no eixo Y\r\n\r\n pdf.setFont(\"helvetica\", \"bold\");\r\n pdf.setFontSize(14);\r\n pdf.setTextColor(\"#23507e\");\r\n pdf.text(\"Governo do Estado do Espírito Santo\".toUpperCase(), titleX, titleY);\r\n\r\n const subtitleY = titleY + 7; // Espaço entre título e subtítulo\r\n pdf.setFont(\"helvetica\", \"normal\");\r\n pdf.setFontSize(12);\r\n pdf.text(\r\n \"Secretaria de Estado de Controle e Transparência\".toUpperCase(),\r\n titleX,\r\n subtitleY\r\n );\r\n }\r\n\r\n addFooter(\r\n pdf: jsPDF,\r\n pageNumber: number,\r\n totalPages: number,\r\n footerHeight: number,\r\n pageHeight: number,\r\n pageWidth: number\r\n ): void {\r\n const marginBetweenContentAndFooter = 5; // Margem entre conteúdo e linha do rodapé\r\n const footerStartY = pageHeight - footerHeight + marginBetweenContentAndFooter;\r\n\r\n // Desenhar a linha no rodapé com margem\r\n const lineY = footerStartY; // Posição ajustada com base na margem\r\n pdf.setDrawColor('#23507e'); // Cor da linha (cinza claro)\r\n pdf.setLineWidth(0.1); // Espessura da linha\r\n pdf.line(10, lineY, pageWidth - 10, lineY); // Linha horizontal (10 mm de margem)\r\n\r\n const textY1 = lineY + 5; // Primeira linha de texto\r\n pdf.setFontSize(8);\r\n pdf.setFont(\"helvetica\", \"normal\"); // Fonte normal\r\n pdf.text(\r\n \"Av. João Batista Parra, nº. 600, Ed. Aureliano Hoffman, 10º andar, Enseada do Suá, Vitória /ES - Cep: 29050-375\",\r\n 10, // Alinhado à esquerda\r\n textY1\r\n );\r\n\r\n const textY2 = textY1 + 5; // Segunda linha de texto\r\n pdf.text(\r\n \"Tel: (27) 3636-5352\",\r\n 10, // Alinhado à esquerda\r\n textY2\r\n );\r\n\r\n const textY3 = textY2 + 5; // terceira linha de texto\r\n pdf.setFont(\"helvetica\", \"bold\"); // Fonte em negrito\r\n pdf.text(\r\n \"www.secont.es.gov.br\",\r\n 10, // Alinhado à esquerda\r\n textY3\r\n );\r\n\r\n // Obter a data/hora atual e formatá-la\r\n const currentDate = new Date();\r\n const formattedDate = currentDate.toLocaleString(\"pt-BR\", {\r\n day: \"2-digit\",\r\n month: \"2-digit\",\r\n year: \"numeric\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n\r\n // \"Emitido por\" com estilos segmentados\r\n const textY4 = textY2 + 5; // Linha para \"Emitido por\"\r\n const emitidoPorText = `Emitido por `;\r\n const userName = this.authService.usuario?.nome;\r\n const commaAndEm = `, em `;\r\n const dataHoraText = `${formattedDate}`;\r\n\r\n // Calcular o posicionamento alinhado à direita\r\n const fullTextWidth = pdf.getTextWidth(\r\n `${emitidoPorText}${userName}${commaAndEm}${dataHoraText}`\r\n );\r\n const textX4 = pageWidth - 10 - fullTextWidth;\r\n\r\n // Adicionar os segmentos do texto\r\n pdf.setFont(\"helvetica\", \"normal\"); // \"Emitido por\"\r\n pdf.text(emitidoPorText, textX4, textY4);\r\n\r\n const userNameWidth = pdf.getTextWidth(emitidoPorText);\r\n pdf.setFont(\"helvetica\", \"bold\"); // Nome do usuário\r\n pdf.text(userName, textX4 + userNameWidth, textY4);\r\n\r\n const commaAndEmWidth = pdf.getTextWidth(userName);\r\n pdf.setFont(\"helvetica\", \"normal\"); // \", em\"\r\n pdf.text(commaAndEm, textX4 + userNameWidth + commaAndEmWidth, textY4);\r\n\r\n const dataHoraWidth = pdf.getTextWidth(commaAndEm);\r\n pdf.setFont(\"helvetica\", \"bold\"); // Data e hora\r\n pdf.text(dataHoraText, textX4 + userNameWidth + commaAndEmWidth + dataHoraWidth, textY4);\r\n\r\n // Adicionar a numeração da página logo abaixo das informações\r\n const pageNumberY = textY4 + 5; // Posicionar o número da página\r\n pdf.setFont(\"helvetica\", \"normal\"); // Fonte normal\r\n pdf.text(\r\n `Página ${pageNumber}/${totalPages}`,\r\n pageWidth / 2, // Alinhado ao centro\r\n pageNumberY,\r\n { align: \"center\" }\r\n );\r\n }\r\n\r\n async addWatermark(pdf: jsPDF, watermarkImage: string) {\r\n if (this.showWatermark) {\r\n const opacity = 0.1;\r\n pdf.saveGraphicsState();\r\n pdf.setGState(pdf.GState({ opacity: 0.2 }));\r\n pdf.addImage(watermarkImage, 'PNG', 10, 10, 190, 277);\r\n pdf.restoreGraphicsState();\r\n }\r\n }\r\n\r\n cancelarClick() {\r\n this.cancelar.emit();\r\n }\r\n}","
\r\n \"SECONT-SIAC\"\r\n
\r\n

Governo do Estado do Espírito Santo

\r\n
Secretaria de Estado de Controle e Transparência
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-print-layout',\r\n templateUrl: './print-layout.component.html',\r\n styleUrls: ['./print-layout.component.scss']\r\n})\r\nexport class PrintLayoutComponent {\r\n @Input() habilitado = true;\r\n @Output() cancelar = new EventEmitter();\r\n\r\n dataAtual: string;\r\n \r\n constructor(\r\n public authService: AuthService,\r\n ) {}\r\n\r\n print() {\r\n const currentDate = new Date();\r\n this.dataAtual = currentDate.toLocaleString(\"pt-BR\", {\r\n day: \"2-digit\",\r\n month: \"2-digit\",\r\n year: \"numeric\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n\r\n\r\n // this.usuarioEmissor = this.authService.usuario?.nome;\r\n setTimeout(() => {\r\n // Forçar a impressão após a contagem de páginas ser calculada\r\n window.print();\r\n }, 100);\r\n }\r\n \r\n cancelarClick() {\r\n this.cancelar.emit();\r\n }\r\n}","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \"Brasão\r\n \r\n
\r\n

Governo do Estado do Espírito Santo

\r\n
Secretaria de Estado de Controle e Transparência
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Av. João Batista Parra, nº. 600, Ed. Aureliano Hoffman, 10º andar, Enseada do Suá, Vitória\r\n /ES - Cep: 29050-375
Tel: (27) 3636-5352
www.secont.es.gov.brEmitido por {{this.authService.usuario?.nome}}, em {{dataAtual}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n","import { Component, EventEmitter, Input, OnInit, Output, ViewChild, AfterViewInit, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IPaaRankingPrioridadeModel } from 'src/app/models/paa-ranking-prioridade.model';\r\nimport { IPeaRankingPrioridadeModel } from 'src/app/models/pea-ranking-prioridade.model';\r\nimport { ModalDetalharValorRiscoComponent } from 'src/app/pages/pea-form/modal-detalhar-valor-risco/modal-detalhar-valor-risco.component';\r\nimport { RankingDistribuicaoService } from 'src/app/services/ranking-prioridade.service';\r\n\r\n@Component({\r\n selector: 'app-ranking-prioridade',\r\n templateUrl: `./ranking-prioridade.component.html`,\r\n styleUrls: ['./ranking-prioridade.component.scss'],\r\n})\r\nexport class RankingPrioridadeComponent implements OnInit, AfterViewInit, OnChanges {\r\n public columnsRanking = ['codigoUg', 'sigla', 'nome', 'valorRisco', 'actions','fatorRedutor', 'valorRiscoResidual'];\r\n @Input() public rankingPrioridadeDataSource: MatTableDataSource;\r\n @Input() public rankingPrioridadeEmpresasPublicasDataSource: MatTableDataSource;\r\n @Input() public semDadosRanking: boolean;\r\n @Input() public semDadosRankingEmpresaPublica: boolean;\r\n\r\n @ViewChild(\"tabela1\", { static: true }) tabela1: MatSort;\r\n\r\n @ViewChild(\"tabela2\", { static: true }) tabela2: MatSort;\r\n constructor(\r\n public route: ActivatedRoute,\r\n public toastr: ToastrService,\r\n public router: Router,\r\n public localeService: BsLocaleService,\r\n public matDialog: MatDialog,\r\n public rankingService: RankingDistribuicaoService\r\n ) {\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.rankingPrioridadeDataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n this.rankingPrioridadeDataSource.sort = this.tabela1\r\n\r\n this.rankingPrioridadeEmpresasPublicasDataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n this.rankingPrioridadeEmpresasPublicasDataSource.sort = this.tabela2\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.rankingPrioridadeDataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n this.rankingPrioridadeDataSource.sort = this.tabela1\r\n\r\n this.rankingPrioridadeEmpresasPublicasDataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n this.rankingPrioridadeEmpresasPublicasDataSource.sort = this.tabela2\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.rankingPrioridadeDataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n this.rankingPrioridadeDataSource.sort = this.tabela1\r\n\r\n this.rankingPrioridadeEmpresasPublicasDataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n this.rankingPrioridadeEmpresasPublicasDataSource.sort = this.tabela2\r\n }\r\n\r\n public async exibirModalDetalharValorRisco(element: IPeaRankingPrioridadeModel) {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '850px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = element;\r\n this.matDialog.open(\r\n ModalDetalharValorRiscoComponent,\r\n dialogConfig\r\n );\r\n }\r\n\r\n public sortingDataAccessor = (item: any, property: string) => {\r\n switch (property) {\r\n case 'codigoUg':\r\n return item?.codigoUg;\r\n case 'sigla':\r\n return item?.sigla;\r\n case 'nome':\r\n return item?.nome;\r\n case 'indicador':\r\n return item?.indicador.nome;\r\n case 'valorRisco':\r\n return item?.valorRisco;\r\n case 'fatorRedutor':\r\n return item?.fatorRedutor;\r\n case 'valorRiscoResidual':\r\n return item?.valorRiscoResidual;\r\n default:\r\n return item[property];\r\n }\r\n };\r\n\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Código UG\r\n \r\n \r\n {{ element?.codigoUg }}\r\n \r\n \r\n\r\n \r\n \r\n Sigla UG\r\n \r\n \r\n {{ element?.sigla }}\r\n \r\n \r\n\r\n \r\n \r\n Nome UG\r\n \r\n \r\n {{ element?.nome }}\r\n \r\n \r\n\r\n \r\n \r\n Valor Risco Inerente\r\n \r\n \r\n {{ element?.valorRisco }}\r\n \r\n \r\n\r\n \r\n \r\n Fator redutor\r\n \r\n \r\n {{ element?.fatorRedutor }}\r\n \r\n \r\n \r\n \r\n Valor risco residual\r\n \r\n \r\n {{ element?.valorRiscoResidual }}\r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n Sem Registros de Ranking\r\n
\r\n
\r\n\r\n

Empresas Públicas

\r\n\r\n
\r\n \r\n \r\n \r\n Código UG\r\n \r\n \r\n {{ element?.codigoUg }}\r\n \r\n \r\n\r\n \r\n \r\n Sigla UG\r\n \r\n \r\n {{ element?.sigla }}\r\n \r\n \r\n\r\n \r\n \r\n Nome UG\r\n \r\n \r\n {{ element?.nome }}\r\n \r\n \r\n \r\n \r\n \r\n Valor Risco Inerente\r\n \r\n \r\n {{ element?.valorRisco }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Fator redutor\r\n \r\n \r\n {{ element?.fatorRedutor }}\r\n \r\n \r\n \r\n \r\n Valor risco residual\r\n \r\n \r\n {{ element?.valorRiscoResidual }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n Sem Registros de Ranking\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Legenda do risco: Risco Alto Risco Médio Risco Baixo
\r\n
\r\n\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { IRelatoriaCapituloModel } from 'src/app/models/relatoria-capitulo.model';\r\nimport { IRelatoriaModel } from 'src/app/models/relatoria.model';\r\nimport { RelatoriaService } from 'src/app/services/relatoria.service';\r\nimport { Location } from '@angular/common';\r\nimport { BaseFormComponent } from '../../base-form/base-form.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { AprovacaoService } from 'src/app/services/aprovacao.service';\r\nimport { AvaliacaoService } from 'src/app/services/avaliacao.service';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\n\r\n\r\n@Component({\r\n selector: 'app-imprimir-linha-do-tempo',\r\n templateUrl: './imprimir-linha-do-tempo.component.html',\r\n styleUrls: ['./imprimir-linha-do-tempo.component.scss']\r\n})\r\n\r\nexport class imprimirLinhaDoTempoComponent extends BaseFormComponent implements OnInit {\r\n relatoriaDados: IRelatoriaCapituloModel[];\r\n public dadosObtidos: IRelatoriaModel;\r\n public tipoTrabalhoDescricao: any;\r\n public removeMinuta: boolean = true;\r\n visualizarRelatoriaHidden = false;\r\n tipoTrabalho;\r\n datas: any;\r\n activatedRoute: any;\r\n @Output() public abaRelatoria: EventEmitter = new EventEmitter();\r\n @Output() public voltarAbaRelatoria: EventEmitter = new EventEmitter();\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private relatoriaService: RelatoriaService,\r\n private aprovacaoService: AprovacaoService,\r\n private avaliacaoService: AvaliacaoService,\r\n public matDialog: MatDialog,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.obter();\r\n }\r\n\r\n public async obter() {\r\n let res: IBaseModel;\r\n\r\n if (this.id) {\r\n\r\n\r\n const avaliacao = await this.aprovacaoService.imprimirRelatoria(this.id);\r\n res = {\r\n sucesso: avaliacao.sucesso,\r\n dados: JSON.parse(avaliacao.dados),\r\n mensagem: avaliacao.mensagem,\r\n resultadoValidacao: avaliacao.resultadoValidacao\r\n } as IBaseModel;\r\n const tipoTrabalho = this.route.snapshot.paramMap.get('tipoTrabalho');\r\n switch (tipoTrabalho) {\r\n case 'pea':\r\n this.tipoTrabalho = 1;\r\n break;\r\n case 'paa':\r\n this.tipoTrabalho = 2;\r\n break;\r\n case 'opa':\r\n this.tipoTrabalho = 3;\r\n break;\r\n case 'osa':\r\n this.tipoTrabalho = 4;\r\n break;\r\n case 'planejamento':\r\n this.tipoTrabalho = 7;\r\n break;\r\n }\r\n debugger;\r\n if (res.sucesso) {\r\n this.relatoriaDados = res.dados.relatoriasCapitulos;\r\n this.dadosObtidos = res.dados;\r\n if (this.dadosObtidos?.tipoTrabalhoStatus.codigo == 4)\r\n this.removeMinuta = false;\r\n if (Number(this.dadosObtidos?.tipoTrabalhoStatus) === 4) {\r\n this.removeMinuta = false;\r\n }\r\n var tipoTrabalhoId = this.dadosObtidos.tipoTrabalhoId\r\n \r\n //Trecho comentado para sempre mostrar os responsáveis,\r\n // em alguns o tipoTrabalho momentos estava retorna um objeto ao invés do número\r\n // this.tipoTrabalho = res.dados.tipoTrabalho;\r\n \r\n const resultado = await this.avaliacaoService.obter(this.tipoTrabalho, tipoTrabalhoId);\r\n this.datas = resultado.dados.datas;\r\n switch (this.tipoTrabalho) {\r\n case 1:\r\n this.tipoTrabalhoDescricao = 'PEAC';\r\n break;\r\n case 2:\r\n this.tipoTrabalhoDescricao = 'PAAC';\r\n break;\r\n case 3:\r\n this.tipoTrabalhoDescricao = 'OPA';\r\n break;\r\n case 4:\r\n this.tipoTrabalhoDescricao = 'OSA';\r\n break;\r\n case 7:\r\n this.tipoTrabalhoDescricao = 'Planejamento';\r\n break;\r\n case 8:\r\n this.tipoTrabalhoDescricao = 'PAAC - Especial';\r\n break;\r\n }\r\n\r\n }\r\n else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n return null;\r\n }\r\n }\r\n this.visualizarRelatoriaHidden = true;\r\n }\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n\r\n backClicked() {\r\n window.close()\r\n }\r\n\r\n VoltarRelatoria() {\r\n this.abaRelatoria.emit(5);\r\n this.voltarAbaRelatoria.emit(true);\r\n this.router.navigate(['/pea/', this.id]);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n Relatoria - {{tipoTrabalhoDescricao}} - {{dadosObtidos?.nomeDocumento}}\r\n

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{ item.pessoa?.nome }}
\r\n Elaborador\r\n

\r\n\r\n

\r\n {{ item.pessoa?.nome }}
\r\n {{ item.pessoa?.funcao?.descricao }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { IRelatoriaCapituloModel } from 'src/app/models/relatoria-capitulo.model';\r\nimport { IRelatoriaModel } from 'src/app/models/relatoria.model';\r\nimport { RelatoriaService } from 'src/app/services/relatoria.service';\r\nimport { Location } from '@angular/common';\r\nimport { BaseFormComponent } from '../../base-form/base-form.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { AprovacaoService } from 'src/app/services/aprovacao.service';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\n\r\n@Component({\r\n selector: 'app-imprimir-relatoria',\r\n templateUrl: './imprimir-relatoria.component.html',\r\n styleUrls: ['./imprimir-relatoria.component.scss']\r\n})\r\n\r\nexport class ImprimirRelatoriaComponent extends BaseFormComponent implements OnInit {\r\n relatoriaDados: IRelatoriaCapituloModel[];\r\n public dadosObtidos: IRelatoriaModel;\r\n espelho = false;\r\n tipoTrabalho;\r\n activatedRoute: any;\r\n @Output() public abaRelatoria: EventEmitter = new EventEmitter();\r\n @Output() public voltarAbaRelatoria: EventEmitter = new EventEmitter();\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private relatoriaService: RelatoriaService,\r\n private aprovacaoService: AprovacaoService,\r\n public matDialog: MatDialog,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n const path = this.route.routeConfig.path?.toString();\r\n if (path.includes('espelho-relatorio')) {\r\n this.espelho = true;\r\n }\r\n\r\n const tipoTrabalho = this.route.snapshot.paramMap.get('tipoTrabalho');\r\n switch (tipoTrabalho) {\r\n case '1':\r\n this.tipoTrabalho = 1;\r\n break;\r\n case '2':\r\n this.tipoTrabalho = 2;\r\n break;\r\n case '3':\r\n this.tipoTrabalho = 3;\r\n break;\r\n case '4':\r\n this.tipoTrabalho = 4;\r\n break;\r\n case '7':\r\n this.tipoTrabalho = 7;\r\n break;\r\n case '8':\r\n this.tipoTrabalho = 8;\r\n break;\r\n } \r\n\r\n this.obter();\r\n }\r\n\r\n public async obter() {\r\n let res: IBaseModel;\r\n\r\n if (this.id) {\r\n\r\n if (this.espelho) {\r\n const avaliacao = await this.aprovacaoService.imprimirRelatoria(this.id);\r\n res = {\r\n sucesso: avaliacao.sucesso,\r\n dados: JSON.parse(avaliacao.dados),\r\n mensagem: avaliacao.mensagem,\r\n resultadoValidacao: avaliacao.resultadoValidacao\r\n } as IBaseModel;\r\n }\r\n else {\r\n res = await this.relatoriaService.obterPorTipoTrabalho(this.id, this.tipoTrabalho);\r\n }\r\n\r\n if (res.sucesso) { \r\n this.relatoriaDados = res.dados.relatoriasCapitulos;\r\n this.dadosObtidos = res.dados;\r\n }\r\n else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n return null;\r\n }\r\n }\r\n }\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n\r\n backClicked() {\r\n window.history.back()\r\n }\r\n\r\n VoltarRelatoria() {\r\n this.abaRelatoria.emit(5);\r\n this.voltarAbaRelatoria.emit(true);\r\n this.router.navigate(['/pea/', this.id]); \r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n \r\n \r\n Página Inicial\r\n
  2. \r\n
  3. \r\n Relatoria\r\n
  4. \r\n
  5. \r\n Imprimir\r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Imprimir Relatoria\r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, Input, Output, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { IRelatoriaCapituloModel } from 'src/app/models/relatoria-capitulo.model';\r\nimport { IRelatoriaModel } from 'src/app/models/relatoria.model';\r\nimport { RelatoriaService } from 'src/app/services/relatoria.service';\r\nimport { IEnumModel } from 'src/app/models/enum.model';\r\nimport Swal from 'sweetalert2';\r\nimport { ModeloRelatorioService } from 'src/app/services/modelo-relatorio.service';\r\nimport { BaseFormComponent } from '../base-form/base-form.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { IModeloRelatorioModel } from 'src/app/models/modelo-relatorio.model';\r\nimport { ICapituloRelatorioModel } from 'src/app/models/capitulo-relatorio.model';\r\nimport { RelatoriaCapituloService } from 'src/app/services/relatoria-capitulo.service';\r\nimport { PaaService } from 'src/app/services/paa.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\nexport type IModeloRelatoria = {\r\n modeloRelatorio: IModeloRelatorioModel[] | IModeloRelatorioModel | any;\r\n modeloRelatorioId: number | any;\r\n habilitarGerarRelatoria: boolean;\r\n jaEnviadoAprovacao: boolean;\r\n status: IEnumModel;\r\n situacao: IEnumModel;\r\n\r\n}\r\n@Component({\r\n selector: 'app-relatoria',\r\n templateUrl: './relatoria.component.html',\r\n styleUrls: ['./relatoria.component.scss']\r\n})\r\nexport class RelatoriaComponent extends BaseFormComponent implements OnInit, OnChanges{\r\n @Input() aba: number;\r\n @Input() relatoriaDados: (IRelatoriaCapituloModel[] | IModeloRelatorioModel[] | ICapituloRelatorioModel[]);\r\n @Input() visualizar: boolean;\r\n @Input() submit: boolean;\r\n @Input() dadosObtidos: IRelatoriaModel;\r\n @Input() public model: IModeloRelatoria = {} as IModeloRelatoria;\r\n @Input() tipoTrabalhoId: number;\r\n @Input() obterDados: () => void;\r\n @Input() public impressao: boolean;\r\n @Input() tipoTrabalhoRef: number;\r\n @Input() visualizarRelatoriaHidden: boolean;\r\n public reprovado: boolean;\r\n public homologado: boolean;\r\n public emAprovacao: boolean;\r\n idTipoTrabalhoPaac:number = 2;\r\n idTipoTrabalhoPaacEspecial:number = 8;\r\n\r\n tipoTrabalho: number;\r\n public salvarDadosPendente = false;\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private relatoriaService: RelatoriaService,\r\n private modeloRelatorioService: ModeloRelatorioService,\r\n private relatoriaCapituloService: RelatoriaCapituloService,\r\n private paaService: PaaService,\r\n private authService: AuthService,\r\n public matDialog: MatDialog,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n \r\n if(!this.tipoTrabalhoRef || this.tipoTrabalhoRef == 0){\r\n const path = this.route.routeConfig.path?.toString();\r\n if (path?.includes('pea')) {\r\n this.tipoTrabalho = 1;\r\n }\r\n else if (path?.includes('paa')) {\r\n this.tipoTrabalho = 2;\r\n }\r\n else if (path?.includes('opa')) {\r\n this.tipoTrabalho = 3;\r\n }\r\n else if (path?.includes('osa')) {\r\n this.tipoTrabalho = 4;\r\n }\r\n else if (path?.includes('planejamento')) {\r\n this.tipoTrabalho = 7;\r\n }\r\n }else{\r\n this.tipoTrabalho = this.tipoTrabalhoRef;\r\n }\r\n \r\n\r\n this.habilitarGerar();\r\n this.obterRelatorio(); \r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if(changes.model?.currentValue !== undefined) {\r\n this.model = changes.model?.currentValue;\r\n this.reprovado = this.model?.jaEnviadoAprovacao;\r\n if(this.model?.situacao?.codigo === 4 || this.model?.status?.codigo === 4){\r\n this.homologado = true;\r\n }\r\n\r\n }\r\n }\r\n ngDoCheck() {\r\n if ( this.model?.situacao?.codigo === 2 || this.model?.status?.codigo === 2) {\r\n this.emAprovacao = true;\r\n }\r\n }\r\n\r\n public habilitarGerar(){\r\n //TODO:SOMENTE PAA POR ENQUANTO\r\n if(this.id && (this.tipoTrabalho == this.idTipoTrabalhoPaac || this.tipoTrabalho == this.idTipoTrabalhoPaacEspecial)){\r\n this.relatoriaService.habilitarGerar(this.id, this.tipoTrabalho)\r\n .then((res) => {\r\n if(res.sucesso)\r\n this.model.habilitarGerarRelatoria = res.dados;\r\n })\r\n }\r\n }\r\n\r\n public obterRelatorio() {\r\n //if (this.relatoriaDados && this.dadosObtidos) { return; }\r\n\r\n if (this.id) {\r\n this.relatoriaService.obterPorTipoTrabalho(this.id, this.tipoTrabalho)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n // this.relatoriaDados = res.dados.relatoriasCapitulos;\r\n // this.dadosObtidos = res.dados;\r\n this.relatoriaService.reltoriaCurrent.subscribe(relatoriaDados => {\r\n this.relatoriaDados = relatoriaDados?.relatoriasCapitulos;\r\n this.dadosObtidos = relatoriaDados;\r\n })\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n }\r\n\r\n public async gerar() {\r\n\r\n this.relatoriaService.gerar({\r\n modeloRelatorioId: (this.model.modeloRelatorio as IModeloRelatorioModel).id,\r\n tipoTrabalhoId: this.id,\r\n tipoTrabalho: { codigo: this.tipoTrabalho } as IEnumModel\r\n } as IRelatoriaModel)\r\n .then(res => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.obterRelatorio();\r\n this.obterDados();\r\n }\r\n if (!res.sucesso) {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }).catch(err => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public async exibirModalModeloRelatorio() {\r\n try {\r\n const res = await this.modeloRelatorioService.obterPorTipoTrabalho(this.tipoTrabalho.toString(), true, true);\r\n if (res.sucesso) {\r\n res.dados.sort();\r\n const modal = this.exibirModal('Selecionar Modelo de Relatório', res.dados);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.salvarDadosPendente = true;\r\n this.model.modeloRelatorio = data;\r\n this.model.modeloRelatorioId = data.id;\r\n }\r\n });\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public cancelar() {\r\n if(this.tipoTrabalho == 1)\r\n\t\t this.router.navigate(['/pea']);\r\n else if(this.tipoTrabalho == this.idTipoTrabalhoPaac || this.tipoTrabalho == this.idTipoTrabalhoPaacEspecial)\r\n this.router.navigate(['/paa']);\r\n else if(this.tipoTrabalho == 3)\r\n this.router.navigate(['/opa']);\r\n else if(this.tipoTrabalho == 4)\r\n this.router.navigate(['/osa']);\r\n else if(this.tipoTrabalho == 7)\r\n this.router.navigate(['/planejamento']);\r\n\t }\r\n\r\n desabilitarBotaoEnviarAprovacao(): boolean{\r\n return this.relatoriaDados == null \r\n || this.relatoriaDados == undefined \r\n || this.dadosObtidos.tipoTrabalhoStatus.codigo != 1;\r\n }\r\n\r\n public async enviarAprovacao() {\r\n \r\n if(this.tipoTrabalho == this.idTipoTrabalhoPaac || this.tipoTrabalho == this.idTipoTrabalhoPaacEspecial){\r\n\r\n const perfis = await this.authService.obterPerfisSimplificado();\r\n const inputOptions = new Map;\r\n\r\n perfis.dados.forEach(element => {\r\n inputOptions.set(element.guid, element.nome)\r\n });\r\n\r\n Swal.fire({\r\n title: 'Enviar para aprovação',\r\n text: 'Selecione seu Perfil de envio para aprovação',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Enviar',\r\n cancelButtonText: 'Cancelar',\r\n input: 'select',\r\n inputOptions,\r\n }).then(res => {\r\n if(res.isConfirmed){ \r\n this.paaService.enviarAprovacao(this.id, res.value.toString())\r\n .then((res) => {\r\n if (res.sucesso) {\r\n if (res.mensagem.codigo === 42 || res.mensagem.codigo === 99) {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n return\r\n }\r\n this.exibirMensagemSucesso('PAAC enviado para aprovação.');\r\n this.router.navigate([`/pendencias`]);\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n })\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Ainda não existe um relatorio gerado

\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { IRelatoriaCapituloModel } from 'src/app/models/relatoria-capitulo.model';\r\nimport { IRelatoriaModel } from 'src/app/models/relatoria.model';\r\nimport { RelatoriaService } from 'src/app/services/relatoria.service';\r\nimport { Location } from '@angular/common';\r\nimport { BaseFormComponent } from '../../base-form/base-form.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BsLocaleService } from 'ngx-bootstrap/datepicker';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { AprovacaoService } from 'src/app/services/aprovacao.service';\r\nimport { IBaseModel } from 'src/app/models/base.model';\r\nimport { ValueConverter } from '@angular/compiler/src/render3/view/template';\r\n\r\n\r\n@Component({\r\n selector: 'app-visualizar-relatoria',\r\n templateUrl: './visualizar-relatoria.component.html',\r\n styleUrls: ['./visualizar-relatoria.component.scss']\r\n})\r\n\r\nexport class VisualizarRelatoriaComponent extends BaseFormComponent implements OnInit {\r\n relatoriaDados: IRelatoriaCapituloModel[];\r\n public dadosObtidos: IRelatoriaModel;\r\n public removeMinuta: boolean = true;\r\n visualizarRelatoriaHidden = false;\r\n tipoTrabalho;\r\n activatedRoute: any;\r\n @Output() public abaRelatoria: EventEmitter = new EventEmitter();\r\n @Output() public voltarAbaRelatoria: EventEmitter = new EventEmitter();\r\n\r\n constructor(\r\n route: ActivatedRoute,\r\n toastr: ToastrService,\r\n router: Router,\r\n localeService: BsLocaleService,\r\n private relatoriaService: RelatoriaService,\r\n private aprovacaoService: AprovacaoService,\r\n public matDialog: MatDialog,\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.obter();\r\n }\r\n\r\n public async obter() {\r\n let res: IBaseModel;\r\n \r\n if (this.id) {\r\n\r\n \r\n const avaliacao = await this.aprovacaoService.imprimirRelatoria(this.id);\r\n res = {\r\n sucesso: avaliacao.sucesso,\r\n dados: JSON.parse(avaliacao.dados),\r\n mensagem: avaliacao.mensagem,\r\n resultadoValidacao: avaliacao.resultadoValidacao\r\n } as IBaseModel;\r\n \r\n if (res.sucesso) { \r\n this.relatoriaDados = res.dados.relatoriasCapitulos;\r\n this.dadosObtidos = res.dados;\r\n \r\n if (this.dadosObtidos?.tipoTrabalhoStatus.codigo == 4)\r\n this.removeMinuta = false;\r\n if (Number(this.dadosObtidos?.tipoTrabalhoStatus) === 4) {\r\n this.removeMinuta = false;\r\n }\r\n }\r\n else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n return null;\r\n }\r\n }\r\n this.visualizarRelatoriaHidden = true;\r\n }\r\n\r\n print(): void {\r\n window.print();\r\n }\r\n\r\n backClicked() {\r\n window.close()\r\n }\r\n\r\n VoltarRelatoria() {\r\n this.abaRelatoria.emit(5);\r\n this.voltarAbaRelatoria.emit(true);\r\n this.router.navigate(['/pea/', this.id]); \r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Visualizar Relatoria {{dadosObtidos?.tipoTrabalho.nome}} - {{dadosObtidos?.nomeDocumento}}\r\n

\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'sanitizedHtml'\r\n})\r\nexport class SanitizedHtmlPipe implements PipeTransform {\r\n constructor(private sanitized: DomSanitizer) { }\r\n transform(value: any): any {\r\n return this.sanitized.bypassSecurityTrustHtml(value);\r\n }\r\n}","import { UnidadeGestoraService } from './../../../../services/unidade-gestora.service';\r\nimport { Component, Inject, OnInit, ViewChild } from \"@angular/core\";\r\nimport { FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport {\r\n MatDialog,\r\n\tMatDialogRef,\r\n\tMAT_DIALOG_DATA,\r\n} from \"@angular/material/dialog\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\nimport { MatSort } from \"@angular/material/sort\";\r\nimport { MatTableDataSource } from \"@angular/material/table\";\r\nimport Swal from 'sweetalert2';\r\n\r\nimport { IResponsavelModel } from \"src/app/models/responsaveis.model\";\r\nimport { IUnidadeGestoraModel } from \"src/app/models/unidade-gestora.model\";\r\nimport { ISubtipoAuditoriaModel } from './../../../../models/subtipo-auditoria.model';\r\nimport { PlanejamentoUgSubtipo } from '../unidade-gestora.component';\r\n\r\n@Component({\r\n\tselector: \"app-modal-incluir-ug-component\",\r\n\ttemplateUrl: \"./modal-incluir-ug-component.component.html\",\r\n\tstyleUrls: [\"./modal-incluir-ug-component.component.scss\"],\r\n})\r\nexport class ModalIncluirUgComponentComponent implements OnInit {\r\n\tpublic dataSourceUG =\r\n\t\tnew MatTableDataSource([]);\r\n\tpublic unidadesGestoras: IUnidadeGestoraModel[];\r\n\tpublic responsaveis: IResponsavelModel[];\r\n\tpublic ugSelecionada!: IUnidadeGestoraModel;\r\n\tpublic responsavelSelecionado: IResponsavelModel;\r\n public subtipoList: ISubtipoAuditoriaModel[] = [] as ISubtipoAuditoriaModel[];\r\n public subtipoSelecionado!: ISubtipoAuditoriaModel;\r\n public ugType: string = '';\r\n public subTiposVinculados: PlanejamentoUgSubtipo[] = [] as PlanejamentoUgSubtipo[];\r\n\r\n public displayedColumns: string[] = ['ug', 'responsavel', 'actions'];\r\n\r\n\tpublic form = new FormGroup({\r\n\t\tug: new FormControl(\"\", Validators.required),\r\n\t\tresponsavel: new FormControl(\"\", Validators.required),\r\n\t});\r\n\r\n\tconstructor(\r\n\t\tpublic matDialog: MatDialog,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data,\r\n private unidadeGestoraService: UnidadeGestoraService\r\n\t) {\r\n this.displayedColumns = data.displayedColumns;\r\n this.subtipoList = data?.data?.subtipoSelecionado;\r\n this.unidadesGestoras = data?.data?.unidadesGestoras;\r\n this.subTiposVinculados = data?.data?.planejamentoUgSubtipo;\r\n this.ugType = data.ugType;\r\n }\r\n\r\n\t@ViewChild(\"TableOnePaginator\", { static: true }) tableOnePaginator: MatPaginator;\r\n\t@ViewChild(\"tabela1\", { static: true }) tabela1: MatSort;\r\n\r\n\tngOnInit(): void {\r\n this.obterUnidadesGestoras();\r\n\t\tthis.dataSourceUG.sort = this.tabela1;\r\n\t\tthis.dataSourceUG.sortingDataAccessor = this.sortingDataAccessor;\r\n }\r\n\r\n\tpublic salvar() {\r\n\t\tthis.dialogRef.close(this.dataSourceUG.data);\r\n\t}\r\n\r\n public async obterUnidadesGestoras() {\r\n try {\r\n if(this.unidadesGestoras?.length === 0) {\r\n const result = await this.unidadeGestoraService.obterAtivos();\r\n if (result.sucesso) {\r\n this.unidadesGestoras = result.dados;\r\n }\r\n }\r\n } catch (error) {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"error\",\r\n text: ' Erro, ao obter unidades gestoras!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n }\r\n\r\n }\r\n\r\n\tpublic adicionarUg() {\r\n if(this.ugType === 'subtipo'){\r\n if (this.ugSelecionada?.id === undefined || (this.subtipoSelecionado as any)?.subTipoAuditoria?.id === undefined){\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: ' Preencha todos os campos!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n\r\n const findUgSelecionada = this.subTiposVinculados.find(x => x.subtipoAuditoria.id === (this.subtipoSelecionado as any)?.subTipoAuditoria?.id && x.unidadeGestora.id === this.ugSelecionada.id)?.planejamentoId;\r\n const findUgDataSourceSelecionada = this.dataSourceUG.data.find(x => x.subtipoAuditoria.subTipoAuditoriaId === (this.subtipoSelecionado as any).subTipoAuditoria?.id && x.unidadeGestora.id === this.ugSelecionada.id);\r\n\r\n if (findUgSelecionada || findUgDataSourceSelecionada?.unidadeGestora?.id ) {\r\n Swal.fire({\r\n toast: true,\r\n position: \"top-end\",\r\n icon: \"warning\",\r\n text: ' Esse items ja estão na listagem!',\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: true,\r\n });\r\n return;\r\n }\r\n }\r\n\r\n\t\tthis.dataSourceUG.data.push({\r\n\t\t\tunidadeGestora: this.ugSelecionada,\r\n\t\t\tresponsavel: {\r\n\t\t\t\tnome: this.responsavelSelecionado?.nome,\r\n\t\t\t\tresponsavelId: this.responsavelSelecionado?.idResponsavel,\r\n\t\t\t},\r\n subtipoAuditoria: this.subtipoSelecionado\r\n\t\t} as any);\r\n\r\n\t\tthis.dataSourceUG.data = this.dataSourceUG.data;\r\n\t\tthis.dataSourceUG.paginator = this.tableOnePaginator;\r\n\r\n\t\tthis.ugSelecionada = undefined;\r\n\t\tthis.responsavelSelecionado = undefined;\r\n\t\tthis.subtipoSelecionado = undefined;\r\n\t}\r\n\r\n\tpublic sortingDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"ug\":\r\n\t\t\t\treturn item.unidadeGestora?.sigla;\r\n\t\t\tcase \"responsavel\":\r\n\t\t\t\treturn item.unidadeGestora?.sigla;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n\tpublic excluirUg(i: number) {\r\n\t\tthis.dataSourceUG.data.splice(i, 1);\r\n\t\tthis.dataSourceUG._updateChangeSubscription();\r\n\t}\r\n\r\n public incluiColuna(nomeColuna: string): boolean {\r\n return this.displayedColumns.includes(nomeColuna);\r\n }\r\n\r\n\tpublic cancelar() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n

Incluir UG

\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n {{ item?.sigla }}-{{ item?.nome }}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ item?.nome }}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ item?.subTipoAuditoria?.nome}}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n
\r\n Unidade(s) Gestora(s)\r\n \r\n {{ element?.unidadeGestora?.sigla }} -\r\n {{ element?.unidadeGestora?.nome }}\r\n \r\n Responsável\r\n \r\n {{ element?.responsavel?.nome }}\r\n \r\n Subtipo\r\n \r\n {{ element?.subtipoAuditoria.subTipoAuditoria?.nome}}\r\n \r\n Ação\r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n Nenhum registro encontrado\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n","import { Component, Input, OnInit, EventEmitter, Output, ViewChild, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\n\r\nimport { ISubtipoAuditoriaModel } from 'src/app/models/subtipo-auditoria.model';\r\nimport { IUnidadeGestoraModel } from 'src/app/models/unidade-gestora.model';\r\nimport { ISolicitacaoTecnicaUnidadeGestoraModel } from './../../../models/solicitacao-tecnica.model';\r\nimport { ModalIncluirUgComponentComponent } from './modal-incluir-ug-component/modal-incluir-ug-component.component';\r\nimport { IResponsavelModel } from 'src/app/models/responsaveis.model';\r\nimport { IPlanejamentoSubtipoAuditoriaModel } from 'src/app/models/planejamento-subtipo-auditoria.model';\r\nimport Swal from 'sweetalert2';\r\n\r\ntype mainType = IUnidadeGestoraModel | ISolicitacaoTecnicaUnidadeGestoraModel | PlanejamentoUgSubtipo;\r\nexport interface IPlanejamentoUnidadeGestoraModel{\r\n unidadeGestora?: IUnidadeGestoraModel;\r\n responsavel?: IResponsavelModel;\r\n}\r\nexport interface PlanejamentoUgSubtipo {\r\n planejamentoId: number,\r\n unidadeGestora: IUnidadeGestoraModel,\r\n subtipoAuditoria: ISubtipoAuditoriaModel\r\n}\r\n\r\n@Component({\r\n selector: 'app-unidade-gestora',\r\n templateUrl: './unidade-gestora.component.html',\r\n styleUrls: ['./unidade-gestora.component.scss']\r\n})\r\nexport class UnidadeGestoraComponent implements OnInit, OnChanges {\r\n\r\n public dataSource = new MatTableDataSource([]);\r\n\r\n @Input() public visualizar: boolean = false;\r\n @Input() public hiddenEdicao: boolean = false;\r\n @Input() public displayedColumns: string[] = ['ug', 'responsavel', 'actions'];\r\n @Input() public subtipoSelecionado: IPlanejamentoSubtipoAuditoriaModel[] = [] as IPlanejamentoSubtipoAuditoriaModel[];\r\n @Input() public unidadesGestoras: IUnidadeGestoraModel[] = [] as IUnidadeGestoraModel[];\r\n @Input() public planejamentoUgSubtipo: PlanejamentoUgSubtipo[] = [] as PlanejamentoUgSubtipo[];\r\n @Input() public ugType: string = '';\r\n @Output() public dados: EventEmitter = new EventEmitter();\r\n @Output() public excluir: EventEmitter = new EventEmitter();\r\n\r\n @ViewChild(\"TableOnePaginator\", { static: true }) tableOnePaginator: MatPaginator;\r\n\t@ViewChild(\"tabela1\", { static: true }) tabela1: MatSort;\r\n\r\n constructor(public matDialog: MatDialog) { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if(changes.planejamentoUgSubtipo.currentValue !== undefined) {\r\n this.dataSource.data = changes.planejamentoUgSubtipo.currentValue\r\n this.dataSource.sort = this.tabela1;\r\n this.dataSource.sortingDataAccessor = this.sortingDataAccessor;\r\n this.dataSource.paginator = this.tableOnePaginator;\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public naoTemJustificativa(planejamento: IPlanejamentoSubtipoAuditoriaModel[]): IPlanejamentoSubtipoAuditoriaModel[] {\r\n return planejamento.filter(a => !a.justificativa)\r\n }\r\n\r\n public modalIncluirUg() {\r\n const dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.id = \"modal-component-ug\";\r\n\t\tdialogConfig.width = \"70vw\";\r\n\t\tdialogConfig.maxHeight = \"auto\";\r\n\t\tdialogConfig.hasBackdrop = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.data = {\r\n displayedColumns: this.displayedColumns,\r\n ugType: this.ugType,\r\n data: {\r\n subtipoSelecionado: this.naoTemJustificativa(this.subtipoSelecionado),\r\n unidadesGestoras: this.unidadesGestoras,\r\n planejamentoUgSubtipo: this.planejamentoUgSubtipo\r\n }\r\n };\r\n\r\n\t\tconst modal = this.matDialog.open(\r\n ModalIncluirUgComponentComponent,\r\n\t\t\tdialogConfig\r\n );\r\n modal.afterClosed().subscribe((data: any) => {\r\n if (data) {\r\n data.forEach(element => {\r\n this.dataSource.data = [...this.dataSource.data, element] ;\r\n });\r\n this.dados.emit(this.dataSource.data);\r\n }\r\n });\r\n\t}\r\n public excluirUg(ugId: number, subtipoId: number) {\r\n Swal.fire({\r\n title: \"Excluir Registro\",\r\n text: \"Tem certeza que deseja excluir esse Registro?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonText: \"Sim\",\r\n cancelButtonText: \"Não\",\r\n }).then((res) => {\r\n if (res.value) {\r\n this.excluir.emit({ugId, subtipoId});\r\n }})\r\n\r\n\t}\r\n\r\n public sortingDataAccessor = (item, property) => {\r\n\t\tswitch (property) {\r\n\t\t\tcase \"subtipo\":\r\n\t\t\t\treturn item?.subtipoAuditoria?.subTipoAuditoria?.nome ?? item?.subtipoAuditoria?.nome;\r\n\t\t\tcase \"responsavel\":\r\n\t\t\t\treturn item?.responsavel?.nome;\r\n\t\t\tcase \"ug\":\r\n\t\t\t\treturn item?.unidadeGestora?.sigla;\r\n\t\t\tdefault:\r\n\t\t\t\treturn item[property];\r\n\t\t}\r\n\t};\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n Unidade(s) Gestora(s)\r\n \r\n {{element?.unidadeGestora?.sigla}} - {{ element?.unidadeGestora?.nome }}\r\n \r\n Responsável\r\n \r\n {{ element?.responsavel?.nome }}\r\n \r\n Subtipo\r\n \r\n {{ element?.subtipoAuditoria?.subTipoAuditoria?.nome }}\r\n {{ element?.subtipoAuditoria?.nome }}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n Nenhuma Ug vinculada\r\n
\r\n 0)\" [pageSizeOptions]=\"[5]\" showFirstLastButtons>\r\n \r\n
\r\n
\r\n
\r\n","import { Directive, HostListener } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appKeyboardlock]'\r\n})\r\nexport class KeyboardlockDirective {\r\n\r\n constructor() { }\r\n\r\n @HostListener('paste', ['$event']) blockPaste(e: KeyboardEvent) {\r\n e.preventDefault();\r\n }\r\n\r\n @HostListener('copy', ['$event']) blockCopy(e: KeyboardEvent) {\r\n e.preventDefault();\r\n }\r\n\r\n @HostListener('cut', ['$event']) blockCut(e: KeyboardEvent) {\r\n e.preventDefault();\r\n }\r\n\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { version } from './../../../../../package.json';\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss'],\r\n})\r\nexport class FooterComponent {\r\n public appVersion = version;\r\n constructor() { }\r\n\r\n}\r\n","
\r\n
\r\n Version {{ appVersion }}\r\n
\r\n Todos os direitos reservados SECONT-ES\r\n
","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss'],\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n @Output() toggleMenuSidebar: EventEmitter = new EventEmitter();\r\n public searchForm: FormGroup;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n this.searchForm = new FormGroup({\r\n search: new FormControl(null),\r\n });\r\n }\r\n}\r\n","\r\n","import { Component, ElementRef, HostListener, OnInit, Renderer2, ViewChild } from '@angular/core';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-user-dropdown-menu',\r\n templateUrl: './user-dropdown-menu.component.html',\r\n styleUrls: ['./user-dropdown-menu.component.scss'],\r\n})\r\nexport class UserDropdownMenuComponent implements OnInit {\r\n @ViewChild('dropdownMenu', { static: false }) dropdownMenu;\r\n @HostListener('document:click', ['$event'])\r\n clickout(event) {\r\n if (!this.elementRef.nativeElement.contains(event.target)) {\r\n this.hideDropdownMenu();\r\n }\r\n }\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n public authService: AuthService\r\n ) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n public toggleDropdownMenu() {\r\n if (this.dropdownMenu.nativeElement.classList.contains('show')) {\r\n this.hideDropdownMenu();\r\n } else {\r\n this.showDropdownMenu();\r\n }\r\n }\r\n\r\n public showDropdownMenu() {\r\n this.renderer.addClass(this.dropdownMenu.nativeElement, 'show');\r\n }\r\n\r\n public hideDropdownMenu() {\r\n this.renderer.removeClass(this.dropdownMenu.nativeElement, 'show');\r\n }\r\n\r\n public logout() {\r\n this.authService.logout();\r\n }\r\n}\r\n","
  • \r\n \r\n \"User\r\n \r\n
      \r\n \r\n
    • \r\n \"User\r\n\r\n

      \r\n {{authService.usuario?.nome}}\r\n {{authService.usuario?.email}}\r\n

      \r\n
    • \r\n \r\n
    • \r\n Sair\r\n
    • \r\n
    \r\n
  • \r\n","import { Component, OnInit, Renderer2, ViewChild } from '@angular/core';\r\nimport $ from 'jquery';\r\n\r\n@Component({\r\n selector: 'app-main',\r\n templateUrl: './main.component.html',\r\n styleUrls: ['./main.component.scss'],\r\n})\r\nexport class MainComponent implements OnInit {\r\n public sidebarMenuOpened = true;\r\n public showSideBar = true;\r\n\r\n @ViewChild('contentWrapper', { static: false }) contentWrapper;\r\n\r\n constructor(private renderer: Renderer2) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n public mainSidebarHeight(height) {\r\n this.renderer.setStyle(\r\n this.contentWrapper.nativeElement,\r\n 'min-height',\r\n height - 114 + 'px'\r\n );\r\n }\r\n\r\n public toggleMenuSidebar() {\r\n if (this.sidebarMenuOpened) {\r\n $('body').removeClass('sidebar-collapse');\r\n $('body').addClass('sidebar-collapse');\r\n this.sidebarMenuOpened = false;\r\n } else {\r\n $('body').addClass('sidebar-collapse');\r\n $('body').removeClass('sidebar-collapse');\r\n this.sidebarMenuOpened = true;\r\n }\r\n }\r\n}\r\n","
    \r\n \r\n \r\n\r\n
    \r\n \r\n
    \r\n\r\n \r\n
    \r\n","import { Component, Input, OnInit, AfterViewInit } from '@angular/core';\r\nimport { IMenuItemModel } from 'src/app/models/menu.model';\r\n\r\n@Component({\r\n selector: '[app-menuitem]',\r\n templateUrl: './menuitem.component.html',\r\n styleUrls: ['./menuitem.component.scss'],\r\n})\r\nexport class MenuItemComponent implements OnInit, AfterViewInit{\r\n @Input() menuItems: IMenuItemModel[];\r\n @Input() menuName: string = \"\";\r\n\r\n constructor() { }\r\n\r\n async ngOnInit() { \r\n if (this.menuName === 'Cadastros/Geral') {\r\n this.menuItems.sort((a, b) => (a.nome > b.nome) ? 1 : ((b.nome > a.nome) ? -1 : 0))\r\n }\r\n }\r\n async ngAfterViewInit() {\r\n }\r\n}\r\n","
  • \r\n \r\n \r\n \r\n

    {{item.nome}}

    \r\n
    \r\n \r\n \r\n
    0\" class=\"nav-link\" role=\"link\">\r\n \r\n \r\n

    {{item.nome}}

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n\r\n
      0\" class=\"nav nav-treeview\" style=\"display: none\" app-menuitem [menuName]=\"menuName + '/' + item.nome\" [menuItems]=\"item.itemsFilhos\">\r\n\t\t\t\t\t\t\t\t\t\r\n
    \r\n
  • \r\n\r\n\r\n","import { AfterViewInit, Component, EventEmitter, OnInit, Output, ViewChild } from '@angular/core';\r\nimport * as AdminLte from 'admin-lte';\r\nimport $ from 'jquery';\r\nimport { EnumAcaoRecurso } from 'src/app/models/enum/acao-recurso.enum';\r\nimport { EnumRecursoPerfil } from 'src/app/models/enum/recurso-perfil.enum';\r\nimport { IMenuModel } from 'src/app/models/menu.model';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { MenuService } from 'src/app/services/menu.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-sidebar',\r\n templateUrl: './sidebar.component.html',\r\n styleUrls: ['./sidebar.component.scss'],\r\n})\r\nexport class SidebarComponent implements OnInit, AfterViewInit {\r\n @ViewChild('main-sidebar', { static: false }) mainSidebar;\r\n @Output() mainSidebarHeight: EventEmitter = new EventEmitter();\r\n\r\n public model: IMenuModel = {} as IMenuModel;\r\n\r\n constructor(public authService: AuthService,\r\n public menuService: MenuService) { }\r\n \r\n async ngOnInit(): Promise{\r\n await this.authService.obterPerfilUsuario();\r\n this.obterMenu();\r\n }\r\n\r\n ngAfterViewInit() {\r\n $('[data-widget=\"treeview\"]').each(() => {\r\n AdminLte.Treeview._jQueryInterface.call($(this), 'init');\r\n });\r\n }\r\n\r\n public obterMenu(){\r\n this.menuService.obter()\r\n .then((res) => {\r\n if(res.sucesso){ \r\n this.model = res.dados; \r\n }\r\n })\r\n }\r\n\r\n public get enumRecursoPerfil(): typeof EnumRecursoPerfil {\r\n return EnumRecursoPerfil;\r\n }\r\n\r\n public get enumAcaoRecurso(): typeof EnumAcaoRecurso {\r\n return EnumAcaoRecurso;\r\n}\r\n}\r\n","","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'groupBy'\r\n})\r\nexport class GroupByPipe implements PipeTransform {\r\n transform(dados: any[]): any {\r\n if (!dados || !Array.isArray(dados)) {\r\n return [];\r\n }\r\n\r\n const dados2 = [];\r\n\r\n dados.forEach(element => {\r\n if (element && element.paaIndiceCriterio && element.paaIndiceCriterio.indicador && element.paaIndiceCriterio.indicador.nome) {\r\n if (!dados2[element.paaIndiceCriterio.indicador.nome]) {\r\n dados2[element.paaIndiceCriterio.indicador.nome] = [];\r\n }\r\n\r\n dados2[element.paaIndiceCriterio.indicador.nome].push(element);\r\n }\r\n });\r\n \r\n return dados2;\r\n }\r\n}","import { AngularEditorConfig } from '@kolkov/angular-editor';\r\n\r\nexport const angularEditorConfig = (placeholder?: string, height?: string, width?: string, enableToolbar?: boolean) => {\r\n\treturn {\r\n\t\toutline:true,\r\n\t\teditable: true,\r\n\t\tspellcheck: true,\r\n\t\theight: height,\r\n\t\tminHeight: \"0\",\r\n\t\tmaxHeight: \"auto\",\r\n\t\twidth: width,\r\n\t\tminWidth: \"0\",\r\n\t\ttranslate: \"yes\",\r\n\t\tenableToolbar: enableToolbar,\r\n\t\tshowToolbar: enableToolbar,\r\n\t\tplaceholder: placeholder,\r\n\t\tdefaultParagraphSeparator: \"\",\r\n\t\tdefaultFontName: \"\",\r\n\t\tdefaultFontSize: \"\",\r\n\t\tfonts: [\r\n\t\t\t{ class: \"arial\", name: \"Arial\" },\r\n\t\t\t{ class: \"times-new-roman\", name: \"Times New Roman\" },\r\n\t\t\t{ class: \"calibri\", name: \"Calibri\" },\r\n\t\t\t{ class: \"comic-sans-ms\", name: \"Comic Sans MS\" },\r\n\t\t],\r\n\t\tcustomClasses: [\r\n\t\t\t{\r\n\t\t\t\tname: \"quote\",\r\n\t\t\t\tclass: \"quote\",\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: \"redText\",\r\n\t\t\t\tclass: \"redText\",\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: \"titleText\",\r\n\t\t\t\tclass: \"titleText\",\r\n\t\t\t\ttag: \"h1\",\r\n\t\t\t},\r\n\t\t],\t\t\r\n\t\tuploadWithCredentials: true,\r\n\t\tsanitize: false,\r\n\t\ttoolbarPosition: \"top\",\r\n\t\ttoolbarHiddenButtons: [null, null],\r\n\t} as AngularEditorConfig;\r\n};\r\n","export const convertDate: (date: Date) => string = (date: Date, reverse?: boolean) => {\r\n if(reverse) {\r\n return date.toISOString().substr(0, 10).split('-').reverse().join('-');\r\n }\r\n return date.toISOString().substr(0, 10);\r\n}\r\n","function toFormatValue(item: any) {\r\n if (!item) return value;\r\n var value = item.toString();\r\n\r\n var result = value.search(/[A-Za-záàâãéèêíïóôõöúçñÁÀÂÃÉÈÍÏÓÔÕÖÚÇÑ]/);\r\n\r\n if(result !== -1) {\r\n return value[(value.length - 1)]\r\n }\r\n\r\n const currentValue = parseInt(value.replace(/[^\\d]/g, \"\")).toString();\r\n const cvLength = currentValue.length;\r\n\r\n if (cvLength === 1) return `0,0${currentValue.slice(0)}`;\r\n\r\n if (cvLength === 2) return `0,${currentValue.slice(0)}`;\r\n\r\n if (cvLength === 3) return `${currentValue.slice(0, 1)},${currentValue.slice(1)}`;\r\n\r\n if (cvLength === 4) return `${currentValue.slice(0, 2)},${currentValue.slice(2)}`;\r\n\r\n if (cvLength === 5) return `${currentValue.slice(0, 3)},${currentValue.slice(3)}`;\r\n\r\n if (cvLength === 6) return `${currentValue.slice(0, 1)}.${currentValue.slice(1, 4)},${currentValue.slice(4)}`;\r\n\r\n if (cvLength === 7) return `${currentValue.slice(0, 2)}.${currentValue.slice(2, 5)},${currentValue.slice(5)}`;\r\n\r\n if (cvLength === 8) return `${currentValue.slice(0, 3)}.${currentValue.slice(3, 6)},${currentValue.slice(6)}`;\r\n\r\n if (cvLength === 9) return `${currentValue.slice(0, 1)}.${currentValue.slice(1, 4)}.${currentValue.slice(4, 7)},${currentValue.slice(7)}`;\r\n\r\n if (cvLength === 10) return `${currentValue.slice(0, 2)}.${currentValue.slice(2, 5)}.${currentValue.slice(5, 8)},${currentValue.slice(8)}`;\r\n\r\n if (cvLength === 11) return `${currentValue.slice(0, 3)}.${currentValue.slice(3, 6)}.${currentValue.slice(5, 9)},${currentValue.slice(9)}`;\r\n\r\n if (cvLength === 12) return `${currentValue.slice(0, 3)}.${currentValue.slice(4, 7)}.${currentValue.slice(8, 11)},${currentValue.slice(10)}`;\r\n\r\n if (cvLength === 13) return `${currentValue.slice(0, 3)}.${currentValue.slice(4, 7)}.${currentValue.slice(8, 11)},${currentValue.slice(11)}`;\r\n\r\n return value;\r\n}\r\n\r\nfunction toFormatDecimal(valor: number, casasDecimais: number) {\r\n if (valor !== null && !isNaN(valor)) {\r\n return valor.toFixed(casasDecimais) + ' %';\r\n }\r\n}\r\n\r\nfunction toRemoveCharacters(str) {\r\n var a = str.toString().replaceAll(/[, ]+/g, \"\").trim();\r\n var b = a.toString().replaceAll(/[. ]+/g, \"\").trim();\r\n return b\r\n}\r\n\r\nexport { toFormatValue, toRemoveCharacters, toFormatDecimal };","export const environment = {\r\n production: false,\r\n};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic()\r\n .bootstrapModule(AppModule)\r\n .catch((err) => console.error(err));"],"sourceRoot":"webpack:///"}