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); } }); }
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); } } }); }