⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bankpay.aspx.cs

📁 易想商城系统
💻 CS
字号:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Shop.Web.UI;
using System.Collections.Generic;

namespace YXShop.Web.Membercenter.Dynamic
{
    public partial class BankPay : System.Web.UI.Page
    {
        public static string orderId = "";
        public static int userID = 0;
        private static decimal orderPrice = 0;
        private decimal outPrice = 0;

        private static decimal remiPrice = 0;
        private static decimal paymPrice = 0;
        private static decimal prepPrice = 0;

        private static string ConsiEmail = "";
        YXShop.BLL.Orders bll = new YXShop.BLL.Orders();
        YXShop.BLL.BankAccount bankBll = new YXShop.BLL.BankAccount();
        YXShop.BLL.MemberInfo membBll = new YXShop.BLL.MemberInfo();
        YXShop.BLL.UserInAndExp UIAEBll = new YXShop.BLL.UserInAndExp();

        BasePage bp = new BasePage();
        YXShop.BLL.RemittanceInfo Remibll = new YXShop.BLL.RemittanceInfo();//银行支付
        YXShop.BLL.PaymentMoney paymbll = new YXShop.BLL.PaymentMoney();//现金支付
        YXShop.BLL.PrepayMoney prepbll = new YXShop.BLL.PrepayMoney();//预付款支付

        protected void Page_Load(object sender, EventArgs e)
        {
            YXShop.DBUtility.ExitMemberCenter.ExitDynamic();
            if ((!IsPostBack) || ((Request["Event"] != null) && (Request["Event"] != "")))
            {
                //初始化信息(订单信息,银行信息,支付信息)
                if (!string.IsNullOrEmpty(Request.QueryString["OrderID"]))
                {
                    orderId = YXShop.Common.WebUtility.replaceStr(Request.QueryString["OrderID"]);
                    bindOrderInfo(orderId);
                    BindBank(DropDownList1);
                }
                else
                {
                    Response.Redirect("orderList.aspx");
                }
            }
        }
        /// <summary>
        /// 绑定订单数据及其它
        /// </summary>
        /// <param name="orderID"></param>
        private void bindOrderInfo(string orderID)
        {
            List<YXShop.Model.Orders> li = bll.GetListByColumn("OrderID", orderID);
            YXShop.Model.RemittanceInfo bankModel = Remibll.GetModel(orderId);
            YXShop.Model.PaymentMoney paymModel = paymbll.GetModel(orderId);
            YXShop.Model.PrepayMoney prepModel = prepbll.GetModel(orderId);
            if (li.Count == 1)
            {
                orderPrice = Convert.ToDecimal(li[0].FactPrice);//实际订单价
                remiPrice = Convert.ToDecimal(bankModel != null ? bankModel.RemittanceMoney : 0);
                paymPrice = Convert.ToDecimal(paymModel != null ? paymModel.GatheringMoney : 0);
                prepPrice = Convert.ToDecimal(prepModel != null ? prepModel.PayoutMoney : 0);

                userID = int.Parse(li[0].UserId);
                Label1.Text = UserReal(userID);
                myuser.Text = UserName(userID);
                ConsiEmail = li[0].ConsigneeEmail;
                Label3.Text = li[0].OrderId;
                Label4.Text = orderPrice.ToString();
                Label5.Text = (remiPrice + paymPrice + prepPrice).ToString();//已经支付
                TextBox4.Text = (orderPrice - remiPrice - paymPrice - prepPrice).ToString();
                TextBox2.Text = li[0].Remark;
                TextBox1.Text = Convert.ToInt32(li[0].TotalPrice).ToString();
                if (orderPrice <= (remiPrice + paymPrice + prepPrice))
                {
                    //如果已经支付清,就转到对应信息页面
                    YXShop.Common.alert.ShowAndRedirectgo(this, "订单已经支付清!", "orderInfo.aspx?OrderID=" + orderId);

                }
            }
        }

        #region 客户信息查询
        protected string UserName(int UserID)
        {
            string str = "";
            YXShop.BLL.UserCommon ucBll = new YXShop.BLL.UserCommon();
            List<YXShop.Model.UserCommon> ucList = ucBll.GetListByColumn("UID", UserID);
            if (ucList.Count > 0)
            {
                str = ucList[0].UserName;
            }
            return str;
        }
        protected string UserReal(int UserID)
        {
            string str = "";
            YXShop.BLL.MemberInfo data = new YXShop.BLL.MemberInfo();
            List<YXShop.Model.MemberInfo> dataStr = data.GetListByColumn("UID", UserID);
            if (dataStr.Count > 0)
            {
                str = dataStr[0].cTrueName;
            }
            return str;
        }
        #endregion
        /// <summary>
        /// 绑定银行数据
        /// </summary>
        /// <param name="ddl"></param>
        protected void BindBank(DropDownList ddl)
        {
            YXShop.BLL.BankAccount bank = new YXShop.BLL.BankAccount();
            int j = 0;
            int i = 0;
            List<YXShop.Model.BankAccount> modelList = bank.GetListByColumn("BC_PutoutID",Session["MemberID"],1, 20, out j, out i);
            ListItem li = null;
            foreach (YXShop.Model.BankAccount model in modelList)
            {
                li = new ListItem();
                li.Value = model.BC_Id.ToString();
                li.Text = model.BC_Bankac;
                ddl.Items.Add(li);
            }
        }

        protected void saveInfo_Click(object sender, EventArgs e)
        {
            YXShop.Model.UserInAndExp userInAndExp = null;
            YXShop.Model.RemittanceInfo Remittance = new YXShop.Model.RemittanceInfo();

            #region 已付款计算
            decimal inPrice = Convert.ToDecimal(TextBox4.Text.Trim());
            decimal totalPrice = inPrice + remiPrice + prepPrice + paymPrice;
            if (totalPrice > orderPrice)
            {
                //多余的款项
                outPrice = totalPrice - orderPrice;
            }
            bool bl = CheckBox1.Checked;
            if (bl)
            {
                //汇款总金额
                if (outPrice > 0)
                {
                    Remittance.RemittanceMoney = (inPrice + remiPrice - outPrice);
                }
                else
                {
                    Remittance.RemittanceMoney = (inPrice + remiPrice);//银行转帐录入金额
                }
            }
            else
            {
                Remittance.RemittanceMoney = (inPrice + remiPrice);//银行转帐录入金额
            }
            #endregion
            #region 银行汇款信息
            Remittance.OrderID = orderId;
            Remittance.UserName = myuser.Text;
            Remittance.RemittanceDate = getMoneyDate.Date;
            Remittance.RemintanceBank = Convert.ToInt32(DropDownList1.SelectedValue);
            if (CheckBox2.Checked)
            {
                Remittance.PresentTicket = this.TextBox1.ToString() != string.Empty ? Convert.ToDecimal(TextBox1.Text) : 0;
            }
            else
            {
                Remittance.PresentTicket = 0;
            }
            Remittance.Remark = YXShop.Common.WebUtility.replaceStr(TextBox2.Text.Trim()) == string.Empty ? "支付订单费用。订单号:" + orderId + "" : YXShop.Common.WebUtility.replaceStr(TextBox2.Text.Trim());
            Remittance.InformMode = GetInforMode(CheckBoxList1)["txt"];
            Remittance.NoteDate = DateTime.Now;
            Remittance.NoteName = Session["MemberName"].ToString();
            #endregion

            //int userID = membBll.getUserIDByName(myuser.Text);//通过用户名找寻用户编号
            if (userID == 0)
            {
                
                bp.PageError("该用户不存在!","BandPay.aspx");
            }
            //更新用户表//YXShop_UserInAndExp

            #region 用户交易明细
            userInAndExp = new YXShop.Model.UserInAndExp();
            userInAndExp.UserID = userID;
            userInAndExp.AdsumMoneyDate = getMoneyDate.Date;
            userInAndExp.AdsumMoney = Convert.ToDecimal(TextBox4.Text);
            userInAndExp.PresentTicket = this.TextBox1.ToString() != string.Empty ? Convert.ToDecimal(TextBox1.Text) : 0;
            userInAndExp.RemitJoinMode = 1;
            userInAndExp.RemitJoinBank = DropDownList1.SelectedItem.Text;
            userInAndExp.Remark = YXShop.Common.WebUtility.replaceStr(TextBox2.Text.Trim()) == string.Empty ? "支付订单费用。订单号:" + orderId + "" : YXShop.Common.WebUtility.replaceStr(TextBox2.Text.Trim());//备注
            userInAndExp.InformMode = GetInforMode(CheckBoxList1)["txt"];//通知方式
            userInAndExp.BosomNote = YXShop.Common.WebUtility.replaceStr(TextBox5.Text);//内部信息
            userInAndExp.NoteDate = DateTime.Now;
            userInAndExp.NoteName = Session["MemberName"].ToString();
            userInAndExp.incomeAndExpStatus = 1;
            userInAndExp.Status = 0;
            #endregion

            #region 信息通知
            //foreach (ListItem lItem in CheckBoxList1.Items)
            //{
            //    if (lItem.Selected)
            //    {
            //        for (int i = 0; i < CheckBoxList1.Items.Count; i++)
            //        {
            //            switch (i)
            //            {
            //                case 0:
            //                    //发短信
            //                    break;
            //                case 1:
            //                    //发邮件
            //                    break;
            //                case 2:
            //                    //发邮件
            //                    break;
            //                default:
            //                    break;
            //            }
            //        }
            //    }
            //} 
            #endregion

            #region 数据处理
            try
            {
                //用户明细信息添加
                UIAEBll.Add(userInAndExp);

                if (Remibll.UpdateMoney(Remittance) != 1)
                {
                    Remibll.Add(Remittance);
                }
                //付款状态,订单状态
                if (totalPrice >= orderPrice)
                {
                    bll.UpdateOrders("PaymentStatus", YXShop.Common.StatuEnum.PaymentStatu.已经付清.GetHashCode(), orderId);
                }
                else
                {
                    bll.UpdateOrders("PaymentStatus", YXShop.Common.StatuEnum.PaymentStatu.未付清.GetHashCode(), orderId);
                    bll.UpdateOrders("OrderStatus", YXShop.Common.StatuEnum.OrderStatu.未结清.GetHashCode(), orderId);
                }
                if (bl)
                {
                    if (outPrice > 0)
                    {
                        membBll.addUserMoney(userID, outPrice);
                    }
                }

            }
            catch (Exception ex)
            {

                bp.PageError(ex.Message, "BandPay.aspx");
            }
            finally
            {
                bp.PageRight("银行支付成功!", "OrdersInfo.aspx?OrderId=" + orderId + "");
            }
            #endregion
        }

        private Dictionary<string, string> GetInforMode(CheckBoxList CbList)
        {
            string val = string.Empty;
            string txt = string.Empty;
            foreach (ListItem lItem in CbList.Items)
            {
                if (lItem.Selected)
                {
                    val += lItem.Value + ",";
                    txt += lItem.Text + ",";
                }
            }
            Dictionary<string, string> dic = new Dictionary<string, string>();
            dic.Add("val", val.TrimEnd(','));
            dic.Add("txt", val.TrimEnd(','));
            return dic;
        }

        /// <summary>
        /// 发送站内短信
        /// </summary>
        /// <param name="sendByName">发件人</param>
        /// <param name="userID">收件人编号</param>
        /// <param name="getByName">收件人姓名</param>
        /// <param name="title">标题</param>
        /// <param name="content">内容</param>
        //private void SendMail(string sendByName,int userID,string getByName,string title,string content) 
        //{
        //    YXShop.BLL.Shortnews sNewsBll = new YXShop.BLL.Shortnews();
        //    YXShop.Model.Shortnews sNewsModel = new YXShop.Model.Shortnews();
        //    sNewsModel.NM_Addresser = sendByName;
        //    sNewsModel.NM_Appearance = 1;
        //    sNewsModel.NM_Consignee = getByName;
        //    sNewsModel.NM_Headline = title;
        //    sNewsModel.NM_MemberID = userID;
        //    sNewsModel.NM_Read = 0;
        //    sNewsModel.NM_SendoutTime = DateTime.Now;
        //    sNewsModel.NM_Text = content;
        //    try
        //    {
        //        sNewsBll.Create(sNewsModel);
        //    }
        //    catch { }
        //}
        //private void SendEMail() 
        //{

        //}
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -