private static void ReduceDeduct(string orderId, decimal refundAmount, Member member) { int referralDeduct = SettingsManager.GetSiteSettings(HiContext.Current.User.UserId).ReferralDeduct; if (((referralDeduct > 0) && member.ReferralUserId.HasValue) && (member.ReferralUserId.Value > 0)) { IUser user = Users.GetUser(member.ReferralUserId.Value, false); if ((user != null) && (user.UserRole == UserRole.Underling)) { Member member2 = user as Member; if ((member.ParentUserId == member2.ParentUserId) && member2.IsOpenBalance) { decimal num2 = member2.Balance - ((refundAmount * referralDeduct) / 100M); BalanceDetailInfo balanceDetails = new BalanceDetailInfo(); balanceDetails.UserId = member2.UserId; balanceDetails.UserName = member2.Username; balanceDetails.TradeDate = DateTime.Now; balanceDetails.TradeType = TradeTypes.ReferralDeduct; balanceDetails.Expenses = new decimal?((refundAmount * referralDeduct) / 100M); balanceDetails.Balance = num2; balanceDetails.Remark = string.Format("退回提成因为{0}的订单{1}已退款", member.Username, orderId); UnderlingProvider.Instance().AddUnderlingBalanceDetail(balanceDetails); } } } }
private void btnAddBalance_Click(object sender, EventArgs e) { if (!RoleHelper.GetUserPrivileges(HiContext.Current.User.Username).Contains(0x232a) && (HiContext.Current.User.UserRole != UserRole.SiteManager)) { this.ShowMsg("权限不够", false); } else { decimal num; int length = 0; if (this.txtReCharge.Text.Trim().IndexOf(".") > 0) { length = this.txtReCharge.Text.Trim().Substring(this.txtReCharge.Text.Trim().IndexOf(".") + 1).Length; } int userId = int.Parse(this.currentUserId.Value); if (!decimal.TryParse(this.txtReCharge.Text.Trim(), out num) || (length > 2)) { this.ShowMsg("本次充值要给当前客户加款的金额只能是数值,且不能超过2位小数", false); } else if ((num < -10000000M) || (num > 10000000M)) { this.ShowMsg("金额大小必须在正负1000万之间", false); } else { Member user = Users.GetUser(userId, false) as Member; if ((user == null) || !user.IsOpenBalance) { this.ShowMsg("本次充值已失败,该用户不存在或预付款还没有开通", false); } else { decimal num4 = num + user.Balance; BalanceDetailInfo target = new BalanceDetailInfo(); target.UserId = userId; target.UserName = user.Username; target.TradeDate = DateTime.Now; target.TradeType = TradeTypes.BackgroundAddmoney; target.Income = new decimal?(num); target.Balance = num4; target.Remark = Globals.HtmlEncode(this.txtRemark.Text.Trim()); ValidationResults results = Hishop.Components.Validation.Validation.Validate <BalanceDetailInfo>(target, new string[] { "ValBalanceDetail" }); string msg = string.Empty; if (!results.IsValid) { foreach (ValidationResult result in (IEnumerable <ValidationResult>)results) { msg = msg + Formatter.FormatErrorMessage(result.Message); } this.ShowMsg(msg, false); } else if (MemberHelper.AddBalance(target, num)) { this.txtReCharge.Text = ""; this.ReBind(false); } } } } }
void Notify_Finished(object sender, FinishedEventArgs e) { DateTime now = DateTime.Now; TradeTypes selfhelpInpour = TradeTypes.SelfhelpInpour; Member user = Users.GetUser(this.InpourRequest.UserId, false) as Member; decimal num = user.Balance + this.InpourRequest.InpourBlance; BalanceDetailInfo balanceDetails = new BalanceDetailInfo(); balanceDetails.UserId = this.InpourRequest.UserId; balanceDetails.UserName = user.Username; balanceDetails.TradeDate = now; balanceDetails.TradeType = selfhelpInpour; balanceDetails.Income = new decimal?(this.InpourRequest.InpourBlance); balanceDetails.Balance = num; if (this.paymode != null) { balanceDetails.Remark = "充值支付方式:" + this.paymode.Name; } if (PersonalHelper.Recharge(balanceDetails, this.InpourRequest.InpourId)) { Users.ClearUserCache(user); this.ResponseStatus(true, "success"); } else { PersonalHelper.RemoveInpourRequest(this.InpourId); this.ResponseStatus(false, "fail"); } }
private void btnAddBalance_Click(object sender, System.EventArgs e) { ManagerHelper.CheckPrivilege(Privilege.MemberReCharge); int num = 0; if (this.txtReCharge.Text.Trim().IndexOf(".") > 0) { num = this.txtReCharge.Text.Trim().Substring(this.txtReCharge.Text.Trim().IndexOf(".") + 1).Length; } int userId = int.Parse(this.currentUserId.Value); decimal num2; if (!decimal.TryParse(this.txtReCharge.Text.Trim(), out num2) || num > 2) { this.ShowMsg("本次充值要给当前客户加款的金额只能是数值,且不能超过2位小数", false); return; } if (num2 < -10000000m || num2 > 10000000m) { this.ShowMsg("金额大小必须在正负1000万之间", false); return; } Member member = Users.GetUser(userId, false) as Member; if (member == null || !member.IsOpenBalance) { this.ShowMsg("本次充值已失败,该用户不存在或预付款还没有开通", false); return; } decimal balance = num2 + member.Balance; BalanceDetailInfo balanceDetailInfo = new BalanceDetailInfo(); balanceDetailInfo.UserId = userId; balanceDetailInfo.UserName = member.Username; balanceDetailInfo.TradeDate = System.DateTime.Now; balanceDetailInfo.TradeType = TradeTypes.BackgroundAddmoney; balanceDetailInfo.Income = new decimal?(num2); balanceDetailInfo.Balance = balance; balanceDetailInfo.Remark = Globals.HtmlEncode(this.txtRemark.Text.Trim()); ValidationResults validationResults = Validation.Validate <BalanceDetailInfo>(balanceDetailInfo, new string[] { "ValBalanceDetail" }); string text = string.Empty; if (!validationResults.IsValid) { foreach (ValidationResult current in (System.Collections.Generic.IEnumerable <ValidationResult>)validationResults) { text += Formatter.FormatErrorMessage(current.Message); } this.ShowMsg(text, false); return; } if (MemberHelper.AddBalance(balanceDetailInfo, num2)) { this.txtReCharge.Text = ""; this.ReBind(false); } }
private void Notify_Finished(object sender, FinishedEventArgs e) { DateTime now = DateTime.Now; TradeTypes tradeType = TradeTypes.SelfhelpInpour; MemberInfo user = Users.GetUser(this.InpourRequest.UserId); decimal balance = user.Balance + this.InpourRequest.InpourBlance; BalanceDetailInfo balanceDetailInfo = new BalanceDetailInfo(); balanceDetailInfo.UserId = this.InpourRequest.UserId; balanceDetailInfo.UserName = user.UserName; balanceDetailInfo.TradeDate = now; balanceDetailInfo.TradeType = tradeType; balanceDetailInfo.Income = this.InpourRequest.InpourBlance; balanceDetailInfo.Balance = balance; balanceDetailInfo.InpourId = this.InpourRequest.InpourId; if (this.paymode != null) { balanceDetailInfo.Remark = "充值支付方式:" + this.paymode.Name; } if (MemberProcessor.Recharge(balanceDetailInfo)) { this.ResponseStatus(true, "success"); } else { MemberProcessor.RemoveInpourRequest(this.InpourId); this.ResponseStatus(false, "fail"); } }
private void CloseReturnBalance(int userId, string orderId, decimal balanceAmount) { if (balanceAmount > decimal.Zero) { Users.ClearUserCache(userId, ""); Hidistro.Entities.Members.MemberInfo user = Users.GetUser(userId); BalanceDetailInfo balanceDetailInfo = new BalanceDetailInfo(); balanceDetailInfo.TradeDate = DateTime.Now; balanceDetailInfo.TradeType = TradeTypes.RefundOrder; balanceDetailInfo.UserId = userId; balanceDetailInfo.UserName = user.UserName; balanceDetailInfo.Balance = user.Balance + balanceAmount; balanceDetailInfo.Expenses = null; balanceDetailInfo.Income = balanceAmount; balanceDetailInfo.InpourId = ""; balanceDetailInfo.ManagerUserName = ""; balanceDetailInfo.Remark = "订单" + orderId + "自动关闭,还原抵扣的余额"; if (new BaseDao().Add(balanceDetailInfo, null) > 0) { user.Balance += balanceAmount; MemberProcessor.UpdateMember(user); Users.ClearUserCache(user.UserId, user.SessionId); } } }
void Notify_Finished(object sender, FinishedEventArgs e) { DateTime now = DateTime.Now; TradeTypes selfhelpInpour = TradeTypes.SelfhelpInpour; Distributor user = Users.GetUser(InpourRequest.UserId, false) as Distributor; decimal num = user.Balance + InpourRequest.InpourBlance; BalanceDetailInfo balanceDetails = new BalanceDetailInfo(); balanceDetails.UserId = InpourRequest.UserId; balanceDetails.UserName = user.Username; balanceDetails.TradeDate = now; balanceDetails.TradeType = selfhelpInpour; balanceDetails.Income = new decimal?(InpourRequest.InpourBlance); balanceDetails.Balance = num; if (paymode != null) { balanceDetails.Remark = "充值支付方式:" + paymode.Name; } if (SubsiteStoreHelper.AddBalanceDetail(balanceDetails, InpourId)) { Users.ClearUserCache(user); ResponseStatus(true, "success"); } else { SubsiteStoreHelper.RemoveInpourRequest(InpourId); ResponseStatus(false, "fail"); } }
private void notify_PaidToMerchant(NotifyQuery sender) { DateTime now = DateTime.Now; TradeTypes selfHelpRecharge = TradeTypes.SelfHelpRecharge; decimal num = PaymentModeManage.GetAccountSummary(this.RechargeRequest.UserId). AccountAmount + this.RechargeRequest.RechargeBlance; BalanceDetailInfo balanceDetails = new BalanceDetailInfo { JournalNumber = this.RechargeRequest.RechargeId, UserId = this.RechargeRequest.UserId, TradeDate = now, TradeType = selfHelpRecharge, Income = this.RechargeRequest.RechargeBlance, Balance = num }; if (this.paymode != null) { balanceDetails.Remark = "充值支付方式:" + this.paymode.Name; } if (PaymentModeManage.AddBalanceDetail(balanceDetails)) { this.ResponseStatus(true, "success"); } else { PaymentModeManage.RemoveRechargeRequest(this.RechargeId); this.ResponseStatus(false, "fail"); } }
private void Notify_Finished(InpourRequestInfo inpourRequest) { DateTime now = DateTime.Now; TradeTypes tradeType = TradeTypes.SelfhelpInpour; MemberInfo user = Users.GetUser(inpourRequest.UserId); decimal balance = user.Balance + inpourRequest.InpourBlance; BalanceDetailInfo balanceDetailInfo = new BalanceDetailInfo(); balanceDetailInfo.UserId = inpourRequest.UserId; balanceDetailInfo.UserName = user.UserName; balanceDetailInfo.TradeDate = now; balanceDetailInfo.TradeType = tradeType; balanceDetailInfo.Income = inpourRequest.InpourBlance; balanceDetailInfo.Balance = balance; balanceDetailInfo.InpourId = inpourRequest.InpourId; balanceDetailInfo.Remark = "充值支付方式:微信支付"; if (MemberProcessor.Recharge(balanceDetailInfo)) { base.Response.Write("success"); } else { base.Response.Write("success"); } }
private static void ReduceDeduct(string orderId, decimal refundAmount, Member member) { int referralDeduct = HiContext.Current.SiteSettings.ReferralDeduct; if (referralDeduct > 0 && member.ReferralUserId.HasValue && member.ReferralUserId.Value > 0) { IUser user = Users.GetUser(member.ReferralUserId.Value, false); if (user != null && user.UserRole == UserRole.Member) { Member member2 = user as Member; if (member.ParentUserId == member2.ParentUserId && member2.IsOpenBalance) { decimal balance = member2.Balance - refundAmount * referralDeduct / 100m; BalanceDetailInfo balanceDetailInfo = new BalanceDetailInfo(); balanceDetailInfo.UserId = member2.UserId; balanceDetailInfo.UserName = member2.Username; balanceDetailInfo.TradeDate = DateTime.Now; balanceDetailInfo.TradeType = TradeTypes.ReferralDeduct; balanceDetailInfo.Expenses = new decimal?(refundAmount * referralDeduct / 100m); balanceDetailInfo.Balance = balance; balanceDetailInfo.Remark = string.Format("退回提成因为{0}的订单{1}已退款", member.Username, orderId); MemberProvider.Instance().InsertBalanceDetail(balanceDetailInfo); } } } }
static void ReduceDeduct(OrderInfo order, Member member) { int referralDeduct = HiContext.Current.SiteSettings.ReferralDeduct; if (((referralDeduct > 0) && member.ReferralUserId.HasValue) && (member.ReferralUserId.Value > 0)) { IUser user = Users.GetUser(member.ReferralUserId.Value, false); if ((user != null) && (user.UserRole == UserRole.Member)) { Member member2 = user as Member; if ((member.ParentUserId == member2.ParentUserId) && member2.IsOpenBalance) { decimal num2 = member2.Balance - ((order.RefundAmount * referralDeduct) / 100M); BalanceDetailInfo balanceDetail = new BalanceDetailInfo(); balanceDetail.UserId = member2.UserId; balanceDetail.UserName = member2.Username; balanceDetail.TradeDate = DateTime.Now; balanceDetail.TradeType = TradeTypes.ReferralDeduct; balanceDetail.Expenses = new decimal?((order.RefundAmount * referralDeduct) / 100M); balanceDetail.Balance = num2; balanceDetail.Remark = string.Format("退回提成因为'{0}'的订单{1}已退款", order.Username, order.OrderId); MemberProvider.Instance().InsertBalanceDetail(balanceDetail); } } } }
public override bool AddBalanceDetail(BalanceDetailInfo balanceDetails) { bool result; if (null == balanceDetails) { result = false; } else { string text = "INSERT INTO distro_BalanceDetails(UserId,UserName,DistributorUserId, TradeDate, TradeType, Income, Balance, Remark, InpourId) VALUES (@UserId, @UserName,@DistributorUserId, @TradeDate, @TradeType, @Income, @Balance, @Remark, @InpourId)"; System.Data.Common.DbCommand sqlStringCommand = this.database.GetSqlStringCommand(text); this.database.AddInParameter(sqlStringCommand, "UserId", System.Data.DbType.Int32, balanceDetails.UserId); this.database.AddInParameter(sqlStringCommand, "UserName", System.Data.DbType.String, balanceDetails.UserName); this.database.AddInParameter(sqlStringCommand, "DistributorUserId", System.Data.DbType.Int32, HiContext.Current.SiteSettings.UserId.Value); this.database.AddInParameter(sqlStringCommand, "TradeDate", System.Data.DbType.DateTime, balanceDetails.TradeDate); this.database.AddInParameter(sqlStringCommand, "TradeType", System.Data.DbType.Int32, (int)balanceDetails.TradeType); this.database.AddInParameter(sqlStringCommand, "Income", System.Data.DbType.Currency, balanceDetails.Income); this.database.AddInParameter(sqlStringCommand, "Balance", System.Data.DbType.Currency, balanceDetails.Balance); this.database.AddInParameter(sqlStringCommand, "Remark", System.Data.DbType.String, balanceDetails.Remark); this.database.AddInParameter(sqlStringCommand, "InpourId", System.Data.DbType.String, balanceDetails.InpourId); result = (this.database.ExecuteNonQuery(sqlStringCommand) >= 1); } return(result); }
private void Notify_Finished(object sender, FinishedEventArgs e) { System.DateTime now = System.DateTime.Now; Hidistro.Membership.Context.Distributor distributor = Hidistro.Membership.Context.Users.GetUser(this.InpourRequest.UserId, false) as Hidistro.Membership.Context.Distributor; decimal balance = distributor.Balance + this.InpourRequest.InpourBlance; BalanceDetailInfo balanceDetailInfo = new BalanceDetailInfo(); balanceDetailInfo.UserId = this.InpourRequest.UserId; balanceDetailInfo.UserName = distributor.Username; balanceDetailInfo.TradeDate = now; balanceDetailInfo.TradeType = TradeTypes.SelfhelpInpour; balanceDetailInfo.Income = new decimal?(this.InpourRequest.InpourBlance); balanceDetailInfo.Balance = balance; balanceDetailInfo.InpourId = this.InpourRequest.InpourId; if (this.paymode != null) { balanceDetailInfo.Remark = "充值支付方式:" + this.paymode.Name; } if (SubsiteStoreHelper.Recharge(balanceDetailInfo)) { Hidistro.Membership.Context.Users.ClearUserCache(distributor); this.ResponseStatus(true, "success"); } else { SubsiteStoreHelper.RemoveInpourRequest(this.InpourId); this.ResponseStatus(false, "fail"); } }
private void btnReChargeOK_Click(object sender, EventArgs e) { decimal num; int length = 0; if (txtReCharge.Text.Trim().IndexOf(".") > 0) { length = txtReCharge.Text.Trim().Substring(txtReCharge.Text.Trim().IndexOf(".") + 1).Length; } if (!(decimal.TryParse(txtReCharge.Text.Trim(), out num) && (length <= 2))) { ShowMsg("本次充值要给当前客户加款的金额只能是数值,且不能超过2位小数", false); } else if ((num < -10000000M) || (num > 10000000M)) { ShowMsg("金额大小必须在正负1000万之间", false); } else { Distributor user = Users.GetUser(userId, false) as Distributor; if (user == null) { ShowMsg("此分销商已经不存在", false); } else { decimal num3 = num + user.Balance; BalanceDetailInfo info2 = new BalanceDetailInfo(); info2.UserId = userId; info2.UserName = user.Username; info2.TradeDate = DateTime.Now; info2.TradeType = TradeTypes.BackgroundAddmoney; info2.Income = new decimal?(num); info2.Balance = num3; info2.Remark = Globals.HtmlEncode(txtRemarks.Text.Trim()); BalanceDetailInfo target = info2; ValidationResults results = Hishop.Components.Validation.Validation.Validate <BalanceDetailInfo>(target, new string[] { "ValBalanceDetail" }); string msg = string.Empty; if (!results.IsValid) { foreach (ValidationResult result in (IEnumerable <ValidationResult>)results) { msg = msg + Formatter.FormatErrorMessage(result.Message); } ShowMsg(msg, false); } else { if (DistributorHelper.AddBalance(target)) { ShowMsg(string.Format("本次充值已成功,充值金额:{0}", num), true); } txtReCharge.Text = string.Empty; txtRemarks.Text = string.Empty; lblUseableBalance.Money = num3; } } } }
private void btnReChargeOK_Click(object sender, System.EventArgs e) { int num = 0; if (this.txtReCharge.Text.Trim().IndexOf(".") > 0) { num = this.txtReCharge.Text.Trim().Substring(this.txtReCharge.Text.Trim().IndexOf(".") + 1).Length; } decimal num2; if (!decimal.TryParse(this.txtReCharge.Text.Trim(), out num2) || num > 2) { this.ShowMsg("本次充值要给当前客户加款的金额只能是数值,且不能超过2位小数", false); return; } if (num2 < -10000000m || num2 > 10000000m) { this.ShowMsg("金额大小必须在正负1000万之间", false); return; } Hidistro.Membership.Context.Distributor distributor = Hidistro.Membership.Context.Users.GetUser(this.userId, false) as Hidistro.Membership.Context.Distributor; if (distributor == null) { this.ShowMsg("此分销商已经不存在", false); return; } decimal num3 = num2 + distributor.Balance; BalanceDetailInfo balanceDetailInfo = new BalanceDetailInfo(); balanceDetailInfo.UserId = this.userId; balanceDetailInfo.UserName = distributor.Username; balanceDetailInfo.TradeDate = System.DateTime.Now; balanceDetailInfo.TradeType = TradeTypes.BackgroundAddmoney; balanceDetailInfo.Income = new decimal?(num2); balanceDetailInfo.Balance = num3; balanceDetailInfo.Remark = Globals.HtmlEncode(this.txtRemarks.Text.Trim()); ValidationResults validationResults = Validation.Validate <BalanceDetailInfo>(balanceDetailInfo, new string[] { "ValBalanceDetail" }); string text = string.Empty; if (!validationResults.IsValid) { foreach (ValidationResult current in (System.Collections.Generic.IEnumerable <ValidationResult>)validationResults) { text += Formatter.FormatErrorMessage(current.Message); } this.ShowMsg(text, false); return; } if (DistributorHelper.AddBalance(balanceDetailInfo, num2)) { this.Page.ClientScript.RegisterClientScriptBlock(base.GetType(), "success", string.Format("<script>alert(\"本次充值已成功,充值金额:{0}\");window.location.href=\"DistributorReCharge.aspx?userId={1}\"</script>", num2, this.userId)); } this.txtReCharge.Text = string.Empty; this.txtRemarks.Text = string.Empty; this.lblUseableBalance.Money = num3; }
private void btnReChargeOK_Click(object sender, EventArgs e) { decimal num; int length = 0; if (this.txtReCharge.Text.Trim().IndexOf(".") > 0) { length = this.txtReCharge.Text.Trim().Substring(this.txtReCharge.Text.Trim().IndexOf(".") + 1).Length; } if (!decimal.TryParse(this.txtReCharge.Text.Trim(), out num) || (length > 2)) { this.ShowMsg("本次充值要给当前客户加款的金额只能是数值,且不能超过2位小数", false); } else if ((num < -10000000M) || (num > 10000000M)) { this.ShowMsg("金额大小必须在正负1000万之间", false); } else { Distributor user = Users.GetUser(this.userId, false) as Distributor; if (user == null) { this.ShowMsg("此分销商已经不存在", false); } else { decimal num3 = num + user.Balance; BalanceDetailInfo target = new BalanceDetailInfo(); target.UserId = this.userId; target.UserName = user.Username; target.TradeDate = DateTime.Now; target.TradeType = TradeTypes.BackgroundAddmoney; target.Income = new decimal?(num); target.Balance = num3; target.Remark = Globals.HtmlEncode(this.txtRemarks.Text.Trim()); ValidationResults results = Hishop.Components.Validation.Validation.Validate <BalanceDetailInfo>(target, new string[] { "ValBalanceDetail" }); string msg = string.Empty; if (!results.IsValid) { foreach (ValidationResult result in (IEnumerable <ValidationResult>)results) { msg = msg + Formatter.FormatErrorMessage(result.Message); } this.ShowMsg(msg, false); } else { if (DistributorHelper.AddBalance(target, num)) { this.Page.ClientScript.RegisterClientScriptBlock(base.GetType(), "success", string.Format("<script>alert(\"本次充值已成功,充值金额:{0}\");window.location.href=\"DistributorReCharge.aspx?userId={1}\"</script>", num, this.userId)); } this.txtReCharge.Text = string.Empty; this.txtRemarks.Text = string.Empty; this.lblUseableBalance.Money = num3; } } } }
private void btnConfirmPay_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(this.txtTradePassword.Text)) { this.ShowMsg("请输入交易密码", false); } else { int num; int.TryParse(base.Request["PayMode"], out num); SubsiteStoreHelper.GetPaymentMode(num); if (((decimal)this.lblUseableBalance.Money) < ((decimal)this.lblTotalPrice.Money)) { this.ShowMsg("您的预付款金额不足", false); } else { Distributor user = SubsiteStoreHelper.GetDistributor(); if ((user.Balance - user.RequestBalance) < this.purchaseOrder.GetPurchaseTotal()) { this.ShowMsg("您的预付款金额不足", false); } else { BalanceDetailInfo balance = new BalanceDetailInfo(); balance.UserId = user.UserId; balance.UserName = user.Username; balance.TradeType = TradeTypes.Consume; balance.TradeDate = DateTime.Now; balance.Expenses = new decimal?(this.purchaseOrder.GetPurchaseTotal()); balance.Balance = user.Balance - this.purchaseOrder.GetPurchaseTotal(); balance.Remark = string.Format("采购单{0}的付款", this.purchaseOrder.PurchaseOrderId); user.TradePassword = this.txtTradePassword.Text; if (Users.ValidTradePassword(user)) { if (!SubsiteSalesHelper.ConfirmPay(balance, this.purchaseOrder)) { this.ShowMsg("付款失败", false); } else { PurchaseDebitNote note = new PurchaseDebitNote(); note.NoteId = Globals.GetGenerateId(); note.PurchaseOrderId = this.purchaseOrderId; note.Operator = HiContext.Current.User.Username; note.Remark = "分销商采购单预付款支付成功"; SubsiteSalesHelper.SavePurchaseDebitNote(note); this.ShowMsg("采购单预付款支付成功", true); } } else { this.ShowMsg("交易密码错误", false); } } } } }
private void btnConfirmPay_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(this.txtTradePassword.Text)) { this.ShowMsg("请输入交易密码", false); } else if (((decimal)this.lblUseableBalance.Money) < ((decimal)this.lblTotalPrice.Money)) { this.ShowMsg("您的预付款金额不足", false); } else { Distributor user = SubsiteStoreHelper.GetDistributor(); if ((user.Balance - user.RequestBalance) < ((decimal)this.lblTotalPrice.Money)) { this.ShowMsg("您的预付款金额不足", false); } else { BalanceDetailInfo balance = new BalanceDetailInfo(); balance.UserId = user.UserId; balance.UserName = user.Username; balance.TradeType = TradeTypes.Consume; balance.TradeDate = DateTime.Now; balance.Expenses = new decimal?((decimal)this.lblTotalPrice.Money); balance.Balance = user.Balance - ((decimal)this.lblTotalPrice.Money); balance.Remark = " 批量付款的采购单编号:" + this.purchaseorderIds.Replace(',', ' '); user.TradePassword = this.txtTradePassword.Text; if (Users.ValidTradePassword(user)) { if (!SubsiteSalesHelper.BatchConfirmPay(balance, this.purchaseorderIds)) { this.ShowMsg("付款失败", false); } else { int num = 0; foreach (string str in this.purchaseorderIds.Split(new char[] { ',' })) { PurchaseDebitNote note = new PurchaseDebitNote(); note.NoteId = Globals.GetGenerateId() + num; note.PurchaseOrderId = str; note.Operator = HiContext.Current.User.Username; note.Remark = "分销商采购单预付款支付成功"; SubsiteSalesHelper.SavePurchaseDebitNote(note); num++; } this.PaySucceess.Visible = true; } } else { this.ShowMsg("交易密码错误", false); } } } }
public static bool AddBalance(BalanceDetailInfo balanceDetails) { if (null == balanceDetails) { return(false); } EventLogs.WriteOperationLog(Privilege.DistributorReCharge, string.Format(CultureInfo.InvariantCulture, "给分销商\"{0}\"添加预付款\"{1}\"", new object[] { balanceDetails.UserName, balanceDetails.Balance })); return(DistributorProvider.Instance().InsertBalanceDetail(balanceDetails, null)); }
private void btnAddBalance_Click(object sender, EventArgs e) { decimal num; int length = 0; if (txtReCharge.Text.Trim().IndexOf(".") > 0) { length = txtReCharge.Text.Trim().Substring(txtReCharge.Text.Trim().IndexOf(".") + 1).Length; } int userId = int.Parse(currentUserId.Value); if (!(decimal.TryParse(txtReCharge.Text.Trim(), out num) && (length <= 2))) { ShowMsg("本次充值要给当前客户加款的金额只能是数值,且不能超过2位小数", false); } else if ((num < -10000000M) || (num > 10000000M)) { ShowMsg("金额大小必须在正负1000万之间", false); } else { Member user = Users.GetUser(userId, false) as Member; if (!((user != null) && user.IsOpenBalance)) { ShowMsg("本次充值已失败,该用户不存在或预付款还没有开通", false); } else { decimal num4 = num + user.Balance; BalanceDetailInfo info2 = new BalanceDetailInfo(); info2.UserId = userId; info2.UserName = user.Username; info2.TradeDate = DateTime.Now; info2.TradeType = TradeTypes.BackgroundAddmoney; info2.Income = new decimal?(num); info2.Balance = num4; info2.Remark = Globals.HtmlEncode(txtRemark.Text.Trim()); BalanceDetailInfo target = info2; ValidationResults results = Hishop.Components.Validation.Validation.Validate <BalanceDetailInfo>(target, new string[] { "ValBalanceDetail" }); string msg = string.Empty; if (!results.IsValid) { foreach (ValidationResult result in (IEnumerable <ValidationResult>)results) { msg = msg + Formatter.FormatErrorMessage(result.Message); } ShowMsg(msg, false); } else if (MemberHelper.AddBalance(target)) { txtReCharge.Text = ""; ReBind(false); } } } }
public static bool AddUnderlingBalanceDetail(BalanceDetailInfo balanceDetails) { bool flag = UnderlingProvider.Instance().AddUnderlingBalanceDetail(balanceDetails); if (flag) { Users.ClearUserCache(Users.GetUser(balanceDetails.UserId)); } return(flag); }
public static bool AddUnderlingBalanceDetail(BalanceDetailInfo balanceDetails) { bool result; if (result = UnderlingProvider.Instance().AddUnderlingBalanceDetail(balanceDetails)) { Users.ClearUserCache(Users.GetUser(balanceDetails.UserId)); } return(result); }
public static bool Recharge(BalanceDetailInfo balanceDetails, string InpourId) { bool flag = PersonalProvider.Instance().AddBalanceDetail(balanceDetails); if (flag) { PersonalProvider.Instance().RemoveInpourRequest(InpourId); } return(flag); }
public static bool Recharge(BalanceDetailInfo balanceDetails) { bool flag = SubsiteStoreProvider.Instance().IsRecharge(balanceDetails.InpourId); if (!flag) { flag = SubsiteStoreProvider.Instance().AddBalanceDetail(balanceDetails); SubsiteStoreProvider.Instance().RemoveInpourRequest(balanceDetails.InpourId); } return(flag); }
private static void UpdateUserAccount(OrderInfo order) { int num = order.UserId; if (num == 1100) { num = 0; } IUser user = Users.GetUser(num, false); if (user != null && user.UserRole == UserRole.Member) { Member member = user as Member; UserPointInfo userPointInfo = new UserPointInfo(); userPointInfo.OrderId = order.OrderId; userPointInfo.UserId = member.UserId; userPointInfo.TradeDate = DateTime.Now; userPointInfo.TradeType = UserPointTradeType.Bounty; userPointInfo.Increased = new int?(order.Points); userPointInfo.Points = order.Points + member.Points; int arg_A2_0 = userPointInfo.Points; if (userPointInfo.Points < 0) { userPointInfo.Points = 2147483647; } SalesProvider.Instance().AddMemberPoint(userPointInfo); int referralDeduct = HiContext.Current.SiteSettings.ReferralDeduct; if (referralDeduct > 0 && member.ReferralUserId.HasValue && member.ReferralUserId.Value > 0) { IUser user2 = Users.GetUser(member.ReferralUserId.Value, false); if (user2 != null && user2.UserRole == UserRole.Member) { Member member2 = user2 as Member; if (member.ParentUserId == member2.ParentUserId && member2.IsOpenBalance) { decimal balance = member2.Balance + order.GetTotal() * referralDeduct / 100m; BalanceDetailInfo balanceDetailInfo = new BalanceDetailInfo(); balanceDetailInfo.UserId = member2.UserId; balanceDetailInfo.UserName = member2.Username; balanceDetailInfo.TradeDate = DateTime.Now; balanceDetailInfo.TradeType = TradeTypes.ReferralDeduct; balanceDetailInfo.Income = new decimal?(order.GetTotal() * referralDeduct / 100m); balanceDetailInfo.Balance = balance; balanceDetailInfo.Remark = string.Format("提成来自{0}的订单{1}", order.Username, order.OrderId); MemberProvider.Instance().InsertBalanceDetail(balanceDetailInfo); } } } SalesProvider.Instance().UpdateUserAccount(order.GetTotal(), order.UserId); int historyPoint = SalesProvider.Instance().GetHistoryPoint(member.UserId); SalesProvider.Instance().ChangeMemberGrade(member.UserId, member.GradeId, historyPoint); Users.ClearUserCache(user); } }
public static bool Recharge(BalanceDetailInfo balanceDetails) { bool result; if (!(result = SubsiteStoreProvider.Instance().IsRecharge(balanceDetails.InpourId))) { result = SubsiteStoreProvider.Instance().AddBalanceDetail(balanceDetails); SubsiteStoreProvider.Instance().RemoveInpourRequest(balanceDetails.InpourId); } return(result); }
public BalanceDetailInfo GetBalanceDetailInfoOfInpurId(string inpourId) { DbCommand sqlStringCommand = base.database.GetSqlStringCommand("SELECT * FROM [dbo].[Hishop_BalanceDetails] WHERE InpourId=@InpourId"); base.database.AddInParameter(sqlStringCommand, "InpourId", DbType.String, inpourId); BalanceDetailInfo result = null; using (IDataReader objReader = base.database.ExecuteReader(sqlStringCommand)) { result = DataHelper.ReaderToModel<BalanceDetailInfo>(objReader); } return result; }
public static bool Recharge(BalanceDetailInfo balanceDetails) { InpourRequestDao inpourRequestDao = new InpourRequestDao(); bool flag = inpourRequestDao.IsRecharge(balanceDetails.InpourId); if (!flag) { flag = new BalanceDetailDao().InsertBalanceDetail(balanceDetails); inpourRequestDao.RemoveInpourRequest(balanceDetails.InpourId); } return(flag); }
static void UpdateUserAccount(OrderInfo order) { int userId = order.UserId; if (userId == 0x44c) { userId = 0; } IUser user = Users.GetUser(userId, false); if ((user != null) && (user.UserRole == UserRole.Member)) { Member member = user as Member; UserPointInfo point = new UserPointInfo(); point.OrderId = order.OrderId; point.UserId = member.UserId; point.TradeDate = DateTime.Now; point.TradeType = UserPointTradeType.Bounty; point.Increased = new int?(order.GetTotalPoints()); point.Points = order.GetTotalPoints() + member.Points; if ((point.Points > 0x7fffffff) || (point.Points < 0)) { point.Points = 0x7fffffff; } SalesProvider.Instance().AddMemberPoint(point); int referralDeduct = HiContext.Current.SiteSettings.ReferralDeduct; if (((referralDeduct > 0) && member.ReferralUserId.HasValue) && (member.ReferralUserId.Value > 0)) { IUser user2 = Users.GetUser(member.ReferralUserId.Value, false); if ((user2 != null) && (user2.UserRole == UserRole.Member)) { Member member2 = user2 as Member; if ((member.ParentUserId == member2.ParentUserId) && member2.IsOpenBalance) { decimal num3 = member2.Balance + ((order.GetTotal() * referralDeduct) / 100M); BalanceDetailInfo balanceDetail = new BalanceDetailInfo(); balanceDetail.UserId = member2.UserId; balanceDetail.UserName = member2.Username; balanceDetail.TradeDate = DateTime.Now; balanceDetail.TradeType = TradeTypes.ReferralDeduct; balanceDetail.Income = new decimal?((order.GetTotal() * referralDeduct) / 100M); balanceDetail.Balance = num3; balanceDetail.Remark = string.Format("提成来自'{0}'的订单{1}", order.Username, order.OrderId); MemberProvider.Instance().InsertBalanceDetail(balanceDetail); } } } SalesProvider.Instance().UpdateUserAccount(order.GetTotal(), order.UserId); int historyPoint = SalesProvider.Instance().GetHistoryPoint(member.UserId); SalesProvider.Instance().ChangeMemberGrade(member.UserId, member.GradeId, historyPoint); Users.ClearUserCache(user); } }
private void btnConfirmPay_Click(object sender, System.EventArgs e) { if (string.IsNullOrEmpty(this.txtTradePassword.Text)) { this.ShowMsg("请输入交易密码", false); return; } int modeId; int.TryParse(base.Request["PayMode"], out modeId); SubsiteStoreHelper.GetPaymentMode(modeId); if ((decimal)this.lblUseableBalance.Money < (decimal)this.lblTotalPrice.Money) { this.ShowMsg("您的预付款金额不足", false); return; } Hidistro.Membership.Context.Distributor distributor = SubsiteStoreHelper.GetDistributor(); if (distributor.Balance - distributor.RequestBalance < this.purchaseOrder.GetPurchaseTotal()) { this.ShowMsg("您的预付款金额不足", false); return; } BalanceDetailInfo balanceDetailInfo = new BalanceDetailInfo(); balanceDetailInfo.UserId = distributor.UserId; balanceDetailInfo.UserName = distributor.Username; balanceDetailInfo.TradeType = TradeTypes.Consume; balanceDetailInfo.TradeDate = System.DateTime.Now; balanceDetailInfo.Expenses = new decimal?(this.purchaseOrder.GetPurchaseTotal()); balanceDetailInfo.Balance = distributor.Balance - this.purchaseOrder.GetPurchaseTotal(); balanceDetailInfo.Remark = string.Format("采购单{0}的付款", this.purchaseOrder.PurchaseOrderId); distributor.TradePassword = this.txtTradePassword.Text; if (!Hidistro.Membership.Context.Users.ValidTradePassword(distributor)) { this.ShowMsg("交易密码错误", false); return; } if (!SubsiteSalesHelper.ConfirmPay(balanceDetailInfo, this.purchaseOrder)) { this.ShowMsg("付款失败", false); return; } SubsiteSalesHelper.SavePurchaseDebitNote(new PurchaseDebitNote { NoteId = Globals.GetGenerateId(), PurchaseOrderId = this.purchaseOrderId, Operator = Hidistro.Membership.Context.HiContext.Current.User.Username, Remark = "分销商采购单预付款支付成功" }); this.ShowMsg("采购单预付款支付成功", true); }