public IActionResult Cadastrar( List <IFormFile> files, [FromForm] RegistrarProdutoCommand command ) { if (files == null) { AdicionarErro("A imagem não foi fornecida"); return(RespostaPersonalizada()); } var arquivoPostado = files.FirstOrDefault(); // TODO: Definir 2 MB como tamanho maximo. Validar extenção do arquivo var arquivoInvalido = arquivoPostado.Length <= 0; if (arquivoInvalido) { return(StatusCode(417, new { Mensagem = "Arquivo ou imagem inválida" })); } // requisitos.Extencao = ObterExtencaoArquivo(arquivoPostado); // var resultado = _servicosDeFotos.LidarCom(requisitos); // if (!resultado.Sucesso) // return BadRequest(resultado); // // GravarFotoNoDiretorio(resultado, arquivoPostado); // // return Ok(resultado); return(RespostaPersonalizada()); }
public IActionResult Registrar([FromServices] ProdutoHandler handler, [FromBody] RegistrarProdutoCommand command) { var result = handler.Handle(command); return(result.Success ? (IActionResult)Created(nameof(ObterProduto), result) : UnprocessableEntity(result)); }