public IActionResult GetTable(int page, int full) { //反序列化IndexViews取Session var value = HttpContext.Session.GetString("IndexViews"); List <AreaSortingRecords> IndexViews = (value == null?default(List <AreaSortingRecords>):JsonConvert.DeserializeObject <List <AreaSortingRecords> >(value)); AreaSortingRecords[] IndexViewsArray = IndexViews.ToArray(); int k = 0; int TEST = IndexViewsArray.Length; int End; if (full == 1) { End = (page * 10) + 10; } else { End = IndexViewsArray.Length; } AreaSortingRecords[] tempViewArray = new AreaSortingRecords[End - page * 10]; for (int i = page * 10; i < End; i++) { tempViewArray[k] = IndexViewsArray[i]; k++; } return(Json(tempViewArray.ToList())); }
public List <AreaSortingRecords> GetIndexViews(string AreaName) { List <SortingRecord> AreaSortingRecords = new List <SortingRecord>(); List <AreaSortingRecords> IndexViews = new List <AreaSortingRecords>(); //根据区域名称查询区域ID Guid AreaID = _slaveContext.Areas.Single(m => m.Name == AreaName).ID; //查询该区域下所有用户 List <User> AreaUsers = _slaveContext.Users.Where(m => m.AreaID == AreaID).ToList(); List <Guid> UserIDs = new List <Guid>(); foreach (var user in AreaUsers) { UserIDs.Add(user.ID); } AreaSortingRecords = new List <SortingRecord>(); AreaSortingRecords = _slaveContext.SortingRecords.Where(m => UserIDs.Contains(m.UserID)).OrderByDescending(m => m.Time).ToList(); foreach (var item in AreaSortingRecords) { int userNo = _slaveContext.Users.Single(m => m.ID == item.UserID).UserNo; DateTime time = (DateTime)item.Time; string garbageTypeName = item.GarbageTypeName; float weight = item.Weight == null ? 0F : (float)item.Weight; //有的Weight为NULL int bp = item.BP; AreaSortingRecords indexView = new AreaSortingRecords() { UserNo = userNo, Time = time, GarbageTypeName = garbageTypeName, Weight = weight, BP = bp }; IndexViews.Add(indexView); } //序列化AreaSortingRecords并存到Session,存储分拣信息,供GetChartData()函数使用 HttpContext.Session.SetString("SortingRecords", JsonConvert.SerializeObject(AreaSortingRecords)); return(IndexViews); }