public async Task <IActionResult> CadastrarLancamentoAnexo(ManterLancamentoAnexo entrada) { if (entrada == null) { return(new FeedbackResult(new Feedback(TipoFeedback.Atencao, "As informações do detalhe do lançamento não foram preenchidas.", new[] { "Verifique se todas as informações do detalhe do lançamento foram preenchidas." }, TipoAcaoAoOcultarFeedback.Ocultar))); } var saida = await _proxy.CadastrarLancamentoAnexo(entrada); if (!saida.Sucesso) { return(new FeedbackResult(new Feedback(TipoFeedback.Erro, "Não foi possível cadastrar o anexo do lançamento.", saida.Mensagens))); } return(new FeedbackResult(new Feedback(TipoFeedback.Sucesso, saida.Mensagens.First(), tipoAcao: TipoAcaoAoOcultarFeedback.OcultarMoldais))); }
/// <summary> /// Cadastra um novo anexo para o lançamento /// </summary> public async Task <Saida <LancamentoAnexo> > CadastrarLancamentoAnexo(ManterLancamentoAnexo entrada) { byte[] data; using (var br = new BinaryReader(entrada.Arquivo.OpenReadStream())) data = br.ReadBytes((int)entrada.Arquivo.OpenReadStream().Length); var bytes = new ByteArrayContent(data); using (var multiContent = new MultipartFormDataContent { { bytes, nameof(entrada.Arquivo), entrada.Arquivo.FileName }, { new StringContent(entrada.Descricao), nameof(entrada.Descricao) }, { new StringContent(entrada.IdLancamento.ToString()), nameof(entrada.IdLancamento) }, { new StringContent(entrada.NomeArquivo), nameof(entrada.NomeArquivo) } }) { return(await _httpClientHelper.FazerRequest <Saida <LancamentoAnexo> >($"lancamento/cadastrar-anexo?idLancamento={entrada.IdLancamento}", MetodoHttp.POST, multiContent)); } }