public ActionResult Atender(AltaGuiaSalidaModel model) { //Invocamos al servicio var service = new LogisticaServices.EntradasYSalidasServiceClient(); if (model.Rechazar) { //Damos de alta la guía de entrada var success = service.RechazarGuiaSalida(model.IdSolicitud, model.Observaciones); if (success) { TempData["Message"] = String.Format("Se rechazó correctamente la solicitud {0}", model.IdSolicitud); } } else { //Damos de alta la guía de entrada var success = service.GenerarGuiaSalida(model.IdSolicitud, model.IdSolicitud, WebSecurity.CurrentUserId); if (success) { TempData["Message"] = String.Format("Se generó correctamente la guía de salida para la solicitud {0}", model.IdSolicitud); } } return RedirectToAction("Solicitudes", new { id = model.IdAlmacen }); }
// // GET: /GuiaEntrada/ // Lista de almacenes disponibles para el usuario public ActionResult Almacenes() { //Invocamos al servicio var service = new LogisticaServices.EntradasYSalidasServiceClient(); //Como código de empleado le pasamos el current user id (es importante que coincida con el empleado id) var almacenesDto = service.ObtenerAlmacenesPorEmpleado(WebSecurity.CurrentUserId); //Mapeamos el DTO a nuestro modelo (de forma automática o a mano, dependiendo de nuestra necesidad) var model = Mapper.Map<List<AlmacenViewModel>>(almacenesDto); return View(model); }
// // GET: /GuiaEntrada/Solicitudes/5 // Lista de solicitudes aprobadas listas para hacer una guía de entrada public ActionResult Solicitudes(int id) { @ViewBag.IdAlmacen = id; //Invocamos al servicio var service = new LogisticaServices.EntradasYSalidasServiceClient(); //Como código de empleado le pasamos el current user id (es importante que coincida con el empleado id) var solicitudesDto = service.ObtenerSolicitudesEntrada(0, (int) Enums.EstadoSolicitudEntrada.Aprobada, DateTime.MinValue, DateTime.MinValue, 0, 0); //Mapeamos el DTO a nuestro modelo (de forma automática o a mano, dependiendo de nuestra necesidad) var model = Mapper.Map<List<ListaSolicitudEntradaViewModel>>(solicitudesDto); return View(model); }
// // GET: /GuiaEntrada/Atender/5 // Detalle de una solicitud de Entrada public ActionResult Atender(int id, int idAlmacen) { @ViewBag.IdSolicitud = id; @ViewBag.IdAlmacen = idAlmacen; //Invocamos al servicio var service = new LogisticaServices.EntradasYSalidasServiceClient(); //Como código de empleado le pasamos el current user id (es importante que coincida con el empleado id) var solicitudesDto = service.ObtenerSolicitudEntrada(id); //Mapeamos el DTO a nuestro modelo (de forma automática o a mano, dependiendo de nuestra necesidad) var model = Mapper.Map<SolicitudEntradaViewModel>(solicitudesDto); return View(model); }
public ActionResult Almacenes() { //Invocamos al servicio var service = new LogisticaServices.EntradasYSalidasServiceClient(); //Como código de empleado le pasamos el current user id (es importante que coincida con el empleado id) var almacenesDto = service.ObtenerAlmacenesPorEmpleado(WebSecurity.CurrentUserId); if (almacenesDto.Any()) { //Si el usuario solo tiene un almacén asignado, obviamos este paso if (almacenesDto.Count() == 1) { return RedirectToAction("Solicitudes", new { id = almacenesDto[0].Id }); } //Mapeamos el DTO a nuestro modelo (de forma automática o a mano, dependiendo de nuestra necesidad) var model = Mapper.Map<List<AlmacenViewModel>>(almacenesDto); return View(model); } @ViewBag.Message = "El usuario no cuenta con ningún almacén asociado."; return View("Error"); }
public ActionResult Solicitudes(int id) { //Almacenamos temporalmente el id de almacén @ViewBag.IdAlmacen = id; //Buscamos algún mensaje de éxito (si venimos de dar de alta una guía de entrada) if (TempData.ContainsKey("Message")) @ViewBag.Message = TempData["Message"]; //Invocamos al servicio var service = new LogisticaServices.EntradasYSalidasServiceClient(); //Como código de empleado le pasamos el current user id (es importante que coincida con el empleado id) var solicitudesDto = service.ObtenerSolicitudesSalida(0, (int)Enums.EstadoSolicitudSalida.Aprobada, DateTime.MinValue, DateTime.MinValue, 0, "Parcial", "Av. Benavides 435", "Aceros S.A."); //Mapeamos el DTO a nuestro modelo (de forma automática o a mano, dependiendo de nuestra necesidad) var lista = Mapper.Map<List<ListaSolicitudSalidaViewModel>>(solicitudesDto); var model = new FiltradoSolicitudesSalidaViewModel(); model.ListaInicial = lista; return View(model); }
public PartialViewResult Solicitudes(FiltradoSolicitudesEntradaViewModel model) { //Invocamos al servicio var service = new LogisticaServices.EntradasYSalidasServiceClient(); //Como código de empleado le pasamos el current user id (es importante que coincida con el empleado id) var solicitudesDto = service.ObtenerSolicitudesEntrada(model.IdSolicitud.GetValueOrDefault(), (int) Enums.EstadoSolicitudEntrada.Aprobada, model.FechaInicio.GetValueOrDefault(), model.FechaFin.GetValueOrDefault(), String.IsNullOrEmpty(model.IdEmpleado) ? 0 : Convert.ToInt32(model.IdEmpleado), String.IsNullOrEmpty(model.TipoEntrada) ? 0 : Convert.ToInt32(model.TipoEntrada)); //Mapeamos el DTO a nuestro modelo (de forma automática o a mano, dependiendo de nuestra necesidad) var listaSolicitudes = Mapper.Map<List<ListaSolicitudEntradaViewModel>>(solicitudesDto); return PartialView("_ListaSolicitudEntrada",listaSolicitudes); }
// // GET: /GuiaEntrada/Solicitudes/5 // Lista de solicitudes aprobadas listas para hacer una guía de entrada public ActionResult Solicitudes(int id) { //Buscamos algún mensaje de éxito (si venimos de dar de alta una guía de entrada) if (TempData.ContainsKey("Message")) @ViewBag.Message = TempData["Message"]; //Invocamos al servicio var service = new LogisticaServices.EntradasYSalidasServiceClient(); //Como código de empleado le pasamos el current user id (es importante que coincida con el empleado id) var solicitudesDto = service.ObtenerSolicitudesEntrada(0, (int)Enums.EstadoSolicitudEntrada.Aprobada, DateTime.MinValue, DateTime.MinValue, 0, 0); //Mapeamos el DTO a nuestro modelo (de forma automática o a mano, dependiendo de nuestra necesidad) var listaSolicitudes = Mapper.Map<List<ListaSolicitudEntradaViewModel>>(solicitudesDto); //Obtenemos la lista de empleados var listaEmpleados = service.ObtenerEmpleados(); var model = new FiltradoSolicitudesEntradaViewModel(); model.ListaInicial = listaSolicitudes; model.Empleados = listaEmpleados.Select( x => new SelectListItem() {Text = x.Apellidos + ", " + x.Nombres, Value = x.Id.ToString()}) .OrderBy(s => s.Text); return View(model); }