Deseja encerrar o suporte a essa unidade?
Ao confirmar, você será direcionado para a página de acesso ao sistema e ao acessá-lo, não visualizará mais essa unidade.
"} + primeiroBotaoTexto={"Não"} + primeiroBotaoCss={"outline-success"} + primeiroBotaoOnclick={props.handleNaoConfirmaEncerramentoSuporte} + segundoBotaoTexto={"Sim"} + segundoBotaoCss={"danger"} + segundoBotaoOnclick={props.handleConfirmaEncerramentoSuporte} + /> + ) +}; diff --git a/src/componentes/Globais/BarraMensagemUnidadeEmSuporte/index.js b/src/componentes/Globais/BarraMensagemUnidadeEmSuporte/index.js new file mode 100644 index 000000000..98fca4565 --- /dev/null +++ b/src/componentes/Globais/BarraMensagemUnidadeEmSuporte/index.js @@ -0,0 +1,65 @@ +import React, {useCallback, useEffect, useState} from "react"; +import { barraMensagemCustom } from "../BarraMensagem"; +import {visoesService} from "../../../services/visoes.service" +import {ModalConfirmaEncerramentoSuporte} from "./ModalConfirmaEncerramentoSuporte"; +import {encerrarAcessoSuporte,authService} from "../../../services/auth.service"; + +export const BarraMensagemUnidadeEmSuporte = () => { + const mensagemSuporte = "Você está acessando essa unidade em MODO SUPORTE. Use o botão encerrar quando concluir o suporte." + const [unidadeEstaEmSuporte, setUnidadeEstaEmSuporte] = useState(false) + + const dadosUsuarioLogado = visoesService.getDadosDoUsuarioLogado() + + const verificaSeUnidadeEstaEmSuporte = () => { + if (dadosUsuarioLogado) { + const unidadeSelecionada = dadosUsuarioLogado.unidades.find(obj => { + return obj.uuid === dadosUsuarioLogado.unidade_selecionada.uuid + }) + if (unidadeSelecionada && unidadeSelecionada.acesso_de_suporte){ + setUnidadeEstaEmSuporte(unidadeSelecionada.acesso_de_suporte) + } + } + } + + useEffect(() => { + verificaSeUnidadeEstaEmSuporte() + }, []); + + const handleEncerrarSuporte = () => { + setShowModalConfirmaEncerramentoSuporte(true) + } + + const [showModalConfirmaEncerramentoSuporte, setShowModalConfirmaEncerramentoSuporte] = useState(false); + const handleNaoConfirmaEncerramentoSuporte = useCallback(() => { + setShowModalConfirmaEncerramentoSuporte(false) + }, []); + const handleConfirmaEncerramentoSuporte = useCallback(() => { + encerrarAcessoSuporte(dadosUsuarioLogado.usuario_logado.login, dadosUsuarioLogado.unidade_selecionada.uuid) + .then((result) => { + setUnidadeEstaEmSuporte(false) + setShowModalConfirmaEncerramentoSuporte(false) + localStorage.removeItem('DADOS_USUARIO_LOGADO'); + authService.logout() + }) + .catch((erro) => { + console.error('Erro ao encerrar acesso de suporte.', erro) + }) + + }, []); + + return ( + <> + + { unidadeEstaEmSuporte && + barraMensagemCustom.BarraMensagemSucessLaranja(mensagemSuporte, "Encerrar suporte", handleEncerrarSuporte, true) + } +Saldo Reprogramado Capital
-{formataValor(data.novo_saldo_reprogramado_capital)}
-Saldo Reprogramado Custeio
-{formataValor(data.novo_saldo_reprogramado_custeio)}
-Saldo Reprogramado Livre
-{formataValor(data.novo_saldo_reprogramado_livre)}
-Não existem ajustes para serem exibidos
- } - > - ) -} -export default TabelaAcertosEmValoresReprogramados; \ No newline at end of file diff --git a/src/componentes/Globais/ExibeAcertosEmLancamentosEDocumentosPorConta/TabsAjustesEmValoresReprogramados.js b/src/componentes/Globais/ExibeAcertosEmLancamentosEDocumentosPorConta/TabsAjustesEmValoresReprogramados.js deleted file mode 100644 index 96d5dd58f..000000000 --- a/src/componentes/Globais/ExibeAcertosEmLancamentosEDocumentosPorConta/TabsAjustesEmValoresReprogramados.js +++ /dev/null @@ -1,39 +0,0 @@ -import React, {Fragment, memo} from "react"; - -const TabsAjustesEmValoresReprogramados = ({contasAssociacao, carregarAjustesValoresReprogramados, children, toggleBtnEscolheContaValoresReprogramados, clickBtnEscolheContaValoresReprogramados}) => { - - return( - <> - - - - > - ) -} -export default memo(TabsAjustesEmValoresReprogramados) \ No newline at end of file diff --git a/src/componentes/Globais/ExibeAcertosEmLancamentosEDocumentosPorConta/index.js b/src/componentes/Globais/ExibeAcertosEmLancamentosEDocumentosPorConta/index.js index d38570370..981ec8571 100644 --- a/src/componentes/Globais/ExibeAcertosEmLancamentosEDocumentosPorConta/index.js +++ b/src/componentes/Globais/ExibeAcertosEmLancamentosEDocumentosPorConta/index.js @@ -3,14 +3,11 @@ import {useHistory} from "react-router-dom"; import useValorTemplate from "../../../hooks/dres/PrestacaoDeContas/ConferenciaDeLancamentos/useValorTemplate"; import useDataTemplate from "../../../hooks/Globais/useDataTemplate"; import useNumeroDocumentoTemplate from "../../../hooks/dres/PrestacaoDeContas/ConferenciaDeLancamentos/useNumeroDocumentoTemplate"; -import {getContasDaAssociacao, getSaldosIniciasAjustes, getDocumentosAjustes, getLancamentosAjustes, getTiposDeAcertoLancamentos, getTemReajustes, getExtratosBancariosAjustes, getTemAjustesExtratos} from "../../../services/dres/PrestacaoDeContas.service"; +import {getContasDaAssociacao, getDocumentosAjustes, getLancamentosAjustes, getTiposDeAcertoLancamentos, getExtratosBancariosAjustes, getTemAjustesExtratos} from "../../../services/dres/PrestacaoDeContas.service"; import {TabelaAcertosLancamentos} from "./TabelaAcertosLancamentos"; import TabsAcertosEmLancamentosPorConta from "./TabsAcertosEmLancamentosPorConta"; import Loading from "../../../utils/Loading"; -import TabsAjustesEmValoresReprogramados from "./TabsAjustesEmValoresReprogramados" -import TabelaAcertosEmValoresReprogramados from "./TabelaAcertosEmValoresReprogramados"; - // Redux import {useDispatch} from "react-redux"; import {addDetalharAcertos, limparDetalharAcertos} from "../../../store/reducers/componentes/dres/PrestacaoDeContas/DetalhePrestacaoDeContas/ConferenciaDeLancamentos/DetalharAcertos/actions" @@ -46,14 +43,11 @@ const ExibeAcertosEmLancamentosEDocumentosPorConta = ({exibeBtnIrParaPaginaDeAce filtrar_por_tipo_de_ajuste: '', } - const [exibeAcertosNosSaldos, setExibeAcertosNosSaldos] = useState(false); const [exibeAcertosNosExtratos, setExibeAcertosNosExtratos] = useState(true); - const [saldosIniciasAjustes, setSaldosIniciaisAjustes] = useState([]); const [extratosBancariosAjustes, setExtratosBancariosAjustes] = useState(null); const [lancamentosAjustes, setLancamentosAjustes] = useState([]) const [lancamentosDocumentos, setLancamentosDocumentos] = useState([]) const [contasAssociacao, setContasAssociacao] = useState([]) - const [loadingSaldosIniciais, setLoadingSaldosIniciais] = useState(true) const [loadingExtratosBancarios, setLoadingExtratosBancarios] = useState(true) const [loadingLancamentos, setLoadingLancamentos] = useState(true) const [loadingDocumentos, setLoadingDocumentos] = useState(true) @@ -63,7 +57,6 @@ const ExibeAcertosEmLancamentosEDocumentosPorConta = ({exibeBtnIrParaPaginaDeAce const [contaUuid, setContaUuid] = useState('') const [listaTiposDeAcertoLancamentos, setListaTiposDeAcertoLancamentos] = useState([]) const [clickBtnEscolheConta, setClickBtnEscolheConta] = useState({0:true}); - const [clickBtnEscolheContaValoresReprogramados, setClickBtnEscolheContaValoresReprogramados] = useState({0:true}); const [clickBtnEscolheContaExtratosBancarios, setClickBtnEscolheContaExtratosBancarios] = useState({0:true}); const toggleBtnEscolheConta = (id) => { @@ -74,14 +67,6 @@ const ExibeAcertosEmLancamentosEDocumentosPorConta = ({exibeBtnIrParaPaginaDeAce } }; - const toggleBtnEscolheContaValoresReprogramados = (id) => { - if (id !== Object.keys(clickBtnEscolheContaValoresReprogramados)[0]){ - setClickBtnEscolheContaValoresReprogramados({ - [id]: !clickBtnEscolheContaValoresReprogramados[id] - }); - } - }; - const toggleBtnEscolheContaExtratosBancarios = (id) => { if (id !== Object.keys(clickBtnEscolheContaExtratosBancarios)[0]){ setClickBtnEscolheContaExtratosBancarios({ @@ -101,26 +86,6 @@ const ExibeAcertosEmLancamentosEDocumentosPorConta = ({exibeBtnIrParaPaginaDeAce carregaDadosDasContasDaAssociacao() }, [carregaDadosDasContasDaAssociacao, analiseAtualUuid]) - - const consultaReajustes = useCallback(async () => { - /* - Essa função é necessária para verificar se a algum ajuste nessa analise, independente da conta, - o retorno da API irá determinar se o bloco "Acertos nos saldos iniciais reprogramados" - deve ser exibido - */ - - setExibeAcertosNosSaldos(false); - let tem_reajustes = await getTemReajustes(analiseAtualUuid); - - if(tem_reajustes && tem_reajustes.length > 0){ - setExibeAcertosNosSaldos(true); - } - else{ - setExibeAcertosNosSaldos(false); - } - - }, [analiseAtualUuid]) - const consultaSeTemAjustesExtratos = useCallback(async () => { /* Essa função é necessária para verificar se a algum ajuste de extrato nessa analise, independente da conta, @@ -140,14 +105,6 @@ const ExibeAcertosEmLancamentosEDocumentosPorConta = ({exibeBtnIrParaPaginaDeAce }, [analiseAtualUuid]) - const carregarAjustesValoresReprogramados = useCallback(async (conta_uuid) => { - setContaUuid(conta_uuid); - setLoadingSaldosIniciais(true); - let saldos_iniciais_ajustes = await getSaldosIniciasAjustes(analiseAtualUuid, conta_uuid); - setSaldosIniciaisAjustes(saldos_iniciais_ajustes) - setLoadingSaldosIniciais(false); - }, [analiseAtualUuid]) - const carregarAjustesExtratosBancarios = useCallback(async (conta_uuid) => { setContaUuid(conta_uuid); setLoadingExtratosBancarios(true); @@ -172,18 +129,14 @@ const ExibeAcertosEmLancamentosEDocumentosPorConta = ({exibeBtnIrParaPaginaDeAce useEffect(() => { if (contasAssociacao && contasAssociacao.length > 0){ - // TODO Rever o método consultaReajustes. Repete a consulta à API feita por carregarAjustesValoresReprogramados - consultaReajustes(); // TODO Rever os métodos consultaSeTemAjustesExtratos. Repete a consulta da API feira por carregarAjustesExtratosBancarios consultaSeTemAjustesExtratos(); - carregarAjustesValoresReprogramados(contasAssociacao[0].uuid); carregarAjustesExtratosBancarios(contasAssociacao[0].uuid); carregaAcertosLancamentos(contasAssociacao[0].uuid) carregaAcertosDocumentos(contasAssociacao[0].uuid) setClickBtnEscolheConta({0: true}) - setClickBtnEscolheContaValoresReprogramados({0: true}) } - }, [contasAssociacao, consultaReajustes, carregarAjustesValoresReprogramados, carregaAcertosLancamentos, carregaAcertosDocumentos, carregarAjustesExtratosBancarios]) + }, [contasAssociacao, carregaAcertosLancamentos, carregaAcertosDocumentos, carregarAjustesExtratosBancarios]) useEffect(() => { @@ -314,35 +267,6 @@ const ExibeAcertosEmLancamentosEDocumentosPorConta = ({exibeBtnIrParaPaginaDeAce return( <> - { exibeAcertosNosSaldos && - <> -{unidade.tipo_unidade} {unidade.nome}
+
+ {unidade.acesso_de_suporte &&
+ <>
+
+
Não podem conter caracteres acentuados
Um número ou símbolo (caracter especial)
Deve ter no mínimo 8 e no máximo 12 caracteres
+Deve ser diferente das 5 anteriores
{localStorage.getItem("medidorSenha") < 7 &&Sua nova senha deve conter letras maiúsculas, minúsculas, números e símbolos. Por favor, digite outra senha
diff --git a/src/componentes/Globais/ModalBootstrap/index.js b/src/componentes/Globais/ModalBootstrap/index.js index 76a184cfb..78c40aad0 100644 --- a/src/componentes/Globais/ModalBootstrap/index.js +++ b/src/componentes/Globais/ModalBootstrap/index.js @@ -1,6 +1,9 @@ -import React, {Fragment} from "react"; +import React, {Fragment, useEffect, useState} from "react"; +import Loading from "../../../utils/Loading"; +import {getTagInformacao} from "../../../services/escolas/Despesas.service"; import {Button, Modal} from "react-bootstrap"; import "./modal-bootstrap.scss" +import { useCallback } from "react"; export const ModalBootstrap = (propriedades) =>{ return ( @@ -368,4 +371,92 @@ export const ModalBootstrapTipoRecursoNaoAceito = (propriedades) =>{ ) -}; \ No newline at end of file +}; + +export const ModalBootstrapConfirmarPublicacao = (propriedades) =>{ + return ( +{tag.descricao}
+Deseja iniciar suporte para a unidade ${unidadeSuporteSelecionada.nome}?
Ao confirmar, você será direcionado para a página de acesso ao sistema e ao acessá-lo novamente você visualizará a unidade selecionada.
` + } + + return( +{statusValoresReprogramados.texto}
+{valoresReprogramados.associacao.nome}
+Código Eol: {valoresReprogramados.associacao.codigo_eol}
+Período: {textoPeriodo()}
+