public async Task <Response> CreateFichero(ViewModelFacturaViatico file) { Response response = new Response(); try { response = await apiServicio.InsertarAsync(file, new Uri(WebApp.BaseAddress), "api/FacturaViatico/InsertarFacturas"); if (response.IsSuccess) { return(new Response { IsSuccess = true, Message = response.Message, }); } ViewData["Error"] = response.Message; return(new Response { IsSuccess = false, Message = response.Message, }); } catch (Exception ex) { return(new Response { IsSuccess = false, Message = response.Message, }); } }
public async Task <Response> InsertarFacturas([FromBody] ViewModelFacturaViatico viewModelFacturaViatico) { try { var documenttransfer = new FacturaViatico { NumeroFactura = viewModelFacturaViatico.NumeroFactura, IdSolicitudViatico = viewModelFacturaViatico.IdSolicitudViatico, IdItemViatico = viewModelFacturaViatico.IdItemViatico, FechaFactura = viewModelFacturaViatico.FechaFactura, ValorTotalFactura = viewModelFacturaViatico.ValorTotalFactura, Observaciones = viewModelFacturaViatico.Observaciones, Url = viewModelFacturaViatico.Url, }; var respuesta = Existe(documenttransfer); if (!respuesta.IsSuccess) { db.FacturaViatico.Add(documenttransfer); await db.SaveChangesAsync(); var id = documenttransfer.IdFacturaViatico; await uploadFileService.UploadFile(viewModelFacturaViatico.Fichero, "FacturaViaticos", Convert.ToString(id), ".pdf"); var seleccionado = db.FacturaViatico.Find(documenttransfer.IdFacturaViatico); seleccionado.Url = string.Format("{0}/{1}.{2}", "FacturaViaticos", Convert.ToString(id), "pdf"); db.FacturaViatico.Update(seleccionado); db.SaveChanges(); return(new Response { IsSuccess = true, Message = Mensaje.Satisfactorio }); } return(new Response { IsSuccess = false, Message = Mensaje.ExisteRegistro }); } catch (Exception ex) { return(new Response { IsSuccess = false, Message = Mensaje.Error, }); } }
public async Task <FileResult> Download(string id, int IdSolicitudViatico, int IdItinerarioViatico) { var id2 = new ViewModelFacturaViatico { IdFacturaViatico = Convert.ToInt32(id), }; var response = await apiServicio.ObtenerElementoAsync(id2, new Uri(WebApp.BaseAddress), "api/FacturaViatico/GetFile"); var m = JsonConvert.DeserializeObject <ViewModelFacturaViatico>(response.Resultado.ToString()); var fileName = $"{ response.Message}.pdf"; return(File(m.Fichero, "application/pdf", fileName)); }
public async Task <IActionResult> Create(ViewModelFacturaViatico viewModelFacturaViatico, List <IFormFile> files) { Response response = new Response(); try { if (files.Count > 0) { byte[] data; using (var br = new BinaryReader(files[0].OpenReadStream())) data = br.ReadBytes((int)files[0].OpenReadStream().Length); var documenttransfer = new ViewModelFacturaViatico { NumeroFactura = viewModelFacturaViatico.NumeroFactura, IdItinerarioViatico = viewModelFacturaViatico.IdItinerarioViatico, FechaFactura = viewModelFacturaViatico.FechaFactura, IdItemViatico = viewModelFacturaViatico.IdItemViatico, ValorTotalFactura = viewModelFacturaViatico.ValorTotalFactura, Observaciones = viewModelFacturaViatico.Observaciones, Url = viewModelFacturaViatico.Url, IdSolicitudViatico = viewModelFacturaViatico.IdSolicitudViatico, Fichero = data, }; var respuesta = await CreateFichero(documenttransfer); if (respuesta.IsSuccess) { return(RedirectToAction("Informe", "ItinerarioViatico", new { IdSolicitudViatico = viewModelFacturaViatico.IdSolicitudViatico, IdItinerarioViatico = viewModelFacturaViatico.IdItinerarioViatico })); } } ViewData["ItemViatico"] = new SelectList(await apiServicio.Listar <ItemViatico>(new Uri(WebApp.BaseAddress), "api/ItemViaticos/ListarItemViaticos"), "IdItemViatico", "Descripcion"); ViewData["Error"] = response.Message; return(View(viewModelFacturaViatico)); } catch (Exception ex) { return(BadRequest()); } }
public async Task <Response> GetFile([FromBody] ViewModelFacturaViatico viewModelFacturaViatico) { try { var respuestaFile = uploadFileService.GetFile("FacturaViaticos", Convert.ToString(viewModelFacturaViatico.IdFacturaViatico), ".pdf"); var dato = await db.FacturaViatico.Where(x => x.IdFacturaViatico == viewModelFacturaViatico.IdFacturaViatico).FirstOrDefaultAsync(); return(new Response { IsSuccess = true, Message = "Factura #" + dato.IdFacturaViatico + ", archivo adjunto", Resultado = respuestaFile, }); } catch (Exception ex) { return(new Response { IsSuccess = false, Message = Mensaje.Error, }); } }