public ActionResult GoOnlyUploadFile(String plazasId)
        {
            Usuario user = Session["UsuarioData"] as Usuario;

            ViewBag.plazasId = new SelectList((from s in db.Plazas.ToList()
                                               join top in db.TopicosUsuarios on s.id equals top.topicoId
                                               where top.tipo.Trim().Equals("P") && top.usuarioId.Equals(user.Id)
                                               orderby s.descripcion
                                               select new
                                               {
                                                   id = s.id,
                                                   descripcion = s.descripcion
                                               }).Distinct(), "id", "descripcion");

            if (String.IsNullOrEmpty(plazasId))
            {
                var plazaTemp = from s in db.Plazas.ToList()
                                join top in db.TopicosUsuarios on s.id equals top.topicoId
                                where top.tipo.Trim().Equals("P") && top.usuarioId.Equals(user.Id)
                                orderby s.descripcion
                                select s;

                Plaza plaza = new Plaza();
                if (plazaTemp != null && plazaTemp.Count() > 0)
                {
                    foreach (var plazaItem in plazaTemp)
                    {
                        plaza = plazaItem;
                        break;
                    }
                    plazasId = plaza.id.ToString();
                }
            }
            ViewBag.patronesId = new SelectList((from s in db.Patrones.ToList()
                                                 join top in db.TopicosUsuarios on s.Id equals top.topicoId
                                                 where top.tipo.Trim().Equals("B") && top.usuarioId.Equals(user.Id) &&
                                                       !s.direccionArchivo.Trim().Equals(null) && !s.direccionArchivo.Trim().Equals(String.Empty) &&
                                                       s.Plaza.id.Equals(plazasId)
                                                 orderby s.registro
                                                 select new
                                                 {
                                                     id = s.Id,
                                                     FullName = s.registro + " - " + s.nombre
                                                 }).Distinct(), "id", "FullName", null);

            var patronesAsignados = (from x in db.TopicosUsuarios
                                     where x.usuarioId.Equals(user.Id)
                                     && x.tipo.Equals("B")
                                     select x.topicoId);

            var patrones = from p in db.Patrones
                           where !p.direccionArchivo.Trim().Equals(null) && !p.direccionArchivo.Trim().Equals(String.Empty)
                           && patronesAsignados.Contains(p.Id)
                           && p.Plaza.id.ToString().Equals(plazasId)
                           select new
                           {
                               id = p.Id,
                               DisplayText = p.registro.ToString() + " " + p.nombre.ToString()
                           };

            ViewData["patronesId"] = new SelectList(patrones, "Id", "DisplayText");
            return View("OnlyUpLoadFile");
        }
Exemple #2
0
        /**
         * Damos de alta al usuario principal
         * */
        private int usuarioRoot(Plaza plaza, Role role)
        {
            var usuarioRoot = db.Usuarios.Where(x => x.claveUsuario.Trim().Equals("root")).FirstOrDefault();

            Usuario usuario = new Usuario();

            if (usuarioRoot == null)
            {
                DateTime date = DateTime.Now;

                usuario.claveUsuario = "root";
                usuario.apellidoPaterno = "SIAP";
                usuario.apellidoMaterno = "Admon";
                usuario.contrasena = "123";
                usuario.email = "*****@*****.**";
                usuario.estatus = "A";
                usuario.nombreUsuario = "El Administrador";
                usuario.fechaIngreso = date;
                usuario.Role = role;
                usuario.roleId = role.id;
                usuario.plazaId = plaza.id;
                usuario.Plaza = plaza;

                db.Usuarios.Add(usuario);
                db.SaveChanges();
            }
            else {
                usuario = usuarioRoot;
            }

            return usuario.Id;
        }
        /**
         * Actualizamos los patrones
         *
         */
        public int RefreshBoss(String path)
        {
            SUAHelper sua = null;
            int count = 0;
            Boolean isError = false;
            try
            {
                //Realizamos la conexion
                sua = new SUAHelper(path);

                String sSQL = "SELECT REG_PAT, RFC_PAT, NOM_PAT, ACT_PAT, DOM_PAT, " +
                              "       MUN_PAT, CPP_PAT, ENT_PAT, TEL_PAT, REM_PAT, " +
                              "       ZON_PAT, DEL_PAT, CAR_ENT, NUM_DEL, CAR_DEL, " +
                              "       NUM_SUB, CAR_SUB, TIP_CON, CON_VEN, INI_AFIL," +
                              "       PAT_REP, CLASE  , FRACCION, STyPS  " +
                              "  FROM Patron   " +
                              "  ORDER BY REG_PAT ";

                //Ejecutamos nuestra consulta
                DataTable dt = sua.ejecutarSQL(sSQL);

                foreach (DataRow rows in dt.Rows)
                {
                    //Revisamos la existencia del registro

                    String patronDescripcion = rows["REG_PAT"].ToString();
                    Patrone patron = new Patrone();
                    if (!patronDescripcion.Equals(""))
                    {
                        var patronTemp = from b in db.Patrones
                                         where b.registro.Equals(patronDescripcion.Trim())
                                         select b;

                        if (patronTemp != null && patronTemp.Count() > 0)
                        {
                            foreach (var patronItem in patronTemp)
                            {
                                patron = patronItem;
                                break;
                            }//Definimos los valores para la plaza
                        }
                        else
                        {
                            patron.registro = "";
                        }

                    }

                    if (!patron.registro.Equals(""))
                    {
                        String plazaDescripcion = rows["CAR_ENT"].ToString();
                        if (!plazaDescripcion.Equals(""))
                        {
                            var plazaTemp = from b in db.Plazas
                                                 where b.descripcion.Equals(plazaDescripcion.Trim())
                                                 select b;

                            Plaza plaza = new Plaza();

                            if (plazaTemp.Count() > 0)
                            {
                                foreach (var plazaItem in plazaTemp)
                                {
                                    plaza.id = plazaItem.id;
                                    plaza.descripcion = plazaItem.descripcion;
                                    plaza.indicador = "P";
                                    break;
                                }//Definimos los valores para la plaza
                            }
                            else {
                                plaza.descripcion = plazaDescripcion.Trim();
                                plaza.indicador = "P";
                                db.Plazas.Add(plaza);
                                db.SaveChanges();

                            }//Ya existen datos con esta plaza?

                            //Modificamos los datos del patron existente
                            patron.telefono = rows["TEL_PAT"].ToString();
                            patron.domicilio = rows["DOM_PAT"].ToString();
                            patron.patRep = rows["PAT_REP"].ToString();
            /*                          patron.registro = rows["REG_PAT"].ToString();
                            patron.rfc = rows["RFC_PAT"].ToString();
                            patron.nombre = rows["NOM_PAT"].ToString();
                            patron.actividad = rows["ACT_PAT"].ToString();
                            patron.municipio = rows["MUN_PAT"].ToString();
                            patron.codigoPostal = rows["CPP_PAT"].ToString();
                            patron.entidad = rows["ENT_PAT"].ToString();
                            patron.remision = ((Boolean.Parse(rows["REM_PAT"].ToString()) == true) ? "V" : "F");
                            patron.zona = rows["ZON_PAT"].ToString();
                            patron.delegacion = rows["DEL_PAT"].ToString();
                            patron.carEnt = rows["CAR_ENT"].ToString();
                            patron.numeroDelegacion = Int32.Parse(rows["NUM_DEL"].ToString());
                            patron.carDel = rows["CAR_DEL"].ToString();
                            patron.numSub = Int32.Parse(rows["NUM_SUB"].ToString());
                            patron.Plaza_id = plaza.id;
                            patron.tipoConvenio = Decimal.Parse(rows["TIP_CON"].ToString());
                            patron.convenio = rows["CON_VEN"].ToString();
                            patron.inicioAfiliacion = rows["INI_AFIL"].ToString();
                            patron.clase = rows["CLASE"].ToString();
                            patron.fraccion = rows["FRACCION"].ToString();
                            patron.STyPS = rows["STyPS"].ToString();            */

                            //Ponemos la entidad en modo modficada y guardamos cambios
                            try
                            {
                                db.Entry(patron).State = EntityState.Modified;
                                db.SaveChanges();
                                count++;
                            }
                            catch (DbEntityValidationException ex)
                            {
                                StringBuilder sb = new StringBuilder();

                                foreach (var failure in ex.EntityValidationErrors)
                                {
                                    sb.AppendFormat("{0} failed validation\n", failure.Entry.Entity.GetType());
                                    foreach (var error in failure.ValidationErrors)
                                    {
                                        sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage);
                                        sb.AppendLine();
                                    }
                                }
                            }
                        }
                    }
                    else
                    {

                        String plazaDescripcion = rows["CAR_ENT"].ToString();
                        if (!plazaDescripcion.Equals(""))
                        {
                            var plazaTemp = from b in db.Plazas
                                            where b.descripcion.Equals(plazaDescripcion.Trim())
                                            select b;

                            Plaza plaza = new Plaza();

                            if (plazaTemp.Count() > 0)
                            {
                                foreach (var plazaItem in plazaTemp)
                                {
                                    plaza.id = plazaItem.id;
                                    plaza.descripcion = plazaItem.descripcion;
                                    plaza.indicador = "P";
                                    break;
                                }//Definimos los valores para la plaza
                            }
                            else
                            {
                                plaza.descripcion = plazaDescripcion.Trim();
                                plaza.indicador = "P";
                                db.Plazas.Add(plaza);
                                db.SaveChanges();

                            }//Ya existen datos con esta plaza?
                            //Creamos el nuevo patron
                            patron = new Patrone();

                            patron.registro = rows["REG_PAT"].ToString();
                            patron.rfc = rows["RFC_PAT"].ToString();
                            patron.nombre = rows["NOM_PAT"].ToString();
                            patron.actividad = rows["ACT_PAT"].ToString();
                            patron.domicilio = rows["DOM_PAT"].ToString();
                            patron.municipio = rows["MUN_PAT"].ToString();
                            patron.codigoPostal = rows["CPP_PAT"].ToString();
                            patron.entidad = rows["ENT_PAT"].ToString();
                            patron.telefono = rows["TEL_PAT"].ToString();
                            patron.remision = ((Boolean.Parse(rows["REM_PAT"].ToString()) == true) ? "V" : "F");
                            patron.zona = rows["ZON_PAT"].ToString();
                            patron.delegacion = rows["DEL_PAT"].ToString();
                            patron.carEnt = rows["CAR_ENT"].ToString();
                            patron.numeroDelegacion = Int32.Parse(rows["NUM_DEL"].ToString());
                            patron.carDel = rows["CAR_DEL"].ToString();
                            patron.numSub = Int32.Parse(rows["NUM_SUB"].ToString());
                            patron.Plaza_id = plaza.id;
                            patron.tipoConvenio = Decimal.Parse(rows["TIP_CON"].ToString());
                            patron.convenio = rows["CON_VEN"].ToString();
                            patron.inicioAfiliacion = rows["INI_AFIL"].ToString();
                            patron.patRep = rows["PAT_REP"].ToString();
                            patron.clase = rows["CLASE"].ToString();
                            patron.fraccion = rows["FRACCION"].ToString();
                            patron.STyPS = rows["STyPS"].ToString();

                            //Guardamos el patron
                            try
                            {
                                db.Patrones.Add(patron);
                                db.SaveChanges();
                                count++;
                            }
                            catch (DbEntityValidationException ex)
                            {
                                StringBuilder sb = new StringBuilder();

                                foreach (var failure in ex.EntityValidationErrors)
                                {
                                    sb.AppendFormat("{0} failed validation\n", failure.Entry.Entity.GetType());
                                    foreach (var error in failure.ValidationErrors)
                                    {
                                        sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage);
                                        sb.AppendLine();
                                    }
                                }
                            }
                        }
                    }
                }
            }
            catch (OleDbException ex)
            {
                if (ex.Source != null)
                {
                    Console.WriteLine(ex.Source);
                    isError = true;
                }
            }
            finally
            {
                if (sua != null)
                {
                    sua.cerrarConexion();
                }
            }

            if (isError)
            {
                TempData["error"] = isError;
                TempData["viewMessage"] = "Ocurrio un error al intentar cargar el archivo";
            }
            else {
                TempData["error"] = isError;
                TempData["viewMessage"] = "Se ha realizado la actualización de los Patrones con exito!";
            }

            return count;
        }
Exemple #4
0
        /**
         * Creamos las plazas
         * */
        private Plaza crearPlazas()
        {
            int count = db.Plazas.Count();
            Plaza plaza = new Plaza();
            if (count == 0)
            {
                plaza.descripcion = "Local";

                db.Plazas.Add(plaza);
                db.SaveChanges();
            }
            else
            {
                plaza = db.Plazas.Find(1);
            }
            return plaza;
        }