public ActionResult PostAvatar(string token, string memberid) { var data = new Models.AccountModels.json_model(); try { if (string.IsNullOrEmpty(token)) { return(Json(new { response = Extensions.ErrorInfo.ParameterError, message = "参数错误" })); } if (AuthIsOpen) { var dic = new SortedDictionary <string, string>(); dic.Add("token", token); dic.Add("memberid", memberid); dic.Add("timestamp", Request["timestamp"]); VerifyAuthorize(dic); } var cache = new Cache.MemberTokenCache().Get(token); if (cache != null && cache.Id.ToString() == memberid) { var Photo = new ERP.Common.FileHelper().SaveFileAbsolute("memimg", cache.Picture, ERP.Common.FileConfig.FileLocalPath + "/" + ERP.Common.FileConfig.FileType.MemberPhoto.ToString()); if (!string.IsNullOrEmpty(Photo)) { //添加头像 这里直接返回图像地址就不需要重新缓存了 var re = proveder.SavePicture(cache.Id, Photo); var picurl = new ERP.Common.FileHelper().GetWebFileUrl(Photo, ERP.Common.FileConfig.FileType.MemberPhoto.ToString()); var model = new Models.AccountModels.result_model(); model.picture = picurl; data.response = (int)Extensions.ErrorInfo.OK; data.message = "上传成功"; data.result = model; } else { data.response = (int)Extensions.ErrorInfo.UploadFailure; data.message = "上传图像失败"; } } else { data.response = (int)Extensions.ErrorInfo.TokenError; data.message = "token过期请重新登录"; } } catch (Exception ex) { data.response = (int)Extensions.ErrorInfo.ServerError; data.message = "服务器内部错误"; Common.LogHelper.WriteLog(typeof(AccountController), ex); } return(Json(data)); }
public ActionResult Index(string categoryid, string search, int sort = 0, int index = 1, int row = 5) { var data = new Models.ProductListModels.json_model(); try { if (AuthIsOpen) { var dic = new SortedDictionary <string, string>(); dic.Add("timestamp", Request["timestamp"]); VerifyAuthorize(dic); } var model = new List <Models.ProductListModels.result_model>(); var list = new Provider.ProductBasisProvider().GetList(categoryid, search, sort, index, row); var pic = ""; foreach (var item in list) { pic = new ERP.Common.FileHelper().GetWebFileUrl(item.PictureURL, Common.FileConfig.FileType.ProductPhoto.ToString()); model.Add(new Models.ProductListModels.result_model { pictureurl = pic, salecount = item.SaleCount, productid = item.Id, productname = item.ProductName, promoprice = item.PromoPrice, realprice = item.RealPrice, review = item.Review }); } data.response = (int)Extensions.ErrorInfo.OK; data.message = "成功"; data.result = model; } catch (Exception ex) { data.response = (int)Extensions.ErrorInfo.ServerError; data.message = "服务器内部错误"; Common.LogHelper.WriteLog(typeof(ProductCategoryController), ex); } return(Json(data)); }
public ActionResult Index(string productid) { var data = new Models.ProductInfoModels.json_model(); try { if (string.IsNullOrEmpty(productid)) { return(Json(new { response = Extensions.ErrorInfo.ParameterError, message = "参数错误" })); } if (AuthIsOpen) { var dic = new SortedDictionary <string, string>(); dic.Add("timestamp", Request["timestamp"]); dic.Add("productid", productid); VerifyAuthorize(dic); } var product = new Models.ProductInfoModels.product_model(); //商品信息 var skuModel = new List <Models.ProductInfoModels.sku_model>(); //sku var propertity = new List <Models.ProductInfoModels.property>(); //商品属性 var proveder = new Provider.ProductBasisProvider(); var prod = proveder.GetProduct(Common.ToolHelper.ConvertToLong(productid)); var shop = new Cache.BIZ_ShopBasisCache().Get(Common.FormsTicket.SystemCode).Where(c => c.Id == prod.ShopId).FirstOrDefault(); if (prod.IsMoveProp == (int)Common.EnumModel.EIsMoveProp.OneProp) { product = new Models.ProductInfoModels.product_model { productid = prod.Id, salecount = prod.SaleCount, productname = prod.ProductName, promoprice = prod.PromoPrice, realprice = prod.RealPrice, review = prod.Review, ismoveprop = prod.IsMoveProp, stock = prod.Stock, shopid = prod.ShopId, shopname = shop.ShopName }; } else { product = new Models.ProductInfoModels.product_model { productid = prod.Id, salecount = prod.SaleCount, productname = prod.ProductName, promoprice = prod.PromoPrice, realprice = prod.RealPrice, review = prod.Review, ismoveprop = prod.IsMoveProp, stock = prod.Stock, shopid = prod.ShopId, shopname = shop.ShopName }; #region sku信息 var sku = new Provider.ProductSKUProvider().GetSKUByProd(Common.ToolHelper.ConvertToLong(productid)); var spic = ""; foreach (var item in sku) { spic = new ERP.Common.FileHelper().GetWebFileUrl(item.PictureURL, Common.FileConfig.FileType.ProductPhoto.ToString()); skuModel.Add(new Models.ProductInfoModels.sku_model { salecount = item.SaleCount, skuid = item.Id, stock = item.Stock, promoprice = item.PromoPrice, realprice = item.RealPrice, skustring = item.SKUString.Trim('-').Replace("-", ","), pictureurl = spic }); } #endregion #region 商品属性 var propValue = new List <Models.ProductInfoModels.property_value>(); var prop = new HashSet <int>(); //属性集合 var value = new HashSet <int>(); //属性值集合 var ps = prod.PropString.Split('|'); foreach (var item in ps[0].Split(',')) { prop.Add(Common.ToolHelper.ConvertToInt(item)); } foreach (var item in ps[1].Split(',')) { value.Add(Common.ToolHelper.ConvertToInt(item)); } var props = new Provider.ProductPropertyProvider().GetListByIds(prop); var values = new Provider.ProductPropertyProvider().GetValueByIds(prop); foreach (var item in props) { propValue = new List <Models.ProductInfoModels.property_value>(); foreach (var v in values.Where(c => c.PropertyId == item.Id)) { propValue.Add(new Models.ProductInfoModels.property_value { id = v.Id, name = v.Name }); } propertity.Add(new Models.ProductInfoModels.property { id = item.Id, name = item.PropName, values = propValue }); } #endregion } var picModel = new List <Models.ProductInfoModels.pic_model>(); #region 商品图片 var pics = proveder.GetPic(Common.ToolHelper.ConvertToLong(productid)); var pic = ""; foreach (var item in pics) { pic = new ERP.Common.FileHelper().GetWebFileUrl(item.PictureURL, Common.FileConfig.FileType.ProductPhoto.ToString()); picModel.Add(new Models.ProductInfoModels.pic_model { pictureurl = pic }); } #endregion var model = new Models.ProductInfoModels.result_model() { picture = picModel, sku = skuModel, product = product, property = propertity }; data.response = (int)Extensions.ErrorInfo.OK; data.message = "成功"; data.result = model; } catch (Exception ex) { data.response = (int)Extensions.ErrorInfo.ServerError; data.message = "服务器内部错误"; Common.LogHelper.WriteLog(typeof(ProductCategoryController), ex); } return(Json(data)); }
// GET: Account /// <summary> /// 登录 /// </summary> /// <param name="logincode"></param> /// <param name="password"></param> /// <returns></returns> //[HttpPost] public ActionResult Login(string logincode, string password) { var data = new Models.AccountModels.json_model(); try { if (string.IsNullOrEmpty(logincode) || string.IsNullOrEmpty(password)) { return(Json(new { response = Extensions.ErrorInfo.ParameterError, message = "参数错误" })); } if (AuthIsOpen) { var dic = new SortedDictionary <string, string>(); dic.Add("logincode", logincode); dic.Add("password", password); dic.Add("timestamp", Request["timestamp"]); VerifyAuthorize(dic); } #region 登录黑名单 var cache = HttpRuntime.Cache.Get("login" + logincode); bool b = true; if (cache == null) { //不在黑名单需要从数据库验证 var min = Common.ToolHelper.ConvertToInt(ConfigurationManager.AppSettings["member_log_date"]); var count = proveder.LoginLog(logincode, DateTime.Now.AddMinutes(-min)); var errorLog = Common.ToolHelper.ConvertToInt(ConfigurationManager.AppSettings["member_log_count"]); if (count >= errorLog) { HttpRuntime.Cache.Insert("login" + logincode, "" + DateTime.Now + "", null, DateTime.Now.AddHours(1), TimeSpan.Zero); b = false; data.response = (int)Extensions.ErrorInfo.PwdLock; data.message = "密码错误次数太多,请60分钟后在试"; } } else { if (Common.ToolHelper.ConvertToDateTime(cache).AddMinutes(Common.ToolHelper.ConvertToInt(60) + 1) > DateTime.Now) { b = false; data.response = (int)Extensions.ErrorInfo.PwdLock; data.message = "密码错误次数太多,请60分钟后在试"; } else { HttpRuntime.Cache.Remove("login" + logincode); } } #endregion if (b) { var member = proveder.GetMember(logincode); if (member != null) { if (member.Passwords == password.Trim()) { if (member.AbnormalLock == 0) { string token = Common.ToolHelper.GetMD5Hash32(Common.ToolHelper.ConvertDateTimeInt(DateTime.Now).ToString()); var pic = new ERP.Common.FileHelper().GetWebFileUrl(member.Picture, Common.FileConfig.FileType.MemberPhoto.ToString()); var model = new Models.AccountModels.result_model() { integral = member.Integral, sex = member.Sex, email = member.Email, memberid = member.Id, mobile = member.Mobile, picture = pic, promocode = member.PromoCode, realname = member.RealName, memberlevel = member.MemberLevel, token = token }; data.response = (int)Extensions.ErrorInfo.OK; data.result = model; data.message = "登录成功"; #region 添加缓存 var memCache = new Cache.MemberTokenCache.MemberTokenModel() { Id = member.Id, Sex = member.Sex, Email = member.Email, IMEI = member.IMEI, Integral = member.Integral, IP = Common.ToolHelper.GetClientIP, LoginCode = member.LoginCode, Mobile = member.Mobile, OpenId = member.OpenId, Picture = member.Picture, PromoCode = member.PromoCode, RealName = member.RealName, Password = member.Passwords }; new Cache.MemberTokenCache().Set(memCache, token); #endregion } else { data.response = (int)Extensions.ErrorInfo.PassError; data.message = "账号已被锁请联系管理员解锁!"; } } else { data.response = (int)Extensions.ErrorInfo.PassError; data.message = "密码错误!"; } } else { data.response = (int)Extensions.ErrorInfo.PassError; data.message = "账号不存在!"; } } } catch (Exception ex) { data.response = (int)Extensions.ErrorInfo.ServerError; data.message = "服务器内部错误"; Common.LogHelper.WriteLog(typeof(AccountController), ex); } #region 添加登录日志 if (data.response == (int)Extensions.ErrorInfo.PassError || data.response == (int)Extensions.ErrorInfo.OK) { var log = new Entitys.SysLoginLog() { LoginCode = logincode, TimeStamp = DateTime.Now, LoginType = 1, LoginStatus = data.response == (int)Extensions.ErrorInfo.OK ? (byte)1 : (byte)0, LoginIP = Common.ToolHelper.GetClientIP, }; proveder.SaveLoginLog(log); } #endregion return(Json(data, JsonRequestBehavior.AllowGet)); }
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)); }