示例#1
0
        // GET: contratos
        public ActionResult Index(int?subemp_id)
        {
            try
            {
                ViewBag.empresa = HttpContext.Session["Empresa"].ToString();

                ViewBag.subemp_id = subemp_id;

                int emp_id = Convert.ToInt32(HttpContext.Session["Emp_id"].ToString());
                //ViewBag.Car_Id = new SelectList(db.cargos, "Car_Id", "Car_Nom");


                ViewBag.Car_Id = new SelectList(db.empresa_cargo.Where(ec => ec.Emp_Id == emp_id), "Car_Id", "cargos.Car_Nom");

                ViewBag.EC_Id  = new SelectList(db.estadosciviles, "EC_Id", "EC_Nom");
                ViewBag.Gen_Id = new SelectList(db.generos, "Gen_Id", "Gen_Nom");
                ViewBag.Nac_Id = new SelectList(db.nacionalidades, "Nac_Id", "Nac_Nom");



                var             contratos = db.contratos.Include(c => c.personas).Include(c => c.subempresas).Include(c => c.tiposcontratos);
                MultiplesClases multiple  = new MultiplesClases
                {
                    ObjEContrato = contratos.Where(c => c.Sub_Id == subemp_id).ToList()
                };
                return(View(multiple));
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#2
0
        public ActionResult ListaContratoGrupos(string gc_id, int?subemp_id)
        {
            try
            {
                ViewBag.empresa = HttpContext.Session["Empresa"].ToString();

                ViewBag.subemp_id = subemp_id;
                ViewBag.gc_id     = gc_id;
                int emp_id = Convert.ToInt32(HttpContext.Session["Emp_id"].ToString());
                //ViewBag.Car_Id = new SelectList(db.cargos, "Car_Id", "Car_Nom");



                var             contratos = db.contratos.Include(c => c.personas).Include(c => c.subempresas).Include(c => c.tiposcontratos);
                MultiplesClases multiple  = new MultiplesClases
                {
                    ObjEContrato = contratos.Where(c => c.Sub_Id == subemp_id && c.personas.Car_Id == 2).ToList()
                };
                return(View(multiple));
            }
            catch (Exception)
            {
                throw;
            }
        }
        // GET: GruposCuarteles
        public ActionResult Index(string cuar_id, string subemp_id)
        {
            ViewBag.subemp_id = subemp_id;
            ViewBag.cuar_id   = cuar_id;
            int cuar = Convert.ToInt32(cuar_id.ToString());

            var listacuar = db.Cuarteles.FirstOrDefault(c => c.cuar_id == cuar);

            int?subemp = listacuar.Sectores.Sub_Id;

            int sub_id = Convert.ToInt32(subemp);


            var listajefes = db.contratos.Where(c => c.personas.cargos.Car_Nom == "Jefe Cuadrilla").Select(v => new {
                Con_id     = v.Con_Id,
                NombreJefe = v.personas.Per_Nom + " " + v.personas.Per_ApePat
            });

            ViewBag.ObjGruposCuarteles_ConJefe_id = new SelectList(listajefes, "Con_id", "NombreJefe");


            var             grupos    = db.GruposCuarteles.Include(c => c.Cuarteles).Include(p => p.contratos);
            MultiplesClases multiples = new MultiplesClases
            {
                ObjEGruposCuarteles = grupos.Where(e => e.cuar_id == cuar).ToList()
            };

            return(View(multiples));
        }
示例#4
0
        public ActionResult AddPersonas(MultiplesClases multiples, personas personas, contratos contratos, int?subemp_id)
        {
            if (ModelState.IsValid)
            {
                multiples.ObjPersonas.Car_Id = personas.Car_Id;
                multiples.ObjPersonas.EC_Id  = personas.EC_Id;
                multiples.ObjPersonas.Nac_Id = personas.Nac_Id;
                multiples.ObjPersonas.Gen_Id = personas.Gen_Id;

                db.personas.Add(multiples.ObjPersonas);
                db.SaveChanges();


                contratos.Per_Rut = multiples.ObjPersonas.Per_Rut;

                contratos.Sub_Id          = Convert.ToInt32(subemp_id);
                contratos.Con_FechaInicio = DateTime.Now.ToShortDateString();


                db.contratos.Add(contratos);
                db.SaveChanges();

                return(RedirectToAction("Index", new { subemp_id }));
            }


            return(View(multiples));
        }
示例#5
0
        // GET: subempresas
        public ActionResult Index()
        {
            string emp_nom = HttpContext.Session["Empresa"].ToString();

            ViewBag.empresa = emp_nom;
            string id2 = HttpContext.Session["Emp_id"].ToString();
            int    id  = Convert.ToInt32(id2);

            int contar = db.subempresas.Count(s => s.Emp_Id == id);

            ViewBag.contar = contar;

            List <regiones> listaregiones = db.regiones.ToList();

            ViewBag.regiones = new SelectList(listaregiones, "Reg_Id", "Reg_Nom");


            var             subempresas = db.subempresas.Include(s => s.comunas).Include(s => s.empresas);
            MultiplesClases multiples   = new MultiplesClases
            {
                ObjESubEmpresas = subempresas.Where(s => s.empresas.Emp_Nom == emp_nom).ToList()
            };

            return(View(multiples));
        }
        public ActionResult Asistencia_Personas(int?Subempcar_id, int?horario_id)
        {
            ViewBag.empresa = HttpContext.Session["Empresa"].ToString();

            var subempcar = db.subempresa_cargo.FirstOrDefault(s => s.Subempcar_id == Subempcar_id);


            ViewBag.car_id    = subempcar.Car_Id;
            ViewBag.subemp_id = subempcar.Sub_Id;

            ViewBag.Subempcar_id = Subempcar_id;
            ViewBag.horario_id   = horario_id;

            var contratos   = db.contratos.Include(c => c.personas).Include(c => c.subempresas);
            var asistencias = db.asistencias.Include(a => a.contratos).Include(a => a.horario_laboral);

            ViewBag.contar = db.asistencias.Count(a => a.Hl_Id == horario_id);

            MultiplesClases multiple = new MultiplesClases
            {
                ObjEContrato   = contratos.Where(c => c.Sub_Id == subempcar.Sub_Id && c.personas.Car_Id == subempcar.Car_Id).ToList(),
                ObjEAsistencia = asistencias.Where(a => a.Hl_Id == horario_id).ToList()
            };


            return(View(multiple));
        }
示例#7
0
        // GET: Cuarteles
        public ActionResult Index(string sect_id, string subemp_id)
        {
            ViewBag.subemp_id = subemp_id;
            int emp_id = Convert.ToInt32(HttpContext.Session["Emp_id"].ToString());

            int contar4 = db.Cuarteles.Count(s => s.Sectores.subempresas.empresas.Emp_Id == emp_id);

            ViewBag.contarcuad = contar4;

            ViewBag.sect_id = sect_id;
            int sec       = Convert.ToInt32(sect_id.ToString());
            var cuarteles = db.Cuarteles.Include(c => c.Sectores).Include(c => c.VariedadesFrutas);


            var listavariedad = db.VariedadesFrutas.Select(v => new {
                varfrut_id     = v.varfrut_id,
                NombreVariedad = v.Frutas.frut_nom + " " + v.var_nom
            });

            ViewBag.ObjCuarteles_varfrut_id = new SelectList(listavariedad, "varfrut_id", "NombreVariedad");


            // ViewBag.Var_id = new SelectList(db.VariedadesFrutas, "varfrut_id", "var_nom");

            MultiplesClases multiples = new MultiplesClases
            {
                ObjECuarteles = cuarteles.Where(e => e.sect_id == sec).ToList()
            };

            return(View(multiples));
        }
        // GET: Empresa_Cargo
        public ActionResult Index()
        {
            try
            {
                string emp_nom = HttpContext.Session["Empresa"].ToString();

                int emp_id = Convert.ToInt32(HttpContext.Session["Emp_id"].ToString());
                ViewBag.empresa = emp_nom;

                var empresa_cargo = db.empresa_cargo.Include(e => e.cargos).Include(e => e.empresas);
                int contar3       = db.empresa_cargo.Count(s => s.empresas.Emp_Id == emp_id);
                ViewBag.contarcargos = contar3;

                ViewBag.Car_Id = new SelectList(db.cargos, "Car_Id", "Car_Nom");
                MultiplesClases multiples = new MultiplesClases
                {
                    ObjEEmpresa_Cargo = empresa_cargo.Where(e => e.Emp_Id == emp_id).ToList()
                };


                return(View(multiples));
            }
            catch (Exception ex)
            {
                throw new Exception("Tiempo limite de sesion superada " + ex.Message);
            }
        }
        public async Task <ActionResult> Register(MultiplesClases model)
        {
            if (ModelState.IsValid)
            {
                var user = new ApplicationUser {
                    UserName = model.ObjRegistrar.Email, Email = model.ObjRegistrar.Email
                };
                var result = await UserManager.CreateAsync(user, model.ObjRegistrar.Password);

                if (result.Succeeded)
                {
                    var code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);

                    var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code }, protocol: Request.Url.Scheme);
                    await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking this link: <a href=\"" + callbackUrl + "\">link</a>");

                    ViewBag.Link = callbackUrl;
                    //return View("DisplayEmail");
                }
                AddErrors(result);

                string idcuenta = user.Id;

                aspnetroles asprol = db.aspnetroles.FirstOrDefault(r => r.Name == "Administrador");

                var rol = new aspnetuserroles
                {
                    UserId = idcuenta,
                    RoleId = asprol.Id
                };

                db.aspnetuserroles.Add(rol);
                db.SaveChanges();

                var emp = new empresas
                {
                    Emp_Nom = model.ObjEmpresas.Emp_Nom
                };
                db.empresas.Add(emp);
                db.SaveChanges();

                int empresa_id = emp.Emp_Id;

                var log = new login
                {
                    Emp_Id = empresa_id,
                    Id     = idcuenta
                };

                db.login.Add(log);
                db.SaveChanges();

                return(RedirectToAction("Index", "Home"));
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
        public ActionResult Create(MultiplesClases multiples)
        {
            if (ModelState.IsValid)
            {
                db.PrivilegiosCuentas.Add(multiples.ObjPrivilegiosCuentas);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(multiples));
        }
        // GET: PrivilegiosCuentas
        public ActionResult Index()
        {
            ViewBag.empresa = HttpContext.Session["Empresa"].ToString();
            ViewBag.emp_id  = HttpContext.Session["Emp_id"].ToString();
            var             privilegios = db.PrivilegiosCuentas;
            MultiplesClases multiples   = new MultiplesClases
            {
                ObjEPrivilegiosCuentas = privilegios.ToList()
            };

            return(View(multiples));
        }
        public async Task <ActionResult> Login(MultiplesClases model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var result = await SignInManager.PasswordSignInAsync(model.ObjLogin.Email, model.ObjLogin.Password, model.ObjLogin.RememberMe, shouldLockout : false);

            var user = db.AspNetUsers.FirstOrDefault(r => r.Email == model.ObjLogin.Email);
            var log  = db.login.FirstOrDefault(l => l.Id == user.Id);

            var emp = db.empresas.FirstOrDefault(e => e.Emp_Id == log.Emp_Id);

            var subempresa = db.subempresas.FirstOrDefault(s => s.Sub_Id == log.Sub_Id);

            // El if conciste en buscar la cuenta que corresponde a la empresa

            if (emp.Emp_Nom == model.ObjEmpresas.Emp_Nom)
            {
                switch (result)
                {
                case SignInStatus.Success:

                    //Crear una variable de session
                    HttpContext.Session.Add("Rut", log.Per_Rut);
                    HttpContext.Session.Add("Emp_id", emp.Emp_Id);
                    HttpContext.Session.Add("Empresa", emp.Emp_Nom);
                    HttpContext.Session.Add("Plan_Nombre", emp.PlanesEmpresas.plan_nom);
                    HttpContext.Session.Add("Correo", log.Id);
                    if (log.Sub_Id != null)
                    {
                        HttpContext.Session.Add("SubEmpresa", log.Sub_Id);
                        HttpContext.Session.Add("SubEmpresa_nombre", subempresa.Sub_Nom);
                    }

                    return(RedirectToLocal(returnUrl));

                case SignInStatus.LockedOut:
                    return(View("Lockout"));

                case SignInStatus.RequiresVerification:
                    return(RedirectToAction("SendCode", new { ReturnUrl = returnUrl }));

                case SignInStatus.Failure:
                default:
                    ModelState.AddModelError("", "Invalid login attempt.");
                    return(View(model));
                }
            }
            return(View(model));
        }
示例#13
0
        public ActionResult Create(MultiplesClases multiples, string subemp_id)
        {
            if (ModelState.IsValid)
            {
                multiples.ObjSectores.Sub_Id = Convert.ToInt32(subemp_id);
                db.Sectores.Add(multiples.ObjSectores);
                db.SaveChanges();
                return(RedirectToAction("Index", new { subemp_id }));
            }

            ViewBag.Sub_Id = new SelectList(db.subempresas, "Sub_Id", "Sub_Nom", multiples.ObjSectores.Sub_Id);
            return(View(multiples));
        }
示例#14
0
        // GET: Sectores
        public ActionResult Index(string subemp_id)
        {
            ViewBag.subemp_id = subemp_id;
            int sub      = Convert.ToInt32(subemp_id.ToString());
            var sectores = db.Sectores.Include(s => s.subempresas);

            MultiplesClases multiples = new MultiplesClases
            {
                ObjESectores = sectores.Where(e => e.Sub_Id == sub).OrderBy(s => s.sect_nom).ToList()
            };

            return(View(multiples));
        }
示例#15
0
        public ActionResult Create(MultiplesClases multiples, string sect_id)
        {
            if (ModelState.IsValid)
            {
                multiples.ObjCuarteles.sect_id = Convert.ToInt32(sect_id);

                db.Cuarteles.Add(multiples.ObjCuarteles);
                db.SaveChanges();
                return(RedirectToAction("Index", new { sect_id }));
            }
            ViewBag.sect_id    = new SelectList(db.Sectores, "sect_id", "sect_nom", multiples.ObjCuarteles.sect_id);
            ViewBag.varfrut_id = new SelectList(db.VariedadesFrutas, "varfrut_id", "var_nom", multiples.ObjCuarteles.varfrut_id);
            return(View(multiples));
        }
        public ActionResult VistaParcial(int?subemp_id)
        {
            ViewBag.subemp_id = subemp_id;

            var model = db.contratos.Where(p => p.Sub_Id == subemp_id).ToList();

            MultiplesClases multiples = new MultiplesClases
            {
                ObjEContrato = model
            };


            return(PartialView(model));
        }
        public ActionResult Create(MultiplesClases multiples, string cuar_id)
        {
            if (ModelState.IsValid)
            {
                multiples.ObjGruposCuarteles.cuar_id = Convert.ToInt32(cuar_id);


                db.GruposCuarteles.Add(multiples.ObjGruposCuarteles);
                db.SaveChanges();
                return(RedirectToAction("Index", new { cuar_id }));
            }


            return(View(multiples));
        }
        // GET: contratos
        public ActionResult Index(int?subemp_id)
        {
            ViewBag.empresa = HttpContext.Session["Empresa"].ToString();

            ViewBag.subemp_id = subemp_id;


            var             contratos = db.contratos.Include(c => c.personas).Include(c => c.subempresas).Include(c => c.tiposcontratos);
            MultiplesClases multiple  = new MultiplesClases
            {
                ObjEContrato = contratos.Where(c => c.Sub_Id == subemp_id).ToList()
            };

            return(View(multiple));
        }
        // GET: GrupoCuartelesDetalles
        public ActionResult Index(string gc_id, string subemp_id)
        {
            ViewBag.subemp_id = subemp_id;
            ViewBag.gc_id     = gc_id;

            int grupoCuartel = Convert.ToInt32(gc_id);


            var             grupoCuartelesDetalle = db.GrupoCuartelesDetalle.Include(g => g.contratos).Include(g => g.GruposCuarteles);
            MultiplesClases multiples             = new MultiplesClases {
                ObjEGruposCuartelesDetalle = grupoCuartelesDetalle.Where(g => g.gc_id == grupoCuartel)
            };

            return(View(multiples));
        }
        // GET: Empresa_Cargo
        public ActionResult Index()
        {
            string emp_nom = HttpContext.Session["Empresa"].ToString();

            int emp_id = Convert.ToInt32(HttpContext.Session["Emp_id"].ToString());

            ViewBag.empresa = emp_nom;
            var empresa_cargo = db.empresa_cargo.Include(e => e.cargos).Include(e => e.empresas);

            MultiplesClases multiples = new MultiplesClases
            {
                ObjEEmpresa_Cargo = empresa_cargo.Where(e => e.Emp_Id == emp_id).ToList()
            };


            return(View(multiples));
        }
示例#21
0
        public ActionResult All()
        {
            string emp_nom = HttpContext.Session["Empresa"].ToString();
            int    emp_id  = Convert.ToInt32(HttpContext.Session["Emp_id"].ToString());

            ViewBag.empresa = emp_nom;

            int contar4 = db.Sectores.Count(s => s.subempresas.empresas.Emp_Id == emp_id);

            ViewBag.contarsectores = contar4;
            var             sec       = db.Sectores.Include(c => c.subempresas);
            MultiplesClases multiples = new MultiplesClases
            {
                ObjESectores = sec.Where(s => s.subempresas.empresas.Emp_Nom == emp_nom).OrderBy(c => c.sect_nom).ToList()
            };

            return(View(multiples));
        }
示例#22
0
        public ActionResult ListaSolicitudSubEmpresa()
        {
            string emp_nom = HttpContext.Session["Empresa"].ToString();

            ViewBag.empresa = emp_nom;
            string id2 = HttpContext.Session["Emp_id"].ToString();
            int    id  = Convert.ToInt32(id2);



            var             subempresas = db.subempresas.Include(s => s.comunas).Include(s => s.empresas);
            MultiplesClases multiples   = new MultiplesClases
            {
                ObjESubEmpresas = subempresas.Where(s => s.empresas.Emp_Nom == emp_nom).ToList()
            };

            return(View(multiples));
        }
示例#23
0
        public ActionResult All()
        {
            string emp_nom = HttpContext.Session["Empresa"].ToString();

            ViewBag.empresa = emp_nom;
            string id2 = HttpContext.Session["Emp_id"].ToString();
            int    id  = Convert.ToInt32(id2);

            int contar = db.contratos.Count(s => s.subempresas.empresas.Emp_Id == id);

            ViewBag.contarcontratos = contar;
            var             contratos = db.contratos.Include(c => c.personas).Include(c => c.subempresas).Include(c => c.tiposcontratos);
            MultiplesClases multiples = new MultiplesClases
            {
                ObjEContrato = contratos.Where(s => s.subempresas.empresas.Emp_Nom == emp_nom).ToList()
            };

            return(View(multiples));
        }
        public ActionResult allPlanillas()
        {
            string emp_nom = HttpContext.Session["Empresa"].ToString();

            ViewBag.emp_id  = HttpContext.Session["Emp_id"].ToString();
            ViewBag.empresa = emp_nom;

            List <planillascontratos> listarc = db.planillascontratos.ToList();

            ViewBag.contratos = new SelectList(listarc, "Cod_Id", "Sub_Id", "Per_Rut");


            var             contratos = db.contratos.Include(s => s.subempresas).Include(s => s.personas).Include(s => s.subempresas.empresas);
            MultiplesClases multiples = new MultiplesClases
            {
                ObjEContrato = contratos.Where(s => s.subempresas.empresas.Emp_Nom == emp_nom).ToList()
            };

            return(View(multiples));
        }
示例#25
0
        public ActionResult VerSuc()
        {
            string emp_nom = HttpContext.Session["Empresa"].ToString();

            ViewBag.emp_id  = HttpContext.Session["Emp_id"].ToString();
            ViewBag.empresa = emp_nom;

            List <regiones> listaregiones = db.regiones.ToList();

            ViewBag.regiones = new SelectList(listaregiones, "Reg_Id", "Reg_Nom");


            var             subempresas = db.subempresas.Include(s => s.comunas).Include(s => s.empresas);
            MultiplesClases multiples   = new MultiplesClases
            {
                ObjESubEmpresas = subempresas.Where(s => s.empresas.Emp_Nom == emp_nom).ToList()
            };

            return(View(multiples));
        }
        public async Task <ActionResult> Create(MultiplesClases cargos)
        {
            if (ModelState.IsValid)
            {
                //Cargos que ingrese tiene que ser diferente a radox
                if (cargos.ObjCargos.Car_Nom != "Radix")
                {
                    var buscarRoles = db.aspnetroles.Count(r => r.Name == cargos.ObjCargos.Car_Nom);
                    var buscarCargo = db.cargos.Count(r => r.Car_Nom == cargos.ObjCargos.Car_Nom);

                    // Si el cargo es diferente a Agricola lo agrega en roles de cuenta, sino solo lo agrega en cargos
                    if (cargos.ObjCargos.Car_Nom != "Agricola")
                    {
                        if (buscarRoles == 0)
                        {
                            var role       = new IdentityRole(cargos.ObjCargos.Car_Nom);
                            var roleresult = await RoleManager.CreateAsync(role);

                            if (!roleresult.Succeeded)
                            {
                                ModelState.AddModelError("", roleresult.Errors.First());
                                return(View());
                            }
                        }
                    }

                    if (buscarCargo == 0)
                    {
                        db.cargos.Add(cargos.ObjCargos);
                        db.SaveChanges();
                    }
                }


                return(RedirectToAction("Index"));
            }

            return(View(cargos));
        }
        public async Task <ActionResult> CuentaPersonas(MultiplesClases model, string subemp_id, string per_rut, string car_nom)
        {
            if (ModelState.IsValid)
            {
                string empresa = HttpContext.Session["Empresa"].ToString();

                var user = new ApplicationUser {
                    UserName = model.ObjRegistrar.Email, Email = model.ObjRegistrar.Email
                };
                var result = await UserManager.CreateAsync(user, model.ObjRegistrar.Password);

                if (result.Succeeded)
                {
                    var code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);
                }
                AddErrors(result);

                string   idcuenta = user.Id;
                personas personas = db.personas.FirstOrDefault(p => p.Per_Rut == per_rut);
                //var cargos = db.cargos.FirstOrDefault(c => c.Car_Id == personas.Car_Id);



                aspnetroles asprol = db.aspnetroles.FirstOrDefault(r => r.Name == car_nom);

                aspnetuserroles rol = new aspnetuserroles
                {
                    UserId = idcuenta,
                    RoleId = asprol.Id
                };


                db.aspnetuserroles.Add(rol);
                db.SaveChanges();



                var empresas = db.empresas.FirstOrDefault(e => e.Emp_Nom == empresa);

                int empresa_id = empresas.Emp_Id;

                login log = new login
                {
                    Emp_Id  = empresa_id,
                    Id      = idcuenta,
                    Per_Rut = per_rut
                };

                db.login.Add(log);
                db.SaveChanges();

                //contratos contratos = db.contratos.FirstOrDefault(c=>c.Per_Rut==per_rut);

                //int subemp_id=contratos.Sub_Id;


                return(RedirectToAction("Index", "Contratos", new { subemp_id }));
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }