Beispiel #1
0
        /// <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);
        }
Beispiel #2
0
        public ApartmentAsset GetByApartmentId(int id)
        {
            var apartmentAsset = _apartmentAssetRepo.GetAllById(id).FirstOrDefault();

            if (apartmentAsset == null)
            {
                return(null);
            }

            return(apartmentAsset);
        }
Beispiel #3
0
        /// <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>());
            }
        }
Beispiel #4
0
 //get all images on a building
 public IList <BuildingAsset> GetBuildingAssets(int buildingId)
 {
     return(_buildingAssetRepo.GetAllById(buildingId));
 }