// GET: Admin/SalidaAlmacen/Create
 public ActionResult CreateDetails(string id)
 {
     try
     {
         if (!string.IsNullOrEmpty(id))
         {
             Token.SaveToken();
             SalidaAlmacenDetalleViewModels Model = new SalidaAlmacenDetalleViewModels();
             _Combos_Datos Datos = new _Combos_Datos();
             Model.IDSalida       = id;
             Model.ListaProductos = Datos.ObtenerComboProductosAlmacenXIDSalida(Conexion, id);
             Model.ListaUnidades  = new List <UnidadesProductosAlmacenModels>(); //Datos.ObtenerComboUnidadesXIDProducto(Conexion, string.Empty);
             Model.Existencia     = 0;
             Model.Cantidad       = 0;
             Model.ListaUnidades.Add(new UnidadesProductosAlmacenModels {
                 id_unidadProducto = string.Empty, Descripcion = " -- Seleccione -- "
             });
             return(View(Model));
         }
         else
         {
             TempData["typemessage"] = "2";
             TempData["message"]     = "No se puede cargar la vista";
             return(RedirectToAction("Index"));
         }
     }
     catch (Exception)
     {
         TempData["typemessage"] = "2";
         TempData["message"]     = "No se puede cargar la vista";
         return(RedirectToAction("Index"));
     }
 }
 // GET: Admin/SalidaAlmacen/Create
 public ActionResult EditDetails(string id)
 {
     try
     {
         if (!string.IsNullOrEmpty(id))
         {
             Token.SaveToken();
             _SalidaAlmacen_Datos           Datos = new _SalidaAlmacen_Datos();
             SalidaAlmacenDetalleViewModels Model = Datos.ObtenerDatosSalidaDetalle(Conexion, id);
             _Combos_Datos CDatos = new _Combos_Datos();
             Model.ListaProductos = CDatos.ObtenerComboProductosAlmacenXIDSalida(Conexion, Model.IDSalida);
             Model.ListaUnidades  = CDatos.ObtenerComboUnidadesXIDProducto(Conexion, Model.IDProductoAlmacen);
             Model.Existencia     = Datos.ObtenerExistenciaXIDProductoIDUnidadIDSalida(Conexion, Model.IDSalida, Model.IDProductoAlmacen, Model.IDUnidadProducto);
             return(View(Model));
         }
         else
         {
             TempData["typemessage"] = "2";
             TempData["message"]     = "No se puede cargar la vista";
             return(RedirectToAction("Index"));
         }
     }
     catch (Exception)
     {
         TempData["typemessage"] = "2";
         TempData["message"]     = "No se puede cargar la vista";
         return(RedirectToAction("Index"));
     }
 }
 public SalidaAlmacenDetalleViewModels ObtenerDatosSalidaDetalle(string Conexion, string IDSalidaDetalle)
 {
     try
     {
         SalidaAlmacenDetalleViewModels Result = new SalidaAlmacenDetalleViewModels();
         SqlDataReader Dr = SqlHelper.ExecuteReader(Conexion, "spCSLDB_Inventario_get_DatosDetalleSalidaXID", IDSalidaDetalle);
         while (Dr.Read())
         {
             Result.IDSalidaDetalle   = !Dr.IsDBNull(Dr.GetOrdinal("IDSalidaDetalle")) ? Dr.GetString(Dr.GetOrdinal("IDSalidaDetalle")) : string.Empty;
             Result.IDSalida          = !Dr.IsDBNull(Dr.GetOrdinal("IDSalida")) ? Dr.GetString(Dr.GetOrdinal("IDSalida")) : string.Empty;
             Result.IDProductoAlmacen = !Dr.IsDBNull(Dr.GetOrdinal("IDProducto")) ? Dr.GetString(Dr.GetOrdinal("IDProducto")) : string.Empty;
             Result.IDUnidadProducto  = !Dr.IsDBNull(Dr.GetOrdinal("IDUnidad")) ? Dr.GetString(Dr.GetOrdinal("IDUnidad")) : string.Empty;
             Result.Cantidad          = !Dr.IsDBNull(Dr.GetOrdinal("Cantidad")) ? Dr.GetDecimal(Dr.GetOrdinal("Cantidad")) : 0;
             break;
         }
         Dr.Close();
         return(Result);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        public ActionResult EditDetails(SalidaAlmacenDetalleViewModels Model)
        {
            _SalidaAlmacen_Datos Datos  = new _SalidaAlmacen_Datos();
            _Combos_Datos        CDatos = new _Combos_Datos();

            try
            {
                if (Token.IsTokenValid())
                {
                    if (ModelState.IsValid)
                    {
                        SalidaAlmacenDetalleModels ModelP = new SalidaAlmacenDetalleModels
                        {
                            NuevoRegistro   = false,
                            IDSalidaDetalle = Model.IDSalidaDetalle,
                            IDSalida        = Model.IDSalida,
                            Producto        = new CatProductosAlmacenModels {
                                IDProductoAlmacen = Model.IDProductoAlmacen
                            },
                            UnidadMedida = new UnidadesProductosAlmacenModels {
                                id_unidadProducto = Model.IDUnidadProducto
                            },
                            Cantidad = Model.Cantidad,
                            Conexion = Conexion,
                            Usuario  = User.Identity.Name
                        };
                        Datos.ACSalidaAlmacenDetalle(ModelP);
                        if (ModelP.Completado == true)
                        {
                            TempData["typemessage"] = "1";
                            TempData["message"]     = "Los datos se guardaron correctamente.";
                            Token.ResetToken();
                            return(RedirectToAction("Details", new { id = Model.IDSalida }));
                        }
                        else
                        {
                            Model.ListaProductos    = CDatos.ObtenerComboProductosAlmacenXIDSalida(Conexion, Model.IDSalida);
                            Model.ListaUnidades     = CDatos.ObtenerComboUnidadesXIDProducto(Conexion, Model.IDProductoAlmacen);
                            Model.Existencia        = Datos.ObtenerExistenciaXIDProductoIDUnidadIDSalida(Conexion, Model.IDSalida, Model.IDProductoAlmacen, Model.IDUnidadProducto);
                            TempData["typemessage"] = "2";
                            TempData["message"]     = "Ocurrió un error al intentar guardar los datos. Intente más tarde.";
                            return(View(Model));
                        }
                    }
                    else
                    {
                        Model.ListaProductos = CDatos.ObtenerComboProductosAlmacenXIDSalida(Conexion, Model.IDSalida);
                        Model.ListaUnidades  = CDatos.ObtenerComboUnidadesXIDProducto(Conexion, Model.IDProductoAlmacen);
                        Model.Existencia     = Datos.ObtenerExistenciaXIDProductoIDUnidadIDSalida(Conexion, Model.IDSalida, Model.IDProductoAlmacen, Model.IDUnidadProducto);
                        return(View(Model));
                    }
                }
                else
                {
                    return(RedirectToAction("Details", new { id = Model.IDSalida }));
                }
            }
            catch
            {
                Model.ListaProductos    = CDatos.ObtenerComboProductosAlmacenXIDSalida(Conexion, Model.IDSalida);
                Model.ListaUnidades     = CDatos.ObtenerComboUnidadesXIDProducto(Conexion, Model.IDProductoAlmacen);
                Model.Existencia        = Datos.ObtenerExistenciaXIDProductoIDUnidadIDSalida(Conexion, Model.IDSalida, Model.IDProductoAlmacen, Model.IDUnidadProducto);
                TempData["typemessage"] = "2";
                TempData["message"]     = "Ocurrió un error al intentar guardar los datos. Contacte a soporte técnico.";
                return(View(Model));
            }
        }