public HttpResponseMessage AddToFavourite(FavouritePlaceVM _favouritePlaceVM) { if (IsTokenAuthenticated()) { try { _favouritePlaceVM.UserID = _userId; _favouritePlaceVM = _businessBLL.AddToFavourite(_favouritePlaceVM); if (_favouritePlaceVM != null) { _strJSONContent.Append("{"); _strJSONContent.Append("\"status\":\"Success\","); _strJSONContent.Append("\"isFavourite\":\"" + _favouritePlaceVM.IsFavourite + "\""); _strJSONContent.Append("}"); } else { _strJSONContent.Append("{\"status\":\"Failed\"}"); } } catch (Exception ex) { _Message = ex.Message; _strJSONContent.Append("{\"status\":\"Failed\"}"); } return(Common.ResponseOutput(_strJSONContent)); } else { return(Common.ResponseOutput(_strJSONContent)); } }
/// <summary> /// AddToFavourite /// </summary> /// <param name="_businessVM"></param> /// <returns></returns> public FavouritePlaceVM AddToFavourite(FavouritePlaceVM _favouritePlaceVM) { FavouritePlace _favouritePlace = new FavouritePlace { UserID = _favouritePlaceVM.UserID }; if (string.IsNullOrEmpty(_favouritePlaceVM.PlaceID)) { _favouritePlace.BusinessID = _favouritePlaceVM.BusinessID; _favouritePlace.PlaceID = null; } else { _favouritePlace.BusinessID = null; _favouritePlace.PlaceID = _favouritePlaceVM.PlaceID; } _favouritePlace = _objBusinessDAL.AddToFavourite(_favouritePlace, _favouritePlaceVM.IsFavourite); if (_favouritePlace != null) { _favouritePlaceVM.FavouritePlaceID = _favouritePlace.FavouritePlaceID; return(_favouritePlaceVM); } else { return(null); } }
/// <summary> /// AddToFavourite /// </summary> /// <param name="_businessVM"></param> /// <returns></returns> public FavouritePlaceVM AddToFavourite(FavouritePlaceVM _favouritePlaceVM) { FavouritePlace _favouritePlace = new FavouritePlace { UserID = _favouritePlaceVM.UserID }; _favouritePlace = _objBusinessDAL.AddToFavourite(_favouritePlace, _favouritePlaceVM.BusinessID, _favouritePlaceVM.IsFavourite); if (_favouritePlace != null) { _favouritePlaceVM.FavouritePlaceID = _favouritePlace.FavouritePlaceID; _favouritePlaceVM.BusinessID = _favouritePlace.BusinessID; /// need to check... return(_favouritePlaceVM); } else { return(null); } }
/// <summary> /// Get Favourite Places /// </summary> /// <param name="_userID"></param> /// <returns></returns> public List <FavouritePlaceVM> GetFavouritePlaces(Int32 _userID) { List <FavouritePlace> _favouritePlaces = _objBusinessDAL.GetFavouritePlaces(_userID); if (_favouritePlaces.Count > 0) { List <FavouritePlaceVM> _listFavouritePlaceVM = new List <FavouritePlaceVM>(); foreach (FavouritePlace _favouritePlace in _favouritePlaces) { FavouritePlaceVM _favouritePlaceVM = MakeFavouritePlaceVM(_favouritePlace); _listFavouritePlaceVM.Add(_favouritePlaceVM); } return(_listFavouritePlaceVM); } else { return(null); } }
/// <summary> /// Business Place Details from Google API /// </summary> /// <param name="data"></param> /// <returns></returns> private FavouritePlaceVM FavouritePlaceDetailsFromAPI(JToken data, Int32 _userID) { FavouritePlaceVM _favouritePlaceVM = new FavouritePlaceVM(); BusinessVM _businessVM = BusinessPlaceDetails(data, _userID); _favouritePlaceVM.Latitude = _businessVM.Latitude; _favouritePlaceVM.Longitude = _businessVM.Longitude; _favouritePlaceVM.BusinessName = _businessVM.BusinessName; _favouritePlaceVM.Icon = _businessVM.Icon; _favouritePlaceVM.StartTime = _businessVM.StartTime; _favouritePlaceVM.Images = _businessVM.Images; _favouritePlaceVM.PlaceID = _businessVM.PlaceID; _favouritePlaceVM.Reviews = _businessVM.Reviews; _favouritePlaceVM.ContactNo = _businessVM.ContactNo; _favouritePlaceVM.AverageRating = _businessVM.AverageRating; _favouritePlaceVM.Location = _businessVM.Location; _favouritePlaceVM.IsFavourite = Convert.ToBoolean(_businessVM.IsFavouritePlace); _favouritePlaceVM.IsFavouritePlace = _businessVM.IsFavouritePlace; return(_favouritePlaceVM); }
/// <summary> /// Get Favourite Places /// </summary> /// <param name="_userID"></param> /// <returns></returns> public List <FavouritePlaceVM> GetFavouritePlaces(Int32 _userID) { List <FavouritePlace> _favouritePlaces = _objBusinessDAL.GetFavouritePlaces(_userID); if (_favouritePlaces.Count > 0) { List <FavouritePlaceVM> _listFavouritePlaceVM = new List <FavouritePlaceVM>(); foreach (FavouritePlace _favouritePlace in _favouritePlaces) { FavouritePlaceVM _favouritePlaceVM = null; if (_favouritePlace.BusinessID != null) { _favouritePlaceVM = MakeFavouritePlaceVM(_favouritePlace); } else { String googlePlaceURL = ConfigurationManager.AppSettings["GooglePlaceAPIReviewURL"] + _favouritePlace.PlaceID + "&key=" + ConfigurationManager.AppSettings["GooglePlaceAPIKey"]; using (var client = new WebClient()) using (var stream = client.OpenRead(googlePlaceURL)) using (var reader = new StreamReader(stream)) using (var jsonData = new JsonTextReader(reader)) { _favouritePlaceVM = FavouritePlaceDetailsFromAPI(JObject.Load(jsonData)["result"], _userID); } } _listFavouritePlaceVM.Add(_favouritePlaceVM); } return(_listFavouritePlaceVM.OrderBy(b => b.Latitude).ThenBy(b => b.Longitude).ToList()); } else { return(null); } }
/// <summary> /// Convert FavouritePlace to FavouritePlace View Model Object /// </summary> /// <param name="item"></param> /// <returns></returns> private FavouritePlaceVM MakeFavouritePlaceVM(FavouritePlace item) { _objFavouritePlaceVM = new FavouritePlaceVM() { FavouritePlaceID = item.FavouritePlaceID, UserID = item.Business.UserID, BusinessID = item.BusinessID, BusinessName = item.Business.BusinessName, Latitude = item.Business.Latitude, Longitude = item.Business.Longitude, Location = item.Business.Location, ContactNo = item.Business.ContactNo, Website = item.Business.Website, StartTime = item.Business.StartTime, EndTime = item.Business.EndTime, Flavours = item.Business.Flavours, IsFavouritePlace = 1 }; // Add Business Rating Double _averageRating = 0; if (item.Business.BusinessRatings.Count > 0) { List <BusinessRatingVM> lstBusinessRating = new List <BusinessRatingVM>(); foreach (var rating in item.Business.BusinessRatings) { BusinessRatingVM _businessRatingVM = new BusinessRatingVM { BusinessRatingID = rating.BusinessRatingID, BusinessID = rating.BusinessID, Rating = rating.Rating.ToString(), Review = rating.Review, UserID = rating.UserID, UserName = rating.User.UserName, ProfileImageUrl = rating.User.ProfileImageUrl }; lstBusinessRating.Add(_businessRatingVM); _averageRating = _averageRating + rating.Rating; } _objFavouritePlaceVM.Reviews = new JavaScriptSerializer().Serialize(lstBusinessRating); _averageRating = _averageRating / item.Business.BusinessRatings.Count; } else { _objFavouritePlaceVM.Reviews = "[]"; } _objFavouritePlaceVM.AverageRating = _averageRating; // Add Business Images if (item.Business.BusinessImages.Count > 0) { List <BusinessImageVM> lstBusinessImage = new List <BusinessImageVM>(); string tempDocUrl = ConfigurationManager.AppSettings["APIURL"]; foreach (var image in item.Business.BusinessImages) { BusinessImageVM _businessImageVM = new BusinessImageVM { BusinessImageID = image.BusinessImageID, BusinessID = image.BusinessID, ImageName = image.ImageName, ImageType = image.ImageType, ImagePath = tempDocUrl + "/Uploads/Business/" + image.BusinessID + "/" + image.ImageName }; lstBusinessImage.Add(_businessImageVM); } _objFavouritePlaceVM.Images = new JavaScriptSerializer().Serialize(lstBusinessImage); } else { _objFavouritePlaceVM.Images = "[]"; } return(_objFavouritePlaceVM); }
public Business_BLL() { _objBusinessDAL = new Business_DAL(); _objBusinessVM = null; _objFavouritePlaceVM = null; }