/// <summary> /// MEthod to get assets for a building from the custom /// buildingAssets table /// </summary> /// <param name="buildingId"></param> /// <returns></returns> public IAsset GetDefaultBuildingAsset(int buildingId) { IAsset assetFound = null; try { var buildingAssets = _buildingAssetRepo.GetAllById(buildingId); //if found on database if (buildingAssets != null && buildingAssets.Count > 0) { foreach (var buildingAsset in buildingAssets) { var mediaFound = TryGetTypedMediaAsset(buildingId, buildingAsset.MediaId); //first non-null result use it if (mediaFound != null) { assetFound = buildingAsset; assetFound.Url = _umbracoHelper.TypedMedia(buildingAsset.MediaId) != null?_umbracoHelper.TypedMedia(buildingAsset.MediaId).Url : "/images/no_thumbnail.jpg"; break; } } //mediaId = buildingAssets.FirstOrDefault().MediaId; } } catch (Exception ex) { LogHelper.Error <MediaManager>(ex.Message, ex); } return(assetFound); }
public ApartmentAsset GetByApartmentId(int id) { var apartmentAsset = _apartmentAssetRepo.GetAllById(id).FirstOrDefault(); if (apartmentAsset == null) { return(null); } return(apartmentAsset); }
/// <summary> /// Retrieves the list of apartments with its associated building asset IDs based on the provided building ID. /// </summary> /// <param name="buildingId"></param> /// <returns>List<ApartmentAssignment></returns> private List <ApartmentAssignment> GetApartmentAssignments(int buildingId) { IList <SvgData> SVGs = _svgDataRepo.GetAllById(buildingId); if (SVGs.Count > 0) { List <ApartmentAssignment> apartmentAssignments = new List <ApartmentAssignment>(); foreach (var SVG in SVGs) { List <Apartment> apartments = GetAssignedApartments(SVG.Svg); foreach (var apartment in apartments) { ApartmentAssignment apartmentAssignment = new ApartmentAssignment(); apartmentAssignment = apartmentAssignments.Where(x => x.Apartment.Id == apartment.Id).FirstOrDefault(); if (apartmentAssignment == null) { apartmentAssignment = new ApartmentAssignment(); apartmentAssignment.Apartment = apartment; apartmentAssignment.BuildingAssetIds = new List <int>(); apartmentAssignment.BuildingAssetIds.Add(SVG.AssetId); apartmentAssignments.Add(apartmentAssignment); } else { apartmentAssignments[apartmentAssignments.IndexOf(apartmentAssignment)].BuildingAssetIds.Add(SVG.AssetId); } } } return(apartmentAssignments); } else { return(new List <ApartmentAssignment>()); } }
//get all images on a building public IList <BuildingAsset> GetBuildingAssets(int buildingId) { return(_buildingAssetRepo.GetAllById(buildingId)); }