Skip to content

Commit

Permalink
Merge pull request #2309 from prefeiturasp/release/9.2.0
Browse files Browse the repository at this point in the history
Release/9.2.0
  • Loading branch information
alcfernandes authored Apr 3, 2024
2 parents 6b0ba75 + 2d1c57e commit 283178a
Show file tree
Hide file tree
Showing 21 changed files with 384 additions and 137 deletions.
2 changes: 1 addition & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

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": "9.1.0",
"version": "9.2.0",
"private": true,
"dependencies": {
"@dnd-kit/core": "^6.1.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ export const FormFiltrosDownloads = ({handleSubmitFormFiltros, stateFormFiltros,
<form onSubmit={handleSubmitFormFiltros}>
<div className="form-row align-items-center">
<div className="form-group col">
<label htmlFor="filtro_por_identificador">Filtrar por identificador</label>
<label htmlFor="filtro_por_identificador">Filtrar por identificador/informações</label>
<input
id="filtro_por_identificador"
name="filtro_por_identificador"
Expand Down
6 changes: 6 additions & 0 deletions src/componentes/Globais/CentralDeDownloads/TabelaDownloads.js
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,12 @@ export const TabelaDownloads = ({listaArquivos, downloadArquivo, excluirArquivo,
style={{width: '20em'}}
className="align-middle text-center borda-coluna"
/>
<Column
field="informacoes"
header="Informações"
style={{width: '20em'}}
className="align-middle text-center borda-coluna"
/>
<Column
field="status"
header="Status"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React, {useState, useEffect} from "react";
import Spinner from "../../../assets/img/spinner.gif"
import {gerarPreviaRelatorioAposAcertos, verificarStatusGeracaoAposAcertos, downloadDocumentPdfAposAcertos, regerarRelatorioAposAcertos} from '../../../services/escolas/PrestacaoDeContas.service'
import {gerarPreviaRelatorioAposAcertos, verificarStatusGeracaoAposAcertos, downloadDocumentPdfAposAcertos, regerarRelatorioAposAcertos, regerarPreviaRelatorioAposAcertos} from '../../../services/escolas/PrestacaoDeContas.service'
import { getAnalisePrestacaoConta, getAnalisesDePcDevolvidas } from "../../../services/dres/PrestacaoDeContas.service";
import {FontAwesomeIcon} from "@fortawesome/react-fontawesome";
import {faDownload} from "@fortawesome/free-solid-svg-icons";
Expand Down Expand Up @@ -95,8 +95,12 @@ export const RelatorioAposAcertos = ({prestacaoDeContasUuid, prestacaoDeContas,
setMensagem("Relatório sendo gerado...");
setDisableBtnRegerar(true);
setDisableBtnDownload(true);
if (prestacaoDeContas.status === 'DEVOLVIDA'){
await regerarPreviaRelatorioAposAcertos(analiseAtualUuid);
} else {
await regerarRelatorioAposAcertos(analiseAtualUuid);

await regerarRelatorioAposAcertos(analiseAtualUuid);
}
}

const downloadDocumentoPrevia = async () => {
Expand Down
23 changes: 22 additions & 1 deletion src/componentes/Globais/ExtracaoDados/Cards.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ export const cards = [
descricao: 'Arquivo com informações do status das prestações de contas por período e unidade.',
tags: ['CSV'],
endpoint: '/api/exportacoes-dados/status-prestacoes-contas/',
visao: ['SME']
visao: ['DRE', 'SME']
},
{
titulo: 'Prestações de contas: Devolução ao tesouro',
Expand Down Expand Up @@ -81,5 +81,26 @@ export const cards = [
tags: ['CSV'],
endpoint: '/api/exportacoes-dados/contas-associacao/',
visao: ['SME']
},
{
titulo: 'Repasses',
descricao: 'Arquivo com dados dos repasses pendentes e realizados para as associações.',
tags: ['CSV'],
endpoint: '/api/exportacoes-dados/repasses/',
visao: ['SME']
},
{
titulo: 'Membros da APM',
descricao: 'Arquivo com dados dos membros das associações.',
tags: ['CSV'],
endpoint: '/api/exportacoes-dados/dados_membros_apm/',
visao: ['SME']
},
{
titulo: 'Processos SEI de regularidade',
descricao: 'Arquivo com dados dos processos SEI de regularidade das associações.',
tags: ['CSV'],
endpoint: '/api/exportacoes-dados/processos-sei-regularidade/',
visao: ['SME']
},
]
4 changes: 3 additions & 1 deletion src/componentes/Globais/ExtracaoDados/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import locale from 'antd/es/date-picker/locale/pt_BR';
import moment from "moment";
import './extracao-dados.scss'
import { visoesService } from '../../../services/visoes.service';
import ReactTooltip from "react-tooltip";

export const ExtracaoDados = (props) => {
const visaoSelecionada = visoesService.getItemUsuarioLogado('visao_selecionada.nome');
Expand All @@ -35,7 +36,8 @@ export const ExtracaoDados = (props) => {
<p className="extracao-title-filter">Filtrar por data</p>
<div className="extracao-filter">
<Space className='extracao-space' direction='vertical'>
<span>Selecione o período de criação (vazio para todos)</span>
<span data-tip="As datas informadas correspondem a data de criação do registro." data-for="tooltip-selecione-periodo-extracao">Selecione o período de criação (vazio para todos)</span>
<ReactTooltip place="right" id="tooltip-selecione-periodo-extracao" html={true}/>
<DatePicker.RangePicker
locale={locale}
format={'DD/MM/YYYY'}
Expand Down
98 changes: 51 additions & 47 deletions src/componentes/Globais/ModalAntDesign/modalAlterarSEI.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,54 +3,58 @@ import {Button, Modal} from "react-bootstrap";
import "./modal-antdesign.scss"

export const ModalAlterarSEI = (propriedades) => {
return(
<>
<Modal centered
show={
propriedades.show
}
onHide={
propriedades.onHide
}>
<Modal.Header>
<Modal.Title>{
propriedades.titulo
}</Modal.Title>
</Modal.Header>
<Modal.Body> {
<>
<p>
<strong>O processo SEI foi alterado. O que você deseja fazer?</strong>
</p>
return (
<>
<Modal centered
show={
propriedades.show
}
onHide={
propriedades.onHide
}>
<Modal.Header>
<Modal.Title>{
propriedades.titulo
}</Modal.Title>
</Modal.Header>
<Modal.Body> {
<>
<p>
<strong>O processo SEI foi alterado. O que você deseja fazer?</strong>
</p>

<div className="d-flex justify-content-center mt-3">
<Button className="w-100" variant="success" onClick={() => {
propriedades.receberPrestacaoDeContas()
}}>Cancelar a alteração e receber a PC</Button>
</div>
<div className="d-flex justify-content-center mt-3">
<Button
className="w-100"
variant="success"
onClick={() => {propriedades.receberPrestacaoDeContas()
}}
>
Manter o número do processo SEI existente
</Button>
</div>

<div className="d-flex justify-content-center mt-3">
<Button className="w-100" variant="success" onClick={() => {
propriedades.receberPrestacaoDeContas('editar')
}}>Alterar o número do processo SEI existente</Button>
</div>

<div className="d-flex justify-content-center mt-3">
<Button className="w-100" variant="success" onClick={() => {
propriedades.receberPrestacaoDeContas('incluir')
}}>Incluir um novo número de processo SEI</Button>
</div>
</>
} </Modal.Body>
<Modal.Footer>
<Button
className={propriedades.primeiroBotaoClassName}
onClick={propriedades.primeiroBotaoOnClick}
>
{propriedades.primeiroBotaoTexto}
</Button>
</Modal.Footer>
</Modal>
</>
<div className="d-flex justify-content-center mt-3">
<Button
className="w-100"
variant="success"
onClick={() => {propriedades.receberPrestacaoDeContas('editar')
}}
>
Atualizar o número do processo SEI existente
</Button>
</div>
</>
} </Modal.Body>
<Modal.Footer>
<Button
className={propriedades.primeiroBotaoClassName}
onClick={propriedades.primeiroBotaoOnClick}
>
{propriedades.primeiroBotaoTexto}
</Button>
</Modal.Footer>
</Modal>
</>
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,34 +3,36 @@ import {Formik} from "formik";
import {ModalBootstrapFormMembros} from "../../../../Globais/ModalBootstrap";
import React from "react";
import * as yup from "yup";
import {processoIncorporacaoMask} from "../../../../../utils/ValidacoesAdicionaisFormularios";
import MaskedInput from "react-text-mask";
import {visoesService} from "../../../../../services/visoes.service";
import {Select} from "antd";

export const YupSignupSchemaProcesso = yup.object().shape({
numero_processo: yup.string().required("Campo Número do processo é obrigatório"),
ano: yup.string().required("Campo ano é obrigatório"),
periodos: yup.string().nullable()
.test('test-name', 'Campo períodos é obrigatório',
function (value) {
if(!visoesService.featureFlagAtiva('periodos-processo-sei')){
return true
}else {
return value;
}
}),
});

export const ProcessoSeiPrestacaoDeContaForm = ({show, handleClose, onSubmit, handleChange, handleChangeSelectPeriodos, validateForm, initialValues, periodosDisponiveis}) => {

export const ProcessoSeiPrestacaoDeContaForm = ({show, handleClose, onSubmit, handleChange, validateForm, initialValues}) => {
const { Option } = Select;

const anoMask = (value) => {
const anoMask = () => {
// 0000
let ano = value.replace(/[^\d]+/g, "");

let mask = [/\d/, /\d/, /\d/, /\d/]

return mask
return [/\d/, /\d/, /\d/, /\d/]
}

const processoSeiMask = (value) => {
const processoSeiMask = () => {
// 0000.0000/0000000-0
let processo = value.replace(/[^\d]+/g, "");

let mask = [/\d/, /\d/, /\d/, /\d/, '.', /\d/, /\d/, /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, '-', /\d/]

return mask
return [/\d/, /\d/, /\d/, /\d/, '.', /\d/, /\d/, /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, '-', /\d/]
}

const bodyTextarea = () => {
Expand All @@ -47,17 +49,17 @@ export const ProcessoSeiPrestacaoDeContaForm = ({show, handleClose, onSubmit, ha
>
{props => {
const {
errors,
values,
setFieldValue,
} = props;
return (
<form method="POST" id="membrosForm" onSubmit={props.handleSubmit}>

<div className="row">
<div className='col-12'>
<p>* Preenchimento obrigatório</p>
</div>
<div className="col-12 col-md-6">
<div className="form-group">
<label htmlFor="cargo_associacao">Número do processo SEI</label>
<label htmlFor="cargo_associacao">* Número do processo SEI</label>
<MaskedInput
mask={(valor) => processoSeiMask(valor)}
onChange={(e) => {
Expand All @@ -77,7 +79,7 @@ export const ProcessoSeiPrestacaoDeContaForm = ({show, handleClose, onSubmit, ha

<div className="col-12 col-md-6">
<div className="form-group">
<label htmlFor="cargo_associacao">Ano</label>
<label htmlFor="cargo_associacao">* Ano</label>
<MaskedInput
mask={(valor) => anoMask(valor)}
onChange={(e) => {
Expand All @@ -89,20 +91,57 @@ export const ProcessoSeiPrestacaoDeContaForm = ({show, handleClose, onSubmit, ha
className="form-control"
placeholder="Ano do processo"
value={props.values.ano ? props.values.ano : ""}
disabled={initialValues.uuid ? true : false}
disabled={!!initialValues.uuid}
/>
{props.errors.ano &&
<span className="span_erro text-danger mt-1"> {props.errors.ano}</span>}
</div>
</div>

{visoesService.featureFlagAtiva('periodos-processo-sei') &&
<>
<div className="col-12">
<div className="form-group">
<label htmlFor="periodos">* Períodos</label>
<Select
mode="multiple"
allowClear
style={{width: '100%'}}
placeholder="Períodos"
name="periodos"
id="periodos"
value={props.values.periodos}
onChange={handleChangeSelectPeriodos}
className='multiselect-lista-valores-reprogramados'
disabled={!props.values.ano || props.values.ano.replaceAll("_","").length < 4}
>
{periodosDisponiveis && periodosDisponiveis.length > 0 && periodosDisponiveis.map(item => (
<Option key={item.uuid} value={item.uuid}>{item.referencia}</Option>
))}
</Select>
{props.errors.periodos && <span className="span_erro text-danger mt-1"> {props.errors.periodos}</span>}
</div>
</div>
</>
}


</div>
<div className="d-flex justify-content-end pb-3 mt-3">
<button onClick={() => handleClose()} type="button"
className="btn btn btn-outline-success mt-2 mr-2">Cancelar
<button
onClick={() => handleClose()}
type="button"
className="btn btn btn-outline-success mt-2 mr-2"
>
Cancelar
</button>
<button
disabled={!visoesService.getPermissoes(['change_processo_sei'])}
type="submit"
className="btn btn-success mt-2"
>
Salvar
</button>
<button disabled={!visoesService.getPermissoes(['change_processo_sei'])} type="submit" className="btn btn-success mt-2">Salvar</button>
</div>
</form>
);
Expand Down
Loading

0 comments on commit 283178a

Please sign in to comment.