public string SalidaHora() { int ok = 0; int opcion = 0; int numSalida = 0; //INFORMACION DEL USUARIO LOGEADO int idUsuarioSession = (int)Session["Id"]; DateTime fechaSession = DateTime.Parse(Session["fechaActual"].ToString()); fechaSession = fechaSession.Date; //GENERACIÓN DE HORA DEL MOMENTO TimeSpan hora = new TimeSpan(DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second); String salida = hora.ToString(); //REGISTRO HORA EN BASE DE DATOS DEL USUARIO LOGEADO Models.asistencia asi = new Models.asistencia(); using (var bd = new asistenciaEntities()) { asi = (from asist in bd.asistencia where asist.USU_ID.Equals(idUsuarioSession) && asist.ASI_FECHA.Equals(fechaSession) select asist).First(); asi.ASI_HORA_SALIDA = hora; ok = bd.SaveChanges(); } LogicaHoras(idUsuarioSession, hora, opcion); return(salida); }
public int justificarAsistencia(AsistenciaCLS oAsistenciaCLS, int titulo) { int ok = 0; using (var bd = new asistenciaEntities()) { Models.asistencia asi = bd.asistencia.Where(p => p.ASI_ID.Equals(titulo)).First(); asi.ASI_OBSERVACION = oAsistenciaCLS.observacion; ok = bd.SaveChanges(); } return(ok); }
public int aprobar(int id) { int ok = 0; using (var bd = new asistenciaEntities()) { Models.asistencia infoAsistencia = bd.asistencia.Where(p => p.ASI_ID.Equals(id)).First(); infoAsistencia.ASI_ESTADO = 1; infoAsistencia.ASI_ATRASO = 1; ok = bd.SaveChanges(); } return(ok); }
//Editar justificación public JsonResult recuperarDatos(int id) { AsistenciaCLS oAsistenciaCLS = new AsistenciaCLS(); try { using (var bd = new asistenciaEntities()) { Models.asistencia oAsistencia = bd.asistencia.Where(p => p.ASI_ID == id).First(); oAsistenciaCLS.observacion = oAsistencia.ASI_OBSERVACION; } } catch (Exception) { throw; } return(Json(oAsistenciaCLS, JsonRequestBehavior.AllowGet)); }
public int justificar(AsistenciaCLS asistenciaCLS) { int rpta = 0; int idUsuarioSession = (int)Session["Id"]; try { using (var bd = new asistenciaEntities()) { Models.asistencia asi = bd.asistencia.Where(p => p.USU_ID.Equals(idUsuarioSession) && p.ASI_FECHA.Equals(asistenciaCLS.fechaJustificar)).First(); asi.ASI_OBSERVACION = asistenciaCLS.observacion; rpta = bd.SaveChanges(); } } catch (Exception) { throw; } return(rpta); }
public string IngresoHora() { //Declaración de variables int opcion = 1; //HORA ESTABLECIDA POR LA EMPRESA 9:10 COMO MAXIMO, POSTERIOR A ESO CUENTA COMO ATRASO TimeSpan horaEstablecida = new TimeSpan(09, 10, 00); //INFORMACION DEL USUARIO LOGEADO int idUsuarioSession = (int)Session["Id"]; DateTime fechaSession = DateTime.Parse(Session["fechaActual"].ToString()); fechaSession = fechaSession.Date; //GENERACIÓN DE HORA DEL MOMENTO TimeSpan hora = new TimeSpan(DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second); String ingreso = hora.ToString(); //REGISTRO HORA EN BASE DE DATOS DEL USUARIO LOGEADO Models.asistencia asi = new Models.asistencia(); using (var bd = new asistenciaEntities()) { asi = (from asist in bd.asistencia where asist.USU_ID.Equals(idUsuarioSession) && asist.ASI_FECHA.Equals(fechaSession) select asist).First(); asi.ASI_HORA_INGRESO = hora; asi.ASI_ESTADO = 1; if (hora < horaEstablecida) { asi.ASI_ATRASO = 1; } bd.SaveChanges(); } LogicaHoras(idUsuarioSession, hora, opcion); return(ingreso); }
// GET: Home public ActionResult Index() { //condicion si existe un ID de usuario al hacer login if (Session["Id"] == null) { return(RedirectToAction("Index", "Login")); } //guardarmos variables de session luego de hacer login en variables locales int idUsuarioSession = (int)Session["Id"]; DateTime fechaSession = DateTime.Parse(Session["fechaActual"].ToString()); List <UsuariosCLS> ListaUsuarios = new List <UsuariosCLS>(); AsistenciaCLS asisCLS = new AsistenciaCLS(); using (var bd = new asistenciaEntities()) { //CONSULTANDO EN BASE DE DATOS SI HAY REGISTROS CON LA FECHA DE HOY int numeroVeces = bd.asistencia.Where(p => p.USU_ID.Equals(idUsuarioSession) && p.ASI_FECHA.Equals(fechaSession)).Count(); //SI NO HAY REGISTRO INGRESA PROCEDE A REGISTRAR if (numeroVeces < 1) { //RECUPERANDO TODOS LOS USUARIOS ListaUsuarios = (from usu in bd.usuarios where usu.USU_ESTADO == 1 select new UsuariosCLS { idUsuario = usu.USU_ID }).ToList(); //AGREGANDO REGISTRO DE FECHA DIARIA POR USUARIO A HISTORIAL foreach (UsuariosCLS usuario in ListaUsuarios) { Models.asistencia asi = new Models.asistencia(); asi.USU_ID = usuario.idUsuario; asi.ASI_FECHA = fechaSession; asi.ASI_ESTADO = 0; asi.ASI_ATRASO = 0; bd.asistencia.Add(asi); bd.SaveChanges(); } } //Actualizar total Atrasos por mes if (Session["perfil"].Equals("Administrador")) { ListaUsuarios = (from usu in bd.usuarios select new UsuariosCLS { idUsuario = usu.USU_ID }).ToList(); foreach (UsuariosCLS usuario in ListaUsuarios) { //Metodo registrrar total atrasos por usuarioz Atrasos(usuario.idUsuario); } } //Recuperando información del registro que sea igual al login Models.asistencia asistenciaUsuario = bd.asistencia.Where(p => p.USU_ID.Equals(idUsuarioSession) && p.ASI_FECHA.Equals(fechaSession)).First(); asisCLS.horaIngreso = asistenciaUsuario.ASI_HORA_INGRESO; asisCLS.horaSalida = asistenciaUsuario.ASI_HORA_SALIDA; } return(View(asisCLS)); }