public ActionResult Management(int page = 1, int pageSize = 50, string title = "", int? areaId = null, int? siteId = null, string fromDate = "", string toDate = "") { ViewBag.Title = ""; ViewBag.MessageStatus = TempData["MessageStatus"]; ViewBag.Message = TempData["Message"]; if (pageSize == 1) { pageSize = CMSHelper.pageSizes[0]; } @ViewBag.PageSizes = CMSHelper.pageSizes; int CurrentUserId = WebMatrix.WebData.WebSecurity.CurrentUserId; int? groupId = userProfileService.userProfileResponsitory.Single(CurrentUserId).Group_Id; ViewBag.lstTram = sitesService.GetBygroupId(groupId).ToList(); ViewBag.lstArea = areasService.GetAreasByGroupId(groupId).ToList(); string userName = User.Identity.Name; int skip = (page - 1) * pageSize; DateTime from = DateTime.Today; DateTime to = DateTime.Now; if (fromDate != "" && toDate != null) { try { from = Convert.ToDateTime(fromDate); to = from.AddDays(1); } catch { } } List<Site> sites = new List<Site>(); List<DataObservationModel> list = new List<DataObservationModel>(); if (userName == "administrator") { sites = sitesService.sitesResponsitory.GetAll().ToList(); foreach (var site in sites) { if (site.DeviceId.HasValue) { Models.Entity.Data data = dataObservationMongoService.GetDataPagingByDeviceId(from, to, site.DeviceId.Value, 0, 1, out int total).FirstOrDefault(); if (data != null) { DataObservationModel model = data.ToModel(); model.NameSite = site.Name; list.Add(model); } } } } else { if (siteId.HasValue) { var tram = sitesService.sitesResponsitory.Single(siteId); list = dataObservationMongoService.GetDataPagingByDeviceId(from, to, tram.DeviceId.Value, skip, pageSize, out int total).Select(item => new DataObservationModel { DateCreate = item.DateCreate, BTI = item.BTI, BTO = item.BTO, BHU = item.BHU, BWS = item.BWS, BAP = item.BAP, BAV = item.BAV, BAF = item.BAF, BAC = item.BAC, BA1 = item.BA1, BA2 = item.BA2, BA3 = item.BA3, BA4 = item.BA4, BB1 = item.BB1, BB2 = item.BB2, BB3 = item.BB3, BB4 = item.BB4, BC1 = item.BC1, BC2 = item.BC2, BDR = item.BDR, BFA = item.BFA, BFD = item.BFD, BFL = item.BFL, BFR = item.BFR, BPS = item.BPS, BPW = item.BPW, BSE = item.BSE, BT1 = item.BT1, BT2 = item.BT2, BV1 = item.BV1, BV2 = item.BV2, Device_Id = item.Device_Id, IsSEQ = item.IsSEQ, NameSite = tram.Name }).ToList(); } else { sites = sitesService.GetBygroupId(groupId).ToList(); foreach (var site in sites) { Models.Entity.Data data = dataObservationMongoService.GetDataPagingByDeviceId(from, to, site.DeviceId.Value, 0, 1, out int total).FirstOrDefault(); if (data != null) { DataObservationModel model = data.ToModel(); model.NameSite = site.Name; list.Add(model); } } } } #region Hiển thị dữ liệu và phân trang DataObservationViewModel viewModel = new DataObservationViewModel { DataO = new StaticPagedList<DataObservationModel>(list, page, pageSize, list.Count()), PagingInfo = new PagingInfo { CurrentPage = page, ItemsPerPage = pageSize, TotalItems = list.Count() }, From = from, To = to, }; #endregion return View(viewModel); }
public ActionResult Management(int page = 1, int pageSize = 50, string title = "", int?areaId = null, string fromDate = "", string toDate = "", int?siteID = null) { ViewBag.Title = ""; ViewBag.MessageStatus = TempData["MessageStatus"]; ViewBag.Message = TempData["Message"]; if (pageSize == 1) { pageSize = CMSHelper.pageSizes[0]; } @ViewBag.PageSizes = CMSHelper.pageSizes; int CurrentUserId = WebMatrix.WebData.WebSecurity.CurrentUserId; int?groupId = userProfileService.userProfileResponsitory.Single(CurrentUserId).Group_Id; ViewBag.lstTram = sitesService.GetBygroupId(groupId).ToList(); string userName = User.Identity.Name; int skip = (page - 1) * pageSize; DateTime from = DateTime.Today; DateTime to = from.AddDays(1); if (fromDate != "") { try { from = Convert.ToDateTime(fromDate); to = Convert.ToDateTime(toDate); } catch { } } List <DataObservationModel> list = new List <DataObservationModel>(); int totalRows = 0; if (siteID.HasValue) { int deviceId = sitesService.sitesResponsitory.Single(siteID).DeviceId.Value; list = dataObservationMongoService.GetDataPagingByDeviceId(from, to, deviceId, skip, pageSize, out int total).OrderByDescending(i => i.DateCreate).Select(x => new DataObservationModel { BTI = x.BTI, BTO = x.BTO, BHU = x.BHU, BWS = x.BWS, BAP = x.BAP, BAV = x.BAV, BAC = x.BAC, BAF = x.BAF, NameSite = sitesService.sitesResponsitory.GetAll().Where(i => i.DeviceId == x.Device_Id).FirstOrDefault().Name, DateCreate = x.DateCreate }).ToList(); totalRows = total; } else { list = dataObservationMongoService.GetDataPaging(from, to, skip, pageSize, out int total).OrderByDescending(i => i.DateCreate).Select(x => new DataObservationModel { BTI = x.BTI, BTO = x.BTO, BHU = x.BHU, BWS = x.BWS, BAP = x.BAP, BAV = x.BAV, BAC = x.BAC, BAF = x.BAF, NameSite = sitesService.sitesResponsitory.GetAll().Where(i => i.DeviceId == x.Device_Id).FirstOrDefault().Name, DateCreate = x.DateCreate }).ToList(); totalRows = total; } #region Hiển thị dữ liệu và phân trang DataObservationViewModel viewModel = new DataObservationViewModel { DataO = new StaticPagedList <DataObservationModel>(list, page, pageSize, totalRows), PagingInfo = new PagingInfo { CurrentPage = page, ItemsPerPage = pageSize, TotalItems = totalRows }, From = from, To = to, }; #endregion return(View(viewModel)); }