public IActionResult List(DiningRoomRequestPayload payload) { var response = ResponseModelFactory.CreateResultInstance; using (_dbContext) { var query = _dbContext.KitchenVideo.Where(x => x.IsDelete == 0).Include(x => x.SchoolUu).Select(x => new { x.Id, x.VideoUuid, x.Name, x.Type, x.AddTime, x.AddPeople, x.Accessory, x.IsDelete, x.SchoolUuid, x.SchoolUu.SchoolName, }); if (AuthContextService.CurrentUser.SchoolGuid != null) { query = query.Where(x => x.SchoolUuid == AuthContextService.CurrentUser.SchoolGuid); } if (!string.IsNullOrEmpty(payload.Kw)) { query = query.Where(x => x.Name.Contains(payload.Kw)); } if (payload.Kw2 != null && !string.IsNullOrEmpty(payload.Kw2[0]) && !string.IsNullOrEmpty(payload.Kw2[1])) { var start = Convert.ToDateTime(payload.Kw2[0]); var end = Convert.ToDateTime(payload.Kw2[1]); query = query.AsEnumerable().Where(x => Convert.ToDateTime(x.AddTime) >= start && Convert.ToDateTime(x.AddTime) < end).AsQueryable(); } if (payload.FirstSort != null) { query = query.OrderBy(payload.FirstSort.Field, payload.FirstSort.Direct == "DESC"); } var list = query.Paged(payload.CurrentPage, payload.PageSize).ToList(); var totalCount = query.Count(); response.SetData(list, totalCount); return(Ok(response)); } }
public IActionResult List(DiningRoomRequestPayload payload) { var response = ResponseModelFactory.CreateResultInstance; using (_dbContext) { var query = _dbContext.LiveShot.Where(x => x.IsDelete == 0).Include(x => x.CuisineUu).ThenInclude(x => x.SchoolUu).Select(x => new { x.Id, x.IsDelete, x.CuisineUu.CuisineName, x.SchoolUu.SchoolName, Ingredient = FoodName(x.CuisineUu.Ingredient, _dbContext), Burdening = FoodName(x.CuisineUu.Burdening, _dbContext), x.CuisineUu.Abstract, x.LiveShotUuid, x.CuisineUuid, x.AddTime, x.Accessory, x.SchoolUuid, x.AddPeople, x.Datetime, Datetype = ShowType(x.Datetype), }); if (AuthContextService.CurrentUser.SchoolGuid != null) { query = query.Where(x => x.SchoolUuid == AuthContextService.CurrentUser.SchoolGuid); } if (!string.IsNullOrEmpty(payload.Kw)) { query = query.Where(x => x.CuisineName.Contains(payload.Kw)); } if (payload.FirstSort != null) { query = query.OrderBy(payload.FirstSort.Field, payload.FirstSort.Direct == "DESC"); } var list = query.Paged(payload.CurrentPage, payload.PageSize).ToList(); var totalCount = query.Count(); response.SetData(list, totalCount); return(Ok(response)); } }