コード例 #1
0
        public async Task <IActionResult> Create(EvaluacionModel evaluacionModel)
        {
            /*if (ModelState.IsValid)
             * {*/
            HoteleriaContext    _context2           = new HoteleriaContext();
            ResultadoEvaluacion resultadoEvaluacion = new ResultadoEvaluacion();
            Empleado            empleado            = new Empleado();
            var emp = await _context.Empleado.FirstOrDefaultAsync(e => e.UsuarioNombre == _userManager.GetUserName(User));

            resultadoEvaluacion           = evaluacionModel.ResultadoEvaluacion;
            resultadoEvaluacion.Evaluador = emp.UsuarioNombre;
            _context.Add(resultadoEvaluacion);
            await _context.SaveChangesAsync();

            var supervisorid         = _context2.Empleado.Where(e => e.UsuarioNombre == evaluacionModel.Empleado.UsuarioNombre).First().EmpleadoId;
            var evaluacionSupervisor = new EvaluacionSupervisor {
                EmpleadoId = supervisorid, ResultadoEvaluacionId = resultadoEvaluacion.ResultadoEvaluacionId
            };

            _context2.Add(evaluacionSupervisor);
            await _context2.SaveChangesAsync();

            alert("success", "Evaluacion registrada con exito", "Operacion exitosa");
            return(RedirectToAction(nameof(Index)));

            /*}
             * var supervisores = _userManager.GetUsersInRoleAsync("Supervisor").Result;
             * ViewData["Supervisores"] = new SelectList(supervisores);
             * return View(evaluacionModel);*/
        }
コード例 #2
0
        public async Task <IActionResult> Create([Bind("ObjetoPerdidoId,EmpleadoId,Nombre,Descripcion,Habitacion,Fecha,Estado")] ObjetoPerdido objetoPerdido)
        {
            if (ModelState.IsValid)
            {
                var empleado = await _context.Empleado.FirstOrDefaultAsync(e => e.UsuarioNombre == _userManager.GetUserName(User));

                objetoPerdido.EmpleadoId = empleado.EmpleadoId;
                objetoPerdido.Fecha      = DateTime.Now;
                objetoPerdido.Estado     = 0;
                _context.Add(objetoPerdido);
                await _context.SaveChangesAsync();

                alert("success", "Objeto Perdido registrado con éxito", "Operación exitosa");
                if (User.IsInRole("Limpieza"))
                {
                    return(RedirectToAction("index", "limpieza"));
                }
                if (User.IsInRole("Administrador"))
                {
                    return(RedirectToAction("index"));
                }
            }
            ViewData["Habitaciones"] = new SelectList(_context.Habitacion, "Numero", "Numero");
            return(View(objetoPerdido));
        }
コード例 #3
0
        public async Task <IActionResult> Create([Bind("HabitacionId,Numero,Piso,EstadoHabitacionId,TipoHabitacionId")] Habitacion habitacion)
        {
            if (ModelState.IsValid)
            {
                if (!_context.Habitacion.Any(x => x.Numero == habitacion.Numero))
                {
                    using (var transaction = _context.Database.BeginTransaction())
                    {
                        try
                        {
                            _context.Add(habitacion);
                            await _context.SaveChangesAsync();

                            var actividadesLimpieza = _context.Actividad.Where(x => x.TipoActividadId == (int)ActividadTipo.Limpieza);

                            var listHabAct = new List <HabitacionActividad>();
                            foreach (var item in actividadesLimpieza)
                            {
                                var actHab = new HabitacionActividad()
                                {
                                    ActividadId  = item.ActividadId,
                                    HabitacionId = habitacion.HabitacionId,
                                    Estado       = 1
                                };
                                listHabAct.Add(actHab);
                            }
                            if (listHabAct.Count > 0)
                            {
                                _context.HabitacionActividad.AddRange(listHabAct);
                                await _context.SaveChangesAsync();
                            }
                            transaction.Commit();
                        }
                        catch (Exception)
                        {
                            // TODO: Handle failure
                        }
                    }
                }
                alert("success", "Habitacion creada con exito", "Operacion exitosa");
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["EstadoHabitacion"] = new SelectList(_context.EstadoHabitacion, "EstadoHabitacionId", "EstadoNombre", habitacion.EstadoHabitacionId);
            ViewData["TipoHabitacionId"] = new SelectList(_context.TipoHabitacion, "TipoHabitacionId", "TipoHabitacionId", habitacion.TipoHabitacionId);
            return(View(habitacion));
        }
コード例 #4
0
        public async Task <IActionResult> Create(EmpleadoViewModel empleado)
        {
            var user = new UserLogin {
                UserName = empleado.Empleado.UsuarioNombre, Email = empleado.Empleado.Correo
            };
            var result = await _userManager.CreateAsync(user, empleado.Usuario.Password);

            user = await _userManager.FindByNameAsync(user.UserName);

            var role = await _roleManager.FindByIdAsync(empleado.Usuario.RolId.ToString());

            await _userManager.AddToRoleAsync(user, role.Name);

            if (result.Succeeded)
            {
                _context.Add(empleado);
                await _context.SaveChangesAsync();
            }
            return(RedirectToAction(nameof(Index)));
        }
コード例 #5
0
        public async Task <IActionResult> Create([Bind("ActividadId,TipoActividadId,Descripcion,Estado")] Actividad actividad)
        {
            /*if (ModelState.IsValid)
             * {*/
            _context.Add(actividad);
            await _context.SaveChangesAsync();

            alert("success", "Actividad creada con exito", "Operacion exitosa");
            return(RedirectToAction(nameof(Index)));

            /*}
             * ViewData["TipoActividad"] = new SelectList(_context.TipoActividad, "TipoActividadId", "Nombre", actividad.TipoActividadId);
             * var estados = new SelectList(
             *  new List<SelectListItem>
             *  {
             *      new SelectListItem {Text = "1", Value = "Activo"},
             *      new SelectListItem {Text = "0", Value = "Inactivo"}
             *  }, "Value", "Text");
             * ViewData["Estado"] = new SelectList(estados, estados.DataTextField, estados.DataValueField);
             * return View(actividad);*/
        }
コード例 #6
0
        public async Task <IActionResult> Create([Bind("AsignacionHabitacionId,EmpleadoId,HabitacionId,RolId,Fecha")] AsignacionHabitacion asignacionHabitacion)
        {
            if (ModelState.IsValid)
            {
                asignacionHabitacion.RolId = (int)RolEnum.AgenteDeLimpieza;
                _context.Add(asignacionHabitacion);
                await _context.SaveChangesAsync();

                alert("success", "Asignacion registrada con exito", "Operacion exitosa");
                return(RedirectToAction(nameof(Index)));
            }
            SqlParameter[] parametros = new SqlParameter[]
            {
                new SqlParameter("@IdRol", (int)RolEnum.AgenteDeLimpieza)
            };
            var result = _context.Empleado.FromSql("EmpleadosPorRol @IdRol", parametros)
                         .Select(x => new { Texto = x.Nombres + " " + x.Apellidos, x.EmpleadoId });

            ViewData["EmpleadoId"]   = new SelectList(result, "EmpleadoId", "Texto", asignacionHabitacion.EmpleadoId);
            ViewData["HabitacionId"] = new SelectList(_context.Habitacion, "HabitacionId", "Numero", asignacionHabitacion.HabitacionId);
            return(View(asignacionHabitacion));
        }
コード例 #7
0
        public async Task <IActionResult> Create([Bind("EmpleadoId,Nombres,Apellidos,Direccion,Telefono,Correo,Sexo,UsuarioNombre")] Empleado empleado, string password, string rolId)
        {
            var user = new UserLogin {
                UserName = empleado.UsuarioNombre, Email = empleado.Correo
            };
            var result = await _userManager.CreateAsync(user, password);

            user = await _userManager.FindByNameAsync(user.UserName);

            var role = await _roleManager.FindByIdAsync(rolId);

            await _userManager.AddToRoleAsync(user, role.Name);

            if (result.Succeeded)
            {
                _context.Add(empleado);
                await _context.SaveChangesAsync();

                alert("success", "Empleado registrado con exito", "Operacion exitosa");
                return(RedirectToAction(nameof(Index)));
            }
            return(View(empleado));
        }
コード例 #8
0
        public async Task <IActionResult> Create([Bind("IncidenciaID,EmpleadoId,Habitacion,Prioridad,Descripcion,Encargado,Estado,FechaAbierto,FechaCerrado")] Incidencia incidencia)
        {
            if (ModelState.IsValid)
            {
                var empleado = await _context.Empleado.FirstOrDefaultAsync(e => e.UsuarioNombre == _userManager.GetUserName(User));

                incidencia.EmpleadoId   = empleado.EmpleadoId;
                incidencia.FechaAbierto = DateTime.Now;
                incidencia.Estado       = 0;
                _context.Add(incidencia);
                var habitacion = _context.Habitacion.Where(a => a.Numero == incidencia.Habitacion).FirstOrDefault();
                habitacion.EstadoHabitacionId = 7;
                _context.Update(habitacion);
                await _context.SaveChangesAsync();

                alert("success", "Incidencia creada con éxito", "Operación exitosa");
                if (User.IsInRole("Supervisor"))
                {
                    return(RedirectToAction("index", "supervision"));
                }
                if (User.IsInRole("Administrador"))
                {
                    return(RedirectToAction("index"));
                }
            }
            ViewData["Habitaciones"] = new SelectList(_context.Habitacion.Where(h => h.EstadoHabitacionId != 7), "Numero", "Numero");
            List <string> prioridad = new List <string>
            {
                "Alta",
                "Media",
                "Baja"
            };

            ViewData["Prioridad"] = new SelectList(prioridad);
            return(View(incidencia));
        }
コード例 #9
0
        public async Task <IActionResult> Edit(int id, [Bind("IncidenciaID,EmpleadoId,Habitacion,Prioridad,Descripcion,Encargado,Estado,FechaAbierto,FechaCerrado")] Incidencia incidencia)
        {
            if (id != incidencia.IncidenciaID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    HoteleriaContext _context2 = new HoteleriaContext();
                    HoteleriaContext _context3 = new HoteleriaContext();
                    Incidencia       inc       = _context2.Incidencia.Find(incidencia.IncidenciaID);

                    if (incidencia.Encargado != null && incidencia.Estado == 0)
                    {
                        Empleado             emp = _context2.Empleado.Where(e => e.UsuarioNombre == incidencia.Encargado).First();
                        Habitacion           hab = _context2.Habitacion.Where(h => h.Numero == incidencia.Habitacion).First();
                        AsignacionHabitacion asignacionHabitacion = new AsignacionHabitacion
                        {
                            EmpleadoId   = emp.EmpleadoId,
                            HabitacionId = hab.HabitacionId,
                            RolId        = 4
                        };
                        if (inc.Encargado == null)
                        {
                            _context2.Add(asignacionHabitacion);
                        }
                        else
                        {
                            _context2.Update(asignacionHabitacion);
                        }
                        new NotificacionService().Notificar(emp, hab, ActividadTipo.Mantenimiento);
                    }
                    if (incidencia.Estado == 0)
                    {
                        incidencia.FechaCerrado = null;
                        var habitacion = _context3.Habitacion.Where(a => a.Numero == incidencia.Habitacion).First();
                        if (habitacion.EstadoHabitacionId != 7)
                        {
                            habitacion.EstadoHabitacionId = 7;
                            _context3.Update(habitacion);
                        }
                    }
                    else if (incidencia.Estado == 1)
                    {
                        incidencia.FechaCerrado = DateTime.Now;
                        var habitacion = _context3.Habitacion.Where(a => a.Numero == incidencia.Habitacion).First();
                        var limpiezaid = _context3.AsignacionHabitacion.Where(a => a.HabitacionId == habitacion.HabitacionId && a.RolId == 3).First().EmpleadoId;
                        var emplimp    = _context3.Empleado.Find(limpiezaid);
                        habitacion.EstadoHabitacionId = 3;
                        _context3.Update(habitacion);
                        new NotificacionService().Notificar(emplimp, habitacion, ActividadTipo.Limpieza);
                        var emp = _context2.Empleado.Where(e => e.UsuarioNombre == incidencia.Encargado).First();
                        var asignacionHabitacion = _context2.AsignacionHabitacion.Where(a => a.EmpleadoId == emp.EmpleadoId && a.HabitacionId == habitacion.HabitacionId).First();
                        _context2.Remove(asignacionHabitacion);
                    }
                    _context.Update(incidencia);
                    await _context.SaveChangesAsync();

                    await _context2.SaveChangesAsync();

                    await _context3.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!IncidenciaExists(incidencia.IncidenciaID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                alert("success", "Incidencia editada con exito", "Operacion exitosa");
                return(RedirectToAction(nameof(Index)));
            }
            var estados = new SelectList(
                new List <SelectListItem>
            {
                new SelectListItem {
                    Text = "1", Value = "Resuelto"
                },
                new SelectListItem {
                    Text = "0", Value = "Pendiente"
                }
            }, "Value", "Text");

            ViewData["Estado"] = new SelectList(estados, estados.DataTextField, estados.DataValueField);
            var encargados = _userManager.GetUsersInRoleAsync("Mantenimiento").Result;

            ViewData["Encargado"] = new SelectList(encargados);
            List <string> prioridad = new List <string>
            {
                "Alta",
                "Media",
                "Baja"
            };

            ViewData["Prioridad"] = new SelectList(prioridad);
            return(View(incidencia));
        }