public IHttpActionResult Post(PlaceViewModel vm) { var userId = User.Identity.GetUserId(); _repo.LikePlaceSave(vm, userId); return Ok("It worked"); }
public void LikePlaceSave(PlaceViewModel place, string userId) { var pla = new Place(); var location = _db.Locations; if(place.ImageUrl != null && place.Tier != null && place.Hours != null) { pla = new Place { Name = place.Name, Rating = place.Rating, IsOpen = place.Hours.IsOpen, Status = place.Hours.Status, Phone = place.Phone, Address = place.Address, City = place.City, State = place.State, Zip = place.Zip, CrossStreet = place.CrossStreet, FullAddress = place.FullAddress, Distance = place.Distance, Latitude = place.Latitude, Longitude = place.Longitude, WebsiteUrl = place.WebsiteUrl, Category = place.Category, Prefix = place.ImageUrl.Items.FirstOrDefault().Prefix, Suffix = place.ImageUrl.Items.FirstOrDefault().Suffix, Height = place.ImageUrl.Items.FirstOrDefault().Height, Width = place.ImageUrl.Items.FirstOrDefault().Width, Tier = place.Tier.Tier, IsLiked = place.IsLiked, IsDisliked = place.IsDisliked, CanonicalName = place.CanonicalName, LocationId = location.Where(l => l.IsActive == true && l.UserId == userId).FirstOrDefault().LocationId }; } else if(place.ImageUrl != null && place.Tier != null) { pla = new Place { Name = place.Name, Rating = place.Rating, IsOpen = false, Status = "Call to Check", Phone = place.Phone, Address = place.Address, City = place.City, State = place.State, Zip = place.Zip, CrossStreet = place.CrossStreet, FullAddress = place.FullAddress, Distance = place.Distance, Latitude = place.Latitude, Longitude = place.Longitude, WebsiteUrl = place.WebsiteUrl, Category = place.Category, Prefix = place.ImageUrl.Items.FirstOrDefault().Prefix, Suffix = place.ImageUrl.Items.FirstOrDefault().Suffix, Height = place.ImageUrl.Items.FirstOrDefault().Height, Width = place.ImageUrl.Items.FirstOrDefault().Width, Tier = place.Tier.Tier, IsLiked = place.IsLiked, IsDisliked = place.IsDisliked, CanonicalName = place.CanonicalName, LocationId = location.Where(l => l.IsActive == true && l.UserId == userId).FirstOrDefault().LocationId }; } else if(place.ImageUrl != null) { pla = new Place { Name = place.Name, Rating = place.Rating, IsOpen = false, Status = "Call to Check", Phone = place.Phone, Address = place.Address, City = place.City, State = place.State, Zip = place.Zip, CrossStreet = place.CrossStreet, FullAddress = place.FullAddress, Distance = place.Distance, Latitude = place.Latitude, Longitude = place.Longitude, WebsiteUrl = place.WebsiteUrl, Category = place.Category, Prefix = place.ImageUrl.Items.FirstOrDefault().Prefix, Suffix = place.ImageUrl.Items.FirstOrDefault().Suffix, Height = place.ImageUrl.Items.FirstOrDefault().Height, Width = place.ImageUrl.Items.FirstOrDefault().Width, Tier = 1, IsLiked = place.IsLiked, IsDisliked = place.IsDisliked, CanonicalName = place.CanonicalName, LocationId = location.Where(l => l.IsActive == true && l.UserId == userId).FirstOrDefault().LocationId }; } else { pla = new Place { Name = place.Name, Rating = place.Rating, IsOpen = false, Status = "Call to Check", Phone = place.Phone, Address = place.Address, City = place.City, State = place.State, Zip = place.Zip, CrossStreet = place.CrossStreet, FullAddress = place.FullAddress, Distance = place.Distance, Latitude = place.Latitude, Longitude = place.Longitude, WebsiteUrl = place.WebsiteUrl, Category = place.Category, Prefix = "", Suffix = "", Height = 0, Width = 0, Tier = 1, IsLiked = place.IsLiked, IsDisliked = place.IsDisliked, CanonicalName = place.CanonicalName, LocationId = location.Where(l => l.IsActive == true && l.UserId == userId).FirstOrDefault().LocationId }; } _db.Places.Add(pla); _db.SaveChanges(); }