Beispiel #1
0
        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));
            }
        }
Beispiel #2
0
        /// <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);
            }
        }
Beispiel #3
0
        /// <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);
            }
        }
Beispiel #4
0
        /// <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);
            }
        }
Beispiel #5
0
        /// <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);
        }
Beispiel #6
0
        /// <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);
            }
        }
Beispiel #7
0
        /// <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);
        }
Beispiel #8
0
 public Business_BLL()
 {
     _objBusinessDAL      = new Business_DAL();
     _objBusinessVM       = null;
     _objFavouritePlaceVM = null;
 }