예제 #1
0
        public static CouponItemInfo GetUserCouponInfo(decimal orderAmount, string claimCode)
        {
            if (string.IsNullOrEmpty(claimCode))
            {
                return(null);
            }
            CouponItemInfo userCouponInfo = ShoppingProcessor.GetUserCouponInfo(claimCode);

            if (userCouponInfo != null)
            {
                decimal?orderUseLimit = userCouponInfo.OrderUseLimit;
                int     num;
                if (!(orderUseLimit.GetValueOrDefault() > default(decimal)) || !orderUseLimit.HasValue || !(orderAmount >= userCouponInfo.OrderUseLimit.Value))
                {
                    orderUseLimit = userCouponInfo.OrderUseLimit;
                    num           = ((orderUseLimit.GetValueOrDefault() == default(decimal) && orderUseLimit.HasValue) ? 1 : 0);
                }
                else
                {
                    num = 1;
                }
                if (num != 0)
                {
                    return(userCouponInfo);
                }
            }
            return(null);
        }
예제 #2
0
        public static bool PointChageCoupon(int couponId, int needPoint, int currentPoint)
        {
            Member        user  = HiContext.Current.User as Member;
            UserPointInfo point = new UserPointInfo {
                OrderId   = string.Empty,
                UserId    = user.UserId,
                TradeDate = DateTime.Now,
                TradeType = UserPointTradeType.ChangeCoupon,
                Increased = null,
                Reduced   = new int?(needPoint),
                Points    = currentPoint - needPoint
            };

            if ((point.Points >= 0) && TradeProvider.Instance().AddMemberPoint(point))
            {
                CouponItemInfo couponItem = new CouponItemInfo {
                    CouponId     = couponId,
                    UserId       = new int?(user.UserId),
                    UserName     = user.Username,
                    EmailAddress = user.Email,
                    ClaimCode    = Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15),
                    GenerateTime = DateTime.Now
                };
                Users.ClearUserCache(user);
                if (TradeProvider.Instance().SendClaimCodes(couponItem))
                {
                    return(true);
                }
            }
            return(false);
        }
        public void CopyRedEnvelope(string openId, MemberInfo memberInfo)
        {
            IList <RedEnvelopeGetRecordInfo> list = WeiXinRedEnvelopeProcessor.GettWaitToUserRedEnvelopeGetRecord(openId);

            foreach (RedEnvelopeGetRecordInfo item in list)
            {
                WeiXinRedEnvelopeInfo weiXinRedEnvelope = WeiXinRedEnvelopeProcessor.GetWeiXinRedEnvelope(item.RedEnvelopeId);
                if (weiXinRedEnvelope != null)
                {
                    CouponItemInfo couponItemInfo = new CouponItemInfo();
                    couponItemInfo.UserId             = memberInfo.UserId;
                    couponItemInfo.UserName           = memberInfo.UserName;
                    couponItemInfo.CanUseProducts     = "";
                    couponItemInfo.ClosingTime        = weiXinRedEnvelope.EffectivePeriodEndTime;
                    couponItemInfo.CouponId           = 0;
                    couponItemInfo.RedEnvelopeId      = weiXinRedEnvelope.Id;
                    couponItemInfo.CouponName         = weiXinRedEnvelope.Name;
                    couponItemInfo.OrderUseLimit      = weiXinRedEnvelope.EnableUseMinAmount;
                    couponItemInfo.Price              = item.Amount;
                    couponItemInfo.StartTime          = weiXinRedEnvelope.EffectivePeriodStartTime;
                    couponItemInfo.UseWithGroup       = false;
                    couponItemInfo.UseWithPanicBuying = false;
                    couponItemInfo.GetDate            = DateTime.Now;
                    if (WeiXinRedEnvelopeProcessor.SetRedEnvelopeGetRecordToMember(item.Id, memberInfo.UserName))
                    {
                        CouponActionStatus couponActionStatus = CouponHelper.AddRedEnvelopeItemInfo(couponItemInfo);
                    }
                }
            }
        }
예제 #4
0
        public static bool SendClaimCodesList(CouponItemInfo couponItemInfo, int count)
        {
            bool     result   = false;
            Database database = DatabaseFactory.CreateDatabase();

            using (System.Data.Common.DbConnection dbConnection = database.CreateConnection())
            {
                dbConnection.Open();
                System.Data.Common.DbTransaction dbTransaction = dbConnection.BeginTransaction();
                try
                {
                    for (int i = 0; i < count; i++)
                    {
                        new CouponDao().SendClaimCodes(couponItemInfo, dbTransaction);
                    }
                }
                catch
                {
                    dbTransaction.Rollback();
                    result = false;
                }
                finally
                {
                    dbConnection.Close();
                }
                result = true;
            }
            return(result);
        }
예제 #5
0
 protected override void AttachChildControls()
 {
     this.pointList    = (Common_Point_PointList)this.FindControl("Common_Point_PointList");
     this.pager        = (Pager)this.FindControl("pager");
     this.litUserPoint = (Literal)this.FindControl("litUserPoint");
     this.litMyCoupons = (Literal)this.FindControl("litMyCoupons");
     PageTitle.AddSiteNameTitle("我的积分");
     this.pointList.ItemDataBound += this.pointList_ItemDataBound;
     if (!this.Page.IsPostBack)
     {
         this.BindPoint();
         CouponItemInfo couponItemInfo = new CouponItemInfo();
         couponItemInfo.CouponStatus = 0;
         MemberInfo user = HiContext.Current.User;
         if (user.UserId != 0)
         {
             Literal literal = this.litUserPoint;
             int     num     = user.Points;
             literal.Text = num.ToString();
             Literal literal2 = this.litMyCoupons;
             num           = CouponHelper.GetUserObtainCouponNum(HiContext.Current.UserId);
             literal2.Text = num.ToString();
         }
     }
 }
예제 #6
0
        public static int CheckUsePurview(CouponInfo couponInfo, CouponItemInfo itemInfo, decimal totalMoney, string cartId)
        {
            if (itemInfo.UseTimes >= couponInfo.LimitNum)
            {
                return(1);
            }
            if (DateTime.Today > couponInfo.UseEndDate)
            {
                return(2);
            }
            if (totalMoney < couponInfo.OrderTotalMoney)
            {
                return(3);
            }
            switch (couponInfo.ProductLimitType)
            {
            case ProductLimitType.NominateModel:
                if (CheckModelForUseCoupon(cartId, couponInfo.ProductLimitContent))
                {
                    break;
                }
                return(4);

            case ProductLimitType.NominateProduct:
                if (CheckProductForUseCoupon(cartId, couponInfo.ProductLimitContent))
                {
                    break;
                }
                return(5);
            }
            return(0x63);
        }
예제 #7
0
 public bool SendClaimCodes(int couponId, CouponItemInfo couponItem)
 {
     System.Data.Common.DbCommand sqlStringCommand = this.database.GetSqlStringCommand("INSERT INTO Hishop_CouponItems(CouponId, ClaimCode,LotNumber, GenerateTime, UserId,UserName,EmailAddress,CouponStatus) VALUES(@CouponId, @ClaimCode,@LotNumber, @GenerateTime, @UserId, @UserName,@EmailAddress,@CouponStatus)");
     this.database.AddInParameter(sqlStringCommand, "CouponId", System.Data.DbType.Int32, couponId);
     this.database.AddInParameter(sqlStringCommand, "ClaimCode", System.Data.DbType.String, couponItem.ClaimCode);
     this.database.AddInParameter(sqlStringCommand, "GenerateTime", System.Data.DbType.DateTime, couponItem.GenerateTime);
     this.database.AddInParameter(sqlStringCommand, "UserId", System.Data.DbType.Int32);
     this.database.AddInParameter(sqlStringCommand, "UserName", System.Data.DbType.String);
     this.database.AddInParameter(sqlStringCommand, "LotNumber", System.Data.DbType.Guid, Guid.NewGuid());
     if (couponItem.UserId.HasValue)
     {
         this.database.SetParameterValue(sqlStringCommand, "UserId", couponItem.UserId.Value);
     }
     else
     {
         this.database.SetParameterValue(sqlStringCommand, "UserId", DBNull.Value);
     }
     if (!string.IsNullOrEmpty(couponItem.UserName))
     {
         this.database.SetParameterValue(sqlStringCommand, "UserName", couponItem.UserName);
     }
     else
     {
         this.database.SetParameterValue(sqlStringCommand, "UserName", DBNull.Value);
     }
     this.database.AddInParameter(sqlStringCommand, "EmailAddress", System.Data.DbType.String, couponItem.EmailAddress);
     this.database.AddInParameter(sqlStringCommand, "CouponStatus", System.Data.DbType.String, 0);
     return(this.database.ExecuteNonQuery(sqlStringCommand) >= 1);
 }
예제 #8
0
        private void btnSend_Click(object sender, EventArgs e)
        {
            CouponItemInfo         item           = new CouponItemInfo();
            IList <CouponItemInfo> listCouponItem = new List <CouponItemInfo>();
            IList <Member>         memdersByNames = new List <Member>();

            if (rdoName.Checked)
            {
                if (!string.IsNullOrEmpty(txtMemberNames.Text.Trim()))
                {
                    IList <string> names    = new List <string>();
                    string[]       strArray = txtMemberNames.Text.Trim().Replace("\r\n", "\n").Replace("\n", "*").Split(new char[] { '*' });
                    for (int i = 0; i < strArray.Length; i++)
                    {
                        if (IsMembers(strArray[i]))
                        {
                            names.Add(strArray[i]);
                        }
                    }
                    memdersByNames = PromoteHelper.GetMemdersByNames(names);
                }
                string claimCode = string.Empty;
                foreach (Member member in memdersByNames)
                {
                    claimCode = Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                    item      = new CouponItemInfo(couponId, claimCode, new int?(member.UserId), member.Email, DateTime.Now);
                    listCouponItem.Add(item);
                }
                if (listCouponItem.Count <= 0)
                {
                    ShowMsg("你输入的会员名中没有一个正确的,请输入正确的会员名", false);
                    return;
                }
                CouponHelper.SendClaimCodes(couponId, listCouponItem);
                txtMemberNames.Text = string.Empty;
                ShowMsg(string.Format("此次发送操作已成功,优惠券发送数量:{0}", listCouponItem.Count), true);
            }
            if (rdoRank.Checked)
            {
                memdersByNames = PromoteHelper.GetMembersByRank(rankList.SelectedValue);
                string str2 = string.Empty;
                foreach (Member member2 in memdersByNames)
                {
                    str2 = Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                    item = new CouponItemInfo(couponId, str2, new int?(member2.UserId), member2.Email, DateTime.Now);
                    listCouponItem.Add(item);
                }
                if (listCouponItem.Count <= 0)
                {
                    ShowMsg("您选择的会员等级下面没有会员", false);
                }
                else
                {
                    CouponHelper.SendClaimCodes(couponId, listCouponItem);
                    txtMemberNames.Text = string.Empty;
                    ShowMsg(string.Format("此次发送操作已成功,优惠券发送数量:{0}", listCouponItem.Count), true);
                }
            }
        }
예제 #9
0
        private void btnSend_Click(object sender, System.EventArgs e)
        {
            CouponItemInfo item = new CouponItemInfo();

            System.Collections.Generic.IList <CouponItemInfo> list = new System.Collections.Generic.List <CouponItemInfo>();
            System.Collections.Generic.IList <Hidistro.Membership.Context.Member> list2 = new System.Collections.Generic.List <Hidistro.Membership.Context.Member>();
            if (this.rdoName.Checked)
            {
                if (!string.IsNullOrEmpty(this.txtMemberNames.Text.Trim()))
                {
                    System.Collections.Generic.IList <string> list3 = new System.Collections.Generic.List <string>();
                    string   text  = this.txtMemberNames.Text.Trim().Replace("\r\n", "\n");
                    string[] array = text.Replace("\n", "*").Split(new char[]
                    {
                        '*'
                    });
                    for (int i = 0; i < array.Length; i++)
                    {
                        list3.Add(array[i]);
                    }
                    list2 = PromoteHelper.GetMemdersByNames(list3);
                }
                string claimCode = string.Empty;
                foreach (Hidistro.Membership.Context.Member current in list2)
                {
                    claimCode = System.Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                    item      = new CouponItemInfo(this.couponId, claimCode, new int?(current.UserId), current.Username, current.Email, System.DateTime.Now);
                    list.Add(item);
                }
                if (list.Count <= 0)
                {
                    this.ShowMsg("你输入的会员名中没有一个正确的,请输入正确的会员名", false);
                    return;
                }
                CouponHelper.SendClaimCodes(this.couponId, list);
                this.txtMemberNames.Text = string.Empty;
                this.ShowMsg(string.Format("此次发送操作已成功,优惠券发送数量:{0}", list.Count), true);
            }
            if (this.rdoRank.Checked)
            {
                list2 = PromoteHelper.GetMembersByRank(this.rankList.SelectedValue);
                string claimCode2 = string.Empty;
                foreach (Hidistro.Membership.Context.Member current2 in list2)
                {
                    claimCode2 = System.Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                    item       = new CouponItemInfo(this.couponId, claimCode2, new int?(current2.UserId), current2.Username, current2.Email, System.DateTime.Now);
                    list.Add(item);
                }
                if (list.Count <= 0)
                {
                    this.ShowMsg("您选择的会员等级下面没有会员", false);
                    return;
                }
                CouponHelper.SendClaimCodes(this.couponId, list);
                this.txtMemberNames.Text = string.Empty;
                this.ShowMsg(string.Format("此次发送操作已成功,优惠券发送数量:{0}", list.Count), true);
            }
        }
예제 #10
0
        private void setFromMember(System.Web.HttpContext context)
        {
            try
            {
                context.Response.ContentType = "application/json";
                int num          = 0;
                int frommemberid = 0;
                if (int.TryParse(context.Request["frommemberid"], out num))
                {
                    frommemberid = num;
                }
                MemberInfo currentMember = MemberProcessor.GetCurrentMember();
                MemberInfo fromMember    = MemberProcessor.GetMember(frommemberid);

                WriteLog("frommemberid:" + frommemberid.ToString());

                bool flag = false;
                if (currentMember != null)
                {
                    //设置推荐人id
                    if (MemberProcessor.SetFromUserId(frommemberid, currentMember.UserId))
                    {
                        WriteLog("currentmember:" + currentMember.UserId);
                        WriteLog("frommember:" + fromMember.UserId);
                        //context.Response.Write("{\"success\":true,\"errMsg\":\"匹配到了未绑定的门店,或者门店还未通过审核!\"}");
                        //成功设置后给推荐人发放优惠券
                        SiteSettings masterSettings = SettingsManager.GetMasterSettings(false);
                        CouponInfo   sendCoupon     = CouponHelper.GetCoupon(masterSettings.friendCouponId);
                        if (sendCoupon != null)
                        {
                            IList <CouponItemInfo> listCouponItem = new List <CouponItemInfo>();
                            CouponItemInfo         item           = new CouponItemInfo();
                            string claimCode = string.Empty;
                            claimCode = System.Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                            item      = new CouponItemInfo(sendCoupon.CouponId, claimCode, new int?(fromMember.UserId), fromMember.UserName, fromMember.Email, System.DateTime.Now);
                            listCouponItem.Add(item);
                            CouponHelper.SendClaimCodes(sendCoupon.CouponId, listCouponItem);
                            flag = true;
                        }
                        WriteLog("flag:" + flag);
                    }
                }

                if (flag)
                {
                    context.Response.Write("{\"success\":1}");
                }
                else
                {
                    context.Response.Write("{\"success\":2}");
                }
            }
            catch (Exception ex)
            {
                WriteLog(ex.Message);
            }
        }
예제 #11
0
        public void CopyRedEnvelope(string openId, MemberInfo memberInfo)
        {
            IDictionary <string, string> dictionary = new Dictionary <string, string>();

            dictionary.Add("OpenId", openId);
            dictionary.Add("UserName", memberInfo.UserName);
            try
            {
                IList <RedEnvelopeGetRecordInfo> list = WeiXinRedEnvelopeProcessor.GettWaitToUserRedEnvelopeGetRecord(openId);
                if (list == null || list.Count == 0)
                {
                    dictionary.Add("RedEnvelopeErrMsg", "红包记录为空");
                }
                int num = 1;
                foreach (RedEnvelopeGetRecordInfo item in list)
                {
                    WeiXinRedEnvelopeInfo weiXinRedEnvelope = WeiXinRedEnvelopeProcessor.GetWeiXinRedEnvelope(item.RedEnvelopeId);
                    if (weiXinRedEnvelope == null)
                    {
                        dictionary.Add("RedEnvelopeErrMsg" + num, "红包信息为空" + item.RedEnvelopeId.ToNullString());
                    }
                    else
                    {
                        CouponItemInfo couponItemInfo = new CouponItemInfo();
                        couponItemInfo.UserId             = memberInfo.UserId;
                        couponItemInfo.UserName           = memberInfo.UserName;
                        couponItemInfo.CanUseProducts     = "";
                        couponItemInfo.ClosingTime        = weiXinRedEnvelope.EffectivePeriodEndTime;
                        couponItemInfo.RedEnvelopeId      = weiXinRedEnvelope.Id;
                        couponItemInfo.CouponName         = weiXinRedEnvelope.Name;
                        couponItemInfo.OrderUseLimit      = weiXinRedEnvelope.EnableUseMinAmount;
                        couponItemInfo.Price              = item.Amount;
                        couponItemInfo.StartTime          = weiXinRedEnvelope.EffectivePeriodStartTime;
                        couponItemInfo.UseWithGroup       = false;
                        couponItemInfo.UseWithPanicBuying = false;
                        couponItemInfo.GetDate            = DateTime.Now;
                        if (WeiXinRedEnvelopeProcessor.SetRedEnvelopeGetRecordToMember(item.Id, memberInfo.UserName))
                        {
                            CouponActionStatus couponActionStatus = CouponHelper.AddRedEnvelopeItemInfo(couponItemInfo);
                            if (couponActionStatus != 0)
                            {
                                dictionary.Add("SendDiffentTypeClaimCodesErrMsg" + num, "发送优惠券失败-" + couponActionStatus.ToString());
                            }
                            num++;
                        }
                        else
                        {
                            dictionary.Add("SetRedEnvelopeGetRecordToMemberErrMsg" + num, "设置红包记录给会员失败");
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Globals.WriteExceptionLog(ex, dictionary, "RedEnvelope");
            }
        }
예제 #12
0
        private static Parameters GetParameters(CouponItemInfo couponItemInfo)
        {
            Parameters parameters = new Parameters();

            parameters.AddInParameter("@CouponID", DbType.Int32, couponItemInfo.CouponId);
            parameters.AddInParameter("@CouponNum", DbType.String, couponItemInfo.CouponNum);
            parameters.AddInParameter("@UserID", DbType.Int32, couponItemInfo.UserId);
            parameters.AddInParameter("@OrderID", DbType.Int32, couponItemInfo.OrderId);
            return(parameters);
        }
예제 #13
0
        private void ReceiveCoupons(System.Web.HttpContext context)
        {
            string text = "";

            if (context.Request["couponid"] != null)
            {
                text = context.Request["couponid"].ToString();
            }
            Member member = HiContext.Current.User as Member;

            if (member == null)
            {
                this.message = "你还未登陆,请登陆";
                return;
            }
            int couponid = 0;

            if (!int.TryParse(text, out couponid))
            {
                this.message = "该链接无效";
                return;
            }

            CouponInfo couponInfo = CouponHelper.GetCoupon(couponid);

            if (couponInfo == null || couponInfo.SendType != 3 || couponInfo.StartTime.Date > DateTime.Now.Date || couponInfo.ClosingTime < DateTime.Now.Date)
            {
                this.message = "该链接无效";
                return;
            }

            int count = CouponHelper.GetCountCouponItem(couponid, member.UserId);

            if (count == 0)
            {
                string         claimCode      = System.Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                CouponItemInfo couponItemInfo = new CouponItemInfo(couponid, claimCode, new int?(member.UserId), member.Username, member.Email, System.DateTime.Now, couponInfo.StartTime, couponInfo.ClosingTime, couponInfo.Amount, couponInfo.DiscountValue);

                IList <CouponItemInfo> couponItemList = new List <CouponItemInfo>();
                couponItemList.Add(couponItemInfo);
                if (CouponHelper.SendClaimCodes(couponItemList))
                {
                    this.message = "你已成功领取该优惠券";
                }

                else
                {
                    this.message = "操作失败";
                }
            }
            else
            {
                this.message = "您已经领过该优惠券";
            }
        }
예제 #14
0
        private void GetSupplierCoupons(System.Web.HttpContext context)
        {
            string text = "";

            if (context.Request["CouponId"] != null)
            {
                text = context.Request["CouponId"].ToString();
            }
            Member member = HiContext.Current.User as Member;

            if (member == null)
            {
                this.message = "{\"Success\":false,\"Message\":\"你还未登陆,请登陆\"}";
                return;
            }
            int couponid = 0;

            if (!int.TryParse(text, out couponid))
            {
                this.message = "{\"Success\":false,\"Message\":\"该优惠卷无效\"}";
                return;
            }

            CouponInfo couponInfo = CouponHelper.GetCoupon(couponid);

            if (couponInfo == null || couponInfo.ClosingTime < DateTime.Now.Date)
            {
                this.message = "{\"Success\":false,\"Message\":\"该优惠卷无效\"}";
                return;
            }

            int count = CouponHelper.GetCountCouponItem(couponid, member.UserId);

            if (count == 0)
            {
                string         claimCode      = System.Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                CouponItemInfo couponItemInfo = new CouponItemInfo(couponid, claimCode, new int?(member.UserId), member.Username, member.Email, System.DateTime.Now, couponInfo.StartTime, couponInfo.ClosingTime, couponInfo.Amount, couponInfo.DiscountValue);

                IList <CouponItemInfo> couponItemList = new List <CouponItemInfo>();
                couponItemList.Add(couponItemInfo);
                if (CouponHelper.SendClaimCodes(couponItemList))
                {
                    this.message = "{\"Success\":true,\"Message\":\"成功领取该优惠券\"}";
                }

                else
                {
                    this.message = "{\"Success\":false,\"Message\":\"该优惠卷无效\"}";
                }
            }
            else
            {
                this.message = "{\"Success\":false,\"Message\":\"您已经领过该优惠券\"}";
            }
        }
예제 #15
0
        private static void CreateCoupon(CouponInfo couponInfo, int userId)
        {
            string         randStringByPattern = RandomManage.GetRandStringByPattern(couponInfo.CouponNumPattern);
            CouponItemInfo couponItemInfo      = new CouponItemInfo();

            couponItemInfo.CouponId  = couponInfo.CouponId;
            couponItemInfo.CouponNum = randStringByPattern;
            couponItemInfo.UserId    = userId;
            couponItemInfo.OrderId   = 0;
            CouponItem.Add(couponItemInfo);
        }
예제 #16
0
        protected void BtnCoupon_Click(object sender, EventArgs e)
        {
            if (this.Page.IsValid)
            {
                CouponItemInfo couponItemInfo = CouponItem.GetCouponItemInfo(this.TxtCouponNum.Text, PEContext.Current.User.UserId);
                if (couponItemInfo.IsNull)
                {
                    this.LblUseCouponMsg.Text = "对不起,不存在该优惠券,或者该优惠券您没有使用权限!";
                }
                else
                {
                    decimal    totalMoney     = DataConverter.CDecimal(this.HdnTotalMoney.Value);
                    CouponInfo couponInfoById = Coupon.GetCouponInfoById(couponItemInfo.CouponId);
                    string     str            = "";
                    switch (Coupon.CheckUsePurview(couponInfoById, couponItemInfo, totalMoney, this.FlowInfo.ShoppingCartId))
                    {
                    case 1:
                        str = "对不起,该优惠券使用次数已经超过限用次数,不能再使用!";
                        break;

                    case 2:
                        str = "对不起,该优惠券已经过期,不能再使用!";
                        break;

                    case 3:
                        str = "对不起,使用该优惠券需要订单总额达到" + couponInfoById.OrderTotalMoney.ToString("0.00") + "元!";
                        break;

                    case 4:
                    case 5:
                        str = "对不起,需购买指定的商品才能使用该优惠券!";
                        break;
                    }
                    if (!string.IsNullOrEmpty(str))
                    {
                        this.LblUseCouponMsg.Text = str;
                    }
                    else
                    {
                        this.LblUseCouponMsg.Text      = "使用" + couponInfoById.CouponName + ",面值为" + couponInfoById.Money.ToString("0.00") + "元";
                        this.LblUseCouponMsg.ForeColor = Color.Blue;
                        this.ShoppingCart1.CouponMoney = couponInfoById.Money;
                        this.LbtnCancelCoupon.Visible  = true;
                        this.HdnCouponID.Value         = couponInfoById.CouponId.ToString();
                    }
                }
                this.ShoppingCart1.UseCoupon   = true;
                this.ShoppingCart1.CartId      = this.FlowInfo.ShoppingCartId;
                this.ShoppingCart1.ZipCode     = this.FlowInfo.ZipCode;
                this.ShoppingCart1.PaymentType = this.FlowInfo.PaymentType;
                this.ShoppingCart1.DeliverType = this.FlowInfo.DeliverType;
                this.ShoppingCart1.NeedInvoice = this.FlowInfo.NeedInvoice;
            }
        }
예제 #17
0
        public static CouponItemInfo GetItemInfoFromrdataReader(NullableDataReader dataReader)
        {
            CouponItemInfo info = new CouponItemInfo();

            info.Id        = dataReader.GetInt32("ID");
            info.CouponId  = dataReader.GetInt32("CouponID");
            info.CouponNum = dataReader.GetString("CouponNum");
            info.OrderId   = dataReader.GetInt32("OrderID");
            info.UserId    = dataReader.GetInt32("UserID");
            info.UseTimes  = dataReader.GetInt32("UseTimes");
            return(info);
        }
예제 #18
0
        public static CouponActionStatus UserGetCoupon(MemberInfo user, int couponId)
        {
            CouponInfo eFCoupon = CouponHelper.GetEFCoupon(couponId);

            if (eFCoupon == null)
            {
                return(CouponActionStatus.NotExists);
            }
            if (user == null)
            {
                return(CouponActionStatus.InconsistentInformationUser);
            }
            if (eFCoupon.ClosingTime < DateTime.Now)
            {
                return(CouponActionStatus.Overdue);
            }
            if (eFCoupon.ObtainWay != 0)
            {
                return(CouponActionStatus.CanNotGet);
            }
            int couponSurplus = CouponHelper.GetCouponSurplus(couponId);

            if (couponSurplus <= 0)
            {
                return(CouponActionStatus.InadequateInventory);
            }
            int couponObtainNum = CouponHelper.GetCouponObtainNum(couponId, user.UserId);

            if (couponObtainNum >= eFCoupon.UserLimitCount && eFCoupon.UserLimitCount > 0)
            {
                return(CouponActionStatus.CannotReceive);
            }
            CouponItemInfo couponItemInfo = new CouponItemInfo();

            couponItemInfo.UserId             = user.UserId;
            couponItemInfo.UserName           = user.UserName;
            couponItemInfo.CanUseProducts     = eFCoupon.CanUseProducts;
            couponItemInfo.CouponId           = eFCoupon.CouponId;
            couponItemInfo.CouponName         = eFCoupon.CouponName;
            couponItemInfo.OrderUseLimit      = eFCoupon.OrderUseLimit;
            couponItemInfo.Price              = eFCoupon.Price;
            couponItemInfo.StartTime          = eFCoupon.StartTime;
            couponItemInfo.ClosingTime        = eFCoupon.ClosingTime;
            couponItemInfo.UseWithGroup       = eFCoupon.UseWithGroup;
            couponItemInfo.UseWithPanicBuying = eFCoupon.UseWithPanicBuying;
            couponItemInfo.UseWithFireGroup   = eFCoupon.UseWithFireGroup;
            couponItemInfo.ClaimCode          = Guid.NewGuid().ToString();
            couponItemInfo.GetDate            = DateTime.Now;
            return(CouponHelper.AddCouponItem(couponItemInfo));
        }
예제 #19
0
        private void btnSend_Click(object sender, EventArgs e)
        {
            CouponItemInfo         item             = new CouponItemInfo();
            IList <CouponItemInfo> listCouponItem   = new List <CouponItemInfo>();
            IList <MemberInfo>     memdersByOpenIds = new List <MemberInfo>();

            if (this.rdoName.Checked)
            {
                if (!string.IsNullOrEmpty(this.txtMemberNames.Text.Trim()))
                {
                    memdersByOpenIds = MemberHelper.GetMemdersByOpenIds("'" + this.txtMemberNames.Text.Trim().Replace("\r\n", "\n").Replace("\n", "','") + "'");
                }
                string claimCode = string.Empty;
                foreach (MemberInfo info2 in memdersByOpenIds)
                {
                    claimCode = Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                    item      = new CouponItemInfo(this.couponId, claimCode, new int?(info2.UserId), info2.UserName, info2.Email, DateTime.Now);
                    listCouponItem.Add(item);
                }
                if (listCouponItem.Count <= 0)
                {
                    this.ShowMsg("你输入的OpenId中没有一个正确的,请输入正确的OpenId", false);
                    return;
                }
                CouponHelper.SendClaimCodes(this.couponId, listCouponItem);
                this.txtMemberNames.Text = string.Empty;
                this.ShowMsg(string.Format("此次发送操作已成功,优惠券发送数量:{0}", listCouponItem.Count), true);
            }
            if (this.rdoRank.Checked)
            {
                memdersByOpenIds = MemberHelper.GetMembersByRank(this.rankList.SelectedValue);
                string str3 = string.Empty;
                foreach (MemberInfo info3 in memdersByOpenIds)
                {
                    str3 = Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                    item = new CouponItemInfo(this.couponId, str3, new int?(info3.UserId), info3.UserName, info3.Email, DateTime.Now);
                    listCouponItem.Add(item);
                }
                if (listCouponItem.Count <= 0)
                {
                    this.ShowMsg("您选择的会员等级下面没有会员", false);
                }
                else
                {
                    CouponHelper.SendClaimCodes(this.couponId, listCouponItem);
                    this.txtMemberNames.Text = string.Empty;
                    this.ShowMsg(string.Format("此次发送操作已成功,优惠券发送数量:{0}", listCouponItem.Count), true);
                }
            }
        }
예제 #20
0
 public static CouponActionStatus AddRedEnvelopeItemInfo(CouponItemInfo couponItemInfo)
 {
     if (!couponItemInfo.RedEnvelopeId.HasValue || WeiXinRedEnvelopeProcessor.GetWeiXinRedEnvelope(couponItemInfo.RedEnvelopeId.Value) == null)
     {
         return(CouponActionStatus.NotExists);
     }
     if (couponItemInfo.UserId <= 0)
     {
         return(CouponActionStatus.InconsistentInformationUser);
     }
     if (string.IsNullOrEmpty(couponItemInfo.ClaimCode))
     {
         couponItemInfo.ClaimCode = Guid.NewGuid().ToString();
     }
     return(new WeiXinRedEnvelopeDao().AddWeiXinRedEnvelopeToUser(couponItemInfo));
 }
예제 #21
0
        /// <summary>
        /// 微信新用户注册用60元大礼包,在活动页面手动领取
        /// </summary>
        /// <param name="context"></param>
        private void GetRegisterCoupons(System.Web.HttpContext context)
        {
            Member member = HiContext.Current.User as Member;

            if (member == null)
            {
                this.message = "{\"Success\":false,\"Message\":\"你还未登陆,请登陆\"}";
                return;
            }

            int count = CouponHelper.GetCountCouponItemed(member.UserId, 3);

            if (count == 0)
            {
                IList <CouponInfo>     couponList     = CouponHelper.GetCouponsBySendType(3);
                IList <CouponItemInfo> couponItemList = new List <CouponItemInfo>();
                string claimCode = string.Empty;
                if (couponList != null && couponList.Count > 0)
                {
                    foreach (CouponInfo coupon in couponList)
                    {
                        CouponItemInfo item = new CouponItemInfo();
                        claimCode = System.Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                        item      = new CouponItemInfo(coupon.CouponId, claimCode, new int?(member.UserId), member.Username, member.Email, System.DateTime.Now, coupon.StartTime, coupon.ClosingTime, coupon.Amount, coupon.DiscountValue);
                        couponItemList.Add(item);
                    }
                }
                else
                {
                    this.message = "{\"Success\":false,\"Message\":\"没有可以领取的优惠券\"}";
                    return;
                }
                if (CouponHelper.SendClaimCodes(couponItemList))
                {
                    this.message = "{\"Success\":true,\"Message\":\"成功领取该优惠券\"}";
                }

                else
                {
                    this.message = "{\"Success\":false,\"Message\":\"该优惠卷无效\"}";
                }
            }
            else
            {
                this.message = "{\"Success\":false,\"Message\":\"您已经领过该优惠券\"}";
            }
        }
예제 #22
0
        public void AddCouponItemInfo(OAuthUserInfo oAuthUserInfo, RedEnvelopeGetRecordInfo redEnvelopeGetRecord)
        {
            CouponItemInfo couponItemInfo = new CouponItemInfo();
            MemberInfo     memberInfo     = null;

            memberInfo = ((HiContext.Current.UserId <= 0) ? MemberProcessor.GetMemberByOpenId("hishop.plugins.openid.weixin", oAuthUserInfo.OpenId) : HiContext.Current.User);
            if (memberInfo == null)
            {
                IDictionary <string, string> dictionary = new Dictionary <string, string>();
                dictionary.Add("OpenId", oAuthUserInfo.OpenId);
                dictionary.Add("IsAttention", oAuthUserInfo.IsAttention.ToNullString());
                dictionary.Add("unionId", oAuthUserInfo.unionId);
                dictionary.Add("NickName", oAuthUserInfo.NickName);
                dictionary.Add("ErrMsg", oAuthUserInfo.ErrMsg);
                dictionary.Add("RedEnvelopeId", redEnvelopeGetRecord.RedEnvelopeId.ToNullString());
                dictionary.Add("UserName", redEnvelopeGetRecord.UserName.ToNullString());
                dictionary.Add("OrderId", redEnvelopeGetRecord.OrderId.ToNullString());
                dictionary.Add("RedOpenId", redEnvelopeGetRecord.OpenId.ToNullString());
                dictionary.Add("SendCode", redEnvelopeGetRecord.SendCode.ToNullString());
                Globals.AppendLog(dictionary, "", "", "", "AddCouponItemInfo");
                this.toLogin.Visible    = true;
                this.toBuy.Visible      = false;
                this.divGetList.Visible = false;
            }
            else
            {
                couponItemInfo.UserId             = memberInfo.UserId;
                couponItemInfo.UserName           = redEnvelopeGetRecord.UserName;
                couponItemInfo.CanUseProducts     = "";
                couponItemInfo.ClosingTime        = this.weiXinRedEnvelope.EffectivePeriodEndTime;
                couponItemInfo.CouponId           = 0;
                couponItemInfo.RedEnvelopeId      = this.weiXinRedEnvelope.Id;
                couponItemInfo.CouponName         = this.weiXinRedEnvelope.Name;
                couponItemInfo.OrderUseLimit      = this.weiXinRedEnvelope.EnableUseMinAmount;
                couponItemInfo.Price              = redEnvelopeGetRecord.Amount;
                couponItemInfo.StartTime          = this.weiXinRedEnvelope.EffectivePeriodStartTime;
                couponItemInfo.UseWithGroup       = false;
                couponItemInfo.UseWithPanicBuying = false;
                couponItemInfo.UseWithFireGroup   = false;
                couponItemInfo.GetDate            = DateTime.Now;
                if (WeiXinRedEnvelopeProcessor.SetRedEnvelopeGetRecordToMember(redEnvelopeGetRecord.Id, memberInfo.UserName))
                {
                    CouponActionStatus couponActionStatus = CouponHelper.AddRedEnvelopeItemInfo(couponItemInfo);
                }
            }
        }
예제 #23
0
        /// <summary>
        /// 新用户注册赠送优惠券
        /// </summary>
        /// <param name="member"></param>
        /// <returns></returns>
        public static bool NewUserSendRegisterCoupon(Member member)
        {
            ErrorLog.Write("Begin优惠券");
            bool Flag  = true;
            int  count = CouponHelper.GetCountCouponItemed(member.UserId, 5);

            if (count == 0)
            {
                // 获取有效时间内注册赠劵的数量
                IList <CouponInfo>     couponList     = CouponHelper.GetCouponsBySendType(5);
                IList <CouponItemInfo> couponItemList = new List <CouponItemInfo>();
                string claimCode = string.Empty;
                if (couponList != null && couponList.Count > 0)
                {
                    foreach (CouponInfo coupon in couponList)
                    {
                        ErrorLog.Write("开始进入优惠券1:Validity:" + coupon.Validity + ";Createdate:" + member.CreateDate + ";StartTime:" + coupon.StartTime + "");
                        CouponItemInfo item = new CouponItemInfo();
                        claimCode = System.Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                        if (coupon.Validity > 0 && member.CreateDate >= coupon.StartTime)
                        {
                            ErrorLog.Write("开始进入优惠券2:Validity:" + coupon.Validity + ";Createdate:" + member.CreateDate + ";StartTime:" + coupon.StartTime + "");
                            coupon.StartTime   = member.CreateDate;
                            coupon.ClosingTime = member.CreateDate.AddDays(coupon.Validity);
                        }
                        else if (coupon.Validity > 0 && member.CreateDate < coupon.StartTime)
                        {
                            coupon.StartTime   = DateTime.Now;
                            coupon.ClosingTime = DateTime.Now.AddDays(coupon.Validity);
                        }
                        ErrorLog.Write("开始进入优惠券3:Validity:" + coupon.Validity + ";StartTime:" + coupon.StartTime + ";ClosingTime:" + coupon.ClosingTime + "");
                        item = new CouponItemInfo(coupon.CouponId, claimCode, new int?(member.UserId), member.Username, member.Email, System.DateTime.Now, coupon.StartTime.Date, coupon.ClosingTime.Date.AddDays(1).AddSeconds(-1), coupon.Amount, coupon.DiscountValue);
                        couponItemList.Add(item);
                    }
                }
                if (couponItemList.Count > 0)
                {
                    Flag = CouponHelper.SendClaimCodes(couponItemList);
                }
                ErrorLog.Write("End优惠券");
            }
            return(Flag);
        }
예제 #24
0
        public override bool SendClaimCodes(CouponItemInfo couponItem)
        {
            DbCommand sqlStringCommand = database.GetSqlStringCommand("INSERT INTO Hishop_CouponItems(CouponId, ClaimCode,LotNumber, GenerateTime, UserId, EmailAddress) VALUES(@CouponId, @ClaimCode,@LotNumber, @GenerateTime, @UserId, @EmailAddress)");

            database.AddInParameter(sqlStringCommand, "CouponId", DbType.Int32, couponItem.CouponId);
            database.AddInParameter(sqlStringCommand, "ClaimCode", DbType.String, couponItem.ClaimCode);
            database.AddInParameter(sqlStringCommand, "GenerateTime", DbType.DateTime, couponItem.GenerateTime);
            database.AddInParameter(sqlStringCommand, "UserId", DbType.Int32);
            database.AddInParameter(sqlStringCommand, "LotNumber", DbType.Guid, Guid.NewGuid());
            if (couponItem.UserId.HasValue)
            {
                database.SetParameterValue(sqlStringCommand, "UserId", couponItem.UserId.Value);
            }
            else
            {
                database.SetParameterValue(sqlStringCommand, "UserId", DBNull.Value);
            }
            database.AddInParameter(sqlStringCommand, "EmailAddress", DbType.String, couponItem.EmailAddress);
            return(database.ExecuteNonQuery(sqlStringCommand) >= 1);
        }
예제 #25
0
        private void btnlq_Click(object sender, EventArgs e)
        {
            int             ID            = Convert.ToInt32(this.txtID.Value);
            CouponsActShare cas           = CouponHelper.GetCouponsActShare(ID);
            MemberInfo      currentMember = MemberProcessor.GetCurrentMember();

            if (!CouponHelper.CheckUserIsCoupon(currentMember.UserId, cas.CouponsID))
            {
                CouponsAct ca          = CouponHelper.GetCouponsAct(cas.CouponsActID);
                int        NowDayCount = CouponHelper.GetNowDayCount(cas.ID);
                if (ca.ColValue1 == 0 || ca.ColValue1 > NowDayCount)
                {
                    string         claimCode = System.Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                    CouponItemInfo item      = new CouponItemInfo();
                    item.CouponId     = cas.CouponsID;
                    item.ClaimCode    = claimCode;
                    item.UserId       = currentMember.UserId;
                    item.UserName     = currentMember.UserName;
                    item.EmailAddress = currentMember.Email;
                    item.GenerateTime = DateTime.Now;
                    item.FromInfo     = cas.ID;
                    //new CouponItemInfo(cas.CouponsID, claimCode, new int?(currentMember.UserId), currentMember.UserName, currentMember.Email, System.DateTime.Now,cas.ID);
                    if (CouponHelper.SendClaimCodes(cas.CouponsID, item))
                    {
                        this.Page.Response.Write("<script>alert('领取优惠卷成功!');</script>");
                    }
                    else
                    {
                        this.Page.Response.Write("<script>alert('服务器繁忙,请重新尝试!');</script>");
                    }
                }
                else
                {
                    this.Page.Response.Write("<script>alert('今天可被领取的优惠卷被领完啦,您可以转到用户中心里微信活动栏目里面分享并领取优惠卷');</script>");
                }
            }
            else
            {
                this.Page.Response.Write("<script>alert('您领取过该优惠卷啦~');</script>");
            }
        }
예제 #26
0
        /// <summary>
        /// 注册赠送优惠券
        /// </summary>
        /// <param name="members"></param>
        protected void RegistSendCoupon(IList <Member> members)
        {
            IList <CouponInfo> couponList = CouponHelper.GetCouponsBySendType(2);

            IList <CouponItemInfo> list = new System.Collections.Generic.List <CouponItemInfo>();

            string claimCode = string.Empty;

            if (couponList.Count > 0)
            {
                foreach (Member member in members)
                {
                    foreach (CouponInfo coupon in couponList)
                    {
                        CouponItemInfo item = new CouponItemInfo();
                        if (CouponHelper.GetCountCouponItem(coupon.CouponId, member.UserId) > 0)
                        {
                            continue;
                        }
                        else
                        {
                            claimCode = System.Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                            item      = new CouponItemInfo(coupon.CouponId, claimCode, new int?(member.UserId), member.Username, member.Email, System.DateTime.Now, coupon.StartTime, coupon.ClosingTime, coupon.Amount, coupon.DiscountValue);
                            list.Add(item);
                        }
                    }
                }
            }

            if (list.Count > 0)
            {
                try
                {
                    CouponHelper.SendClaimCodes(list);
                }

                catch
                {
                }
            }
        }
예제 #27
0
 protected override void AttachChildControls()
 {
     this.pointList    = (Common_Point_PointList)this.FindControl("Common_Point_PointList");
     this.pager        = (Pager)this.FindControl("pager");
     this.litUserPoint = (System.Web.UI.WebControls.Literal) this.FindControl("litUserPoint");
     this.litMyCoupons = (System.Web.UI.WebControls.Literal) this.FindControl("litMyCoupons");
     PageTitle.AddSiteNameTitle("我的积分");
     this.pointList.ItemDataBound += new System.Web.UI.WebControls.RepeaterItemEventHandler(this.pointList_ItemDataBound);
     if (!this.Page.IsPostBack)
     {
         this.BindPoint();
         CouponItemInfo couponItemInfo = new CouponItemInfo();
         couponItemInfo.CouponStatus = new int?(0);
         Member member = Users.GetUser(HiContext.Current.User.UserId, false) as Member;
         if (member != null)
         {
             this.litUserPoint.Text = member.Points.ToString();
             this.litMyCoupons.Text = TradeHelper.GetUserCoupons(member.UserId).Rows.Count.ToString();
         }
     }
 }
예제 #28
0
        private void bindCouponInfo()
        {
            DataTable dataTable = null;

            if (HiContext.Current.User != null && HiContext.Current.UserId != 0 && this.cart.GetTotal(this.storeId > 0) > decimal.Zero)
            {
                dataTable = ShoppingProcessor.GetCoupon(this.cart.GetTotal(this.storeId > 0), this.cart.LineItems, this.isGroupBuy, this.isCountDown, this.isFightGroup);
                this.rptOrderCoupon.DataSource = dataTable;
                this.rptOrderCoupon.DataBind();
            }
            if (dataTable != null && dataTable.Rows.Count > 0)
            {
                CouponItemInfo userCouponInfo = ShoppingProcessor.GetUserCouponInfo(this.cart.GetTotal(this.storeId > 0), dataTable.Rows[0]["ClaimCode"].ToString());
                if (userCouponInfo != null)
                {
                    this.litCouponAmout.InnerHtml = (userCouponInfo.Price.HasValue ? userCouponInfo.Price.Value.F2ToString("f2") : "0.00");
                    this.htmlCouponCode.Value     = userCouponInfo.ClaimCode;
                    this.couponName.InnerHtml     = "-¥" + (userCouponInfo.Price.HasValue ? userCouponInfo.Price.Value.F2ToString("f2") : "0.00");
                }
            }
        }
예제 #29
0
        public static bool PointChageCoupon(int couponId, int needPoint, int currentPoint)
        {
            Member        member        = HiContext.Current.User as Member;
            UserPointInfo userPointInfo = new UserPointInfo();

            userPointInfo.OrderId   = string.Empty;
            userPointInfo.UserId    = member.UserId;
            userPointInfo.TradeDate = DateTime.Now;
            userPointInfo.TradeType = UserPointTradeType.ChangeCoupon;
            userPointInfo.Increased = null;
            userPointInfo.Reduced   = new int?(needPoint);
            userPointInfo.Points    = currentPoint - needPoint;
            bool result;

            if (userPointInfo.Points < 0)
            {
                result = false;
            }
            else
            {
                if (TradeProvider.Instance().AddMemberPoint(userPointInfo))
                {
                    CouponItemInfo couponItemInfo = new CouponItemInfo();
                    couponItemInfo.CouponId     = couponId;
                    couponItemInfo.UserId       = new int?(member.UserId);
                    couponItemInfo.UserName     = member.Username;
                    couponItemInfo.EmailAddress = member.Email;
                    couponItemInfo.ClaimCode    = Guid.NewGuid().ToString().Replace("-", "").Substring(0, 15);
                    couponItemInfo.GenerateTime = DateTime.Now;
                    Users.ClearUserCache(member);
                    if (TradeProvider.Instance().SendClaimCodes(couponItemInfo))
                    {
                        result = true;
                        return(result);
                    }
                }
                result = false;
            }
            return(result);
        }
예제 #30
0
파일: VDefault.cs 프로젝트: tyriankid/WFX
        /// <summary>
        /// 进入主页获赠优惠券
        /// </summary>
        private void getMyCoupon()
        {
            DataTable  allCoupons = CouponHelper.GetAllCoupons();                           //优惠券列表
            DataTable  allCouponItemsClaimCode = CouponHelper.GetAllCouponItemsClaimCode(); //所有已发送优惠券的claimcode
            MemberInfo currentMember           = MemberProcessor.GetCurrentMember();

            if (currentMember == null)
            {
                return;//如果当前没有登录则不执行该方法
            }
            for (int i = 0; i < allCoupons.Rows.Count; i++)
            {
                if (allCoupons.Rows[i]["sendAtHomepage"].ToString() == "1")//如果需要在主页赠送,就开始判断该用户是否已获取过
                {
                    for (int o = 0; o < allCouponItemsClaimCode.Rows.Count; o++)
                    {
                        string currentClaimCode = allCouponItemsClaimCode.Rows[o]["ClaimCode"].ToString();
                        bool   isSend           = currentMember.UserId.ToString() == currentClaimCode.TrimStart('0');
                        if (isSend)
                        {
                            return;//如果发送过,返回
                        }
                        else
                        {
                            continue;//如果没有发送,继续循环查找
                        }
                    }
                    //发送优惠券
                    int            couponId  = Convert.ToInt32(allCoupons.Rows[i]["CouponId"]);
                    string         claimCode = currentMember.UserId.ToString("000000000000000");
                    CouponItemInfo item      = new CouponItemInfo();
                    System.Collections.Generic.IList <CouponItemInfo> listCouponItem = new System.Collections.Generic.List <CouponItemInfo>();
                    item = new CouponItemInfo(couponId, claimCode, new int?(currentMember.UserId), currentMember.UserName, currentMember.Email, System.DateTime.Now);
                    listCouponItem.Add(item);
                    CouponHelper.SendClaimCodes(couponId, listCouponItem);
                    break;
                }
            }
        }