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

📄 orderinfo.aspx.cs

📁 商业源码
💻 CS
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

using System.Data.OleDb;
using System.Web.Security;

namespace SCard
{
	/// <summary>
	/// orderinfo 的摘要说明。
	/// </summary>
	public class orderinfo : System.Web.UI.Page
	{
        protected System.Web.UI.WebControls.Label lblPName;
        protected System.Web.UI.WebControls.Label lblOrderID;
        protected System.Web.UI.WebControls.Label lblPPrice;
        protected System.Web.UI.WebControls.Label lblPNum;
        protected System.Web.UI.WebControls.Label lblTotalPrice;
        protected System.Web.UI.WebControls.Label lblTName;
        protected System.Web.UI.WebControls.Label lblEmail;
        protected System.Web.UI.WebControls.Label lblPhone;
        protected System.Web.UI.HtmlControls.HtmlInputHidden merchant_id;
        protected System.Web.UI.HtmlControls.HtmlInputHidden orderid;
        protected System.Web.UI.HtmlControls.HtmlInputHidden amount;
        protected System.Web.UI.HtmlControls.HtmlInputHidden commodity_info;
        protected System.Web.UI.HtmlControls.HtmlInputHidden merchant_url;
        protected System.Web.UI.HtmlControls.HtmlInputHidden merchant_param;
        protected System.Web.UI.HtmlControls.HtmlInputHidden pname;
        protected System.Web.UI.HtmlControls.HtmlInputHidden currency;
        protected System.Web.UI.HtmlControls.HtmlInputHidden isSupportDES;
        protected System.Web.UI.HtmlControls.HtmlInputHidden mac;
        protected System.Web.UI.WebControls.Label lblBack;
        protected System.Web.UI.WebControls.Label lblPFPrice;
        protected System.Web.UI.WebControls.Label lblPNPrice;
        protected System.Web.UI.WebControls.Label lblIsStock;
        protected System.Web.UI.HtmlControls.HtmlImage myImg;
        protected System.Web.UI.WebControls.Label lblPName1;
        protected System.Web.UI.HtmlControls.HtmlForm Form1;
    
		private void Page_Load(object sender, System.EventArgs e)
		{
            Response.Buffer=true;
            Response.ExpiresAbsolute=DateTime.Now.AddSeconds(-1);
            Response.Expires=0;
            Response.CacheControl="no-cache";

            if( !IsPostBack )
            {
                if( Session["myOrder"] == null )
                {
                    Response.Redirect("index.aspx");
                    return;
                }

                //返回操作
                if( Request.QueryString["key"] ==null || Request.QueryString["key"].ToString() == String.Empty )
                {
                    Response.Redirect("index.aspx");
                    return;
                }
                string strBack = Request.QueryString["key"].ToString();
                strBack = Server.UrlDecode( strBack );
                lblBack.Text = "<a href='" + strBack + "'>返回</a>";

                Order myOrder = (Order)Session["myOrder"];
                string strOID       = myOrder.OID;
                string strPID       = myOrder.PID;
                string strPName     = myOrder.PName;
                string strPNum      = myOrder.PNum;
                string strPPrice    = myOrder.PPrice;
                string strTotalPrice = myOrder.TotalPrice;
                string strTName     = myOrder.TName;
                string strEmail     = myOrder.Email;
                string strPhone     = myOrder.Phone;
                string strPCPrice   = myOrder.PCPrice;//成本

                if( strOID == String.Empty )//是否有订单编号
                {
                    strOID = getNewOrderID();
                    DBConn myDB = new DBConn();
                    string sql = "insert into [Order](OID,PID,PName,PNum,PPrice,TotalPrice,Pubdate,TName,Email,Phone,PCPrice) values('" +
                                strOID + "'," + strPID + ",'" + strPName + "'," + strPNum + "," + strPPrice + "," + strTotalPrice + ",'" +
                                DateTime.Now + "','" +strTName + "','" + strEmail + "','" + strPhone + "'," + strPCPrice + ")";
                    myDB.ExecuteNonQuery( sql );
                    myDB.Close();

                    myOrder.OID = strOID;
                    Session["myOrder"] = myOrder;
                }

                lblOrderID.Text = strOID; 
                lblPName.Text = strPName;    
                lblPNum.Text = strPNum;    
                lblPPrice.Text = strPPrice;    
                lblTotalPrice.Text = strTotalPrice;
                lblTName.Text = strTName;    
                lblEmail.Text = strEmail;    
                lblPhone.Text = strPhone;
     

                //-- 给网上银行网关传参赋值

                String strmerchant_id = getMerchantID();//获取 商户编号  
                String strorderid = strOID;     //订单编号
                String stramount = strTotalPrice;     //支付金额
                String strcurrency = "1";      //货币类型 。1为RMB
                String strcommodity_info = strPName + "  所购数量: " + strPNum;    //商品信息
                String strpname = strTName;      //收货人姓名
                String strmerchant_url = getMerchantZURL();//获取 商家接受支付结果的URL
                String strmerchant_param = ""; //商家需要回传的额外参数,如果是多个参数,以|分隔
   
                String strkey = getMerchantKey();//获取 私钥值
   
                //注意正确的参数串拼凑顺序
                string src = "merchant_id=" + strmerchant_id + "&orderid=" + strorderid + "&amount=";
                src += stramount + "&merchant_url=" + strmerchant_url;  
                src += "&merchant_key=" + strkey;
      
                //md5加密
                String strmac = FormsAuthentication.HashPasswordForStoringInConfigFile( src ,"MD5");

                merchant_id.Value = strmerchant_id;
                orderid.Value = strorderid;
                amount.Value = stramount;
                commodity_info.Value = Server.HtmlEncode( strcommodity_info );
                merchant_url.Value = strmerchant_url;
                merchant_param.Value = strmerchant_param;
                pname.Value = Server.HtmlEncode( strpname );
                currency.Value = strcurrency;
                isSupportDES.Value = "2";
                mac.Value = strmac;

            }
		}

        private string getMerchantZURL()//获取 商家接受支付结果的URL
        {
            string s = "";

            DBConn myDB = new DBConn();
            string mySql="select [text] from [wangguan] where [id]='2'";
            OleDbDataReader mydr  = myDB.getDataReader( mySql );
            if( mydr.Read() )
            {
                s = mydr["text"].ToString();
            }
            mydr.Close();
            myDB.Close();

            return s;
        }

        private string getMerchantKey()//获取 私钥值
        {
            string s = "";

            DBConn myDB = new DBConn();
            string mySql="select [text] from [wangguan] where [id]='1'";
            OleDbDataReader mydr  = myDB.getDataReader( mySql );
            if( mydr.Read() )
            {
                s = mydr["text"].ToString();
            }
            mydr.Close();
            myDB.Close();

            //加密对象
            DCard.Encode myEncode = new DCard.Encode();
            try
            { 
                s = myEncode.DecryptString( s );
            }
            catch
            {
                //如果不是已加密字符串 就会出错
            }

            return s;
        }

        private string getMerchantID()//获取 商户编号
        {
            string s = "";

            DBConn myDB = new DBConn();
            string mySql="select [text] from [wangguan] where [id]='0'";
            OleDbDataReader mydr  = myDB.getDataReader( mySql );
            if( mydr.Read() )
            {
                s = mydr["text"].ToString();
            }
            mydr.Close();
            myDB.Close();

            return s;
        }

        private string getNewOrderID()//获取新的流水帐号
        {
            string strOrderID = "";

            DateTime myTime=System.DateTime.Now;
            strOrderID  = myTime.Year.ToString();
            strOrderID += myTime.Month.ToString("00");
            strOrderID += myTime.Day.ToString("00");
            strOrderID += myTime.Hour.ToString("00");
            strOrderID += myTime.Minute.ToString("00");
            strOrderID += myTime.Second.ToString("00");
            strOrderID += myTime.Millisecond.ToString("000");

            DBConn myDB = new DBConn();
            string sql = "select OID from [Order] order by OID desc";
            OleDbDataReader dr = myDB.getDataReader( sql );
            if( dr.Read() )
            {
                string strTemp = dr["OID"].ToString();
                int iTemp = Int32.Parse( strTemp.Substring( strTemp.Length - 2 ,2) ) + 1;
                strOrderID += ( iTemp % 100 ).ToString("00");
            }
            else
            {
                strOrderID += "00";
            }
            dr.Close();
            myDB.Close();

            return strOrderID;
        }
        

		#region Web 窗体设计器生成的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{    
            this.Load += new System.EventHandler(this.Page_Load);

        }
		#endregion

        private void btnBack_Click(object sender, System.EventArgs e)
        {
           
        }
	}
}

⌨️ 快捷键说明

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