//Metodo para Actualizar
        public bool Actualizar(TblProductos Entidad)
        {
            try
            {
                try
                {
                    //cargamos el producto que coinciden con el filtro.
                    ValidadEntidad = Model.TblProductos.FirstOrDefault(x => x.IdCategoria == Entidad.IdCategoria && x.IdMarca == Entidad.IdMarca);
                }
                catch
                {
                    ValidadEntidad = new TblProductos();
                }

                if (ValidadEntidad is null)
                {
                    TblProductos _Cat = Model.TblProductos.FirstOrDefault(x => x.Id == Entidad.Id);
                    //_Cat.IdAlmacen = Entidad.IdAlmacen;
                    _Cat.IdCategoria       = Entidad.IdCategoria;
                    _Cat.IdMarca           = Entidad.IdMarca;
                    _Cat.FechaModifica     = DateTime.Now;
                    _Cat.IdUsuarioModifica = 1;
                    Model.SaveChanges();
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch
            {
                return(false);
            }
        }
        //Metodo para eliminar
        public bool Eliminar(int id)
        {
            try
            {
                //Si el Producto a Eliminar tiene dependencia en Modelo, no se elimina
                var ListaModelo = (from M in Model.TblModelo
                                   join P in Model.TblProductos on M.IdProducto equals P.Id
                                   where M.IdProducto == id
                                   select new
                {
                    M.Id
                }).ToList();

                if (ListaModelo.Count >= 1)
                {
                    return(false);
                }
                else
                {
                    ValidadEntidad = new TblProductos();
                    ValidadEntidad = Model.TblProductos.FirstOrDefault(x => x.Id == id);
                    Model.TblProductos.Remove(ValidadEntidad);
                    Model.SaveChanges();

                    return(true);
                }
            }
            catch
            {
                return(false);
            }
        }
Exemple #3
0
 public ActionResult Edit([Bind(Include = "IdProducto,Nombre,BarCode,Existencia,Precio,Descripcion,Estado,FechaRegistro,IdCategoria,IdUnidadMedida")] TblProductos tblProductos)
 {
     if (ModelState.IsValid)
     {
         if (tblProductos.Precio <= 0)
         {
             ViewBag.Error = "Campo Precio no puede ser 0";
         }
         else
         {
             var query = (from p in db.Productos
                          where p.IdProducto == tblProductos.IdProducto
                          select p).First();
             if (query != null)
             {
                 db.Entry(query).State      = EntityState.Detached;
                 tblProductos.Estado        = query.Estado;
                 tblProductos.FechaRegistro = query.FechaRegistro;
             }
             if (ModelState.IsValid)
             {
                 db.Entry(tblProductos).State = EntityState.Modified;
                 db.SaveChanges();
             }
             return(RedirectToAction("Index"));
         }
     }
     ViewBag.IdCategoria    = new SelectList(db.Categorias, "IdCategoria", "Categoria", tblProductos.IdCategoria);
     ViewBag.IdUnidadMedida = new SelectList(db.UnidadDeMedidas, "IdUnidadMedida", "Nombre", tblProductos.IdUnidadMedida);
     return(View(tblProductos));
 }
        //Metodo para Guardar
        public bool Guardar(TblProductos Entidad)
        {
            try
            {
                ValidadEntidad = new TblProductos();
                //validamos si ya existe el producto, no se puede repetir el producto a menos que varie la categoria o marca
                ValidadEntidad = Model.TblProductos.FirstOrDefault(x => x.IdCategoria == Entidad.IdCategoria && x.IdMarca == Entidad.IdMarca);

                if (ValidadEntidad is null)
                {
                    TblProductos _Cat = new TblProductos();
                    _Cat.IdAlmacen     = 1;
                    _Cat.IdCategoria   = Entidad.IdCategoria;
                    _Cat.IdMarca       = Entidad.IdMarca;
                    _Cat.FechaCrea     = DateTime.Now;
                    _Cat.IdUsuarioCrea = 1;

                    Model.TblProductos.Add(_Cat);
                    Model.SaveChanges();

                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch
            {
                return(false);
            }
        }
Exemple #5
0
        public ActionResult DeleteConfirmed(int id)
        {
            TblProductos tblProductos = db.Productos.Find(id);

            db.Productos.Remove(tblProductos);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemple #6
0
        // GET: Productos/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            TblProductos tblProductos = db.Productos.Find(id);

            if (tblProductos == null)
            {
                return(HttpNotFound());
            }
            return(View(tblProductos));
        }
Exemple #7
0
        // GET: Productos/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            TblProductos tblProductos = db.Productos.Find(id);

            if (tblProductos == null)
            {
                return(HttpNotFound());
            }
            ViewBag.IdCategoria    = new SelectList(db.Categorias, "IdCategoria", "Categoria", tblProductos.IdCategoria);
            ViewBag.IdUnidadMedida = new SelectList(db.UnidadDeMedidas, "IdUnidadMedida", "Nombre", tblProductos.IdUnidadMedida);
            return(View(tblProductos));
        }
Exemple #8
0
        // POST: api/ServiciosAdm
        public Servicios Post(Servicios ser)
        {
            TblProductos Prod = new TblProductos()
            {
                SKU = "SKU",
                Descripcion_Corta = ser.Descripcion_Corta,
                Descripcion_Larga = ser.Descripcion_Larga,
                IdCategoria       = ser.IdCategoria,
                IdProveedor       = 0,
                FacturaProveedor  = "0",
                PrecioNeto        = ser.PrecioNeto,
                Ubicacion         = "0",
                FUM    = DateTime.Now.Date,
                UUM    = ser.UUM,
                Activo = true
            };

            using (uxisolutionbdEntities context = new uxisolutionbdEntities())
            {
                context.TblProductos.Add(Prod);
                context.SaveChanges();
            }

            List <TblServicio_Precio_tipoUsuario> ListSerPreUsu = new List <TblServicio_Precio_tipoUsuario>();

            foreach (var precio in ser.Precios)
            {
                TblServicio_Precio_tipoUsuario SerPreUsu = new TblServicio_Precio_tipoUsuario()
                {
                    IdProducto  = Prod.IdProducto,
                    Precio      = precio.Precio,
                    TipoCliente = precio.Tipocliente
                };
                ListSerPreUsu.Add(SerPreUsu);
            }

            using (uxisolutionbdEntities context = new uxisolutionbdEntities())
            {
                context.TblServicio_Precio_tipoUsuario.AddRange(ListSerPreUsu);
                context.SaveChanges();
            }

            ser.IdProducto = Prod.IdProducto;
            return(ser);
        }
Exemple #9
0
        // PUT: api/ServiciosAdm/5
        public bool Put(int ids, Servicios ser)
        {
            if (ids != ser.IdProducto)
            {
                return(false);
            }

            using (uxisolutionbdEntities context = new uxisolutionbdEntities())
            {
                TblProductos Prod = new TblProductos()
                {
                    IdProducto        = ser.IdProducto,
                    SKU               = ser.SKU,
                    Descripcion_Corta = ser.Descripcion_Corta,
                    Descripcion_Larga = ser.Descripcion_Larga,
                    IdCategoria       = ser.IdCategoria,
                    IdProveedor       = ser.IdProveedor,
                    FacturaProveedor  = ser.FacturaProveedor,
                    PrecioNeto        = ser.PrecioNeto,
                    Ubicacion         = ser.Ubicacion,
                    FUM               = DateTime.Now.Date,
                    UUM               = ser.UUM,
                    Activo            = ser.Activo
                };

                context.Entry(Prod).State = System.Data.Entity.EntityState.Modified;

                foreach (var precio in ser.Precios)
                {
                    TblServicio_Precio_tipoUsuario SerPreUsu = new TblServicio_Precio_tipoUsuario()
                    {
                        IDServicioPrecioUsuario = precio.IDServicioPrecioUsuario,
                        IdProducto  = ser.IdProducto,
                        Precio      = precio.Precio,
                        TipoCliente = precio.Tipocliente
                    };
                    context.Entry(SerPreUsu).State = System.Data.Entity.EntityState.Modified;
                }

                context.SaveChanges();
            }

            return(true);
        }
Exemple #10
0
        //Metodo para Listar Todos los Elementos de Modelo
        public List <Entidad.EntidadModelo> GetModelos()
        {
            try
            {
                LstModelos = new List <Entidad.EntidadModelo>();

                var Lista = (from M in Model.TblModelo
                             join P in Model.TblProductos on M.IdProducto equals P.Id
                             join G in Model.TblGama on M.IdGama equals G.Id
                             select new Entidad.EntidadModelo
                {
                    Id = M.Id,
                    IdProducto = P.Id,
                    IdGama = G.Id,
                    Gama = G.Descripcion,
                    Descripcion = M.Descripcion,
                    Especificaciones = M.Especificaciones
                }).ToList();


                foreach (Entidad.EntidadModelo d in Lista)
                {
                    Entidad.EntidadModelo DT = new Entidad.EntidadModelo();
                    DT = d;

                    TblProductos _TblProductos = new TblProductos();

                    _TblProductos = Model.TblProductos.FirstOrDefault(x => x.Id == d.IdProducto);


                    DT.Producto = _TblProductos.TblCategorias.Descripcion + ' ' + _TblProductos.TblMarca.Descripcion;

                    LstModelos.Add(DT);
                }

                return(LstModelos);
            }
            catch
            {
                return(LstModelos = new List <Entidad.EntidadModelo>());
            }
        }
Exemple #11
0
        public ResponseEntity <ProductoDTO> PostProducto(ProductoDTO producto)
        {
            ResponseEntity <ProductoDTO> oResponseEntity = new ResponseEntity <ProductoDTO>();
            ProductoDTO  entidad = new ProductoDTO();
            TblProductos tbl     = new TblProductos();

            tbl.CodProd   = producto.CodProd;
            tbl.NomProd   = producto.NomProd;
            tbl.CodGrup   = producto.CodGrup;
            tbl.CodLin    = producto.CodLin;
            tbl.Marca     = producto.Marca;
            tbl.CosPromC  = producto.CosPromC;
            tbl.PrecioVta = producto.PrecioVta;
            //_context.TblProductos.Add(tbl);
            //_context.SaveChanges();

            _context.Entry(tbl).State = EntityState.Added;
            _context.SaveChanges();

            entidad = _context.TblProductos
                      .Where(x => x.CodProd == producto.CodProd)
                      .Select(x => new ProductoDTO
            {
                CodProd   = x.CodProd,
                NomProd   = x.NomProd,
                CodGrup   = x.CodGrup,
                CodLin    = x.CodLin,
                Marca     = x.Marca,
                CosPromC  = x.CosPromC,
                PrecioVta = x.PrecioVta,
            }).FirstOrDefault();

            oResponseEntity.listEntity = null;

            oResponseEntity.Entity  = entidad;
            oResponseEntity.Message = "INSERCCION CORRECTA";
            oResponseEntity.Status  = true;
            oResponseEntity.Date    = DateTime.Now;

            return(oResponseEntity);
        }
Exemple #12
0
        public ActionResult Create([Bind(Include = "IdProducto,Nombre,BarCode,Existencia,Precio,Descripcion,Estado,FechaRegistro,IdCategoria,IdUnidadMedida")] TblProductos tblProductos)
        {
            if (tblProductos.Precio <= 0)
            {
                ViewBag.Error = "Campo Precio no puede ser 0";
            }
            else
            {
                tblProductos.Estado        = true;
                tblProductos.FechaRegistro = DateTime.Now.Date;
                if (ModelState.IsValid)
                {
                    db.Productos.Add(tblProductos);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }

            ViewBag.IdCategoria    = new SelectList(db.Categorias, "IdCategoria", "Categoria", tblProductos.IdCategoria);
            ViewBag.IdUnidadMedida = new SelectList(db.UnidadDeMedidas, "IdUnidadMedida", "Nombre", tblProductos.IdUnidadMedida);
            return(View(tblProductos));
        }
Exemple #13
0
        public ResponseEntity <ProductoDTO> DelProducto(ProductoDTO producto)
        {
            ResponseEntity <ProductoDTO> oResponseEntity = new ResponseEntity <ProductoDTO>();

            TblProductos tbl = new TblProductos();

            tbl.CodProd   = producto.CodProd;
            tbl.NomProd   = producto.NomProd;
            tbl.CodGrup   = producto.CodGrup;
            tbl.CodLin    = producto.CodLin;
            tbl.Marca     = producto.Marca;
            tbl.CosPromC  = producto.CosPromC;
            tbl.PrecioVta = producto.PrecioVta;
            _context.TblProductos.Remove(tbl);
            _context.SaveChanges();

            oResponseEntity.listEntity = null;
            oResponseEntity.Entity     = null;
            oResponseEntity.Message    = "ELIMINACION CORRECTA";
            oResponseEntity.Status     = true;
            oResponseEntity.Date       = DateTime.Now;

            return(oResponseEntity);
        }
Exemple #14
0
        //Metodo para Listar el Producto por parametro
        public List <Entidad.EntidadModelo> GetProductosxParametro(string Parametro)
        {
            try
            {
                LstModelos = new List <Entidad.EntidadModelo>();
                //si existe en producto se retorta
                try
                {
                    var Lista = (from M in Model.TblModelo
                                 join P in Model.TblProductos on M.IdProducto equals P.Id
                                 join G in Model.TblGama on M.IdGama equals G.Id
                                 where P.TblCategorias.Descripcion.Contains(Parametro) || P.TblMarca.Descripcion.Contains(Parametro)
                                 select new Entidad.EntidadModelo
                    {
                        Id = M.Id,
                        IdProducto = P.Id,
                        IdGama = G.Id,
                        Gama = G.Descripcion,
                        Descripcion = M.Descripcion,
                        Especificaciones = M.Especificaciones
                    }).ToList();

                    if (Lista.Count >= 1)
                    {
                        foreach (Entidad.EntidadModelo d in Lista)
                        {
                            Entidad.EntidadModelo DT = new Entidad.EntidadModelo();
                            DT = d;

                            TblProductos _TblProductos = new TblProductos();

                            _TblProductos = Model.TblProductos.FirstOrDefault(x => x.Id == d.IdProducto);


                            DT.Producto = _TblProductos.TblCategorias.Descripcion + ' ' + _TblProductos.TblMarca.Descripcion;

                            LstModelos.Add(DT);
                        }

                        return(LstModelos);
                    }
                }
                catch
                {
                    LstModelos = new List <Entidad.EntidadModelo>();
                }
                //si existe en Gama se retorta
                try
                {
                    var Lista = (from M in Model.TblModelo
                                 join P in Model.TblProductos on M.IdProducto equals P.Id
                                 join G in Model.TblGama on M.IdGama equals G.Id
                                 where G.Descripcion.Contains(Parametro)
                                 select new Entidad.EntidadModelo
                    {
                        Id = M.Id,
                        IdProducto = P.Id,
                        IdGama = G.Id,
                        Gama = G.Descripcion,
                        Descripcion = M.Descripcion,
                        Especificaciones = M.Especificaciones
                    }).ToList();

                    if (Lista.Count >= 1)
                    {
                        foreach (Entidad.EntidadModelo d in Lista)
                        {
                            Entidad.EntidadModelo DT = new Entidad.EntidadModelo();
                            DT = d;

                            TblProductos _TblProductos = new TblProductos();

                            _TblProductos = Model.TblProductos.FirstOrDefault(x => x.Id == d.IdProducto);


                            DT.Producto = _TblProductos.TblCategorias.Descripcion + ' ' + _TblProductos.TblMarca.Descripcion;

                            LstModelos.Add(DT);
                        }

                        return(LstModelos);
                    }
                }
                catch
                {
                    LstModelos = new List <Entidad.EntidadModelo>();
                }
                //si existe en Modelo se retorta
                try
                {
                    var Lista = (from M in Model.TblModelo
                                 join P in Model.TblProductos on M.IdProducto equals P.Id
                                 join G in Model.TblGama on M.IdGama equals G.Id
                                 where M.Descripcion.Contains(Parametro)
                                 select new Entidad.EntidadModelo
                    {
                        Id = M.Id,
                        IdProducto = P.Id,
                        IdGama = G.Id,
                        Gama = G.Descripcion,
                        Descripcion = M.Descripcion,
                        Especificaciones = M.Especificaciones
                    }).ToList();

                    if (Lista.Count >= 1)
                    {
                        foreach (Entidad.EntidadModelo d in Lista)
                        {
                            Entidad.EntidadModelo DT = new Entidad.EntidadModelo();
                            DT = d;

                            TblProductos _TblProductos = new TblProductos();

                            _TblProductos = Model.TblProductos.FirstOrDefault(x => x.Id == d.IdProducto);


                            DT.Producto = _TblProductos.TblCategorias.Descripcion + ' ' + _TblProductos.TblMarca.Descripcion;

                            LstModelos.Add(DT);
                        }

                        return(LstModelos);
                    }
                }
                catch
                {
                    LstModelos = new List <Entidad.EntidadModelo>();
                }
                //sino hay coincidencia se retorna todos
                try
                {
                    var Lista = (from M in Model.TblModelo
                                 join P in Model.TblProductos on M.IdProducto equals P.Id
                                 join G in Model.TblGama on M.IdGama equals G.Id
                                 where G.Descripcion.Contains(Parametro)
                                 select new Entidad.EntidadModelo
                    {
                        Id = M.Id,
                        IdProducto = P.Id,
                        IdGama = G.Id,
                        Gama = G.Descripcion,
                        Descripcion = M.Descripcion,
                        Especificaciones = M.Especificaciones
                    }).ToList();

                    foreach (Entidad.EntidadModelo d in Lista)
                    {
                        Entidad.EntidadModelo DT = new Entidad.EntidadModelo();
                        DT = d;

                        TblProductos _TblProductos = new TblProductos();

                        _TblProductos = Model.TblProductos.FirstOrDefault(x => x.Id == d.IdProducto);


                        DT.Producto = _TblProductos.TblCategorias.Descripcion + ' ' + _TblProductos.TblMarca.Descripcion;

                        LstModelos.Add(DT);
                    }

                    return(LstModelos);
                }
                catch
                {
                    LstModelos = new List <Entidad.EntidadModelo>();
                }

                return(LstModelos);
            }
            catch
            {
                return(LstModelos = new List <Entidad.EntidadModelo>());
            }
        }
        //Metodo para Listar Todos los Elementos por filtro, se usa en MainProdcutosAlmacen
        public List <Entidad.EntidadProductoAlmacenDet> GetProductosAlmacenxparametro(string Parametro, int id)
        {
            try
            {
                ListaDetalle = new List <Entidad.EntidadProductoAlmacenDet>();
                if (string.IsNullOrEmpty(Parametro))
                {
                    //buscar por parametro vacio
                    var todos = (from PA in Model.TblProductosAlmacenDet
                                 join M in Model.TblModelo on PA.IdModelo equals M.Id
                                 where PA.IdProductosAlmacen == id
                                 select new Entidad.EntidadProductoAlmacenDet
                    {
                        Id = PA.Id,
                        IdModelo = PA.IdModelo,
                        Modelo = M.Descripcion,
                        CodProducto = PA.CodProducto,
                        Serie = PA.Serie,
                        IMEI = PA.IMEI,
                        PrecioC = PA.PrecioC,
                        PrecioV = PA.PrecioV,
                        MotivoBaja = PA.MotivoBaja,
                        GAMA = M.TblGama.Descripcion,
                        Caracteristicas = M.Especificaciones
                    }).ToList();

                    if (todos.Count >= 1)
                    {
                        foreach (Entidad.EntidadProductoAlmacenDet d in todos)
                        {
                            Entidad.EntidadProductoAlmacenDet DT = new Entidad.EntidadProductoAlmacenDet();
                            DT = d;
                            if (d.MotivoBaja != null)
                            {
                                DT.EstadoVenta = "DE BAJA";
                            }
                            else if (d.Estado == true)
                            {
                                DT.EstadoVenta = "VENDIDO";
                            }
                            else
                            {
                                DT.EstadoVenta = "NO VENDIDO";
                            }

                            TblProductos _TblProductos = new TblProductos();

                            _TblProductos = Model.TblProductos.FirstOrDefault(x => x.Id == d.IDPRODUCTO);


                            DT.NOMREPRODUCTO = _TblProductos.TblCategorias.Descripcion + ' ' + _TblProductos.TblMarca.Descripcion;

                            ListaDetalle.Add(DT);
                        }
                        return(ListaDetalle);
                    }
                }

                //buscar por codproducto
                var CodProducto = (from PA in Model.TblProductosAlmacenDet
                                   join M in Model.TblModelo on PA.IdModelo equals M.Id
                                   where PA.IdProductosAlmacen == id && PA.CodProducto.Contains(Parametro)
                                   select new Entidad.EntidadProductoAlmacenDet
                {
                    Id = PA.Id,
                    IdModelo = PA.IdModelo,
                    Modelo = M.Descripcion,
                    CodProducto = PA.CodProducto,
                    Serie = PA.Serie,
                    IMEI = PA.IMEI,
                    PrecioC = PA.PrecioC,
                    PrecioV = PA.PrecioV,
                    MotivoBaja = PA.MotivoBaja,
                    GAMA = M.TblGama.Descripcion,
                    Caracteristicas = M.Especificaciones
                }).ToList();

                if (CodProducto.Count >= 1)
                {
                    foreach (Entidad.EntidadProductoAlmacenDet d in CodProducto)
                    {
                        Entidad.EntidadProductoAlmacenDet DT = new Entidad.EntidadProductoAlmacenDet();
                        DT = d;
                        if (d.MotivoBaja != null)
                        {
                            DT.EstadoVenta = "DE BAJA";
                        }
                        else if (d.Estado == true)
                        {
                            DT.EstadoVenta = "VENDIDO";
                        }
                        else
                        {
                            DT.EstadoVenta = "NO VENDIDO";
                        }

                        TblProductos _TblProductos = new TblProductos();

                        _TblProductos = Model.TblProductos.FirstOrDefault(x => x.Id == d.IDPRODUCTO);


                        DT.NOMREPRODUCTO = _TblProductos.TblCategorias.Descripcion + ' ' + _TblProductos.TblMarca.Descripcion;

                        ListaDetalle.Add(DT);
                    }
                    return(ListaDetalle);
                }
                //buscar por serie
                var ListaSerie = (from PA in Model.TblProductosAlmacenDet
                                  join M in Model.TblModelo on PA.IdModelo equals M.Id
                                  where PA.IdProductosAlmacen == id && PA.Serie.Contains(Parametro)
                                  select new Entidad.EntidadProductoAlmacenDet
                {
                    Id = PA.Id,
                    IdModelo = PA.IdModelo,
                    Modelo = M.Descripcion,
                    CodProducto = PA.CodProducto,
                    Serie = PA.Serie,
                    IMEI = PA.IMEI,
                    PrecioC = PA.PrecioC,
                    PrecioV = PA.PrecioV,
                    MotivoBaja = PA.MotivoBaja,
                    GAMA = M.TblGama.Descripcion,
                    Caracteristicas = M.Especificaciones
                }).ToList();

                if (ListaSerie.Count >= 1)
                {
                    foreach (Entidad.EntidadProductoAlmacenDet d in ListaSerie)
                    {
                        Entidad.EntidadProductoAlmacenDet DT = new Entidad.EntidadProductoAlmacenDet();
                        DT = d;
                        if (d.MotivoBaja != null)
                        {
                            DT.EstadoVenta = "DE BAJA";
                        }
                        else if (d.Estado == true)
                        {
                            DT.EstadoVenta = "VENDIDO";
                        }
                        else
                        {
                            DT.EstadoVenta = "NO VENDIDO";
                        }

                        TblProductos _TblProductos = new TblProductos();

                        _TblProductos = Model.TblProductos.FirstOrDefault(x => x.Id == d.IDPRODUCTO);


                        DT.NOMREPRODUCTO = _TblProductos.TblCategorias.Descripcion + ' ' + _TblProductos.TblMarca.Descripcion;

                        ListaDetalle.Add(DT);
                    }
                    return(ListaDetalle);
                }
                //buscar por todos
                var Lista = (from PA in Model.TblProductosAlmacenDet
                             join M in Model.TblModelo on PA.IdModelo equals M.Id
                             where PA.IdProductosAlmacen == id && PA.Serie.Contains(Parametro)
                             select new Entidad.EntidadProductoAlmacenDet
                {
                    Id = PA.Id,
                    IdModelo = PA.IdModelo,
                    Modelo = M.Descripcion,
                    CodProducto = PA.CodProducto,
                    Serie = PA.Serie,
                    IMEI = PA.IMEI,
                    PrecioC = PA.PrecioC,
                    PrecioV = PA.PrecioV,
                    MotivoBaja = PA.MotivoBaja,
                    GAMA = M.TblGama.Descripcion,
                    Caracteristicas = M.Especificaciones
                }).ToList();

                if (Lista.Count >= 1)
                {
                    foreach (Entidad.EntidadProductoAlmacenDet d in Lista)
                    {
                        Entidad.EntidadProductoAlmacenDet DT = new Entidad.EntidadProductoAlmacenDet();
                        DT = d;
                        if (d.MotivoBaja != null)
                        {
                            DT.EstadoVenta = "DE BAJA";
                        }
                        else if (d.Estado == true)
                        {
                            DT.EstadoVenta = "VENDIDO";
                        }
                        else
                        {
                            DT.EstadoVenta = "NO VENDIDO";
                        }

                        TblProductos _TblProductos = new TblProductos();

                        _TblProductos = Model.TblProductos.FirstOrDefault(x => x.Id == d.IDPRODUCTO);


                        DT.NOMREPRODUCTO = _TblProductos.TblCategorias.Descripcion + ' ' + _TblProductos.TblMarca.Descripcion;

                        ListaDetalle.Add(DT);
                    }
                    return(ListaDetalle);
                }

                return(ListaDetalle);
            }
            catch
            {
                return(ListaDetalle);
            }
        }