示例#1
0
        public ActionResult DefineTecnico(frmUsuariosDefineTecnico argTecnico)
        {
            var idUsuario = (int)Session["id_usuario"];
            var definido  = db.Usuarios.Where(u => u.id == idUsuario).Select(u => u.definido_b).FirstOrDefault();

            if (definido == true)
            {
                return(RedirectToAction("Index", "Home"));
            }

            if (ModelState.IsValid)
            {
                try
                {
                    UsuariosTecnico clsUsuarioTecnico = new UsuariosTecnico();
                    Usuarios        clsUsuario        = new Usuarios();
                    clsUsuario            = db.Usuarios.Where(u => u.id == idUsuario).FirstOrDefault();
                    clsUsuario.definido_b = true;

                    clsUsuarioTecnico.Usuarios    = clsUsuario;
                    clsUsuarioTecnico.nombre_c    = argTecnico.nombre_c;
                    clsUsuarioTecnico.apellidos_c = argTecnico.apellidos_c;
                    clsUsuarioTecnico.dni_c       = argTecnico.dni_c;
                    clsUsuarioTecnico.telefono_c  = argTecnico.telefono_c;
                    //clsUsuarioTecnico.usuario_xref = (int)Session["id_usuario"];

                    //Defino la subcategoría del usuario
                    UsuariosTecnicosSubcategorias clsTecnicoSubcategoria = new UsuariosTecnicosSubcategorias();
                    clsTecnicoSubcategoria.experiencia_i = argTecnico.experiencia;
                    clsTecnicoSubcategoria.UsuariosTiposSubcategorias = db.UsuariosTiposSubcategorias.Where(s => s.id == argTecnico.subcategoria).FirstOrDefault();

                    clsUsuarioTecnico.UsuariosTecnicosSubcategorias.Add(clsTecnicoSubcategoria);

                    db.UsuariosTecnico.Add(clsUsuarioTecnico);
                    //ATENCION !!! FALTAN DEFINIR LAS SUBCATEGORIAS DEL TECNICO, QUE PUEDEN SER MÁS DE UNA DESDE LA VISTA
                    //clsUsuarioTecnico.Usuarios.UsuariosTecnicosSubcategorias = argTecnico.tipoProfesional_xref;

                    db.SaveChanges();
                    return(Redirect("Index"));
                }
                catch (System.Data.Entity.Validation.DbEntityValidationException e)
                {
                    Console.WriteLine("Error en la validacion: " + e);
                    return(View());
                }
                catch (HttpException e)
                {
                    System.Console.Write(e);
                }
            }
            else
            {
                ModelState.AddModelError("", "Error en el registro, datos incorrectos");
                TempData["ModelState"] = ModelState;
                return(Redirect("DefineUsuario"));
            }
            return(PartialView());
        }
示例#2
0
        public PartialViewResult PerfilAddCategoria(int idSubcategoria, DateTime categoriaFechaIni, DateTime categoriaFechaFin)
        {
            int idUsuario = (int)Session["id_usuario"];
            var usuario   = db.Usuarios.Where(u => u.id == idUsuario).FirstOrDefault();

            var clsSubcategoria = db.UsuariosTiposSubcategorias.Where(s => s.id == idSubcategoria).First();
            UsuariosTecnicosSubcategorias clsTecnicoSubcategoria = new UsuariosTecnicosSubcategorias();
            //Diferencia entre la fecha de inicio y la fecha de fin en dias
            TimeSpan diferenciaFechas = categoriaFechaFin - categoriaFechaIni;

            clsTecnicoSubcategoria.subcategoria_xref   = clsSubcategoria.id;
            clsTecnicoSubcategoria.usuarioTecnico_xref = usuario.UsuariosTecnico.First().id;
            clsTecnicoSubcategoria.fechaIni_dt         = categoriaFechaIni;
            clsTecnicoSubcategoria.fechaFin_dt         = categoriaFechaFin;
            clsTecnicoSubcategoria.experiencia_i       = diferenciaFechas.Days;

            usuario.UsuariosTecnico.First().UsuariosTecnicosSubcategorias.Add(clsTecnicoSubcategoria);
            db.SaveChanges();

            var clsTipo = db.UsuariosTipos.Where(t => t.id == usuario.tipo_xref).FirstOrDefault();

            return(PartialView("Partials/lstCompetencias", clsTipo));
        }