public async Task <IActionResult> UpdateFavorites([FromBody] RelRouteUser data) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var getFavStatus = _context.Favorites.Where(x => x.IdUser == data.IdUser && x.IdRoute == data.IdRoute).FirstOrDefault(); if (getFavStatus != null) { getFavStatus.isFavorite = (getFavStatus.isFavorite) ? false : true; _context.Favorites.Update(getFavStatus); } else { getFavStatus = new Favorites(); getFavStatus.isFavorite = true; getFavStatus.IdUser = data.IdUser; getFavStatus.IdRoute = data.IdRoute; _context.Favorites.Add(getFavStatus); } await _context.SaveChangesAsync(); return(Ok(getFavStatus.isFavorite)); }
public IActionResult GetStatiticsClicks([FromBody] RelRouteUser data) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var routes = GetRoutesByUser(data.IdUser); if (routes != null) { var haveRoute = routes.Where(x => x.Id == data.IdRoute).FirstOrDefault(); if (haveRoute != null) { var totalVisits = GetTotalVisitsUserCount(routes); var selectedVisits = haveRoute.RouteVisit.Count(); totalVisits = (totalVisits > 0) ? totalVisits - selectedVisits : totalVisits; List <Percentage> routeclicks = new List <Percentage>(); Percentage addToList = new Percentage(); addToList.name = "Otras"; addToList.y = totalVisits; routeclicks.Add(addToList); addToList = new Percentage(); addToList.name = "Seleccionada"; addToList.y = selectedVisits; routeclicks.Add(addToList); return(Ok(routeclicks)); } return(NotFound("El usuario no tiene acceso de administrador a ésta ruta.")); } return(NotFound()); }
public async Task <IActionResult> PutRelRouteUser([FromRoute] int id, [FromBody] RelRouteUser relRouteUser) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != relRouteUser.IdRelation) { return(BadRequest()); } _context.Entry(relRouteUser).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!RelRouteUserExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <ActionResult> SaveRelations(UsersRoute usersRoutes) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } List <RelRouteUser> relRouteUsers = _context.RelRouteUser.Where(x => x.IdRoute == usersRoutes.idRoute).ToList(); if (relRouteUsers == null) { return(NotFound()); } else { foreach (var rels in relRouteUsers) { _context.RelRouteUser.Remove(rels);; } } foreach (var user in usersRoutes.relations) { var rel = new RelRouteUser { IdRoute = usersRoutes.idRoute, IdUser = user.Id }; _context.RelRouteUser.Add(rel); } await _context.SaveChangesAsync(); return(Ok()); }
public async Task <IActionResult> PostRelRouteUser([FromBody] RelRouteUser relRouteUser) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _context.RelRouteUser.Add(relRouteUser); await _context.SaveChangesAsync(); return(CreatedAtAction("GetRelRouteUser", new { id = relRouteUser.IdRelation }, relRouteUser)); }