Пример #1
0
        public void CreateNewLocation(LocationDetailsDataContract locationDetails)
        {
            ExecuteFaultHandledOperation(() =>
            {
                ILocationsMasterRepository locationsMasterRepository
                                = _DataRepositoryFactory.GetDataRepository<ILocationsMasterRepository>();
                ILocationDetailsRepository locationDetailsRepository
                                = _DataRepositoryFactory.GetDataRepository<ILocationDetailsRepository>();

                LocationsMaster newLocation = new LocationsMaster() { LocationKey = Guid.NewGuid().ToString() };
                newLocation.LocationName = locationDetails.LocationName;
                newLocation.LatLng = locationDetails.LatLong;
                newLocation.LocationImage = locationDetails.ImageURL;
                locationsMasterRepository.Add(newLocation);

                for (int count = 0; count < 4; count++)
                {
                    LocationDetails locationDetail = new LocationDetails() { LocationDetailsKey = Guid.NewGuid().ToString(), LocationKey = newLocation.LocationKey };
                    locationDetail.IsDeleted = false;
                    switch (count)
                    {
                        case 0:
                            locationDetail.ActivityDescription = locationDetails.Description;
                            locationDetail.ActivityHeader = BusinessResource.DESCRIPTION; break;

                        case 1:
                            locationDetail.ActivityDescription = locationDetails.MustDrink;
                            locationDetail.ActivityHeader = BusinessResource.MUSTDRINK; break;

                        case 2:
                            locationDetail.ActivityDescription = locationDetails.MustEat;
                            locationDetail.ActivityHeader = BusinessResource.MUSTEAT; break;

                        case 3:
                            locationDetail.ActivityDescription = locationDetails.GettingAround;
                            locationDetail.ActivityHeader = BusinessResource.GETTINGAROUND; break;
                    }
                    locationDetailsRepository.Add(locationDetail);
                }
            });
        }
Пример #2
0
        public IEnumerable<LocationDetailsDataContract> GetSelectedLocationDetailsForClientApplication(string locationKey, string userAgent)
        {
            return ExecuteFaultHandledOperation(() =>
            {
                List<LocationDetailsDataContract> result = new List<LocationDetailsDataContract>();

                ILocationsMasterRepository locationsMasterRepository
                                                = _DataRepositoryFactory.GetDataRepository<ILocationsMasterRepository>();
                ILocationDetailsRepository locationDetailsRepository
                                = _DataRepositoryFactory.GetDataRepository<ILocationDetailsRepository>();

                LocationsMaster selectedLocation = locationsMasterRepository.Get(locationKey);
                IEnumerable<LocationDetails> allDetailsForSelectedLocation = locationDetailsRepository.GetAllDetailsForSelectedLocation(locationKey);

                if (allDetailsForSelectedLocation.Count() > 0)
                {
                    LocationDetailsDataContract locationDetail = new LocationDetailsDataContract() { LocationKey = locationKey, LocationName = selectedLocation.LocationName };
                    foreach (var detail in allDetailsForSelectedLocation)
                    {
                        locationDetail.LatLong = selectedLocation.LatLng;
                        if (detail.ActivityHeader == BusinessResource.DESCRIPTION)
                        {
                            locationDetail.Description = detail.ActivityDescription;
                        }
                        else if (detail.ActivityHeader == BusinessResource.GETTINGAROUND)
                        {
                            locationDetail.GettingAround = detail.ActivityDescription;
                        }
                        else if (detail.ActivityHeader == BusinessResource.MUSTDRINK)
                        {
                            locationDetail.MustDrink = detail.ActivityDescription;
                        }
                        else if (detail.ActivityHeader == BusinessResource.MUSTEAT)
                        {
                            locationDetail.MustEat = detail.ActivityDescription;
                        }
                    }
                    locationDetail.LocationName = selectedLocation.LocationName;
                    locationDetail.LatLong = selectedLocation.LatLng;
                    locationDetail.ImageURL = selectedLocation.LocationImage;
                    result.Add(locationDetail);
                }
                else
                {
                    LocationDetailsDataContract locationDetail = new LocationDetailsDataContract() { LocationKey = locationKey, LocationName = selectedLocation.LocationName };
                    locationDetail.LocationName = selectedLocation.LocationName;
                    locationDetail.LatLong = selectedLocation.LatLng;
                    locationDetail.ImageURL = selectedLocation.LocationImage;
                    result.Add(locationDetail);
                }
                if (userAgent != "smartphone" && userAgent != "tablet")
                {
                    result.FirstOrDefault().TopOffersForLocation = GetTopOffersForSelectedLocation(locationKey, result.FirstOrDefault().LocationName);
                    result.FirstOrDefault().DefaultActivityCategoryKey = "TOPTRENDING";
                }
                else
                {
                    //Get All activity categories
                    result.FirstOrDefault().AllActivities = GetAllActivityCategoriesForLocation(locationKey);
                }
                if (userAgent == "smartphone")
                {
                    foreach (var item in result.FirstOrDefault().AllActivities)
                    {
                        item.ImageURL = string.Format("Images/icons/{0}.png", item.ImageURL);
                    }
                    result.FirstOrDefault().ImageURL = string.Format("Images/mobile/{0}", result.FirstOrDefault().ImageURL);
                }
                else if (userAgent == "tablet")
                {
                    foreach (var item in result.FirstOrDefault().AllActivities)
                    {
                        item.ImageURL = string.Format("Images/icons/{0}.png", item.ImageURL);
                    }
                    result.FirstOrDefault().ImageURL = string.Format("Images/tablet/{0}", result.FirstOrDefault().ImageURL);
                }
                else
                {
                    result.FirstOrDefault().ImageURL = string.Format("Images/desktop/{0}", result.FirstOrDefault().ImageURL);
                }
                return result;
            });
        }
Пример #3
0
        public void UpdateLocationDetails(LocationDetailsDataContract locationDetails)
        {
            ExecuteFaultHandledOperation(() =>
            {
                ILocationsMasterRepository locationsMasterRepository
                                = _DataRepositoryFactory.GetDataRepository<ILocationsMasterRepository>();
                ILocationDetailsRepository locationDetailsRepository
                                = _DataRepositoryFactory.GetDataRepository<ILocationDetailsRepository>();

                LocationsMaster location = locationsMasterRepository.Get(locationDetails.LocationKey);
                location.LocationName = locationDetails.LocationName;
                location.LatLng = locationDetails.LatLong;
                location.LocationImage = locationDetails.ImageURL;
                locationsMasterRepository.Update(location);
                List<LocationDetails> allLocations = new List<LocationDetails>();

                allLocations = locationDetailsRepository.GetAllDetailsForSelectedLocation(locationDetails.LocationKey).ToList();

                if (allLocations.Count() > 0)
                {
                    foreach (var locationDetail in allLocations)
                    {
                        if (locationDetail.ActivityHeader == BusinessResource.DESCRIPTION)
                        {
                            locationDetail.ActivityDescription = locationDetails.Description;
                        }
                        else if (locationDetail.ActivityHeader == BusinessResource.GETTINGAROUND)
                        {
                            locationDetail.ActivityDescription = locationDetails.GettingAround;
                        }
                        else if (locationDetail.ActivityHeader == BusinessResource.MUSTDRINK)
                        {
                            locationDetail.ActivityDescription = locationDetails.MustDrink;
                        }
                        else if (locationDetail.ActivityHeader == BusinessResource.MUSTEAT)
                        {
                            locationDetail.ActivityDescription = locationDetails.MustEat;
                        }
                    }
                    locationDetailsRepository.UpdateAll(allLocations);
                }
                else
                {
                    for (int count = 0; count < 4; count++)
                    {
                        LocationDetails locationDetail = new LocationDetails() { LocationDetailsKey = Guid.NewGuid().ToString(), LocationKey = locationDetails.LocationKey };
                        locationDetail.IsDeleted = false;
                        switch (count)
                        {
                            case 0:
                                locationDetail.ActivityDescription = locationDetails.Description;
                                locationDetail.ActivityHeader = BusinessResource.DESCRIPTION; break;

                            case 1:
                                locationDetail.ActivityDescription = locationDetails.MustDrink;
                                locationDetail.ActivityHeader = BusinessResource.MUSTDRINK; break;

                            case 2:
                                locationDetail.ActivityDescription = locationDetails.MustEat;
                                locationDetail.ActivityHeader = BusinessResource.MUSTEAT; break;

                            case 3:
                                locationDetail.ActivityDescription = locationDetails.GettingAround;
                                locationDetail.ActivityHeader = BusinessResource.GETTINGAROUND; break;
                        }
                        locationDetailsRepository.Add(locationDetail);
                    }
                }
            });
        }
Пример #4
0
        public IEnumerable<LocationDetailsDataContract> GetSelectedLocationDetails(string locationKey)
        {
            return ExecuteFaultHandledOperation(() =>
            {
                List<LocationDetailsDataContract> result = new List<LocationDetailsDataContract>();

                ILocationsMasterRepository locationsMasterRepository
                                                = _DataRepositoryFactory.GetDataRepository<ILocationsMasterRepository>();

                ILocationDetailsRepository locationDetailsRepository
                                = _DataRepositoryFactory.GetDataRepository<ILocationDetailsRepository>();

                LocationsMaster selectedLocation = locationsMasterRepository.Get(locationKey);
                IEnumerable<LocationDetails> allDetailsForSelectedLocation = locationDetailsRepository.GetAllDetailsForSelectedLocation(locationKey);

                if (allDetailsForSelectedLocation.Count() > 0)
                {
                    LocationDetailsDataContract locationDetail = new LocationDetailsDataContract() { LocationKey = locationKey, LocationName = selectedLocation.LocationName };
                    foreach (var detail in allDetailsForSelectedLocation)
                    {
                        locationDetail.LatLong = selectedLocation.LatLng;
                        if (detail.ActivityHeader == BusinessResource.DESCRIPTION)
                        {
                            locationDetail.Description = detail.ActivityDescription;
                        }
                        else if (detail.ActivityHeader == BusinessResource.GETTINGAROUND)
                        {
                            locationDetail.GettingAround = detail.ActivityDescription;
                        }
                        else if (detail.ActivityHeader == BusinessResource.MUSTDRINK)
                        {
                            locationDetail.MustDrink = detail.ActivityDescription;
                        }
                        else if (detail.ActivityHeader == BusinessResource.MUSTEAT)
                        {
                            locationDetail.MustEat = detail.ActivityDescription;
                        }
                    }
                    locationDetail.ImageURL = selectedLocation.LocationImage;
                    result.Add(locationDetail);
                }
                else
                {
                    LocationDetailsDataContract locationDetail = new LocationDetailsDataContract() { LocationKey = locationKey, LocationName = selectedLocation.LocationName };
                    locationDetail.LatLong = selectedLocation.LatLng;
                    locationDetail.ImageURL = selectedLocation.LocationImage;
                    result.Add(locationDetail);
                }

                return result;
            });
        }