public JsonResult AddLimitedDiscount( string promoteName, string promoteStartTime, string promoteEndTime, string productArry, string discountArry, string discountPriceArry, string limitedBuyNumArry, string totalNumArry, string isOnlinePayArry, string useCouponArry, string newUserArry, string mobileverifyArry) { try { // 验证相同商品是否参与其他促销 var products = this.VerifyPromote(productArry); if (!string.IsNullOrEmpty(products)) { return this.Json(new AjaxResponse(0, "以下商品已参加其他促销活动:" + products)); } var promoteLimitedDiscount = new Promote_Limited_Discount { Name = promoteName, StartTime = DateTime.Parse(promoteStartTime), EndTime = DateTime.Parse(promoteEndTime), CreateTime = DateTime.Now, IsNewUser = false, IsMobileValidate = false, IsUseCoupon = true }; var productIDArry = productArry.Split(','); var discountNumArry = discountArry.Split(','); var discountedArry = discountPriceArry.Split(','); var limitedBuyArry = limitedBuyNumArry.Split(','); var totalArry = totalNumArry.Split(','); var isOnlineArry = isOnlinePayArry.Split(','); for (int i = 0; i < productIDArry.Length; i++) { if (productIDArry[i].Trim() != string.Empty) { promoteLimitedDiscount.ProductID = int.Parse(productIDArry[i]); promoteLimitedDiscount.Discount = double.Parse(discountNumArry[i]); promoteLimitedDiscount.DiscountPrice = double.Parse(discountedArry[i]); promoteLimitedDiscount.LimitedBuyQuantity = int.Parse(limitedBuyArry[i]); promoteLimitedDiscount.TotalQuantity = int.Parse(totalArry[i]); promoteLimitedDiscount.IsOnlinePayment = isOnlineArry[i] == "1"; promoteLimitedDiscount.Status = 1; this.promoteLimitedDiscountService = new PromoteLimitedDiscountService(); promoteLimitedDiscount.ID = this.promoteLimitedDiscountService.Add(promoteLimitedDiscount); } } return this.Json(new AjaxResponse(1, "设置成功!")); } catch (Exception exception) { return this.Json(new AjaxResponse(0, exception.Message)); } }
/// <summary> /// 限时抢购. /// </summary> /// <param name="request"> /// The request. /// </param> /// <param name="promoteName"> /// 限时抢购促销名称. /// </param> /// <param name="startStartTime"> /// 活动开始时间范围起始时间. /// </param> /// <param name="startEndTime"> /// 活动开始时间范围结束时间. /// </param> /// <param name="endStartTime"> /// 活动结束时间范围起始时间. /// </param> /// <param name="endEndTime"> /// 活动结束时间范围结束时间. /// </param> /// <param name="searchStatus"> /// The search Status. /// </param> /// <returns> /// The <see cref="JsonResult"/>. /// </returns> public JsonResult QueryLimitedDiscount( [DataSourceRequest] DataSourceRequest request, string promoteName, string productName, string startStartTime, string startEndTime, string endStartTime, string endEndTime, string searchStatus) { this.promoteLimitedDiscountService = new PromoteLimitedDiscountService(); if (request.Page <= 0) { request.Page = 1; } if (request.PageSize == 0) { request.PageSize = 10; } int totalCount; var stringBuilder = new StringBuilder(); if (!string.IsNullOrEmpty(promoteName)) { CheckCondition(stringBuilder); stringBuilder.Append("[Name] like '%" + promoteName + "%'"); } if (!string.IsNullOrEmpty(productName)) { CheckCondition(stringBuilder); stringBuilder.Append("[ProductName] like '%" + productName + "%'"); } if (!string.IsNullOrEmpty(startStartTime)) { CheckCondition(stringBuilder); stringBuilder.Append("[StartTime] >= '" + startStartTime + "'"); } if (!string.IsNullOrEmpty(startEndTime)) { CheckCondition(stringBuilder); stringBuilder.Append("[StartTime] <= '" + startEndTime + "'"); } if (!string.IsNullOrEmpty(endStartTime)) { CheckCondition(stringBuilder); stringBuilder.Append("[EndTime] >= '" + endStartTime + "'"); } if (!string.IsNullOrEmpty(endEndTime)) { CheckCondition(stringBuilder); stringBuilder.Append("[EndTime] <= '" + endEndTime + "'"); } switch (searchStatus) { case "1": CheckCondition(stringBuilder); stringBuilder.Append("[StartTime] > '" + DateTime.Now + "'"); break; case "2": CheckCondition(stringBuilder); stringBuilder.Append("'" + DateTime.Now + "' Between [StartTime] And [EndTime]"); break; case "3": CheckCondition(stringBuilder); stringBuilder.Append("([EndTime] < '" + DateTime.Now + "' or [Status] = 3)"); break; } var condition = stringBuilder.ToString(); List<Promote_Limited_Discount> list; try { var paging = new Paging( "[view_Promote_Limited_Discount]", null, "[ID]", condition, request.Page, request.PageSize, "[CreateTime]", 1); int pageCount; list = this.promoteLimitedDiscountService.Query(paging, out pageCount, out totalCount); } catch (Exception exception) { throw new Exception(exception.Message, exception); } if (list != null) { var modelList = new List<PromoteLimitedDiscountModel>(); foreach (var limitedDiscount in list) { modelList.Add( DataTransfer.Transfer<PromoteLimitedDiscountModel>(limitedDiscount, typeof(Promote_Limited_Discount))); } var data = new DataSource { Data = modelList, Total = totalCount }; return this.Json(data, JsonRequestBehavior.AllowGet); } return this.Json(string.Empty); }
/// <summary> /// 验证相同商品是否参与其他促销. /// </summary> /// <param name="productIDs"> /// The product I Ds. /// </param> /// <returns> /// 已参加活动的商品. /// </returns> private string VerifyPromote(string productIDs) { if (string.IsNullOrEmpty(productIDs)) { return ""; } var sb = new StringBuilder(); this.promoteLimitedDiscountService = new PromoteLimitedDiscountService(); var list = this.promoteLimitedDiscountService.QueryByPromoteProduct(productIDs); if (list != null) { foreach (var productSearchResult in list) { sb.Append(productSearchResult.Name + ";"); } return sb.ToString(); } return ""; }
public JsonResult ModifyLimitedDiscount([DataSourceRequest] DataSourceRequest request, PromoteLimitedDiscountModel promoteLimitedDiscountModel) { try { if (promoteLimitedDiscountModel != null) { this.promoteLimitedDiscountService = new PromoteLimitedDiscountService(); var promoteLimitedDiscount = DataTransfer.Transfer<Promote_Limited_Discount>( promoteLimitedDiscountModel, typeof(PromoteLimitedDiscountModel)); this.promoteLimitedDiscountService.Modify(promoteLimitedDiscount); } return this.Json(new[] { promoteLimitedDiscountModel }.ToDataSourceResult(request, this.ModelState)); } catch { return this.Json(string.Empty); } }