public IActionResult Deletar(decimal oidArquivoUpload) { try { var proxy = new ArquivoUploadProxy(); var arquivoUpload = proxy.BuscarPorChave(oidArquivoUpload); proxy.Deletar(arquivoUpload); return(Ok()); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public ActionResult ImportarCsv(decimal oidArquivoUpload, decimal oidContribuinte) { try { _oidArquivoUpload = oidArquivoUpload; _oidContribuinte = oidContribuinte; //Excluindo as críticas anteriores do arquivo na tabela EFD_IMPORTACAO_CRITICA. _proxyImportacaoCritica.ExcluirPorOidArquivoUpload(_oidArquivoUpload); var rowArquivoUpload = _proxyArquivoUpload.BuscarPorChave(_oidArquivoUpload); if (rowArquivoUpload == null) { throw new Exception("Arquivo não encontrado."); } if (rowArquivoUpload.IND_STATUS == DMN_STATUS_EFD_UPLOAD.PROCESSADO) { throw new Exception("O arquivo já foi processado."); } var linhas = System.IO.File.ReadAllLines(rowArquivoUpload.NOM_ARQUIVO_LOCAL, Encoding.Default); _quantidadeLinhas = linhas.Length - 1; if (_quantidadeLinhas == 0) { throw new Exception("O arquivo está em branco."); } _listImportacaoCritica = new List <ImportacaoCriticaEntidade>(); string indRegistro = linhas[1].Split(';')[0]; //Chamando o Layout correspondente ao arquivo switch (indRegistro) { case DMN_REGISTRO_EFD.R_1070: ImportarCsv1070(linhas); break; case DMN_REGISTRO_EFD.R_2010: ImportarCsv2010(linhas); break; default: break; } //Gravando as críticas na tabela EFD_IMPORTACAO_CRITICA. GravarImportacaoCritica(); if (_listImportacaoCritica.Count <= 0) { //Atualizando o status do arquivo na tabela EFD_ARQUIVO_UPLOAD. AtualizarArquivoUpload(rowArquivoUpload); } else { return(BadRequest("Arquivo não importado. Existe(m) erro(s) no layout do arquivo.")); } return(Ok()); } catch (Exception ex) { return(BadRequest(ex.Message)); } }