public async Task <IHttpActionResult> PutAsistenciaEvento(int id, AsistenciaEvento asistenciaEvento) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != asistenciaEvento.AsistenciaEventoId) { return(BadRequest()); } db.Entry(asistenciaEvento).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!AsistenciaEventoExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public Object ConfirmarAsistencia(int id_evento) { try { var logueado = HttpContext.Session.Authenticated(); var residente = ( from r in db.Residente join u in db.Usuario on r.IdUsuario equals u.Id where u.Id == logueado.Id select r ).First(); var asiste = db.AsistenciaEvento.FirstOrDefault(ae => ae.IdResidente == residente.Id && ae.IdEvento == id_evento); if (asiste != null) { throw new Exception("El residente ya esta asistiendo a este evento."); } var asistencia = new AsistenciaEvento(); asistencia.IdEvento = id_evento; asistencia.IdResidente = residente.Id; db.AsistenciaEvento.Add(asistencia); db.SaveChanges(); return(new { error = false, data = asistencia }); } catch (Exception err) { return(new { error = true, data = err.Message }); } }
public async Task <IHttpActionResult> PostAsistenciaEvento(AsistenciaEvento asistenciaEvento) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.AsistenciaEventos.Add(asistenciaEvento); await db.SaveChangesAsync(); return(CreatedAtRoute("DefaultApi", new { id = asistenciaEvento.AsistenciaEventoId }, asistenciaEvento)); }
public async Task <IHttpActionResult> GetAsistenciaEvento(int id) { AsistenciaEvento asistenciaEvento = await db.AsistenciaEventos.FindAsync(id); if (asistenciaEvento == null) { return(NotFound()); } db.AsistenciaEventos.Remove(asistenciaEvento); await db.SaveChangesAsync(); return(Ok(asistenciaEvento)); }
public IEnumerable <AsistenciaEvento> Get([FromUri] int idEncargado /* [FromUri]int idSocio*/) { List <AsistenciaEvento> listaEventosAux = new List <AsistenciaEvento>(); int cantidadAsistenciasTomadas = 0; int cantidadAsistencias = 0; AsistenciaEvento asistenciaEvento; List <Evento> listaEventos = ControlEvento.devolverInstancia().devolverEventosEncargado(idEncargado); foreach (var evento in listaEventos) { if (evento.fechaBaja != null || evento.estado == "Nuevo") { continue; } cantidadAsistenciasTomadas = 0; cantidadAsistencias = 0; asistenciaEvento = new AsistenciaEvento(); IEnumerable <DetalleEvento> detalleEvento = ControlDetalleEvento.devolverInstancia().devolverTodos(evento.id); foreach (var item in detalleEvento) { if (item.asistencia) { cantidadAsistenciasTomadas++; cantidadAsistencias++; } else { cantidadAsistencias++; } } var roundedA = (Math.Round((double)((double)cantidadAsistenciasTomadas / (double)cantidadAsistencias), 1)) * 100; asistenciaEvento.evento = evento; asistenciaEvento.porcentajeAsistencia = (int)(roundedA); listaEventosAux.Add(asistenciaEvento); Console.WriteLine("cantAsistencias:" + cantidadAsistencias + "asistenciasTomadas" + cantidadAsistenciasTomadas + "Redondeado" + roundedA); } return(listaEventosAux); }
public async Task <IHttpActionResult> Borrar(AsistenciaEvento asistenciaEvento) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.AsistenciaEventos.Remove(asistenciaEvento); await db.SaveChangesAsync(); return(CreatedAtRoute("DefaultApi", new { id = asistenciaEvento.AsistenciaEventoId }, asistenciaEvento)); //var asistencia = await db.AsistenciaEventos.FindAsync(id); //if (asistencia == null) //{ // return NotFound(); //} //db.AsistenciaEventos.Remove(asistenciaEvento); //await db.SaveChangesAsync(); //return Ok(asistenciaEvento); }
public async void Delete() { var connection = await this.apiService.CheckConnection(); if (!connection.IsSuccess) { await Application.Current.MainPage.DisplayAlert( "Error", connection.Message, "Accept"); return; } var mainViewModel = MainViewModel.GetInstance(); var asistenciaEvento = new AsistenciaEvento { AsistenciaEventoId = Evento.AsistenciaEventoId, ComponenteId = mainViewModel.Componente.ComponenteId, EsInfantil = mainViewModel.Componente.EsInfantil, IdEvento = Evento.IdEvento, Precio = Evento.Precio, }; var apiBase = Application.Current.Resources["APIBase"].ToString(); var response = await this.apiService.Delete( apiBase, "/api", "/AsistenciaEventos", mainViewModel.Token.TokenType, mainViewModel.Token.AccessToken, asistenciaEvento); if (!response.IsSuccess) { this.IsRefreshing = false; await Application.Current.MainPage.DisplayAlert( "Error", response.Message, "Aceptar"); Application.Current.MainPage = new MasterPage(); return; } Evento.Apuntado = false; Evento.AsistenciaEventoId = 0; var response2 = await this.apiService.GetList <Evento>( apiBase, "/api", "/Eventos", mainViewModel.Token.TokenType, mainViewModel.Token.AccessToken, mainViewModel.Componente.ComponenteId); this.EventosList = (List <Evento>)response2.Result; this.Eventos = new ObservableCollection <EventoItemViewModel>( ToItemViewModel()); mainViewModel.Evento = new EventoViewModel(Evento); this.TextoBoton = "Apuntar"; // Otro verde #3D5C3A this.ColorBoton = "#638C3C"; }