Skip to content

Commit

Permalink
Merge pull request #1186 from prefeiturasp/pre-prod
Browse files Browse the repository at this point in the history
Release 5
  • Loading branch information
alcfernandes authored Aug 29, 2022
2 parents e7ad120 + fdbb821 commit ebd70f2
Show file tree
Hide file tree
Showing 123 changed files with 4,764 additions and 2,867 deletions.
27 changes: 26 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,35 @@ Front da aplicação _SIG.Escola_ da Secretaria de Educação da cidade de São

License: MIT

Versão: 1.32.0
Versão: 1.33.0

## Release Notes

### 1.33.0 - 24/08/2022 - Entregas da Release 5 - (Sprints 43 a 47)
* UE > Na emissão da ata, agora a aplicação informa quais campos estão incompletos.
* UE > Novo fluxo de informação de valores reprogramados iniciais.
* DRE > Novo fluxo de aprovação de valores reprogramados iniciais.
* DRE > Novo processo de geração de relatórios consolidados, agora é possível gerações parciais.
* DRE > Após completar as gerações parciais de um relatório consolidado, é possível gerar uma versão unificada com todas as parciais.
* DRE > Relatório de Execução Físico-Financeira agora é único para todas as contas.
* DRE > Nova consulta em tela do relatório de Execução Físico-Financeira, agora em uma versão mais simplificada e com todas as contas em uma mesma tela.
* DRE > Ata de parecer técnico não exibe mais valores financeiros e agrupa as PCs apenas por status, não mais por conta.
* DRE > Melhorias na conferência de lançamentos do acompanhamento de PC: Tags de informações e novos filtros.
* DRE > Mudanças no layout da lauda.
* DRE > No acompanhamento de PCs, as PCs que constam em relatórios consolidados não podem mais voltar para análise.
* DRE > Nova funcionalidade de Acesso de Suporte às unidades educacionais.
* SME > Nova funcionalidade de Acesso de Suporte às diretorias e unidades educacionais.
* SME > Nova central de extração de dados.
* SME > Extração de dados de créditos.
* ADM > Ação a partir de comissões para definição da comissão de exame de contas.
* ADM > Novos filtros em tipos de acertos em lançamentos.
* ADM > Novos filtros em tipos de acertos em documentos.
* ADM > Registro de movimentações nos arquivos de análise de PCs para fins de auditoria.
* GLO > Formulário de login agora exibe informação sobre o critério de senha diferente das anteriores.
* GLO > A redefinição de Senha agora exibe informação sobre o critério de senha diferente das anteriores.
* GLO > Incluída a informação de hora de criação no rodapé de vários relatórios.
* GLO > 🐞 Correção de bugs.

### 1.32.0 - 01/06/2022 - Entregas da Release 4c - Sprint 42
* DRE > Exibição do período e remoção do histórico de devoluções em análise de PC
* DRE > Remoção do bloco "Cobrança da PC" e revisão do bloco "Comentários" em análise de PC
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "ptrf",
"version": "1.32.1",
"version": "1.33.0",
"private": true,
"dependencies": {
"@fortawesome/fontawesome-svg-core": "^1.2.27",
Expand Down
1 change: 1 addition & 0 deletions src/App.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ export const App = () => {
pathName.match(/\/visualizacao-da-ata-parecer-tecnico\/[a-zA-Z0-9]/) ||
pathName.match(/\/edicao-da-ata-parecer-tecnico\/[a-zA-Z0-9]/) ||
pathName.match(/\/dre-relatorio-consolidado-apuracao\/[a-zA-Z0-9]/) ||
pathName.match(/\/dre-relatorio-consolidado-em-tela\/[a-zA-Z0-9]/) ||
pathName.match(/\/dre-relatorio-consolidado-dados-das-ues\/[a-zA-Z0-9]/) ? (
<>
<Cabecalho/>
Expand Down
3 changes: 3 additions & 0 deletions src/assets/img/icone-menu-suporte-unidades.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions src/assets/img/icone-menu-valores-reprogramados.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import {ModalBootstrap} from "../ModalBootstrap";
import React from "react";

export const ModalConfirmaEncerramentoSuporte = (props) => {
return (
<ModalBootstrap
show={props.show}
onHide={()=>{}}
titulo={"Confirmação de encerramento de suporte"}
bodyText={"<p>Deseja encerrar o suporte a essa unidade?</p> <p>Ao confirmar, você será direcionado para a página de acesso ao sistema e ao acessá-lo, não visualizará mais essa unidade.</p>"}
primeiroBotaoTexto={"Não"}
primeiroBotaoCss={"outline-success"}
primeiroBotaoOnclick={props.handleNaoConfirmaEncerramentoSuporte}
segundoBotaoTexto={"Sim"}
segundoBotaoCss={"danger"}
segundoBotaoOnclick={props.handleConfirmaEncerramentoSuporte}
/>
)
};
65 changes: 65 additions & 0 deletions src/componentes/Globais/BarraMensagemUnidadeEmSuporte/index.js
Original file line number Diff line number Diff line change
@@ -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)
}
<section>
<ModalConfirmaEncerramentoSuporte
show={showModalConfirmaEncerramentoSuporte}
handleNaoConfirmaEncerramentoSuporte={handleNaoConfirmaEncerramentoSuporte}
handleConfirmaEncerramentoSuporte={handleConfirmaEncerramentoSuporte}
/>
</section>
</>
);
}
3 changes: 1 addition & 2 deletions src/componentes/Globais/Dashborard/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,7 @@ export const Dashboard = () => {
}, [uuid_associacao]);

const buscaPeriodos = useCallback(async () => {
// let periodos = await getPeriodosAteAgoraForaImplantacaoDaAssociacao(uuid_associacao);
let periodos = await getPeriodosDePrestacaoDeContasDaAssociacao();
let periodos = await getPeriodosAteAgoraForaImplantacaoDaAssociacao(uuid_associacao);
setSelectPeriodo(periodos[0].uuid)
setPeriodosAssociacao(periodos);
}, []);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ import {MedidorForcaSenha} from "../../MedidorForcaSenha";
import {TextoValidacaoSenha} from "../../MedidorForcaSenha/textoValidacaoSenha";
import {YupSignupSchemaRedefinirSenha} from "../../../../utils/ValidacoesAdicionaisFormularios";

export const FormRedefinirSenha = ({textoValidacaoDentroDoForm=null, redirectUrlSucesso, textoSucesso, cssAlertSucesso, textoErro, cssAlertErro}) => {
export const FormRedefinirSenha = ({textoValidacaoDentroDoForm=null, redirectUrlSucesso, textoSucesso, cssAlertSucesso, cssAlertErro}) => {

let {uuid} = useParams();

const [msgErro, setMsgErro] = useState(false);
const [msgErro, setMsgErro] = useState("");
const [senhaRedefinida, setSenhaRedefinida] = useState(false);

const initialValues = {
Expand All @@ -32,8 +32,8 @@ export const FormRedefinirSenha = ({textoValidacaoDentroDoForm=null, redirectUrl
setSenhaRedefinida(true);
setMsgErro(false)
}catch (e) {
console.log("Erro ao redefinir senha ", e);
setMsgErro(true)
console.log("Erro ao redefinir senha ==> ", e.response);
setMsgErro(e.response.data.detail)
}
};

Expand Down Expand Up @@ -107,7 +107,7 @@ export const FormRedefinirSenha = ({textoValidacaoDentroDoForm=null, redirectUrl

{msgErro &&
<div className={`alert ${cssAlertErro} lert-dismissible fade show text-center col-12`} role="alert">
{textoErro}
{msgErro}
<button type="button" className="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
Expand Down
41 changes: 41 additions & 0 deletions src/componentes/Globais/EscolheUnidade/FiltroDeUnidades.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
import React, {useState} from "react";

export const FiltroDeUnidades = ({stateFiltros, handleSubmitFiltros, limpaFiltros, filtroInicial}) =>{
const [filtros, setFiltros] = useState(stateFiltros);

const handleChangeFiltros = (name, value) => {
setFiltros({
...stateFiltros,
[name]: value
});
};

const handleLimpaFiltros = () => {
setFiltros(filtroInicial)
limpaFiltros()
}

return(
<>
<form onSubmit={(event) => handleSubmitFiltros(event, filtros)}>
<div className="row">
<div className="col-12 col-md-12">
<label htmlFor="unidade_escolar_ou_associacao">Buscar por nome ou código EOL da unidade</label>
<input
value={filtros.nome_ou_codigo}
onChange={(e) => handleChangeFiltros(e.target.name, e.target.value)}
name="nome_ou_codigo"
type="text"
className="form-control"
placeholder="Escreva o nome ou código que deseja procurar..."
/>
</div>
</div>
<div className="d-flex justify-content-end pb-3 mt-3">
<button onClick={()=>handleLimpaFiltros()} type="button" className="btn btn btn-outline-success mt-2 mr-2">Limpar</button>
<button type="bu" className="btn btn-success mt-2">Filtrar</button>
</div>
</form>
</>
);
};
79 changes: 79 additions & 0 deletions src/componentes/Globais/EscolheUnidade/ListaDeUnidades.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
import React from "react";
import {Column} from "primereact/column";
import {DataTable} from "primereact/datatable";
import {FontAwesomeIcon} from "@fortawesome/react-fontawesome";
import {faKey} from "@fortawesome/free-solid-svg-icons";

export const ListaDeUnidades = ({listaUnidades, rowsPerPage, acaoAoEscolherUnidade, textoAcaoEscolher}) => {

const unidadeEscolarTemplate = (rowData) => {
return (
<div>
{rowData['nome_com_tipo'] ? <strong>{rowData['nome_com_tipo']}</strong> : ''}
</div>
)
};

const handleAcaoEscolher = (rowData) => {
const unidadeSelecionada = {
uuid: rowData.uuid,
nome: rowData.nome,
codigo_eol: rowData.codigo_eol,
tipo_unidade: rowData.tipo_unidade,
associacao_nome: rowData.associacao_nome,
associacao_uuid: rowData.associacao_uuid,
visao: rowData.visao
}
acaoAoEscolherUnidade(unidadeSelecionada)
};

const acoesTemplate = (rowData) =>{
return (
<>

<button
onClick={()=>handleAcaoEscolher(rowData)}
className="btn btn-link link-green"
>
<FontAwesomeIcon
style={{fontSize: '15px', marginRight: "0"}}
icon={faKey}
/>
<span> {textoAcaoEscolher} </span>

</button>

</>
)
};

return (
<DataTable
value={listaUnidades}
className="mt-3"
paginator={listaUnidades.length > rowsPerPage}
rows={rowsPerPage}
paginatorTemplate="PrevPageLink PageLinks NextPageLink"
autoLayout={true}
>
<Column
field="codigo_eol"
header="Código Eol"
className="text-center"
style={{width: '15%'}}
/>
<Column
field="nome_com_tipo"
header="Unidade escolar"
body={unidadeEscolarTemplate}
/>
<Column
field="uuid"
header="Ação"
body={acoesTemplate}
className="text-center"
style={{width: '20%'}}
/>
</DataTable>
);
};
Loading

0 comments on commit ebd70f2

Please sign in to comment.