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"); }
/** * 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; }
/** * 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; }