Exemplo n.º 1
0
        public ActionResult Delete(int id)
        {
            using (var db = new dev_orquestaEntities())
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        List <DETALLE_PEDIDO> det = (from deta in db.DETALLE_PEDIDO
                                                     select new DETALLE_PEDIDO {
                            Id_Pedido = id
                        }).ToList();

                        PEDIDO ped = db.PEDIDO.Find(id);

                        foreach (DETALLE_PEDIDO items in det)
                        {
                            db.DETALLE_PEDIDO.Remove(items);
                        }

                        db.PEDIDO.Remove(ped);
                        db.SaveChanges();
                    }
                    catch (DataException /* dex */)
                    {
                        //Log the error (uncomment dex variable name and add a line here to write a log.
                        return(RedirectToAction("Delete", new { id = id, saveChangesError = true }));
                    }
                }
            return(RedirectToAction("Create"));
        }
Exemplo n.º 2
0
        public ActionResult Delete_Detalles(int id_det)
        {
            dev_orquestaEntities         db      = new dev_orquestaEntities();
            DETALLE_INVENTARIO           detalle = new DETALLE_INVENTARIO();
            List <Detalle_InventarioDTO> datos   = new List <Detalle_InventarioDTO>();
            ARTICULO art = new ARTICULO()
            {
            };

            detalle = db.DETALLE_INVENTARIO
                      .Include("ARTICULO").FirstOrDefault(ct => ct.Id_Detalle_Inventario.Equals(id_det));


            if (detalle.ARTICULO.Id_Categoria == 1)
            {
                POS po = db.ARTICULO.OfType <POS>().FirstOrDefault(ct => ct.Id_Articulo.Equals(detalle.ARTICULO.Id_Articulo));
                db.ARTICULO.Remove(po);
            }
            else
            {
                SIM si = db.ARTICULO.OfType <SIM>().FirstOrDefault(ct => ct.Id_Articulo.Equals(detalle.ARTICULO.Id_Articulo));
                db.ARTICULO.Remove(si);
            }

            db.DETALLE_INVENTARIO.Remove(detalle);
            db.SaveChanges();

            datos = lista_datos_detalles(detalle.Id_Inventario);
            return(View("Details", datos));
        }
Exemplo n.º 3
0
        public JsonResult InsertValue(getConfiguracionPOS[] itemlist)
        {
            dev_orquestaEntities db = new dev_orquestaEntities();

            List <ARTICULO> la  = new List <ARTICULO>();
            List <POS_SIM>  p_s = new List <POS_SIM>();
            List <POS>      lp  = new List <POS>();
            List <SIM>      ls  = new List <SIM>();



            foreach (getConfiguracionPOS i in itemlist)
            {
                POS     p  = new POS();
                SIM     s  = new SIM();
                POS_SIM ps = new POS_SIM();

                p.Id_Categoria = 1;
                p.Id_Estado    = 1;
                p.Descripcion  = i.Descripcion;
                p.Stock        = "2";
                p.Pk_version   = i.Package;
                p.Id_Modelo    = Convert.ToInt32(i.Modelo);
                p.SW_version   = i.Software;
                p.Nro_serie    = i.Nro_serie_POS;


                s.Id_Categoria = 2;
                s.Id_Estado    = 1;
                s.Descripcion  = i.Descripcion;
                s.Stock        = "2";
                s.Puk          = "0";
                s.Phone_Numer  = "094800578";
                s.PIN          = "6464";
                s.Nro_serie    = i.Nro_serie_SIM;

                db.ARTICULO.Add(p);
                db.SaveChanges();

                db.ARTICULO.Add(s);
                db.SaveChanges();

                int last_insert_id_a1 = p.Id_Articulo;
                int last_insert_id_a2 = s.Id_Articulo;


                ps.Id_POS = last_insert_id_a1;
                ps.Id_SIM = last_insert_id_a2;

                db.POS_SIM.Add(ps);
                db.SaveChanges();
            }
            return(Json("Ok"));
        }
Exemplo n.º 4
0
        public ActionResult getConfiguracionPOS()
        {
            dev_orquestaEntities db = new dev_orquestaEntities();


            List <ModeloDTO> ModeloDTO = (from mode in db.MODELO

                                          select new ModeloDTO {
                Id_Modelo = mode.Id_Modelo, Nombre = mode.Nombre
            }).ToList();

            ViewBag.Modelo = ModeloDTO;



            return(View());
        }
Exemplo n.º 5
0
        public List <Detalle_InventarioDTO> lista_datos_detalles(int id)
        {
            List <Detalle_InventarioDTO> datos = new List <Detalle_InventarioDTO>();
            dev_orquestaEntities         db    = new dev_orquestaEntities();

            datos = (from det in db.DETALLE_INVENTARIO
                     join ar in db.ARTICULO on det.Id_Articulo equals ar.Id_Articulo
                     join es in db.ESTADO on ar.Id_Estado equals es.Id_Estado
                     join ca in db.CATEGORIA on ar.Id_Categoria equals ca.Id_Categoria
                     join ub in db.UBICACION on det.Id_Ubicacion equals ub.Id_Ubicacion
                     where det.Id_Inventario == id
                     select new Detalle_InventarioDTO {
                Id_Detalle_Inventario = det.Id_Detalle_Inventario, Id_articulo = det.Id_Articulo, Categoria = ca.Descripcion, Ubicacion = ub.Descripcion, Estado = es.Descripcion
            }).ToList();


            return(datos);
        }
Exemplo n.º 6
0
        public ActionResult Guardar_Detalle_Inventario(int id, string Ubicacion, string Estado)
        {
            dev_orquestaEntities db      = new dev_orquestaEntities();
            DETALLE_INVENTARIO   detalle = new DETALLE_INVENTARIO();

            ARTICULO art = new ARTICULO()
            {
            };

            detalle = db.DETALLE_INVENTARIO
                      .Include("ARTICULO").FirstOrDefault(ct => ct.Id_Detalle_Inventario.Equals(id));

            detalle.Id_Ubicacion = 1;
            detalle.ARTICULO.ESTADO.Id_Estado = 1;

            db.DETALLE_INVENTARIO.Attach(detalle);
            db.SaveChanges();

            return(View());
        }
Exemplo n.º 7
0
        public List <InventarioDTO> lista_inventarios()
        {
            dev_orquestaEntities db = new dev_orquestaEntities();

            List <InventarioDTO> datos = new List <InventarioDTO>();

            try
            {
                datos = (from inv in db.INVENTARIO
                         select new InventarioDTO {
                    Fac_numero = inv.Fac_numero, Fec_factura = inv.Fec_Factura, Fec_ingreso = inv.Fec_ingreso, Proveedor = inv.Proveedor, Propietario = inv.Propietario, Id_Inventario = inv.Id_Inventario
                }).ToList();
            }
            catch (Exception ex)
            {
                ex.ToString();
            }

            return(datos);
        }
Exemplo n.º 8
0
        public bool validar_articulo_duplicado(dev_orquestaEntities db, string nro_serie, int tipo_articulo)
        {
            bool     existe = false;
            ARTICULO art    = new ARTICULO();

            if (tipo_articulo == 1)
            {
                art = db.ARTICULO.OfType <POS>().FirstOrDefault(ct => ct.Nro_serie.Equals(nro_serie));
            }
            else
            {
                art = db.ARTICULO.OfType <SIM>().FirstOrDefault(ct => ct.Nro_serie.Equals(nro_serie));
            }

            if (art != null)
            {
                existe = true;
            }

            return(existe);
        }
Exemplo n.º 9
0
        public void cargarCombos()
        {
            dev_orquestaEntities db = new dev_orquestaEntities();

            var usu = db.USUARIO.ToList();

            ViewBag.Usuarios = new SelectList(usu, "Id_Usuario", "Nombre");

            var can = db.CANAL.ToList();

            ViewBag.Canales = new SelectList(can, "Id_Canal", "Descripcion");

            var cmbPlan = db.PLANES.ToList();

            ViewBag.Planes = new SelectList(cmbPlan, "Id_Plan", "Descripcion");


            List <getPlanCount> lstPlan = (from a in db.ARTICULO
                                           join inv in db.DETALLE_INVENTARIO on a.Id_Articulo equals inv.Id_Articulo
                                           join po in  db.ARTICULO.OfType <POS>() on a.Id_Articulo equals po.Id_Articulo
                                           join mod in db.MODELO on po.Id_Modelo equals mod.Id_Modelo
                                           join modPl in db.MODELO_PLAN on mod.Id_Modelo equals modPl.Id_Modelo
                                           join Pl in db.PLANES on modPl.Id_Plan equals Pl.Id_Plan
                                           group new { Pl, mod } by new { Pl.Descripcion, mod.Nombre } into grp
                                           select new getPlanCount {
                Descripcion = grp.Key.Descripcion, Modelo = grp.Key.Nombre, Cantidad = grp.Count()
            }).ToList();

            ViewBag.tblPlan = lstPlan;


            List <Tipo_OperadorDTO> lstOperador = (from s in db.ARTICULO.OfType <SIM>()
                                                   join to in db.TIPO_OPERADOR on s.Id_Tipo_Operador equals to.Id_Tipo_Operador
                                                   group new { to } by new { to.Id_Tipo_Operador, to.Descripcion } into grpTO
                                                   select new Tipo_OperadorDTO {
                Id_Tipo_Operador = grpTO.Key.Id_Tipo_Operador, Descripcion = grpTO.Key.Descripcion
            }).ToList();

            ViewBag.Operador = lstOperador;
        }
Exemplo n.º 10
0
        public ActionResult Editar_Detalle_Inventario(int id)
        {
            dev_orquestaEntities  db      = new dev_orquestaEntities();
            Detalle_InventarioDTO detalle = new Detalle_InventarioDTO();

            //detalle = db.DETALLE_INVENTARIO
            //                   .Include("ARTICULO").Include("UBICACION").Include("ARTICULO.ESTADO").FirstOrDefault(ct => ct.Id_Detalle_Inventario.Equals(id));



            detalle = (from det in db.DETALLE_INVENTARIO
                       join ar in db.ARTICULO on det.Id_Articulo equals ar.Id_Articulo
                       join es in db.ESTADO on ar.Id_Estado equals es.Id_Estado
                       join ub in db.UBICACION on det.Id_Ubicacion equals ub.Id_Ubicacion
                       where det.Id_Detalle_Inventario == id
                       select new Detalle_InventarioDTO {
                Ubicacion = ub.Descripcion, Estado = es.Descripcion
            }).First();


            return(View(detalle));
        }
Exemplo n.º 11
0
        public ActionResult getPedidos()
        {
            //soy un cambio 22
            // if (!String.IsNullOrEmpty(pedido)) {
            dev_orquestaEntities db = new dev_orquestaEntities();

            List <getPedidos> datos = new List <getPedidos>();

            try
            {
                datos = (from ped in db.PEDIDO
                         join cans in db.CANAL on ped.Id_Canal equals cans.Id_Canal
                         join usu in db.USUARIO on ped.Id_Usuario equals usu.Id_Usuario
                         select new getPedidos {
                    Id_Pedido = ped.Id_Pedido, canal = cans.Descripcion, usuario = usu.Nombre, Fecha_Ingreso = ped.Fecha_Ingreso, Comentario = ped.Comentario
                }).ToList();
            }
            catch (Exception ex) {
                ex.ToString();
            }

            return(View(datos));
        }
Exemplo n.º 12
0
        public ActionResult Delete_Inventario(int id_inv)
        {
            dev_orquestaEntities db      = new dev_orquestaEntities();
            INVENTARIO           detalle = new INVENTARIO();
            List <InventarioDTO> datos   = new List <InventarioDTO>();
            ARTICULO             art     = new ARTICULO()
            {
            };

            detalle = db.INVENTARIO
                      .Include("DETALLE_INVENTARIO").Include("DETALLE_INVENTARIO.ARTICULO").FirstOrDefault(ct => ct.Id_Inventario.Equals(id_inv));


            foreach (DETALLE_INVENTARIO item in detalle.DETALLE_INVENTARIO)
            {
                if (item.ARTICULO.Id_Categoria == 1)
                {
                    POS po = db.ARTICULO.OfType <POS>().FirstOrDefault(ct => ct.Id_Articulo.Equals(item.ARTICULO.Id_Articulo));
                    db.ARTICULO.Remove(po);
                }
                else
                {
                    SIM si = db.ARTICULO.OfType <SIM>().FirstOrDefault(ct => ct.Id_Articulo.Equals(item.ARTICULO.Id_Articulo));
                    db.ARTICULO.Remove(si);
                }
            }

            db.DETALLE_INVENTARIO.RemoveRange(detalle.DETALLE_INVENTARIO);
            db.SaveChanges();

            db.INVENTARIO.Remove(detalle);
            db.SaveChanges();

            datos = lista_inventarios();
            return(View("Index", datos));
        }
Exemplo n.º 13
0
        public JsonResult getStockPlanes(int busqueda)
        {
            List <getPlanCount> plan = new List <getPlanCount>();

            if (!String.IsNullOrEmpty(busqueda.ToString()))
            {
                using (var db = new dev_orquestaEntities()) {
                    List <getPlanCount> lstPlan = (from po in db.ARTICULO.OfType <POS>()
                                                   join inv in db.DETALLE_INVENTARIO on po.Id_Articulo equals inv.Id_Articulo
                                                   join mod in db.MODELO on po.Id_Modelo equals mod.Id_Modelo
                                                   where mod.Id_Modelo == (busqueda.ToString() == "" ? mod.Id_Modelo : busqueda)
                                                   group po by mod.Nombre into grp
                                                   select new getPlanCount {
                        Descripcion = grp.Key, Cantidad = grp.Count()
                    }).ToList();

                    return(Json(lstPlan));
                }
            }
            else
            {
                return(Json(plan));
            }
        }
Exemplo n.º 14
0
        public ActionResult create2(HttpPostedFileBase file, string Fac_numero, DateTime Fec_ingreso, string Proveedor, string cboUbicacion, DateTime fec_factura, string Propietario)
        {
            string        ruta           = ConfigurationSettings.AppSettings["ruta_archivos"].ToString();
            StringBuilder sql            = new StringBuilder();
            string        columnas       = string.Empty;
            string        filePath       = string.Empty;
            string        _FileName      = string.Empty;
            int           last_insert_id = 0;
            List <string> repetidos      = new List <string>();
            int           contSIM        = 0;
            int           contPOS        = 0;
            INVENTARIO    inv            = null;
            bool          modificar      = true;

            try
            {
                if (file == null)
                {
                    return(View("create"));
                }

                if (file.ContentLength > 0)
                {
                    _FileName = Path.GetFileName(file.FileName);
                    filePath  = ruta + _FileName;
                    file.SaveAs(filePath);
                }
            }
            catch (IOException)
            {
                ViewBag.Error = "Error leyendo o guardando archivo. Verifique que el mismo exista y no esté en uso";
                return(View("create"));
            }

            using (var stream = file.InputStream)
            // using (var stream = System.IO.File.Open(_FileName, FileMode.Open, FileAccess.Read))
            {
                using (var reader = ExcelReaderFactory.CreateReader(stream))
                {
                    using (var db = new dev_orquestaEntities())
                        using (var dbContextTransaction = db.Database.BeginTransaction())
                        {
                            try
                            {
                                // var result = reader.AsDataSet();
                                var result = reader.AsDataSet(new ExcelDataSetConfiguration()
                                {
                                    // Gets or sets a callback to obtain configuration options for a DataTable.
                                    ConfigureDataTable = (tableReader) => new ExcelDataTableConfiguration()
                                    {
                                        UseHeaderRow = true,
                                    }
                                });


                                DataTable table = result.Tables[0];

                                //var dtResultado = table.Rows.Cast<DataRow>().Where(row => !Array.TrueForAll(row.ItemArray, value => { return row.ItemArray[0].ToString().Length == 0; }));


                                if (!validarDT(new string[] { "Serie", "Modelo", "Conectividad", "ID_Modelo", "ID_Conectividad", "Modelo_aux" }, table))
                                {
                                    ViewBag.Error = "Excel inválido";
                                    return(View("create"));
                                }


                                DataTable table_SIM = result.Tables[1];


                                if (!validarDT(new string[] { "Serie", "Operadora", "PIN", "PUK", "Phone Number", "ID_Operadora", "Operadora_aux" }, table_SIM))
                                {
                                    ViewBag.Error = "Excel inválido";
                                    return(View("create"));
                                }

                                table.Rows.RemoveAt(0);
                                table_SIM.Rows.RemoveAt(0);

                                //si factura existe la actualizo con sus items
                                if (Fac_numero != "")
                                {
                                    inv = db.INVENTARIO.FirstOrDefault(ct => ct.Fac_numero.Equals(Fac_numero));
                                }


                                if (inv == null)
                                {
                                    inv             = new INVENTARIO();
                                    inv.Proveedor   = Proveedor;
                                    inv.Fec_ingreso = Fec_ingreso;
                                    inv.Fac_numero  = Fac_numero;
                                    inv.Propietario = Propietario;
                                    inv.Fec_Factura = fec_factura;
                                    modificar       = false;
                                }


                                foreach (DataRow dr in table.Rows)
                                {
                                    POS    p         = new POS();
                                    string serie_POS = validarDataRow(dr, 0, 0);

                                    if (serie_POS == "")
                                    {
                                        continue;
                                    }

                                    if (serie_POS.Length != 24)
                                    {
                                        repetidos.Add("Formato incorrecto POS - " + serie_POS);
                                    }
                                    else if (validar_articulo_duplicado(db, serie_POS, 1))
                                    {
                                        repetidos.Add("Repetido POS - " + serie_POS);
                                    }
                                    else
                                    {
                                        p.Id_Estado    = 1;
                                        p.Id_Categoria = 1;
                                        p.Nro_serie    = serie_POS;
                                        p.Descripcion  = "";
                                        p.Id_Modelo    = Convert.ToInt32(validarDataRow(dr, 3, 1));

                                        db.ARTICULO.Add(p);
                                        db.SaveChanges();

                                        last_insert_id = p.Id_Articulo;

                                        DETALLE_INVENTARIO det_inv = new DETALLE_INVENTARIO();
                                        det_inv.Id_Articulo  = last_insert_id;
                                        det_inv.Id_Ubicacion = Convert.ToInt32(cboUbicacion);
                                        contPOS = contPOS + 1;


                                        inv.DETALLE_INVENTARIO.Add(det_inv);
                                    }
                                }



                                foreach (DataRow dr2 in table_SIM.Rows)
                                {
                                    SIM    s         = new SIM();
                                    string serie_SIM = validarDataRow(dr2, 0, 0);

                                    if (serie_SIM == "")
                                    {
                                        continue;
                                    }

                                    if (validar_articulo_duplicado(db, serie_SIM, 2))
                                    {
                                        repetidos.Add("Repetido SIM  -" + serie_SIM);
                                    }
                                    else
                                    {
                                        s.Id_Estado        = 1;
                                        s.Id_Categoria     = 2;
                                        s.Nro_serie        = serie_SIM;
                                        s.Descripcion      = "";
                                        s.Id_Tipo_Operador = Convert.ToInt32(validarDataRow(dr2, 5, 1));;
                                        db.ARTICULO.Add(s);

                                        db.SaveChanges();
                                        last_insert_id = s.Id_Articulo;

                                        DETALLE_INVENTARIO det_inv_sim = new DETALLE_INVENTARIO();
                                        det_inv_sim.Id_Articulo  = last_insert_id;
                                        det_inv_sim.Id_Ubicacion = Convert.ToInt32(cboUbicacion);;

                                        inv.DETALLE_INVENTARIO.Add(det_inv_sim);
                                        contSIM = contSIM + 1;
                                    }
                                }

                                //hay nuevos
                                if (contSIM > 0 || contPOS > 0)
                                {
                                    if (modificar)
                                    {
                                        db.INVENTARIO.Attach(inv);
                                    }
                                    else
                                    {
                                        db.INVENTARIO.Add(inv);
                                    }

                                    db.SaveChanges();
                                    dbContextTransaction.Commit();
                                }
                            }

                            catch (DbEntityValidationException e)
                            {
                                foreach (var eve in e.EntityValidationErrors)
                                {
                                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                                      eve.Entry.Entity.GetType().Name, eve.Entry.State);
                                    foreach (var ve in eve.ValidationErrors)
                                    {
                                        Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                                          ve.PropertyName, ve.ErrorMessage);
                                    }
                                }

                                dbContextTransaction.Rollback();
                                throw;
                            }
                        }
                }

                if (repetidos.Count > 0)
                {
                    ViewBag.lista_repetidos = repetidos;
                    ViewBag.POSSIM          = "Guardados: POS-" + contPOS + ", SIM-" + contSIM;
                    return(View("create"));
                }
                else
                {
                    return(RedirectToAction("Index"));
                }
            }
        }
Exemplo n.º 15
0
        public ActionResult guardar(PEDIDO ped, string detalles)
        {
            ViewBag.result = "";

            if (!ModelState.IsValid)
            {
                return(View());
            }

            using (var db = new dev_orquestaEntities())
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        ped.Id_Pedido     = 0;
                        ped.Fecha_Ingreso = DateTime.Now;
                        ped.USUARIO       = (USUARIO)Session["User"];
                        db.PEDIDO.Add(ped);
                        db.SaveChanges();

                        int last_insert_id = ped.Id_Pedido;

                        if (detalles != "" && detalles != null)
                        {
                            char caracter  = '}';
                            char caracter2 = '-';

                            string[] details = detalles.Split(caracter);

                            DETALLE_PEDIDO det_ped = new DETALLE_PEDIDO();

                            for (int i = 0; i < details.Length; i++)
                            {
                                string[] separo = details[i].Split(caracter2);

                                det_ped.Id_Pedido = last_insert_id;
                                det_ped.Cantidad  = Convert.ToInt32(separo[2].Trim());

                                db.DETALLE_PEDIDO.Add(det_ped);
                                db.SaveChanges();
                            }

                            dbContextTransaction.Commit();

                            return(RedirectToAction("getPedidos"));
                        }
                        else
                        {
                            //sin detalle no hay pedido
                            dbContextTransaction.Rollback();
                            ViewBag.result = "Ingrese Detalle";
                        }
                    }
                    catch {
                        dbContextTransaction.Rollback();
                        ViewBag.result = "Error Cargando Datos";
                    }
                }

            cargarCombos();
            return(View("create"));
        }