public ActionResult Edit(string cartid, string token, int quantity = 0) { int response = 0; string message = ""; try { if (string.IsNullOrEmpty(cartid) || string.IsNullOrEmpty(token) || quantity == 0) { return(Json(new { response = Extensions.ErrorInfo.ParameterError, message = "参数错误" })); } var tc = new Cache.MemberTokenCache().Get(token); if (tc == null) { return(Json(new { response = Extensions.ErrorInfo.TokenError, message = "token验证失败请重新登录" })); } if (AuthIsOpen) { var dic = new SortedDictionary <string, string>(); dic.Add("timestamp", Request["timestamp"]); dic.Add("cartid", cartid); dic.Add("token", token); VerifyAuthorize(dic); } var model = new List <Models.ShoppingCartModels.result_model>(); var entity = new Entitys.Member_ShoppingCart() { Id = Common.ToolHelper.ConvertToLong(cartid), Quantity = quantity }; var list = new Provider.ShoppingCartProvider().Edit(entity); if (list > 0) { response = (int)Extensions.ErrorInfo.OK; message = "成功"; } else { response = (int)Extensions.ErrorInfo.UpError; message = "修改失败"; } } catch (Exception ex) { response = (int)Extensions.ErrorInfo.ServerError; message = "服务器内部错误"; Common.LogHelper.WriteLog(typeof(ShoppingCartController), ex); } return(Json(new { response = response, message = message })); }
public ActionResult TempCardOrder() { var param = Newtonsoft.Json.JsonConvert.DeserializeObject <Models.TempOrderModels.param>(Request["param"]); //TODO:修改为json格式获取参数 var data = new Models.TempOrderModels.cart_json(); try { if (string.IsNullOrEmpty(param.memberid) || string.IsNullOrEmpty(param.token)) { return(Json(new { response = Extensions.ErrorInfo.ParameterError, message = "参数错误" })); } var tc = new Cache.MemberTokenCache().Get(param.token); if (tc == null) { return(Json(new { response = Extensions.ErrorInfo.TokenError, message = "token验证失败请重新登录" })); } if (AuthIsOpen) { var dic = new SortedDictionary <string, string>(); dic.Add("timestamp", param.timestamp); dic.Add("memberid", param.memberid); dic.Add("token", param.token); VerifyAuthorize(dic, param.timestamp, param.imei, param.sign); } var cartProvider = new Provider.ShoppingCartProvider(); var order = new List <Entitys.Order_TempOrderBasis>(); var detail = new List <Entitys.Order_TempOrderDetail>(); //选中购物车需要结算的商品 foreach (var item in param.shop) { var entity = new Entitys.Order_TempOrderBasis() { OrderId = Common.PrimaryKey.GetHashCodeID, ShopId = Common.ToolHelper.ConvertToLong(item.shopid), OrderPrice = 0, MemberId = Common.ToolHelper.ConvertToLong(param.memberid), CreateTime = DateTime.Now, IsCart = 1 }; decimal amount = 0; foreach (var pro in item.product) { var cart = cartProvider.GetCartProd(Common.ToolHelper.ConvertToLong(pro.cartid)); if (cart != null) { var pd = new Provider.ProductBasisProvider().GetProduct(cart.ProductId); decimal price = pd.PromoPrice;//有优惠需要计算优惠后的价格 string pic = pd.PictureURL; string skuName = ""; if (pd.IsMoveProp == (int)Common.EnumModel.EIsMoveProp.MoveProp) { var sku = new Provider.ProductSKUProvider().GetSKU(Common.ToolHelper.ConvertToLong(cart.SKUId)); if (sku != null) { price = sku.PromoPrice; pic = sku.PictureURL; skuName = sku.SKUName; } } var info = new Entitys.Order_TempOrderDetail() { CartId = cart.Id, SKUId = cart.SKUId, SKUName = skuName, IsGift = 0, OrderId = entity.OrderId, PayPrice = price, PictureURL = pic, ProductId = cart.ProductId, Quantity = pro.quantity, ProductName = pd.ProductName, ProductPrice = pd.RealPrice, CreateTime = DateTime.Now }; amount += info.PayPrice; detail.Add(info); } } entity.OrderPrice = amount; order.Add(entity); } #region 业务处理 var line = new Provider.TempOrderProvider().AddTempOrder(order, detail); if (line > 0) { var result = new List <Models.TempOrderModels.result_model>(); var prod = new List <Models.TempOrderModels.detail>(); foreach (var item in order) { prod = new List <Models.TempOrderModels.detail>(); foreach (var pro in detail.Where(c => c.OrderId == item.OrderId)) { prod.Add(new Models.TempOrderModels.detail { isgift = pro.IsGift, skuid = pro.SKUId, skuname = pro.SKUName, orderid = pro.OrderId, payprice = pro.PayPrice, pictureurl = pro.PictureURL, productid = pro.ProductId, productname = pro.ProductName, productprice = pro.ProductPrice, quantity = pro.Quantity }); } result.Add(new Models.TempOrderModels.result_model { orderid = item.OrderId, shopid = item.ShopId, orderprice = item.OrderPrice, list = prod }); } } else { data.response = (int)Extensions.ErrorInfo.UpError; data.message = "失败"; } #endregion } catch (Exception ex) { data.response = (int)Extensions.ErrorInfo.ServerError; data.message = "服务器内部错误"; Common.LogHelper.WriteLog(typeof(TempOrderController), ex); } return(Json(data)); }
public ActionResult Add(string memberid, string token, string productid, string shopid, string skuid, int quantity = 0) { int response = 0; string message = ""; try { if (string.IsNullOrEmpty(memberid) || string.IsNullOrEmpty(token) || string.IsNullOrEmpty(productid) || string.IsNullOrEmpty(shopid) || quantity == 0) { return(Json(new { response = Extensions.ErrorInfo.ParameterError, message = "参数错误" })); } var tc = new Cache.MemberTokenCache().Get(token); if (tc == null) { return(Json(new { response = Extensions.ErrorInfo.TokenError, message = "token验证失败请重新登录" })); } if (AuthIsOpen) { var dic = new SortedDictionary <string, string>(); dic.Add("timestamp", Request["timestamp"]); dic.Add("memberid", memberid); dic.Add("token", token); dic.Add("productid", productid); dic.Add("shopid", shopid); VerifyAuthorize(dic); } //判断是否已经存在购物车 var isExist = new Provider.ShoppingCartProvider().IsCart(Common.ToolHelper.ConvertToLong(productid), Common.ToolHelper.ConvertToLong(memberid), Common.ToolHelper.ConvertToLong(skuid)); if (isExist) { response = (int)Extensions.ErrorInfo.OK; message = "成功"; } else { var model = new List <Models.ShoppingCartModels.result_model>(); var entity = new Entitys.Member_ShoppingCart() { ProductId = Common.ToolHelper.ConvertToLong(productid), Quantity = quantity, MemberId = Common.ToolHelper.ConvertToLong(memberid), SKUId = string.IsNullOrEmpty(skuid) ? Common.Constant.LONG_DEFAULT : Common.ToolHelper.ConvertToLong(skuid), CreateTime = DateTime.Now, IsDelete = (int)Common.EnumModel.EIsDelete.NotDelete, TimeStamp = DateTime.Now, ShopId = Common.ToolHelper.ConvertToLong(shopid) }; var list = new Provider.ShoppingCartProvider().Edit(entity); if (list > 0) { response = (int)Extensions.ErrorInfo.OK; message = "成功"; } else { response = (int)Extensions.ErrorInfo.UpError; message = "修改失败"; } } } catch (Exception ex) { response = (int)Extensions.ErrorInfo.ServerError; message = "服务器内部错误"; Common.LogHelper.WriteLog(typeof(ShoppingCartController), ex); } return(Json(new { response = response, message = message })); }
public ActionResult Index(string memberid, string token) { var data = new Models.ShoppingCartModels.json_model(); try { if (string.IsNullOrEmpty(memberid) || string.IsNullOrEmpty(token)) { return(Json(new { response = Extensions.ErrorInfo.ParameterError, message = "参数错误" })); } var tc = new Cache.MemberTokenCache().Get(token); if (tc == null) { return(Json(new { response = Extensions.ErrorInfo.TokenError, message = "token验证失败请重新登录" })); } if (AuthIsOpen) { var dic = new SortedDictionary <string, string>(); dic.Add("timestamp", Request["timestamp"]); dic.Add("memberid", memberid); dic.Add("token", token); VerifyAuthorize(dic); } var model = new List <Models.ShoppingCartModels.result_model>(); var shop = new List <Models.ShoppingCartModels.shop_model>(); var list = new Provider.ShoppingCartProvider().GetList(Common.ToolHelper.ConvertToLong(memberid)); var ids = list.Select(c => c.ShopId).Distinct(); var cache = new Cache.BIZ_ShopBasisCache().Get(Common.FormsTicket.SystemCode); var pic = ""; foreach (var s in ids) { var sp = cache.Where(c => c.Id == s).FirstOrDefault(); model = new List <Models.ShoppingCartModels.result_model>(); foreach (var item in list.Where(c => c.ShopId == s)) { pic = new ERP.Common.FileHelper().GetWebFileUrl(item.PictureURL, Common.FileConfig.FileType.ProductPhoto.ToString()); model.Add(new Models.ShoppingCartModels.result_model { skuname = item.SKUName, quantity = item.Quantity, cartstatus = item.CartStatus, cartid = item.Id, ismoveprop = item.IsMoveProp, pictureurl = pic, productname = item.ProductName, promoprice = item.PromoPrice, realprice = item.RealPrice, orderid = "cart_" + item.Id }); } shop.Add(new Models.ShoppingCartModels.shop_model { product = model, shopid = sp.Id, shopname = sp.ShopName }); } data.response = (int)Extensions.ErrorInfo.OK; data.message = "成功"; data.result = shop; } catch (Exception ex) { data.response = (int)Extensions.ErrorInfo.ServerError; data.message = "服务器内部错误"; Common.LogHelper.WriteLog(typeof(ShoppingCartController), ex); } return(Json(data)); }