public List<GraficoModeloEvolutivoAnomalias> DatosGraficoPeso(int pe)
        {

            Conexion db = new Conexion();
            List<GraficoModeloEvolutivoAnomalias> retorno = new List<GraficoModeloEvolutivoAnomalias>();
            try
            {


                foreach (var e in db.MoEvo_Curva_Anomalias.Where(m=>m.peso == pe).OrderBy(m => m.peso).ToList())
                {

                    GraficoModeloEvolutivoAnomalias nuevo = new GraficoModeloEvolutivoAnomalias();
                    nuevo.name = e.nombre;
                    List<double> lista_double = new List<double>();
                    foreach (var z in db.MoEvo_Curvas_Anomalias.Where(m => m.id_curva == e.id).OrderBy(m => m.valor).ToList())
                    {
                        lista_double.Add(z.valor);
                    }

                    nuevo.data = lista_double;

                    retorno.Add(nuevo);
                }

            }
            catch (Exception e)
            { }

            return retorno;
        }
Пример #2
0
        public async Task<Operaciones> FindId(string id) {

            Conexion db = new Conexion();
            Utiles utiles = new Utiles();
            Operaciones operaciones = await db.Operaciones.FindAsync(id);

            Operaciones_Subcontratas sub_con = await db.Operaciones_Subcontratas.SingleOrDefaultAsync(m=>m.operacion_id==id);
            if(sub_con !=null){
                operaciones.subcontrata = sub_con.subcontrata_id;
                operaciones.coste_sub = sub_con.cantidad;
            }
            List<Operaciones_Documentos> lista_ficheros = await db.Operaciones_Documentos.Where(m => m.operacion_id == id).ToListAsync();
            if(lista_ficheros.Count > 0){
                operaciones.ficheros = lista_ficheros;            
            }

            operaciones.lista_anomalias = utiles.Listas()[1];
            operaciones.lista_tipo_personal = utiles.Listas()[2];
            operaciones.lista_tipo_maquinaria = utiles.Listas()[3];
            operaciones.lista_tipo_material = utiles.Listas()[4];
            operaciones.lista_subcontratas = utiles.Listas()[5];
            operaciones.valores_personal = await db.Operaciones_TipoPersonal.Where(m => m.operacion == id).ToListAsync();
            operaciones.valores_material = await db.Operaciones_TipoMaterial.Where(m => m.operacion == id).ToListAsync();
            operaciones.valores_maquinaria = await db.Operaciones_TipoMaquinaria.Where(m => m.operacion == id).ToListAsync();


            return operaciones;
        }
Пример #3
0
        public DetallesPerfil(UserManager<ApplicationUser> userManager, string id)
        {
            var user = userManager.FindById(id);
            
            if(user!=null){
                Conexion db = new Conexion();
                ApplicationDbContext dba = new ApplicationDbContext();
                Utiles utiles = new Utiles();

                this.id = id;
                this.nombre = user.nombre;
                this.apellido1 = user.apellido1;
                this.apellido2 = user.apellido2;
                this.telefono = user.telefono;
                this.email = user.email;
                this.fecha_creado = user.fecha_creado;
                this.fecha_ul_acceso = user.fecha_ul_acceso;
                this.perfil = user.perfil;
                this.roles = dba.User_Role.Where(m => m.UserId == this.id).Select(m => m.RoleId).ToList();
                this.listaroles = utiles.Listas()[0];
                this.historialUsuario = db.Historial.Where(m => m.usuario == this.id).OrderByDescending(m=>m.fecha).ToList();
            }

        
        }
Пример #4
0
        //EDITAR SUBESTACION
        public SubestacionesForm Editar(string id)
        {
            var db = new Conexion();
            SubestacionesForm editar = new SubestacionesForm();

            conn.Open();
            //cadena para insertar una torre
            NpgsqlCommand command = new NpgsqlCommand("select * from Ed_Subestacion('" + id + "')", conn);

            NpgsqlDataReader dr = command.ExecuteReader();

            while (dr.Read())
            {
                editar.id = dr[0].ToString();
                editar.nombre = dr[1].ToString();
                editar.coordenadas = dr[2].ToString().Trim(new Char[] { 'P', 'O', 'I', 'N', 'T', '(', ')' });
                Regex regex = new Regex(" ");
                string[] substrings = regex.Split(editar.coordenadas);
                editar.lat = substrings[0];
                editar.lon = substrings[1];
                editar.t_coordenadas = 1;
                editar.ficheros = db.Subestaciones_Documentos.Where(m => m.subestacion_id == id).ToList();
            }

            return editar;


        }
Пример #5
0
        /// <summary>
        /// Método privado de lista de patologías
        /// </summary>
        /// <returns></returns>
        private List<Patologias> lista() {
            Conexion db = new Conexion();

            List<Patologias> list = db.Patologias.ToList();

            return list;        
        }
        public List<GraficoModeloEvolutivoRiesgos> DatosGraficoK(string riesgo,int k)
        {

            Conexion db = new Conexion();
            List<GraficoModeloEvolutivoRiesgos> retorno = new List<GraficoModeloEvolutivoRiesgos>();
            try
            {


                foreach (var e in db.MoEvo_Curva_Riesgos.Where(m => m.id_riesgo == riesgo&& m.peso ==k).OrderBy(m => m.peso).ToList())
                {

                    GraficoModeloEvolutivoRiesgos nuevo = new GraficoModeloEvolutivoRiesgos();
                    nuevo.name = e.nombre;
                    List<double> lista_double = new List<double>();
                    var lista = db.ViewModeloEvolucionRiesgos.Where(m => m.id_curva == e.id).ToList();
                    foreach (var z in lista)
                    {
                        lista_double.Add(z.valor);
                    }

                    nuevo.data = lista_double;

                    retorno.Add(nuevo);
                }

            }
            catch (Exception e)
            { }

            return retorno;
        }
Пример #7
0
 public List<ApoyoLista> GetAllApoyos()
 {
     using (Conexion db = new Conexion())
     {
         List<ApoyoLista> lista = db.ApoyoLista.ToList();
         return lista;
     }
 }
Пример #8
0
 public Operaciones() {
     Conexion db = new Conexion();
     Utiles utiles = new Utiles();
     this.id = Guid.NewGuid().ToString();    
     this.lista_anomalias = utiles.Listas()[1];
     this.lista_tipo_personal = utiles.Listas()[2];
     this.lista_tipo_maquinaria = utiles.Listas()[3];
     this.lista_tipo_material = utiles.Listas()[4];
     this.lista_subcontratas = utiles.Listas()[5];
 }
Пример #9
0
        public async Task<ActionResult> Nuevo([Bind(Include = "id,nombre,linea,ano_actual,acceso_coche,distancia_pie,o_acceso_coche,o_distancia_pie,lat,lon,tipo_cimentacion,referencia_catastral,observaciones,seguridad,suelo,tipo_foemp,num_cir,num_empalmes,a_mantenimiento,t_coordenadas,a_o_s,subCircuitos")] ApoyoForm apoyo)
        {
            if (ModelState.IsValid)
            {
                apoyo.id = Guid.NewGuid().ToString();
                if (apoyo.t_coordenadas == 1)
                {
                    Apoyo nuevo = new Apoyo();
                    Conexion db = new Conexion();
                    nuevo.id = apoyo.id;
                    nuevo.nombre = apoyo.nombre;
                    nuevo.linea = apoyo.linea;
                    nuevo.ano_construccion = int.Parse(apoyo.ano_actual);
                    nuevo.acceso_coche = apoyo.acceso_coche;
                    nuevo.o_acceso_coche = apoyo.o_acceso_coche;                   
                    nuevo.distancia_pie = apoyo.distancia_pie;
                    nuevo.o_distancia_pie = apoyo.o_distancia_pie;
                    nuevo.tipo_cimentacion = apoyo.tipo_cimentacion;
                    nuevo.referencia_catastral = apoyo.referencia_catastral;
                    nuevo.seguridad = apoyo.seguridad;
                    nuevo.num_empalmes = apoyo.num_empalmes;
                    nuevo.suelo = apoyo.suelo;
                    nuevo.observaciones = apoyo.observaciones;
                    nuevo.tipo_foemp = apoyo.tipo_foemp;
                    nuevo.a_mantenimiento = apoyo.a_mantenimiento;
                    nuevo.num_cir = apoyo.num_cir;
                    nuevo.ubicacion = System.Data.Entity.Spatial.DbGeometry.PointFromText(string.Format("POINT({0} {1})", apoyo.lat, apoyo.lon), 4326).AsBinary();

                    if (apoyo.a_o_s == "0")
                    {
                        nuevo.amarre = true;
                        nuevo.sustentacion = false;
                    }
                    else
                    {
                        nuevo.amarre = false;
                        nuevo.sustentacion = true;
                    }

                    db.Apoyo.Add(nuevo);
                    await db.SaveChangesAsync();
                }
                else 
                {                    
                    bool nuevoA = new Apoyo().Insertar_UTM(apoyo);                
                }
                Historial nuevoH = new Historial("Creó", User.Identity.GetUserId(), "Apoyo", apoyo.id, apoyo.nombre, Request.UserHostAddress);
                TempData["Mensaje"] = "Apoyo creado correctamente.";
                return RedirectToAction("Editar", "Apoyo", new {id= apoyo.id });
            }

            TempData["Mensaje"] = "Error al crear la Apoyo.";
            return View(apoyo);
        }
        public ConsultaInspecciones() {

            var db = new Conexion();

            this.listaLineas = new Lineas().ListaDrop();
            this.listaZonas = new Zonas().ListaDrop();
            this.listaGPR = new Grados_Proximidad().ListaDrop();

            this.listaFR = db.Factores_Riesgo.ToList();
            this.listaAFR = db.Agrupacion_FR.OrderBy(m => m.nombre).ToList();            
            this.listaPA = db.Patologias.OrderBy(m => m.nombre).ToList();
        
        }
Пример #11
0
        public async Task<ActionResult> RecuperarPass(string usuario)
        {
            var user = await UserManager.FindByNameAsync(usuario);

            if(user != null)
            {
                Conexion db = new Conexion();
                List<UsuarioRecovery> listaRecovery = db.UsuarioRecovery.Where(m => m.username == usuario).ToList();
                db.UsuarioRecovery.RemoveRange(listaRecovery);
                await db.SaveChangesAsync();

                UsuarioRecovery nuevo = new UsuarioRecovery();
                nuevo.username = usuario;               

                db.UsuarioRecovery.Add(nuevo);
                await db.SaveChangesAsync();


                var body = "<p>Hola: {0} pulse en el vínculo siguiente para recuperar la contraseña. <a href=\"{1}\" > Recuperar</a></p>";
                string vinculo = "http://ree.rauroszm.com/Acceso/Recovery/"+nuevo.id;
                var message = new MailMessage();
                message.To.Add(new MailAddress(user.email));  // replace with valid value 
                message.From = new MailAddress("*****@*****.**");  // replace with valid value
                message.Subject = "Recuperar contraseña.";
                message.Body = string.Format(body, user.nombre + " " + user.apellido1, vinculo);
                message.IsBodyHtml = true;

                using (var smtp = new SmtpClient())
                {
                    var credential = new NetworkCredential
                    {
                        UserName = "******",  // replace with valid value
                        Password = "******"  // replace with valid value
                    };

                    smtp.Credentials = credential;
                    smtp.Host = ConfigurationManager.AppSettings["Host"];
                    smtp.Port = 25;
                    smtp.EnableSsl = false;
                    await smtp.SendMailAsync(message);

                    TempData["MensajeEnvioMail"] = "Se ha cambiado la contraseña correctamente al usuario." + user.UserName;
                    return RedirectToAction("Index");
                }

            }

            return View();
        }
Пример #12
0
        /// <summary>
        /// Lista de Anomalías para un dropdownlist
        /// </summary>
        /// <returns></returns>
        public List<SelectListItem> ListaDrop()
        {
            var db = new Conexion();
            List<ZonasLista> c_AFR = db.ZonasLista.OrderBy(m => m.nombre).ToList();
            List<SelectListItem> l_AFR = new List<SelectListItem>();
            foreach (ZonasLista n in c_AFR)
            {
                SelectListItem item = new SelectListItem();
                item.Value = n.id;
                item.Text = n.nombre;

                l_AFR.Add(item);
            }

            return l_AFR;
        }
Пример #13
0
        //EDITAR Linea
        public Tramos Editar(string id)
        {
            var db = new Conexion();
            Tramos editar = new Tramos();

            TramoLista ed = db.TramoLista.SingleOrDefault(m=>m.id == id);
            editar.id = ed.id;
            editar.color = ed.color;
            editar.nombre = ed.nombre;
            editar.lineas = new Lineas().ListaDrop();
            editar.id_linea = ed.id_linea;
            editar.lineGeo = JsonConvert.SerializeObject(ed.tramosgeo);
            editar.lineString = ed.lineString;

            return editar;
        }
Пример #14
0
        public List<SelectListItem> ListaDrop()
        {
            var db = new Conexion();
            List<Lineas> c_linea = db.Lineas.OrderBy(m => m.nombre).ToList();
            List<SelectListItem> l_linea = new List<SelectListItem>();
            foreach (Lineas n in c_linea)
            {
                SelectListItem item = new SelectListItem();
                item.Value = n.id;
                item.Text = n.nombre;

                l_linea.Add(item);
            }


            return l_linea;
        }
Пример #15
0
        /// <summary>
        /// Constructor para registrar una acción determinada en una tabla de un usuario
        /// </summary>
        /// <param name="acc"></param>
        /// <param name="usu"></param>
        /// <param name="tab"></param>
        /// <param name="id_tb"></param>
        /// <param name="n_id_tb"></param>
        public Historial(string acc, string usu,string tab,string id_tb,string n_id_tb,string ip)
        {
            Conexion db = new Conexion();         

            this.id = Guid.NewGuid().ToString();
            this.fecha = DateTime.Now;
            this.accion = acc;
            this.usuario = usu;
            this.tabla = tab;
            this.id_tabla = id_tb;
            this.n_id_tabla = n_id_tb;
            this.ip_conexion = ip;

            //Guardo en la BD
            db.Historial.Add(this);
            db.SaveChanges();
        }
Пример #16
0
        /// <summary>
        /// Constructor para registrar la entrada y salida del usuario
        /// </summary>
        /// <param name="acc"></param>
        /// <param name="usu"></param>
        public Historial(string acc,string usu,string evento,string ip)
        {
            Conexion db = new Conexion();           

            this.id = Guid.NewGuid().ToString();
            this.fecha = DateTime.Now;
            this.accion = acc;
            this.ip_conexion = ip;
            
            if(evento == "entrar"){
                Usuarios nuevo = db.Usuarios.First(m => m.login == usu);
                this.usuario = nuevo.id;
            }
            else
            {
                this.usuario = usu;
            }           

            //Guardo en la BD

            db.Historial.Add(this);
            db.SaveChanges();

        }
Пример #17
0
        public async Task<ActionResult> Recovery(CambiarPassword model)
        {

            if (ModelState.IsValid)
            {
                var us = await UserManager.FindByNameAsync(model.username);
                var result = await UserManager.RemovePasswordAsync(us.Id);

                result = await UserManager.AddPasswordAsync(us.Id, model.Password);

                if (result.Succeeded)
                {
                    var user = await UserManager.FindByIdAsync(us.Id);
                    Historial nuevo = new Historial("Cambió Contraseña", us.Id, "usuario", us.Id, user.UserName, Request.UserHostAddress);

                    //Para Crearlo y automaticamente longuearlo
                    //await SignInAsync(user, isPersistent: false);
                    TempData["MensajeCambioContrasena"] = "Se ha cambiado la contraseña correctamente al usuario." + user.UserName;

                    Conexion db = new Conexion();
                    List<UsuarioRecovery> listaRecovery = db.UsuarioRecovery.Where(m => m.username == model.username).ToList();
                    db.UsuarioRecovery.RemoveRange(listaRecovery);
                    await db.SaveChangesAsync();
                    //Para Crearlo y automaticamente longuearlo
                    //await SignInAsync(user, isPersistent: false);
                    return RedirectToAction("Index","Acceso",new{returnUrl = "/"});
                }
                else
                {
                    AddErrors(result);
                }
            }

            // Si llegamos a este punto, es que se ha producido un error y volvemos a mostrar el formulario
            TempData["Mensaje"] = "Error al cambiar la contraseña.";

            //Para Crearlo y automaticamente longuearlo
            //await SignInAsync(user, isPersistent: false);
            return RedirectToAction("Recovery", "Acceso", new { id = model.id });
        }
Пример #18
0
         /// <summary>
         /// Método para actializar los medios de la Operación
         /// </summary>
         /// <param name="op_nuevo"></param>
         /// <param name="id"></param>
         /// <param name="ip"></param>
         /// <returns></returns>
         public async Task Actualizar(Operaciones_Medios_Subcontratados op_nuevo, string id, string ip)
         {
             using (var db = new Conexion())
             {
                 
                 //Eliminar las Subcontratas de esta Operación
                 List<Operaciones_Subcontratas> op_sub = db.Operaciones_Subcontratas.Where(m => m.operacion_id == op_nuevo.id).ToList();
                 db.Operaciones_Subcontratas.RemoveRange(op_sub);
                 await db.SaveChangesAsync();

                 //Elimino Medios de Tipo Personal
                 List<Operaciones_TipoPersonal> intro_opp = new List<Operaciones_TipoPersonal>();
                 intro_opp = db.Operaciones_TipoPersonal.Where(m => m.operacion == op_nuevo.id).ToList();
                 db.Operaciones_TipoPersonal.RemoveRange(intro_opp);
                 await db.SaveChangesAsync();

                 //Elimino Medios de Tipo Material
                 List<Operaciones_TipoMaterial> intro_opm = new List<Operaciones_TipoMaterial>();
                 intro_opm = db.Operaciones_TipoMaterial.Where(m => m.operacion == op_nuevo.id).ToList();
                 db.Operaciones_TipoMaterial.RemoveRange(intro_opm);
                 await db.SaveChangesAsync();

                 //Elimino Medios de Tipo Maquinaria
                 List<Operaciones_TipoMaquinaria> intro_opma = new List<Operaciones_TipoMaquinaria>();
                 intro_opma = db.Operaciones_TipoMaquinaria.Where(m => m.operacion == op_nuevo.id).ToList();
                 db.Operaciones_TipoMaquinaria.RemoveRange(intro_opma);
                 await db.SaveChangesAsync();



                 Operaciones_Subcontratas nuevo = new Operaciones_Subcontratas();

                 nuevo.cantidad = op_nuevo.coste_sub;
                 nuevo.operacion_id = op_nuevo.id;
                 nuevo.subcontrata_id = op_nuevo.subcontrata;
                 db.Operaciones_Subcontratas.Add(nuevo);
                 await db.SaveChangesAsync();


                 Operaciones operaciones = await db.Operaciones.FindAsync(op_nuevo.id);
                 operaciones.coste_total = op_nuevo.coste_sub;
                 operaciones.medios = "subcontratados";

                 db.Entry(operaciones).State = EntityState.Modified;
                 await db.SaveChangesAsync();

                 Historial historial = new Historial("Modificó Medio de Tipo Subcontrata", id, "usuario", ip);

             }
         }
Пример #19
0
 public List<SubestacionesAuxiliar> Lista() {         
 
     using(var db = new Conexion()){
         return  db.SubestacionesAuxiliar.ToList();
     }
 
 }
Пример #20
0
         /// <summary>
         /// Método para actializar los medios de la Operación
         /// </summary>
         /// <param name="op_nuevo"></param>
         /// <param name="id"></param>
         /// <param name="ip"></param>
         /// <returns></returns>
         public async Task Actualizar(Operaciones_Medios_Propios op_nuevo, string id, string ip)
         {
             using(var db = new Conexion()){

                 decimal coste_total = 0;

                 //Eliminar las Subcontratas de esta Operación
                 List<Operaciones_Subcontratas> op_sub = db.Operaciones_Subcontratas.Where(m => m.operacion_id == op_nuevo.id).ToList();
                 db.Operaciones_Subcontratas.RemoveRange(op_sub);
                 await db.SaveChangesAsync();

                 List<Operaciones_TipoPersonal> intro_opp = new List<Operaciones_TipoPersonal>();
                 intro_opp = db.Operaciones_TipoPersonal.Where(m=>m.operacion == op_nuevo.id).ToList();
                 db.Operaciones_TipoPersonal.RemoveRange(intro_opp);
                 db.SaveChanges();
                 intro_opp.Clear();

                 int posicion = 0;

                 foreach (int i in op_nuevo.c_personal)
                 {
                     if (i != 0)
                     {
                         Operaciones_TipoPersonal n_opp = new Operaciones_TipoPersonal();
                         n_opp.operacion = op_nuevo.id;
                         n_opp.tipo_personal = op_nuevo.lista_personal[posicion];
                         n_opp.cantidad = i;
                         intro_opp.Add(n_opp);

                         //Sumar el coste total de la operación
                        var t_p = db.Tipo_Personal.SingleOrDefault(m => m.id == n_opp.tipo_personal);
                         coste_total = coste_total + (t_p.coste * i) * op_nuevo.tiempo_ejecucion;

                     }
                     posicion++;
                 };

                 
                 db.Operaciones_TipoPersonal.AddRange(intro_opp);
                 await db.SaveChangesAsync();

                 Historial nuevo = new Historial("Modificó Tipos de Personal", id, "usuario", ip);

                 List<Operaciones_TipoMaterial> intro_opm = new List<Operaciones_TipoMaterial>();
                 intro_opm = db.Operaciones_TipoMaterial.Where(m => m.operacion == op_nuevo.id).ToList();
                 db.Operaciones_TipoMaterial.RemoveRange(intro_opm);
                 await db.SaveChangesAsync();
                 intro_opm.Clear();

                 posicion = 0;

                 foreach (int i in op_nuevo.c_material)
                 {

                     if (i != 0)
                     {

                         Operaciones_TipoMaterial n_opp = new Operaciones_TipoMaterial();
                         n_opp.operacion = op_nuevo.id;
                         n_opp.tipo_material = op_nuevo.lista_material[posicion];
                         n_opp.cantidad = i;
                         intro_opm.Add(n_opp);

                         //Sumar el coste total de la operación
                         var t_p = db.Tipo_Material.SingleOrDefault(m => m.id == n_opp.tipo_material);
                         coste_total = coste_total + t_p.coste * i;

                     }
                     posicion++;
                 };

                 db.Operaciones_TipoMaterial.AddRange(intro_opm);
                 await db.SaveChangesAsync();

                 Historial nuevo_material = new Historial("Modificó Tipos de Material", id, "usuario", ip);


                 List<Operaciones_TipoMaquinaria> intro_opma = new List<Operaciones_TipoMaquinaria>();
                 intro_opma = db.Operaciones_TipoMaquinaria.Where(m => m.operacion == op_nuevo.id).ToList();
                 db.Operaciones_TipoMaquinaria.RemoveRange(intro_opma);
                 await db.SaveChangesAsync();
                 intro_opma.Clear();

                 posicion = 0;

                 foreach (int i in op_nuevo.c_maquinaria)
                 {

                     if (i != 0)
                     {
                         Operaciones_TipoMaquinaria n_opp = new Operaciones_TipoMaquinaria();
                         n_opp.operacion = op_nuevo.id;
                         n_opp.tipo_maquinaria = op_nuevo.lista_maquinaria[posicion];
                         n_opp.cantidad = i;
                         intro_opma.Add(n_opp);

                         //Sumar el coste total de la operación
                         var t_p = db.Tipo_Maquinaria.SingleOrDefault(m => m.id == n_opp.tipo_maquinaria);
                         coste_total = coste_total + (t_p.coste * i)*op_nuevo.tiempo_ejecucion;
                     }
                     posicion++;
                 };

                 db.Operaciones_TipoMaquinaria.AddRange(intro_opma);
                 await db.SaveChangesAsync();
                 Historial nuevo_maquinarias = new Historial("Modificó Tipos de Maquinarias", id, "usuario", ip);


                 Operaciones operaciones = await db.Operaciones.FindAsync(op_nuevo.id);

                 operaciones.coste_total = coste_total;
                 operaciones.medios = "propios";

                 db.Entry(operaciones).State = EntityState.Modified;
                 await db.SaveChangesAsync();

             }     
         }
Пример #21
0
        public async Task<LineasForm> FindId(string id) {    
  
        
            using(var db = new Conexion()){

                Lineas nuevo = await db.Lineas.FindAsync(id);

                LineasForm lForm = new LineasForm();
                lForm.id = nuevo.id;

                if (String.IsNullOrEmpty(nuevo.color))
                {

                    lForm.color = "#d450b7";
                }
                else {
                    lForm.color = nuevo.color;
                }

                
                lForm.nombre = nuevo.nombre;
                lForm.subSelect = db.Subestaciones_Linea.Where(m => m.id_linea == id).Select(m => m.id_subestacion).ToList();
                lForm.ficheros = db.Lineas_Documentos.Where(m => m.linea_id == id).ToList();
                lForm.tramos = db.TramoLista.Where(m => m.id_linea == id).ToList();

                return lForm;
            }       
       
        }
Пример #22
0
 public List<Lineas> Lista() { 
 Conexion db = new Conexion();
 return db.Lineas.ToList();                
 }
Пример #23
0
        public ApoyoForm(){
            Utiles utiles = new Utiles();
            Conexion db = new Conexion();
            this.listaLineas = utiles.Listas()[6];
            this.listaTC = utiles.Listas()[7];
            this.listaCircuitos = db.Circuitos.OrderBy(m => m.nombre).ToList();
            this.ano_actual = DateTime.Now.Year.ToString();            
            List<SelectListItem> liHoras = new List<SelectListItem>();

            for (int i = 1965; i <= DateTime.Now.Year; i++)
            {
                SelectListItem nuevo = new SelectListItem();
                nuevo.Text = i.ToString();
                nuevo.Value = i.ToString();
                liHoras.Add(nuevo);
            }

            this.listaHoras = liHoras;
           
        }
Пример #24
0
        public async Task<ActionResult> Editar(EditarUsuario model)
        {
            if (ModelState.IsValid)
            {

                var user = await UserManager.FindByIdAsync(model.id);
           
                user.nombre = model.nombre;
                user.apellido1 = model.apellido1;
                user.apellido2 = model.apellido2;
                user.telefono = model.telefono;
                user.email = model.email;
                user.UserName = model.UserName;               

                var result = await UserManager.UpdateAsync(user);

                if (result.Succeeded)
                {                  
                    ApplicationDbContext dba = new ApplicationDbContext();
                    Conexion db = new Conexion();
                    List<IdentityUserRole> lista_roles_usu = dba.User_Role.Where(m => m.UserId == user.Id).ToList();
                    dba.User_Role.RemoveRange(lista_roles_usu);
                    dba.SaveChanges();

                    List<UsuariosGrupo> grupoUR = db.UsuariosGrupo.Where(m => m.idusuario == user.Id).ToList();
                    db.UsuariosGrupo.RemoveRange(grupoUR);
                    db.SaveChanges();
                    grupoUR.Clear();


                    try {
                    foreach (var role in model.rol)
                    {
                        UsuariosGrupo inGrupo = new UsuariosGrupo();
                        inGrupo.idgrupousuario = role;
                        inGrupo.idusuario = user.Id;

                        grupoUR.Add(inGrupo);

                        List<GrupoU_Roles> listaRoles = db.GrupoU_Roles.Where(m=>m.idgrupo== role).ToList();

                            foreach (var intro in listaRoles)
                            {
                                var roless = db.Roles.FirstOrDefault(m=>m.Id == intro.idrol);
                            var isInRole = await UserManager.IsInRoleAsync(user.Id, roless.Name);
                                if (!isInRole)
                                {
                                    await UserManager.AddToRoleAsync(user.Id, roless.Name);
                                }
                            }
                        }

                    db.UsuariosGrupo.AddRange(grupoUR);
                    db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                    }

                    Historial nuevo = new Historial("Modificó", User.Identity.GetUserId(), "usuario", user.Id, user.UserName, Request.UserHostAddress);               
                    TempData["Mensaje"] = "Datos del Usuario modificados correctamente.";
                    
                    //Para Crearlo y automaticamente longuearlo
                    //await SignInAsync(user, isPersistent: false);
                    return RedirectToAction("Editar", "Acceso", new {id= user.Id });
                }
                else
                {
                    AddErrors(result);
                }
            }
           
            //Si llegamos a este punto, es que se ha producido un error y volvemos a mostrar el formulario.            

            return View(model);
        }
Пример #25
0
        public async Task<ActionResult> Nuevo(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {

                StringHash cod_secreto = new StringHash();
                TextoAleatorio text = new TextoAleatorio();

                var user = new ApplicationUser() { UserName = model.UserName,
                                                   nombre = model.nombre,
                                                   apellido1= model.apellido1,
                                                   apellido2 = model.apellido2,
                                                   telefono = model.telefono,
                                                   email= model.email,
                                                   fecha_creado = DateTime.Now,
                                                   cod_secreto = cod_secreto.Encrypt(text.Texto(), true, model.UserName)                                           
                };
                var result = await UserManager.CreateAsync(user, model.Password);
                if (result.Succeeded)
                {
                    //Crea Rol por defecto
                    var rol = await UserManager.AddToRoleAsync(user.Id,"Lector");

                    UsuariosGrupo inGrupo = new UsuariosGrupo();
                    inGrupo.idgrupousuario = "8127f8b1-ff6e-4b21-bdd1-c3c9d1f9e440";
                    inGrupo.idusuario = user.Id;

                    Conexion db = new Conexion();
                    db.UsuariosGrupo.Add(inGrupo);
                    db.SaveChanges();

                    Historial nuevo = new Historial("Creó", User.Identity.GetUserId(), "usuario", user.Id, user.UserName, Request.UserHostAddress);

                    //Para Crearlo y automaticamente longuearlo
                    //await SignInAsync(user, isPersistent: false);
                    return RedirectToAction("Editar", "Acceso", new {id=user.Id });
                }
                else
                {
                    AddErrors(result);
                }
            }

            // Si llegamos a este punto, es que se ha producido un error y volvemos a mostrar el formulario
            return View(model);
        }
Пример #26
0
        /// <summary>
        /// Constructor para editar un Apoyo
        /// </summary>
        /// <param name="editar"></param>
        public ApoyoForm(ApoyoLista editar)
        {
            Conexion db = new Conexion();

            this.id = editar.id;
            this.nombre = editar.nombre;
            this.num_cir = editar.num_cir;
            this.num_empalmes = editar.num_empalmes;
            this.acceso_coche = editar.acceso_coche;
            this.distancia_pie = editar.distancia_pie.GetValueOrDefault();
            this.o_acceso_coche = editar.o_acceso_coche;
            this.o_distancia_pie = editar.o_distancia_pie;
            this.observaciones = editar.observaciones;
            this.referencia_catastral = editar.referencia_catastral;
            this.seguridad = editar.seguridad;
            this.suelo = editar.suelo;
            this.sustentacion = editar.sustentacion;
            this.t_coordenadas = 1;
            this.tipo_cimentacion = editar.tipo_cimentacion;
            this.tipo_foemp = editar.tipo_foemp;
            this.linea = editar.linea;
            this.lat = editar.lat.Replace(",", ".");
            this.lon = editar.lon.Replace(",", ".");
            this.a_mantenimiento = editar.a_mantenimiento;
            this.ficheros = db.Apoyo_Documentos.Where(m => m.apoyo_id == editar.id).ToList();
            this.listaInspecciones = db.Inspecciones.Where(m=>m.id_apoyo == this.id).ToList();
            this.listaKRiesgo = db.KRiesgo.Where(m => m.id_apoyo == editar.id).ToList();
            this.listaRiesgos = db.Riesgos.ToList();
            this.listaTCalculoRiesgo = new CalculoRiesgo().ListaDrop();
            
            if (editar.amarre)
            {
                this.a_o_s = "0";
            }
            else {
                this.a_o_s = "1";
            }

            Utiles utiles = new Utiles();
            this.listaLineas = utiles.Listas()[6];
            this.listaTC = utiles.Listas()[7];
            this.listaCircuitos = db.Circuitos.OrderBy(m => m.nombre).ToList();
            this.ano_actual = DateTime.Now.Year.ToString();
            List<SelectListItem> liHoras = new List<SelectListItem>();

            for (int i = 1965; i <= DateTime.Now.Year; i++)
            {
                SelectListItem nuevo = new SelectListItem();
                nuevo.Text = i.ToString();
                nuevo.Value = i.ToString();
                liHoras.Add(nuevo);
            }

            this.listaHoras = liHoras;
        }
        public ActionResult Fichero_Otros(string id)
        {
            string fName = "";
            foreach (string fileName in Request.Files)
            {
                HttpPostedFileBase file = Request.Files[fileName];
                //Save file content goes here
                fName = file.FileName;
                if (file != null && file.ContentLength > 0)
                {

                    var originalDirectory = new DirectoryInfo(string.Format("{0}OperacionesF\\{1}", Server.MapPath(@"\"), id));

                    string pathString = System.IO.Path.Combine(originalDirectory.ToString(), "Otros");

                    bool isExists = System.IO.Directory.Exists(pathString);

                    if (!isExists)
                        System.IO.Directory.CreateDirectory(pathString);

                    var path = string.Format("{0}\\{1}", pathString, file.FileName.ToString().Replace(' ', '_'));
                    file.SaveAs(path);

                    using (Conexion db = new Conexion())
                    {

                        Operaciones_Documentos nuevo = new Operaciones_Documentos();
                        nuevo.nombre_fichero = file.FileName.ToString().Replace(' ', '_');
                        nuevo.operacion_id = id;
                        nuevo.tipo_fichero = "Otros";

                        db.Operaciones_Documentos.Add(nuevo);
                        db.SaveChanges();
                    } 

                }

            }


            return RedirectToAction("Editar", "Operaciones", new { id = id });
        }
Пример #28
0
        public ActionResult Recovery(string id)
        {
            if(ModelState.IsValid)
            {            
                Conexion db = new Conexion();
                var user2 = db.UsuarioRecovery.SingleOrDefault(m => m.id == id);

                if (user2 != null)
                {
                    return View(new CambiarPassword() { username = user2.username, id = id });
                }         
            }

            TempData["Mensaje"] = "URL no válida.";
            return View("RecuperarPass");  
        }
        public ActionResult EliminarFichero(string id) {

            string id_retorno = "";


            using(Conexion db = new Conexion()){

                Operaciones_Documentos eliminar = db.Operaciones_Documentos.SingleOrDefault(m => m.id == id);                
                db.Operaciones_Documentos.Remove(eliminar);
                db.SaveChanges();
                id_retorno = eliminar.operacion_id;

                string ruta = string.Format("{0}OperacionesF\\{1}\\{2}\\{3}", Server.MapPath(@"\"), eliminar.operacion_id, eliminar.tipo_fichero, eliminar.nombre_fichero);

                bool isExists = System.IO.Directory.Exists(ruta);

                if (!isExists)
                System.IO.File.Delete(ruta);


            }


            TempData["Mensaje"] = "Documento eliminado correctamente.";
            return RedirectToAction("Editar", "Operaciones", new {id= id_retorno});
        }
Пример #30
0
        public async Task<ActionResult> Index(LoginViewModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                var user = await UserManager.FindAsync(model.UserName, model.Password);
                if (user != null)
                {
                    await SignInAsync(user, model.RememberMe);

                    Conexion db = new Conexion();
                    Usuarios usuario = db.Usuarios.First(m=>m.login == user.UserName);
                    usuario.fecha_ul_acceso = DateTime.Now;
                    db.SaveChanges();

                    var cadena = HttpContext;
                  
                    Historial nuevo = new Historial("Auntenticó", model.UserName, "entrar", Request.UserHostAddress);

                    return RedirectToLocal(returnUrl);
                }
                else
                {
                    ModelState.AddModelError("", "Usuario o Contraseña no es correcto.");
                }
            }

            // Si llegamos a este punto, es que se ha producido un error y volvemos a mostrar el formulario
            return View(model);
        }