Пример #1
0
        public override void Submit_OnClick(object sender, EventArgs e)
        {
            if (IsPostBack && IsValid)
            {
                UserInfo   userInfo   = null;
                CardSNInfo cardSNInfo = null;
                if (cardSNID > 0)
                {
                    cardSNInfo = DataProviderWX.CardSNDAO.GetCardSNInfo(cardSNID);
                }
                else
                {
                    if (ddlKeyWordType.SelectedValue == "cardSN")
                    {
                        cardSNInfo = DataProviderWX.CardSNDAO.GetCardSNInfo(PublishmentSystemID, TranslateUtils.ToInt(ddlCard.SelectedValue), tbKeyWord.Text, string.Empty);
                    }
                    else if (ddlKeyWordType.SelectedValue == "mobile")
                    {
                        var userID = BaiRongDataProvider.UserDao.GetUserIdByEmailOrMobile(string.Empty, tbKeyWord.Text);
                        userInfo = BaiRongDataProvider.UserDao.GetUserInfo(userID);
                        if (userInfo != null)
                        {
                            cardSNInfo = DataProviderWX.CardSNDAO.GetCardSNInfo(PublishmentSystemID, TranslateUtils.ToInt(ddlCard.SelectedValue), string.Empty, userInfo.UserName);
                        }
                    }
                }

                if (cardSNInfo == null)
                {
                    FailMessage("会员卡不存在");
                    return;
                }

                var cardCashLogInfo = new CardCashLogInfo();
                cardCashLogInfo.PublishmentSystemID = PublishmentSystemID;
                cardCashLogInfo.UserName            = cardSNInfo.UserName;
                cardCashLogInfo.CardID      = cardSNInfo.CardID;
                cardCashLogInfo.CardSNID    = cardSNInfo.ID;
                cardCashLogInfo.Amount      = TranslateUtils.ToInt(tbRechargeAmount.Text);
                cardCashLogInfo.CurAmount   = cardSNInfo.Amount + TranslateUtils.ToDecimal(tbRechargeAmount.Text);
                cardCashLogInfo.CashType    = ECashTypeUtils.GetValue(ECashType.Recharge);
                cardCashLogInfo.Operator    = ddlOperator.SelectedValue;
                cardCashLogInfo.Description = tbDescription.Text;
                cardCashLogInfo.AddDate     = DateTime.Now;

                try
                {
                    DataProviderWX.CardCashLogDAO.Insert(cardCashLogInfo);
                    DataProviderWX.CardSNDAO.Recharge(cardSNInfo.ID, cardSNInfo.UserName, TranslateUtils.ToDecimal(tbRechargeAmount.Text));

                    tbRechargeAmount.Text = string.Empty;

                    SuccessMessage("充值成功!");

                    //JsUtils.OpenWindow.CloseModalPage(Page);
                }
                catch (Exception ex)
                {
                    FailMessage(ex, "充值失败!");
                }
            }
        }
Пример #2
0
        public override void Submit_OnClick(object sender, EventArgs e)
        {
            if (IsPostBack && IsValid)
            {
                UserInfo   userInfo   = null;
                CardSnInfo cardSnInfo = null;

                if (_cardSnid > 0)
                {
                    cardSnInfo = DataProviderWx.CardSnDao.GetCardSnInfo(_cardSnid);
                }
                else
                {
                    if (DdlKeyWordType.SelectedValue == "cardSN")
                    {
                        cardSnInfo = DataProviderWx.CardSnDao.GetCardSnInfo(PublishmentSystemId, TranslateUtils.ToInt(DdlCard.SelectedValue), TbKeyWord.Text, string.Empty);
                    }
                    else if (DdlKeyWordType.SelectedValue == "mobile")
                    {
                        var userId = BaiRongDataProvider.UserDao.GetUserIdByEmailOrMobile(string.Empty, TbKeyWord.Text);
                        userInfo = BaiRongDataProvider.UserDao.GetUserInfo(userId);
                        if (userInfo != null)
                        {
                            cardSnInfo = DataProviderWx.CardSnDao.GetCardSnInfo(PublishmentSystemId, TranslateUtils.ToInt(DdlCard.SelectedValue), string.Empty, userInfo.UserName);
                        }
                    }
                }

                if (cardSnInfo == null)
                {
                    FailMessage("会员卡不存在");
                    return;
                }

                var consumeType = EConsumeTypeUtils.GetEnumType(DdlConsumeType.SelectedValue);

                if (consumeType == EConsumeType.CardAmount)
                {
                    var amount = DataProviderWx.CardSnDao.GetAmount(cardSnInfo.Id, cardSnInfo.UserName);
                    if (amount < TranslateUtils.ToDecimal(TbConsumeAmount.Text))
                    {
                        FailMessage("会员卡余额不足");
                        return;
                    }
                }

                var cardCashLogInfo = new CardCashLogInfo();
                cardCashLogInfo.PublishmentSystemId = PublishmentSystemId;
                cardCashLogInfo.UserName            = cardSnInfo.UserName;
                cardCashLogInfo.CardId    = cardSnInfo.CardId;
                cardCashLogInfo.CardSnId  = cardSnInfo.Id;
                cardCashLogInfo.Amount    = TranslateUtils.ToDecimal(TbConsumeAmount.Text);
                cardCashLogInfo.CurAmount = cardSnInfo.Amount;
                if (consumeType == EConsumeType.CardAmount)
                {
                    cardCashLogInfo.CurAmount = cardSnInfo.Amount - TranslateUtils.ToInt(TbConsumeAmount.Text);
                }

                cardCashLogInfo.CashType    = ECashTypeUtils.GetValue(ECashType.Consume);
                cardCashLogInfo.ConsumeType = DdlConsumeType.SelectedValue;
                cardCashLogInfo.Operator    = DdlOperator.SelectedValue;
                cardCashLogInfo.AddDate     = DateTime.Now;

                try
                {
                    DataProviderWx.CardCashLogDao.Insert(cardCashLogInfo);

                    if (consumeType == EConsumeType.CardAmount)
                    {
                        DataProviderWx.CardSnDao.Consume(cardSnInfo.Id, cardSnInfo.UserName, TranslateUtils.ToDecimal(TbConsumeAmount.Text));

                        if (PublishmentSystemInfo.Additional.WxCardIsClaimCardCredits)
                        {
                            var amount        = TranslateUtils.ToDecimal(TbConsumeAmount.Text);
                            var consumeAmount = PublishmentSystemInfo.Additional.WxCardConsumeAmount;
                            var giveCredits   = PublishmentSystemInfo.Additional.WxCardGiveCredits;

                            //var userCreditsLogInfo = new UserCreditsLogInfo();
                            //userCreditsLogInfo.UserName = cardSNInfo.UserName;
                            //userCreditsLogInfo.ProductId = AppManager.WeiXin.AppID;
                            //userCreditsLogInfo.Num = (int)Math.Round(amount * (giveCredits / consumeAmount), 0);
                            //userCreditsLogInfo.AddDate = DateTime.Now;
                            //userCreditsLogInfo.IsIncreased = true;
                            //userCreditsLogInfo.Action = "消费送积分";

                            //BaiRongDataProvider.UserCreditsLogDao.Insert(userCreditsLogInfo);
                            //BaiRongDataProvider.UserDao.AddCredits(cardSNInfo.UserName, (int)Math.Round(amount * (giveCredits / consumeAmount), 0));
                        }
                    }
                    TbConsumeAmount.Text = string.Empty;

                    SuccessMessage("操作成功!");

                    //PageUtils.CloseModalPage(Page);
                }
                catch (Exception ex)
                {
                    FailMessage(ex, "操作失败!");
                }
            }
        }
Пример #3
0
        public override void Submit_OnClick(object sender, EventArgs e)
        {
            var isChanged = false;

            try
            {
                if (!isEntity)
                {
                    DataProviderWX.CardSNDAO.UpdateStatus(cardID, TranslateUtils.ToBool(ddlIsDisabled.SelectedValue), TranslateUtils.StringCollectionToIntList(Request.QueryString["IDCollection"]));
                }
                else
                {
                    var cardEntitySNIDList = TranslateUtils.StringCollectionToIntList(Request.QueryString["IDCollection"]);
                    if (cardEntitySNIDList.Count > 0)
                    {
                        for (var i = 0; i < cardEntitySNIDList.Count; i++)
                        {
                            var cardEntitySNInfo = DataProviderWX.CardEntitySNDAO.GetCardEntitySNInfo(cardEntitySNIDList[i]);

                            var userID   = BaiRongDataProvider.UserDao.GetUserIdByEmailOrMobile(string.Empty, cardEntitySNInfo.Mobile);
                            var userInfo = BaiRongDataProvider.UserDao.GetUserInfo(userID);
                            if (userInfo != null)
                            {
                                var cardSNInfo = DataProviderWX.CardSNDAO.GetCardSNInfo(PublishmentSystemID, cardID, string.Empty, userInfo.UserName);

                                var cardCashLogInfo = new CardCashLogInfo();
                                cardCashLogInfo.PublishmentSystemID = PublishmentSystemID;
                                cardCashLogInfo.UserName            = userInfo.UserName;
                                cardCashLogInfo.CardID      = cardSNInfo.CardID;
                                cardCashLogInfo.CardSNID    = cardSNInfo.ID;
                                cardCashLogInfo.Amount      = cardEntitySNInfo.Amount;
                                cardCashLogInfo.CurAmount  += cardEntitySNInfo.Amount;;
                                cardCashLogInfo.CashType    = ECashTypeUtils.GetValue(ECashType.Recharge);
                                cardCashLogInfo.Operator    = AdminManager.Current.UserName;
                                cardCashLogInfo.Description = "绑定实体卡充值";
                                cardCashLogInfo.AddDate     = DateTime.Now;

                                var userCreditsLogInfo = new UserCreditsLogInfo();
                                userCreditsLogInfo.UserName    = userInfo.UserName;
                                userCreditsLogInfo.ProductId   = AppManager.WeiXin.AppID;
                                userCreditsLogInfo.Num         = cardEntitySNInfo.Credits;
                                userCreditsLogInfo.IsIncreased = true;
                                userCreditsLogInfo.Action      = "绑定实体卡添加积分";
                                userCreditsLogInfo.AddDate     = DateTime.Now;


                                if (!cardEntitySNInfo.IsBinding)
                                {
                                    cardEntitySNInfo.IsBinding = true;
                                    DataProviderWX.CardEntitySNDAO.Update(cardEntitySNInfo);

                                    DataProviderWX.CardCashLogDAO.Insert(cardCashLogInfo);
                                    DataProviderWX.CardSNDAO.Recharge(cardSNInfo.ID, userInfo.UserName, cardEntitySNInfo.Amount);

                                    BaiRongDataProvider.UserCreditsLogDao.Insert(userCreditsLogInfo);
                                    BaiRongDataProvider.UserDao.AddCredits(userInfo.UserName, cardEntitySNInfo.Credits);
                                }
                            }
                        }
                    }
                }

                isChanged = true;
            }
            catch (Exception ex)
            {
                FailMessage(ex, "失败:" + ex.Message);
            }

            if (isChanged)
            {
                JsUtils.OpenWindow.CloseModalPage(Page);
            }
        }