public ActionResult AddComment(FormCollection formCollection) { int shopId = int.Parse(formCollection.Get("ShopId")); string star = formCollection.Get("CommentStar"); string payMoney = formCollection.Get("PayMoney"); string deliveryTime = formCollection.Get("DeliveryTime"); string content = formCollection.Get("CommentContent"); string requestUrl = formCollection.Get("RequestUrl"); UserModel userModel = new UserModel(); ShopModel shopModel = new ShopModel(); UserInfo userInfo = userModel.GetUserInfo(User.Identity.Name); ShopComment shopComment = new ShopComment(); shopComment.ShopId = shopId; shopComment.UserId = userInfo.Id; shopComment.Stars = String.IsNullOrWhiteSpace(star) ? (short)0 : short.Parse(star); shopComment.PayMoney = String.IsNullOrWhiteSpace(payMoney) ? (short)0 : short.Parse(payMoney); shopComment.DeliveryTime = String.IsNullOrWhiteSpace(deliveryTime) ? (short)0 : short.Parse(deliveryTime); shopComment.Comment = content; shopComment.CreateTime = DateTime.Now; shopModel.Add(shopComment); short shopAvgStars = (short)Math.Round(shopModel.GetShopComments(shopComment.ShopId).Average(r => r.Stars)); short shopAvgPayMoney = (short)Math.Round(shopModel.GetShopComments(shopComment.ShopId).Average(r => r.PayMoney)); short shopAvgDeliveryTime = (short)Math.Round(shopModel.GetShopComments(shopComment.ShopId).Average(r => r.DeliveryTime)); ShopRankingAttribute shopRankingAttr = shopModel.GetShopRankingAttribute(shopId); shopRankingAttr.Stars = shopAvgStars; shopRankingAttr.AveragePayMoney = shopAvgPayMoney; shopRankingAttr.DeliveryTime = shopAvgDeliveryTime; shopModel.Save(); Shop shopInfo = shopModel.GetShop(shopId); userModel.AddUserPoint(userInfo.Id, "对店铺 <a href=\"/shop/detail/" + shopId + "\">" + shopInfo.Name + "</a> 发表评论", 2); userModel.AddUserMessage(userInfo.Id, "积分动态", "您因对店铺 <a href=\"/shop/detail/" + shopId + "\">" + shopInfo.Name + "</a>进行了评论而获得了" + 2 + "点积分。"); return Redirect(requestUrl); }
public ActionResult CheckOut() { HttpCookie orderCookie = Request.Cookies.Get("u_order"); var jser = new System.Web.Script.Serialization.JavaScriptSerializer(); Order order = jser.Deserialize<Order>(HttpUtility.UrlDecode(orderCookie.Value)); List<string> takeoutTimes = new List<string>(); DateTime timeStart = DateTime.Parse(DateTime.Now.ToString("HH:mm")); int minuteNow = timeStart.Minute; if(minuteNow < 15) timeStart = timeStart.AddMinutes(15 - minuteNow); else if(minuteNow < 30) timeStart = timeStart.AddMinutes(30 - minuteNow); else if(minuteNow < 45) timeStart = timeStart.AddMinutes(45 - minuteNow); else timeStart = timeStart.AddMinutes(60 - minuteNow); ShopModel shopModel = new ShopModel(); Shop shopInfo = shopModel.GetShop(order.ShopId); if(TimeSpan.Compare(shopInfo.OfficeTimeBegin, timeStart.TimeOfDay) > 0) timeStart = DateTime.Parse(shopInfo.OfficeTimeBegin.ToString("HH:00")); while(timeStart.TimeOfDay <= shopInfo.OfficeTimeEnd && timeStart.Day <= DateTime.Now.Day) { takeoutTimes.Add(timeStart.ToString("HH:mm")); timeStart = timeStart.AddMinutes(15); } ViewBag.TakeoutTime = takeoutTimes; return View(order); }
public int ToggleShopHidden(int shopId) { bool hidden = false; try { ShopModel shopModel = new ShopModel(); Shop shop = shopModel.GetShop(shopId); hidden = shop.Hidden = shop.Hidden ? false : true; shopModel.Save(); } catch { return 0; } return hidden ? 1 : 0; }
public ActionResult Edit(string shopData) { UserModel userModel = new UserModel(); UserInfo userInfo = userModel.GetUserInfo(User.Identity.Name); ShopModel shopModel = new ShopModel(); var jser = new System.Web.Script.Serialization.JavaScriptSerializer(); ShopEditorObject shopDataObj = jser.Deserialize<ShopEditorObject>(shopData); ShopWithSAObject newShopInfo = shopDataObj.ShopBaseInfo; int shopId = newShopInfo.Id; Shop shopInfo = shopModel.GetShop(shopId); if(userInfo.UserGradeCategory.GradeLevel != 9 && userInfo.Id != shopInfo.CreateBy) return Redirect("/"); shopInfo.Name = newShopInfo.Name; shopInfo.Address = newShopInfo.Address; shopInfo.PhoneNumber = newShopInfo.PhoneNumber; shopInfo.CategoryId = newShopInfo.CategoryId; shopInfo.OfficeTimeBegin = newShopInfo.OfficeTimeBegin; shopInfo.OfficeTimeEnd = newShopInfo.OfficeTimeEnd; shopInfo.UpSendPrice = newShopInfo.UpSendPrice; shopInfo.Remark = newShopInfo.Remark; shopInfo.Latitude = newShopInfo.Latitude; shopInfo.Longitude = newShopInfo.Longitude; shopInfo.LastModifyAt = DateTime.Now; shopInfo.LastModifyBy = userInfo.Id; if (!String.IsNullOrWhiteSpace(newShopInfo.Logo)) { string sourcePath = Server.MapPath(newShopInfo.Logo); string fileName = Path.GetFileName(sourcePath); if (!System.IO.File.Exists(Server.MapPath("~/Contents/ShopImages/") + fileName)) System.IO.File.Move(sourcePath, Server.MapPath("~/Contents/ShopImages/") + fileName); newShopInfo.Logo = fileName; } else newShopInfo.Logo = new Random().Next(1, 7) + ".jpg"; shopInfo.Logo = newShopInfo.Logo; shopModel.Save(); ShopModifyLog editLog = new ShopModifyLog(); editLog.ShopId = shopId; editLog.ModifyBy = userInfo.Id; editLog.ModifyAt = DateTime.Now; shopModel.Add(editLog); shopModel.DeleteShopServiceAreas(shopId); if (newShopInfo.ServiceAreas != null) { foreach (int saItem in newShopInfo.ServiceAreas) { ShopServiceArea shopServiceArea = new ShopServiceArea(); shopServiceArea.ShopId = shopId; shopServiceArea.AreaId = saItem; shopModel.AddWithoutSave(shopServiceArea); } shopModel.Save(); } shopModel.DeleteDisheCategories(shopId); shopModel.DeleteDishes(shopId); List<DisheWithCategoryDetailObject> disheWithCats = shopDataObj.DisheWithCategoryDetail; foreach (DisheWithCategoryDetailObject dwcItem in disheWithCats) { ShopDisheCategory disheCategory = new ShopDisheCategory(); disheCategory.ShopId = shopId; disheCategory.Value = dwcItem.CategoryName; shopModel.Add(disheCategory); foreach (ShopDishe disheItem in dwcItem.Dishes) { ShopDishe dishe = disheItem; dishe.ShopId = shopId; dishe.CategoryId = disheCategory.Id; shopModel.AddWithoutSave(dishe); } shopModel.Save(); } return Json(new { status = 1, url = "/shop/detail/" + shopId }, JsonRequestBehavior.AllowGet); }
public ActionResult Edit(int id) { ShopModel shopModel = new ShopModel(); Shop shopBaseInfo = shopModel.GetShop(id); UserModel userModel = new UserModel(); UserInfo userInfo = userModel.GetUserInfo(User.Identity.Name); if(userInfo.UserGradeCategory.GradeLevel != 9 && shopBaseInfo.CreateBy != userInfo.Id) return Redirect("/"); List<V_ShopDisheWithCategory> shopDisheWithCategory = shopModel.GetShopDishesWithCategory(id).OrderByDescending(r => r.DisheCategoryOrder).ToList(); var shopCategories = shopModel.GetShopCategories(); SelectList shopCategoryList = new SelectList(shopCategories, "Id", "Value"); List<SelectListItem> shopCategorySelectList = shopCategoryList.ToList(); for(int i = 0; i < shopCategorySelectList.Count; i++) if(shopCategorySelectList[i].Value == shopBaseInfo.CategoryId.ToString()) { shopCategorySelectList[i].Selected = true; break; } ViewBag.ShopCategorySelectList = shopCategorySelectList; BaseDataModel baseDataModel = new BaseDataModel(); var cityDistricts = baseDataModel.GetLocationsByParentId(214); ViewBag.CityDistrictSelectList = (new SelectList(cityDistricts, "Id", "Value")).ToList(); List<ServiceArea> shopServiceAraes = shopModel.GetShopServiceAreas(id).ToList() .Select(r => new ServiceArea() { Id = r.AreaId, ParentId = r.ParentId, Value = r.ServiceArea, AreaType = r.AreaType }).ToList(); ViewBag.ServiceAreaSelectList = shopServiceAraes; ViewBag.ShopDisheCategoryList = shopDisheWithCategory.GroupBy(r => new { r.CategoryId, r.CategoryValue }) .Select(r => new SelectListItem() { Value = r.Key.CategoryId.ToString(), Text = r.Key.CategoryValue }).ToList(); ViewBag.ShopLogo = Url.Content(shopImagePath + shopBaseInfo.Logo); ViewBag.OffsetTime = offsetTime; return View(new ShopDetailEditorModel(shopBaseInfo, shopDisheWithCategory)); }