public async Task <IActionResult> Edit(int id, [Bind("AsignacionHabitacionId,EmpleadoId,HabitacionId,RolId,Fecha")] AsignacionHabitacion asignacionHabitacion) { if (id != asignacionHabitacion.AsignacionHabitacionId) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(asignacionHabitacion); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!AsignacionHabitacionExists(asignacionHabitacion.AsignacionHabitacionId)) { return(NotFound()); } else { throw; } } alert("success", "Asignacion editada 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.Where(x => x.HabitacionId == asignacionHabitacion.HabitacionId), "HabitacionId", "Numero", asignacionHabitacion.HabitacionId); return(View(asignacionHabitacion)); }
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)); }
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)); }