protected override void PageLoad() { base.PageLoad(); string action = RequestHelper.GetQueryString <string>("Action"); switch (action) { case "GetStandardPrice": GetStandardPrice(); break; case "Like": Like(); break; case "Collect": Collect(); break; } int id = RequestHelper.GetQueryString <int>("id"); product = ProductBLL.Read(id); if (product.IsSale == (int)BoolType.False) { ScriptHelper.AlertFront("该产品未上市,不能查看"); } //更新查看数量 Dictionary <string, object> dict = new Dictionary <string, object>(); dict.Add("ViewCount", product.ViewCount + 1); ProductBLL.UpdatePart(ProductInfo.TABLENAME, dict, id); if (product.BrandId > 0) { productBrand = ProductBrandBLL.Read(product.BrandId); } if (product.ShopId > 0) { shop = UserBLL.Read(product.ShopId); } productPhotoList = ProductPhotoBLL.ReadList(id); attributeRecords = ProductTypeAttributeRecordBLL.ReadList(id); standardRecords = ProductTypeStandardRecordBLL.ReadList(id); //导航路径 listPaths = ProductClassBLL.ReadNavigationPath(product.ClassId); listPaths.ForEach(k => paths += string.Format(k[0], k[1], k[2])); //排行榜 //按销量倒序 int count = 0; topProductList = ProductBLL.SearchList(1, 6, new ProductSearchInfo { ClassId = product.ClassId, IsSale = (int)BoolType.True, ProductOrderType = "SendCount", OrderType = OrderType.Desc }, ref count); //同类推荐 classProductList = ProductBLL.SearchList(1, 3, new ProductSearchInfo { ClassId = product.ClassId, IsSale = (int)BoolType.True, IsTop = (int)BoolType.True }, ref count); //搜索优化 Title = product.Name; Keywords = string.IsNullOrEmpty(product.Keywords) ? product.Name : product.Keywords; Description = string.IsNullOrEmpty(product.Summary) ? StringHelper.Substring(StringHelper.KillHTML(product.Introduction1), 200) : product.Summary; }
///<summary> ///检查用户权限 ///</summary> ///<param name="powerKey">权限的前缀</param> ///<param name="powerString">要检查的权限值</param> ///<param name="checktype">检查类型</param> ///<returns></returns> private void CheckAdminPower(string powerKey, string powerString, PowerCheckType powerCheckType, ref int adminID) { string power = AdminGroupBLL.Read(Cookies.Admin.GetGroupID(false)).Power; //检查权限 bool checkPower = false; switch (powerCheckType) { case PowerCheckType.Single: if (power.IndexOf("|" + powerKey + powerString + "|") > -1) { checkPower = true; } break; case PowerCheckType.OR: foreach (string TempPowerString in powerString.Split(',')) { if (power.IndexOf("|" + powerKey + TempPowerString + "|") > -1) { checkPower = true; break; } } break; case PowerCheckType.AND: checkPower = true; foreach (string TempPowerString in powerString.Split(',')) { if (power.IndexOf("|" + powerKey + TempPowerString + "|") == -1) { checkPower = false; break; } } break; default: break; } if (checkPower) { //是否需要检查具有操作别人的权限 bool needOther = false; Hashtable ht = ReadAllNeedOther(); foreach (DictionaryEntry dic in ht) { if (dic.Key.ToString() == powerString) { needOther = Convert.ToBoolean(dic.Value); if (!needOther) { break; } } } // 检查是否具有操作别人的权限 if (needOther) { if (power.IndexOf("|" + powerKey + "ManageOther|") > -1) { adminID = int.MinValue; } else { adminID = Cookies.Admin.GetAdminID(false); } } else { adminID = int.MinValue; } } else { adminID = -1; } if (adminID == -1) { ScriptHelper.AlertFront(ShopLanguage.ReadLanguage("NoPower")); } }
/// <summary> /// 提交数据 /// </summary> protected override void PostBack() { string userName = StringHelper.SearchSafe(StringHelper.AddSafe(RequestHelper.GetForm <string>("UserName"))); string email = StringHelper.SearchSafe(StringHelper.AddSafe(RequestHelper.GetForm <string>("Email"))); string userPassword1 = RequestHelper.GetForm <string>("UserPassword1"); string userPassword2 = RequestHelper.GetForm <string>("UserPassword2"); string safeCode = RequestHelper.GetForm <string>("SafeCode"); string Phone = StringHelper.SearchSafe(StringHelper.AddSafe(RequestHelper.GetForm <string>("Phone"))); string phoneCode = RequestHelper.GetForm <string>("PhoneCode"); //检查用户名 if (userName == string.Empty) { errorMessage = "用户名不能为空"; } if (errorMessage == string.Empty) { string forbiddinName = ShopConfig.ReadConfigInfo().ForbiddenName; if (forbiddinName != string.Empty) { foreach (string TempName in forbiddinName.Split('|')) { if (userName.IndexOf(TempName.Trim()) != -1) { errorMessage = "用户名含有非法字符"; break; } } } } if (errorMessage == string.Empty) { if (!UserBLL.UniqueUser(userName)) { errorMessage = "用户名已经被占用"; } } if (errorMessage == string.Empty) { Regex rg = new Regex("^([a-zA-Z0-9_\u4E00-\u9FA5])+$"); if (!rg.IsMatch(userName)) { errorMessage = "用户名只能包含字母、数字、下划线、中文"; } } //检查密码 if (errorMessage == string.Empty) { if (userPassword1 == string.Empty || userPassword2 == string.Empty) { errorMessage = "密码不能为空"; } } if (errorMessage == string.Empty) { if (userPassword1 != userPassword2) { errorMessage = "两次密码不一致"; } } //检查手机 邮箱 验证码 if (ShopConfig.ReadConfigInfo().RegisterCheck == 1) {//短信验证 if (errorMessage == string.Empty) { if (!ShopCommon.CheckMobile(Phone)) { errorMessage = "手机号码错误"; } } if (errorMessage == string.Empty) { if (!UserBLL.CheckMobile(Phone, 0)) { errorMessage = "手机号码已经被注册"; } } if (errorMessage == string.Empty) { if (CookiesHelper.ReadCookie("MobileCode" + StringHelper.AddSafe(Phone)) == null) { errorMessage = "验证码失效,请重新获取验证码"; } else { string mobileCode = CookiesHelper.ReadCookie("MobileCode" + StringHelper.AddSafe(Phone)).Value.ToString(); if (phoneCode.ToLower() != mobileCode.ToLower()) { errorMessage = "验证码错误"; } else { CookiesHelper.DeleteCookie("MobileCode" + StringHelper.AddSafe(Phone)); } } } } else {//邮件验证 if (errorMessage == string.Empty) { if (errorMessage == string.Empty) { if (!UserBLL.CheckEmail(email)) { errorMessage = "Email已被注册"; } } if (safeCode.ToLower() != Cookies.Common.CheckCode.ToLower()) { errorMessage = "验证码错误"; } } } //注册用户 if (errorMessage == string.Empty) { UserInfo user = new UserInfo(); user.UserName = userName; user.UserPassword = StringHelper.Password(userPassword1, (PasswordType)ShopConfig.ReadConfigInfo().PasswordType); user.Mobile = Phone; user.Email = email; user.RegisterIP = ClientHelper.IP; user.RegisterDate = RequestHelper.DateNow; user.LastLoginIP = ClientHelper.IP; user.LastLoginDate = RequestHelper.DateNow; user.FindDate = RequestHelper.DateNow; user.Sex = (int)SexType.Secret; if (ShopConfig.ReadConfigInfo().RegisterCheck == 1) {//短信验证,用户状态为已验证,可直接登录 user.Status = (int)UserStatus.Normal; } else {//邮件验证,用户状态为未验证,需登录邮件手动激活后再登录 user.Status = (int)UserStatus.NoCheck; } int userID = UserBLL.Add(user); if (ShopConfig.ReadConfigInfo().RegisterCheck == 1) { //短信验证,直接登录 HttpCookie cookie = new HttpCookie(ShopConfig.ReadConfigInfo().UserCookies); cookie["User"] = StringHelper.Encode(userName, ShopConfig.ReadConfigInfo().SecureKey); cookie["Password"] = StringHelper.Encode(userPassword1, ShopConfig.ReadConfigInfo().SecureKey); cookie["Key"] = StringHelper.Encode(ClientHelper.Agent, ShopConfig.ReadConfigInfo().SecureKey); HttpContext.Current.Response.Cookies.Add(cookie); user = UserBLL.Read(userID); UserBLL.UserLoginInit(user); ResponseHelper.Redirect("/Mobile/User/Index.html"); } else if (ShopConfig.ReadConfigInfo().RegisterCheck == 2) { try { //邮件验证 string url = "http://" + Request.ServerVariables["HTTP_HOST"] + "/Mobile/User/ActiveUser.html?CheckCode=" + StringHelper.Encode(userID + "|" + email + "|" + userName, ShopConfig.ReadConfigInfo().SecureKey); EmailContentInfo emailContent = EmailContentHelper.ReadSystemEmailContent("Register"); EmailSendRecordInfo emailSendRecord = new EmailSendRecordInfo(); emailSendRecord.Title = emailContent.EmailTitle; emailSendRecord.Content = emailContent.EmailContent.Replace("$UserName$", user.UserName).Replace("$Url$", url); emailSendRecord.IsSystem = (int)BoolType.True; emailSendRecord.EmailList = email; emailSendRecord.IsStatisticsOpendEmail = (int)BoolType.False; emailSendRecord.SendStatus = (int)SendStatus.No; emailSendRecord.AddDate = RequestHelper.DateNow; emailSendRecord.SendDate = RequestHelper.DateNow; emailSendRecord.ID = EmailSendRecordBLL.AddEmailSendRecord(emailSendRecord); EmailSendRecordBLL.SendEmail(emailSendRecord); result = "恭喜您,注册成功,请登录邮箱激活!<a href=\"http://mail." + email.Substring(email.IndexOf("@") + 1) + "\" target=\"_blank\">马上激活</a>"; } catch (Exception ex) { ScriptHelper.AlertFront("激活邮件发送失败,请联系网站客服"); } } else { //人工审核 result = "恭喜您,注册成功,请等待我们的审核!"; } ResponseHelper.Redirect("/Mobile/User/Register.html?Result=" + Server.UrlEncode(result)); } else { ScriptHelper.AlertFront(errorMessage); //ResponseHelper.Redirect("/Mobile/User/Register.html?ErrorMessage=" + Server.UrlEncode(errorMessage)); } }
protected bool isPL = true;//是否已评论 /// <summary> /// 页面加载 /// </summary> protected override void PageLoad() { base.PageLoad(); int orderID = RequestHelper.GetQueryString <int>("OrderID"); order = OrderBLL.Read(orderID, base.UserId); if (order.OrderStatus != (int)OrderStatus.ReceiveShipping) { ScriptHelper.AlertFront("只能评论已收货订单"); } orderDetailList = OrderDetailBLL.ReadList(orderID); #region 加载订单下商品 foreach (OrderDetailInfo orderDetail in orderDetailList) { if (strProductID2 == string.Empty) { strProductID2 = orderDetail.ProductId.ToString(); } else { strProductID2 += "," + orderDetail.ProductId.ToString(); } } if (strProductID2 != string.Empty) { ProductSearchInfo productSearch = new ProductSearchInfo(); productSearch.InProductId = strProductID2; productList = ProductBLL.SearchList(productSearch); } #endregion #region 判断是否已评论 List <ProductCommentInfo>[] listPinfoArr = new List <ProductCommentInfo> [productList.Count]; int pi = 0; foreach (ProductInfo item in productList) { ProductCommentSearchInfo psi = new ProductCommentSearchInfo(); psi.ProductId = item.Id; psi.UserId = base.UserId; psi.OrderID = orderID; listPinfoArr[pi] = ProductCommentBLL.SearchProductCommentList(psi); if (listPinfoArr[pi].Count <= 0) { isPL = false; } } if (isPL) { string url = ""; if (Request.RawUrl.ToLower().IndexOf("/mobile/") >= 0) { url = "/mobile/User/UserProductComment.html"; } else { url = "/User/UserProductComment.html"; } Response.Redirect(url); } #endregion //ProductCommentSearchInfo productCommentSearch = new ProductCommentSearchInfo(); //productCommentSearch.UserId = base.UserId; //productCommentSearch.OrderID = orderID; //if (ProductCommentBLL.SearchProductCommentList(productCommentSearch).Count >= productList.Count) //{ // string url = ""; // if (Request.RawUrl.ToLower().IndexOf("/mobile/") >= 0) // { // url = "/mobile/User/UserProductComment.html"; // } // else // { // url = "/User/UserProductComment.html"; // } // Response.Redirect(url); Title = "订单评价 - 会员中心"; }
protected override void PageLoad() { base.PageLoad(); istop = 1; string action = RequestHelper.GetQueryString <string>("Action"); switch (action) { case "Submit": this.Submit(); break; case "SelectProductFavor": //读取商品优惠 this.SelectProductFavor(); break; case "ReadingGifts": //读取礼品列表 this.ReadingGifts(); break; } //登录验证 if (base.UserId <= 0) { ResponseHelper.Redirect("/user/login.html?RedirectUrl=/checkout.html"); ResponseHelper.End(); } if (base._UserType == (int)UserType.Provider) { ResponseHelper.Redirect("/"); ResponseHelper.End(); } //购物车验证 checkCart = HttpUtility.UrlDecode(CookiesHelper.ReadCookieValue("CheckCart")); int[] cartIds = Array.ConvertAll <string, int>(checkCart.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries), k => Convert.ToInt32(k)); if (string.IsNullOrEmpty(checkCart) || cartIds.Length < 1) { ResponseHelper.Redirect("/cart.html"); ResponseHelper.End(); } //用户信息 var user = UserBLL.ReadUserMore(base.UserId); //剩余积分 pointLeft = user.PointLeft; //cart list #region cart list //商品清单 cartList = CartBLL.ReadList(base.UserId); cartList = cartList.Where(k => cartIds.Contains(k.Id)).ToList(); if (cartList.Count < 1) { ResponseHelper.Redirect("/cart.html"); ResponseHelper.End(); } //关联的商品 int count = 0; int[] ids = cartList.Select(k => k.ProductId).ToArray(); var productList = ProductBLL.SearchList(1, ids.Length, new ProductSearchInfo { InProductId = string.Join(",", ids) }, ref count); //规格 foreach (var cart in cartList) { cart.Product = productList.FirstOrDefault(k => k.Id == cart.ProductId) ?? new ProductInfo(); if (!string.IsNullOrEmpty(cart.StandardValueList)) { //使用规格的库存 var standardRecord = ProductTypeStandardRecordBLL.Read(cart.ProductId, cart.StandardValueList); cart.LeftStorageCount = standardRecord.Storage - standardRecord.OrderCount; cart.Price = ProductBLL.GetCurrentPrice(standardRecord.SalePrice, base.GradeID); //规格集合 if (!string.IsNullOrEmpty(standardRecord.StandardIdList)) { cart.Standards = ProductTypeStandardBLL.ReadList(Array.ConvertAll <string, int>(standardRecord.StandardIdList.Split(';'), k => Convert.ToInt32(k))); } } else { cart.Price = ProductBLL.GetCurrentPrice(cart.Product.SalePrice, base.GradeID); cart.LeftStorageCount = cart.Product.TotalStorageCount - cart.Product.OrderCount; } //检查库存 if (cart.BuyCount > cart.LeftStorageCount) { ScriptHelper.AlertFront("商品[" + cart.ProductName + "]库存不足,无法购买"); ResponseHelper.End(); } } #endregion //收货地址 addressList = UserAddressBLL.ReadList(base.UserId); addressList = addressList.OrderByDescending(k => k.IsDefault).ToList(); singleUnlimitClass.DataSource = RegionBLL.ReadRegionUnlimitClass(); var totalProductMoney = cartList.Sum(k => k.BuyCount * k.Price); //支付方式列表 payPluginsList = PayPlugins.ReadProductBuyPayPluginsList(); #region 优惠券 if (user.Id > 0) { //读取优惠券 List <UserCouponInfo> tempUserCouponList = UserCouponBLL.ReadCanUse(base.UserId); foreach (UserCouponInfo userCoupon in tempUserCouponList) { CouponInfo tempCoupon = CouponBLL.Read(userCoupon.CouponId); if (tempCoupon.UseMinAmount <= totalProductMoney) { userCouponList.Add(userCoupon); } } } #endregion #region 获取符合条件(时间段,用户等级,金额限制)的商品分类优惠活动列表,默认使用第一个 var tmpfavorableActivityList = FavorableActivityBLL.ReadList(DateTime.Now, DateTime.Now).Where <FavorableActivityInfo>(f => f.Type == (int)FavorableType.ProductClass && ("," + f.UserGrade + ",").IndexOf("," + base.GradeID.ToString() + ",") > -1).ToList(); foreach (var favorable in tmpfavorableActivityList) { decimal tmoney = 0; //tmoney = cartList.Where(c => c.Product.ClassId.IndexOf(favorable.ClassIds) > -1).Sum(k => k.BuyCount * k.Price); foreach (var tmpcart in cartList) { if (tmpcart.Product.ClassId.IndexOf(favorable.ClassIds) > -1) { if (!string.IsNullOrEmpty(tmpcart.StandardValueList)) { //使用规格的库存 var standardRecord = ProductTypeStandardRecordBLL.Read(tmpcart.ProductId, tmpcart.StandardValueList); tmpcart.LeftStorageCount = standardRecord.Storage - standardRecord.OrderCount; tmpcart.Price = ProductBLL.GetCurrentPrice(standardRecord.SalePrice, base.GradeID); tmoney += tmpcart.Price * tmpcart.BuyCount; } else { tmpcart.Price = ProductBLL.GetCurrentPrice(tmpcart.Product.SalePrice, base.GradeID); tmoney += tmpcart.Price * tmpcart.BuyCount; } } } if (tmoney >= favorable.OrderProductMoney) { productFavorableActivityList.Add(favorable); } } #endregion Title = "结算中心"; }
/// <summary> /// 提交数据 /// </summary> protected override void PostBack() { string url = "/Mobile/CheckOut.html"; //检查地址 string consignee = StringHelper.AddSafe(RequestHelper.GetForm <string>("Consignee")); if (consignee == string.Empty) { ScriptHelper.AlertFront("收货人姓名不能为空", url); } string tel = StringHelper.AddSafe(RequestHelper.GetForm <string>("Tel")); string mobile = StringHelper.AddSafe(RequestHelper.GetForm <string>("Mobile")); if (tel == string.Empty && mobile == string.Empty) { ScriptHelper.AlertFront("固定电话,手机必须得填写一个", url); } string zipCode = StringHelper.AddSafe(RequestHelper.GetForm <string>("ZipCode")); string address = StringHelper.AddSafe(RequestHelper.GetForm <string>("Address")); if (address == string.Empty) { ScriptHelper.AlertFront("地址不能为空", url); } //验证配送方式 int shippingID = RequestHelper.GetForm <int>("ShippingID"); if (shippingID == int.MinValue) { ScriptHelper.AlertFront("请选择配送方式", url); } //检查支付方式 string payKey = RequestHelper.GetForm <string>("Pay"); if (string.IsNullOrEmpty(payKey)) { ScriptHelper.AlertFront("请选择付款方式", url); } PayPluginsInfo payPlugins = PayPlugins.ReadPayPlugins(payKey); //检查金额 decimal productMoney = 0, pointMoney = 0; var user = UserBLL.ReadUserMore(base.UserId); #region 计算订单金额 checkCart = HttpUtility.UrlDecode(CookiesHelper.ReadCookieValue("CheckCart")); int[] cartIds = Array.ConvertAll <string, int>(checkCart.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries), k => Convert.ToInt32(k)); cartList = CartBLL.ReadList(base.UserId); cartList = cartList.Where(k => cartIds.Contains(k.Id)).ToList(); if (cartList.Count < 1) { ResponseHelper.Redirect("/Mobile/cart.html"); ResponseHelper.End(); } //关联的商品 int count = 0; int[] ids = cartList.Select(k => k.ProductId).ToArray(); var products = ProductBLL.SearchList(1, ids.Length, new ProductSearchInfo { InProductId = string.Join(",", ids) }, ref count); //规格与库存判断 foreach (var cart in cartList) { cart.Product = products.FirstOrDefault(k => k.Id == cart.ProductId) ?? new ProductInfo(); if (!string.IsNullOrEmpty(cart.StandardValueList)) { //使用规格的价格和库存 var standardRecord = ProductTypeStandardRecordBLL.Read(cart.ProductId, cart.StandardValueList); int leftStorageCount = standardRecord.Storage - OrderDetailBLL.GetOrderCount(cart.ProductId, cart.StandardValueList); if (leftStorageCount >= cart.BuyCount) { cart.Price = standardRecord.SalePrice; cart.LeftStorageCount = leftStorageCount; //规格集合 cart.Standards = ProductTypeStandardBLL.ReadList(Array.ConvertAll <string, int>(standardRecord.StandardIdList.Split(';'), k => Convert.ToInt32(k))); } else { ScriptHelper.AlertFront("您购物车中 " + cart.Product.Name + " 库存不足,请重新选择", "/Mobile/Cart.html"); } } else { int leftStorageCount = cart.Product.TotalStorageCount - OrderDetailBLL.GetOrderCount(cart.ProductId, cart.StandardValueList); if (leftStorageCount >= cart.BuyCount) { cart.Price = cart.Product.SalePrice; cart.LeftStorageCount = leftStorageCount; } else { ScriptHelper.AlertFront("您购物车中 " + cart.Product.Name + " 库存不足,请重新选择", "/Mobile/Cart.html"); } } } #endregion productMoney = cartList.Sum(k => k.BuyCount * k.Price); decimal shippingMoney = 0; //订单优惠活动 var favor = new FavorableActivityInfo { Id = RequestHelper.GetForm <int>("FavorableActivity") }; //商品优惠 var productfavor = new FavorableActivityInfo { Id = RequestHelper.GetForm <int>("ProductFavorableActivity") }; #region 计算运费 string regionID = RequestHelper.GetForm <string>("RegionID"); //计算配送费用 ShippingInfo shipping = ShippingBLL.Read(shippingID); ShippingRegionInfo shippingRegion = ShippingRegionBLL.SearchShippingRegion(shippingID, regionID); switch (shipping.ShippingType) { case (int)ShippingType.Fixed: shippingMoney = shippingRegion.FixedMoeny; break; case (int)ShippingType.Weight: decimal cartProductWeight = Sessions.ProductTotalWeight; if (cartProductWeight <= shipping.FirstWeight) { shippingMoney = shippingRegion.FirstMoney; } else { shippingMoney = shippingRegion.FirstMoney + Math.Ceiling((cartProductWeight - shipping.FirstWeight) / shipping.AgainWeight) * shippingRegion.AgainMoney; } break; case (int)ShippingType.ProductCount: int cartProductCount = Sessions.ProductBuyCount; shippingMoney = shippingRegion.OneMoeny + (cartProductCount - 1) * shippingRegion.AnotherMoeny; break; default: break; } #endregion //decimal balance = RequestHelper.GetForm<decimal>("Balance"); //moneyLeft = UserBLL.ReadUserMore(base.UserId).MoneyLeft; //if (balance > moneyLeft) //{ // balance = 0; // ScriptHelper.AlertFront("金额有错误,请重新检查", url); //} #region 如果开启了:使用积分抵现,计算积分抵现的现金金额 //输入的兑换积分数 var costPoint = RequestHelper.GetForm <int>("costPoint"); if (ShopConfig.ReadConfigInfo().EnablePointPay == 1) { if (costPoint > user.PointLeft || costPoint < 0) { ResponseHelper.Write("error|输入的兑换积分数[" + costPoint + "]错误,请检查|"); ResponseHelper.End(); } if (costPoint > 0) { var PointToMoneyRate = ShopConfig.ReadConfigInfo().PointToMoney; pointMoney = costPoint * (decimal)PointToMoneyRate / 100; } } #endregion #region 优惠券 decimal couponMoney = 0; string userCouponStr = RequestHelper.GetForm <string>("UserCoupon"); UserCouponInfo userCoupon = new UserCouponInfo(); if (userCouponStr != string.Empty) { int couponID = 0; if (int.TryParse(userCouponStr.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries)[0], out couponID)) { userCoupon = UserCouponBLL.Read(couponID, base.UserId); if (userCoupon.UserId == base.UserId && userCoupon.IsUse == 0) { CouponInfo tempCoupon = CouponBLL.Read(userCoupon.CouponId); if (tempCoupon.UseMinAmount <= productMoney) { couponMoney = CouponBLL.Read(userCoupon.CouponId).Money; } else { ScriptHelper.AlertFront("结算金额小于该优惠券要求的最低消费的金额", url); } } } } #endregion #region 结算商品优惠金额 decimal productfavorableMoney = 0; var theFavor = FavorableActivityBLL.Read(productfavor.Id); if (theFavor.Id > 0) { decimal tmoney = 0; foreach (var tmpcart in cartList) { tmpcart.Product = products.FirstOrDefault(k => k.Id == tmpcart.ProductId) ?? new ProductInfo(); if (tmpcart.Product.ClassId.IndexOf(theFavor.ClassIds) > -1) { if (!string.IsNullOrEmpty(tmpcart.StandardValueList)) { //使用规格的库存 var standardRecord = ProductTypeStandardRecordBLL.Read(tmpcart.ProductId, tmpcart.StandardValueList); tmpcart.LeftStorageCount = standardRecord.Storage - standardRecord.OrderCount; tmpcart.Price = ProductBLL.GetCurrentPrice(standardRecord.SalePrice, base.GradeID); tmoney += tmpcart.Price * tmpcart.BuyCount; } else { tmpcart.Price = ProductBLL.GetCurrentPrice(tmpcart.Product.SalePrice, base.GradeID); tmoney += tmpcart.Price * tmpcart.BuyCount; } } } switch (theFavor.ReduceWay) { case (int)FavorableMoney.Money: productfavorableMoney += theFavor.ReduceMoney; break; case (int)FavorableMoney.Discount: productfavorableMoney += tmoney * (100 - theFavor.ReduceDiscount) / 100; break; default: break; } } #endregion #region 计算订单优惠活动金额 decimal favorableMoney = 0; favor = FavorableActivityBLL.Read(favor.Id); if (favor.Id > 0) { if (("," + favor.UserGrade + ",").IndexOf("," + base.GradeID.ToString() + ",") > -1 && productMoney >= favor.OrderProductMoney) { switch (favor.ReduceWay) { case (int)FavorableMoney.Money: favorableMoney += favor.ReduceMoney; break; case (int)FavorableMoney.Discount: favorableMoney += productMoney * (100 - favor.ReduceDiscount) / 100; break; default: break; } if (favor.ShippingWay == (int)FavorableShipping.Free && ShippingRegionBLL.IsRegionIn(regionID, favor.RegionId)) { favorableMoney += shippingMoney; } } } #endregion /*-----------应付总价---------------------------------------------------*/ decimal payMoney = productMoney + shippingMoney - couponMoney - pointMoney - favorableMoney - productfavorableMoney; //if (productMoney - favorableMoney + shippingMoney - balance - couponMoney <= 0) if (payMoney < 0) { ScriptHelper.AlertFront("金额有错误,请重新检查", url); } //添加订单 OrderInfo order = new OrderInfo(); order.OrderNumber = ShopCommon.CreateOrderNumber(); order.IsActivity = (int)BoolType.False; if (payMoney == 0 || payPlugins.IsCod == (int)BoolType.True) { order.OrderStatus = (int)OrderStatus.WaitCheck; } else { order.OrderStatus = (int)OrderStatus.WaitPay; } order.OrderNote = string.Empty; order.ProductMoney = productMoney; order.Balance = 0; order.FavorableMoney = favorableMoney + productfavorableMoney; order.OtherMoney = 0; order.CouponMoney = couponMoney; order.Point = costPoint; order.PointMoney = pointMoney; order.Consignee = consignee; SingleUnlimitClass singleUnlimitClass = new SingleUnlimitClass(); order.RegionId = singleUnlimitClass.ClassID; order.Address = address; order.ZipCode = zipCode; order.Tel = tel; if (base.UserId == 0) { order.Email = StringHelper.AddSafe(RequestHelper.GetForm <string>("Email")); } else { order.Email = CookiesHelper.ReadCookieValue("UserEmail"); } order.Mobile = mobile; order.ShippingId = shippingID; order.ShippingDate = RequestHelper.DateNow; order.ShippingNumber = string.Empty; order.ShippingMoney = shippingMoney; order.PayKey = payKey; order.PayName = payPlugins.Name; order.PayDate = RequestHelper.DateNow;; order.IsRefund = (int)BoolType.False; order.FavorableActivityId = RequestHelper.GetForm <int>("FavorableActivityID"); order.GiftId = RequestHelper.GetForm <int>("GiftID"); order.InvoiceTitle = StringHelper.AddSafe(RequestHelper.GetForm <string>("InvoiceTitle")); order.InvoiceContent = StringHelper.AddSafe(RequestHelper.GetForm <string>("InvoiceContent")); order.UserMessage = StringHelper.AddSafe(RequestHelper.GetForm <string>("UserMessage")); order.AddDate = RequestHelper.DateNow; order.IP = ClientHelper.IP; order.UserId = base.UserId; order.UserName = base.UserName; order.GiftMessige = RequestHelper.GetForm <string>("GiftMessige"); order.IsNoticed = 0; int orderID = OrderBLL.Add(order); //使用余额 /*if (balance > 0) * { * UserAccountRecordInfo userAccountRecord = new UserAccountRecordInfo(); * userAccountRecord.Money = -balance; * userAccountRecord.Point = 0; * userAccountRecord.Date = RequestHelper.DateNow; * userAccountRecord.IP = ClientHelper.IP; * userAccountRecord.Note = "支付订单:"; * userAccountRecord.UserId = base.UserId; * userAccountRecord.UserName = base.UserName; * UserAccountRecordBLL.Add(userAccountRecord); * }*/ #region 减少积分 if (ShopConfig.ReadConfigInfo().EnablePointPay == 1 && costPoint > 0) { //减少积分 UserAccountRecordInfo uarInfo = new UserAccountRecordInfo(); uarInfo.RecordType = (int)AccountRecordType.Point; uarInfo.UserId = base.UserId; uarInfo.UserName = base.UserName; uarInfo.Note = "支付订单:" + order.OrderNumber; uarInfo.Point = -costPoint; uarInfo.Money = 0; uarInfo.Date = DateTime.Now; uarInfo.IP = ClientHelper.IP; UserAccountRecordBLL.Add(uarInfo); } #endregion #region 使用优惠券 string strUserCoupon = RequestHelper.GetForm <string>("UserCoupon"); if (couponMoney > 0 && !string.IsNullOrEmpty(strUserCoupon) && strUserCoupon != "0|0") { userCoupon.IsUse = (int)BoolType.True; userCoupon.OrderId = orderID; UserCouponBLL.Update(userCoupon); } #endregion AddOrderProduct(orderID); //更改产品库存订单数量 ProductBLL.ChangeOrderCountByOrder(orderID, ChangeAction.Plus); /*----------------------------------------------------------------------*/ ResponseHelper.Redirect("/Mobile/Finish-I" + orderID.ToString() + ".html"); }
/// <summary> /// 页面加载 /// </summary> protected override void PageLoad() { base.PageLoad(); int count = int.MinValue; int id = RequestHelper.GetQueryString <int>("ID"); if (id <= 0) { ScriptHelper.AlertFront("该产品未上市,不能查看"); } string fromwhere = RequestHelper.GetQueryString <string>("fw"); product = ProductBLL.Read(id); if (product.IsSale == (int)BoolType.False || product.IsDelete == 1) { if (fromwhere.ToLower() != "admin") { ScriptHelper.Alert("该产品未上市,不能查看"); } else { if (Cookies.Admin.GetAdminID(true) == 0)//用户未登录 { ScriptHelper.Alert("该产品未上市,不能查看"); } } } navList = ProductClassBLL.ProductClassNameList(product.ClassId); //更新查看数量 ProductBLL.ChangeViewCount(id, 1); //会员等级 userGradeList = UserGradeBLL.ReadList(); //产品图片 ProductPhotoInfo productPhoto = new ProductPhotoInfo(); productPhoto.Name = product.Name; productPhoto.ImageUrl = product.Photo.Replace("Original", "75-75"); productPhotoList.Add(productPhoto); productPhotoList.AddRange(ProductPhotoBLL.ReadList(id, 0)); // 关联产品,配件,浏览过的商品 strHistoryProduct = Server.UrlDecode(CookiesHelper.ReadCookieValue("HistoryProduct")); string tempStrProductID = product.RelationProduct + "," + product.Accessory + "," + strHistoryProduct; tempStrProductID = tempStrProductID.Replace(",,", ","); if (tempStrProductID.StartsWith(",")) { tempStrProductID = tempStrProductID.Substring(1); } if (tempStrProductID.EndsWith(",")) { tempStrProductID = tempStrProductID.Substring(0, tempStrProductID.Length - 1); } ProductSearchInfo productSearch = new ProductSearchInfo(); productSearch.InProductId = tempStrProductID; productSearch.IsDelete = (int)BoolType.False; tempProductList = ProductBLL.SearchList(productSearch); //产品规格 standardRecordList = ProductTypeStandardRecordBLL.ReadListByProduct(product.Id, product.StandardType); if (standardRecordList.Count > 0) { string[] standardIDArray = standardRecordList[0].StandardIdList.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < standardIDArray.Length; i++) { int standardID = Convert.ToInt32(standardIDArray[i]); ProductTypeStandardInfo standard = ProductTypeStandardBLL.Read(standardID); string[] valueArray = standard.ValueList.Split(';'); string valueList = string.Empty; for (int k = 0; k < valueArray.Length; k++) { foreach (ProductTypeStandardRecordInfo standardRecord in standardRecordList) { string[] tempValueArray = standardRecord.ValueList.Split(';'); if (valueArray[k] == tempValueArray[i]) { valueList += valueArray[k] + ";"; break; } } } if (valueList != string.Empty) { valueList = valueList.Substring(0, valueList.Length - 1); } standard.ValueList = valueList; standardList.Add(standard); } //规格值 foreach (ProductTypeStandardRecordInfo standardRecord in standardRecordList) { standardRecordValueList += standardRecord.ProductId + ";" + standardRecord.ValueList + "|"; } } //计算剩余库存量 if (ShopConfig.ReadConfigInfo().ProductStorageType == (int)ProductStorageType.SelfStorageSystem) { leftStorageCount = product.TotalStorageCount - product.OrderCount; } else { leftStorageCount = product.ImportVirtualStorageCount; } //搜索优化 Title = product.Name; Keywords = (product.Keywords == string.Empty) ? product.Name : product.Keywords; Description = (product.Summary == string.Empty) ? StringHelper.Substring(StringHelper.KillHTML(product.Introduction1), 200) : product.Summary; }
protected void SubmitButton_Click(object sender, EventArgs e) { //如果账号不存在 if (!string.Equals(NewPassword.Text, NewPassword2.Text, StringComparison.OrdinalIgnoreCase)) { ScriptHelper.AlertFront("两次密码不一致"); } else { #region 滑块验证码 GeetestLib geetest = new GeetestLib("b46d1900d0a894591916ea94ea91bd2c", "36fc3fe98530eea08dfc6ce76e3d24c4"); Byte gt_server_status_code = (Byte)Session[GeetestLib.gtServerStatusSessionKey]; String userID = (String)Session["userID"]; int result = 0; String challenge = Request.Form.Get(GeetestLib.fnGeetestChallenge); String validate = Request.Form.Get(GeetestLib.fnGeetestValidate); String seccode = Request.Form.Get(GeetestLib.fnGeetestSeccode); try { if (gt_server_status_code != null && gt_server_status_code == 1) { result = geetest.enhencedValidateRequest(challenge, validate, seccode, userID); } else { result = geetest.failbackValidateRequest(challenge, validate, seccode); } } catch (Exception ex) { result = -1;//极验验证码出错,不进行验证 } if (result == 1 || result == -1) {// 验证通过,重置密码 string checkCode = RequestHelper.GetForm <string>("CheckCode"); string decode = StringHelper.Decode(checkCode, ShopConfig.ReadConfigInfo().SecureKey); int adminID = Convert.ToInt32(decode.Split('|')[0]); string newPassword = StringHelper.Password(NewPassword.Text, (PasswordType)ShopConfig.ReadConfigInfo().PasswordType); // 重置密码 AdminBLL.ChangePassword(adminID, newPassword); Task.Run(() => { //安全码 ShopConfigInfo config = ShopConfig.ReadConfigInfo(); config.SecureKey = Convert.ToBase64String(Guid.NewGuid().ToByteArray()); ShopConfig.UpdateConfigInfo(config); }); //清空safecode,finddate恢复 AdminBLL.ChangeAdminSafeCode(adminID, string.Empty, RequestHelper.DateNow); //错误次数清零,解锁 AdminBLL.UpdateStatus(adminID); string msg = "恭喜您,密码修改成功!" + " 点击<a href=\"/admin/Login.aspx\" style=\"color: #1dd42b;font-size: larger;\">\"使用新密码登录\"</a>"; //清除原有的user Cookies CookiesHelper.DeleteCookie(ShopConfig.ReadConfigInfo().AdminCookies); CookiesHelper.DeleteCookie("AdminSign"); ResponseHelper.Redirect("/admin/ResetPassword.aspx?Result=" + Server.UrlEncode(msg)); } else { //验证失败 ScriptHelper.AlertFront("图片验证失败,请拖动图片滑块重新验证。"); } #endregion } }
/// <summary> /// 提交数据 /// </summary> protected override void PostBack() { int groupID = RequestHelper.GetForm <int>("groupID"); buyCount = RequestHelper.GetForm <int>("buyCount"); string url = "/GroupBuyOrder-" + groupID + "-" + buyCount + ".aspx"; groupBuy = GroupBuyBLL.ReadGroupBuy(groupID); if (groupBuy.ID <= 0) { ScriptHelper.AlertFront("该团购不存在!", url); } if (UserGroupBuyBLL.ReadUserGroupBuyByUser(groupID, base.UserID).ID > 0) { ScriptHelper.AlertFront("您已经参加该团购了!", url); } if (groupBuy.StartDate > DateTime.Now) { ScriptHelper.AlertFront("该团购还未开始,不能购买!", url); } if (groupBuy.EndDate < DateTime.Now) { ScriptHelper.AlertFront("该团购已经结束,不能购买!", url); } if (buyCount <= 0) { ScriptHelper.AlertFront("购买数量有误!", url); } if (buyCount > groupBuy.EachNumber) { ScriptHelper.AlertFront("购买数量超过了该团购个人限购数!", url); } int hasBuy = 0; foreach (UserGroupBuyInfo userGroupBuy in UserGroupBuyBLL.ReadUserGroupBuyList(groupID)) { hasBuy += userGroupBuy.BuyCount; } if (buyCount > (groupBuy.MaxCount - hasBuy)) { ScriptHelper.AlertFront("购买数量超过了该团购剩余数!", url); } product = ProductBLL.ReadProduct(groupBuy.ProductID); //检查地址 string consignee = StringHelper.AddSafe(RequestHelper.GetForm <string>("Consignee")); if (consignee == string.Empty) { ScriptHelper.AlertFront("收货人姓名不能为空", url); } string tel = StringHelper.AddSafe(RequestHelper.GetForm <string>("Tel")); string mobile = StringHelper.AddSafe(RequestHelper.GetForm <string>("Mobile")); if (tel == string.Empty && mobile == string.Empty) { ScriptHelper.AlertFront("固定电话,手机必须得填写一个", url); } string zipCode = StringHelper.AddSafe(RequestHelper.GetForm <string>("ZipCode")); if (zipCode == string.Empty) { ScriptHelper.AlertFront("邮编不能为空", url); } string address = StringHelper.AddSafe(RequestHelper.GetForm <string>("Address")); if (address == string.Empty) { ScriptHelper.AlertFront("地址不能为空", url); } //验证配送方式 int shippingID = RequestHelper.GetForm <int>("ShippingID"); if (shippingID == int.MinValue) { ScriptHelper.AlertFront("请选择配送方式", url); } //检查金额 decimal productMoney = groupBuy.Price * buyCount; decimal favorableMoney = RequestHelper.GetForm <decimal>("FavorableMoney"); decimal shippingMoney = RequestHelper.GetForm <decimal>("ShippingMoney"); decimal balance = RequestHelper.GetForm <decimal>("Balance"); decimal couponMoney = RequestHelper.GetForm <decimal>("CouponMoney"); if (productMoney - favorableMoney + shippingMoney - balance - couponMoney < 0) { ScriptHelper.AlertFront("金额有错误,请重新检查", url); } //支付方式 string payKey = RequestHelper.GetForm <string>("Pay"); PayPluginsInfo payPlugins = PayPlugins.ReadPayPlugins(payKey); //添加订单 OrderInfo order = new OrderInfo(); order.OrderNumber = ShopCommon.CreateOrderNumber(); order.IsActivity = (int)BoolType.True; if (productMoney - favorableMoney + shippingMoney - balance - couponMoney == 0 || payPlugins.IsCod == (int)BoolType.True) { order.OrderStatus = (int)OrderStatus.WaitCheck; } else { order.OrderStatus = (int)OrderStatus.WaitPay; } order.OrderNote = "团购活动:" + groupBuy.Name; order.ProductMoney = productMoney; order.Balance = balance; order.FavorableMoney = favorableMoney; order.OtherMoney = 0; order.CouponMoney = couponMoney; order.Consignee = consignee; SingleUnlimitClass singleUnlimitClass = new SingleUnlimitClass(); order.RegionID = singleUnlimitClass.ClassID; order.Address = address; order.ZipCode = zipCode; order.Tel = tel; string userEmail = string.Empty; if (base.UserID == 0) { userEmail = StringHelper.AddSafe(RequestHelper.GetForm <string>("Email")); } else { userEmail = CookiesHelper.ReadCookieValue("UserEmail"); } order.Email = userEmail; order.Mobile = mobile; order.ShippingID = shippingID; order.ShippingDate = RequestHelper.DateNow; order.ShippingNumber = string.Empty; order.ShippingMoney = shippingMoney; order.PayKey = payKey; order.PayName = payPlugins.Name; order.PayDate = RequestHelper.DateNow;; order.IsRefund = (int)BoolType.False; order.FavorableActivityID = 0; order.GiftID = 0; order.InvoiceTitle = string.Empty; order.InvoiceContent = string.Empty; order.UserMessage = StringHelper.AddSafe(RequestHelper.GetForm <string>("UserMessage")); order.AddDate = RequestHelper.DateNow; order.IP = ClientHelper.IP; order.UserID = base.UserID; order.UserName = base.UserName; int orderID = OrderBLL.AddOrder(order); OrderDetailInfo orderDetail = new OrderDetailInfo(); orderDetail.OrderID = orderID; orderDetail.ProductID = product.ID; orderDetail.ProductName = product.Name; orderDetail.ProductWeight = product.Weight; orderDetail.SendPoint = 0; orderDetail.ProductPrice = groupBuy.Price; orderDetail.BuyCount = buyCount; orderDetail.FatherID = 0; orderDetail.RandNumber = string.Empty; orderDetail.GiftPackID = 0; OrderDetailBLL.AddOrderDetail(orderDetail); //更改产品库存订单数量 ProductBLL.ChangeProductOrderCountByOrder(orderID, ChangeAction.Plus); //添加团购单 UserGroupBuyInfo buyInfo = new UserGroupBuyInfo(); buyInfo.GroupBuyID = groupBuy.ID; buyInfo.Date = RequestHelper.DateNow; buyInfo.IP = ClientHelper.IP; buyInfo.BuyCount = buyCount; buyInfo.OrderID = orderID; buyInfo.UserID = base.UserID; buyInfo.UserName = base.UserName; buyInfo.Consignee = consignee; buyInfo.RegionID = singleUnlimitClass.ClassID; buyInfo.Address = address; buyInfo.ZipCode = zipCode; buyInfo.Tel = tel; buyInfo.Email = userEmail; buyInfo.Mobile = mobile; UserGroupBuyBLL.AddUserGroupBuy(buyInfo); ResponseHelper.Redirect("/Finish-I" + orderID.ToString() + ".aspx"); }
/// <summary> /// 页面加载 /// </summary> protected override void PageLoad() { base.PageLoad(); int count = int.MinValue; topNav = 2; int id = RequestHelper.GetQueryString <int>("ID"); if (id <= 0) { ScriptHelper.AlertFront("该产品未上市,不能查看"); } string fromwhere = RequestHelper.GetQueryString <string>("fw"); product = ProductBLL.Read(id); if (product.IsSale == (int)BoolType.False || product.IsDelete == 1) { if (fromwhere.ToLower() != "admin") { ScriptHelper.AlertFront("该产品未上市,不能查看"); } else { if (Cookies.Admin.GetAdminID(true) == 0)//用户未登录 { ScriptHelper.AlertFront("该产品未上市,不能查看"); } } } navList = ProductClassBLL.ProductClassNameList(product.ClassId); //更新查看数量 if (CookiesHelper.ReadCookie("productview" + product.Id + "") == null) { ProductBLL.ChangeViewCount(id, 1); CookiesHelper.AddCookie("productview" + product.Id + "", product.Id.ToString()); } ProductCommentSearchInfo proCommSear = new ProductCommentSearchInfo(); proComm = ProductCommentBLL.SearchProductCommentList(proCommSear = new ProductCommentSearchInfo { ProductId = product.Id }); //会员等级 userGradeList = UserGradeBLL.ReadList(); //产品价格 int hotCount = 0; currentMemberPrice = ProductBLL.GetCurrentPrice(product.SalePrice, base.GradeID); hotProductList = ProductBLL.SearchList(1, 7, new ProductSearchInfo { IsHot = (int)BoolType.True, IsSale = (int)BoolType.True, IsDelete = (int)BoolType.False, NotInProductId = product.Id.ToString() }, ref hotCount); ishot = ProductBLL.SearchList(1, 7, new ProductSearchInfo { IsHot = (int)BoolType.True, IsSale = (int)BoolType.True, IsTop = (int)BoolType.True, IsDelete = (int)BoolType.False, NotInProductId = product.Id.ToString() }, ref hotCount); proishot = ProductBLL.SearchList(1, 3, new ProductSearchInfo { IsSale = (int)BoolType.True, IsTop = (int)BoolType.True, IsDelete = (int)BoolType.False, NotInProductId = product.Id.ToString() }, ref hotCount); //产品图片 ProductPhotoInfo productPhoto = new ProductPhotoInfo(); productPhoto.Name = product.Name; productPhoto.ImageUrl = product.Photo; productPhotoList.Add(productPhoto); productPhotoList.AddRange(ProductPhotoBLL.ReadList(id, 0)); // 关联产品,配件,浏览过的商品 strHistoryProduct = Server.UrlDecode(CookiesHelper.ReadCookieValue("HistoryProduct")); string tempStrProductID = product.RelationProduct + "," + product.Accessory + "," + strHistoryProduct; tempStrProductID = tempStrProductID.Replace(",,", ","); if (tempStrProductID.StartsWith(",")) { tempStrProductID = tempStrProductID.Substring(1); } if (tempStrProductID.EndsWith(",")) { tempStrProductID = tempStrProductID.Substring(0, tempStrProductID.Length - 1); } ProductSearchInfo productSearch = new ProductSearchInfo(); productSearch.InProductId = tempStrProductID; tempProductList = ProductBLL.SearchList(productSearch); //属性 attributeRecordList = ProductTypeAttributeRecordBLL.ReadList(id); //产品文章 if (product.RelationArticle != string.Empty) { ArticleSearchInfo articleSearch = new ArticleSearchInfo(); articleSearch.InArticleId = product.RelationArticle; productArticleList = ArticleBLL.SearchList(articleSearch); } //产品规格 standardRecordList = ProductTypeStandardRecordBLL.ReadListByProduct(product.Id, product.StandardType); if (standardRecordList.Count > 0) { string[] standardIDArray = standardRecordList[0].StandardIdList.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < standardIDArray.Length; i++) { int standardID = Convert.ToInt32(standardIDArray[i]); ProductTypeStandardInfo standard = ProductTypeStandardBLL.Read(standardID); string[] valueArray = standard.ValueList.Split(';'); string valueList = string.Empty; for (int k = 0; k < valueArray.Length; k++) { foreach (ProductTypeStandardRecordInfo standardRecord in standardRecordList) { string[] tempValueArray = standardRecord.ValueList.Split(';'); if (valueArray[k] == tempValueArray[i]) { valueList += valueArray[k] + ";"; break; } } } if (valueList != string.Empty) { valueList = valueList.Substring(0, valueList.Length - 1); } standard.ValueList = valueList; standardList.Add(standard); } //规格值 foreach (ProductTypeStandardRecordInfo standardRecord in standardRecordList) { standardRecordValueList += standardRecord.ProductId + ";" + standardRecord.ValueList + "|"; } } //计算剩余库存量 leftStorageCount = product.TotalStorageCount - product.OrderCount; //搜索优化 Title = (product.SubTitle == string.Empty) ? product.Name : product.SubTitle; Keywords = (product.Keywords == string.Empty) ? product.Name : product.Keywords; Description = (product.Summary == string.Empty) ? StringHelper.Substring(StringHelper.KillHTML(product.Introduction1), 200) : product.Summary; }