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);
                    }
                }
            }
        }
Example #2
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");
            }
        }
Example #3
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);
                }
            }
        }