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

📄 order.aspx.cs

📁 人力资源管理系统
💻 CS
📖 第 1 页 / 共 2 页
字号:
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 COAdmin.BLL ;
using COAdmin.COMMON ;

namespace COAdmin.USL
{
	/// <summary>
	/// Order 的摘要说明。
	/// </summary>
	public class Order : System.Web.UI.Page
	{
		#region 控件和变量
		protected System.Web.UI.WebControls.Label Label1;
		protected System.Web.UI.WebControls.Label Label2;
		protected System.Web.UI.WebControls.TextBox tb_PostCode;
		protected System.Web.UI.WebControls.DataGrid dg;
		protected System.Web.UI.WebControls.TextBox tb_CrUsr;
		protected System.Web.UI.WebControls.TextBox tb_CrDT;
		protected System.Web.UI.WebControls.TextBox tb_MdUsr;
		protected System.Web.UI.WebControls.TextBox tb_MDDT;
		protected System.Web.UI.WebControls.TextBox tb_OrderID;
		protected System.Web.UI.WebControls.TextBox tb_RsvName;
		protected System.Web.UI.WebControls.TextBox tb_RsvTel;
		protected System.Web.UI.WebControls.TextBox tb_RsvAddress;
		protected System.Web.UI.WebControls.TextBox tb_TotalPrice;
		protected System.Web.UI.WebControls.TextBox tb_Freight;
		protected System.Web.UI.WebControls.TextBox tb_ProdPrice;
		protected System.Web.UI.WebControls.TextBox tb_GetMoney;
		protected System.Web.UI.WebControls.DropDownList ddl_Coupon;
		protected System.Web.UI.WebControls.TextBox tb_SendDt;
		protected System.Web.UI.WebControls.DropDownList ddl_RsvType;
		protected System.Web.UI.WebControls.DropDownList ddl_Status;
		protected System.Web.UI.WebControls.DropDownList ddl_PayType;
		protected System.Web.UI.WebControls.RequiredFieldValidator R2;
		protected System.Web.UI.WebControls.TextBox tb_InovoiceTitle;
		protected System.Web.UI.WebControls.Label Label3;
		protected System.Web.UI.WebControls.TextBox tb_ProductID;
		protected System.Web.UI.WebControls.TextBox tb_UnitPrice;
		protected System.Web.UI.WebControls.TextBox tb_SellPrice;
		protected System.Web.UI.WebControls.TextBox tb_OrderNum;
		protected System.Web.UI.WebControls.TextBox tb_Code;
		protected System.Web.UI.WebControls.TextBox tb_ProductName;
		protected System.Web.UI.WebControls.Button b_Code;
		protected System.Web.UI.WebControls.Button b_OrderHist;
		protected System.Web.UI.WebControls.Button b_Save;
		protected System.Web.UI.WebControls.Button b_Clear;
		protected System.Web.UI.WebControls.Button b_AddCart;
		protected System.Web.UI.WebControls.Button b_ModCart;
		protected System.Web.UI.WebControls.Button b_DelCart;
		protected System.Web.UI.WebControls.RequiredFieldValidator R1;
		protected System.Web.UI.HtmlControls.HtmlInputHidden hIndex;
		protected System.Web.UI.HtmlControls.HtmlInputHidden hCartID;
		protected System.Web.UI.HtmlControls.HtmlInputHidden hODID;
		protected System.Web.UI.WebControls.Button b_Delete;
		protected System.Web.UI.WebControls.TextBox tb_Discont;
		protected System.Web.UI.WebControls.TextBox tb_RealPrice;
		protected System.Web.UI.WebControls.TextBox tb_Coupon;
		DataTable dtCart=null ;
		protected System.Web.UI.WebControls.DropDownList ddl_Leaguer;
		protected System.Web.UI.WebControls.CheckBox cb_IsInvoice;
		Usr usr = null ;
		#endregion
	
		#region Page_Load
		private void Page_Load(object sender, System.EventArgs e)
		{
			usr = COAdminGlobals.LoginUsr ;

			if(usr == null)
			{
				//重定义到登录页面
				CommHandler.ReDirURL(Page) ;
			}

			dtCart = (DataTable)Session["dtCart"] ;
			if(dtCart==null)
			{
				dtCart = this.CreateDtCart() ;
			}
			if(COAdminGlobals.CustomerID == 0)
			{
				// 如果客户号为空,重定向到客户登录页面
				CommHandler.ReDirURL(Page,"Customer.aspx") ;
			}

			if(!IsPostBack)
			{
				//初始化下拉框
				InitDDL() ;
				string odid = CommHandler.GetRequest(Page,"ODID") ;
				if(odid != "")
				{
					GetOrder(odid) ;
					hODID.Value = odid ;
				}
				else
				{
					//界面默认显示客户
					this.tb_RsvName.Text = COAdminGlobals.CustomerName  ;
					this.tb_RsvAddress.Text = COAdminGlobals.Address  ;
				}
			}
			//表格数据绑定
			CommHandler.BindGrid(dg,dtCart) ;
		}

		/// <summary>
		/// 初始化下拉框
		/// </summary>
		private void InitDDL()
		{
			//参数
			object[] para = new object[] {COAdminGlobals.CustomerID} ;
			//送货方式
			CommHandler.DDL_Init(this.ddl_RsvType,"RSVTYPE",false) ;
			//付款方式
			CommHandler.DDL_Init(this.ddl_PayType,"PAYTYPE",false) ;
			//订单状态
			CommHandler.DDL_Init(this.ddl_Status,"ORDERSTATUS",false) ;
			//使用礼券
			CommHandler.DDL_Init(this.ddl_Coupon,"CO_COUPON_GetForDDL",para,true) ;

			//会员卡
			CommHandler.DDL_Init(this.ddl_Leaguer,"CO_Leaguer_GetForDDL",para,false) ;
			//会员折扣
			if(CommHandler.StringToDouble(ddl_Leaguer.SelectedValue) != 0)
			{
				this.tb_Discont.Text = ddl_Leaguer.SelectedValue ;
			}

			//配送费,统一为5元
			this.tb_Freight.Text = "5" ;
		}

		/// <summary>
		/// 根据订单号查询订单信息
		/// </summary>
		/// <param name="odid">订单号</param>
		private void GetOrder(string odid)
		{
			//订单ID
			int id = CommHandler.StringToInt(odid) ;

			if(id==0)
			{
				return ;
			}

			//查询
			OrderInfo oi = new OrderInfo() ;

			if( oi.GetOrder(id) == 0 )
			{
				//若查询成功,显示
				ShowInfo(oi) ;
			}
		}

		/// <summary>
		/// 将订单信息显示在界面
		/// </summary>
		/// <param name="oi">订单信息对象</param>
		private void ShowInfo(OrderInfo oi)
		{
			this.tb_CrDT.Text = CommHandler.DateTimeToString(oi.CRDT) ;
			this.tb_CrUsr.Text = oi.CRUSR ;
			this.tb_Freight.Text = oi.Freight.ToString() ;
			this.tb_GetMoney.Text = oi.GetMoney.ToString() ;
			this.tb_InovoiceTitle.Text = oi.InvoiceTitle ;
			this.tb_MDDT.Text = CommHandler.DateTimeToString(oi.MDDT) ;
			this.tb_MdUsr.Text = oi.mdusr;
			this.tb_OrderID.Text = oi.OrderID.ToString() ;
			this.tb_ProdPrice.Text = oi.ProdPrice.ToString() ;
			this.tb_RsvAddress.Text = oi.RsvAddress ;
			this.tb_RsvName.Text = oi.RsvName ;
			this.tb_RsvTel.Text = oi.RsvTel ;
			this.tb_SendDt.Text = CommHandler.DateTimeToString(oi.SENDDT) ;
			this.tb_TotalPrice.Text = oi.TotalPrice.ToString() ;
			this.tb_Coupon.Text = oi.UseCoupon.ToString() ;

			// 如果订单使用过礼券,不能再修改礼券信息
			if(oi.UseCoupon != 0)
			{
				this.ddl_Coupon.Enabled = false ;
			}

			//显示购物车信息
			dtCart = Cart.GetCartByOrderID(oi.OrderID) ;
			Session["dtCart"] = dtCart ;
		}
		#endregion

		#region Web 窗体设计器生成的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{    
			this.b_OrderHist.Click += new System.EventHandler(this.b_OrderHist_Click);
			this.b_Save.Click += new System.EventHandler(this.b_Save_Click);
			this.b_Delete.Click += new System.EventHandler(this.b_Delete_Click);
			this.b_Clear.Click += new System.EventHandler(this.b_Clear_Click);
			this.ddl_Coupon.SelectedIndexChanged += new System.EventHandler(this.ddl_Coupon_SelectedIndexChanged);
			this.cb_IsInvoice.CheckedChanged += new System.EventHandler(this.cb_IsInvoice_CheckedChanged);
			this.b_Code.Click += new System.EventHandler(this.b_Code_Click);
			this.b_AddCart.Click += new System.EventHandler(this.b_AddCart_Click);
			this.b_ModCart.Click += new System.EventHandler(this.b_ModCart_Click);
			this.b_DelCart.Click += new System.EventHandler(this.b_DelCart_Click);
			this.dg.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.dg_ItemCommand);
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion

		#region 查看订单历史
		private void b_OrderHist_Click(object sender, System.EventArgs e)
		{
			//先检查用户角色
			if(!usr.HasRole("SrchOrder"))
			{
				CommHandler.Alert(Page,"对不起,您不具备查询订单角色!") ;
				return ;
			}

			//订单历史页面Url
			string url = "OrderHist.aspx" ;
			//弹出模态对话框
			CommHandler.IFrame_PopUp(Page,url,"600","400") ;				
		}
		#endregion
        
		#region 保存订单信息
		private void b_Save_Click(object sender, System.EventArgs e)
		{			
			int odid = CommHandler.StringToInt(this.hODID.Value ) ;
			OrderInfo oi = new OrderInfo() ;
			int ret = 0 ;

			if(dtCart.Rows.Count==0)
			{
				CommHandler.Alert(Page,"保存订单前请添加商品!") ;
				return ;				
			}

			if(odid==0)
			{
				//新建

				//先检查用户角色
				if(!usr.HasRole("AddOrder"))
				{
					CommHandler.Alert(Page,"对不起,您不具备新建订单角色!") ;
					return ;
				}

				BindOD(oi) ;
				//新建订单状态为订购
				oi.Status = "1" ;     

				ret = oi.AddOrder() ;
				if(ret > 0)
				{					
					this.tb_OrderID.Text = ret.ToString() ;
					//保存购物车
					SaveCart(ret) ;
					//使用礼券
					if(oi.UseCoupon != 0)
					{
						UseCoupon() ;

						//已使用过之后,不能修改礼券
						this.ddl_Coupon.Enabled = false ;
					}

					CommHandler.Alert(Page,"订单信息添加成功!") ;

					return ;
				}
			}
			else
			{
				//修改

				//先检查用户角色
				if(!usr.HasRole("ModOrder"))
				{
					CommHandler.Alert(Page,"对不起,您不具备修改订单角色!") ;
					return ;
				}

				//只能修改订购状态的
				if(this.ddl_Status.SelectedValue != "1")
				{
					CommHandler.Alert(Page,"对不起,已发货的订单不能修改!") ;
					return ;
				}

				BindOD(oi) ;
				oi.OrderID = odid ;
				ret = oi.ModifyOrder() ;

				if(ret > 0)
				{
					//保存购物车
					SaveCart(ret) ;
					CommHandler.Alert(Page,"订单信息修改成功!") ;
					return ;
				}
			}		
		}

		/// <summary>
		/// 绑定订单基本信息
		/// </summary>
		/// <param name="oi">订单信息对象</param>
		private void BindOD(OrderInfo oi)
		{
			oi.CRUSR = usr.UserID ;
			oi.CustID = COAdminGlobals.CustomerID ;
			oi.Discount = this.tb_Discont.Text.Trim() ;  //打折
			oi.Freight = CommHandler.StringToDouble(this.tb_Freight.Text.Trim()) ;
			oi.InvoiceTitle = this.tb_InovoiceTitle.Text ;
			oi.IsInvoice = this.cb_IsInvoice.Checked ?"Y":"N" ;
			oi.mdusr = usr.UserID ;
			oi.PayType = this.ddl_PayType.SelectedValue ;
			oi.ProdPrice = CommHandler.StringToDouble(this.tb_ProdPrice.Text.Trim()) ;
			oi.RsvAddress = this.tb_RsvAddress.Text ;
			oi.RsvName = this.tb_RsvName.Text ;
			oi.RsvTel = this.tb_RsvTel.Text ;
			oi.RsvType = this.ddl_RsvType.SelectedValue ;			
			oi.TotalPrice = CommHandler.StringToDouble(this.tb_TotalPrice.Text.Trim()) ;
			oi.UseCoupon = CommHandler.StringToInt(tb_Coupon.Text.Trim()) ; //用券
			
		}
		#endregion

		#region 删除订单
		private void b_Delete_Click(object sender, System.EventArgs e)
		{
			//先检查用户角色
			if(!usr.HasRole("DelOrder"))
			{
				CommHandler.Alert(Page,"对不起,您不具备删除订单角色!") ;
				return ;
			}

			int odid = CommHandler.StringToInt(this.tb_OrderID.Text ) ;
			if(odid==0)
			{
				CommHandler.Alert(Page,"请查询要删除的订单!") ;
				return ;
			}
			//执行删除操作
			OrderInfo.DeleteOrder(odid,usr.UserID) ;		
		}
		#endregion

		#region 清空画面
		private void b_Clear_Click(object sender, System.EventArgs e)
		{
			//清空购物车部分
			ClearCart() ;
			dtCart = null ;
			dtCart = this.CreateDtCart() ;

			//清空订单部分
			ClearOD() ;		
		}

⌨️ 快捷键说明

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