/// <summary> /// Get List of LocationViews. /// </summary> /// <param name="pageNumber">Page Number.</param> /// <param name="pageSize">Items count per page.</param> /// <param name="loadParents">Enable or Disable loading the Parents objects.</param> /// <param name="loadChilds">Enable or Disable loading the Childs objects.</param> /// <param name="searchFor">Search text as per the 'Title' field.</param> /// <returns>Get List of LocationViews.</returns> public APILocationViewResponseModels.GetLocationViewsList GetLocationViewsList(string searchFor, bool loadLocations, int pageNumber, int pageSize) { APILocationViewResponseModels.GetLocationViewsList result = new APILocationViewResponseModels.GetLocationViewsList(); IPagedList <LocationView> locationViewsPL = uof_Repositories.repoLocationViews.GetPagedList(searchFor, pageNumber, pageSize); List <LocationView> locationViews = locationViewsPL.ToList(); List <APILocationView> listAPILocationViews = new List <APILocationView>(); foreach (LocationView locationView in locationViews) { APILocationView apiLocationView = TypesMapper.APILocationViewAdapter.fromLocationView(locationView, loadLocations); listAPILocationViews.Add(apiLocationView); } result.Views = listAPILocationViews; PagingInfoResponseModel pagingInfo = new PagingInfoResponseModel(); pagingInfo.CurrentPage = locationViewsPL.PageNumber; pagingInfo.ItemsPerPage = locationViewsPL.PageSize; pagingInfo.ItemsCount = locationViewsPL.TotalItemCount; pagingInfo.PagesCount = locationViewsPL.PageCount; result.PagingInfo = pagingInfo; return(result); }
/// <summary> /// Get Locations list that have warnings Only. /// </summary> /// <param name="pageNumber">Page Number.</param> /// <param name="pageSize">Items count per page.</param> /// <param name="loadParents">Enable or Disable loading the Parents objects.</param> /// <param name="loadChilds">Enable or Disable loading the Childs objects.</param> /// <returns>List of LocationViews that have one warning or more.</returns> public List <APILocationView> GetLocationViewsWithWarning(int pageNumber, int pageSize, bool loadParents, bool loadChilds) { List <APILocationView> apiLocationViews = new List <APILocationView>(); List <LocationView> locationViews = db.LocationViews .Where(v => v.LinkLocationsLocationViews.Any(ll => ll.Location.LinkThingsLocations.Any(lt => lt.Thing.Endpoints.Any( e => e.IsNumericOnly == true && (e.LastIONumericValue >= e.HighRange || e.LastIONumericValue <= e.LowRange) ) ) ) ) .OrderBy(o => o.Title) .Skip((pageNumber - 1) * pageSize) .Take(pageSize).ToList(); foreach (LocationView item in locationViews) { APILocationView apiLocationView = TypesMapper.APILocationViewAdapter.fromLocationView(item, loadChilds); apiLocationViews.Add(apiLocationView); } return(apiLocationViews); }
public static APILocationView fromLocationView(LocationView sourceLocationView, bool loadParents = true, bool loadChilds = true) { APILocationView result = new APILocationView(); result.ID = sourceLocationView.ID; result.IsActive = sourceLocationView.IsActive; result.OwnerID = sourceLocationView.OwnerID; result.LocationViewTypeID = sourceLocationView.LocationViewTypeID; result.Title = sourceLocationView.Title; result.X = sourceLocationView.X; result.Y = sourceLocationView.Y; result.Z = sourceLocationView.Z; result.LocationsCount = sourceLocationView.LinkLocationsLocationViews.Count; #region Load Parents if (loadParents) { result.LocationViewType = TypesMapper.APILocationViewTypeAdapter.fromLocationViewType(sourceLocationView.LocationViewType); } #endregion #region Load Childs if (loadChilds) { List <Location> locs = result.Locations = } #endregion return(result); }
public static APILocation fromLocation(Location sourceLocation, bool loadViews, bool loadThings) { APILocation result = new APILocation(); result.GUID = sourceLocation.GUID; result.IconID = sourceLocation.IconID; result.ID = sourceLocation.ID; result.isActive = sourceLocation.isActive; result.LatitudeX = sourceLocation.LatitudeX; result.LongitudeY = sourceLocation.LongitudeY; result.Status = sourceLocation.Status; result.Title = sourceLocation.Title; #region Parents #region LocationViews if (loadViews) { List <APILocationView> apiLocationViews = new List <APILocationView>(); foreach (LocationView locationView in sourceLocation.locationViews) { APILocationView apiLocationView = TypesMapper.APILocationViewAdapter.fromLocationView(locationView, false); apiLocationViews.Add(apiLocationView); } result.LocationViews = apiLocationViews; } #endregion #endregion #region Childs if (loadThings) { #region Things List <APIThing> apiThings = new List <APIThing>(); foreach (Thing thing in sourceLocation.Things) { APIThing apiThing = TypesMapper.APIThingAdapter.fromThing(thing, false, false, false, false); apiThings.Add(apiThing); } result.Things = apiThings; #endregion } result.ThingsCount = sourceLocation.Things.Count; #endregion return(result); }
/// <summary> /// Get List of LocationViews. /// </summary> /// <param name="pageNumber">Page Number.</param> /// <param name="pageSize">Items count per page.</param> /// <param name="loadParents">Enable or Disable loading the Parents objects.</param> /// <param name="loadChilds">Enable or Disable loading the Childs objects.</param> /// <param name="searchFor">Search text as per the 'Title' field.</param> /// <returns>Get List of LocationViews.</returns> public List <APILocationView> GetLocationViews(int pageNumber, int pageSize, bool loadParents, bool loadChilds, string searchFor) { List <APILocationView> viewsPageList = new List <APILocationView>(); List <LocationView> viewsList = db.LocationViews.Include("LocationViewType") .Where(v => ((searchFor == null || searchFor == "") || v.Title.Contains(searchFor)) ) .OrderBy(o => o.Title) .Skip((pageNumber - 1) * pageSize) .Take(pageSize) .ToList(); foreach (LocationView item in viewsList) { APILocationView apiLocationView = TypesMapper.APILocationViewAdapter.fromLocationView(item, loadChilds); viewsPageList.Add(apiLocationView); } return(viewsPageList); }
public static APILocationView fromLocationView(LocationView sourceLocationView, bool loadChilds) { APILocationView result = new APILocationView(); result.ID = sourceLocationView.ID; result.IsActive = sourceLocationView.IsActive; result.OwnerID = sourceLocationView.OwnerID; result.Title = sourceLocationView.Title; result.X = sourceLocationView.X; result.Y = sourceLocationView.Y; result.Z = sourceLocationView.Z; result.LocationsCount = sourceLocationView.LinkLocationsLocationViews.Count; #region Load MasterTypes result.LocationViewType = TypesMapper.APILocationViewTypeAdapter.fromLocationViewType(sourceLocationView.LocationViewType); #endregion #region Load Parents #endregion #region Load Childs if (loadChilds) { #region Locations List <Location> locs = sourceLocationView.Locations; foreach (Location loc in locs) { APILocation apiLocation = new APILocation(); apiLocation = TypesMapper.APILocationAdapter.fromLocation(loc, false, false); result.Locations.Add(apiLocation); } #endregion } #endregion return(result); }