Skip to content

Commit

Permalink
Merge pull request #2425 from prefeiturasp/feature/121998-parametriza…
Browse files Browse the repository at this point in the history
…cao-repasses-modal-arquivo

feat(121998): Modifica verificação do conteúdo do arquivo na edição
  • Loading branch information
mdiori authored May 24, 2024
2 parents a10f3b2 + 0146f7e commit eaaa4bf
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ const ModalFormArquivosDeCarga = ({show, stateFormModal, handleClose, handleSubm
<>
<Formik
initialValues={stateFormModal}
validationSchema={YupSignupSchemaArquivosDeCarga(arquivoRequerPeriodo, arquivoRequerTipoDeConta)}
validationSchema={YupSignupSchemaArquivosDeCarga(arquivoRequerPeriodo, arquivoRequerTipoDeConta, stateFormModal.operacao === 'edit')}
validateOnBlur={true}
enableReinitialize={true}
onSubmit={handleSubmitModalForm}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import * as yup from "yup";

export const YupSignupSchemaArquivosDeCarga = (verificaSeArquivoRequerPeriodo, arquivoRequerTipoDeConta) => {
export const YupSignupSchemaArquivosDeCarga = (verificaSeArquivoRequerPeriodo, arquivoRequerTipoDeConta, edicao) => {
return yup.object().shape({
identificador: yup.string().required("Identificador é obrigatório"),
valida_conteudo: yup.boolean(),
conteudo: yup.mixed()
conteudo: edicao === 'edit' ? '' : yup.mixed()
.when('valida_conteudo', {
is: true,
then: yup.mixed().required("Arquivo de Carga é obrigatório")
Expand Down
24 changes: 4 additions & 20 deletions src/componentes/Globais/ArquivosDeCarga/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -235,15 +235,6 @@ const ArquivosDeCarga = () => {
const [stateFormModal, setStateFormModal] = useState(initialStateFormModal);
const [showModalConfirmDeleteArquivosDeCarga, setShowModalConfirmDeleteArquivosDeCarga] = useState(false);

const fetchFileFromUrl = async (url) => {
const response = await fetch(url);
if (!response.ok) {
throw new Error('Erro ao tentar resgatar arquivo.');
}
const blob = await response.blob();
return new File([blob], url.split('/').pop(), { type: blob.type });
};

const handleClickEditarArquivos = useCallback(async (rowData) => {
setShowModalForm(true);

Expand All @@ -254,7 +245,7 @@ const ArquivosDeCarga = () => {
tipo_delimitador: rowData.tipo_delimitador,
ultima_execucao: rowData.ultima_execucao ? moment(rowData.ultima_execucao).format('DD/MM/YYYY') : '-',
status: rowData.status,
valida_conteudo: true,
valida_conteudo: false,
uuid: rowData.uuid,
id: rowData.id,
log: rowData.log,
Expand All @@ -263,17 +254,10 @@ const ArquivosDeCarga = () => {
tipo_de_conta: rowData.tipo_de_conta,
};

try {
if (rowData.conteudo) {
const file = await fetchFileFromUrl(rowData.conteudo);
const url = rowData.conteudo;
const nome_arquivo = url.split('/').pop();
stateFormModalValues.nome_arquivo = nome_arquivo;

stateFormModalValues.nome_arquivo = file.name;
stateFormModalValues.conteudo = file;
}
} catch (error) {
console.error('Error fetching file:', error);
}

setStateFormModal(stateFormModalValues);
}, [stateFormModal]);

Expand Down

0 comments on commit eaaa4bf

Please sign in to comment.