public async Task <IActionResult> AprobacionSolicitudViatico(int id) { var sol = new ViewModelsSolicitudViaticos { IdSolicitudViatico = id }; try { await CargarCombos(); if (id.ToString() != null) { var respuestaSolicitudViatico = await apiServicio.ObtenerElementoAsync1 <ViewModelsSolicitudViaticos>(sol, new Uri(WebApp.BaseAddress), "api/SolicitudViaticos/ObtenerSolicitudesViaticosporId"); return(View(respuestaSolicitudViatico)); } return(BadRequest()); } catch (Exception) { return(BadRequest()); } }
public async Task <IActionResult> AprobacionSolicitudViatico(ViewModelsSolicitudViaticos viewModelsSolicitudViaticos) { try { var VerificarPresupuesto = await apiServicio.ObtenerElementoAsync1 <Response>(viewModelsSolicitudViaticos, new Uri(WebApp.BaseAddress), "api/Presupuesto/ObtenerPresupuesto"); if (VerificarPresupuesto.IsSuccess) { var sol = new SolicitudViatico() { IdSolicitudViatico = viewModelsSolicitudViaticos.IdSolicitudViatico, Estado = 2 }; var respuestaEmpleado = await apiServicio.EditarAsync <Response>(sol, new Uri(WebApp.BaseAddress), "api/SolicitudViaticos/ActualizarEstadoSolicitudViatico"); if (respuestaEmpleado.IsSuccess) { return(RedirectToAction("DetalleSolicitudViaticos", new { id = viewModelsSolicitudViaticos.IdEmpleado })); } } return(this.RedireccionarMensajeTime("SolicitudViaticosContabilidad", "AprobacionSolicitudViatico", new { id = viewModelsSolicitudViaticos.IdSolicitudViatico }, $"{Mensaje.Error}|{VerificarPresupuesto.Message}|{"25000"}")); } catch (Exception ex) { return(BadRequest()); } }
public async Task <IActionResult> Actividades(ViewModelsSolicitudViaticos viewModelsSolicitudViaticos) { Response response = new Response(); var informeViatico = new InformeActividadViatico { Descripcion = viewModelsSolicitudViaticos.InformeActividadViatico.Descripcion, Observacion = viewModelsSolicitudViaticos.InformeActividadViatico.Observacion, IdSolicitudViatico = viewModelsSolicitudViaticos.IdSolicitudViatico }; try { response = await apiServicio.InsertarAsync(informeViatico, new Uri(WebApp.BaseAddress), "api/InformeViaticos/Actividades"); if (response.IsSuccess) { return(RedirectToAction("Informe", new { IdSolicitudViatico = informeViatico.IdSolicitudViatico })); } ViewData["Error"] = response.Message; return(RedirectToAction("Informe", new { IdSolicitudViatico = informeViatico.IdSolicitudViatico })); } catch (Exception ex) { return(BadRequest()); } }
public async Task <IActionResult> Informe(int IdSolicitudViatico, string mensaje) { List <InformeViatico> lista = new List <InformeViatico>(); try { var sol = new ViewModelsSolicitudViaticos { IdSolicitudViatico = IdSolicitudViatico, }; if (IdSolicitudViatico.ToString() != null) { var respuestaSolicitudViatico = await apiServicio.ObtenerElementoAsync1 <ViewModelsSolicitudViaticos>(sol, new Uri(WebApp.BaseAddress), "api/SolicitudViaticos/ObtenerSolicitudesViaticosporId"); //InicializarMensaje(null); if (respuestaSolicitudViatico != null) { lista = new List <InformeViatico>(); var itinerarioViatico = new InformeViatico { IdSolicitudViatico = IdSolicitudViatico }; lista = await apiServicio.ObtenerElementoAsync1 <List <InformeViatico> >(itinerarioViatico, new Uri(WebApp.BaseAddress) , "api/InformeViaticos/ListarInformeViaticos"); var facturas = new FacturaViatico() { IdSolicitudViatico = IdSolicitudViatico }; var listaFacruras = await apiServicio.Listar <FacturaViatico>(facturas, new Uri(WebApp.BaseAddress) , "api/FacturaViatico/ListarFacturas"); HttpContext.Session.SetInt32(Constantes.IdSolicitudtinerario, IdSolicitudViatico); //busca las actividades del informe var informeViatico = new InformeViatico { IdSolicitudViatico = IdSolicitudViatico }; var Actividades = await apiServicio.ObtenerElementoAsync1 <InformeActividadViatico>(informeViatico, new Uri(WebApp.BaseAddress) , "api/InformeViaticos/ObtenerActividades"); respuestaSolicitudViatico.ListaInformeViatico = lista; respuestaSolicitudViatico.ListaFacturaViatico = listaFacruras; respuestaSolicitudViatico.InformeActividadViatico = Actividades; InicializarMensaje(mensaje); return(View(respuestaSolicitudViatico)); } } InicializarMensaje(null); return(View()); } catch (Exception ex) { return(BadRequest()); } }
public async Task <IActionResult> Index(int IdSolicitudViatico, string mensaje) { try { var sol = new ViewModelsSolicitudViaticos { IdSolicitudViatico = IdSolicitudViatico }; if (IdSolicitudViatico.ToString() != null) { var respuestaSolicitudViatico = await apiServicio.ObtenerElementoAsync1 <ViewModelsSolicitudViaticos>(sol, new Uri(WebApp.BaseAddress), "api/SolicitudViaticos/ObtenerSolicitudesViaticosporId"); //total informe var informeViatico = new InformeViatico { IdSolicitudViatico = IdSolicitudViatico }; var listaintforme = await apiServicio.ObtenerElementoAsync1 <List <InformeViatico> >(informeViatico, new Uri(WebApp.BaseAddress) , "api/InformeViaticos/ListarInformeViaticos"); ///Valor total de informe var valortotaInforme = listaintforme.Sum(x => x.ValorEstimado); ///total facturas var facturas = new FacturaViatico() { IdSolicitudViatico = IdSolicitudViatico }; var listaFacruras = await apiServicio.Listar <FacturaViatico>(facturas, new Uri(WebApp.BaseAddress) , "api/FacturaViatico/ListarFacturas"); //calculo de reliquidacion var valortotalfacturas = listaFacruras.Sum(x => x.ValorTotalFactura); var valorCalculo = (respuestaSolicitudViatico.ValorEstimado * 70) / 100; var EstadoReliquidacion = new ViewModelsSolicitudViaticos(); if ((listaFacruras.Count() > 0 || respuestaSolicitudViatico.ListaInformeViatico.Count > 0) && respuestaSolicitudViatico.Estado == 4) { EstadoReliquidacion = calculos(Convert.ToDecimal(valortotaInforme), valortotalfacturas, Convert.ToDecimal(valorCalculo), Convert.ToDecimal(respuestaSolicitudViatico.ValorEstimado)); } respuestaSolicitudViatico.Reliquidacion = EstadoReliquidacion.Reliquidacion; respuestaSolicitudViatico.Valor = EstadoReliquidacion.Valor; InicializarMensaje(mensaje); return(View(respuestaSolicitudViatico)); } return(BadRequest()); } catch (Exception ex) { return(BadRequest()); } }
public async Task <IActionResult> Create(ViewModelsSolicitudViaticos viewModelsSolicitudViaticos) { try { Response response = new Response(); var lista = new List <TipoViatico>(); if (viewModelsSolicitudViaticos.FechaSalida <= viewModelsSolicitudViaticos.FechaLlegada) { var claim = HttpContext.User.Identities.Where(x => x.NameClaimType == ClaimTypes.Name).FirstOrDefault(); var NombreUsuario = claim.Claims.Where(c => c.Type == ClaimTypes.Name).FirstOrDefault().Value; var empleado = await ObtenerEmpleado(NombreUsuario); viewModelsSolicitudViaticos.IdEmpleado = empleado.IdEmpleado; //if(viewModelsSolicitudViaticos.IdConfiguracionViatico == 0 ) //{ // return this.Redireccionar("SolicitudViaticos", "Create", $"{Mensaje.Error}|{Mensaje.TipoViatico}"); //} viewModelsSolicitudViaticos.IdConfiguracionViatico = empleado.IdConfiguracionViatico; viewModelsSolicitudViaticos.FechaSolicitud = DateTime.Now.Date; response = await apiServicio.InsertarAsync(viewModelsSolicitudViaticos, new Uri(WebApp.BaseAddress), "api/SolicitudViaticos/InsertarSolicitudViatico"); if (response.IsSuccess) { var respuesta = JsonConvert.DeserializeObject <SolicitudViatico>(response.Resultado.ToString()); return(RedirectToAction("Create", "ItinerarioViatico", new { IdSolicitudViatico = respuesta.IdSolicitudViatico })); } lista = await apiServicio.Listar <TipoViatico>(new Uri(WebApp.BaseAddress) , "api/TiposDeViatico/ListarTiposDeViatico"); viewModelsSolicitudViaticos.ListaTipoViatico = lista; await CargarCombos(); this.TempData["Mensaje"] = $"{Mensaje.Error}|{response.Message}"; return(View(viewModelsSolicitudViaticos)); } lista = new List <TipoViatico>(); await CargarCombos(); lista = await apiServicio.Listar <TipoViatico>(new Uri(WebApp.BaseAddress) , "api/TiposDeViatico/ListarTiposDeViatico"); viewModelsSolicitudViaticos.ListaTipoViatico = lista; this.TempData["Mensaje"] = $"{Mensaje.Error}|{"Fechas Incorrectas"}"; return(View(viewModelsSolicitudViaticos)); } catch (Exception ex) { return(BadRequest()); } }
public async Task <Response> ObtenerPresupuesto([FromBody] ViewModelsSolicitudViaticos viewModelsSolicitudViaticos) { try { var a = await db.Presupuesto.Where(x => x.IdPresupuesto == viewModelsSolicitudViaticos.IdPresupuesto && x.IdSucursal == null).OrderBy(x => x.Fecha).FirstOrDefaultAsync(); if (a != null) { var b = db.DetallePresupuesto.Where(x => x.IdPresupuesto == viewModelsSolicitudViaticos.IdPresupuesto).ToListAsync().Result.Sum(x => x.Valor); var valor = b + Convert.ToDouble(viewModelsSolicitudViaticos.ValorEstimado); if (valor <= a.Valor) { var detalle = new DetallePresupuesto { IdPresupuesto = a.IdPresupuesto, IdSolicitudViatico = viewModelsSolicitudViaticos.IdSolicitudViatico, Valor = Convert.ToDouble(viewModelsSolicitudViaticos.ValorEstimado), Fecha = DateTime.Now }; db.DetallePresupuesto.Add(detalle); await db.SaveChangesAsync(); return(new Response { IsSuccess = true, Message = Mensaje.Satisfactorio }); } return(new Response { IsSuccess = false, Message = "No Contiene Fondos" }); } return(new Response { IsSuccess = false }); } catch (Exception ex) { return(new Response { IsSuccess = false }); } }
public async Task <IActionResult> EditEstado(ViewModelsSolicitudViaticos viewModelsSolicitudViaticos) { Response response = new Response(); try { var claim = HttpContext.User.Identities.Where(x => x.NameClaimType == ClaimTypes.Name).FirstOrDefault(); var NombreUsuario = claim.Claims.Where(c => c.Type == ClaimTypes.Name).FirstOrDefault().Value; var empleado = await ObtenerEmpleado(NombreUsuario); var soli = new SolicitudViatico { Estado = viewModelsSolicitudViaticos.Estado, IdSolicitudViatico = viewModelsSolicitudViaticos.IdSolicitudViatico, IdEmpleadoAprobador = empleado.IdEmpleado }; response = await apiServicio.InsertarAsync(soli, new Uri(WebApp.BaseAddress), "api/SolicitudViaticos/ActualizarEstadoSolicitudViatico"); if (response.IsSuccess) { return(RedirectToAction("DetalleSolicitudViaticos", new { id = viewModelsSolicitudViaticos.IdEmpleado })); } ViewData["Error"] = response.Message; return(View(viewModelsSolicitudViaticos)); } catch (Exception ex) { await GuardarLogService.SaveLogEntry(new LogEntryTranfer { ApplicationName = Convert.ToString(Aplicacion.WebAppTh), Message = "Editando un solicitud viático", ExceptionTrace = ex.Message, LogCategoryParametre = Convert.ToString(LogCategoryParameter.Edit), LogLevelShortName = Convert.ToString(LogLevelParameter.ERR), UserName = "******" }); return(BadRequest()); } }
public async Task <IActionResult> Create(ItinerarioViatico itinerarioViatico) { var solicitudViatico = new ViewModelsSolicitudViaticos { IdSolicitudViatico = itinerarioViatico.IdSolicitudViatico }; Response response = new Response(); try { var solicitud = await apiServicio.ObtenerElementoAsync1 <SolicitudViatico>(solicitudViatico, new Uri(WebApp.BaseAddress) , "api/SolicitudViaticos/ListarSolicitudesViaticosPorId"); if (itinerarioViatico.FechaDesde >= solicitud.FechaSalida && itinerarioViatico.FechaHasta <= solicitud.FechaLlegada) { response = await apiServicio.InsertarAsync(itinerarioViatico, new Uri(WebApp.BaseAddress), "api/ItinerarioViatico/InsertarItinerarioViatico"); if (response.IsSuccess) { return(RedirectToAction("Index", new { IdSolicitudViatico = itinerarioViatico.IdSolicitudViatico })); } await CargarCombos(); response.Message = "Valor Excede al de la solicitud"; InicializarMensaje(response.Message); return(View(itinerarioViatico)); } response.Message = "Fechas incorrectas"; await CargarCombos(); ViewData["Error"] = response.Message; InicializarMensaje(response.Message); return(View(itinerarioViatico)); } catch (Exception ex) { return(BadRequest()); } }
public async Task <IActionResult> Create() { InicializarMensaje(null); ObtenerInstancia.Instance = null; await CargarCombos(); var lista = new List <TipoViatico>(); lista = await apiServicio.Listar <TipoViatico>(new Uri(WebApp.BaseAddress) , "api/TiposDeViatico/ListarTiposDeViatico"); var viewModelsSolicitudViaticos = new ViewModelsSolicitudViaticos { FechaSalida = DateTime.Now, FechaLlegada = DateTime.Now, ListaTipoViatico = lista }; return(View(viewModelsSolicitudViaticos)); }
ViewModelsSolicitudViaticos calculos(decimal valortotaInforme, decimal valortotalfacturas, decimal valorCalculo, decimal valortotalVIaticos) { var solicitudViaticoViewModel = new ViewModelsSolicitudViaticos(); if (valortotaInforme >= valorCalculo && valortotalfacturas >= valorCalculo) { solicitudViaticoViewModel.Reliquidacion = 0; } else if (valortotalfacturas > valortotaInforme) { solicitudViaticoViewModel.Reliquidacion = 1; var cal = valortotalfacturas - valortotaInforme; if (cal == 0) { solicitudViaticoViewModel.Valor = Convert.ToDecimal(valorCalculo - valortotalfacturas); } else { solicitudViaticoViewModel.Valor = Convert.ToDecimal(valorCalculo - cal); } } else if (valortotaInforme < valorCalculo && valortotalfacturas < valorCalculo) { solicitudViaticoViewModel.Reliquidacion = -1; var cal = valortotalfacturas - valortotaInforme; if (cal == 0) { solicitudViaticoViewModel.Valor = Convert.ToDecimal(valorCalculo - valortotalfacturas); } else { solicitudViaticoViewModel.Valor = Convert.ToDecimal(valorCalculo - cal); } } return(solicitudViaticoViewModel); }
public async Task <IActionResult> Index(int IdSolicitudViatico, string mensaje) { var sol = new ViewModelsSolicitudViaticos { IdSolicitudViatico = IdSolicitudViatico }; try { if (IdSolicitudViatico.ToString() != null) { var respuestaSolicitudViatico = await apiServicio.ObtenerElementoAsync1 <ViewModelsSolicitudViaticos>(sol, new Uri(WebApp.BaseAddress), "api/SolicitudViaticos/ObtenerSolicitudesViaticosporId"); InicializarMensaje(mensaje); return(View(respuestaSolicitudViatico)); } return(BadRequest()); } catch (Exception ex) { return(BadRequest()); } }
public async Task <ViewModelsSolicitudViaticos> ObtenerSolicitudesViaticosporId([FromBody] ViewModelsSolicitudViaticos viewModelsSolicitudViaticos) { try { var NuevoviewModelsSolicitudViaticos = new ViewModelsSolicitudViaticos(); NuevoviewModelsSolicitudViaticos = await db.SolicitudViatico.Select(x => new ViewModelsSolicitudViaticos { FechaSolicitud = x.FechaSolicitud, IdEmpleado = x.IdEmpleado, FondoFinanciamiento = x.FondoFinanciamiento.Nombre, IdSolicitudViatico = x.IdSolicitudViatico, FechaLlegada = x.FechaLlegada, HoraLlegada = x.HoraLlegada, FechaSalida = x.FechaSalida, HoraSalida = x.HoraSalida, Ciudad = x.Ciudad.Nombre, Provincia = x.Ciudad.Provincia.Nombre, Pais = x.Ciudad.Provincia.Pais.Nombre, Servidor = x.Empleado.Persona.Nombres + " " + x.Empleado.Persona.Nombres, Dependencia = x.Empleado.Dependencia.Nombre, Descripcion = x.Descripcion, Observacion = x.Observacion, Estado = x.Estado, ValorEstimado = x.ValorEstimado } ).SingleOrDefaultAsync(m => m.IdSolicitudViatico == viewModelsSolicitudViaticos.IdSolicitudViatico); /// busca el puesto del empleado var modalidadpartida = await db.IndiceOcupacionalModalidadPartida.OrderByDescending(x => x.Fecha).Where(m => m.IdEmpleado == NuevoviewModelsSolicitudViaticos.IdEmpleado) .Select(y => new ManualPuesto { Nombre = y.IndiceOcupacional.ManualPuesto.Nombre } ).FirstOrDefaultAsync(); //lista los itinerio de la solicitud var ListaItinerario = await db.ItinerarioViatico.Where(m => m.IdSolicitudViatico == NuevoviewModelsSolicitudViaticos.IdSolicitudViatico) .Select(m => new ViewModelsItinerarioViaticos { IdItinerarioViatico = m.IdItinerarioViatico, IdCiudadDestino = m.IdCiudadDestino, IdCiudadOrigen = m.IdCiudadOrigen, Transporte = m.TipoTransporte.Descripcion, Ruta = m.CiudadOrigen.Nombre + "-" + m.CiudadDestino.Nombre, FechaDesde = m.FechaDesde, HoraSalida = m.HoraSalida, FechaHasta = m.FechaHasta, HoraLlegada = m.HoraLlegada, }) .ToListAsync(); NuevoviewModelsSolicitudViaticos.Puesto = modalidadpartida.Nombre; NuevoviewModelsSolicitudViaticos.ListaItinerarioViatico = ListaItinerario; return(NuevoviewModelsSolicitudViaticos); } catch (Exception ex) { return(new ViewModelsSolicitudViaticos()); } }
public async Task <Response> PostSolicitudViatico([FromBody] ViewModelsSolicitudViaticos viewModelsSolicitudViaticos) { try { var empleado = await db.Empleado.Where(x => x.IdEmpleado == viewModelsSolicitudViaticos.IdEmpleado).FirstOrDefaultAsync(); var dias = viewModelsSolicitudViaticos.FechaLlegada.Day - viewModelsSolicitudViaticos.FechaSalida.Day; if (empleado.EsJefe == true) { if (dias == 0) { dias = 1; viewModelsSolicitudViaticos.ValorEstimado = Convert.ToDecimal(ConstantesViaticos.Jefe) * dias; } viewModelsSolicitudViaticos.ValorEstimado = Convert.ToDecimal(ConstantesViaticos.Jefe) * dias; } else { if (dias == 0) { dias = 1; viewModelsSolicitudViaticos.ValorEstimado = Convert.ToDecimal(ConstantesViaticos.Operativo) * dias; } viewModelsSolicitudViaticos.ValorEstimado = Convert.ToDecimal(ConstantesViaticos.Operativo) * dias; } var datos = new SolicitudViatico() { IdEmpleado = viewModelsSolicitudViaticos.IdEmpleado, IdCiudad = viewModelsSolicitudViaticos.IdCiudad, IdConfiguracionViatico = viewModelsSolicitudViaticos.IdConfiguracionViatico, FechaSolicitud = viewModelsSolicitudViaticos.FechaSolicitud, Descripcion = viewModelsSolicitudViaticos.Descripcion, ValorEstimado = viewModelsSolicitudViaticos.ValorEstimado, FechaLlegada = viewModelsSolicitudViaticos.FechaLlegada, FechaSalida = viewModelsSolicitudViaticos.FechaSalida, Observacion = viewModelsSolicitudViaticos.Observacion, Estado = 0, HoraSalida = viewModelsSolicitudViaticos.HoraSalida, HoraLlegada = viewModelsSolicitudViaticos.HoraLlegada, IdFondoFinanciamiento = viewModelsSolicitudViaticos.IdFondoFinanciamiento }; var respuesta = Existe(datos); if (!respuesta.IsSuccess) { var solicitudViatico = db.SolicitudViatico.Add(datos); var solTipoViatico = new SolicitudTipoViatico { IdSolicitudViatico = solicitudViatico.Entity.IdSolicitudViatico, IdTipoViatico = 1 }; db.SolicitudTipoViatico.Add(solTipoViatico); await db.SaveChangesAsync(); return(new Response { IsSuccess = true, Message = Mensaje.Satisfactorio, Resultado = solicitudViatico.Entity }); } return(new Response { IsSuccess = false, Message = Mensaje.ExisteRegistro }); } catch (Exception ex) { return(new Response { IsSuccess = false, Message = "No existe tipo de viaticos", }); } }
public async Task <IActionResult> Reliquidacion(int IdSolicitudViatico, string mensaje) { try { var listaReliquidacion = new List <ReliquidacionViatico>(); var sol = new ViewModelsSolicitudViaticos { IdSolicitudViatico = IdSolicitudViatico }; if (IdSolicitudViatico.ToString() != null) { var respuestaSolicitudViatico = await apiServicio.ObtenerElementoAsync1 <ViewModelsSolicitudViaticos>(sol, new Uri(WebApp.BaseAddress), "api/SolicitudViaticos/ObtenerSolicitudesViaticosporId"); var reliquidacionViatico = new ReliquidacionViatico { IdSolicitudViatico = IdSolicitudViatico }; listaReliquidacion = await apiServicio.ObtenerElementoAsync1 <List <ReliquidacionViatico> >(reliquidacionViatico, new Uri(WebApp.BaseAddress) , "api/ReliquidacionViaticos/ListarReliquidaciones"); var valortotaReliquidacion = listaReliquidacion.Sum(x => x.ValorEstimado); ///Informe var informeViatico = new InformeViatico { IdSolicitudViatico = IdSolicitudViatico }; var listaintforme = await apiServicio.ObtenerElementoAsync1 <List <InformeViatico> >(informeViatico, new Uri(WebApp.BaseAddress) , "api/InformeViaticos/ListarInformeViaticos"); ///Valor total de informe var valortotaInforme = listaintforme.Sum(x => x.ValorEstimado); ///total facturas var facturas = new FacturaViatico() { IdSolicitudViatico = IdSolicitudViatico }; var listaFacruras = await apiServicio.Listar <FacturaViatico>(facturas, new Uri(WebApp.BaseAddress) , "api/FacturaViatico/ListarFacturas"); ///Valor total de Itinerario var valortotalfacturas = listaFacruras.Sum(x => x.ValorTotalFactura); var valorCalculo = (respuestaSolicitudViatico.ValorEstimado * 70) / 100; var EstadoReliquidacion = new ViewModelsSolicitudViaticos(); if ((listaFacruras.Count() > 0 || listaintforme.Count > 0) && respuestaSolicitudViatico.Estado == 4) { EstadoReliquidacion = calculos(Convert.ToDecimal(valortotaInforme), valortotalfacturas, Convert.ToDecimal(valorCalculo), Convert.ToDecimal(respuestaSolicitudViatico.ValorEstimado)); } //HttpContext.Session.SetInt32(Constantes.IdSolicitudtinerario, IdSolicitudViatico); //HttpContext.Session.SetInt32(Constantes.ValorReliquidacion, Convert.ToInt32(ValorReliquidacion.Valor)); ViewData["IdPresupuesto"] = new SelectList(await apiServicio.Listar <Presupuesto>(new Uri(WebApp.BaseAddress), "api/Presupuesto/ListarPresupuesto"), "IdPresupuesto", "NumeroPartidaPresupuestaria"); respuestaSolicitudViatico.ListaReliquidacionViatico = listaReliquidacion; respuestaSolicitudViatico.Reliquidacion = EstadoReliquidacion.Reliquidacion; respuestaSolicitudViatico.Valor = EstadoReliquidacion.Valor; InicializarMensaje(mensaje); return(View(respuestaSolicitudViatico)); } return(View()); } catch (Exception exe) { return(BadRequest()); } }