{"version":3,"sources":["webpack:///$_lazy_route_resource lazy namespace object","webpack:///node_modules/moment/locale sync ^\\.\\/.*$","webpack:///src/app/app-routing.module.ts","webpack:///src/app/app.component.ts","webpack:///src/app/app.component.html","webpack:///src/app/app.module.ts","webpack:///src/app/core/guards/Calendario.guard.ts","webpack:///src/app/core/guards/Indicador.guard.ts","webpack:///src/app/core/guards/auth.guard.ts","webpack:///src/app/core/guards/coordenacao.guard.ts","webpack:///src/app/core/guards/criterio.guard.ts","webpack:///src/app/core/guards/custoRecurso.guard.ts","webpack:///src/app/core/guards/faseAtividade.guard.ts","webpack:///src/app/core/guards/matrizPlanejamento.guard.ts","webpack:///src/app/core/guards/modeloRelatorio.guard.ts","webpack:///src/app/core/guards/naturezaResponsabilidade.guard.ts","webpack:///src/app/core/guards/paa.guard.ts","webpack:///src/app/core/guards/pea.guard.ts","webpack:///src/app/core/guards/pergunta.guard.ts","webpack:///src/app/core/guards/periodo.guard.ts","webpack:///src/app/core/guards/procedimentoAuditoria.guard.ts","webpack:///src/app/core/guards/questao.guard.ts","webpack:///src/app/core/guards/questionario.guard.ts","webpack:///src/app/core/guards/recomendacao.guard.ts","webpack:///src/app/core/guards/subtipoAuditoria.guard.ts","webpack:///src/app/core/guards/tecnicaAuditoria.guard.ts","webpack:///src/app/core/guards/tipoAuditoria.guard.ts","webpack:///src/app/core/guards/tipoCriterio.guard.ts","webpack:///src/app/core/guards/tipoDispensa.guard.ts","webpack:///src/app/core/guards/tipoEnfase.guard.ts","webpack:///src/app/core/helpers/date.helper.ts","webpack:///src/app/core/helpers/filterby.ts","webpack:///src/app/core/helpers/mat-sort-data-accessor.ts","webpack:///src/app/core/helpers/number.helper.ts","webpack:///src/app/core/helpers/ptbr-paginator-intl.ts","webpack:///src/app/core/http/auth.interceptor.ts","webpack:///src/app/core/http/loading.interceptor.ts","webpack:///src/app/models/enum/acao-recurso.enum.ts","webpack:///src/app/models/enum/recurso-perfil.enum.ts","webpack:///src/app/models/enum/status-solicitcao-tecnica.enum.ts","webpack:///src/app/models/enum/tipo-feriado.enum.ts","webpack:///src/app/models/filtro.model.ts","webpack:///src/app/models/permissao.model.ts","webpack:///src/app/pages/agente-publico-form/aba-dados-basicos/aba-dados-basicos.component.html","webpack:///src/app/pages/agente-publico-form/aba-dados-basicos/aba-dados-basicos.component.ts","webpack:///src/app/pages/agente-publico-form/aba-dispensas/aba-dispensas.component.html","webpack:///src/app/pages/agente-publico-form/aba-dispensas/aba-dispensas.component.ts","webpack:///src/app/pages/agente-publico-form/aba-dispensas/modal-adicionar-dispensa/modal-adicionar-dispensa.component.html","webpack:///src/app/pages/agente-publico-form/aba-dispensas/modal-adicionar-dispensa/modal-adicionar-dispensa.component.ts","webpack:///src/app/pages/agente-publico-form/aba-disponibilidade/aba-disponibilidade.component.html","webpack:///src/app/pages/agente-publico-form/aba-disponibilidade/aba-disponibilidade.component.ts","webpack:///src/app/pages/agente-publico-form/agente-publico-form.component.html","webpack:///src/app/pages/agente-publico-form/agente-publico-form.component.ts","webpack:///src/app/pages/agente-publico-list/agente-publico-list.component.html","webpack:///src/app/pages/agente-publico-list/agente-publico-list.component.ts","webpack:///src/app/pages/aprovacao-list/aprovacao-list.component.ts","webpack:///src/app/pages/aprovacao-list/aprovacao-list.component.html","webpack:///src/app/pages/aprovacao-list/modal-avaliar/modal-avaliar.component.ts","webpack:///src/app/pages/aprovacao-list/modal-avaliar/modal-avaliar.component.html","webpack:///src/app/pages/auditoria-list/auditoria-list.component.ts","webpack:///src/app/pages/auditoria-list/auditoria-list.component.html","webpack:///src/app/pages/calendario-form/calendario-form.component.html","webpack:///src/app/pages/calendario-form/calendario-form.component.ts","webpack:///src/app/pages/calendario-list/calendario-list.component.ts","webpack:///src/app/pages/calendario-list/calendario-list.component.html","webpack:///src/app/pages/capitulo-relatorio-form/capitulo-relatorio-form.component.html","webpack:///src/app/pages/capitulo-relatorio-form/capitulo-relatorio-form.component.ts","webpack:///src/app/pages/capitulo-relatorio-list/capitulo-relatorio-list.component.ts","webpack:///src/app/pages/capitulo-relatorio-list/capitulo-relatorio-list.component.html","webpack:///src/app/pages/constatacao-form/constatacao-form.component.html","webpack:///src/app/pages/constatacao-form/constatacao-form.component.ts","webpack:///src/app/pages/constatacao-form/modal-constatacao/modal-constatacao.component.html","webpack:///src/app/pages/constatacao-form/modal-constatacao/modal-constatacao.component.ts","webpack:///src/app/pages/constatacao-form/modal-recomendacao/modal-recomendacao.component.ts","webpack:///src/app/pages/constatacao-form/modal-recomendacao/modal-recomendacao.component.html","webpack:///src/app/pages/constatacao-list/constatacao-list.component.ts","webpack:///src/app/pages/constatacao-list/constatacao-list.component.html","webpack:///src/app/pages/coordenacao-form/coordenacao-form.component.html","webpack:///src/app/pages/coordenacao-form/coordenacao-form.component.ts","webpack:///src/app/pages/coordenacao-form/modal-tipo-trabalho/modal-tipo-trabalho.component.html","webpack:///src/app/pages/coordenacao-form/modal-tipo-trabalho/modal-tipo-trabalho.component.ts","webpack:///src/app/pages/coordenacao-list/coordenacao-list.component.ts","webpack:///src/app/pages/coordenacao-list/coordenacao-list.component.html","webpack:///src/app/pages/criterio-form/criterio-form.component.html","webpack:///src/app/pages/criterio-form/criterio-form.component.ts","webpack:///src/app/pages/criterio-form/modal-metrica-numerico/modal-metrica-numerico.component.ts","webpack:///src/app/pages/criterio-form/modal-metrica-numerico/modal-metrica-numerico.component.html","webpack:///src/app/pages/criterio-form/modal-metrica-opcoes/modal-metrica-opcoes.component.ts","webpack:///src/app/pages/criterio-form/modal-metrica-opcoes/modal-metrica-opcoes.component.html","webpack:///src/app/pages/criterio-list/criterio-list.component.ts","webpack:///src/app/pages/criterio-list/criterio-list.component.html","webpack:///src/app/pages/custo-recurso-form/custo-recurso-form.component.html","webpack:///src/app/pages/custo-recurso-form/custo-recurso-form.component.ts","webpack:///src/app/pages/custo-recurso-list/custo-recurso-list.component.ts","webpack:///src/app/pages/custo-recurso-list/custo-recurso-list.component.html","webpack:///src/app/pages/erro/erro.component.ts","webpack:///src/app/pages/erro/erro.component.html","webpack:///src/app/pages/faixa-classificacao-form/faixa-classificacao-form.component.html","webpack:///src/app/pages/faixa-classificacao-form/faixa-classificacao-form.component.ts","webpack:///src/app/pages/fase-atividade-form/fase-atividade-form.component.html","webpack:///src/app/pages/fase-atividade-form/fase-atividade-form.component.ts","webpack:///src/app/pages/fase-atividade-list/fase-atividade-list.component.ts","webpack:///src/app/pages/fase-atividade-list/fase-atividade-list.component.html","webpack:///src/app/pages/fluxo-aprovacao-form/fluxo-aprovacao-form.component.html","webpack:///src/app/pages/fluxo-aprovacao-form/fluxo-aprovacao-form.component.ts","webpack:///src/app/pages/fluxo-aprovacao-list/fluxo-aprovacao-list.component.ts","webpack:///src/app/pages/fluxo-aprovacao-list/fluxo-aprovacao-list.component.html","webpack:///src/app/pages/indicador-form/indicador-form.component.html","webpack:///src/app/pages/indicador-form/indicador-form.component.ts","webpack:///src/app/pages/indicador-list/indicador-list.component.ts","webpack:///src/app/pages/indicador-list/indicador-list.component.html","webpack:///src/app/pages/inicial/inicial.component.ts","webpack:///src/app/pages/inicial/inicial.component.html","webpack:///src/app/pages/log-sistema-form/log-form.component.ts","webpack:///src/app/pages/log-sistema-form/log-form.component.html","webpack:///src/app/pages/log-sistema-list/log-list.component.ts","webpack:///src/app/pages/log-sistema-list/log-list.component.html","webpack:///src/app/pages/matriz-planejamento-form/matriz-planejamento-form.component.html","webpack:///src/app/pages/matriz-planejamento-form/matriz-planejamento-form.component.ts","webpack:///src/app/pages/matriz-planejamento-list/matriz-planejamento-list.component.ts","webpack:///src/app/pages/matriz-planejamento-list/matriz-planejamento-list.component.html","webpack:///src/app/pages/matriz-planejamento-relatorio/matriz-planejamento-relatorio.component.html","webpack:///src/app/pages/matriz-planejamento-relatorio/matriz-planejamento-relatorio.component.ts","webpack:///src/app/pages/modelo-relatorio-form/modal-capitulo/modal-capitulo.component.html","webpack:///src/app/pages/modelo-relatorio-form/modal-capitulo/modal-capitulo.component.ts","webpack:///src/app/pages/modelo-relatorio-form/modelo-relatorio-form.component.html","webpack:///src/app/pages/modelo-relatorio-form/modelo-relatorio-form.component.ts","webpack:///src/app/pages/modelo-relatorio-list/modelo-relatorio-list.component.ts","webpack:///src/app/pages/modelo-relatorio-list/modelo-relatorio-list.component.html","webpack:///src/app/pages/natureza-responsabilidade-form/natureza-responsabilidade-form.component.html","webpack:///src/app/pages/natureza-responsabilidade-form/natureza-responsabilidade-form.component.ts","webpack:///src/app/pages/natureza-responsabilidade-list/natureza-responsabilidade-list.component.ts","webpack:///src/app/pages/natureza-responsabilidade-list/natureza-responsabilidade-list.component.html","webpack:///src/app/pages/opa/form/opa-form.component.html","webpack:///src/app/pages/opa/form/opa-form.component.ts","webpack:///src/app/pages/opa/list/opa-list.component.ts","webpack:///src/app/pages/opa/list/opa-list.component.html","webpack:///src/app/pages/opa/modal/modal-alocar-equipe/modal-alocar-equipe-opa.component.html","webpack:///src/app/pages/opa/modal/modal-alocar-equipe/modal-alocar-equipe-opa.component.ts","webpack:///src/app/pages/opa/relatorio/opa-relatorio.component.html","webpack:///src/app/pages/opa/relatorio/opa-relatorio.component.ts","webpack:///src/app/pages/osa/filtro-component/filtro-component.component.ts","webpack:///src/app/pages/osa/filtro-component/filtro-component.component.html","webpack:///src/app/pages/osa/osa-form/aba-informacoes-basicas/aba-informacoes-basicas.component.html","webpack:///src/app/pages/osa/osa-form/aba-informacoes-basicas/aba-informacoes-basicas.component.ts","webpack:///src/app/pages/osa/osa-form/osa-abas/osa-abas.component.ts","webpack:///src/app/pages/osa/osa-form/osa-abas/osa-abas.component.html","webpack:///src/app/pages/osa/osa-form/osa-form.component.ts","webpack:///src/app/pages/osa/osa-form/osa-form.component.html","webpack:///src/app/pages/osa/osa-imprimir/osa-imprimir.component.ts","webpack:///src/app/pages/osa/osa-imprimir/osa-imprimir.component.html","webpack:///src/app/pages/osa/osa-list/osa-list.component.ts","webpack:///src/app/pages/osa/osa-list/osa-list.component.html","webpack:///src/app/pages/osa/osa.component.ts","webpack:///src/app/pages/osa/osa.component.html","webpack:///src/app/pages/paa-elaborar/aba-alocacao/paa-aba-alocacao.component.ts","webpack:///src/app/pages/paa-elaborar/aba-alocacao/paa-aba-alocacao.component.html","webpack:///src/app/pages/paa-elaborar/aba-capacidade/modal-capacidade/modal-capacidade-paa.component.ts","webpack:///src/app/pages/paa-elaborar/aba-capacidade/modal-capacidade/modal-capacidade-paa.component.html","webpack:///src/app/pages/paa-elaborar/aba-capacidade/paa-aba-capacidade.component.ts","webpack:///src/app/pages/paa-elaborar/aba-capacidade/paa-aba-capacidade.component.html","webpack:///src/app/pages/paa-elaborar/aba-dados/paa-aba-dados-basicos.component.ts","webpack:///src/app/pages/paa-elaborar/aba-dados/paa-aba-dados-basicos.component.html","webpack:///src/app/pages/paa-elaborar/aba-distribuicao/paa-aba-distribuicao.component.ts","webpack:///src/app/pages/paa-elaborar/aba-distribuicao/paa-aba-distribuicao.component.html","webpack:///src/app/pages/paa-elaborar/aba-indices-criterios/paa-aba-indices-criterios.component.ts","webpack:///src/app/pages/paa-elaborar/aba-indices-criterios/paa-aba-indices-criterios.component.html","webpack:///src/app/pages/paa-elaborar/modal-alocar-equipe/modal-alocar-equipe.component.html","webpack:///src/app/pages/paa-elaborar/modal-alocar-equipe/modal-alocar-equipe.component.ts","webpack:///src/app/pages/paa-elaborar/modal-cadastrar-criterio/modal-cadastrar-criterio.component.ts","webpack:///src/app/pages/paa-elaborar/modal-cadastrar-criterio/modal-cadastrar-criterio.component.html","webpack:///src/app/pages/paa-elaborar/modal-cadastrar-indicador/modal-cadastrar-indicador.component.ts","webpack:///src/app/pages/paa-elaborar/modal-cadastrar-indicador/modal-cadastrar-indicador.component.html","webpack:///src/app/pages/paa-elaborar/modal-capacidade-dispensa/modal-capacidade-dispensa.component.ts","webpack:///src/app/pages/paa-elaborar/modal-capacidade-dispensa/modal-capacidade-dispensa.component.html","webpack:///src/app/pages/paa-elaborar/modal-confirmar-reativacao-distribuicao/modal-confirmar-reativacao-distribuicao.component.ts","webpack:///src/app/pages/paa-elaborar/modal-confirmar-reativacao-distribuicao/modal-confirmar-reativacao-distribuicao.component.html","webpack:///src/app/pages/paa-elaborar/modal-entranhar/modal-entranhar.component.html","webpack:///src/app/pages/paa-elaborar/modal-entranhar/modal-entranhar.component.ts","webpack:///src/app/pages/paa-elaborar/modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component.ts","webpack:///src/app/pages/paa-elaborar/modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component.html","webpack:///src/app/pages/paa-elaborar/modal-grafico-distribuicao/modal-grafico-distribuicao.component.ts","webpack:///src/app/pages/paa-elaborar/modal-grafico-distribuicao/modal-grafico-distribuicao.component.html","webpack:///src/app/pages/paa-elaborar/modal-grafico-distribuicao/template-impressao.ts","webpack:///src/app/pages/paa-elaborar/modal-importar-arquivo-criterio-paa/modal-importar-arquivo-criterio-paa.component.ts","webpack:///src/app/pages/paa-elaborar/modal-importar-arquivo-criterio-paa/modal-importar-arquivo-criterio-paa.component.html","webpack:///src/app/pages/paa-elaborar/modal-preencher-formulario/modal-preencher-formulario-paa.component.ts","webpack:///src/app/pages/paa-elaborar/modal-preencher-formulario/modal-preencher-formulario-paa.component.html","webpack:///src/app/pages/paa-elaborar/modal-ranking-prioridade/modal-ranking-prioridade.component.ts","webpack:///src/app/pages/paa-elaborar/modal-ranking-prioridade/modal-ranking-prioridade.component.html","webpack:///src/app/pages/paa-elaborar/modal-selecionar-colunas/modal-selecionar-colunas.component.ts","webpack:///src/app/pages/paa-elaborar/modal-selecionar-colunas/modal-selecionar-colunas.component.html","webpack:///src/app/pages/paa-elaborar/modal-selecionar-ug/modal-selecionar-ug.component.ts","webpack:///src/app/pages/paa-elaborar/modal-selecionar-ug/modal-selecionar-ug.component.html","webpack:///src/app/pages/paa-elaborar/modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component.ts","webpack:///src/app/pages/paa-elaborar/modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component.html","webpack:///src/app/pages/paa-elaborar/paa-elaborar.component.ts","webpack:///src/app/pages/paa-elaborar/paa-elaborar.component.html","webpack:///src/app/pages/paa-list/paa-list.component.html","webpack:///src/app/pages/paa-list/paa-list.component.ts","webpack:///src/app/pages/paa-relatorio/paa-relatorio.component.html","webpack:///src/app/pages/paa-relatorio/paa-relatorio.component.ts","webpack:///src/app/pages/parametrizacao-documento-edocs-form/parametrizacao-documento-edocs-form.component.html","webpack:///src/app/pages/parametrizacao-documento-edocs-form/parametrizacao-documento-edocs-form.component.ts","webpack:///src/app/pages/parametrizacao-list/modal-parametrizacao-form/modal-parametrizacao-form.component.html","webpack:///src/app/pages/parametrizacao-list/modal-parametrizacao-form/modal-parametrizacao-form.component.ts","webpack:///src/app/pages/parametrizacao-list/parametrizacao-list.component.ts","webpack:///src/app/pages/parametrizacao-list/parametrizacao-list.component.html","webpack:///src/app/pages/pea-form/modal-autuacao/modal-autuacao.component.html","webpack:///src/app/pages/pea-form/modal-autuacao/modal-autuacao.component.ts","webpack:///src/app/pages/pea-form/modal-capacidade/modal-capacidade.component.ts","webpack:///src/app/pages/pea-form/modal-capacidade/modal-capacidade.component.html","webpack:///src/app/pages/pea-form/modal-descricao-dias-uteis/modal-descricao-dias-uteis.component.ts","webpack:///src/app/pages/pea-form/modal-descricao-dias-uteis/modal-descricao-dias-uteis.component.html","webpack:///src/app/pages/pea-form/modal-detalhar-valor-risco/modal-detalhar-valor-risco.component.ts","webpack:///src/app/pages/pea-form/modal-detalhar-valor-risco/modal-detalhar-valor-risco.component.html","webpack:///src/app/pages/pea-form/modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component.ts","webpack:///src/app/pages/pea-form/modal-enviar-questionario-criterio/modal-enviar-questionario-criterio.component.html","webpack:///src/app/pages/pea-form/modal-importar-arquivo-criterio/modal-importar-arquivo-criterio.component.ts","webpack:///src/app/pages/pea-form/modal-importar-arquivo-criterio/modal-importar-arquivo-criterio.component.html","webpack:///src/app/pages/pea-form/modal-preencher-formulario/modal-preencher-formulario.component.ts","webpack:///src/app/pages/pea-form/modal-preencher-formulario/modal-preencher-formulario.component.html","webpack:///src/app/pages/pea-form/modal-selecionar-coordenacoes/modal-selecionar-coordenacoes.component.ts","webpack:///src/app/pages/pea-form/modal-selecionar-coordenacoes/modal-selecionar-coordenacoes.component.html","webpack:///src/app/pages/pea-form/modal-selecionar-ug/modal-selecionar-ug.component.ts","webpack:///src/app/pages/pea-form/modal-selecionar-ug/modal-selecionar-ug.component.html","webpack:///src/app/pages/pea-form/modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component.ts","webpack:///src/app/pages/pea-form/modal-visualizar-questionario-criterio/modal-visualizar-questionario-criterio.component.html","webpack:///src/app/pages/pea-form/modal-visualizar-respostas/modal-visualizar-respostas.component.ts","webpack:///src/app/pages/pea-form/modal-visualizar-respostas/modal-visualizar-respostas.component.html","webpack:///src/app/pages/pea-form/pea-form.component.html","webpack:///src/app/pages/pea-form/pea-form.component.ts","webpack:///src/app/pages/pea-list/pea-list.component.html","webpack:///src/app/pages/pea-list/pea-list.component.ts","webpack:///src/app/pages/pea-relatorio/pea-relatorio.component.html","webpack:///src/app/pages/pea-relatorio/pea-relatorio.component.ts","webpack:///src/app/pages/pendencia-list/pendencia-list.component.ts","webpack:///src/app/pages/pendencia-list/pendencia-list.component.html","webpack:///src/app/pages/pergunta-form/pergunta-form.component.html","webpack:///src/app/pages/pergunta-form/pergunta-form.component.ts","webpack:///src/app/pages/pergunta-list/pergunta-list.component.ts","webpack:///src/app/pages/pergunta-list/pergunta-list.component.html","webpack:///src/app/pages/periodo-form/periodo-form.component.html","webpack:///src/app/pages/periodo-form/periodo-form.component.ts","webpack:///src/app/pages/periodo-list/periodo-list.component.ts","webpack:///src/app/pages/periodo-list/periodo-list.component.html","webpack:///src/app/pages/planejamento-form/imprimir/imprimir.component.ts","webpack:///src/app/pages/planejamento-form/imprimir/imprimir.component.html","webpack:///src/app/pages/planejamento-form/matriz-planejamento-visualizar/matriz-planejamento-visualizar.component.html","webpack:///src/app/pages/planejamento-form/matriz-planejamento-visualizar/matriz-planejamento-visualizar.component.ts","webpack:///src/app/pages/planejamento-form/modal-alocar-equipe/modal-alocar-equipe-planejamento.component.html","webpack:///src/app/pages/planejamento-form/modal-alocar-equipe/modal-alocar-equipe-planejamento.component.ts","webpack:///src/app/pages/planejamento-form/modal-ug-planejamento/modal-ug-planejamento.component.ts","webpack:///src/app/pages/planejamento-form/modal-ug-planejamento/modal-ug-planejamento.component.html","webpack:///src/app/pages/planejamento-form/planejamento-form.component.html","webpack:///src/app/pages/planejamento-form/planejamento-form.component.ts","webpack:///src/app/pages/planejamento-list/planejamento-list.component.ts","webpack:///src/app/pages/planejamento-list/planejamento-list.component.html","webpack:///src/app/pages/procedimento-auditoria-form/modal-procedimento-auditoria/modal-procedimento-auditoria.component.html","webpack:///src/app/pages/procedimento-auditoria-form/modal-procedimento-auditoria/modal-procedimento-auditoria.component.ts","webpack:///src/app/pages/procedimento-auditoria-form/procedimento-auditoria-form.component.html","webpack:///src/app/pages/procedimento-auditoria-form/procedimento-auditoria-form.component.ts","webpack:///src/app/pages/procedimento-auditoria-list/procedimento-auditoria-list.component.ts","webpack:///src/app/pages/procedimento-auditoria-list/procedimento-auditoria-list.component.html","webpack:///src/app/pages/questao-form/questao-form.component.html","webpack:///src/app/pages/questao-form/questao-form.component.ts","webpack:///src/app/pages/questao-list/questao-list.component.ts","webpack:///src/app/pages/questao-list/questao-list.component.html","webpack:///src/app/pages/questionario-form/modal-delegar/modal-delegar-component.ts","webpack:///src/app/pages/questionario-form/modal-delegar/modal-delegar-component.html","webpack:///src/app/pages/questionario-form/questionario-form.component.html","webpack:///src/app/pages/questionario-form/questionario-form.component.ts","webpack:///src/app/pages/questionario-list/questionario-list.component.ts","webpack:///src/app/pages/questionario-list/questionario-list.component.html","webpack:///src/app/pages/recomendacao-form/recomendacao-form.component.html","webpack:///src/app/pages/recomendacao-form/recomendacao-form.component.ts","webpack:///src/app/pages/recomendacao-list/recomendacao-list.component.ts","webpack:///src/app/pages/recomendacao-list/recomendacao-list.component.html","webpack:///src/app/pages/rol-responsaveis-form/modal-incluir-periodo-exercicio/modal-incluir-periodo-exercicio.component.html","webpack:///src/app/pages/rol-responsaveis-form/modal-incluir-periodo-exercicio/modal-incluir-periodo-exercicio.component.ts","webpack:///src/app/pages/rol-responsaveis-form/modal-incluir-responsaveis/modal-incluir-responsavel.component.html","webpack:///src/app/pages/rol-responsaveis-form/modal-incluir-responsaveis/modal-incluir-responsavel.component.ts","webpack:///src/app/pages/rol-responsaveis-form/modal-selecionar-responsavel/modal-selecionar-responsavel.component.html","webpack:///src/app/pages/rol-responsaveis-form/modal-selecionar-responsavel/modal-selecionar-responsavel.component.ts","webpack:///src/app/pages/rol-responsaveis-form/rol-responsaveis-form.component.html","webpack:///src/app/pages/rol-responsaveis-form/rol-responsaveis-form.component.ts","webpack:///src/app/pages/rol-responsaveis-list/rol-responsaveis-list.component.html","webpack:///src/app/pages/rol-responsaveis-list/rol-responsaveis-list.component.ts","webpack:///src/app/pages/rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/imprimir-rol-responsavel-unidade-gestora.component.ts","webpack:///src/app/pages/rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/imprimir-rol-responsavel-unidade-gestora.component.html","webpack:///src/app/pages/rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/modal-selecionar-ug-imprimir/modal-selecionar-ug-imprimir.component.ts","webpack:///src/app/pages/rol-responsavel-relatoria-unidade-gestora/imprimir-rol-responsaveis/modal-selecionar-ug-imprimir/modal-selecionar-ug-imprimir.component.html","webpack:///src/app/pages/rol-responsavel-relatoria/imprimir-rol-responsaveis/imprimir-rol-responsaveis.component.ts","webpack:///src/app/pages/rol-responsavel-relatoria/imprimir-rol-responsaveis/imprimir-rol-responsaveis.component.html","webpack:///src/app/pages/solicitacao-tecnica/list/solicitacao-tecnica-list.component.ts","webpack:///src/app/pages/solicitacao-tecnica/list/solicitacao-tecnica-list.component.html","webpack:///src/app/pages/solicitacao-tecnica/modal-delegar-item/modal-delegar-item/modal-delegar-item.component.ts","webpack:///src/app/pages/solicitacao-tecnica/modal-delegar-item/modal-delegar-item/modal-delegar-item.component.html","webpack:///src/app/pages/solicitacao-tecnica/modal-item-solicitacao/modal-item-solicitacao.component.html","webpack:///src/app/pages/solicitacao-tecnica/modal-item-solicitacao/modal-item-solicitacao.component.ts","webpack:///src/app/pages/solicitacao-tecnica/solicitacao-tecnica-form/solicitacao-tecnica-form.component.html","webpack:///src/app/pages/solicitacao-tecnica/solicitacao-tecnica-form/solicitacao-tecnica-form.component.ts","webpack:///src/app/pages/subtipo-auditoria-form/subtipo-auditoria-form.component.html","webpack:///src/app/pages/subtipo-auditoria-form/subtipo-auditoria-form.component.ts","webpack:///src/app/pages/subtipo-auditoria-list/subtipo-auditoria-list.component.ts","webpack:///src/app/pages/subtipo-auditoria-list/subtipo-auditoria-list.component.html","webpack:///src/app/pages/tecnica-auditoria-form/tecnica-auditoria-form.component.html","webpack:///src/app/pages/tecnica-auditoria-form/tecnica-auditoria-form.component.ts","webpack:///src/app/pages/tecnica-auditoria-list/tecnica-auditoria-list.component.ts","webpack:///src/app/pages/tecnica-auditoria-list/tecnica-auditoria-list.component.html","webpack:///src/app/pages/tipo-auditoria-form/tipo-auditoria-form.component.html","webpack:///src/app/pages/tipo-auditoria-form/tipo-auditoria-form.component.ts","webpack:///src/app/pages/tipo-auditoria-list/tipo-auditoria-list.component.ts","webpack:///src/app/pages/tipo-auditoria-list/tipo-auditoria-list.component.html","webpack:///src/app/pages/tipo-criterio-form/tipo-criterio-form.component.html","webpack:///src/app/pages/tipo-criterio-form/tipo-criterio-form.component.ts","webpack:///src/app/pages/tipo-criterio-list/tipo-criterio-list.component.ts","webpack:///src/app/pages/tipo-criterio-list/tipo-criterio-list.component.html","webpack:///src/app/pages/tipo-dispensa-form/tipo-dispensa-form.component.html","webpack:///src/app/pages/tipo-dispensa-form/tipo-dispensa-form.component.ts","webpack:///src/app/pages/tipo-dispensa-list/tipo-dispensa-list.component.ts","webpack:///src/app/pages/tipo-dispensa-list/tipo-dispensa-list.component.html","webpack:///src/app/pages/tipo-enfase-form/tipo-enfase-form.component.html","webpack:///src/app/pages/tipo-enfase-form/tipo-enfase-form.component.ts","webpack:///src/app/pages/tipo-enfase-list/tipo-enfase-list.component.ts","webpack:///src/app/pages/tipo-enfase-list/tipo-enfase-list.component.html","webpack:///src/app/pages/unidade-gestora-form/unidade-gestora-form.component.html","webpack:///src/app/pages/unidade-gestora-form/unidade-gestora-form.component.ts","webpack:///src/app/pages/unidade-gestora-list/modal-associar/modal-associar.component.ts","webpack:///src/app/pages/unidade-gestora-list/modal-associar/modal-associar.component.html","webpack:///src/app/pages/unidade-gestora-list/modal-importacao/modal-importacao.component.ts","webpack:///src/app/pages/unidade-gestora-list/modal-importacao/modal-importacao.component.html","webpack:///src/app/pages/unidade-gestora-list/unidade-gestora-list.component.ts","webpack:///src/app/pages/unidade-gestora-list/unidade-gestora-list.component.html","webpack:///src/app/services/acesso-cidadao.service.ts","webpack:///src/app/services/agente-publico.service.ts","webpack:///src/app/services/amostra.service.ts","webpack:///src/app/services/aprovacao.service.ts","webpack:///src/app/services/auditoria.service.ts","webpack:///src/app/services/auth.service.ts","webpack:///src/app/services/avaliacao.service.ts","webpack:///src/app/services/base.service.ts","webpack:///src/app/services/calendario.service.ts","webpack:///src/app/services/capitulo-relatorio.service.ts","webpack:///src/app/services/constatacao.service.ts","webpack:///src/app/services/coordenacao.service.ts","webpack:///src/app/services/criterio.service.ts","webpack:///src/app/services/cronograma.service.ts","webpack:///src/app/services/custo-recurso-planejamento.service.ts","webpack:///src/app/services/custo-recurso.service.ts","webpack:///src/app/services/edocs.service.ts","webpack:///src/app/services/faixa-classificacao.service.ts","webpack:///src/app/services/fase-atividade.service.ts","webpack:///src/app/services/fluxo-aprovacao.service.ts","webpack:///src/app/services/indicador.service.ts","webpack:///src/app/services/log.service.ts","webpack:///src/app/services/manter-matriz-planejamento.service.ts","webpack:///src/app/services/matriz-planejamento.service.ts","webpack:///src/app/services/menu.service.ts","webpack:///src/app/services/modelo-relatorio.service.ts","webpack:///src/app/services/natureza-responsabilidade.service.ts","webpack:///src/app/services/opa.service.ts","webpack:///src/app/services/organograma.service.ts","webpack:///src/app/services/osa.service.ts","webpack:///src/app/services/paa.service.ts","webpack:///src/app/services/paa/paa-aba-capacidade.service.ts","webpack:///src/app/services/paa/paa-aba-dados-basicos.service.ts","webpack:///src/app/services/paa/paa-aba-distribuicao.service.ts","webpack:///src/app/services/paa/paa-aba-indices-criterios.service.ts","webpack:///src/app/services/parametrizacao-documento-edocs.service.ts","webpack:///src/app/services/parametrizacao.service.ts","webpack:///src/app/services/pea.service.ts","webpack:///src/app/services/pendencia.service.ts","webpack:///src/app/services/pergunta.service.ts","webpack:///src/app/services/periodo-exercicio.service.ts","webpack:///src/app/services/periodo.service.ts","webpack:///src/app/services/planejamento.service.ts","webpack:///src/app/services/procedimento-auditoria.service.ts","webpack:///src/app/services/questao.service.ts","webpack:///src/app/services/questionario.service.ts","webpack:///src/app/services/ranking-prioridade.service.ts","webpack:///src/app/services/recomendacao.service.ts","webpack:///src/app/services/relatoria-capitulo.service.ts","webpack:///src/app/services/relatoria.service.ts","webpack:///src/app/services/responsaveis.service .ts","webpack:///src/app/services/rol-responsaveis.service.ts","webpack:///src/app/services/shared.service.ts","webpack:///src/app/services/solicitacao-tecnica.service.ts","webpack:///src/app/services/subtipo-auditoria.service.ts","webpack:///src/app/services/tabela-dominio.service.ts","webpack:///src/app/services/tecnica-auditoria.service.ts","webpack:///src/app/services/tipo-auditoria.service.ts","webpack:///src/app/services/tipo-criterio.service.ts","webpack:///src/app/services/tipo-dispensa.service.ts","webpack:///src/app/services/tipo-enfase.service.ts","webpack:///src/app/services/tipo-trabalho.service.ts","webpack:///src/app/services/unidade-gestora-maturidadeGR.service.ts","webpack:///src/app/services/unidade-gestora-maturidadeGRHistorico.service.ts","webpack:///src/app/services/unidade-gestora.service.ts","webpack:///src/app/shared/components/aba-amostra/aba-amostra.component.ts","webpack:///src/app/shared/components/aba-amostra/aba-amostra.component.html","webpack:///src/app/shared/components/aba-amostra/imprimir-amostra/imprimir-amostra.component.ts","webpack:///src/app/shared/components/aba-amostra/imprimir-amostra/imprimir-amostra.component.html","webpack:///src/app/shared/components/aba-amostra/inserir-amostra/inserir-amostra.component.html","webpack:///src/app/shared/components/aba-amostra/inserir-amostra/inserir-amostra.component.ts","webpack:///src/app/shared/components/aba-cronograma/aba-cronograma.component.html","webpack:///src/app/shared/components/aba-cronograma/aba-cronograma.component.ts","webpack:///src/app/shared/components/aba-cronograma/modal-atividade-subatividade/modal-atividade-subatividade.component.html","webpack:///src/app/shared/components/aba-cronograma/modal-atividade-subatividade/modal-atividade-subatividade.component.ts","webpack:///src/app/shared/components/aba-matriz-planejamento/aba-matriz-planejamento.component.html","webpack:///src/app/shared/components/aba-matriz-planejamento/aba-matriz-planejamento.component.ts","webpack:///src/app/shared/components/aba-matriz-planejamento/listagem-questoes/listagem-questoes.component.html","webpack:///src/app/shared/components/aba-matriz-planejamento/listagem-questoes/listagem-questoes.component.ts","webpack:///src/app/shared/components/aba-matriz-planejamento/modal-adicionar-questoes/modal-adicionar-questoes.component.html","webpack:///src/app/shared/components/aba-matriz-planejamento/modal-adicionar-questoes/modal-adicionar-questoes.component.ts","webpack:///src/app/shared/components/aba-matriz-planejamento/modal-editar-questao/modal-editar-questao.component.ts","webpack:///src/app/shared/components/aba-matriz-planejamento/modal-editar-questao/modal-editar-questao.component.html","webpack:///src/app/shared/components/aba-matriz-planejamento/modal-ug/modal-ug.component.ts","webpack:///src/app/shared/components/aba-matriz-planejamento/modal-ug/modal-ug.component.html","webpack:///src/app/shared/components/aba-solicitacao-tecnica/aba-solicitacao-tecnica.component.ts","webpack:///src/app/shared/components/aba-solicitacao-tecnica/aba-solicitacao-tecnica.component.html","webpack:///src/app/shared/components/aba-solicitacao-tecnica/imprimir-solicitacao/imprimir-solicitacao.component.ts","webpack:///src/app/shared/components/aba-solicitacao-tecnica/imprimir-solicitacao/imprimir-solicitacao.component.html","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-avaliar-prorrogacao/modal-avaliar-prorrogacao.component.ts","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-avaliar-prorrogacao/modal-avaliar-prorrogacao.component.html","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-item/modal-incluir-item.component.ts","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-item/modal-incluir-item.component.html","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-solicitacao/modal-incluir-solicitacao.component.ts","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-solicitacao/modal-incluir-solicitacao.component.html","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-ug/modal-incluir-ug.component.ts","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-incluir-ug/modal-incluir-ug.component.html","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-visualizar-item/modal-visualizar-item.component.ts","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-visualizar-item/modal-visualizar-item.component.html","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-visualizar-resposta/modal-visualizar-resposta.component.ts","webpack:///src/app/shared/components/aba-solicitacao-tecnica/modal-visualizar-resposta/modal-visualizar-resposta.component.html","webpack:///src/app/shared/components/alocar-equipe/alocar-equipe.component.ts","webpack:///src/app/shared/components/alocar-equipe/alocar-equipe.component.html","webpack:///src/app/shared/components/app-button/app-button.component.ts","webpack:///src/app/shared/components/app-button/app-button.component.html","webpack:///src/app/shared/components/base-form/base-form.component.ts","webpack:///src/app/shared/components/base-list/base-list.component.ts","webpack:///src/app/shared/components/capitulo/capitulo.component.html","webpack:///src/app/shared/components/capitulo/capitulo.component.ts","webpack:///src/app/shared/components/capitulo/modal-historico-relatoria/modal-historico-relatoria.component.ts","webpack:///src/app/shared/components/capitulo/modal-historico-relatoria/modal-historico-relatoria.component.html","webpack:///src/app/shared/components/capitulo/modal-historico-relatoria/modal-visualizar-historico/modal-visualizar-historico.component.ts","webpack:///src/app/shared/components/capitulo/modal-historico-relatoria/modal-visualizar-historico/modal-visualizar-historico.component.html","webpack:///src/app/shared/components/capitulo/modal-relatoria-capitulo/modal-relatoria-capitulo.component.html","webpack:///src/app/shared/components/capitulo/modal-relatoria-capitulo/modal-relatoria-capitulo.component.ts","webpack:///src/app/shared/components/custos-recursos/custos-recursos.component.html","webpack:///src/app/shared/components/custos-recursos/custos-recursos.component.ts","webpack:///src/app/shared/components/custos-recursos/modal-custo-recurso-planejamento/custo-recurso.ts","webpack:///src/app/shared/components/custos-recursos/modal-custo-recurso-planejamento/modal-custo-recurso-planejamento.component.ts","webpack:///src/app/shared/components/custos-recursos/modal-custo-recurso-planejamento/modal-custo-recurso-planejamento.component.html","webpack:///src/app/shared/components/faixa-classificacao-component/faixa-classificacao-component.component.ts","webpack:///src/app/shared/components/faixa-classificacao-component/faixa-classificacao-component.component.html","webpack:///src/app/shared/components/historico-modal/historico-modal.component.ts","webpack:///src/app/shared/components/historico-modal/historico-modal.component.html","webpack:///src/app/shared/components/linha-do-tempo/linha-do-tempo.component.ts","webpack:///src/app/shared/components/linha-do-tempo/linha-do-tempo.component.html","webpack:///src/app/shared/components/lookup-modal/lookup-modal.component.ts","webpack:///src/app/shared/components/lookup-modal/lookup-modal.component.html","webpack:///src/app/shared/components/lookup-multiselect-modal/lookup-multiselect-modal.component.ts","webpack:///src/app/shared/components/lookup-multiselect-modal/lookup-multiselect-modal.component.html","webpack:///src/app/shared/components/modal-arquivo/modal-arquivo.component.ts","webpack:///src/app/shared/components/modal-arquivo/modal-arquivo.component.html","webpack:///src/app/shared/components/modal-cancelar/modal-cancelar-component.ts","webpack:///src/app/shared/components/modal-cancelar/modal-cancelar.component.html","webpack:///src/app/shared/components/modal-confirmacao-rejeitar/modal-confirmacao-rejeitar.component.ts","webpack:///src/app/shared/components/modal-confirmacao-rejeitar/modal-confirmacao-rejeitar.component.html","webpack:///src/app/shared/components/modal-confirmar-inativacao/modal-confirmar-inativacao.component.ts","webpack:///src/app/shared/components/modal-confirmar-inativacao/modal-confirmar-inativacao.component.html","webpack:///src/app/shared/components/modal-justificativa/modal-justificativa.component.ts","webpack:///src/app/shared/components/modal-justificativa/modal-justificativa.component.html","webpack:///src/app/shared/components/ranking-prioridade/ranking-prioridade.component.html","webpack:///src/app/shared/components/ranking-prioridade/ranking-prioridade.component.ts","webpack:///src/app/shared/components/relatoria/imprimir-relatoria/imprimir-relatoria.component.ts","webpack:///src/app/shared/components/relatoria/imprimir-relatoria/imprimir-relatoria.component.html","webpack:///src/app/shared/components/relatoria/relatoria.component.ts","webpack:///src/app/shared/components/relatoria/relatoria.component.html","webpack:///src/app/shared/components/sanitized-html/sanitized-html.pipe.ts","webpack:///src/app/shared/components/unidade-gestora/modal-incluir-ug-component/modal-incluir-ug-component.component.html","webpack:///src/app/shared/components/unidade-gestora/modal-incluir-ug-component/modal-incluir-ug-component.component.ts","webpack:///src/app/shared/components/unidade-gestora/unidade-gestora.component.ts","webpack:///src/app/shared/components/unidade-gestora/unidade-gestora.component.html","webpack:///src/app/shared/directives/keyboardlock.directive.ts","webpack:///src/app/shared/layout/footer/footer.component.ts","webpack:///src/app/shared/layout/footer/footer.component.html","webpack:///src/app/shared/layout/header/header.component.ts","webpack:///src/app/shared/layout/header/header.component.html","webpack:///src/app/shared/layout/header/user-dropdown-menu/user-dropdown-menu.component.ts","webpack:///src/app/shared/layout/header/user-dropdown-menu/user-dropdown-menu.component.html","webpack:///src/app/shared/layout/main/main.component.ts","webpack:///src/app/shared/layout/main/main.component.html","webpack:///src/app/shared/layout/menuitem/menuitem.component.html","webpack:///src/app/shared/layout/menuitem/menuitem.component.ts","webpack:///src/app/shared/layout/sidebar/sidebar.component.ts","webpack:///src/app/shared/layout/sidebar/sidebar.component.html","webpack:///src/app/shared/pipes/groupby-pipe.ts","webpack:///src/app/shared/util/angularEditorConfig.ts","webpack:///src/app/shared/util/formatDate.ts","webpack:///src/app/shared/util/toFormatValue.ts","webpack:///src/environments/environment.ts","webpack:///src/main.ts"],"names":["webpackEmptyAsyncContext","req","Promise","resolve","then","e","Error","code","keys","module","exports","id","map","webpackContext","webpackContextResolve","__webpack_require__","o","webpackContextKeys","Object","routes","path","component","canActivateChild","children","data","recurso","ManterOSA","acao","Consultar","Elaborar","Editar","Imprimir","Visualizar","Aprovacoes","Relatoria","Cadastros","Inserir","canDeactivate","Aberto","Configuracoes","ManterPEA","ManterPAA","ManterOPA","GerarNovaVersao","LogsDoSistema","Detalhar","Planejamento","Planejar","Auditoria","redirectTo","AppRoutingModule","forRoot","declarations","imports","AppComponent","authService","title","ngOnInit","obterPerfilUsuario","selector","templateUrl","styleUrls","AppModule","provide","useValue","useClass","multi","timeOut","positionClass","preventDuplicates","enableHtml","appendToBody","confirmButtonType","providers","entryComponents","bootstrap","CalendarioGuard","visualizar","submit","matDialog","open","afterClosed","IndicadorGuard","novoRegistro","AuthGuard","router","toastr","canActivate","next","state","permiteAcesso","routeData","obterEstado","res","sucesso","dados","autenticado","usuario","perm","possuiPermissao","possuiPerfis","perfis","error","navigate","login","err","providedIn","CoordenacaoGuard","CriterioGuard","CustoRecursoGuard","salvar","FaseAtividadeGuard","MatrizPlanejamentoGuard","adicionarQuestão","ModeloRelatorioGuard","NaturezaResponsabilidadeGuard","PaaGuard","PeaGuard","PerguntaGuard","PeriodoGuard","ProcedimentoAuditoriaGuard","QuestaoGuard","QuestionarioGuard","RecomendacaoGuard","SubtipoAuditoriaGuard","subTipoAuditoriaCancelar","TecnicaAuditoriaGuard","TipoAuditoriaGuard","TipoCriterioGuard","TipoDispensaGuard","UnidadeGestoraGuard","TipoEnfaseGuard","DateHelper","datePipe","toDatePtBr","date","truncateDate","toDate","toStringPtBr","transform","toString","Date","filterBy","filter","url","options","recursive","dateSeparator","joinParams","obj","prepend","arr","key","value","undefined","forEach","str","dateToString","push","length","join","filterUrl","concatChar","indexOf","separator","getMonth","slice","getDate","getFullYear","defaultDataAcessor","item","sortHeaderId","toLocaleLowerCase","normalize","replace","toIntlNumberString","brString","split","rangeLabel","page","pageSize","Math","max","startIndex","endIndex","min","getPtBrPaginatorIntl","paginatorIntl","itemsPerPageLabel","firstPageLabel","nextPageLabel","previousPageLabel","lastPageLabel","getRangeLabel","AuthInterceptor","injector","isRefreshingToken","tokenSubject","intercept","request","get","handle","pipe","status","ErrorEvent","mensagem","nome","descricao","LoadingInterceptor","spinner","show","hide","EnumAcaoRecurso","EnumRecursoPerfil","EnumStatusSolicitacaoTecnica","EnumTipoFeriado","FiltroModel","pesquisa","IPermissaoModel","sortingDataAccessor","property","pessoa","cpf","AgentePublicoAbaDadosBasicosComponent","route","localeService","agentePublicoService","aba","auditorCoordenacoesDataSource","auditorCoordenacaoSemDados","displayedColumns","form","required","numeroFuncional","titulo","buscar","getDadosBasicos","model","auditorCoordenacoes","filteredData","exibirMensagemErro","controls","setValue","cpfFormatted","atualizarModel","values","assign","onBack","cancelar","AgentePublicoAbaDispensasComponent","sharedService","selectedModelYears","semDados","dispensasDataSource","clickEventSubscription","getEvent","subscribe","onSalvar","popularComboAnos","getDadosDispensas","selectedYear","dispensas","excluirDispensa","fire","text","icon","showCancelButton","confirmButtonText","cancelButtonText","result","exibirMensagemSucesso","exibirMensagemAlerta","abrirModalDispensa","element","dialogConfig","width","hasBackdrop","disableClose","agentePublicoId","idAgentePublico","anoSelecionado","tipoDispensaId","dataInicio","dataFim","qtdDias","modal","anoAtual","onChangeSelectAno","ModalAdicionarDispensaComponent","dialogRef","tipoDispensaService","dataObrigatoria","tabelaTipoDispensa","selectedTipoDispensa","minDate","maxDate","buscarTiposDispensa","ngOnChangeDataInicio","event","validaData","find","t","quantidadeDiasPadrao","novaData","setDate","ngOnChangeDataFim","dataReferencia","isDataInicial","ngAfterViewInit","verificarDatas","setDataObrigatoria","toast","position","showConfirmButton","timer","timerProgressBar","concluir","dataInvalida","houveSugestaoData","dataFinalSugerida","inserirAtualizar","atualizar","inserir","inserirDispensa","close","atualizarDispensa","obter","tipos","nomeAcaoBotaoSalvar","onSelectTpoDispensa","AgentePublicoAbaDisponibilidadeComponent","tiposTrabalhosInputs","disponibilidadeDataSource","getDadosDisponibilidade","disponibilidades","calculateTotal","total","percentual","reduce","acum","currentElement","salvarDadosDisponibilidade","onSelectTipoAuditoria","AgentePublicoFormComponent","showBtnSalvar","abaEmitter","obterPorId","sendSalvarEvent","mudarAba","ind","$event","preventDefault","stopPropagation","AgentePublicoListComponent","dataSource","searchAtivo","filtro","configurarFiltro","setarPermissoes","permissoes","consultar","editar","excluir","Excluir","inativarReativar","AtivarInativar","incluir","sort","toolTipDataUltimaAtualizacao","toolTip","ultimaAtualizacao","selectedModel","obterViewModel","totalItens","resultado","_updateChangeSubscription","sincronizar","selecionar","pagina","tableOnePaginator","pageIndex","itensPorPagina","ativo","searchNome","direcao","direction","colunaOrder","active","sortData","pageChanged","reativar","inativar","tipoDocumentoAprovacao","situacao","AprovacaoListComponent","aprovacaoService","filtradoPor","chamadaPendencia","snapshot","paramMap","relatoria","avaliar","Avaliar","configFiltro","parseInt","d","codigo","modalAvaliar","linhaTempo","tipoDocumento","queryParams","searchSituacaoDocumento","searchTipoDocumento","ModalAvaliarComponent","peaService","paaService","opaService","osaService","planejamentoService","situacaoAvaliacao","modelEntranhar","modelAutuacao","comentario","verificarFluxoAprovacao","verificacao","ultimoNivel","aprovarReprovarTipoTrabalho","homologarTipoTrabalho","verificarNivelAprovacao","aprovarReprovar","homologarPea","homologarPaa","homologarOpa","homologarPlanejamento","homologarOsa","homologar","exibirMensagem","tipoTrabalhoId","tipoTrabalho","mask","document","querySelectorAll","interno","msg","AuditoriaListComponent","service","displayedColumn","configurarDatasource","obterPorFiltros","tabela1","searchPesquisa","CalendarioFormComponent","calendarioService","acessoCidadaoService","modelAuditor","auditoresDataSource","fixo","emunTipoFeriado","opcoesFixo","tipoFeriadoId","patchValue","tipoFeriado","salvarDados","salvarEFechar","invalid","validacoes","montarMensagensValidacao","onSubmit","CalendarioListComponent","calendarioservice","paginator","novo","CapituloRelatorioFormComponent","tabelaDominioService","capituloRelatorioService","enumTipo","disabled","tipoId","conteudo","obterTipoCapituloRelatorio","warning","success","CapituloRelatorioListComponent","ConstatacaoFormComponent","recomendacaoService","constatacaoService","modelConstatacaoRecomendacao","recomendacaoDataSource","modelQuestao","modelMatrizPlanejamento","modelSubtipoAuditoria","listaProcedimentoAuditoria","listaQuestao","listaConstatacao","listaMatrizPlanejamento","listaRecomendacoes","rotaPrefixoSubtipoAuditoria","rotaPrefixoMatrizPlanejamento","isModal","contaGovernador","contaOrdenador","config","editable","spellcheck","sanitize","height","minHeight","placeholder","translate","defaultParagraphSeparator","defaultFontName","toolbarHiddenButtons","customClasses","name","tag","buscarRecomendacoes","disable","constatacaoRecomendacao","window","history","vincularConstatacaoRecomendacao","constatacaoId","constatacao","questaoId","recomendacoes","recomendacaoId","incluirRecomendacao","findIndex","a","desvincularRecomendacao","index","desvincularConstatacaoRecomendacao","splice","visualizarRecomendacao","exibirModalRecomendacao","dadosFiltrados","recomendacao","encontrado","exibirModal","ModalConstatacaoComponent","modelQuestaoConstatacao","visualizacao","ModalRecomendacaoComponent","ConstatacaoListComponent","sortingDataAccessorEquipe","sortingDataAccessorTipoTrabalho","sortingDataAccessorDispensa","dataInicioDate","dataFimDate","sortingDataAccessorDisponibilidade","CoordenacaoFormComponent","coordenacaoService","modelAuditorOld","coordenacaoTipoTrabalhoDataSource","semDadosTipoTrabalho","openPoppup","validateForm","displayedTipoTrabalhoColumns","idTipoTrabalhoSelecionado","permiteAdicionarTipoTrabalho","modelCoordenacaoTipoTrabalho","selectedModelYearsAbaEquipe","dispensaDataSource","columnsDistribuicao","columnsDispensa","disponibilidadeSemDados","dispensaSemDados","sigla","tipoAuditoriaId","popularComboAnosEquipe","atribuirTitulo","sortTabela1","start","obterPorIdAno","coordenacaoTipoTrabalho","validaForm","ano","auditorCoordenacao","novoAno","auditor","cargo","incluirNovoAuditor","auditorId","_","obterAuditorPorCoordenacao","jaCadastrado","coordenacaoId","storedToken","localStorage","getItem","JSON","parse","excluirAuditor","auditorExcluir","indiceAuditorExcluir","editarAuditor","setItem","stringify","inativarReativarAuditor","x","exibirModalAuditor","ObterAgentesPublicosSecont","idsExistentes","agente","includes","nomeAuditor","obterAbaEquipe","obterAbaDisponibilidade","console","warn","sortTabelaAuditores","buscarDisponibilidadeAgentePublico","inativarReativarTipoTrabalho","texto","tipoTrabalhoInativarReativar","reativarTipoTrabalho","inativarTipoTrabalho","excluirTipoTrabalho","tipoTrabalhoExcluir","adicionarCoordenacaoTipoTrabalho","abrirModalTipoTrabalho","onSelectTipoTrabalho","target","onSelectEquipe","idCoordenacao","qtdMediaDias","qtdMembros","sortTabelaDisponibilidade","getDadosDispensa","retDispensa","sortTabelaDispensa","formatarNome","palavrasSeparadas","trim","nomeFormatado","palavra","charAt","toUpperCase","toLowerCase","ModalCoordenacaoTipoTrabalhoComponent","tipoTrabalhoService","tabelaTipoTrabalho","selectedTipoTrabalho","campoObrigatorio","txtBtnConcluir","buscarTiposTrabalho","inserirTipoTrabalho","atualizarTipoTrabalho","CoordenacaoListComponent","log","CriterioFormComponent","criterioService","tipoCriterioService","perguntaService","modalService","enumTipoEntrada","enumTipoComparacao","metricasDataSource","permitePergunta","tipoCriterioId","tipoEntradaId","unidade","perguntaId","criterioMetrica","b","ordem","all","obterTipoEntradaCriterio","obterTipoComparacao","updateValueAndValidity","onChangeTipoEntrada","setValidators","pergunta","clearValidators","excluirMetrica","exibirModalTipoCriterio","columnDef","header","tipoCriterio","exibirModalPergunta","exibirModalMetrica","listaOpcoes","perguntaOpcao","perguntaOpcaoId","tipoEntrada","drop","previousIndex","currentIndex","i","ModalMetricaNumericoComponent","formMetrica","operacao1Id","valorNumerico1","operacao2Id","valorNumerico2","nota","validators","ValidateRequiredOperacao2","bind","parseFloat","setErrors","markAllAsTouched","valid","modelMetrica","operacao1","operacao2","formGroup","ModalMetricaOpcoesComponent","opcaoId","CriterioListComponent","imprimir","excluirCriterio","CustoRecursoFormComponent","custoRecursoService","valorMedio","onAuditoria","auditoriaModel","CustoRecursoListComponent","ErroComponent","FaixaClassificacaoFormComponent","faixaService","pisoBaixo","tetoBaixo","pisoMedio","tetoMedio","pisoAlto","tetoAlto","formatarNumero","n","toFixed","onSubmitClose","validarFormulario","calcular","field","FaseAtividadeFormComponent","faseAtividadeService","quantidadeDias","FaseAtividadeListComponent","FluxoAprovacaoFormComponent","fluxoService","novoNivel","origens","tiposTrabalho","origem","perfilCargo","enable","origemHidden","origemId","tipoDocumentoId","nivelAprovacao","ObterPerfisAcessoCidadao","resPerfil","tabelaPerfilCargo","filtrarTabelaPerfilCargo","fechar","dataAlteracao","tabelaPerfilCargoFiltro","codigoPerfil","guid","excluirNivel","incluirNivel","perfilSelecionado","nomePerfil","fluxoAprovacaoId","exibirOrigem","FluxoAprovacaoListComponent","fluxoAprovacaoService","botaoReativarHidden","botaoInativarHidden","IndicadorFormComponent","indicadorService","modelIndicadorCriterio","indicadorCriteriosDataSource","indicadorCriterio","criterio","incluirNovoIndicadorCriterio","criterioId","excluirIndicadorCriterio","exibirModalCriterio","c","descricaoTipoEntrada","IndicadorListComponent","InicialComponent","pendenciaService","obterPendencias","count","LogFormComponent","logService","dataRegistro","funcionalidade","tipoLog","LogListComponent","dataOriginal","filtroModel","funcionalidades","tiposLog","exportar","Exportar","detalhar","obterFuncionalidades","obterTiposLog","tabela","buscarComFiltro","dataInicial","dataFinal","nomeUsuario","tamanhoPagina","ordenacaoColuna","ordenacaoSentido","pdf","Blob","type","saveAs","MatrizPlanejamentoFormComponent","matrizPlanejamentoService","questaoService","modelMatrizPlanejamentoQuestao","questaoDataSource","prefixo","isAuditoria","setQuestions","matrizPlanejamentoQuestao","incluirQuestao","excluirQuestao","visualizarQuestao","exibirModalQuestao","questao","cadastroRapidoQuestao","MatrizPlanejamentoListComponent","MatrizPlanejamentoRelatorioComponent","use","idParam","obterDados","print","ModalCapituloComponent","keywords","keywordsPaa","keywordsOpa","keywordsPlanejamento","keywordsOsa","tags","subCapitulo","tipo","addKeywordFromInput","addTag","keyword","ModeloRelatorioFormComponent","modeloRelatorioService","capitulosDataSource","capitulosRelatorio","tiposTrabalhos","capitulos","subCapitulos","concat","reordenar","excluirCapitulo","capituloRelatorioPaiId","novoCapitulo","exibirModalCapitulo","indice","capituloPai","indexUpdate","modeloRelatorioId","onDrop","idx","subElement","subIdx","avaliarCapitulo","aprovarReprovarCapitulo","ModeloRelatorioListComponent","NaturezaResponsabilidadeFormComponent","naturezaResponsabilidadeService","NaturezaResponsabilidadeListComponent","OpaFormComponent","tipoAuditoriaService","ugService","subtipoAuditoriaService","dateHelper","tipoEnfaseService","activatedRoute","tiposAuditoria","tiposEnfase","coordenadoresAuditoria","subtipoDataSource","subtipoSemDados","auditoresSemDados","historicoTipoAuditoria","historicoUnidadeGestora","tipoAuditorioSelecionado","permiteEdicao","emPlanejamento","versao","relatoriaDados","visualizarRelatoria","numeroOpa","origemAuditoria","dataElaboracao","unidadeGestoraNome","unidadeGestoraId","dataInicioPrevista","dataFimPrevista","objeto","dataInicioRealizacao","dataFimRealizacao","auditorCoordenacaoId","notaRodape","tipoEnfaseId","obterTiposAuditoria","obterTiposEnfase","obterCoordenadoresAuditoria","gerarNova","obterOpa","numeroAba","queryParamMap","Number","atualizarForm","numero","paa","tipoAuditoria","atualizarSubtipos","atualizarAuditores","atualizarHistoricoTipoAuditoria","atualizarHistoricoUnidadeGestora","obterAtivos","filtroEnfase","obterCoordenadoresAtivos","obterCoordenadorTipoAuditoria","atualizarFormCoordenadorTipoAuditoria","subtiposAuditoria","opaEquipe","auditores","atualizarModelForm","atualizarHistoricoOpa","onSair","back","evt","recuperarConfiguracaoModalHistorico","justificativa","atualizarTipoAuditoriaSelecionado","atualizarDadosHistorico","exibirModalUnidadeGestora","unidadeGestora","atualizarFormUnidadeGestora","exibirModalSubtipo","exibirModalMultiselect","Array","isArray","subtiposAuditoriaSelecionados","subtipoAuditoriaId","subtipoAuditoria","opaId","excluirSubtipo","exibirModalAlocarEquipe","obterAuditoresCoordenacaoTipoAuditoria","auditoresTipoAuditoria","maxHeight","equipe","obterDispensasPeriodo","indisponivelPeriodo","enviarAprovacao","aprovar","gerarNovaVersao","historico","historicoAlteracoes","selectedIndex","historicos","tooltip","coordenacao","OpaListComponent","unidadeGestoraService","statusOpa","unidadesGestoras","situacoes","coordenadores","obterOrigens","obterStatus","obterSubtiposAuditoria","obterUnidadesGestoras","obterCoordenadores","situacaoSelecionada","coordenador","numeroObjeto","novaVersao","ModalAlocarEquipeOpaComponent","auditoresTipoAuditoriaDataSource","auditoresTipoAuditoriaSemDados","auditoresOutrasCoordenacoesDataSource","auditoresOutrasCoordenacoesSemDados","coordenacaoNome","auditorTipoAuditoria","marcarComoSelecionado","tabela2","auditoresSelecionados","selecionado","as","novoAuditor","opaEquipeId","OpaRelatorioComponent","homologado","opa","espelho","pop","avaliacao","resultadoValidacao","FiltroComponent","showButtonFilter","osaModel","coordenacoes","obterCoordenacoes","numeroOsa","dataInicioPrevisto","dataFimPrevisto","AbaInformacoesBasicasComponent","subtipoService","subTipoModel","paaEquipeModel","displayedColumnsSubtipo","equipeDataSource","subtipoNoData","semDadosSubTipo","submitted","alocarEquipeModel","dataInicioPeriodoAuditado","dataFimPeriodoAuditado","teste","sortingSubtiposDataAccessor","subTipoAuditoria","tableTwoPaginator","planejamento","planejamentoSubTipoAuditoria","obterAlocarEquipe","salvarOsa","obterAlocarEquipeOsaId","create","salvarAlocarEquipeOsaId","desvincularAuditor","desvincularAuditorId","atualizarListaSubtipos","exibirModalCoordenadorAuditoria","newCordenador","OsaAbasComponent","planejamentoId","ngOnChanges","changes","OsaFormComponent","elaborar","isFilha","obterPlanejamentoId","onSalvarOsa","enviarParaAprovacao","OsaImprimirComponent","getImprimir","OsaListComponent","EnviarParaAprovacao","input","inputAttributes","autocapitalize","showLoaderOnConfirm","preConfirm","showValidationMessage","allowOutsideClick","isLoading","filtrarPorNumero","currentOsa","navigateByUrl","OsaComponent","PaaAbaAlocacaoComponent","_location","paaInformacoesBasicas","equipeAlocacaoDataSource","equipeAlocacaoSemDados","buscarInformacoesBasicas","tabela4","routeConfig","paaId","params","obterAlocacoesEquipe","resEquipes","paaDistribuicao","tipoEnfase","paaEquipeAuditor","alocarEquipe","equipeAlocacao","obterEquipe","paaDistribuicaoId","lowerCase","X","mostrarBotaoAlocarEquipe","visualizarGrafico","obterGrafico","ModalCapacidadePaaComponent","auditorDataSource","colunasOriginais","colunasAdicionar","columnsDisponibilidades","tabelaAuditores","tabelaDispensas","tabelaDisponibilidades","disponibilidade","template","nomeColuna","item1","some","obterValorColunaNovo","coluna","retorno","templateTipoTrabalho","item2","closeAll","PaaAbaCapacidadeComponent","paaAbaCapacidadeService","capacidadeDataSource","capacidadeSemDados","paaHomologado","columnsCapacidade","mostrarCapacidadeTotal","capacidadeTotalPaa","mostrarCapacidadeTotalPea","capacidadeTotalPea","visualizarCoordenacao","capacidade","obterDetalheCoordenacao","agrupadorCapacidade","grupo","subTotalCapacidade","subTotal","PaaAbaDadosBasicosComponent","paaDadosBasicosService","periodoService","msgDataInicio","msgDataFim","coordenacaoSemDados","salvarDadosPendente","ugSemDados","esconderCamposPaaEspecial","coordenacoesDataSource","ugDataSource","form1","peaId","subcapitulo","atribuirRequireds","obterDadosBasicos","indicadorId","pea","atualizarListaUgs","paaUnidadeGestora","paaCoordenacao","exibirModalUg","unidadesAdicionadas","modoSelecaoMultiplo","unidadeSelecionada","excluirCoordenacao","resConfirm","isConfirmed","exibirModalCoordenacoes","coordenacoesAdicionadas","coordenacaoSelecionada","excluirUg","ug","exibirModalIndicador","localeCompare","indicador","exibirModalPeaReferencia","exibirModalPeriodo","d2","d1","getTime","periodo","periodoId","atualizarInserirAbaDadosBasicos","pendencias","showPendencias","validacao","atualizarDadosBasicos","datasValidas","valueDtInicio","valueDtFim","dtInicio","dtFim","getDay","listaUgs","filterPredicate","filterValue","exibirBotoesPaacEspecial","PaaAbaDistribuicaoComponent","paaAbaDistribuicaoService","distribuicaoDataSource","distribuicaoNaoContempladosDataSource","distribuicaoNaoContempladosPersonalizadoDataSource","distribuicaoPersonalizadoDataSource","columnsDistribuicaoOriginais1","columnsDistribuicaoOriginais2","colunasAdicionarDistribuicao","columnsDistribuicaoPersonalizado","distribuicaoNaoContempladosSemDados","distribuicaoSemDados","distruibuicaoSemDados","distribuicaoNaoContempladosSemDadosPersonalizado","distribuicaoSemDadosPersonalizado","obterInformacoesBasicasPaa","obterTiposAuditorias","obterPainelDistribuicao","idSituacao","isOrigemPlanejada","colunasNomes","colunasValores","obterNomeColuna","valorRisco","obterValorColuna","tabela3","obterHistoricoDistribuicao","valorNumerico","nomeIndicador","nomeCriterio","reativarDistribuicao","AlterarStatusDistribuicao","resAssociar","errAssociar","inativarDistribuicao","tooltipHistorico","tiposAuditorias","alterarTipoAuditoria","dialogConfigJustificativa","modalJustificativa","ValidarTipoAuditoria","AlterartipoAuditoriaDistribuicao","erro","alterarTipoEnfase","dialogConfigJustificativaTipoEnfase","modalJustificativaTipoEnfase","AlterarTipoEnfaseDistribuicao","editarColunas","obterPainelDistribuicaoColunas","AlterarSatusDistribuicaoColunas","mostrarSelectUnidade","mostrarTipoEnfase","mostrarBotaoEditarColunas","mostrarBotaoIncluirNovaUG","mostrarBotaoGrafico","mostrarBotaoAtivarInativar","incluirUG","distribuicao","manual","verificarDuplicidade","verificarDuplicidadeUG","adicionarDistribuicao","duplicada","obrigatoria","auditoriaObrigatoria","PaaAbaIndicesCriteriosComponent","paaAbaIndicesCriteriosService","visualizarBotaoFormulario","indicadoresDataSource","indicadoresDataSourceSemDados","criteriosDataSource","criteriosDataSourceSemDados","indicadores","criterios","agrupadorCriterios","idIndicador","isGrouper","peaRelacionado","importarArquivoCriterioPaa","respostas","u","paaIndiceCriterioId","enviarRespostasCriterio","preencherFormularioCriterioPaa","obterCriterioResposta","resCriterioRespostas","criterioRespostas","r","abrirModalRankingPrioridade","idPaaIndiceCriterio","removerIndiceCriterio","excluirIndicador","removerIndiceCriterios","exibirRespostas","isGroup","obterCapacidadeTrabalhoPor","anoPaa","obterCapacidadeTrabalhoPorIdAndAno","resCapacidade","capacidadeTotalCoordenacao","capacidadeTotalCoordenacaoPea","adicionarCriterio","valorExibicao","adicionarIndiceCriterio","adicionarIndicador","exibirModalVisualizarQuestionarioCriterio","obterVisualizacaoQuestionario","exibirModalEnviarQuestionarioCriterio","enviarQuestionario","confirmarCancelamento","questionariosRespondidos","cancelarEnvioQuestionario","modelEnviarQuestionario","enviarQuestionarios","enviarQuestionarioPaa","enviarQuestionariosPaa","mostrarBotaoPreencherFormulario","idSituacaoPaa","mostrarBotaoImportarArquivo","mostrarBotaoVisualizarResposta","mostrarBotaoExcluirCriterio","possuiIndicador","mostrarBotaoExcluirIndicador","mostrarBotaoAdicionarCriterio","mostrarBotaoAdicionarIndicador","mostrarBotaoQuestionario","mostrarBotaoAbrirModalRankingPrioridade","ModalAlocarEquipeComponent","cdRef","msgValidacaoDataInicio","msgValidacaoDataFim","auditorSemDados","auditorOutraCoordenacaoDataSource","auditorOutraCoordenacaoSemDados","coordenadorNome","listaAuditores","nomeCoordenacao","nomeDispensa","auditoresDisponiveisDataSource","listaAuditoresConvidados","VerificaDataAlocacao","incluirAuditor","detectChanges","validarAlocacaoEquipe","alocadosReq","alocados","percorrerObjetoComAlertsAlocados","dispensadosReq","dispensados","percorrerObjetoComAlertsDispensados","atualizarAlocacao","exibirAlertaPorChaveAlocados","exibirAlertaPorChaveDispensados","chaveAtual","validarAlocados","validarDispensados","observer","html","complete","listaConvidados","lista","atulizarListaDispensados","obterEquipeIndisponivel","auditoresIndisponiveis","concatenarAuditores","auditoresCoordenacao","obterAuditoresCapacidadeTrabalho","auditorIndisponivel","validarEquipeDisponivel","quantidade","atualizarAlocacaoEquipe","alertas","alerta","atulizarListaAlocacao","alocado","dispensado","validacaoTexto","val","errorMessage","concatUg","ModalCadastrarCriterioComponent","todosCriterios","itemAgrupador","ModalCadastrarIndicadorComponent","todosIndicadores","ModalCapacidadeDispensaComponent","modelNovaDispensa","tiposDispensas","dispensa","Inputmask","incluirDispensa","f","tipoDispensa","atualizarCapacidadeTrabalho","UpdateDataInicio","targt","UpdateDataFim","getPeriodoFormatado","strDataInicio","strDataFim","ModalConfirmarReativacaoDistribuicaoComponent","ModalEntranharComponent","edocsService","papeis","obterPapeis","ModalEnviarQuestionarioCriterioPaaComponent","parametrizacaoService","prazoDias","valor","exibirModalNaturezaResponsabilidade","naturezaResponsabilidadeId","naturezaResponsabilidadeNome","exibirId","customizeColumns","onChangePreencherPrazo","ModalGraficoDistribuicaoComponent","dadosImprimir","siglaUnidadeGestora","ordenarCoordenacoes","removeDuplicates","paaGraficoCoordenacoes","originalArray","prop","newArray","lookupObject","ObterEstiloCoordenacao","coordColor","stringToColor","ObterEstiloLegendaCoordenacao","obterDescricaoCoordenacao","toLocaleDateString","nomeAuditores","obterDescricaoCoordenacaoLegenda","hash","charCodeAt","color","substr","idHtmlName","getElementById","innerHTML","tela_impressao","write","TemplateImpressao","ModalImportarArquivoCriterioPaaComponent","onFileChange","reader","FileReader","files","file","readAsText","onload","conteudoArquivo","lerValidarArquivo","conteudoValido","erros","l","resposta","codigoUg","isNaN","ModalPreencherFormularioPaaComponent","ModalRankingPrioridadeComponent","rankingService","rankingPrioridadeDataSource","rankingPrioridadeEmpresasPublicasDataSource","semDadosRanking","semDadosRankingEmpresaPublica","obterRankingPrioridade","obterRankingDistribuicaoSimplificado","empresaPublica","listaPublicas","ModalSelecionarColunasComponent","todosIndicesCriterios","ModalSelecionarUGComponent","todasUnidadesGestoras","noItemSelected","selectedUgs","s","selecao","selecionados","ModalVisualizarQuestionarioCriterioPaaComponent","criterioDataSource","PaaElaborarComponent","peaHomologado","modelDadosBasicos","criteriosIndicadoresSemDados","criterioSemDados","disalibilitarinput","usuarioCoordenadorPaa","groupByColumns","columnsLabel","label","columns","verificarUsuarioCoordenador","obterCoordenacoesCoordenador","resCoordenacoes","encontrou","eachCoordenacao","eachCoordenacaoPaa","coordenacaoPaa","getnomeAuditores","agrupadorCriterio","subTotalCriterio","uri","skipLocationChange","addGroups","rootGroup","Group","expanded","getSublevel","groupBy","group","array","acc","level","parent","currentColumn","groupByCurrentColumn","groups","uniqueBy","entries","k","v","row","subGroups","rowsInGroup","totalCounts","subGroup","unshift","seen","hasOwnProperty","compare","isAsc","preencherFormularioCriterio","importarArquivoCriterio","tituloAbas","setSubmit","obterTipoTrabalho","idTipoTrabalhoPaac","idTipoTrabalhoPaacEspecial","idOrigemEspecial","visible","PaaListComponent","relatorio","botaoExcluirHidden","PaaRelatorioComponent","groupByPipe","totalCapacidadeCoordenacaoes","totalCapacidadeCoordenacaoesPea","grafico","groupData","groupedData","getObjectKeys","capacidadeTrabalho","coordenacaoSigla","sum","current","equipes","painelDistribuicao","dadosDistribuicao","ParametrizacaoDocumentoEdocsFormComponent","paramService","dataSourcePAA","atualizarTodos","dropPAA","ModalParametrizacaoFormComponent","bsModalRef","onClose","ParametrizacaoListComponent","initialState","content","ModalAutuacaoComponent","locaisAutuacao","obterLocaisAutuacao","idPapel","obterLocaisAtuacao","onSelectPapel","papelAutuadorId","ModalCapacidadeComponent","dataInicioFormatted","dataFimFormatted","ModalDescricaoDiasUteisComponent","totalDiasAno","sabDom","diasNaoUteis","ferNac","ferEst","ferMun","pontoFac","outros","totalDNU","diasUteis","treinamento","dispensaPadrao","reunioes","licencasMedicas","ferias","abonos","outrasTarefas","totalDispensasPadrao","diasDisponiveisTotais","diasReservadosAuditoriasEspeciais","diasDisponiveis","auditoriasEspeciaisValor","auditoriasEspeciais","du","auditoriaEspecialDD","isObjectEmpty","ModalDetalharValorRiscoComponent","calculos","ModalEnviarQuestionarioCriterioComponent","ModalImportarArquivoCriterioComponent","mensagens","ModalPreencherFormularioComponent","descricaoCriterioFormulario","ModalSelecionarCoordenacoesComponent","elementosSelecionados","filtrar","selecionarTodos","ModalSelecionarUgComponent","ModalVisualizarQuestionarioCriterioComponent","ModalVisualizarRespostasComponent","PeaFormComponent","faixaClassificacaoService","modelFaixaPadrao","modelFaixaPersonalizada","modelFaixa","naturezaResponsabilidadeDataSource","salvarDistribuicaoPendente","habilitarHomologarRejeitar","habilitarUltimoNivelAprovacao","peaQuestionario","hoje","receberFaixaClassificacao","faixaClassificacao","peaUnidadeGestora","peaCoordenacao","obterAbaCargaCriterios","obterCargaCriterios","obterAbaCapacidadeTrabalho","obterCapacidadeTrabalho","obterAbaRanking","obterAbaDistribuicao","classificacaoPersonalizada","classificacaoPisoBaixo","classificacaoTetoBaixo","classificacaoPisoMedio","classificacaoTetoMedio","classificacaoPisoAlto","classificacaoTetoAlto","obterCargaCriteriosPorId","resCriterios","questionariosEnviados","peaCriterioQuestionario","diff","dataLimite","obterCapacidadeTrabalhoPorId","dadosPreparados","anos","Set","capacidadeTotalAno","record","obterPainelDistribuicaoPorPeaId","resPainel","faixaClassificacaoPadrao","faixaClassificacaoPersonalizada","painelDistribuicaoPadrao","painel","contemplada","unidadeGestoraSigla","blocoPainel","indicePriorizacao","tabelaNaoContemplados","painelDistribuicaoPersonalizado","tabelaPersonalizada","tabelaNaoContempladosPersonalizada","descricaoDiasUteis","feriadosPorTipo","extras","obterCapacidadePorAno","auditoriasEspeciaisGet","feriadoEnumToKeyMap","Nacional","Estadual","Municipal","PontoFacultativo","Outros","diasAno","diasFinaisSemana","totalDiasNaoUteis","editarCapacidade","atualizarAbaDadosBasicos","atualizarAbaDistribuicao","validacaoFluxoAprovacao","AtualizarFaixaClassificacao","salvarDadosDistribuicao","enviarAprovar","obterPerfisSimplificado","inputOptions","Map","set","situacaoId","avancar","voltar","validar","peaCriterioResposta","ariaLabel","questionario","enviarQuestionarioCancelado","obterRankingDistribuicao","gerarRankingDistribuicao","removerClassificacaoPersonalizada","response","PeaListComponent","enableSelectYear","gerarPAA","GerarPAA","atualizarFiltroStatus","modelsSelected","consultarAnos","obterAnosPaa","relatorioSimplificado","relatorioConsolidado","ids","botaoImpessaoIndividualHidden","botaoImpressaoColetivaHidden","botaoEditarHidden","botaoVisualizarHidden","botaoGerarPAAHidden","selectAnoHidden","gerarPaa","PeaRelatorioComponent","consolidado","reportPEAs","columnsRanking","obterDadosPorId","imprimirPeaConsolidado","imprimirPea","reportPEA","coordenacaoCapacidade","capacidadeTrabalhoTotal","rankingPrioridade","rankingDePrioridade","rankingPrioridadeEmpresasPublicas","dadosDistribuicaoContempladas","dadosDistribuicaoNaoContempladas","dadosDistribuicaoContempladasPersonalizado","dadosDistribuicaoNaoContempladasPersonalizado","obterValorRiscoPorUg","valorRiscoUnidadeGestoras","anoInicial","anoFim","distribuicaoContemplada","paineisDistribuicao","distribuicaoNaoContemplada","distribuicaoPersonalizadaContemplada","distribuicaoPersonalizadaNaoContemplada","anosCalendario","dias","meses","totalDias","sabadoDomingo","totalSabadosEDomingos","pontoFacultativo","totalPontosFacultativos","feriado","totalFeriados","totalDiasUteis","obterPesoColuna","peso","PendenciaListComponent","searchStatus","tipoDePendencia","dataRecebimento","dataPrazo","pendencia","PerguntaFormComponent","opcoesDataSource","permiteCadastroOpcoes","novaOpcao","previousContainer","container","obterTipoEntradaPergunta","incluirNovaOpcao","excluirOpcao","PerguntaListComponent","PeriodoFormComponent","PeriodoListComponent","ImprimirComponent","formatarInput","MatrizPlanejamentoVisualizarComponent","obterAbaMatrizPorIdImprimir","ModalAlocarEquipePlanejamentoComponent","auditoresQueEstavamAnteriormente","planejamentoEquipeId","ModalUgPlanejamentoComponent","PlanejamentoFormComponent","serviceMatriz","modelPlanejamentoSubtipoAuditoria","modelPlanejamentoUnidadeGestora","unidadeGestoraDataSource","unidadeGestoraSemDados","displayedColumnsUg","dadosObtidosPlanejamento","modelRelatoria","handlerInit","modelCustoRecursoPlanejamento","custoRecursoColunas","custoRecursoPlanejamentoDataSource","custoRecursoPlanejamentoSemDados","formCustoRecurso","valorUnitario","statusPlanejamento","popularListasInformacoesBasicas","planejamentoEquipe","obterDispensasPorPeriodo","onSubmitInformacoesBasicas","excluirElementoSubtipo","subtipoId","subtipo","excluido","excluirSubtipoAuditoria","Justificativa","abaMatrizPlanejamento","excluirRegistro","getSubtiposSelecionados","subtipoSelecionado","subtipoJustificativa","getSubtiposSemJustificativa","salvarSubtipoAuditoria","unidadeGestoraSelecionados","z","atualizarUnidadeGestora","unidadeGestoraSelecionada","UgSubTipo","ugSubTipo","subTipoAuditoriaId","salvarUgSubtipo","desvincularUgSubtipo","ugId","salvarAlocarEquipe","idTipoAuditoria","buscarAuditores","desvincularAlocarEquipe","idEquipeAlocada","excluirUnidadeGestora","PlanejamentoListComponent","fb","tiposAuditoriaId","planejar","pesquisar","obterFiltrado","filtrado","ModalProcedimentoAuditoriaComponent","procedimentoAuditoriaService","modelQuestaoProcedimentoAuditoria","tecnicaAuditoriaDataSource","fonteInformacao","detalhamentoProcedimento","procedimentoAuditoriaId","procedimentoTecnicaAuditoria","ProcedimentoAuditoriaFormComponent","tecnicaAuditoriaService","modelProcedimentoTecnicaAuditoria","incluirTecnicaAuditoria","tecnicaAuditoriaId","excluirTecnicaAuditoria","exibirModalTecnicaAuditoria","tecnicaAuditoria","ProcedimentoAuditoriaListComponent","QuestaoFormComponent","manterMatrizPlanejamento","constatacaoDataSource","procedimentoAuditoriaDataSource","semDadosConstatacao","semDadosProcedimentoAuditoria","classificacao","editorMaxLength","legislacaoAplicavelCriterio","enableToolbar","showToolbar","maxlength","control","regex","angularEditor","textArea","nativeElement","addEventListener","maxLengthAngularEditor","angularEditorLegislacao","permitirTeclas","verificarTamanho","questaoConstatacao","questaoProcedimentoAuditoria","procedimentoAuditoria","executarVinculos","ret","handleSuccess","vincularConstatacoes","vincularProcedimentos","handleError","isAvaliar","vincularQuestaoConstatacao","constatacoes","vincularQuestaoProcedimento","procedimentos","incluirConstatacao","excluirConstatacao","desVincularQuestaoConstatacao","exibirModalConstatacao","incluirProcedimentoAuditoria","excluirProcedimentoAuditoria","desVincularQuestaoProcedimento","exibirModalProcedimentoAuditoria","modalVisualizarConstatacao","modalVisualizarProcedimentoAuditoria","cadastroRapidoConstatacao","cadastroRapidoProcedimentoAuditoria","aprovarQuestao","reprovarQuestao","reprovar","QuestaoListComponent","ModalDelegarQuestionarioComponent","delegar","DelegarQuestionario","idResponsavel","QuestionarioFormComponent","questionarioService","responsaveisService","segmentoUrl","recuperarSegmento","documento","expirado","obterPerguntasQuestionario","obterQuestionarioPendentePorPeaId","isPea","obterQuestionarioPendentePorPaaId","salvarQuestionarioPea","salvarQuestionarioPaa","onEnviar","naoRespondidos","enviarQuestionarioPea","onCancelar","navegarLista","tratarObterQuestionarioPendente","tratarObterQuestionarioPaaPendente","questionarios","setTimeout","salvarRespostasQuestionarioPorPeaId","tratarSalvarQuestionario","salvarRespostasQuestionarioPorPaaId","enviarRespostasQuestionarioPorPeaId","tratarEnviarQuestionario","enviarRespostasQuestionarioPorPaaId","segmento","modalDelegar","retornaNomeTipoTrabalho","paaIndiceCriterio","responsavelId","dataCriacao","QuestionarioListComponent","isPEA","buscarQuestionariosPea","buscarQuestionariosPaa","responder","visualizarQuestionario","object","documentoId","tratarBuscar","obterQuestionariosPendentePea","obterQuestionariosPendentePaa","mostrarColunaPAAC","retornaNomePea","RecomendacaoFormComponent","tipoRecomendacao","RecomendacaoListComponent","obterPorRecomendacaoId","ModalIncluirPeriodoExercicioComponent","periodoExercicioService","enumTipoAgente","enumTipoAto","submited","onDataInicioChange","newDate","onDataFimChange","onDataAtoNomeacaoChange","dataAtoNomeacao","onDataPublicacaoNomeacaoChange","dataPublicacaoNomeacao","onNumeroNomeacaoChange","atoNomeacao","onDataAtoExoneracaoChange","dataAtoExoneracao","onDataPublicacaoExoneracaoChange","dataPublicacaoExoneracao","onNumeroExoneracaoChange","atoExoneracao","onTipoAtoNomeacaoChange","tipoAto","onTipoAtoExoneracaoChange","onTipoAgenteChange","tipoAgente","obterTipoAgente","obterTipoAto","dataAto","dataPublicacao","atoNomeacaoId","atoExoneracaoId","naturezaResponsabilidade","ModalIncluirResponsavelComponent","obterResponsavelPorId","obterPorResponsavelId","padStart","periodoExercicio","obterPorCpf","cpfValido","isValidCPF","ObterAgentePorCpf","rg","modalSelecionarResponsavel","modalIncluirPeriodoExercicio","match","validator","digit","el","toValidate","rest","soma","ModalSelecionarResponsavelComponent","nomeNaturezaResponsabilidadeId","nomeTipoAgente","RolResponsaveisFormComponent","rolResponsaveisService","obterListaResponsaveis","NaturezaResponsabilidade","TipoAgente","modalIncluirResponsavel","inativarReativarResponsaveis","confirm","excluirResponsaveis","RolResponsaveisListComponent","unidadesGestorasImprimirRolSource","unidadesGestorasImprimirRol","asObservable","responsaveis","imprimirRol","exibirModalUgImprimir","ImprimirRolResponsavelUnidadeGestoraComponent","rolResponsavelComponent","dataHoje","ugs","imprimirResponsaveisUg","ModalSelecionarUgImprimirComponent","ImprimirRolResponsaveisComponent","prazo","assunto","SolicitacaoTecnicaListComponent","solicitacaoTecnicaService","prazoResposta","numeroSolicitacao","arrayStatus","EmElaboracao","Finalizada","Enviada","Cancelada","SolicitacaoProrrogacao","Prorrogada","AtendidaParcialmente","AtendidaTotalmente","NaoAtendidaParcialmente","NaoAtendidaTotalmente","Pendente","ProrrogacaoRejeitada","assuntoSolicitacao","ObterResponsaveis","obterResponsaveisUGs","ModalDelegarItemComponent","responsavelDelegacao","responsavelDelegado","responsavelEncontrado","delegarItem","ModalItemSolicitacaoComponent","solicitacaoService","dataSourceResposta","semDadosResposta","tituloModal","respostaItemModel","arrayFiles","nomeArquivo","solicitacaoId","solicitacaoTecnicaId","tabelaItemPaginator","tabelaItemSort","tabelaRespostaSort","tabelaRespostaPaginator","obterItemId","anexo","respostaItemSolicitacaoTecnica","anexos","anexarArquivosResposta","flatListFiles","from","getBase64","fileToArray","arquivo","removerArquivoItemResposta","excluirAnexoItemResposta","Download","downloadAnexo","link","createElement","href","download","click","finalizarItem","enviarItem","salvarItemResposta","reject","readAsDataURL","onerror","downloadAnexoResposta","downloadArquivoRespostaItem","siglaUg","SolicitacaoTecnicaFormComponent","solicicataoTecnicaService","tituloPagina","semDadosItens","itensSolicitacaoDataSource","dataSourceUG","displayedColumnsItems","endsWith","obterSolicitacaoTecnica","solicitacaoTecnicaUgResponsavel","visualizarItem","responderItem","prorrogarPrazo","processarAfterClosedModalProgrrogacaoPrazo","mostraMensagemSucesso","mostraMensagemAlerta","mostraMensagemErro","SubtipoAuditoriaFormComponent","modelSubtipoAuditoriaMatrizPlanejamento","matrizPlanejamentoDataSource","subtipoAuditoriaMatrizPlanejamento","exibirModalMatrizPlanejamento","matrizPlanejamentoId","matrizPlanejamento","incluirMatrizPlanejamento","excluirMatrizPlanejamento","visualizarMatrizPlanejamento","cadastroRapidoMatrizPlanejamento","SubtipoAuditoriaListComponent","TecnicaAuditoriaFormComponent","TecnicaAuditoriaListComponent","TipoAuditoriaFormComponent","readonly","qtdDiasPlanejamento","qtdDiasExecucao","quantidadeMembros","exibirModalCoordenacao","customFilterPredicate","calcularTotalDias","TipoAuditoriaListComponent","TipoCriterioFormComponent","TipoCriterioListComponent","excluirTipoCriterio","TipoDispensaFormComponent","TipoDispensaListComponent","TipoEnfaseFormComponent","TipoEnfaseListComponent","UnidadeGestoraFormComponent","organogramaService","unidadeGestoraMaturidadeGRService","unidadeGestoraMaturidadeGRHistoricoService","enumTipoAdministracao","enumAnosObrigatorios","enumFuncoes","modelResponsavel","maturidades","gestao","orgaoSuperior","codigoUo","cnpj","orgaoId","unidadeGestoraResponsavelId","tipoAdministracaoId","anosObrigatorios","executaOrcamento","executaObra","executaConvenio","auditoriaSistemas","unidadeGestoraMaturidadeGRId","adicionarEnums","carregaMaturidades","organogramaId","importadoViaServico","desabilitarUgImportadoViaServico","tiposAdministracao","obterTipoAdministracao","tipoAdministracaoNome","exibirModalOrgao","ObterOrgaos","nomeOrgao","exibirModalResponsavelUnidade","ObterAgentesPublicosPorConjunto","nomeResponsavel","exibirModalUnidadeGestoraResponsavel","nomeUnidadeGestoraResponsavel","abrirModalHistoricoMaturidade","filtroHistorico","idug","dadosHistoricoMaturidade","txtTitulo","historicoDados","ModalAssociarComponent","unidadesGestorasDisponiveis","remover","idsSelecionadas","adicionar","idSelecionado","ModalImportacaoComponent","UnidadeGestoraListComponent","importarUgPorServico","importarUgServico","importar","AcessoCidadaoService","httpClient","locationStrategy","apiBaseUrl","toPromise","conjuntoId","ObterPorId","AgentePublicoService","post","put","AmostraService","obterAmostra","tipoAmostra","obterAmostraId","amostraId","salvarAmostra","excluirAmostra","AprovacaoService","imprimirRelatoria","AuditoriaService","AuthService","logout","location","recursos","permissoesRecursos","acoes","p","possuiPermissaoRecurso","AvaliacaoService","BaseService","baseHref","getBaseHref","apiUrl","origin","CalendarioService","simplificado","append","CapituloRelatorioService","aprovado","patch","ConstatacaoService","CoordenacaoService","cargoAuditor","exibeInativos","validarCoordenador","CriterioService","CronogramaService","obterCronograma","obterAtividade","obterAtividadePorId","obterSubAtividade","obterSubAtividadePorId","excluirAtividade","excluirSubAtividade","inserirAtividade","inserirsubAtividade","atualizarAtividade","atualizarSubAtividade","CustoRecursoPlanejamentoService","CustoRecursoService","EdocsService","FaixaClassificacaoService","FaseAtividadeService","FluxoAprovacaoService","IndicadorService","LogService","recuperarParametrosFiltro","responseType","ManterMatrizPlanejamentoService","_dados","idSubtipo","idQuestao","vincularQuestao","isQuestaoPlanejamento","relacionamentoId","obterQuestaoSubtipo","query","obterUgSubtipo","MatrizPlanejamentoService","MenuService","ModeloRelatorioService","obterPorTipoTrabalho","NaturezaResponsabilidadeService","OpaService","obterRelatorio","entranharDocumento","OrganogramaService","OsaService","osaSource","salvarOsaAtividade","atividadeId","salvarOsaSubAtividade","subAtividadeId","obterCronogramaOsa","osaId","alocarEquipeOsa","obterAlocarEquipeId","equipeId","PaaService","atualizarPaa","idPerfilSelecionado","rejeitar","enviarHomologacao","obterEquipesPorPaaId","PaaAbaCapacidadeService","httpclient","PaaAbaDadosBasicosService","PaaAbaDistribuicaoService","obterPainelDistribuicaoImprimir","justificativaEnfase","PaaAbaIndicesCriteriosService","ParametrizacaoDocumentoEdocsService","ParametrizacaoService","atualizaTodos","PeaService","idPerfil","importarRespostas","fileData","obterQuestionarioPendente","obterQuestionarioPorPeaIdeCriterioId","autuacao","ObterResponsaveisUG","idUg","GerarRankingDistribuicao","PendenciaService","PerguntaService","PeriodoExercicioService","PeriodoService","PlanejamentoService","_planejamentoSubTipoAuditoria","obterAbaMatrizPorId","ProcedimentoAuditoriaService","QuestaoService","constatcaoId","procedimentoId","QuestionarioService","enviarQuestionariosPea","idCriterio","RankingDistribuicaoService","RecomendacaoService","RelatoriaCapituloService","relatoriaService","idTipodeTrabalho","idItem","avaliarExclusao","RelatoriaService","relatoriaSource","reltoriaCurrent","excluirRelatoria","gerar","relatoriaModel","habilitarGerar","idTrabalho","ResponsaveisService","toDateString","RolResponsaveisService","SharedService","subject","SolicitacaoTecnicaService","obterUnidadeGestora","obterResponsaveis","salvarSolicitacao","desvincularUgResponsavel","salvarUgResponsavel","cancelarSolicitacao","habilitarRespostaSolicitacao","finalizar","enviar","obterUgResponsavel","avaliarProrrogacao","obterRespostaItem","itemId","salvarItem","excluirItem","cancelarItem","itemSolicitacaoTecnicaId","itemResposta","salvarAnexo","excluirAnexo","anexoId","SubtipoAuditoriaService","obterPorIds","TabelaDominioService","obterValores","obterOperadorMembroAprovador","obterPerfilCargo","obterFuncaoResponsavelUnidadeGestora","TecnicaAuditoriaService","TipoAuditoriaService","TipoCriterioService","TipoDispensaService","TipoEnfaseService","TipoTrabalhoService","UnidadeGestoraMaturidadeGRService","UnidadeGestoraMaturidadeGRHistoricoService","UnidadeGestoraService","AbaAmostraComponent","amostraService","amostra","amostraArquivos","amostraUnidadeGestoras","obterAmostraPorId","exibirModalAdicionarAmostra","visualizarModalAdicionarAmostra","ImprimirAmostraComponent","getCurrentNavigation","tituloImpressao","InserirAmostraComponent","formatPeaUnidadeGestora","deleteFile","uploadAmostra","AbaCronogramaComponent","cronogramaService","atividadesModel","cronograma","prazoEntregaMatriz","prazoRespostaAuditado","prazoEntregaRelatorio","obterCampos","fasesAtividade","modalIncluir","quantidadeDiasRealizado","ModalAtividadeSubatividadeComponent","modelSub","valido","fasesAtividadeId","atividade","AbaMatrizPlanejamentoComponent","manterMatrizPlanejamentoService","tipotrabalhoId","carregarRegistros","visualizarMatriz","atualizaRegistros","currentValue","modalUnidadeGestora","subTipoId","abrirModalAdicionarItem","matriz","questoes","isQuestaoEspecifica","questoesJoin","ListagemQuestoesComponent","listaDados","excluirItemEvento","isPlanejamento","modalEditarQuestao","routeIncludes","ModalAdicionarQuestoesComponent","questaoSelecionada","matrizPlanejamentoModel","listSubtipo","filtrarModel","tituloAuditoria","obterQuestoes","abrirModalAdicionarQuestao","subTipoCategoria","ModalEditarQuestaoComponent","ModalUgComponent","AbaSolicitacaoTecnicaComponent","solicitacaoTecnica","permitido","cancelada","dataAtual","dataVencida","habilitarResposta","incluirSolicitacaoTecnica","numeroST","modalVisualizarResposta","ImprimirSolicitacaoComponent","serviceSolicitacao","ModalAvaliarProrrogacaoComponent","ModalIncluirItemComponent","defaultFontSize","fonts","uploadUrl","uploadWithCredentials","toolbarPosition","nSolicitacaoTecnica","nrItem","load","modalIncluirArquivo","isClose","excluirArquivo","IncluirSolicitacaoComponent","editorConfig","dataSourceItems","prorrogacao","incluirSolicitacao","responsavel","associado","tableThreePaginator","prorrogarSolicitacao","nomeUg","exibirModalAdicionarItem","modalIncluiritem","modalIncluirUg","dataSourcePaiUg","ugsResponsavel","ModalIncluirUgComponent","ugSelecionada","responsavelSelecionado","ugCadastrada","dataSourceUgPai","obterUG","unidadesGetoras","adicionarUg","findUgSelecionada","findDataUgSelecionada","ModalVisualizarItemComponent","obterResposta","DownloadResposta","ModalVisualizarRespostaComponent","modalVisulizaItem","AlocarEquipeComponent","novaListaAuditores","minDataInicio","maxDataFim","selecionarAuditor","dataValida","selecionarAuditores","AppButtonComponent","block","loading","BaseFormComponent","showCloseButton","pageSizeOptions","botaoOk","list","exibirMensagemPadrao","BaseListComponent","CapituloComponent","relatoriaCapituloService","keywordsPaaPadrao","keywordsPaaEspecial","habilitarEdicaoRelatoria","indexSubChapter","activeAll","atctiveCapitulo","tipoTrabalhoRef","impressao","habilitarEdicaoCapituloRelatoria","editarCapitulo","capitulo","indexCapitulo","relatoriaDadosEspelho","dadosObtidos","subRelatoriaCapitulos","indexSubCapitulo","habilitarTodasEdicoesCapituloRelatoria","indexSub","modalRelatoriaCapitulo","relatoriasCapitulos","modalHistoricoRelatoria","capituloFixo","isCapitulo","reativarCapitulo","salvarOne","itemCapitulo","isubcapitulo","salvarTodos","relatoriaCapituloPaiId","onSubDrop","idCapitulo","tasks","subItem","mostrarBotaoEditar","tipoTrabalhoStatus","mostrarBotaoExcluir","ModalHistoricoRelatoriaComponent","modalVisualizarHistorico","validarExibicao","ModalVisualizarHistoricoComponent","differences","textoDestacado","textoRemovido","dataFormatada","minLength","conteudoAnterior","conteudoAtual","diffStartIndex","diffEndIndex","removido","substring","adicionado","semAlteracao","getFormattedDate","destacarAlteracoes","diffOutput","identificarRemocoes","diffString","realcarRemocoes","textoOriginal","textoAtual","RegExp","day","month","year","hour","getHours","minutes","getMinutes","ModalRelatoriaCapituloComponent","subCapituloPodeInserirNaBase","isFormValid","capituloRelatorioId","valueChanges","updateFormValidity","incluirNaBase","eSubCapitulo","newCapitulo","relatoriaId","novoCapituloModeloRelatorio","CustosRecursosComponent","custoRecursoPlanejamentoService","obterCustoRecurso","exibirModalCustoRecurso","incluirCustoRecurso","editarCustoRecurso","excluirCustoRecurso","CustoRecurso","ModalCustoRecursoPlanejamentoComponent","FaixaClassificacaoComponentComponent","faixadeClassificacaoOutput","enviarClassificacao","emit","salvarModel","nomeCampoAlterado","HistoricoModalComponent","avaliacaoService","LinhaDoTempoComponent","obterTipoDocumento","datas","tamanhoArray","mostrarBotaoFechar","LookupModalComponent","selecionarItem","LookupMultiselectModalComponent","todosSelecionados","verificarItensSelecionados","ModalArquivoComponent","solicitacaoTencica","numeroItem","Id","Arquivos","selectedFiles","srcElement","base64","base64full","Arquivo","dataurl","filename","ModalCancelarComponent","Sim","Nao","ModalConfirmarRejeitarComponent","ModalConfirmarInativacaoComponent","ModalJustificativaComponent","RankingPrioridadeComponent","fatorRedutor","valorRiscoResidual","exibirModalDetalharValorRisco","ImprimirRelatoriaComponent","abaRelatoria","voltarAbaRelatoria","backClicked","VoltarRelatoria","RelatoriaComponent","reprovado","jaEnviadoAprovacao","habilitarGerarRelatoria","modeloRelatorio","exibirModalModeloRelatorio","desabilitarBotaoEnviarAprovacao","SanitizedHtmlPipe","sanitized","bypassSecurityTrustHtml","ModalIncluirUgComponentComponent","subtipoList","ugType","subTiposVinculados","planejamentoUgSubtipo","findUgDataSourceSelecionada","incluiColuna","UnidadeGestoraComponent","naoTemJustificativa","KeyboardlockDirective","blockPaste","blockCopy","blockCut","FooterComponent","appVersion","HeaderComponent","toggleMenuSidebar","searchForm","search","UserDropdownMenuComponent","elementRef","renderer","clickout","contains","hideDropdownMenu","toggleDropdownMenu","dropdownMenu","classList","showDropdownMenu","addClass","removeClass","MainComponent","sidebarMenuOpened","showSideBar","mainSidebarHeight","setStyle","contentWrapper","MenuItemComponent","SidebarComponent","menuService","obterMenu","each","_jQueryInterface","call","GroupByPipe","dados2","angularEditorConfig","outline","minWidth","convertDate","reverse","toISOString","toFormatValue","cvLength","toFormatDecimal","casasDecimais","toRemoveCharacters","replaceAll","environment","production"],"mappings":"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AAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAA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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;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;A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","file":"main-es5.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\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: { recurso: EnumRecursoPerfil.ManterOSA, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.ManterOSA, acao:EnumAcaoRecurso.Elaborar },\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: { recurso: EnumRecursoPerfil.ManterOSA, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.ManterOSA, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.ManterOSA, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aprovacoes, acao:EnumAcaoRecurso.Relatoria },\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: { recurso: EnumRecursoPerfil.Aprovacoes, acao:EnumAcaoRecurso.Relatoria },\r\n\t\t\t\tcomponent: ImprimirRelatoriaComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"faixa-classificacao\",\r\n\t\t\t\tdata: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aprovacoes, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Aprovacoes, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Configuracoes, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.ManterPEA, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.ManterPEA, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.ManterPEA, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.ManterPEA, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Configuracoes, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Configuracoes, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.ManterPEA, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.ManterPEA, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.ManterPEA, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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 data: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Configuracoes, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.ManterPAA, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.ManterPAA, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.ManterPAA, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.ManterPAA, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.ManterOPA, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.ManterOPA, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.ManterOPA, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.ManterOPA, acao:EnumAcaoRecurso.GerarNovaVersao },\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: { recurso: EnumRecursoPerfil.ManterOPA, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.ManterOPA, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.ManterPAA, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.LogsDoSistema, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.LogsDoSistema, acao:EnumAcaoRecurso.Detalhar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.ManterPAA, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.ManterOPA, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.ManterOSA, acao:EnumAcaoRecurso.Imprimir },\r\n\t\t\t\tcomponent: OsaImprimirComponent,\r\n\t\t\t},\r\n\t\t\t\r\n\t\t\t{\r\n\t\t\t\tpath: \"periodos/:id/visualizar\",\r\n\t\t\t\tdata: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Inserir },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Editar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Planejamento, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Planejamento, acao:EnumAcaoRecurso.Planejar },\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: { recurso: EnumRecursoPerfil.Planejamento, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Planejamento, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.Planejamento, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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/planejar/amostra/:amostraId/imprimir\",\r\n\t\t\t\tdata: { recurso: EnumRecursoPerfil.ManterOSA, acao:EnumAcaoRecurso.Imprimir },\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: { recurso: EnumRecursoPerfil.Auditoria, acao:EnumAcaoRecurso.Consultar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Cadastros, acao:EnumAcaoRecurso.Visualizar },\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: { recurso: EnumRecursoPerfil.Aberto, acao: EnumAcaoRecurso.Visualizar},\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: { recurso: EnumRecursoPerfil.Cadastros, acao: EnumAcaoRecurso.Inserir},\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: { recurso: EnumRecursoPerfil.Aberto, acao: EnumAcaoRecurso.Visualizar},\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: { recurso: EnumRecursoPerfil.Aberto, acao: EnumAcaoRecurso.Visualizar},\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: { recurso: EnumRecursoPerfil.Aberto, acao: EnumAcaoRecurso.Visualizar},\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: {recurso: EnumRecursoPerfil.Aberto, acao: EnumAcaoRecurso.Visualizar},\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: {recurso: EnumRecursoPerfil.Aberto, acao: EnumAcaoRecurso.Visualizar},\r\n\t\t\t\tcomponent: AgentePublicoFormComponent\r\n\t\t\t}\r\n\r\n\t\t\t\r\n\t\t],\r\n\t},\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 { 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 { MatDialogModule, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatPaginatorIntl, MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatSortModule } from '@angular/material/sort';\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\n\r\ndefineLocale('pt-br', ptBrLocale);\r\nregisterLocaleData(ptBr);\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n InicialComponent,\r\n PeriodoListComponent,\r\n PeriodoFormComponent,\r\n TipoCriterioListComponent,\r\n TipoCriterioFormComponent,\r\n NaturezaResponsabilidadeListComponent,\r\n MainComponent,\r\n HeaderComponent,\r\n FooterComponent,\r\n SidebarComponent,\r\n AppButtonComponent,\r\n UserDropdownMenuComponent,\r\n BaseFormComponent,\r\n BaseListComponent,\r\n ErroComponent,\r\n PerguntaFormComponent,\r\n PerguntaListComponent,\r\n CriterioListComponent,\r\n CriterioFormComponent,\r\n LookupModalComponent,\r\n LookupMultiselectModalComponent,\r\n IndicadorListComponent,\r\n IndicadorFormComponent,\r\n RolResponsaveisListComponent,\r\n RolResponsaveisFormComponent,\r\n TipoDispensaListComponent,\r\n TipoDispensaFormComponent,\r\n FaixaClassificacaoFormComponent,\r\n CoordenacaoListComponent,\r\n CoordenacaoFormComponent,\r\n CalendarioListComponent,\r\n CalendarioFormComponent,\r\n TipoAuditoriaListComponent,\r\n TipoAuditoriaFormComponent,\r\n CapituloRelatorioListComponent,\r\n CapituloRelatorioFormComponent,\r\n ParametrizacaoDocumentoEdocsFormComponent,\r\n ModeloRelatorioListComponent,\r\n ModeloRelatorioFormComponent,\r\n PeaListComponent,\r\n PeaFormComponent,\r\n UnidadeGestoraListComponent,\r\n UnidadeGestoraFormComponent,\r\n QuestionarioListComponent,\r\n QuestionarioFormComponent,\r\n FluxoAprovacaoListComponent,\r\n FluxoAprovacaoFormComponent,\r\n ModalImportacaoComponent,\r\n ModalSelecionarUgComponent,\r\n ModalSelecionarCoordenacoesComponent,\r\n ModalImportarArquivoCriterioComponent,\r\n ModalPreencherFormularioComponent,\r\n ModalCapacidadeComponent,\r\n PeaRelatorioComponent,\r\n ModalVisualizarRespostasComponent,\r\n ModalAssociarComponent,\r\n ModalMetricaNumericoComponent,\r\n ModalMetricaOpcoesComponent,\r\n ParametrizacaoListComponent,\r\n ModalParametrizacaoFormComponent,\r\n PaaListComponent,\r\n PaaElaborarComponent,\r\n ModalCapacidadeDispensaComponent,\r\n ModalAlocarEquipeComponent,\r\n ModalSelecionarUGComponent,\r\n ModalSelecionarColunasComponent,\r\n ModalCadastrarCriterioComponent,\r\n ModalCadastrarIndicadorComponent,\r\n ModalConfirmarInativacaoComponent,\r\n ModalConfirmarReativacaoDistribuicaoComponent,\r\n PendenciaListComponent,\r\n ModalGraficoDistribuicaoComponent,\r\n ModalConfirmarRejeitarComponent,\r\n OpaListComponent,\r\n PaaRelatorioComponent,\r\n ModalPreencherFormularioPaaComponent,\r\n OpaListComponent,\r\n OpaFormComponent,\r\n ModalDelegarQuestionarioComponent,\r\n ModalAutuacaoComponent,\r\n ModalEntranharComponent,\r\n TecnicaAuditoriaListComponent,\r\n TecnicaAuditoriaFormComponent,\r\n LogListComponent,\r\n LogFormComponent,\r\n CustoRecursoListComponent,\r\n CustoRecursoFormComponent,\r\n ProcedimentoAuditoriaListComponent,\r\n ProcedimentoAuditoriaFormComponent,\r\n RecomendacaoListComponent,\r\n RecomendacaoFormComponent,\r\n ConstatacaoListComponent,\r\n ConstatacaoFormComponent,\r\n ModalRecomendacaoComponent,\r\n QuestaoListComponent,\r\n QuestaoFormComponent,\r\n ModalConstatacaoComponent,\r\n ModalProcedimentoAuditoriaComponent,\r\n ModalAlocarEquipeOpaComponent,\r\n MatrizPlanejamentoListComponent,\r\n MatrizPlanejamentoFormComponent,\r\n MatrizPlanejamentoRelatorioComponent,\r\n ModalCapituloComponent,\r\n AprovacaoListComponent,\r\n ModalAvaliarComponent,\r\n ModalDetalharValorRiscoComponent,\r\n NaturezaResponsabilidadeFormComponent,\r\n ModalCapituloComponent,\r\n ModalEnviarQuestionarioCriterioComponent,\r\n ModalVisualizarQuestionarioCriterioComponent,\r\n ModalVisualizarQuestionarioCriterioPaaComponent,\r\n SubtipoAuditoriaListComponent,\r\n SubtipoAuditoriaFormComponent,\r\n PlanejamentoListComponent,\r\n PlanejamentoFormComponent,\r\n ModalAlocarEquipePlanejamentoComponent,\r\n ModalUgPlanejamentoComponent,\r\n OpaRelatorioComponent,\r\n ModalCancelarComponent,\r\n ModalImportarArquivoCriterioPaaComponent,\r\n ModalCustoRecursoPlanejamentoComponent,\r\n ModalIncluirResponsavelComponent,\r\n ModalSelecionarResponsavelComponent,\r\n ModalIncluirPeriodoExercicioComponent,\r\n ImprimirRolResponsaveisComponent,\r\n ImprimirRolResponsavelUnidadeGestoraComponent,\r\n ModalSelecionarUgImprimirComponent,\r\n FaseAtividadeListComponent,\r\n OsaComponent,\r\n OsaListComponent,\r\n FiltroComponent,\r\n OsaFormComponent,\r\n OsaAbasComponent,\r\n AbaInformacoesBasicasComponent,\r\n FaseAtividadeFormComponent,\r\n AbaCronogramaComponent,\r\n ModalAtividadeSubatividadeComponent,\r\n OsaImprimirComponent,\r\n AbaAmostraComponent,\r\n InserirAmostraComponent,\r\n ImprimirAmostraComponent,\r\n ModalRelatoriaCapituloComponent,\r\n ModalHistoricoRelatoriaComponent,\r\n CapituloComponent,\r\n RelatoriaComponent,\r\n ImprimirRelatoriaComponent,\r\n LinhaDoTempoComponent,\r\n SanitizedHtmlPipe,\r\n FaixaClassificacaoComponentComponent,\r\n RankingPrioridadeComponent,\r\n ModalRankingPrioridadeComponent,\r\n KeyboardlockDirective,\r\n AlocarEquipeComponent,\r\n AuditoriaListComponent,\r\n AbaSolicitacaoTecnicaComponent,\r\n IncluirSolicitacaoComponent,\r\n ModalJustificativaComponent,\r\n ModalIncluirItemComponent,\r\n ModalVisualizarRespostaComponent,\r\n AbaMatrizPlanejamentoComponent,\r\n ListagemQuestoesComponent,\r\n ModalAdicionarQuestoesComponent,\r\n SolicitacaoTecnicaListComponent,\r\n ModalVisualizarItemComponent,\r\n ModalArquivoComponent,\r\n ModalEditarQuestaoComponent,\r\n ImprimirSolicitacaoComponent,\r\n ModalItemSolicitacaoComponent,\r\n ModalIncluirUgComponent,\r\n UnidadeGestoraComponent,\r\n ModalIncluirUgComponentComponent,\r\n SolicitacaoTecnicaFormComponent,\r\n ModalUgComponent,\r\n ModalDelegarItemComponent,\r\n CustosRecursosComponent,\r\n ImprimirComponent,\r\n ModalAvaliarProrrogacaoComponent,\r\n MatrizPlanejamentoVisualizarComponent,\r\n TipoEnfaseListComponent,\r\n TipoEnfaseFormComponent,\r\n GroupByPipe,\r\n ModalEnviarQuestionarioCriterioPaaComponent,\r\n HistoricoModalComponent,\r\n MenuItemComponent,\r\n AgentePublicoListComponent,\r\n AgentePublicoFormComponent,\r\n AgentePublicoAbaDadosBasicosComponent,\r\n AgentePublicoAbaDisponibilidadeComponent,\r\n AgentePublicoAbaDispensasComponent,\r\n ModalAdicionarDispensaComponent,\r\n ModalCoordenacaoTipoTrabalhoComponent,\r\n PaaAbaIndicesCriteriosComponent,\r\n PaaAbaDadosBasicosComponent,\r\n PaaAbaCapacidadeComponent,\r\n PaaAbaDistribuicaoComponent,\r\n ModalCapacidadePaaComponent,\r\n PaaAbaAlocacaoComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n CommonModule,\r\n AppRoutingModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n BrowserAnimationsModule,\r\n ToastrModule.forRoot({\r\n timeOut: 5000,\r\n positionClass: 'toast-top-right',\r\n preventDuplicates: true,\r\n enableHtml: true,\r\n }),\r\n NgbModule,\r\n RouterModule,\r\n ConfirmationPopoverModule.forRoot({\r\n appendToBody: true,\r\n confirmButtonType: 'danger',\r\n }),\r\n BsDatepickerModule.forRoot(),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatSortModule,\r\n MatToolbarModule,\r\n NgxSpinnerModule,\r\n HttpClientModule,\r\n MatCheckboxModule,\r\n LoadingBarHttpClientModule,\r\n LoadingBarRouterModule,\r\n MatDialogModule,\r\n DragDropModule,\r\n ModalModule.forRoot(),\r\n MatTabsModule,\r\n MatSelectModule,\r\n MatTooltipModule,\r\n AngularEditorModule,\r\n MatRadioModule,\r\n MatChipsModule,\r\n NgSelectModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatFormFieldModule\r\n ],\r\n providers: [\r\n { provide: LOCALE_ID, useValue: 'pt' },\r\n { provide: DEFAULT_CURRENCY_CODE, useValue: 'BRL' },\r\n { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: LoadingInterceptor,\r\n multi: true,\r\n },\r\n { provide: MatPaginatorIntl, useValue: getPtBrPaginatorIntl() },\r\n { provide: MAT_DIALOG_DATA, useValue: {} },\r\n { provide: MatDialogRef, useValue: {} },\r\n AuthService,\r\n PeaGuard,\r\n QuestionarioGuard,\r\n TipoCriterioGuard,\r\n CriterioGuard,\r\n IndicadorGuard,\r\n PeriodoGuard,\r\n TipoAuditoriaGuard,\r\n UnidadeGestoraGuard,\r\n TipoDispensaGuard,\r\n CoordenacaoGuard,\r\n ModeloRelatorioGuard,\r\n PerguntaGuard,\r\n NaturezaResponsabilidadeGuard,\r\n CalendarioGuard,\r\n TecnicaAuditoriaGuard,\r\n CustoRecursoGuard,\r\n ProcedimentoAuditoriaGuard,\r\n QuestaoGuard,\r\n MatrizPlanejamentoGuard,\r\n RecomendacaoGuard,\r\n SubtipoAuditoriaGuard,\r\n FaseAtividadeGuard,\r\n ImprimirRelatoriaComponent,\r\n TipoEnfaseGuard,\r\n PaaGuard\r\n ],\r\n entryComponents: [\r\n LookupModalComponent,\r\n LookupMultiselectModalComponent,\r\n ModalImportacaoComponent,\r\n ModalSelecionarUgComponent,\r\n ModalSelecionarUgImprimirComponent,\r\n ModalSelecionarCoordenacoesComponent,\r\n ModalImportarArquivoCriterioComponent,\r\n ModalEnviarQuestionarioCriterioComponent,\r\n ModalVisualizarQuestionarioCriterioComponent,\r\n ModalVisualizarQuestionarioCriterioPaaComponent,\r\n ModalPreencherFormularioComponent,\r\n ModalCapacidadeComponent,\r\n ModalVisualizarRespostasComponent,\r\n ModalAssociarComponent,\r\n ModalMetricaNumericoComponent,\r\n ModalMetricaOpcoesComponent,\r\n ModalParametrizacaoFormComponent,\r\n ModalPreencherFormularioPaaComponent,\r\n ModalCancelarComponent,\r\n ModalDelegarQuestionarioComponent,\r\n ModalAutuacaoComponent,\r\n ModalEntranharComponent,\r\n ModalAlocarEquipeOpaComponent,\r\n ModalAutuacaoComponent,\r\n ModalEntranharComponent,\r\n ModalVisualizarHistoricoComponent,\r\n ImprimirRelatoriaComponent,\r\n ModalEnviarQuestionarioCriterioPaaComponent,\r\n ],\r\n bootstrap: [ 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 { 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 { 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 } \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}","export enum EnumRecursoPerfil {\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}","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 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 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}\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\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\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 { 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

{{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 { 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\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 \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 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);\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 timer: 5000,\r\n timerProgressBar: 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 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 timer: 2000,\r\n timerProgressBar: 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 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 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 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,\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 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 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,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: 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 } \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\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\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\t\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
\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\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
\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, 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. 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, 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","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}/visualizar`], { queryParams: { aba: 5 } });\r\n } else if (this.selectedModel.tipoDocumentoAprovacao.codigo === 2) {\r\n this.router.navigate([`/paa/${id}/visualizar`], { queryParams: { aba: 5 } });\r\n } else if (this.selectedModel.tipoDocumentoAprovacao.codigo === 3) {\r\n this.router.navigate([`/opa/${id}/visualizar`], { queryParams: { aba: 5 } });\r\n } else if (this.selectedModel.tipoDocumentoAprovacao.codigo === 7) {\r\n this.router.navigate([`/planejamento/${id}/visualizar`], { queryParams: { aba: 5 } });\r\n } else if (this.selectedModel.tipoDocumentoAprovacao.codigo === 4) {\r\n this.router.navigate([`/osa/${id}/visualizar`], { 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\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\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 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 }\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 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\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: 2, 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 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 //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 = { peaId: this.id, ultimaAprovacao: {id: this.id, tipoDocumento: this.tipoDocumento?.codigo, situacaoAvaliacao: parseInt(this.situacaoAvaliacao, null), comentario: this.comentario}};\r\n // const modal = this.matDialog.open(ModalAutuacaoComponent, dialogConfig);\r\n // modal.afterClosed().subscribe((sucesso) => {\r\n // this.router.navigate(['/pendencias']);\r\n // });\r\n\r\n \r\n await this.peaService.homologar(this.id, this.modelAutuacao).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","
\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, 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","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","
\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, 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","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","
\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 { 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

{{ 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 { 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","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","
\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 Coordenaçõ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 Dados\r\n
  • \r\n
  • \r\n Equipe\r\n
  • \r\n
  • \r\n Disponibilidade\r\n
  • \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 \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 {{ 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 \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \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.tipoTrabalho.nome }}\r\n Qtd. Média Dias\r\n {{ element.qtdMediaDias }}\r\n Qtd. Membros\r\n {{ element.qtdMembros }}\r\n Situação\r\n Ativo\r\n Inativo\r\n
\r\n
\r\n Nenhum tipo de trabalho 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 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
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \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.nomeAuditor }}\r\n Cargo\r\n Coordenador Titular\r\n Coordenador Substituindo\r\n Coordenador Respondendo\r\n Auditor do Estado\r\n Situação\r\n Ativo\r\n Inativo\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 \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n Não existem dados de Disponibilidade por Tipo de Trabalho para a Coordenação e o Ano 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 Não existem dados de Dispensa para a Coordenação e o Ano selecionado!\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 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 { 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\n\r\n\r\nconst sortingDataAccessorEquipe = (item, property) => {\r\n\tswitch (property) {\r\n\t default:\r\n\t\t return item[property];\r\n\t}\r\n};\r\n\r\nconst sortingDataAccessorTipoTrabalho = (item, property) => {\r\n switch (property) {\r\n\t case 'nome':\r\n\t\t return item.tipoTrabalho.nome;\r\n\t default:\r\n\t\t return item[property];\r\n\t}\r\n};\r\n\r\nconst sortingDataAccessorDispensa = (item, property) => {\r\n switch (property) {\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 return item[property];\r\n\t}\r\n};\r\n\r\nconst sortingDataAccessorDisponibilidade = (item, property) => {\r\n switch (property) {\r\n\t default:\r\n\t\t return item[property];\r\n\t}\r\n};\r\n\r\n@Component({\r\n selector: 'app-coordenacao-form',\r\n templateUrl: './coordenacao-form.component.html',\r\n styleUrls: ['./coordenacao-form.component.scss']\r\n})\r\nexport class CoordenacaoFormComponent extends BaseFormComponent implements OnInit, AfterViewInit {\r\n public model: ICoordenacaoModel = {} as ICoordenacaoModel;\r\n public modelAgentePublico : IAgentePublicoModel;\r\n public modelAuditor: IAuditorCoordenacaoModel = {} as IAuditorCoordenacaoModel;\r\n public modelAuditorOld: IAuditorCoordenacaoModel = {} as IAuditorCoordenacaoModel;\r\n public auditoresDataSource = new MatTableDataSource([]);\r\n public coordenacaoTipoTrabalhoDataSource = new MatTableDataSource([]);\r\n public semDados = true;\r\n public semDadosTipoTrabalho = true;\r\n public openPoppup = false;\r\n public validateForm = false;\r\n public aba = 0;\r\n public displayedColumns: string[] = ['nomeAuditor', 'cargo', 'ativo', 'actions'];\r\n public displayedTipoTrabalhoColumns: string[] = ['nome', 'qtdMediaDias', 'qtdMembros', 'ativo', 'actions'];\r\n\r\n public idTipoTrabalhoSelecionado = 0;\r\n public permiteAdicionarTipoTrabalho = true;\r\n public modelCoordenacaoTipoTrabalho: ICoordenacaoTipoTrabalhoModel = {} as ICoordenacaoTipoTrabalhoModel;\r\n public selectedYear: number;\r\n public selectedModelYears: Array = [];\r\n public selectedModelYearsAbaEquipe: Array = [];\r\n public tiposTrabalhosInputs: IAgentePublicoDisponibilidadeModel[] = [] as IAgentePublicoDisponibilidadeModel[];\r\n public disponibilidadeDataSource = new MatTableDataSource([]);\r\n public dispensaDataSource = new MatTableDataSource([]);\r\n public columnsDistribuicao = ['nome','auditoria', 'consultoria', 'fiscalizaçãoPreventiva', 'inspeção', 'investigaçãoPreliminar', 'outrasAtividades', 'ouvidoria', 'pad', 'par', 'sindicância','total']; // Adicione mais se necessário\r\n public columnsDispensa = ['nome','descrição', 'dataInício', 'dataFim', 'quantidadeDeDias']; // Adicione mais se necessário\r\n public disponibilidadeSemDados = true;\r\n public dispensaSemDados = true;\r\n\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\r\n @ViewChild(\"tabela1\") public sortTabela1: MatSort;\r\n @ViewChild(\"tabelaAuditores\") public sortTabelaAuditores: MatSort;\r\n @ViewChild(\"tabelaDispensa\") public sortTabelaDispensa: MatSort;\r\n @ViewChild(\"tabelaDisponibilidade\") public sortTabelaDisponibilidade: MatSort;\r\n\r\n\r\n public form = new FormGroup({\r\n sigla: new FormControl('', Validators.required),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n tipoAuditoriaId: new FormControl(''),\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 coordenacaoService: CoordenacaoService,\r\n private acessoCidadaoService: AcessoCidadaoService,\r\n public matDialog: MatDialog\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n\r\n\r\n\r\n this.form = new FormGroup({\r\n sigla: new FormControl('', Validators.required),\r\n nome: new FormControl('', Validators.required),\r\n descricao: new FormControl('', Validators.required),\r\n tipoAuditoriaId: new FormControl(''),\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n await this.popularComboAnos();\r\n await this.popularComboAnosEquipe();\r\n this.aba = 0;\r\n await this.buscar();\r\n this.atribuirTitulo();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.sortTabela1.sort({id:'nome', start:'asc'} as MatSortable);\r\n this.coordenacaoTipoTrabalhoDataSource.sortingDataAccessor = sortingDataAccessorTipoTrabalho;\r\n this.coordenacaoTipoTrabalhoDataSource.sort = this.sortTabela1;\r\n\r\n }\r\n\r\n async buscar(){\r\n try {\r\n \r\n if (!this.novoRegistro) {\r\n //this.buscarDisponibilidadeAgentePublico();\r\n const res = await this.coordenacaoService.obterPorIdAno(this.id, this.selectedYear);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n \r\n this.coordenacaoTipoTrabalhoDataSource = new MatTableDataSource(this.model.coordenacaoTipoTrabalho);\r\n this.coordenacaoTipoTrabalhoDataSource.sortingDataAccessor = sortingDataAccessorTipoTrabalho;\r\n this.coordenacaoTipoTrabalhoDataSource.sort = this.sortTabela1;\r\n this.coordenacaoTipoTrabalhoDataSource._updateChangeSubscription();\r\n this.semDadosTipoTrabalho = this.coordenacaoTipoTrabalhoDataSource.data.length === 0;\r\n \r\n\r\n } else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/coordenacoes']);\r\n return;\r\n }\r\n }\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(['/coordenacoes']);\r\n }\r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean)\r\n {\r\n this.validaForm();\r\n\r\n this.submit = true;\r\n\r\n this.atualizarModel(this.form.value);\r\n this.model.ano = this.selectedYear;\r\n\r\n \r\n this.model.auditorCoordenacao = this.auditoresDataSource.data;\r\n\r\n const novoAno = this.selectedYear;\r\n\r\nthis.model.auditorCoordenacao = this.auditoresDataSource.data.map((auditor: IAuditorCoordenacaoModel) => {\r\n return {\r\n ...auditor,\r\n ano: novoAno\r\n };\r\n});\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.coordenacaoService.atualizar(this.model);\r\n } else {\r\n res = await this.coordenacaoService.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(['/coordenacoes']);\r\n }else{\r\n this.router.navigate([`/coordenacoes/${res.dados.id}`]);\r\n this.buscar();\r\n }\r\n\r\n } else { \r\n const validacoes = this.montarMensagensValidacao(res);\r\n if(validacoes != \"\")\r\n this.exibirMensagemErro(validacoes); \r\n }\r\n\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 validaForm(){\r\n if (this.form.invalid) {\r\n this.exibirMensagemErro('Formulário invalido');\r\n return;\r\n }\r\n\r\n if (!this.novoRegistro && this.auditoresDataSource.data.filter(a => a.cargo === 1).length === 0) {\r\n this.exibirMensagemErro('É necessário um auditor \\'Coordenador Titular\\'');\r\n return\r\n }\r\n }\r\n\r\n public async incluirNovoAuditor(e: Event) {\r\n e.preventDefault();\r\n if (this.form.invalid) {\r\n this.exibirMensagemAlerta('Formulário invalido');\r\n this.validateForm = true;\r\n return;\r\n }\r\n // Duplicidade de Agente Publico\r\n if (this.auditoresDataSource.data.findIndex(a => a.auditorId === this.modelAuditor.auditorId) >= 0) {\r\n this.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n this.exibirMensagemErro('Auditor já associado a coordenação.');\r\n return;\r\n }\r\n\r\n // Permitir somente um coordenador\r\n if (this.modelAuditor.cargo === 1 && this.auditoresDataSource.data.filter(_ => _.cargo === 1 && _.ativo === true).length > 0) {\r\n this.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n this.exibirMensagemAlerta('Já existe um auditor titular nesta coordenação.');\r\n return;\r\n }\r\n\r\n if ((this.modelAuditor.cargo === 2 || this.modelAuditor.cargo === 3) && this.auditoresDataSource.data.filter(_ => _.cargo === 2 || _.cargo === 3).length > 0) {\r\n this.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n this.exibirMensagemErro('Já existe um auditor substituindo ou respondendo nesta coordenação.');\r\n return;\r\n }\r\n\r\n const jaCadastrado = await this.coordenacaoService.obterAuditorPorCoordenacao(this.id, this.modelAuditor?.auditorId, this.modelAuditor?.cargo, this.selectedYear);\r\n if (jaCadastrado.sucesso) {\r\n if ((this.modelAuditor.cargo === 1) && jaCadastrado.dados?.filter(_ => _.coordenacaoId !== this.id && _.cargo === this.modelAuditor.cargo).length > 0) {\r\n let storedToken: any = localStorage.getItem(\"auditorGrid\");\r\n this.modelAuditorOld = JSON.parse(storedToken);\r\n this.auditoresDataSource.data.push(cloneDeep(this.modelAuditorOld));\r\n this.auditoresDataSource._updateChangeSubscription();\r\n this.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n this.exibirMensagemAlerta('Este servidor já esta associado a outra coordenação com este cargo.');\r\n return;\r\n }\r\n }\r\n else {\r\n this.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n this.exibirMensagemErro(jaCadastrado.mensagem.descricao);\r\n return;\r\n }\r\n\r\n this.modelAuditor.ativo = true;\r\n this.auditoresDataSource.data.push(cloneDeep(this.modelAuditor));\r\n this.auditoresDataSource._updateChangeSubscription();\r\n this.modelAuditor = {} as IAuditorCoordenacaoModel;\r\n this.semDados = false;\r\n }\r\n\r\n public excluirAuditor(element: IAuditorCoordenacaoModel) {\r\n Swal.fire({\r\n title: 'Excluir Auditor',\r\n text: 'Tem certeza que deseja excluir esse Auditor?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n })\r\n .then(async (result) => {\r\n debugger\r\n if (result.value) {\r\n this.auditorExcluir(element)\r\n return;\r\n }\r\n return;\r\n });\r\n }\r\n\r\n public auditorExcluir(element: IAuditorCoordenacaoModel) {\r\n \r\n var indiceAuditorExcluir = this.auditoresDataSource.data.indexOf(element);\r\n\r\n this.auditoresDataSource.data.splice(indiceAuditorExcluir, 1);\r\n //this.auditoresDataSource = new MatTableDataSource(this.model.auditorCoordenacao);\r\n this.auditoresDataSource._updateChangeSubscription();\r\n this.semDados = this.auditoresDataSource.filteredData.length === 0;\r\n }\r\n\r\n public editarAuditor(element: IAuditorCoordenacaoModel, index: number) {\r\n this.modelAuditor = element;\r\n this.auditoresDataSource.data.splice(index, 1);\r\n this.auditoresDataSource._updateChangeSubscription();\r\n this.semDados = this.auditoresDataSource.filteredData.length === 0;\r\n localStorage.setItem(\"auditorGrid\", JSON.stringify(element));\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 \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 this.auditoresDataSource._updateChangeSubscription();\r\n this.semDados = this.auditoresDataSource.filteredData.length === 0;\r\n }\r\n else {\r\n this.exibirMensagemErro(jaCadastrado.mensagem.descricao);\r\n return;\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.router.navigate(['/coordenacoes']);\r\n }\r\n\r\n public async exibirModalAuditor() {\r\n try {\r\n const res = await this.acessoCidadaoService.ObterAgentesPublicosSecont();\r\n if (res.sucesso) {\r\n const idsExistentes = this.auditoresDataSource.data.map(a => a.auditorId);\r\n const dadosFiltrados = res.dados.filter(agente => !idsExistentes.includes(agente.id));\r\n\r\n const modal = this.exibirModal('Selecionar Agente Público', dadosFiltrados, false);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.modelAuditor.auditorId = data.id;\r\n this.modelAuditor.nomeAuditor = data.nome;\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 mudarAba(ind: number) {\r\n\r\n if(this.novoRegistro){\r\n this.exibirMensagemErro(\"Necessário salvar a coordenação.\")\r\n return;\r\n }\r\n\r\n this.aba = ind;\r\n\r\n switch(ind){\r\n case 0:\r\n this.buscar();\r\n case 1:\r\n this.obterAbaEquipe();\r\n case 2:\r\n this.obterAbaDisponibilidade();\r\n default:\r\n console.warn('aba não implementada');\r\n }\r\n }\r\n\r\n\r\n public async obterAbaEquipe(){\r\n \r\n if (!this.novoRegistro) {\r\n \r\n const res = await this.coordenacaoService.obterPorIdAno(this.id, this.selectedYear);\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n \r\n this.sortTabelaAuditores.sort({id:'ativo', start:'desc'} as MatSortable);\r\n this.auditoresDataSource = new MatTableDataSource(this.model.auditorCoordenacao);\r\n this.auditoresDataSource.sortingDataAccessor = sortingDataAccessorEquipe;\r\n this.auditoresDataSource.sort = this.sortTabelaAuditores;\r\n this.auditoresDataSource._updateChangeSubscription();\r\n this.semDados = this.auditoresDataSource.filteredData.length === 0;\r\n\r\n } else {\r\n this.toastr.error(res.mensagem.descricao, 'Atenção');\r\n this.router.navigate(['/coordenacoes']);\r\n return;\r\n }\r\n }\r\n }\r\n\r\n public async obterAbaDisponibilidade(){\r\n await this.buscarDisponibilidadeAgentePublico();\r\n }\r\n\r\n public inativarReativarTipoTrabalho(element: ICoordenacaoTipoTrabalhoModel, acao: boolean) {\r\n const titulo = acao == true ? 'Reativar ' : 'Inativar ' + 'Tipo de trabalho';\r\n const texto = 'Tem certeza que deseja ' + (acao == true ? ' reativar ' : ' inativar ') + 'esse tipo de trabalho?';\r\n Swal.fire({\r\n title: titulo,\r\n text: texto,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n })\r\n .then(async (result) => {\r\n if (result.value) {\r\n this.tipoTrabalhoInativarReativar(element.id, acao)\r\n return;\r\n }\r\n return;\r\n });\r\n }\r\n public tipoTrabalhoInativarReativar(id: number, acao:boolean){\r\n if(acao == true){\r\n this.coordenacaoService\r\n .reativarTipoTrabalho(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Dados alterados com sucesso.');\r\n this.buscar();\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao, true);\r\n }\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }else{\r\n this.coordenacaoService\r\n .inativarTipoTrabalho(id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Dados alterados com sucesso.');\r\n this.buscar();\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 excluirTipoTrabalho(element: ICoordenacaoTipoTrabalhoModel) {\r\n Swal.fire({\r\n title: 'Excluir Tipo trabalho',\r\n text: 'Tem certeza que deseja excluir esse tipo de trabalho?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n })\r\n .then(async (result) => {\r\n if (result.value) {\r\n this.tipoTrabalhoExcluir(element)\r\n return;\r\n }\r\n return;\r\n });\r\n }\r\n\r\n public tipoTrabalhoExcluir(element: ICoordenacaoTipoTrabalhoModel) {\r\n this.coordenacaoService\r\n .excluirTipoTrabalho(element.id)\r\n .then((res) => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Dados alterados com sucesso.');\r\n this.buscar();\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 adicionarCoordenacaoTipoTrabalho(){\r\n \r\n this.abrirModalTipoTrabalho();\r\n }\r\n\r\n public async onSelectTipoTrabalho(element) {\r\n this.buscarDisponibilidadeAgentePublico();\r\n if(this.coordenacaoTipoTrabalhoDataSource.data.filter(d => d.tipoTrabalhoId == element.target.value).length > 0){\r\n this.permiteAdicionarTipoTrabalho = false;\r\n }else{\r\n this.idTipoTrabalhoSelecionado = element.target.value; \r\n this.permiteAdicionarTipoTrabalho = true;\r\n }\r\n }\r\n\r\n public async onSelectEquipe(element) {\r\n this.obterAbaEquipe();\r\n }\r\n\r\n public abrirModalTipoTrabalho(element?: ICoordenacaoTipoTrabalhoModel){\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 id: element ? element.id : 0,\r\n\t\t anoSelecionado: this.selectedYear,\r\n idCoordenacao: this.id,\r\n qtdMediaDias: element ? element.qtdMediaDias : 1,\r\n qtdMembros: element ? element.qtdMembros : 1,\r\n tipoTrabalhoId: element ? element.tipoTrabalhoId : 0\r\n };\r\n \r\n\t const modal = this.matDialog.open(\r\n ModalCoordenacaoTipoTrabalhoComponent,\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 public async popularComboAnos(){\r\n const anoAtual = new Date().getFullYear();\r\n this.selectedModelYears.push(anoAtual + 4);\r\n this.selectedModelYears.push(anoAtual + 3);\r\n this.selectedModelYears.push(anoAtual + 2);\r\n this.selectedModelYears.push(anoAtual + 1);\r\n this.selectedModelYears.push(anoAtual);\r\n this.selectedModelYears.push(anoAtual - 1);\r\n this.selectedYear = anoAtual;\r\n }\r\n\r\n public async popularComboAnosEquipe(){\r\n const anoAtual = new Date().getFullYear();\r\n this.selectedModelYearsAbaEquipe.push(anoAtual + 4);\r\n this.selectedModelYearsAbaEquipe.push(anoAtual + 3);\r\n this.selectedModelYearsAbaEquipe.push(anoAtual + 2);\r\n this.selectedModelYearsAbaEquipe.push(anoAtual + 1);\r\n this.selectedModelYearsAbaEquipe.push(anoAtual);\r\n this.selectedModelYearsAbaEquipe.push(anoAtual - 1);\r\n\r\n this.selectedYear = anoAtual;\r\n } \r\n\r\n public async onChangeSelectAno(element) {\r\n this.buscar();\r\n }\r\n\r\n public async buscarDisponibilidadeAgentePublico() {\r\n \r\n const res = await this.coordenacaoService.getDadosDisponibilidade(this.id, this.selectedYear);\r\n if(res.sucesso){\r\n this.sortTabelaDisponibilidade.sort({id:'nome', start:'asc'} as MatSortable) ;\r\n\r\n this.disponibilidadeDataSource = new MatTableDataSource(res.dados);\r\n this.disponibilidadeDataSource.sortingDataAccessor = sortingDataAccessorDisponibilidade;\r\n this.disponibilidadeDataSource.sort = this.sortTabelaDisponibilidade;\r\n this.disponibilidadeSemDados = this.disponibilidadeDataSource.data.length === 0;\t\r\n }\r\n \r\n const retDispensa = await this.coordenacaoService.getDadosDispensa(this.id, this.selectedYear);\r\n if(res.sucesso){\r\n this.sortTabelaDispensa.sort({id:'nome', start:'asc'} as MatSortable);\r\n \r\n this.dispensaDataSource = new MatTableDataSource(retDispensa.dados);\r\n this.dispensaDataSource.sortingDataAccessor = sortingDataAccessorDispensa;\r\n this.dispensaDataSource.sort = this.sortTabelaDispensa;\r\n this.dispensaSemDados = this.dispensaDataSource.data.length === 0;\r\n }\r\n \r\n }\r\n \r\n // public calculateTotal() {\r\n \r\n // let total = 0;\r\n // if(this.disponibilidadeDataSource.data.length > 0){\r\n // total = this.disponibilidadeDataSource.data.map((item) => item.percentual)\r\n // .reduce((acum, currentElement) => {\r\n // return acum + currentElement;\r\n // });\r\n // }\r\n \r\n // return total;\r\n // }\r\n \r\n \r\n public formatarNome(nome: string): string {\r\n // Separa as palavras com base em letras maiúsculas e adiciona espaços\r\n const palavrasSeparadas = nome.replace(/([a-z])([A-Z])/g, '$1 $2').trim();\r\n \r\n // Capitaliza a primeira letra de cada palavra, considerando palavras com caracteres especiais\r\n const nomeFormatado = palavrasSeparadas\r\n .split(' ') // Divide a string em palavras\r\n .map(palavra => \r\n palavra.charAt(0).toUpperCase() + palavra.slice(1).toLowerCase()\r\n )\r\n .join(' '); // Junta as palavras de volta em uma única string com espaços\r\n \r\n return nomeFormatado;\r\n }\r\n\r\n get desabilitaBotoesGridTipoTrabalho(): boolean{\r\n const anoAtual = new Date().getFullYear();\r\n return this.selectedYear < anoAtual;\r\n }\r\n\r\n atribuirTitulo(){\r\n if (this.novoRegistro) {\r\n this.titulo = 'Nova Coordenação';\r\n } else {\r\n this.titulo = 'Editar Coordenação - ' + this.model.nome;\r\n }\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar Coordenação - ' + this.model.nome;\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 { 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","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","
\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 { 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","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","
\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, 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","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","
\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 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. \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 } 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","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","\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 { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup } 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 * 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\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 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 } 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 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","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","
\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, 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","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","
\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, 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","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","
\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 {{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 {{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 {{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
\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

{{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 { 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 console.log({ data })\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
\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
#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 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 { CdkDragDrop, moveItemInArray } 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 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.capitulosRelatorio = res.dados.capitulos;\r\n\r\n const subCapitulos = this.capitulosRelatorio.filter(_ => _.subCapitulos).map(_ => _.subCapitulos).reduce((a, b) => a.concat(b), []);\r\n this.capitulosDataSource = new MatTableDataSource(\r\n (subCapitulos && subCapitulos.filter(_ => _).length > 0 ? this.capitulosRelatorio.concat(subCapitulos) : this.capitulosRelatorio).sort((a, b) => (a.ordem > b.ordem) ? 1 : -1));\r\n this.capitulosDataSource.paginator = this.paginator;\r\n this.capitulosDataSource._updateChangeSubscription();\r\n this.semDados = this.capitulosDataSource.filteredData.length === 0;\r\n this.reordenar();\r\n\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 } 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.atualizarModel(this.form.value);\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n this.model.capitulos = this.capitulosRelatorio;\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\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 if (element.capituloRelatorioPaiId) {\r\n const novoCapitulo = this.capitulosRelatorio.find(_ => _.id === element.capituloRelatorioPaiId);\r\n this.capitulosRelatorio.splice(this.capitulosRelatorio.findIndex(_ => _.ordem === novoCapitulo?.ordem), 1);\r\n novoCapitulo?.subCapitulos.splice(novoCapitulo.subCapitulos.findIndex(_ => _.ordem === element.ordem), 1);\r\n this.capitulosRelatorio.push(novoCapitulo);\r\n }\r\n else {\r\n this.capitulosRelatorio.splice(this.capitulosRelatorio.findIndex(_ => _.ordem === element.ordem), 1);\r\n }\r\n\r\n const subCapitulos = this.capitulosRelatorio.filter(_ => _.subCapitulos).map(_ => _.subCapitulos).reduce((a, b) => a.concat(b), []);\r\n this.capitulosDataSource = new MatTableDataSource(\r\n (subCapitulos && subCapitulos.filter(_ => _).length > 0 ? this.capitulosRelatorio.concat(subCapitulos) : this.capitulosRelatorio).sort((a, b) => (a.ordem > b.ordem) ? 1 : -1));\r\n this.capitulosDataSource._updateChangeSubscription();\r\n this.semDados = this.capitulosDataSource.filteredData.length === 0;\r\n this.reordenar();\r\n }\r\n\r\n public async exibirModalCapitulo(editar?: boolean, element?: ICapituloRelatorioModel, indice?: number, subCapitulo?: boolean) {\r\n\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 (data.id) {\r\n\r\n if (element && subCapitulo || data.capituloRelatorioPaiId) {\r\n const capituloPai = this.capitulosRelatorio.find(_ => _.id === element.capituloRelatorioPaiId);\r\n capituloPai.subCapitulos.push(data);\r\n }\r\n return;\r\n }\r\n\r\n if (element && subCapitulo) {\r\n if (!element.subCapitulos) { element.subCapitulos = [] as ICapituloRelatorioModel[]; }\r\n\r\n const capituloPai = this.capitulosRelatorio.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 + 1).toString()}`;\r\n data.capituloRelatorioPaiId = element.id;\r\n data.modeloRelatorioId = element.modeloRelatorioId;\r\n element.subCapitulos.push(data);\r\n }\r\n }\r\n else if (element) {\r\n this.capitulosRelatorio.splice(indice, 1);\r\n data.ordem = (this.capitulosRelatorio.length + 1).toString();\r\n data.modeloRelatorioId = element.modeloRelatorioId;\r\n this.capitulosRelatorio.push(data);\r\n }\r\n else {\r\n data.ordem = (this.capitulosRelatorio.length + 1).toString();\r\n this.capitulosRelatorio.push(data);\r\n }\r\n\r\n const subCapitulos = this.capitulosRelatorio.filter(_ => _.subCapitulos).map(_ => _.subCapitulos).reduce((a, b) => a.concat(b), []);\r\n this.capitulosDataSource = new MatTableDataSource(\r\n (subCapitulos && subCapitulos.filter(_ => _).length > 0 ? this.capitulosRelatorio.concat(subCapitulos) : this.capitulosRelatorio).sort((a, b) => (a.ordem > b.ordem) ? 1 : -1));\r\n this.capitulosDataSource._updateChangeSubscription();\r\n this.semDados = this.capitulosDataSource.filteredData.length === 0;\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 moveItemInArray(this.capitulosDataSource.data, event.previousIndex, event.currentIndex);\r\n this.reordenar();\r\n }\r\n\r\n public reordenar() {\r\n const capitulos = this.capitulosDataSource.data.filter(_ => !_.capituloRelatorioPaiId);\r\n capitulos.forEach((element, idx) => {\r\n element.ordem = (idx + 1).toString();\r\n const subCapitulos = this.capitulosDataSource.data.filter(_ => _.capituloRelatorioPaiId === element.id);\r\n subCapitulos.forEach((subElement, subIdx) => {\r\n const capituloPai = this.capitulosDataSource.data.find(_ => _.id === subElement.capituloRelatorioPaiId);\r\n subElement.ordem = `${capituloPai.ordem}.${(subIdx + 1).toString()}`;\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","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","
\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, 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 const validacoes = this.montarMensagensValidacao(res);\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 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","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
","
\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
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
Campo 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
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 \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
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
","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 = false;\r\n public emPlanejamento = false;\r\n public aba: number = 0;\r\n public versao = false;\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 dataFimRealizacao: new FormControl('', Validators.required),\r\n auditorCoordenacaoId: new FormControl('', Validators.required),\r\n notaRodape: new FormControl(''),\r\n tipoEnfaseId: 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.versao = 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\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 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\r\n if (this.visualizar) {\r\n this.titulo = 'Visualizar OPA - ' + this.model.numero;\r\n } else {\r\n this.titulo = 'Editar OPA - ' + this.model.numero;\r\n this.versao = true;\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 });\r\n }\r\n }\r\n\r\n this.tipoAuditorioSelecionado = this.model.tipoAuditoria;\r\n this.permiteEdicao = !this.visualizar && this.model.ativo && this.model.situacao.codigo === 1;\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\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\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 }\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 } else {\r\n evt.target.value = this.model.tipoAuditoriaId;\r\n }\r\n });\r\n } else {\r\n this.model.tipoAuditoriaId = this.form.get('tipoAuditoriaId').value;\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 }\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 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 });\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"," 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 }\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 this.selectedModel = !this.selectedModel || this.selectedModel !== item ? item : null;\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","
\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 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","
\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 { 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
\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 {{item.subtipoAuditoria?.nome}}\r\n
  • \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n

Período do Planejamento

\r\n \r\n
\r\n
\r\n \r\n {{ (opa?.dataInicioRealizacao ? opa?.dataInicioRealizacao : opa?.dataInicioPrevista) | date:'dd/MM/yyyy' }}\r\n
\r\n
\r\n \r\n {{ (opa?.dataFimRealizacao ? opa?.dataFimRealizacao : opa?.dataFimPrevista) | date:'dd/MM/yyyy' }}\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
NomeCargo
{{item?.nomeAuditor}}{{item?.cargo}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Elaboração

\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\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","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 opa: IOpaModel = null;\r\n idParam: number;\r\n espelho = 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 === '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\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.opaService.imprimir(this.idParam);\r\n }\r\n\r\n this.opa = res.dados;\r\n this.homologado = this.opa?.situacao?.codigo === 4 || this.opa?.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","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","\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 { 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","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;\r\n }\r\n else {\r\n this.titulo = 'Editar OSA - ' + this.model.numero;\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

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\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\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\r\n \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'capacidadeTotalPea', \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 \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?.capacidadeTotalPea\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 PAA\r\n \r\n \r\n {{\r\n element.capacidadePaa\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 { 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\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 { 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 extends BaseFormComponent implements OnInit{\r\n\r\n\t@Output() public abaEmitter: EventEmitter = new 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 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 = new MatTableDataSource([]);\r\n\tpublic ugDataSource = new MatTableDataSource([]); \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\t\tsuper(route, toastr, router, localeService, matDialog);\r\n\t\t}\r\n\r\n\t\tasync ngOnInit(): Promise {\r\n\t\t\tif(this.novoRegistro)\r\n\t\t\t\tawait this.gerarNova();\r\n\t\t\telse{\r\n\t\t\t\tawait this.buscar();\r\n\t\t\t}\r\n\r\n\t\t\t//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\t\t\tthis.atribuirRequireds();\r\n\t\t}\r\n\t\r\n\t\tatribuirRequireds(){\r\n\t\t\tif(this.model.origem.codigo == 2){\r\n\t\t\t\tthis.form1.controls['nome'].setValidators([Validators.required]);\r\n\t\t\t\tthis.form1.controls['dataInicio'].setValidators([Validators.required]);\r\n\t\t\t\tthis.form1.controls['dataFim'].setValidators([Validators.required]);\r\n\t\t\t\tthis.permiteEdicao = true;\r\n\t\t\t\tthis.esconderCamposPaaEspecial = false;\r\n\t\t\t}else{\r\n\t\t\t\tthis.form1.controls['nome'].clearValidators();\r\n\t\t\t\tthis.form1.controls['dataInicio'].clearValidators();\r\n\t\t\t\tthis.form1.controls['dataFim'].clearValidators();\r\n\t\t\t\tthis.esconderCamposPaaEspecial = true;\r\n\t\t\t}\r\n\r\n\t\t\tthis.form1.controls['nome'].updateValueAndValidity();\r\n\t\t\tthis.form1.controls['dataInicio'].updateValueAndValidity();\r\n\t\t\tthis.form1.controls['dataFim'].updateValueAndValidity();\r\n\t\t\t\r\n\t\t}\r\n\r\n\t\tasync gerarNova() {\r\n \r\n\t\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 \r\n\t\t\t\t this.model.origem = res.dados.origem;\r\n\t\t\t\t this.permiteEdicao = true;\r\n\t\t\t\t this.esconderCamposPaaEspecial = false;\r\n\t\t\t\t\t\t \r\n\t\t\t\t this.form1.patchValue({\r\n\t\t\t\t\torigem: res.dados.origem,\r\n\t\t\t\t\torigemAuditoria: this.model.origem.descricao,\r\n\t\t\t\t });\r\n\t\t\t\t} else {\r\n\t\t\t\t this.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\t }\r\n\r\n\t\tasync buscar(){\r\n\t\t\ttry {\r\n\t\t\t\tawait this.paaDadosBasicosService.obterDadosBasicos(this.id).then((res) => {\r\n\t\t\t\t \r\n\t\t\t\t if (res.sucesso) { \r\n\t\t\t\t\tthis.model = res.dados;\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\tthis.form1.patchValue({\r\n\t\t\t\t\t nome: this.model.nome,\r\n\t\t\t\t\t origem: this.model.origem,\r\n\t\t\t\t\t origemAuditoria: this.model.origem.descricao,\r\n\t\t\t\t\t dataInicio: this.dateHelper.toStringPtBr(this.model.dataInicio),\r\n\t\t\t\t\t dataFim: this.dateHelper.toStringPtBr(this.model.dataFim),\r\n\t\t\t\t\t indicadorId: this.model.indicadorId,\r\n\t\t\t\t\t peaId: this.model.peaId,\r\n\t\t\t\t\t pea: this.model.pea \r\n\t\t\t\t\t});\r\n\t\t\t\t\t\r\n\t\t\t\t\tthis.atualizarListaUgs(this.model.paaUnidadeGestora);\r\n\t\t\t\t\tthis.coordenacoesDataSource = new MatTableDataSource<\r\n\t\t\t\t\t IPaaCoordenacaoModel\r\n\t\t\t\t\t>(this.model.paaCoordenacao);\r\n\t\t\t\t\tthis.coordenacoesDataSource._updateChangeSubscription();\r\n\t\t\t\t\tthis.coordenacaoSemDados =\r\n\t\t\t\t\tthis.coordenacoesDataSource.filteredData.length === 0;\r\n\t\t\r\n\t\t\t\t } else {\r\n\t\t\t\t\tthis.submit = false;\r\n\t\t\t\t\tthis.exibirMensagemErro(res.mensagem.descricao);\r\n\t\t\t\t\tthis.router.navigate(['/paa']);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t }\r\n\t\t\t\t}); \r\n\t\t\t\t\t \r\n\t\t\t\r\n\t\t } catch (err) {\r\n\t\t\t\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\t}\r\n\r\n\t\tpublic async exibirModalUg() {\r\n\t\t\ttry {\r\n\t\t\r\n\t\t\t const res = await this.unidadeGestoraService.obterAtivos();\r\n\t\t\t if (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 this.model.paaUnidadeGestora.forEach((d) =>\r\n\t\t\t\t\tunidadesAdicionadas.push(d.unidadeGestora)\r\n\t\t\t\t );\r\n\t\t\t\t dados = res.dados.filter(\r\n\t\t\t\t\t(d) => !unidadesAdicionadas.some((x) => d.id === x.id)\r\n\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 this.model.paaUnidadeGestora = [] 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 if (data) {\r\n\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\tif (Array.isArray(data)) {\r\n\t\t\t\t\t let unidadeSelecionada = [] as IPaaUnidadeGestoraModel[];\r\n\t\t\t\t\t unidadeSelecionada = data.map(\r\n\t\t\t\t\t\t(d) =>\r\n\t\t\t\t\t\t({\r\n\t\t\t\t\t\t unidadeGestoraId: d.id,\r\n\t\t\t\t\t\t unidadeGestora: d,\r\n\t\t\t\t\t\t} as IPaaUnidadeGestoraModel)\r\n\t\t\t\t\t );\r\n\t\t\t\t\t unidadeSelecionada.forEach((x) =>\r\n\t\t\t\t\t\tthis.model.paaUnidadeGestora.push(x)\r\n\t\t\t\t\t );\r\n\t\t\t\t\t}else{\r\n\t\t\t\t\t\tlet unidadeSelecionada = {} as IPaaUnidadeGestoraModel;\r\n\t\t\t\t\t\tunidadeSelecionada.unidadeGestora = data;\r\n\t\t\t\t\t\tunidadeSelecionada.unidadeGestoraId = data.id;\r\n\t\t\t\t\t\tthis.model.paaUnidadeGestora.push(unidadeSelecionada);\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t\tthis.atualizarListaUgs(this.model.paaUnidadeGestora);\r\n\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\t} catch (err) {\r\n\t\t\t this.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t}\r\n\t\t }\r\n\t\t\r\n\t\t \r\n\t\t\r\n\t\t public excluirCoordenacao(ind: number) {\r\n\t\t\tSwal.fire({\r\n\t\t\t title: 'Excluir Coordenação',\r\n\t\t\t text: 'Deseja realmente excluir a informação?',\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.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 this.coordenacoesDataSource.filteredData.length === 0;\r\n\t\t\t }\r\n\t\t\t});\r\n\t\t }\r\n\t\t\r\n\t\t public async exibirModalCoordenacoes() {\r\n\t\t\ttry {\r\n\t\t\r\n\t\t\t const res = await this.coordenacaoService.obter('', true);\r\n\t\t\t if (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 this.model.paaCoordenacao.forEach((d) =>\r\n\t\t\t\t\tcoordenacoesAdicionadas.push(d.coordenacao)\r\n\t\t\t\t );\r\n\t\t\t\t dialogConfig.data = res.dados.filter(\r\n\t\t\t\t\t(d) => !coordenacoesAdicionadas.some((x) => d.id === x.id)\r\n\t\t\t\t );\r\n\t\t\t\t} else {\r\n\t\t\t\t dialogConfig.data = res.dados;\r\n\t\t\t\t this.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 ModalSelecionarCoordenacoesComponent,\r\n\t\t\t\t dialogConfig\r\n\t\t\t\t);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t if (data) {\r\n\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\tif (Array.isArray(data)) {\r\n\t\t\t\t\t let coordenacaoSelecionada = [] as IPaaCoordenacaoModel[];\r\n\t\t\t\t\t coordenacaoSelecionada = data.map(\r\n\t\t\t\t\t\t(d) =>\r\n\t\t\t\t\t\t({\r\n\t\t\t\t\t\t coordenacaoId: d.id,\r\n\t\t\t\t\t\t coordenacao: d,\r\n\t\t\t\t\t\t} as IPaaCoordenacaoModel)\r\n\t\t\t\t\t );\r\n\t\t\t\t\t coordenacaoSelecionada.forEach((x) =>\r\n\t\t\t\t\t\tthis.model.paaCoordenacao.push(x)\r\n\t\t\t\t\t );\r\n\t\t\t\t\t}\r\n\t\t\r\n\t\t\t\t\tthis.coordenacoesDataSource = new MatTableDataSource<\r\n\t\t\t\t\t IPaaCoordenacaoModel\r\n\t\t\t\t\t>(this.model.paaCoordenacao);\r\n\t\t\t\t\tthis.coordenacoesDataSource._updateChangeSubscription();\r\n\t\t\t\t\tthis.coordenacaoSemDados =\r\n\t\t\t\t\t this.coordenacoesDataSource.filteredData.length === 0;\r\n\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\t} catch (err) {\r\n\t\t\t this.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t}\r\n\t\t }\r\n\t\t\r\n\t\t public excluirUg(ind: number) {\r\n\t\t\tSwal.fire({\r\n\t\t\t title: 'Excluir Unidade Gestora',\r\n\t\t\t text: 'Deseja realmente excluir a informação?',\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.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\t\t\t\t\r\n\t\t\t\tthis.atualizarListaUgs(this.ugDataSource.data);\r\n\t\t\t }\r\n\t\t\t});\r\n\t\t }\r\n\t\t\r\n\t\t public async exibirModalIndicador() {\r\n\t\t\ttry {\r\n\t\t\t const res = await this.indicadorService.obter('', true);\r\n\t\t\t if (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('Selecionar Indicador', res.dados);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t if (data) {\r\n\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\tthis.model.indicador = data;\r\n\t\t\t\t\tthis.model.indicadorId = data.id;\r\n\t\t\t\t\tthis.form1.controls['indicadorId'].setValue(data.id);\r\n\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\t} catch (err) {\r\n\t\t\t this.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t}\r\n\t\t }\r\n\t\t\r\n\t\t public async exibirModalPeaReferencia() {\r\n\t\t\t\r\n\t\t\ttry {\r\n\t\t\t const res = await this.peaService.obter('', true, false, null);\r\n\t\t\t if (res.sucesso) {\r\n\t\t\t\tres.dados.resultado.sort((a, b) => a['nome'].localeCompare(b['nome']));\r\n\t\t\t\tconst modal = this.exibirModal('Selecionar Pea', res.dados.resultado);\r\n\t\t\t\tmodal.afterClosed().subscribe((data) => {\r\n\t\t\t\t if (data) {\r\n\t\t\t\t\t\r\n\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\tthis.model.pea = data;\r\n\t\t\t\t\tthis.model.peaId = data.id;\r\n\t\t\t\t\tthis.model.pea.nome = data.nome;\r\n\t\t\t\t\tthis.form1.controls['peaId'].setValue(data.id);\r\n\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\t} catch (err) {\r\n\t\t\t this.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t}\r\n\t\t }\r\n\t\t\r\n\t\t public async exibirModalPeriodo() {\r\n\t\t\ttry {\r\n\t\t\t const res = await this.periodoService.obter('', true);\r\n\t\t\t if (res.sucesso) {\r\n\t\t\t\tres.dados.sort(\r\n\t\t\t\t (d2, d1) =>\r\n\t\t\t\t\tnew Date(d1.dataInicio).getTime() -\r\n\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 if (data) {\r\n\t\t\t\t\tthis.salvarDadosPendente = true;\r\n\t\t\t\t\tthis.model.periodo = data;\r\n\t\t\t\t\tthis.model.periodoId = data.id;\r\n\t\t\t\t\tthis.form1.controls['periodoId'].setValue(data.id);\r\n\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\t} catch (err) {\r\n\t\t\t this.exibirMensagemErro(err.mensagem.descricao);\r\n\t\t\t}\r\n\t\t }\r\n\r\n\r\n\t\t public async salvarDados(salvarEFechar: boolean) { \r\n\t\t\tthis.submit = true;\r\n\t\t\tthis.abaEmitter.next(this.submit);\r\n\t\t\t\r\n\t\t\tif (this.form1.invalid) {\r\n\t\t\t this.exibirMensagemErro('Formulário invalido!');\r\n\t\t\t return;\r\n\t\t\t}\r\n\r\n\t\t\t// if(!this.datasValidas()){\r\n\t\t\t// \tthis.exibirMensagemErro('Formulário invalido!');\r\n\t\t\t// \treturn;\r\n\t\t\t// }\r\n\t\t\r\n\t\t\tif ((this.ugDataSource.data.length === 0 ||\r\n\t\t\t\tthis.coordenacoesDataSource.data.length === 0)\r\n\t\t\t) {\r\n\t\t\t this.exibirMensagemErro('Informe alguma Unidade Gestora e alguma Coordenação');\r\n\t\t\t return;\r\n\t\t\t}\r\n\t\t\r\n\t\t\tthis.atualizarModel(this.form1.value);\r\n\t\t\t\r\n\t\t\ttry { \r\n\t\t\t let res = await this.atualizarInserirAbaDadosBasicos();\r\n\t\t\t\t\t \r\n\t\t\t if(res.sucesso){\r\n\r\n\t\t\t\tif(res.resultadoValidacao && res.resultadoValidacao.length > 0){\r\n\t\t\t\t\tthis.exibirMensagemAlerta(this.montarMensagensValidacao(res), true);\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\t\t\t\r\n\r\n\t\t\t\tthis.salvarDadosPendente = false;\r\n\t\t\t\tif (res.dados?.pendencias?.pendencias && res.dados?.pendencias?.pendencias.length > 0)\r\n\t\t\t\t this.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\t\t\t\t\r\n\t\t\t \r\n\t\t\t if (salvarEFechar == true)\r\n\t\t\t\tthis.router.navigate(['/paa']);\r\n\t\t\t else {\r\n\t\t\t\t if (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 }\t\t\t\t\t\r\n\t\t\t }\r\n\t\t\t \r\n\t\t\t} catch (err) {\r\n\t\t\t this.exibirMensagemErro(err?.mensagem?.descricao);\r\n\t\t\t}\r\n\t\t }\r\n\r\n\t\t public async atualizarInserirAbaDadosBasicos(){\r\n\t\t\tObject.assign(this.model, this.form1.value);\r\n\t\t\tthis.model.dataInicio = this.dateHelper.toDatePtBr(this.model.dataInicio);\r\n\t\t\tthis.model.dataFim = this.dateHelper.toDatePtBr(this.model.dataFim);\r\n\t\t\tthis.model.paaUnidadeGestora = this.ugDataSource.data;\r\n\t\t\tthis.model.paaCoordenacao = this.coordenacoesDataSource.data;\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\tif (this.model.id > 0) {\r\n\t\t\t return await this.paaDadosBasicosService.atualizarDadosBasicos(this.model);\r\n\t\t\t} else {\r\n\t\t\t return await this.paaDadosBasicosService.inserir(this.model);\r\n\t\t\t}\r\n\t\t\r\n\t\t }\r\n\r\n\tprivate datasValidas(): boolean{\r\n\t\t\r\n\t\tlet retorno = true;\r\n\t\t\r\n\t\tlet valueDtInicio = this.form1.controls['dataInicio'].value;\r\n\t\tlet valueDtFim = this.form1.controls['dataFim'].value;\r\n\t\t\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)\r\n\t\t\treturn 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)\r\n\t\t\treturn 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[]) {\r\n\t\tconst listaUgs = paaUnidadeGestora.map(_ => ({ ..._, nome: `${_.unidadeGestora.sigla} - ${_.unidadeGestora.nome}` }));\r\n\t\tthis.ugDataSource.paginator = this.paginator;\r\n\t\tthis.ugDataSource.sort = this.sort;\r\n\t\tthis.ugDataSource.filterPredicate = (data: { nome: string }, filterValue: string) => {\r\n\t\t return (data.nome || '').trim().toLowerCase().indexOf(filterValue) !== -1;\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 listaUgs\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\t private atualizarModel(values: any) {\r\n\t\tObject.assign(this.model, values); \r\n\t }\r\n\r\n\t public cancelar() {\r\n\t\tthis.router.navigate(['/paa']);\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}","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \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\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', 'valorRisco'];\r\n public columnsDistribuicaoOriginais2 = ['tipoAuditoria','tipoEnfase', 'ativo', 'actions'];\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 \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 public async obterPainelDistribuicao() {\r\n\r\n \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 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 (\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 var dados = res.dados.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 \r\n this.distribuicaoDataSource =\r\n new MatTableDataSource(dados);\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 \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 =\r\n this.distribuicaoDataSource.filteredData.length === 0;\r\n \r\n res.dados.forEach((item) => {\r\n this.obterHistoricoDistribuicao(item);\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) {\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 tooltip = 'Histórico da distribuição\\n\\n';\r\n if (historico.dados.length > 0) {\r\n historico.dados.forEach((item) => {\r\n tooltip += `${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 element.historico = true;\r\n } else {\r\n tooltip += 'Nenhum dado encontrado.';\r\n element.historico = false;\r\n }\r\n element.tooltipHistorico = tooltip;\r\n } else {\r\n this.exibirMensagemErro(historico.mensagem.descricao);\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 ModalConfirmarReativacaoDistribuicaoComponent,\r\n dialogConfigJustificativa\r\n );\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 ModalConfirmarReativacaoDistribuicaoComponent,\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.isOrigemPlanejada){\r\n this.columnsDistribuicaoOriginais2 = ['tipoAuditoria','tipoEnfase', 'ativo', 'actions'];\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 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
\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 Inerente\r\n \r\n \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 {{ 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 Tipo de Ênfase\r\n \r\n \r\n
\r\n \r\n \r\n Selecione...\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 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 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\t\r\n\t\t\t\tthis.model = res.dados;\r\n\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\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.visualizar && this.model.idSituacaoPaa === 1 && element.tipoEntrada !==\t'Questionario'\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","
\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 { 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 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 debugger\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}
\\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 debugger\r\n if (result.isConfirmed) {\r\n observer.next();\r\n observer.complete();\r\n } else {\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\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 debugger\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","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.searchNome.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.searchNome.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","
\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 } 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","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 {{ 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
0\">\r\n \r\n Fechar\r\n\r\n\r\n Imprimir\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\";\r\n } else {\r\n this.titulo = 'Editar PAAC - ' + this.paaInformacoesBasicas.nome;\r\n this.tituloAbas = \"Editar PAAC\";\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","
\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, 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

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 { 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
  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 { 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

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 { 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","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","
\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\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","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\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.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.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 \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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.1Treinamento{{treinamento || 0 }}
4.2Reuniões{{reunioes || 0 }}
4.3Licenças médicas{{licencasMedicas || 0 }}
4.4 2Férias{{ferias || 0 }}
4.5Abonos{{abonos || 0 }}
4.6Outras tarefas administrativas{{outrasTarefas || 0 }}
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\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","
\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 { 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 { EnumTipoFeriado } from '../../models/enum/tipo-feriado.enum';\r\n\r\n@Component({\r\n selector: 'app-pea-form',\r\n templateUrl: './pea-form.component.html',\r\n styleUrls: ['./pea-form.component.scss'],\r\n})\r\nexport class PeaFormComponent extends BaseFormComponent implements OnInit {\r\n public model: IPeaModel = {} as IPeaModel;\r\n public modelDadosBasicos: IPeaDadosBasicosModel = {} as IPeaDadosBasicosModel;\r\n\r\n public modelFaixaPadrao: IFaixaClassificacaoModel = {} as IFaixaClassificacaoModel;\r\n public modelFaixaPersonalizada: IFaixaClassificacaoModel = {} as IFaixaClassificacaoModel;;\r\n public modelFaixa: IFaixaClassificacaoModel = {} as IFaixaClassificacaoModel;\r\n public ugDataSource = new MatTableDataSource([]);\r\n public coordenacoesDataSource = new MatTableDataSource([]);\r\n public criterioDataSource = new MatTableDataSource([]);\r\n public naturezaResponsabilidadeDataSource = new MatTableDataSource([]);\r\n public capacidadeDataSource = new MatTableDataSource([]);\r\n public distribuicaoDataSource = new MatTableDataSource([]);\r\n public distribuicaoNaoContempladosDataSource = new MatTableDataSource([]);\r\n public distribuicaoPersonalizadoDataSource = new MatTableDataSource([]);\r\n public distribuicaoNaoContempladosPersonalizadoDataSource = new MatTableDataSource([]);\r\n public ugSemDados = true;\r\n public criterioSemDados = true;\r\n public coordenacaoSemDados = true;\r\n public capacidadeSemDados = true;\r\n public distribuicaoSemDados = true;\r\n public distribuicaoNaoContempladosSemDados = true;\r\n public distribuicaoSemDadosPersonalizado = true;\r\n public distribuicaoNaoContempladosSemDadosPersonalizado = true;\r\n public salvarDadosPendente = false;\r\n public salvarDistribuicaoPendente = false;\r\n public aba = 0;\r\n public situacao = 0;\r\n public habilitarHomologarRejeitar = false;\r\n public habilitarUltimoNivelAprovacao = false;\r\n public peaHomologado = false;\r\n public peaQuestionario = false;\r\n public columnsDistribuicao = [];\r\n public columnsDistribuicaoPersonalizado = [];\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 public columnsCapacidade = [\r\n 'coordenacao',\r\n 'diasDisponiveis',\r\n 'equipesDisponiveis',\r\n 'diasPorAuditoria',\r\n 'auditoriasPorEquipe',\r\n 'capacidadeTotalCoordenacao',\r\n 'actions',\r\n ];\r\n\r\n public relatoriaDados: IRelatoriaCapituloModel[] = null;\r\n\r\n public visualizarRelatoria = false;\r\n public visualizarBotaoFormulario = false;\r\n public hoje = moment();\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\r\n @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;\r\n @ViewChild(MatSort, { static: true }) sort: MatSort;\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 indicadorId: new FormControl(null, Validators.required),\r\n subcapitulo: new FormControl(''),\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 activatedRoute: ActivatedRoute,\r\n private peaService: PeaService,\r\n private periodoService: PeriodoService,\r\n private indicadorService: IndicadorService,\r\n private coordenacaoService: CoordenacaoService,\r\n private tipoDispensaService: TipoDispensaService,\r\n private ugService: UnidadeGestoraService,\r\n private faixaClassificacaoService: FaixaClassificacaoService,\r\n public matDialog: MatDialog,\r\n public rankingService: RankingDistribuicaoService,\r\n private _location: Location,\r\n private authService: AuthService\r\n ) {\r\n super(route, toastr, router, localeService, matDialog);\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo PEAC';\r\n }\r\n if (this.visualizar === true) {\r\n this.visualizarRelatoria = true\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n Inputmask().mask(document.querySelectorAll('input'));\r\n const numeroAba = this.activatedRoute.snapshot.queryParamMap.get('aba');\r\n if (numeroAba) { \r\n this.mudarAba(Number(numeroAba)); \r\n return;\r\n }\r\n\r\n await this.obterDadosBasicos();\r\n }\r\n\r\n public receberFaixaClassificacao(faixaClassificacao: IFaixaClassificacaoModel) {\r\n this.modelFaixa = faixaClassificacao;\r\n }\r\n\r\n public async obterDadosBasicos() {\r\n try {\r\n if (!this.novoRegistro) {\r\n this.peaService.obterDadosBasicos(this.id).then((res) => {\r\n this.showPendencias(res?.pendencias);\r\n\r\n if (res.sucesso) {\r\n this.modelDadosBasicos = res.dados;\r\n if (this.modelDadosBasicos.situacao.codigo !== 1) { this.visualizar = true; }\r\n \r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo PEAC';\r\n } else if (this.visualizar) {\r\n this.titulo = 'Visualizar PEAC - ' + this.modelDadosBasicos.nome;\r\n } else {\r\n this.titulo = 'Editar PEAC - ' + this.modelDadosBasicos.nome;\r\n }\r\n this.form.patchValue({\r\n periodoId: this.modelDadosBasicos.periodoId,\r\n indicadorId: this.modelDadosBasicos.indicadorId,\r\n });\r\n this.situacao = this.modelDadosBasicos?.situacao?.codigo;\r\n this.peaHomologado = this.modelDadosBasicos.situacao.codigo === 4;\r\n\r\n this.atualizarListaUgs(this.modelDadosBasicos.peaUnidadeGestora);\r\n this.coordenacoesDataSource = new MatTableDataSource<\r\n IPeaCoordenacaoModel\r\n >(this.modelDadosBasicos.peaCoordenacao);\r\n this.coordenacoesDataSource._updateChangeSubscription();\r\n this.coordenacaoSemDados =\r\n this.coordenacoesDataSource.filteredData.length === 0;\r\n\r\n this.form.patchValue(this.modelDadosBasicos);\r\n\r\n } else {\r\n this.submit = false;\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/pea']);\r\n return;\r\n }\r\n });\r\n }\r\n } catch (err) {\r\n this.submit = false;\r\n this.exibirMensagemErro(err.mensagem?.descricao);\r\n this.router.navigate(['/pea']);\r\n }\r\n }\r\n\r\n public async obterAbaCargaCriterios() {\r\n this.obterCargaCriterios();\r\n }\r\n\r\n public async obterAbaCapacidadeTrabalho(){\r\n this.obterCapacidadeTrabalho(this.id);\r\n }\r\n\r\n public async obterAbaRanking(){\r\n this.obterRankingPrioridade();\r\n }\r\n\r\n public async obterAbaDistribuicao(){\r\n await this.obterPainelDistribuicao(this.id);\r\n }\r\n\r\n public async obterDados() {\r\n\r\n try {\r\n if (!this.novoRegistro) {\r\n this.peaService.obterPorId(this.id).then((res) => {\r\n this.showPendencias(res?.pendencias);\r\n\r\n if (res.sucesso) {\r\n this.model = res.dados;\r\n if (this.model.situacao.codigo !== 1) { this.visualizar = true; }\r\n if (this.model.situacao.codigo !== 1 && this.model.situacao.codigo !== 2) { this.visualizarRelatoria = true; }\r\n\r\n if (this.novoRegistro) {\r\n this.titulo = 'Novo PEAC';\r\n } else if (this.visualizar) {\r\n this.titulo = 'Visualizar PEAC - ' + this.model.nome;\r\n } else {\r\n this.titulo = 'Editar PEAC - ' + this.model.nome;\r\n }\r\n this.form.patchValue({\r\n periodoId: this.model.periodoId,\r\n indicadorId: this.model.indicadorId,\r\n });\r\n this.situacao = this.model?.situacao?.codigo;\r\n this.habilitarHomologarRejeitar = this.model.situacao.codigo === 3;\r\n this.habilitarUltimoNivelAprovacao = this.model.situacao.codigo === 3;\r\n this.peaHomologado = this.model.situacao.codigo === 4;\r\n\r\n this.atualizarListaUgs(this.model.peaUnidadeGestora);\r\n this.coordenacoesDataSource = new MatTableDataSource<\r\n IPeaCoordenacaoModel\r\n >(this.model.peaCoordenacao);\r\n this.coordenacoesDataSource._updateChangeSubscription();\r\n this.coordenacaoSemDados =\r\n this.coordenacoesDataSource.filteredData.length === 0;\r\n\r\n this.obterCargaCriterios();\r\n this.obterCapacidadeTrabalho(this.id);\r\n\r\n this.obterPainelDistribuicao(this.id);\r\n\r\n this.faixaClassificacaoService.obter()\r\n .then(res => {\r\n this.pisoAlto = res.dados.pisoAlto.toFixed(4).toString().replace('.', ',');\r\n this.tetoAlto = res.dados.tetoAlto.toFixed(4).toString().replace('.', ',');\r\n this.pisoMedio = res.dados.pisoMedio.toFixed(4).toString().replace('.', ',');\r\n this.tetoMedio = res.dados.tetoMedio.toFixed(4).toString().replace('.', ',');\r\n this.pisoBaixo = res.dados.pisoBaixo.toFixed(4).toString().replace('.', ',');\r\n this.tetoBaixo = res.dados.tetoBaixo.toFixed(4).toString().replace('.', ',');\r\n\r\n this.modelFaixaPadrao = res.dados;\r\n\r\n if (!this.model.classificacaoPersonalizada) {\r\n //this.modelFaixa = this.modelFaixaPadrao;\r\n this.modelFaixa = {\r\n pisoBaixo: this.modelFaixaPadrao?.pisoBaixo,\r\n tetoBaixo: this.modelFaixaPadrao?.tetoBaixo,\r\n pisoMedio: this.modelFaixaPadrao?.pisoMedio,\r\n tetoMedio: this.modelFaixaPadrao?.tetoMedio,\r\n pisoAlto: this.modelFaixaPadrao?.pisoAlto,\r\n tetoAlto: this.modelFaixaPadrao?.tetoAlto,\r\n } as IFaixaClassificacaoModel\r\n this.model.classificacaoPisoBaixo = this.modelFaixaPadrao?.pisoBaixo ?? 0;\r\n this.model.classificacaoTetoBaixo = this.modelFaixaPadrao?.tetoBaixo ?? 0;\r\n this.model.classificacaoPisoMedio = this.modelFaixaPadrao?.pisoMedio ?? 0;\r\n this.model.classificacaoTetoMedio = this.modelFaixaPadrao?.tetoMedio ?? 0;\r\n this.model.classificacaoPisoAlto = this.modelFaixaPadrao?.pisoAlto ?? 0;\r\n this.model.classificacaoTetoAlto = this.modelFaixaPadrao?.tetoAlto ?? 0;\r\n }\r\n else {\r\n this.modelFaixa = {\r\n pisoBaixo: this.model.classificacaoPisoBaixo,\r\n tetoBaixo: this.model.classificacaoTetoBaixo,\r\n pisoMedio: this.model.classificacaoPisoMedio,\r\n tetoMedio: this.model.classificacaoTetoMedio,\r\n pisoAlto: this.model.classificacaoPisoAlto,\r\n tetoAlto: this.model.classificacaoTetoAlto,\r\n } as IFaixaClassificacaoModel\r\n }\r\n\r\n });\r\n this.form.patchValue(this.model);\r\n\r\n } else {\r\n this.submit = false;\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/pea']);\r\n return;\r\n }\r\n });\r\n }\r\n } catch (err) {\r\n this.submit = false;\r\n this.exibirMensagemErro(err.mensagem?.descricao);\r\n this.router.navigate(['/pea']);\r\n }\r\n }\r\n\r\n public atualizarListaUgs(peaUnidadeGestora: IPeaUnidadeGestoraModel[]) {\r\n const listaUgs = peaUnidadeGestora.map(_ => ({ ..._, nome: `${_.unidadeGestora.sigla} - ${_.unidadeGestora.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 public cancelar() {\r\n this._location.back();\r\n }\r\n\r\n public obterCargaCriterios() {\r\n this.peaService\r\n .obterCargaCriteriosPorId(this.id)\r\n .then((resCriterios) => {\r\n const criterios = resCriterios.dados.map(\r\n (c) =>\r\n ({\r\n ...c,\r\n questionariosEnviados: c.peaCriterioQuestionario.length > 0,\r\n } as ICargaCriterioPeaModel)\r\n );\r\n this.peaQuestionario = criterios.filter(_ => _.criterio.tipoEntrada.nome === 'Questionario').length > 0;\r\n criterios.forEach(element => {\r\n element.peaCriterioQuestionario.forEach(item => {\r\n this.visualizarBotaoFormulario = this.hoje.diff(item.dataLimite) >= 0 && item.status == \"Expirado\";\r\n if (this.visualizarBotaoFormulario) {\r\n const texto = 'O questionário: ' + item.criterio.nome + ' - não foi respondido pela unidade gestora - ' + item.unidadeGestora.nome + ' (prazo expirado).';\r\n this.exibirMensagemAlerta(texto);\r\n }\r\n })\r\n });\r\n this.criterioDataSource = new MatTableDataSource<\r\n ICargaCriterioPeaModel\r\n >(criterios);\r\n this.criterioDataSource._updateChangeSubscription();\r\n this.criterioSemDados =\r\n this.criterioDataSource.filteredData.length === 0;\r\n });\r\n }\r\n\r\n public obterCapacidadeTrabalho(peaId: number): Promise { \r\n return this.peaService\r\n .obterCapacidadeTrabalhoPorId(peaId)\r\n .then((resCapacidade) => {\r\n this.showPendencias(resCapacidade?.pendencias);\r\n \r\n let dadosPreparados = [];\r\n const anos = [...new Set(resCapacidade.dados?.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 resCapacidade.dados.filter((c) => c.ano === ano)\r\n );\r\n // Footer\r\n dadosPreparados.push({\r\n subTotal: true,\r\n capacidadeTotalAno: resCapacidade.dados\r\n .filter((c) => c.ano === ano)\r\n .map((c) => c.capacidadeTotalCoordenacao)\r\n .reduce((sum, record) => sum + record),\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 .catch((err) => {\r\n this.exibirMensagemErro('Houve uma falha ao buscar os dados de Capacidade de Trabalho para esse PEAC.');\r\n });\r\n }\r\n\r\n public async obterPainelDistribuicao(peaId: number): Promise {\r\n await this.peaService\r\n .obterPainelDistribuicaoPorPeaId(peaId)\r\n .then((resPainel) => {\r\n if (!resPainel.dados) { return; }\r\n\r\n \r\n this.distribuicaoDataSource = new MatTableDataSource();\r\n this.distribuicaoDataSource._updateChangeSubscription();\r\n this.distribuicaoNaoContempladosDataSource = new MatTableDataSource();\r\n this.distribuicaoNaoContempladosDataSource._updateChangeSubscription();\r\n this.distribuicaoPersonalizadoDataSource = new MatTableDataSource();\r\n this.distribuicaoPersonalizadoDataSource._updateChangeSubscription();\r\n this.distribuicaoNaoContempladosPersonalizadoDataSource = new MatTableDataSource();\r\n this.distribuicaoNaoContempladosPersonalizadoDataSource._updateChangeSubscription();\r\n\r\n\r\n this.model.classificacaoPersonalizada = resPainel.dados.classificacaoPersonalizada;\r\n \r\n this.pisoAlto = resPainel.dados.faixaClassificacaoPadrao.pisoAlto.toFixed(4).toString().replace('.', ',');\r\n this.tetoAlto = resPainel.dados.faixaClassificacaoPadrao.tetoAlto.toFixed(4).toString().replace('.', ',');\r\n this.pisoMedio = resPainel.dados.faixaClassificacaoPadrao.pisoMedio.toFixed(4).toString().replace('.', ',');\r\n this.tetoMedio = resPainel.dados.faixaClassificacaoPadrao.tetoMedio.toFixed(4).toString().replace('.', ',');\r\n this.pisoBaixo = resPainel.dados.faixaClassificacaoPadrao.pisoBaixo.toFixed(4).toString().replace('.', ',');\r\n this.tetoBaixo = resPainel.dados.faixaClassificacaoPadrao.tetoBaixo.toFixed(4).toString().replace('.', ',');\r\n\r\n this.modelFaixaPadrao = resPainel.dados.faixaClassificacaoPadrao;\r\n this.modelFaixaPersonalizada = resPainel.dados.faixaClassificacaoPersonalizada;\r\n\r\n if (!this.model.classificacaoPersonalizada) {\r\n this.modelFaixa = this.modelFaixaPadrao;\r\n this.model.classificacaoPisoBaixo = this.modelFaixaPadrao?.pisoBaixo ?? 0;\r\n this.model.classificacaoTetoBaixo = this.modelFaixaPadrao?.tetoBaixo ?? 0;\r\n this.model.classificacaoPisoMedio = this.modelFaixaPadrao?.pisoMedio ?? 0;\r\n this.model.classificacaoTetoMedio = this.modelFaixaPadrao?.tetoMedio ?? 0;\r\n this.model.classificacaoPisoAlto = this.modelFaixaPadrao?.pisoAlto ?? 0;\r\n this.model.classificacaoTetoAlto = this.modelFaixaPadrao?.tetoAlto ?? 0;\r\n }\r\n else {\r\n this.modelFaixa = this.modelFaixaPersonalizada;\r\n this.model.classificacaoPisoBaixo = this.modelFaixaPersonalizada?.pisoBaixo ?? 0;\r\n this.model.classificacaoTetoBaixo = this.modelFaixaPersonalizada?.tetoBaixo ?? 0;\r\n this.model.classificacaoPisoMedio = this.modelFaixaPersonalizada?.pisoMedio ?? 0;\r\n this.model.classificacaoTetoMedio = this.modelFaixaPersonalizada?.tetoMedio ?? 0;\r\n this.model.classificacaoPisoAlto = this.modelFaixaPersonalizada?.pisoAlto ?? 0;\r\n this.model.classificacaoTetoAlto = this.modelFaixaPersonalizada?.tetoAlto ?? 0;\r\n }\r\n \r\n \r\n // Padrão\r\n // Contempladas\r\n const tabela = [];\r\n this.columnsDistribuicao = [\r\n ...new Set(resPainel.dados.painelDistribuicaoPadrao?.painel.map((d) => d.ano.toString())),\r\n ];\r\n\r\n for (const item of resPainel.dados.painelDistribuicaoPadrao?.painel.filter(\r\n (d) => d.contemplada\r\n )) {\r\n if (\r\n tabela.length === 0 ||\r\n tabela.findIndex((r) => !r[item.ano.toString()]) < 0\r\n ) {\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[\r\n item.ano.toString() + '_indice'\r\n ] = (item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n tabela.push(row);\r\n } else {\r\n const row =\r\n tabela[tabela.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[\r\n item.ano.toString() + '_indice'\r\n ] = (item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n }\r\n }\r\n\r\n this.distribuicaoDataSource = new MatTableDataSource(tabela);\r\n this.distribuicaoDataSource._updateChangeSubscription();\r\n this.distribuicaoSemDados =\r\n this.distribuicaoDataSource.filteredData.length === 0;\r\n\r\n // Não Contempladas\r\n const tabelaNaoContemplados = [];\r\n\r\n for (const item of resPainel.dados.painelDistribuicaoPadrao?.painel.filter(\r\n (d) => !d.contemplada\r\n )) {\r\n if (\r\n tabelaNaoContemplados.length === 0 ||\r\n tabelaNaoContemplados.findIndex((r) => !r[item.ano.toString()]) < 0\r\n ) {\r\n const row = {};\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[\r\n item.ano.toString() + '_indice'\r\n ] = (item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n tabelaNaoContemplados.push(row);\r\n } else {\r\n const row =\r\n tabelaNaoContemplados[\r\n tabelaNaoContemplados.findIndex((r) => !r[item.ano.toString()])\r\n ];\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[\r\n item.ano.toString() + '_indice'\r\n ] = (item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n }\r\n }\r\n\r\n this.distribuicaoNaoContempladosDataSource = new MatTableDataSource<\r\n any\r\n >(tabelaNaoContemplados);\r\n this.distribuicaoNaoContempladosDataSource._updateChangeSubscription();\r\n this.distribuicaoNaoContempladosSemDados =\r\n this.distribuicaoNaoContempladosDataSource.filteredData.length === 0;\r\n\r\n // Personalizada\r\n // Contempladas\r\n if (resPainel.dados.painelDistribuicaoPersonalizado) {\r\n const tabelaPersonalizada = [];\r\n this.columnsDistribuicaoPersonalizado = [\r\n ...new Set(resPainel.dados.painelDistribuicaoPersonalizado?.painel.map((d) => d.ano.toString())),\r\n ];\r\n\r\n for (const item of resPainel.dados.painelDistribuicaoPersonalizado?.painel.filter(\r\n (d) => d.contemplada\r\n )) {\r\n if (\r\n tabelaPersonalizada.length === 0 ||\r\n tabelaPersonalizada.findIndex((r) => !r[item.ano.toString()]) < 0\r\n ) {\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[\r\n item.ano.toString() + '_indice'\r\n ] = (item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n tabelaPersonalizada.push(row);\r\n } else {\r\n const row =\r\n tabelaPersonalizada[tabelaPersonalizada.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[\r\n item.ano.toString() + '_indice'\r\n ] = (item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n }\r\n }\r\n\r\n this.distribuicaoPersonalizadoDataSource = new MatTableDataSource(tabelaPersonalizada);\r\n this.distribuicaoPersonalizadoDataSource._updateChangeSubscription();\r\n }\r\n else {\r\n this.distribuicaoPersonalizadoDataSource = new MatTableDataSource([]);\r\n this.distribuicaoPersonalizadoDataSource._updateChangeSubscription();\r\n }\r\n\r\n this.distribuicaoSemDadosPersonalizado = this.distribuicaoPersonalizadoDataSource.filteredData.length === 0;\r\n\r\n // Não Contempladas\r\n if (resPainel.dados.painelDistribuicaoPersonalizado) {\r\n const tabelaNaoContempladosPersonalizada = [];\r\n\r\n for (const item of resPainel.dados.painelDistribuicaoPersonalizado?.painel.filter(\r\n (d) => !d.contemplada\r\n )) {\r\n if (\r\n tabelaNaoContempladosPersonalizada.length === 0 ||\r\n tabelaNaoContempladosPersonalizada.findIndex((r) => !r[item.ano.toString()]) < 0\r\n ) {\r\n const row = {};\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[\r\n item.ano.toString() + '_indice'\r\n ] = (item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n tabelaNaoContempladosPersonalizada.push(row);\r\n } else {\r\n const row =\r\n tabelaNaoContempladosPersonalizada[\r\n tabelaNaoContempladosPersonalizada.findIndex((r) => !r[item.ano.toString()])\r\n ];\r\n row[item.ano.toString()] = item.unidadeGestoraSigla;\r\n row[\r\n item.ano.toString() + '_indice'\r\n ] = (item.indicePriorizacao ?? 0)?.toFixed(4) ?? 0;\r\n }\r\n }\r\n\r\n this.distribuicaoNaoContempladosPersonalizadoDataSource = new MatTableDataSource(tabelaNaoContempladosPersonalizada);\r\n this.distribuicaoNaoContempladosPersonalizadoDataSource._updateChangeSubscription();\r\n this.distribuicaoNaoContempladosSemDadosPersonalizado = this.distribuicaoNaoContempladosPersonalizadoDataSource.filteredData.length === 0;\r\n }\r\n else {\r\n this.distribuicaoPersonalizadoDataSource = new MatTableDataSource([]);\r\n this.distribuicaoPersonalizadoDataSource._updateChangeSubscription();\r\n }\r\n\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err);\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 descricaoDiasUteis(capacidade: IPeaCoordenacaoDiasUteisModel, visualizar?: boolean) {\r\n try {\r\n\r\n const feriadosPorTipo = capacidade.extras.feriadosPorTipo as Record;\r\n \r\n const coordenacao = (\r\n await this.coordenacaoService.obterCapacidadePorAno(capacidade.coordenacaoId, capacidade.ano)\r\n ).dados;\r\n \r\n const auditoriasEspeciais = capacidade.extras.auditoriasEspeciaisGet || { id: '', valor: '' };\r\n \r\n const feriadoEnumToKeyMap = {\r\n [EnumTipoFeriado.Nacional]: 'nacional',\r\n [EnumTipoFeriado.Estadual]: 'estadual',\r\n [EnumTipoFeriado.Municipal]: 'municipal',\r\n [EnumTipoFeriado.PontoFacultativo]: 'pontoFacultativo',\r\n [EnumTipoFeriado.Outros]: 'outros'\r\n };\r\n // Extrair os dados necessários do objeto capacidade\r\n const data = {\r\n ano: capacidade.ano,\r\n totalDiasAno: capacidade.extras.diasAno,\r\n diasNaoUteis: {\r\n sabDom: capacidade.extras.diasFinaisSemana || 0,\r\n ferNac: capacidade.extras.feriadosPorTipo?.[feriadoEnumToKeyMap[EnumTipoFeriado.Nacional]] || 0,\r\n ferEst: capacidade.extras.feriadosPorTipo?.[feriadoEnumToKeyMap[EnumTipoFeriado.Estadual]] || 0,\r\n ferMun: capacidade.extras.feriadosPorTipo?.[feriadoEnumToKeyMap[EnumTipoFeriado.Municipal]] || 0,\r\n pontoFac: capacidade.extras.feriadosPorTipo?.[feriadoEnumToKeyMap[EnumTipoFeriado.PontoFacultativo]] || 0,\r\n outros: capacidade.extras.feriadosPorTipo?.[feriadoEnumToKeyMap[EnumTipoFeriado.Outros]] || 0,\r\n totalDNU: capacidade.extras.totalDiasNaoUteis || 0\r\n },\r\n du: capacidade.extras.du || 0,\r\n dispensaPadrao: {\r\n treinamento: capacidade.extras.tipoDispensa?.find(d => d.descricao === 'Treinamento')?.quantidadeDiasPadrao || 0,\r\n reunioes: capacidade.extras.tipoDispensa?.find(d => d.descricao === 'Reuniões')?.quantidadeDiasPadrao || 0,\r\n licencasMedicas: capacidade.extras.tipoDispensa?.find(d => d.descricao === 'Licenças médicas')?.quantidadeDiasPadrao || 0,\r\n ferias: capacidade.extras.tipoDispensa?.find(d => d.descricao === 'Férias')?.quantidadeDiasPadrao || 0,\r\n abonos: capacidade.extras.tipoDispensa?.find(d => d.descricao === 'Abono')?.quantidadeDiasPadrao || 0,\r\n outrasTarefas: capacidade.extras.tipoDispensa?.find(d => d.descricao === 'Outras dispensas')?.quantidadeDiasPadrao || 0\r\n },\r\n totalDispensasPadrao: capacidade.extras.totalDispensasPadrao || 0,\r\n diasDisponiveisTotais: capacidade.extras.diasDisponiveisTotais || 0,\r\n diasReservadosAuditoriasEspeciais: capacidade.extras.diasReservadosAuditoriasEspeciais || 0,\r\n diasDisponiveis: capacidade.extras.diasDisponiveis || 0,\r\n auditoriasEspeciais: {\r\n id: auditoriasEspeciais.id,\r\n valor: auditoriasEspeciais.valor\r\n },\r\n auditoriaEspecialDD: capacidade.extras.auditoriaEspecialDD,\r\n }; \r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '1080px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n capacidade: data,\r\n coordenacao,\r\n visualizar\r\n };\r\n this.matDialog.open(ModalDescricaoDiasUteisComponent, dialogConfig);\r\n \r\n } catch (err) {\r\n \r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n \r\n public async editarCapacidade(capacidade: IPeaCoordenacaoCapacidadeModel, visualizar?: boolean) {\r\n try {\r\n \r\n const coordenacao = (\r\n await this.coordenacaoService.obterCapacidadePorAno(capacidade.coordenacaoId, capacidade.ano)\r\n ).dados;\r\n \r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '1080px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = {\r\n capacidade,\r\n coordenacao,\r\n visualizar\r\n };\r\n const modal = this.matDialog.open(ModalCapacidadeComponent, dialogConfig);\r\n \r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n }\r\n }\r\n\r\n public async salvarDados(salvarEFechar: boolean) {\r\n this.submit = true;\r\n \r\n if (this.form.invalid) {\r\n this.exibirMensagemErro('Formulário invalido!');\r\n return;\r\n }\r\n\r\n if ((this.ugDataSource.data.length === 0 ||\r\n this.coordenacoesDataSource.data.length === 0)\r\n ) {\r\n this.exibirMensagemErro('Informe alguma Unidade Gestora e alguma Coordenação');\r\n return;\r\n }\r\n\r\n this.atualizarModel(this.form.value);\r\n \r\n try {\r\n\r\n let res: IBaseModel = null;\r\n Object.assign(this.modelDadosBasicos, this.form.value);\r\n if(this.novoRegistro){\r\n res = await this.peaService.inserir(this.modelDadosBasicos);\r\n }else{\r\n switch(this.aba){\r\n case 0:\r\n res = await this.atualizarAbaDadosBasicos();\r\n break;\r\n case 4:\r\n res = await this.atualizarAbaDistribuicao();\r\n if(res.sucesso){\r\n this.obterAbaDistribuicao();\r\n }\r\n break;\r\n default:\r\n console.warn(\"salvar não implementado\");\r\n }\r\n }\r\n\r\n if(res.sucesso){\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.salvarDadosPendente = false;\r\n if (res.dados?.pendencias?.pendencias && res.dados?.pendencias?.pendencias.length > 0)\r\n this.showPendencias(res?.dados?.pendencias?.pendencias);\r\n }else{\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n return;\r\n }\r\n \r\n\r\n if (salvarEFechar == true)\r\n this.router.navigate(['/pea']);\r\n else {\r\n if (this.novoRegistro)\r\n this.router.navigate([`/pea/${res.dados.id}`]);\r\n await this.obterDadosBasicos();\r\n }\r\n \r\n if (res.sucesso) {\r\n if (res.dados?.pendencias?.pendencias && res.dados?.pendencias?.pendencias.length > 0) {\r\n this.showPendencias(res?.dados?.pendencias?.pendencias);\r\n }\r\n } else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n \r\n if (validacoes.trim().length > 0) \r\n this.exibirMensagemErro(validacoes);\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err?.mensagem?.descricao);\r\n }\r\n }\r\n\r\n public async atualizarAbaDadosBasicos(){\r\n this.modelDadosBasicos.peaUnidadeGestora = this.ugDataSource.data;\r\n this.modelDadosBasicos.peaCoordenacao = this.coordenacoesDataSource.data;\r\n return this.peaService.atualizarDadosBasicos(this.modelDadosBasicos);\r\n }\r\n\r\n public async atualizarAbaDistribuicao(){\r\n if (this.model.classificacaoPersonalizada) {\r\n this.model.classificacaoPisoBaixo = this.modelFaixa?.pisoBaixo ?? 0;\r\n this.model.classificacaoTetoBaixo = this.modelFaixa?.tetoBaixo ?? 0;\r\n this.model.classificacaoPisoMedio = this.modelFaixa?.pisoMedio ?? 0;\r\n this.model.classificacaoTetoMedio = this.modelFaixa?.tetoMedio ?? 0;\r\n this.model.classificacaoPisoAlto = this.modelFaixa?.pisoAlto ?? 0;\r\n this.model.classificacaoTetoAlto = this.modelFaixa?.tetoAlto ?? 0;\r\n }\r\n else {\r\n this.model.classificacaoPisoBaixo = null;\r\n this.model.classificacaoTetoBaixo = null;\r\n this.model.classificacaoPisoMedio = null;\r\n this.model.classificacaoTetoMedio = null;\r\n this.model.classificacaoPisoAlto = null;\r\n this.model.classificacaoTetoAlto = null;\r\n }\r\n\r\n this.model.validacaoFluxoAprovacao = null;\r\n this.model.id = this.id;\r\n\r\n return this.peaService.AtualizarFaixaClassificacao(this.model);\r\n }\r\n\r\n public async salvarDadosDistribuicao(salvarEFechar: boolean) {\r\n this.submit = true;\r\n if (this.form.invalid) {\r\n this.exibirMensagemErro('Formulário invalido!');\r\n return;\r\n }\r\n\r\n this.atualizarModel(this.form.value);\r\n\r\n if (this.model.classificacaoPersonalizada) {\r\n this.model.classificacaoPisoBaixo = this.modelFaixa?.pisoBaixo ?? 0;\r\n this.model.classificacaoTetoBaixo = this.modelFaixa?.tetoBaixo ?? 0;\r\n this.model.classificacaoPisoMedio = this.modelFaixa?.pisoMedio ?? 0;\r\n this.model.classificacaoTetoMedio = this.modelFaixa?.tetoMedio ?? 0;\r\n this.model.classificacaoPisoAlto = this.modelFaixa?.pisoAlto ?? 0;\r\n this.model.classificacaoTetoAlto = this.modelFaixa?.tetoAlto ?? 0;\r\n }\r\n else {\r\n this.model.classificacaoPisoBaixo = null;\r\n this.model.classificacaoTetoBaixo = null;\r\n this.model.classificacaoPisoMedio = null;\r\n this.model.classificacaoTetoMedio = null;\r\n this.model.classificacaoPisoAlto = null;\r\n this.model.classificacaoTetoAlto = null;\r\n }\r\n\r\n this.model.validacaoFluxoAprovacao = null;\r\n\r\n try {\r\n let res: IBaseModel = null;\r\n\r\n res = await this.peaService.atualizar(this.model);\r\n\r\n if (res.sucesso) {\r\n\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n\r\n if (salvarEFechar == true)\r\n this.router.navigate(['/pea']);\r\n }\r\n else {\r\n const validacoes = this.montarMensagensValidacao(res);\r\n if (validacoes.trim().length > 0) {\r\n this.exibirMensagemErro(validacoes);\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 atualizarModel(values: any) {\r\n Object.assign(this.model, values);\r\n }\r\n\r\n\r\n public async enviarAprovar() {\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\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.model.situacaoId = 2;\r\n this.peaService\r\n .enviarAprovacao(this.id, res.value.toString())\r\n .then(res => {\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Encaminhado para aprovação!');\r\n this.router.navigate([`/pendencias`]);\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 }).finally(() => {\r\n this.obterDados();\r\n });\r\n }\r\n })\r\n }\r\n\r\n public async exibirModalPeriodo() {\r\n try {\r\n const res = await this.periodoService.obter('', true);\r\n if (res.sucesso) {\r\n res.dados.sort(\r\n (d2, d1) =>\r\n new Date(d1.dataInicio).getTime() -\r\n new Date(d2.dataInicio).getTime()\r\n );\r\n const modal = this.exibirModal('Selecionar Periodo', res.dados);\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.salvarDadosPendente = true;\r\n this.modelDadosBasicos.periodo = data;\r\n this.modelDadosBasicos.periodoId = data.id;\r\n this.form.controls['periodoId'].setValue(data.id);\r\n \r\n // if (!this.novoRegistro) {\r\n // this.salvarDados(false);\r\n // this.obterDadosBasicos();\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 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.modelDadosBasicos.indicador = data;\r\n this.modelDadosBasicos.indicadorId = data.id;\r\n this.form.controls['indicadorId'].setValue(data.id);\r\n // if (!this.novoRegistro) {\r\n // this.salvarDados(false);\r\n // this.obterDados();\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 exibirModalUg() {\r\n try {\r\n\r\n const res = await this.ugService.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 const unidadesAdicionadas = [] as IUnidadeGestoraModel[];\r\n if (this.modelDadosBasicos.peaUnidadeGestora !== undefined) {\r\n this.modelDadosBasicos.peaUnidadeGestora.forEach((d) =>\r\n unidadesAdicionadas.push(d.unidadeGestora)\r\n );\r\n dialogConfig.data = res.dados.filter(\r\n (d) => !unidadesAdicionadas.some((x) => d.id === x.id)\r\n );\r\n } else {\r\n dialogConfig.data = res.dados;\r\n this.modelDadosBasicos.peaUnidadeGestora = [] as IPeaUnidadeGestoraModel[];\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 this.salvarDadosPendente = true;\r\n if (Array.isArray(data)) {\r\n let unidadeSelecionada = [] as IPeaUnidadeGestoraModel[];\r\n unidadeSelecionada = data.map(\r\n (d) =>\r\n ({\r\n unidadeGestoraId: d.id,\r\n unidadeGestora: d,\r\n } as IPeaUnidadeGestoraModel)\r\n );\r\n unidadeSelecionada.forEach((x) =>\r\n this.modelDadosBasicos.peaUnidadeGestora.push(x)\r\n );\r\n }\r\n\r\n this.atualizarListaUgs(this.modelDadosBasicos.peaUnidadeGestora);\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 exibirModalCoordenacoes() {\r\n try {\r\n\r\n const res = await this.coordenacaoService.obter('', true);\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 const coordenacoesAdicionadas = [] as ICoordenacaoModel[];\r\n if (this.modelDadosBasicos.peaCoordenacao !== undefined) {\r\n this.modelDadosBasicos.peaCoordenacao.forEach((d) =>\r\n coordenacoesAdicionadas.push(d.coordenacao)\r\n );\r\n dialogConfig.data = res.dados.filter(\r\n (d) => !coordenacoesAdicionadas.some((x) => d.id === x.id)\r\n );\r\n } else {\r\n dialogConfig.data = res.dados;\r\n this.modelDadosBasicos.peaCoordenacao = [] as IPeaCoordenacaoModel[];\r\n }\r\n const modal = this.matDialog.open(\r\n ModalSelecionarCoordenacoesComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe((data) => {\r\n if (data) {\r\n this.salvarDadosPendente = true;\r\n if (Array.isArray(data)) {\r\n let coordenacaoSelecionada = [] as IPeaCoordenacaoModel[];\r\n coordenacaoSelecionada = data.map(\r\n (d) =>\r\n ({\r\n coordenacaoId: d.id,\r\n coordenacao: d,\r\n } as IPeaCoordenacaoModel)\r\n );\r\n coordenacaoSelecionada.forEach((x) =>\r\n this.modelDadosBasicos.peaCoordenacao.push(x)\r\n );\r\n }\r\n\r\n this.coordenacoesDataSource = new MatTableDataSource<\r\n IPeaCoordenacaoModel\r\n >(this.modelDadosBasicos.peaCoordenacao);\r\n this.coordenacoesDataSource._updateChangeSubscription();\r\n this.coordenacaoSemDados =\r\n this.coordenacoesDataSource.filteredData.length === 0;\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 avancar() {\r\n this.form.markAllAsTouched();\r\n\r\n let invalid = false;\r\n\r\n if (this.form.invalid) {\r\n this.exibirMensagemErro('Formulário inválido');\r\n invalid = true;\r\n }\r\n if (!this.model.peaCoordenacao || this.model.peaCoordenacao.length === 0) {\r\n this.exibirMensagemErro('É obrigatório a seleção de pelo menos uma Coordenação!');\r\n invalid = true;\r\n }\r\n\r\n if (\r\n !this.model.peaUnidadeGestora ||\r\n this.model.peaUnidadeGestora.length === 0\r\n ) {\r\n this.exibirMensagemAlerta('É obrigatório a seleção de pelo menos uma Unidade Gestora!');\r\n invalid = true;\r\n }\r\n\r\n if (invalid) {\r\n return;\r\n }\r\n\r\n this.aba++;\r\n }\r\n\r\n public voltar() {\r\n this.aba--;\r\n }\r\n\r\n public validar(): boolean {\r\n return this.form.valid;\r\n }\r\n\r\n public excluirUg(ind: number) {\r\n Swal.fire({\r\n title: 'Excluir Unidade Gestora',\r\n text: 'Deseja realmente excluir a informação?',\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.salvarDadosPendente = true;\r\n this.ugDataSource.data.splice(ind, 1);\r\n this.atualizarListaUgs(this.ugDataSource.data);\r\n }\r\n });\r\n }\r\n\r\n public excluirCoordenacao(ind: number) {\r\n Swal.fire({\r\n title: 'Excluir Coordenação',\r\n text: 'Deseja realmente excluir a informação?',\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.salvarDadosPendente = true;\r\n this.coordenacoesDataSource.data.splice(ind, 1);\r\n this.coordenacoesDataSource._updateChangeSubscription();\r\n this.coordenacaoSemDados =\r\n this.coordenacoesDataSource.filteredData.length === 0;\r\n }\r\n });\r\n }\r\n\r\n //0- Dados Básicos | 1-CargasCriterios | 2-Capacidade | 3-Ranking | 4-Distribuicao | 5-Relatoria | 6-LinhaDoTempo\r\n public async mudarAba(ind: number) {\r\n if(this.novoRegistro){\r\n this.exibirMensagemErro(\"Necessário salvar os dados antes de mudar de aba.\");\r\n return;\r\n }\r\n\r\n \r\n this.aba = ind;\r\n\r\n switch(ind){\r\n case 0:\r\n this.obterDadosBasicos();\r\n case 1:\r\n this.obterAbaCargaCriterios();\r\n case 2:\r\n this.obterAbaCapacidadeTrabalho();\r\n case 3: \r\n this.obterAbaRanking();\r\n case 4:\r\n await this.obterAbaDistribuicao();\r\n case 5:\r\n this.obterDados();\r\n default:\r\n console.warn('aba não implementada');\r\n }\r\n }\r\n\r\n public importarArquivoCriterio(id: number) {\r\n try {\r\n const respostas = this.ugDataSource.data.map(\r\n (u) =>\r\n ({\r\n peaId: this.id,\r\n criterioId: id,\r\n unidadeGestoraId: u.unidadeGestoraId,\r\n unidadeGestora: u.unidadeGestora,\r\n } as IPeaCriterioRespostaModel)\r\n );\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '700px';\r\n dialogConfig.maxHeight = '700px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = respostas;\r\n const modal = this.matDialog.open(\r\n ModalImportarArquivoCriterioComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe(async (data) => {\r\n\r\n if (data) {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.peaService.enviarRespostasCriterio(\r\n this.id,\r\n respostas.map((c) => ({\r\n peaId: c.peaId,\r\n criterioId: c.criterioId,\r\n unidadeGestoraId: c.unidadeGestoraId,\r\n valorNumerico: c.valorNumerico,\r\n }))\r\n );\r\n if (res.sucesso) {\r\n await Promise.all([\r\n this.obterDados(),\r\n this.obterPainelDistribuicao(this.id),\r\n this.peaService\r\n .obterCargaCriteriosPorId(this.id)\r\n .then((resCriterios) => {\r\n this.criterioDataSource = new MatTableDataSource<\r\n ICargaCriterioPeaModel\r\n >(resCriterios.dados);\r\n this.criterioDataSource._updateChangeSubscription();\r\n this.criterioSemDados =\r\n this.criterioDataSource.filteredData.length === 0;\r\n }),\r\n ]);\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\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 this.router.navigate(['/pea']);\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 preencherFormularioCriterio(id: number) {\r\n try {\r\n const criterio = this.criterioDataSource.data.find(\r\n (c) => c.criterioId === id\r\n );\r\n criterio.peaCriterioResposta = criterio.peaCriterioResposta || [];\r\n\r\n let respostas = this.ugDataSource.data.map((u) => {\r\n return (\r\n criterio.peaCriterioResposta.find(\r\n (r) => r.unidadeGestoraId === u.unidadeGestoraId\r\n ) ||\r\n ({\r\n peaId: this.id,\r\n criterioId: id,\r\n criterio: criterio.criterio,\r\n unidadeGestoraId: u.unidadeGestoraId,\r\n unidadeGestora: u.unidadeGestora,\r\n } as IPeaCriterioRespostaModel)\r\n );\r\n });\r\n\r\n respostas = respostas.sort((a, b) => {\r\n return (\r\n +(a.unidadeGestora.nome > b.unidadeGestora.nome) ||\r\n +(a.unidadeGestora.nome === b.unidadeGestora.nome) - 1\r\n );\r\n });\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '700px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.ariaLabel = criterio.criterio.nome;\r\n dialogConfig.data = respostas.sort((a, b) =>\r\n a['unidadeGestora'].nome.localeCompare(b['unidadeGestora'].nome)\r\n );\r\n\r\n const modal = this.matDialog.open(\r\n ModalPreencherFormularioComponent,\r\n dialogConfig\r\n );\r\n modal.afterClosed().subscribe(async (data) => {\r\n\r\n if (data) {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.peaService.enviarRespostasCriterio(\r\n this.id,\r\n respostas.map((c) => ({\r\n peaId: c.peaId,\r\n criterioId: c.criterioId,\r\n unidadeGestoraId: c.unidadeGestoraId,\r\n valorNumerico: c.valorNumerico,\r\n }))\r\n );\r\n if (res.sucesso) {\r\n await Promise.all([\r\n this.obterDados(),\r\n this.obterPainelDistribuicao(this.id),\r\n this.peaService\r\n .obterCargaCriteriosPorId(this.id)\r\n .then((resCriterios) => {\r\n this.criterioDataSource = new MatTableDataSource<\r\n ICargaCriterioPeaModel\r\n >(resCriterios.dados);\r\n this.criterioDataSource._updateChangeSubscription();\r\n this.criterioSemDados =\r\n this.criterioDataSource.filteredData.length === 0;\r\n }),\r\n ]);\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/pea']);\r\n return;\r\n }\r\n }\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n this.router.navigate(['/pea']);\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 exibirRespostas(id: number) {\r\n const respostas =\r\n (this.criterioDataSource.data.find((c) => c.criterioId === id)\r\n .peaCriterioResposta as []) || [];\r\n const questionario =\r\n (this.criterioDataSource.data.find((c) => c.criterioId === id)\r\n .peaCriterioQuestionario as []) || [];\r\n\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.id = 'modal-component';\r\n dialogConfig.width = '700px';\r\n dialogConfig.hasBackdrop = true;\r\n dialogConfig.disableClose = true;\r\n dialogConfig.data = respostas\r\n .concat(questionario)\r\n .sort((a: ICargaCriterioPeaModel, b: ICargaCriterioPeaModel) =>\r\n a['unidadeGestora'].nome.localeCompare(b['unidadeGestora'].nome)\r\n );\r\n this.matDialog.open(ModalVisualizarRespostasComponent, dialogConfig);\r\n }\r\n\r\n public formatarNumero(n: number) {\r\n return n?.toFixed(4).toString().replace('.', ',');\r\n }\r\n\r\n public async enviarQuestionario(modelEnviarQuestionario: IEnviarQuestionarioModel) {\r\n try {\r\n if (!this.novoRegistro) {\r\n const res = await this.peaService.enviarQuestionarios(this.id, modelEnviarQuestionario);\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso(res.mensagem.descricao);\r\n this.obterCargaCriterios();\r\n } else {\r\n this.exibirMensagemAlerta(res.mensagem.descricao);\r\n return;\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 aprovar() {\r\n\r\n try {\r\n const res = await this.peaService.aprovar(this.id);\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Item aprovado com sucesso!');\r\n this.router.navigate(['/pendencias']);\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 exibirModalEnviarQuestionarioCriterio() {\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 const modal = this.matDialog.open(ModalEnviarQuestionarioCriterioComponent, dialogConfig);\r\n modal.afterClosed().subscribe(data => {\r\n if (data) {\r\n this.enviarQuestionario(data);\r\n }\r\n });\r\n }\r\n\r\n public async exibirModalVisualizarQuestionarioCriterio() {\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 const res = await this.peaService.obterVisualizacaoQuestionario(this.id);\r\n dialogConfig.data = res;\r\n const modal = this.matDialog.open(ModalVisualizarQuestionarioCriterioComponent, dialogConfig);\r\n }\r\n\r\n public async confirmarCancelamento() {\r\n const res = await this.peaService.questionariosRespondidos(this.id);\r\n if (res.sucesso) {\r\n Swal.fire({\r\n title: 'Cancelar Questionário',\r\n text: 'Deseja cancelar o envio dos questionarios?',\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.cancelarEnvioQuestionario();\r\n }\r\n });\r\n }\r\n else if (res.mensagem.nome === 'QuestionarioRespondido') {\r\n Swal.fire({\r\n title: 'Cancelar Questionário',\r\n text: `${res.mensagem?.descricao}. Deseja cancelar o envio mesmo assim?`,\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.cancelarEnvioQuestionario();\r\n }\r\n });\r\n }\r\n else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n }\r\n }\r\n\r\n public async cancelarEnvioQuestionario() {\r\n try {\r\n const res = await this.peaService.enviarQuestionarioCancelado(this.id);\r\n if (res.sucesso) {\r\n this.exibirMensagemSucesso('Envio cancelado');\r\n this.obterCargaCriterios();\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 obterRankingPrioridade() {\r\n this.rankingService\r\n .obterRankingDistribuicao(this.id, this.model.indicadorId, 1)\r\n .then((res) => {\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);\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);\r\n this.rankingPrioridadeEmpresasPublicasDataSource._updateChangeSubscription();\r\n this.semDadosRankingEmpresaPublica = this.rankingPrioridadeEmpresasPublicasDataSource.data.length === 0;\r\n\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public gerarRankingDistribuicao() {\r\n this.rankingService\r\n .gerarRankingDistribuicao(this.id, 1)\r\n .then((res) => {\r\n this.showPendencias(res?.dados?.pendencias);\r\n this.obterDados();\r\n this.obterRankingPrioridade();\r\n })\r\n .catch((err) => {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n })\r\n }\r\n\r\n public async removerClassificacaoPersonalizada() {\r\n Swal.fire({\r\n title: 'Confirmação',\r\n text: 'Deseja realmente remover a classificação personalizada?',\r\n icon: \"warning\",\r\n confirmButtonText: 'Sim',\r\n cancelButtonText: 'Não',\r\n showCancelButton: true\r\n }).then(res => {\r\n if (res.isConfirmed) {\r\n this.peaService.removerClassificacaoPersonalizada(this.model.id)\r\n .then(response => {\r\n if (response.sucesso) {\r\n this.exibirMensagemSucesso(\"Classificação personalizada removida com sucesso.\");\r\n this.distribuicaoPersonalizadoDataSource = new MatTableDataSource([]);\r\n this.distribuicaoPersonalizadoDataSource._updateChangeSubscription();\r\n this.model.classificacaoPersonalizada = false;\r\n this.distribuicaoSemDadosPersonalizado = true;\r\n this.obterAbaDistribuicao();\r\n } else {\r\n this.exibirMensagemAlerta(response.mensagem.descricao, false);\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 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 { 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 id = this.modelsSelected()[0].id;\r\n this.router.navigate([`/pea/${id}/relatorio-simplificado`]);\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 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 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
\r\n

Capacidade de Trabalho

\r\n\r\n
\r\n \r\n \r\n Coordenação\r\n \r\n {{ element.coordenacaoNome }}\r\n \r\n \r\n\r\n \r\n \r\n Dias Disponíveis\r\n \r\n \r\n {{ element.diasDisponiveis }}\r\n \r\n \r\n\r\n \r\n \r\n Nº Equipes Disponíveis\r\n \r\n \r\n {{ element.equipesDisponiveis }}\r\n \r\n \r\n\r\n \r\n \r\n Quant. Dias
por Auditoria\r\n \r\n \r\n {{ element.diasPorAuditoria }}\r\n \r\n
\r\n\r\n \r\n \r\n Nº Auditorias
por Equipe\r\n \r\n \r\n {{ element.auditoriasPorEquipe }}\r\n \r\n
\r\n\r\n \r\n \r\n Capacidade Total
por Coordenação\r\n \r\n \r\n {{ element.capacidadeTotalCoordenacao }}\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 Capacidade de Trabalho Total no Ano:\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

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 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

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 Código UG\r\n \r\n \r\n {{ element.codigo }}\r\n \r\n \r\n\r\n\r\n \r\n \r\n Unidade Gestora\r\n \r\n \r\n {{ element.sigla }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ coluna }}
{{ obterPesoColuna(coluna) }}\r\n \r\n \r\n {{ obterValorColuna(element, coluna) }}\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n Valor de Risco\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

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 Código UG\r\n \r\n \r\n {{ element.unidadeGestora.codigoUg }}\r\n \r\n \r\n\r\n \r\n \r\n Sigla UG\r\n \r\n \r\n {{ element.unidadeGestora.sigla }}\r\n \r\n \r\n\r\n \r\n \r\n Nome UG\r\n \r\n \r\n {{ element.unidadeGestora.nome }}\r\n \r\n \r\n\r\n \r\n \r\n Valor Risco\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

Empresas Públicas

\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 \r\n {{ element.unidadeGestora.codigoUg }}\r\n \r\n \r\n\r\n \r\n \r\n Sigla UG\r\n \r\n \r\n {{ element.unidadeGestora.sigla }}\r\n \r\n \r\n\r\n \r\n \r\n Nome UG\r\n \r\n \r\n {{ element.unidadeGestora.nome }}\r\n \r\n \r\n\r\n \r\n \r\n Valor Risco\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 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 {{ distribuicao[ano] }}
({{ distribuicao[ano + \"_indice\"] }})\r\n
\r\n \r\n \r\n
{{ ano }}
\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 {{ distribuicao[ano] }}
({{ distribuicao[ano + \"_indice\"] }})\r\n
\r\n \r\n \r\n
{{ ano }}
\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 {{ distribuicao[ano] }}
({{ distribuicao[ano + \"_indice\"] }})\r\n
\r\n \r\n \r\n
{{ ano }}
\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 {{ distribuicao[ano] }}
({{ distribuicao[ano + \"_indice\"] }})\r\n
\r\n \r\n \r\n
{{ ano }}
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n

Calendário

\r\n\r\n
\r\n
{{ ano.ano }}
\r\n 0\"\r\n >\r\n \r\n \r\n Meses/dias\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n 19\r\n 20\r\n 21\r\n 22\r\n 23\r\n 24\r\n 25\r\n 26\r\n 27\r\n 28\r\n 29\r\n 30\r\n 31\r\n Total de dias\r\n Sab/Dom\r\n Feriado\r\n Ponto Facultativo\r\n Dias úteis\r\n \r\n \r\n \r\n \r\n \r\n {{ mes.nome }}\r\n \r\n X\r\n \r\n \r\n {{ mes.totalDias }}\r\n \r\n \r\n {{ mes.totalSabadosEDomingos }}\r\n \r\n \r\n {{ mes.totalFeriados }}\r\n \r\n \r\n {{ mes.totalPontosFacultativos }}\r\n \r\n \r\n {{ mes.totalDiasUteis }}\r\n \r\n \r\n {{ mes.feriados }}\r\n \r\n \r\n \r\n Total\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{dias}}\r\n {{sabadoDomingo}}\r\n {{feriado}}\r\n {{pontoFacultativo}}\r\n {{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
Ponto facultativo
Feriados nacionais
Feriados estaduais
\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 { 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\") this.homologado = false\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","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(MatPaginator, { static: true }) paginator: 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}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.buscar();\r\n\t\tthis.configurarFiltro();\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\r\n\t\t\t\tthis.semDados = this.dataSource.filteredData.length === 0;\r\n\t\t\t\tthis.configurarFiltro();\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?.dataRecebimento;\r\n\t\t\tcase \"dataPrazo\":\r\n\t\t\t\treturn item?.dataPrazo;\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}\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\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","
\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 Perguntas\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
\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 {{i + 1}}\r\n \r\n
    \r\n {{ opcao.nome }}\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
  • \r\n
\r\n
\r\n Nenhuma opção disponí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 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 { 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 {CdkDragDrop, moveItemInArray, transferArrayItem} from '@angular/cdk/drag-drop';\r\n\r\n@Component({\r\n selector: 'app-pergunta-form',\r\n templateUrl: './pergunta-form.component.html',\r\n styleUrls: ['./pergunta-form.component.scss']\r\n})\r\nexport class PerguntaFormComponent extends BaseFormComponent implements OnInit {\r\n public enumTipoEntrada = [] as IEnumModel[];\r\n\r\n public model: IPerguntaModel = {} as IPerguntaModel;\r\n public opcoesDataSource = [] as IPerguntaOpcaoModel[];\r\n public semDados = true;\r\n public permiteCadastroOpcoes = 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 descricao: new FormControl('', Validators.required),\r\n tipoEntradaId: new FormControl(null, Validators.required),\r\n novaOpcao: new FormControl(''),\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 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 if (this.novoRegistro) {\r\n this.titulo = 'Nova Pergunta';\r\n }\r\n }\r\n\r\n onDrop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(this.opcoesDataSource,\r\n event.previousIndex,\r\n event.currentIndex);\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.perguntaService.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 Pergunta - ' + this.model.nome;\r\n }\r\n else {\r\n this.titulo = 'Editar Pergunta - ' + this.model.nome;\r\n }\r\n\r\n this.opcoesDataSource = this.model.perguntaOpcao.sort((a, b) => a['ordem'].toString().localeCompare(b['ordem'].toString()));\r\n this.semDados = this.opcoesDataSource.length === 0;\r\n } else {\r\n this.exibirMensagemErro(res.mensagem.descricao);\r\n this.router.navigate(['/perguntas']);\r\n return;\r\n }\r\n }\r\n\r\n // Tabelas de domínio\r\n await this.tabelaDominioService.obterTipoEntradaPergunta().then((res) => this.enumTipoEntrada = res.dados);\r\n this.permiteCadastroOpcoes = this.model.tipoEntradaId === 3;\r\n this.form.patchValue(this.model);\r\n } catch (err) {\r\n this.exibirMensagemErro(err.mensagem.descricao);\r\n this.router.navigate(['/perguntas']);\r\n }\r\n }\r\n\r\n public cancelar() {\r\n this.submit = false;\r\n this.router.navigate(['/perguntas']);\r\n }\r\n\r\n public onChangeTipoEntrada(event: any) {\r\n this.permiteCadastroOpcoes = event.target.value === '3';\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 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 return;\r\n }\r\n\r\n this.atualizarModel(this.form.value);\r\n this.model.perguntaOpcao = [] as IPerguntaOpcaoModel[];\r\n if (this.model.tipoEntradaId.toString() === '3') {\r\n this.model.perguntaOpcao = this.opcoesDataSource.map((_, i) => ({..._, ordem: i}));\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.perguntaService.atualizar(this.model);\r\n } else {\r\n res = await this.perguntaService.inserir(this.model);\r\n }\r\n\r\n if (res.sucesso) {\r\n if (res.mensagem.nome === 'PerguntaEmUsoAlteradaNovasOpcoes') {\r\n Swal.fire({\r\n title: 'A pergunta foi alterada com sucesso!',\r\n html: 'O(s) Critério(s) abaixo precisa(m) ser alterado(s) com métricas para a(s) nova(s) resposta(s):
' + this.montarMensagensValidacao(res),\r\n icon: 'success',\r\n }).then(() => {\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(['/perguntas']);\r\n });\r\n } else {\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(['/perguntas']);\r\n else{\r\n if(this.novoRegistro)\r\n this.router.navigate([`/perguntas/${res.dados.id}`]);\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: `${res.mensagem.descricao}${validacoes}`,\r\n showConfirmButton: false,\r\n timer: 5000,\r\n timerProgressBar: 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 async onSubmit() {\r\n this.salvarDados(false);\r\n }\r\n\r\n public incluirNovaOpcao() {\r\n const novaOpcao = this.form.controls['novaOpcao'].value;\r\n if (novaOpcao && novaOpcao.length > 0) {\r\n this.opcoesDataSource.push({ nome: novaOpcao } as IPerguntaOpcaoModel);\r\n this.semDados = false;\r\n\r\n this.form.controls['novaOpcao'].setValue('');\r\n }\r\n }\r\n\r\n public excluirOpcao(ind: number) {\r\n this.opcoesDataSource.splice(ind, 1);\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(['/perguntas']);\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 { 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","
\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, 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","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\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\tGoverno do Estado do Espírito Santo\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\tSecretaria de Estado de Controle e Transparência\r\n\t\t\t\t\t\t\t(SECONT)\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

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","
\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 { 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

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 { 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","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","
\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 { 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\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 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","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","
\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 { 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
\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, 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","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","
\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 { 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","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","
\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, 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","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","
\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, 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","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
","
\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} 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 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","\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

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 { 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
\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, 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. 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, 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","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
\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 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
Governo do Estado do Espírito Santo
\r\n

\r\n Secretaria de Estado de Controle e Transparência (SECONT)\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 Nome do Responsável\r\n Nome da Responsabilidade\r\n Tipo do Agente\r\n Data Início\r\n Data Fim\r\n Situação\r\n \r\n \r\n \r\n \r\n {{ responsavel.nome }}\r\n \r\n \r\n {{ responsavel.naturezaResponsabilidade?.nome }}\r\n \r\n \r\n {{ responsavel.tipoAgente?.descricao }}\r\n \r\n \r\n {{ responsavel.dataInicio | date: \"dd/MM/yyyy\" }}\r\n \r\n \r\n {{ responsavel.dataFim | date: \"dd/MM/yyyy\" }}\r\n \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
\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
\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 \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
Governo do Estado do Espírito Santo
\r\n

Secretaria de Estado de Controle e Transparência (SECONT)

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

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

\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 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
\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","
\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 { 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\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 { 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
\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, 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","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","
\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, 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","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","
\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, 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","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","
\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, 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","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
","
\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, 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","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","
\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, 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","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","
\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 {{ 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 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, 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\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\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 ) {\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 async ngOnInit() {\r\n Inputmask().mask(document.querySelectorAll('input'));\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 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}\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\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 ) {\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.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.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 { 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 { 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 { 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 } 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 { 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 { 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 { 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 { 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 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}/paa/${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 }","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 autuacao: IAutuacaoModel\r\n ): Promise> {\r\n return this.httpClient\r\n .post>(\r\n `${this.apiBaseUrl}/pea/${id}/homologar`,\r\n autuacao\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 { 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 { 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\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SharedService {\r\n private subject = new Subject();\r\n\r\n sendSalvarEvent() {\r\n this.subject.next();\r\n\r\n }\r\n getEvent():Observable{\r\n return this.subject.asObservable();\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","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\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 { 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 { 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 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 {{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 \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 { 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
\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 { 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 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 {{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 { 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
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\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 \r\n \r\n \r\n\r\n \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","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

{{ 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","\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","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

Solicitação Técnica

\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\tGoverno do Estado do Espírito Santo\r\n\t\t\t\t\t
\r\n\t\t\t\t\t

\r\n\t\t\t\t\t\tSecretaria de Estado de Controle e Transparência\r\n\t\t\t\t\t\t(SECONT)\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\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\r\n\t\t\r\n\t\r\n\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\r\n\t\tconst visualizacao =\r\n\t\t\tthis.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","
\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\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{{ 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\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 { 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() 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'] 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\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 }\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.dadosObtidos == undefined || this.dadosObtidos?.tipoTrabalhoStatus?.codigo === 1);\r\n }\r\n\r\n public mostrarBotaoExcluir() {\r\n return !this.impressao\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","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","
\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 { 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'] 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
\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","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\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","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\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 tituloModal: string;\r\n public semDados = true;\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.tituloModal = data.tituloModal;\r\n this.historicoDados = data.historicoDados;\r\n this.semDados = data.historicoDados.length == 0;\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\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 Sem dados a exibir\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
\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
\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.dataInclusao | date: 'dd MMM yyyy HH:mm'}}\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 Alterado para: {{ element.unidadeGestoraMaturidadeGR.nome }}\r\n\t\t\t\t\t\t\t\t\t\t\t

\r\n
Usuário: {{ element.pessoaNome }}\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
\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 Cancelar\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\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\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 localStorage.setItem('timelineImprimir', this.router.url)\r\n switch (this.model?.tipoDocumento.nome) {\r\n case 'PEAC':\r\n this.router.navigate([]).then(result => { window.open(`pea/${id}/espelho-relatorio-consolidado`, '_blank') });\r\n window.close();\r\n break;\r\n case 'PAAC':\r\n this.router.navigate([]).then(result => { window.open(`paa/${id}/espelho-relatorio`, '_blank'); });\r\n window.close();\r\n break;\r\n case 'OPA':\r\n this.router.navigate([]).then(result => { window.open(`opa/${id}/espelho-relatorio`, '_blank'); });\r\n window.close();\r\n break;\r\n case 'Planejamento':\r\n this.router.navigate([]).then(result => { window.open(`planejmento/${id}/espelho-relatorio`, '_blank'); });\r\n window.close();\r\n break;\r\n case 'OSA':\r\n this.router.navigate([]).then(result => { window.open(`osa/${id}/espelho-relatorio`, '_blank'); });\r\n window.close();\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 switch (this.model?.tipoDocumento.nome) {\r\n case 'PEAC':\r\n this.router.navigate([]).then(result => { window.open(`imprimir-relatoria/${id}/espelho-relatorio?tipoTrabalho=pea`, '_blank'); });\r\n window.close();\r\n break;\r\n case 'PAAC':\r\n this.router.navigate([]).then(result => { window.open(`imprimir-relatoria/${id}/espelho-relatorio?tipoTrabalho=paa`, '_blank'); });\r\n window.close();\r\n break;\r\n case 'OPA':\r\n this.router.navigate([]).then(result => { window.open(`imprimir-relatoria/${id}/espelho-relatorio?tipoTrabalho=opa`, '_blank'); });\r\n window.close();\r\n break;\r\n case 'Planejamento':\r\n this.router.navigate([]).then(result => { window.open(`imprimir-relatoria/${id}/espelho-relatorio?tipoTrabalho=planejamento`, '_blank'); });\r\n window.close();\r\n break;\r\n case 'OSA':\r\n this.router.navigate([]).then(result => { window.open(`imprimir-relatoria/${id}/espelho-relatorio?tipoTrabalho=osa`, '_blank'); });\r\n window.close();\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, 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","\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, 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","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 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
\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 public reprovado: boolean;\r\n public homologado: 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 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\t\t\t\t\t\t\t\t Fechar\r\n\t\t\t\t\t\t\t\r\n \r\n Enviar para\r\n Aprovação\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}","
\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 { 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","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 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","
  • \r\n \r\n \r\n \r\n

    {{item.nome}}

    \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","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\r\n constructor() { }\r\n\r\n async ngOnInit() {\r\n }\r\n async ngAfterViewInit() {\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\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));"]}