Ejemplo n.º 1
0
        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)));
        }
Ejemplo n.º 2
0
        /// <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));
            }
        }