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 Create(string shopData) { ShopModel shopModel = new ShopModel(); var jser = new System.Web.Script.Serialization.JavaScriptSerializer(); ShopEditorObject shopDataObj = jser.Deserialize<ShopEditorObject>(shopData); ShopWithSAObject newShopInfo = shopDataObj.ShopBaseInfo; UserModel userModel = new UserModel(); UserInfo userInfo = userModel.GetUserInfo(User.Identity.Name); Shop shopInfo = new Shop(); 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.CreateTime = DateTime.Now; shopInfo.LastModifyAt = shopInfo.CreateTime; shopInfo.CreateBy = userInfo.Id; shopInfo.LastModifyBy = shopInfo.CreateBy; shopInfo.Hidden = true; 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.Add(shopInfo); shopModel.Save(); int shopId = shopInfo.Id; 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(); } try { shopModel.DeleteDisheCategories(shopId); shopModel.DeleteDishes(shopId); double totalPrice = 0; 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); totalPrice += dishe.Price; } shopModel.Save(); } ShopRankingAttribute rankingAttribute = new ShopRankingAttribute(); rankingAttribute.ShopId = shopId; rankingAttribute.Stars = 0; rankingAttribute.AveragePayMoney = (short)(totalPrice / disheWithCats.Select(r => r.Dishes.Count).Sum(r => r)); rankingAttribute.DeliveryTime = 30; shopModel.Add(rankingAttribute); } catch(Exception ex) { return Json(new { status = 0, data = ex.InnerException }, JsonRequestBehavior.AllowGet); } return Json(new { status = 1, url = "/shop/detail/" + shopId }, JsonRequestBehavior.AllowGet); }
public void AddWithoutSave(ShopDisheCategory shopDisheCategory) { db.ShopDisheCategory.AddObject(shopDisheCategory); }
public void Add(ShopDisheCategory disheCategory) { db.ShopDisheCategory.AddObject(disheCategory); Save(); }
/// <summary> /// 用于向 ShopDisheCategory EntitySet 添加新对象的方法,已弃用。请考虑改用关联的 ObjectSet<T> 属性的 .Add 方法。 /// </summary> public void AddToShopDisheCategory(ShopDisheCategory shopDisheCategory) { base.AddObject("ShopDisheCategory", shopDisheCategory); }
/// <summary> /// 创建新的 ShopDisheCategory 对象。 /// </summary> /// <param name="id">Id 属性的初始值。</param> /// <param name="orderIndex">OrderIndex 属性的初始值。</param> public static ShopDisheCategory CreateShopDisheCategory(global::System.Int32 id, global::System.Int16 orderIndex) { ShopDisheCategory shopDisheCategory = new ShopDisheCategory(); shopDisheCategory.Id = id; shopDisheCategory.OrderIndex = orderIndex; return shopDisheCategory; }