public HttpResponseMessage GetNearByPlaceByID(string id) { try { if (IsTokenAuthenticated()) { String googlePlaceURL = Common.GooglePlaceAPIReviewURL + id + "&key=" + Common.GooglePlaceAPIKey; BusinessVM _businessVM = new BusinessVM(); using (var client = new WebClient()) using (var stream = client.OpenRead(googlePlaceURL)) using (var reader = new StreamReader(stream)) using (var jsonData = new JsonTextReader(reader)) { _businessVM = _businessBLL.BusinessPlaceDetails(JObject.Load(jsonData)["result"], _userId); } if (_businessVM != null) { JSONSuccessResult(_businessVM); } else { _strJSONContent.Append("{\"message\":\"No Business record(s) exists.\"}"); } } } catch (Exception ex) { _strJSONContent.Append("{\"message\":\"No Business record(s) exists.\"}"); } return(Common.ResponseOutput(_strJSONContent)); }
/// <summary> /// Add New Business /// </summary> /// <param name="_businessVM"></param> /// <returns></returns> public BusinessVM AddNewBusiness(BusinessVM _businessVM) { Business _business = new Business { BusinessName = _businessVM.BusinessName, Latitude = _businessVM.Latitude, Longitude = _businessVM.Longitude, Location = _businessVM.Location, ContactNo = _businessVM.ContactNo, Website = _businessVM.Website, StartTime = _businessVM.StartTime, EndTime = _businessVM.EndTime, Flavours = _businessVM.Flavours, UserID = _businessVM.UserID, CreatedDate = DateTime.Now }; _business = _objBusinessDAL.AddNewBusiness(_business); if (_business != null) { _businessVM.BusinessID = _business.BusinessID; return(_businessVM); } else { return(null); } }
public HttpResponseMessage GetBusinessDetails(int id) { if (!IsTokenAuthenticated()) { return(ResponseOutput()); } else { BusinessVM _businessVM = _businessBLL.GetBusinessDetails(id); if (_businessVM != null) { String _JSONData = new JavaScriptSerializer().Serialize(_businessVM); String _Message = "\"status\":\"Success\","; _success = true; _strJSONContent = Business_BLL.GenerateReturnJSONData(_JSONData, _Message); } else { _strJSONContent.Append("{\"status\":\"Failed\"}"); _strJSONContent.Append("{\"message\":\"User does not exists.\"}"); } return(ResponseOutput()); } }
public IActionResult EditBusiness(Business biz) { if (ModelState.IsValid) { repository.SaveBiz(biz); TempData["message"] = $"Business {biz.Title} has been saved successfully!"; string userId = biz.AppUser_Id; BusinessVM bizVM = new BusinessVM { Businesses = repository.Businesses .Where(r => r.AppUser_Id == biz.AppUser_Id).Take(PageSize), PagingInfo = new PagingInfo { CurrentPage = 1, ItemsPerPage = PageSize, TotalItems = repository.Businesses .Count(c => c.AppUser_Id == biz.AppUser_Id) }, AppUser = userManager.Users .FirstOrDefault(u => u.Id == biz.AppUser_Id) }; return(View("Business", bizVM)); } else { return(View(biz)); } }
public HttpResponseMessage AddBusinessRatings(BusinessRatingVM _businessRatingVM) { if (IsTokenAuthenticated()) { try { _businessRatingVM.UserID = _userId; _businessRatingVM.Rating = _businessRatingVM.Rating.Replace("\"", ""); _businessRatingVM.Rating = _businessRatingVM.Rating != "" ? _businessRatingVM.Rating : "0"; BusinessVM _businessVM = _businessBLL.AddBusinessRating(_businessRatingVM); if (_businessVM != null) { JSONSuccessResult(_businessVM); } else { _strJSONContent.Append("{\"message\":\"User does not exists.\"}"); } return(Common.ResponseOutput(_strJSONContent)); } catch (Exception ex) { _Message = ex.Message; _strJSONContent.Append("{\"status\":\"Failed\"}"); } return(Common.ResponseOutput(_strJSONContent)); } else { return(Common.ResponseOutput(_strJSONContent)); } }
IHttpActionResult GetBusinessses() { List <BusinessVM> businesses = new List <BusinessVM>(); List <Structure> structures = db.Games.FirstOrDefault().Structures.ToList(); if (structures == null) { return(NotFound()); } for (int i = 0; i < structures.Count(); i++) { if (!structures[i].IsResidence) { BusinessVM vm = new BusinessVM(); vm.id = structures[i].ID; vm.capacity = structures[i].SupportedPopulation; vm.purchased = true; vm.type = "business"; vm.cost = structures[i].InitialCost; vm.floor = structures[i].Floor; vm.income = structures[i].Income; vm.upKeep = structures[i].UpKeep; businesses.Add(vm); } } return(Ok(new EmberWrapper { businesses = businesses })); }
public IActionResult DeleteBusiness(int ID) { // find business in clientforms ..... // Business deleteRecord = repository.DeleteBiz(ID); if (deleteRecord != null) { TempData["message"] = $" Business {deleteRecord.Title} has been deleted!"; string userId = deleteRecord.AppUser_Id; BusinessVM bizVM = new BusinessVM { Businesses = repository.Businesses .Where(r => r.AppUser_Id == deleteRecord.AppUser_Id).Take(PageSize), PagingInfo = new PagingInfo { CurrentPage = 1, ItemsPerPage = PageSize, TotalItems = repository.Businesses .Count(c => c.AppUser_Id == deleteRecord.AppUser_Id) }, AppUser = userManager.Users .FirstOrDefault(u => u.Id == deleteRecord.AppUser_Id) }; return(View("Business", bizVM)); } else { return(RedirectToAction("Business")); } }
public HttpResponseMessage GetNearByBusinesses(String latitude, String longitude, int radius) { if (IsTokenAuthenticated()) { String googlePlaceURL = Common.GooglePlaceAPIURL + latitude + "," + longitude + "&keyword=shisha,hookah&radius=" + radius + "&key=" + Common.GooglePlaceAPIKey; StringBuilder strResponse = new StringBuilder(); List <BusinessVM> _businessVMs = new List <BusinessVM>(); using (var client = new WebClient()) using (var stream = client.OpenRead(googlePlaceURL)) using (var reader = new StreamReader(stream)) using (var jsonData = new JsonTextReader(reader)) { var jObject = JObject.Load(jsonData); foreach (var data in jObject["results"]) { BusinessVM _businessVM = _businessBLL.BusinessPlaceDetails(data, _userId); Double distance = _businessBLL.GetDistance(Convert.ToDouble(latitude), Convert.ToDouble(longitude), Convert.ToDouble(_businessVM.Latitude), Convert.ToDouble(_businessVM.Longitude)); _businessVM.Distance = distance.ToString(); if (_businessVM != null) { _businessVMs.Add(_businessVM); } } } List <BusinessVM> _businessNearByVMs = _businessBLL.GetAllNearByBusinesses(latitude, longitude, radius / 1000); if (_businessNearByVMs != null) { _businessVMs.AddRange(_businessNearByVMs); } if (_businessVMs != null) { JSONSuccessResult(_businessVMs.OrderBy(b => b.Distance).ToList()); } else { _strJSONContent.Append("{\"message\":\"No Business record(s) exists.\"}"); } return(Common.ResponseOutput(_strJSONContent)); } else { return(Common.ResponseOutput(_strJSONContent)); } }
public ActionResult Create(BusinessVM businessVM, HttpPostedFileBase file) { string path = Server.MapPath("~/Images/" + file.FileName); file.SaveAs(path); var email = ""; var user = User.IsInRole("Admin"); if (user) { email = businessVM.email; } else { email = User.Identity.Name; } try { Business business = new Business() { name = businessVM.name, abn = businessVM.abn, BusinesTtype = businessVM.businesTtype, phone = businessVM.phone, mobile = businessVM.mobile, email = email, city = businessVM.city, streetNumber = businessVM.streetNumber, foodCourt = businessVM.foodCourt, building = businessVM.building, photo = "~/Images/" + file.FileName }; businessManager.Create(business); return(RedirectToAction("Index", "Home")); } catch { return(View()); } }
/// <summary> /// Promote My Business /// </summary> /// <param name="_businessVM"></param> /// <returns></returns> public BusinessVM PromoteMyBusiness(BusinessVM _businessVM) { Business _business = new Business { BusinessID = _businessVM.BusinessID, UserID = _businessVM.UserID, PremiumImageContent = _businessVM.PremiumImageContent }; _business = _objBusinessDAL.PromoteMyBusiness(_business); if (_business != null) { return(_businessVM); } else { return(null); } }
/// <summary> /// Get All Businesses /// </summary> /// <returns></returns> public List <BusinessVM> GetAllBusinesses() { List <Business> _businesses = _objBusinessDAL.GetAllBusinesses(); if (_businesses.Count > 0) { List <BusinessVM> _listBusinessVM = new List <BusinessVM>(); foreach (Business _business in _businesses) { BusinessVM _businessVM = MakeBusinessVM(_business); _listBusinessVM.Add(_businessVM); } return(_listBusinessVM); } else { return(null); } }
public HttpResponseMessage GetPromotedBusinessDetails(int id) { if (IsTokenAuthenticated()) { BusinessVM _businessVM = _businessBLL.GetPromotedBusinessDetails(id); if (_businessVM != null) { JSONSuccessResult(_businessVM); } else { _strJSONContent.Append("{\"message\":\"Business does not exists.\"}"); } return(Common.ResponseOutput(_strJSONContent)); } else { return(Common.ResponseOutput(_strJSONContent)); } }
/// <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 All Near By Businesses /// </summary> /// <returns></returns> public List <BusinessVM> GetAllNearByBusinesses(String latitude, String longitude, int _radius) { List <Business> _businesses = _objBusinessDAL.GetAllNearByBusinesses(latitude, longitude, _radius); if (_businesses.Count > 0) { List <BusinessVM> _listBusinessVM = new List <BusinessVM>(); foreach (Business _business in _businesses) { BusinessVM _businessVM = MakeBusinessVM(_business, false); Double distance = GetDistance(Convert.ToDouble(latitude), Convert.ToDouble(longitude), Convert.ToDouble(_businessVM.Latitude), Convert.ToDouble(_businessVM.Longitude)); _businessVM.Distance = distance.ToString(); _listBusinessVM.Add(_businessVM); } return(_listBusinessVM); } else { return(null); } }
public async Task <HttpResponseMessage> AddNewBusiness() { if (IsTokenAuthenticated()) { try { string root = HttpContext.Current.Server.MapPath("~/App_Data"); //var provider = new MultipartFormDataStreamProvider(root); var provider = await Request.Content.ReadAsMultipartAsync <InMemMultiFDSProvider>(new InMemMultiFDSProvider()); //access form data BusinessVM _businessVM = new BusinessVM(); NameValueCollection formData = provider.FormData; if (formData["BusinessName"] != null) { _businessVM.BusinessName = formData["BusinessName"]; } if (formData["Latitude"] != null) { _businessVM.Latitude = formData["Latitude"]; } if (formData["Longitude"] != null) { _businessVM.Longitude = formData["Longitude"]; } if (formData["Location"] != null) { _businessVM.Location = formData["Location"]; } if (formData["ContactNo"] != null) { _businessVM.ContactNo = formData["ContactNo"]; } if (formData["Website"] != null) { _businessVM.Website = formData["Website"]; } if (formData["StartTime"] != null) { _businessVM.StartTime = formData["StartTime"]; } if (formData["EndTime"] != null) { _businessVM.EndTime = formData["EndTime"]; } if (formData["Flavours"] != null) { _businessVM.Flavours = formData["Flavours"]; } _businessVM.UserID = _userId; _businessVM = _businessBLL.AddNewBusiness(_businessVM); _businessVM.Reviews = "[]"; if (_businessVM != null) { if (provider.Files.Count > 0) { List <BusinessImageVM> lstBusinessImage = new List <BusinessImageVM>(); IList <HttpContent> files = provider.Files; foreach (HttpContent fileHttpContent in provider.Files) { var thisFileName = fileHttpContent.Headers.ContentDisposition.FileName.Trim('\"'); string filename = String.Empty; Stream input = await fileHttpContent.ReadAsStreamAsync(); string directoryName = String.Empty; string URL = String.Empty; string tempDocUrl = ConfigurationManager.AppSettings["APIURL"]; string fileExtension = thisFileName.Substring(thisFileName.LastIndexOf(".") + 1); var path = HttpRuntime.AppDomainAppPath; directoryName = Path.Combine(path, "Uploads\\" + UserTypes.Business + "\\" + _businessVM.BusinessID); filename = Path.Combine(directoryName, thisFileName); if (!Directory.Exists(directoryName)) { Directory.CreateDirectory(directoryName); } if (File.Exists(filename)) { File.Delete(filename); } using (Stream file = File.OpenWrite(filename)) { input.CopyTo(file); file.Close(); } BusinessImageVM _businessImageVM = new BusinessImageVM { BusinessID = _businessVM.BusinessID, ImageName = thisFileName, ImageType = fileExtension, IsPremiumImage = false }; _businessImageVM = _businessBLL.AddBusinessImages(_businessImageVM); _businessImageVM.ImagePath = tempDocUrl + "/Uploads/" + UserTypes.Business + "/" + _businessVM.BusinessID + "/" + thisFileName; // Add To List lstBusinessImage.Add(_businessImageVM); } _businessVM.Images = new JavaScriptSerializer().Serialize(lstBusinessImage); } else { _businessVM.Images = "[]"; } JSONSuccessResult(_businessVM); } 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> /// Convert Business to Business View Model Object /// </summary> /// <param name="item"></param> /// <returns></returns> private BusinessVM MakeBusinessVM(Business item) { _objBusinessVM = new BusinessVM() { BusinessID = item.BusinessID, BusinessName = item.BusinessName, Latitude = item.Latitude, Longitude = item.Longitude, Location = item.Location, ContactNo = item.ContactNo, Website = item.Website, StartTime = item.StartTime, EndTime = item.EndTime, Flavours = item.Flavours, UserID = item.UserID, IsFavouritePlace = item.FavouritePlaces.Where(f => (f.BusinessID == item.BusinessID && f.UserID == item.UserID)).Count() > 0 ? 1 : 0 }; // Add Business Rating Double _averageRating = 0; if (item.BusinessRatings.Count > 0) { List <BusinessRatingVM> lstBusinessRating = new List <BusinessRatingVM>(); foreach (var rating in item.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; } _objBusinessVM.Reviews = new JavaScriptSerializer().Serialize(lstBusinessRating); _averageRating = _averageRating / item.BusinessRatings.Count; } else { _objBusinessVM.Reviews = "[]"; } _objBusinessVM.AverageRating = _averageRating; // Add Business Images if (item.BusinessImages.Count > 0) { List <BusinessImageVM> lstBusinessImage = new List <BusinessImageVM>(); string tempDocUrl = ConfigurationManager.AppSettings["APIURL"]; foreach (var image in item.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); } _objBusinessVM.Images = new JavaScriptSerializer().Serialize(lstBusinessImage); } else { _objBusinessVM.Images = "[]"; } return(_objBusinessVM); }
public Business_BLL() { _objBusinessDAL = new Business_DAL(); _objBusinessVM = null; _objFavouritePlaceVM = null; }
/// <summary> /// Business Place Details from Google API /// </summary> /// <param name="data"></param> /// <returns></returns> public BusinessVM BusinessPlaceDetails(JToken data, Int32 _userID) { BusinessVM _businessVM = new BusinessVM(); if (data["geometry"]["location"]["lat"] != null) { _businessVM.Latitude = data["geometry"]["location"]["lat"].ToString(); } if (data["geometry"]["location"]["lng"] != null) { _businessVM.Longitude = data["geometry"]["location"]["lng"].ToString(); } if (data["name"] != null) { _businessVM.BusinessName = data["name"].ToString().Replace("\"", "'"); } if (data["icon"] != null) { _businessVM.Icon = data["icon"].ToString().Replace("\"", "'"); } if (data["photos"] != null) { List <BusinessImageVM> _businessImageVMs = new List <BusinessImageVM>(); foreach (var images in data["photos"]) { _businessImageVMs.Add(new BusinessImageVM { ImagePath = images["photo_reference"].ToString() }); } _businessVM.Images = new JavaScriptSerializer().Serialize(_businessImageVMs); } else { _businessVM.Images = "[]"; } if (data["place_id"] != null) { _businessVM.PlaceID = data["place_id"].ToString(); String _contactNumber = ""; String _startTime = ""; String _endTime = ""; _businessVM.Reviews = GetReviewsByPlaceID(data["place_id"].ToString(), ref _contactNumber, ref _startTime, ref _endTime); _businessVM.ContactNo = _contactNumber; _businessVM.StartTime = _startTime; _businessVM.EndTime = _endTime; } //if (data["rating"] != null) // _businessVM.AverageRating = Convert.ToDouble(data["rating"].ToString()); _businessVM.AverageRating = Math.Round(_averageRating, 2); if (data["vicinity"] != null) { _businessVM.Location = data["vicinity"].ToString().Replace("\"", "'"); } _businessVM.IsFavouritePlace = _objBusinessDAL.IsPlaceFavouriteByPlaceID(_businessVM.PlaceID, _userID); return(_businessVM); }
public async Task <HttpResponseMessage> PromoteMyBusiness() { if (IsTokenAuthenticated()) { try { var provider = await Request.Content.ReadAsMultipartAsync <InMemMultiFDSProvider>(new InMemMultiFDSProvider()); //access form data BusinessVM _businessVM = new BusinessVM(); NameValueCollection formData = provider.FormData; if (formData["BusinessID"] != null) { _businessVM.BusinessID = Convert.ToInt32(formData["BusinessID"]); } if (formData["PremiumImageContent"] != null) { _businessVM.PremiumImageContent = formData["PremiumImageContent"]; } _businessVM.UserID = _userId; _businessVM = _businessBLL.PromoteMyBusiness(_businessVM); if (_businessVM != null) { if (provider.Files.Count > 0) { List <BusinessImageVM> lstBusinessImage = new List <BusinessImageVM>(); IList <HttpContent> files = provider.Files; foreach (HttpContent fileHttpContent in files) { var thisFileName = fileHttpContent.Headers.ContentDisposition.FileName.Trim('\"'); string filename = String.Empty; Stream input = await fileHttpContent.ReadAsStreamAsync(); string directoryName = String.Empty; string URL = String.Empty; string tempDocUrl = ConfigurationManager.AppSettings["APIURL"]; string fileExtension = thisFileName.Substring(thisFileName.LastIndexOf(".") + 1); var path = HttpRuntime.AppDomainAppPath; directoryName = Path.Combine(path, "Uploads\\" + UserTypes.Business + "\\" + _businessVM.BusinessID); filename = Path.Combine(directoryName, thisFileName); if (!Directory.Exists(directoryName)) { Directory.CreateDirectory(directoryName); } if (File.Exists(filename)) { File.Delete(filename); } using (Stream file = File.OpenWrite(filename)) { input.CopyTo(file); file.Close(); } BusinessImageVM _businessImageVM = new BusinessImageVM { BusinessID = _businessVM.BusinessID, ImageName = thisFileName, ImageType = fileExtension, IsPremiumImage = true }; _businessImageVM = _businessBLL.AddBusinessImages(_businessImageVM); } } _strJSONContent.Append("{\"status\":\"Success\"}"); ///* IOS push example */ //var path = HttpContext.Current.Server.MapPath("~/Certificates21Nov.p12"); ////IOSPush iosPush = new IOSPush(ApnsServerEnvironment.Production/*ApnsServerEnvironment.Sandbox in case of development*/, path, "Password of p12 file"); //IOSPush iosPush = new IOSPush(ApnsServerEnvironment.Production, path, "webastral99"); ////var json = "{\"ID\":\"121\",\"Name\":\"WebAstral\",\"notificationActions\":[{\"NotificationName\":\"Add to reminder\",\"NotificationActionEntityValues\":[{\"NotificationEntityName\":\"Title\",\"NotificationEntityValue\":\"Test\"},{\"NotificationEntityName\":\"DateTime\",\"NotificationEntityValue\":\"Pqr-28-2016 8:00:00\"}]},{\"NotificationName\":\"Add to calendar\",\"NotificationActionEntityValues\":[{\"NotificationEntityName\":\"Title\",\"NotificationEntityValue\":\"Title\"},{\"NotificationEntityName\":\"Location\",\"NotificationEntityValue\":\"Location\"},{\"NotificationEntityName\":\"All day\",\"NotificationEntityValue\":\"N\"},{\"NotificationEntityName\":\"Start DateTime\",\"NotificationEntityValue\":\"Oct-30-2016 8:00:00\"},{\"NotificationEntityName\":\"End DateTime\",\"NotificationEntityValue\":\"Oct-30-2016 17:00:00\"},{\"NotificationEntityName\":\"Alert\",\"NotificationEntityValue\":\"None\"},{\"NotificationEntityName\":\"Show As\",\"NotificationEntityValue\":\"None\"},{\"NotificationEntityName\":\"Note\",\"NotificationEntityValue\":\"Some notes here\"}]}]}"; //////Regular push notification: 4KB (4096 bytes) based on HTTP/2-based APNs provider API ////iosPush.SendWithJSon("0eff51dbe4cfa72ae23b2a99f8a57baf1c13c065b0f2d3ebd49056b7ce881547", "Test push send by WebAstral", json, new Action<Result>(x => ////{ //// Console.WriteLine(x.status); ////})); //iosPush.Send("0eff51dbe4cfa72ae23b2a99f8a57baf1c13c065b0f2d3ebd49056b7ce881547", "Test push send by WebAstral", "ID=121;Name=WebAstral"); } else { _strJSONContent.Append("{\"status\":\"Failed\"}"); } } catch (Exception ex) { _Message = ex.Message; _strJSONContent.Append("{\"status\":\"Failed\"}"); } return(Common.ResponseOutput(_strJSONContent)); } else { return(Common.ResponseOutput(_strJSONContent)); } }