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

📄 orderticketmod2.aspx.cs

📁 可供共享学习.net环境下生产管理的实现
💻 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 Botheighten.Yanghui.BusinessFacade;
using Botheighten.Yanghui.Framework;
using Botheighten.Yanghui.BusinessRules;
using Botheighten.Yanghui.Web.Controls;

namespace Botheighten.Yanghui.Web
{
	/// <summary>
	/// OrderTicketMod2 的摘要说明。
	/// </summary>
	public class OrderTicketMod2 : BasePage
	{
		protected System.Web.UI.WebControls.Label lblTitle;
		protected System.Web.UI.WebControls.Label Label6;
		protected System.Web.UI.WebControls.TextBox txtOrderId;
		protected System.Web.UI.WebControls.ValidationSummary ErrorSummary;
		protected System.Web.UI.WebControls.Label Label7;
		protected System.Web.UI.WebControls.TextBox txtBOMCode;
		protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator2;
		protected System.Web.UI.WebControls.DropDownList ddlBOMCode;
		protected System.Web.UI.WebControls.Label Label8;
		protected System.Web.UI.WebControls.TextBox txtQuantity;
		protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1;
		protected System.Web.UI.WebControls.RangeValidator RangeValidator1;
		protected System.Web.UI.WebControls.DropDownList ddlUnit;
		protected System.Web.UI.WebControls.Label Label10;
		protected System.Web.UI.WebControls.DropDownList drpYear;
		protected System.Web.UI.WebControls.DropDownList drpMonth;
		protected System.Web.UI.WebControls.DropDownList drpDay;
		protected System.Web.UI.WebControls.Label Label11;
		protected System.Web.UI.WebControls.DropDownList drpEYear;
		protected System.Web.UI.WebControls.DropDownList drpEMonth;
		protected System.Web.UI.WebControls.DropDownList drpEDay;
		protected System.Web.UI.WebControls.Label Label12;
		protected System.Web.UI.WebControls.TextBox txtOrderRemark;
		protected System.Web.UI.WebControls.Label Label13;
		protected System.Web.UI.WebControls.DataGrid gridOrderLine;
		protected System.Web.UI.WebControls.Button Button2;
		protected System.Web.UI.WebControls.Button btnContinue;
		protected System.Web.UI.WebControls.Button btnGoBack;
		protected System.Web.UI.WebControls.Label lblMessage;
		protected System.Web.UI.HtmlControls.HtmlTable tableBOM;
		protected System.Web.UI.WebControls.Label Label1;
		protected System.Web.UI.WebControls.DropDownList ddlFlag;

		protected OrderHead_C OrderHead_C1;
	
		private void Page_Load(object sender, System.EventArgs e)
		{
			// 在此处放置用户代码以初始化页面

			Principal p=this.CurrentUser();
			this.CheckPermissionPage(p.Id,"","201");
			this.lblMessage.Visible=false;
			//this.GoBackFunction(this.btnGoBack);

			if(!Page.IsPostBack)
			{
				string ohid="";
				if(Request.QueryString["OHID"]!=null)
					ohid=Request.QueryString["OHID"].ToString();

				string oid="";
				if(Request.QueryString["OID"]!=null)
					oid=Request.QueryString["OID"].ToString();

				this.ViewState["OID"]=oid;

				this.ViewState["OHID"]=ohid;
					
				this.InitPage();
			}
		}
		
		private void InitPage()
		{
			OrderHead_C1.OrderHeadId=this.ViewState["OHID"].ToString();
			OrderHead_C1.Bind();

			DataTable dtBOM=BOMSystem.AllBOM();
			Common.BindDrop(this.ddlBOMCode,dtBOM,BOM.CODE,BOM.CODE,"请选择...","");

			DataTable dtUnit=UnitSystem.AllUnit("Y");
			Common.BindDrop(this.ddlUnit,dtUnit,BusinessRules.Unit.CODE,BusinessRules.Unit.ID);


			this.BindDropDate(drpYear,drpMonth,drpDay);
			this.BindDropDate(drpEYear,drpEMonth,drpEDay);	

			Common.BindDrop(this.drpYear,this.drpMonth,this.drpDay,DateTime.Now);
			Common.BindDrop(this.drpEYear,this.drpEMonth,this.drpEDay,DateTime.Now);

			this.InitUpdate();
		}

		private void InitUpdate()
		{
			string oid=this.ViewState["OID"].ToString();
			if(oid!="")
			{
				Order o=new Order();
				o.Id=oid;
				o.Retrieve();
				if(o.IsPersistent)
				{
					this.txtOrderId.Text =oid;
					this.txtBOMCode.Text = o.BOMCode;
					Common.SelectFlg(this.ddlBOMCode,o.BOMCode);

					this.BindBOMLine();

					this.txtQuantity.Text = o.Quantity.ToString();

					Common.SelectFlg(this.ddlUnit,o.UnitId);

					if(o.DeliDate.ToShortDateString()!="")
					{
						Common.BindDrop(this.drpYear,this.drpMonth,this.drpDay,o.DeliDate);
						
					}

					if(o.ShipDate.ToShortDateString()!="")
					{
						Common.BindDrop(this.drpEYear,this.drpEMonth,this.drpEDay,o.ShipDate);
						
					}

					this.txtOrderRemark.Text = o.Remark;

					Common.SelectFlg(this.ddlFlag,o.Flag);

				}
			}
			else
			{
				this.lblMessage.Text="";
				this.lblMessage.Visible=true;
				return;
			}
		}

		private void BindDropDate(DropDownList lc1,DropDownList lc2,DropDownList lc3)
		{			
			Common.BindYearTo(lc1,2003,36);
			Common.BindMonthTo(lc2);			
			Common.BindDayTo(lc3,Convert.ToInt16(lc1.SelectedItem.Value),Convert.ToInt16(lc2.SelectedItem.Value));			
		}



		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{    
			this.txtBOMCode.TextChanged += new System.EventHandler(this.txtBOMCode_TextChanged);
			this.ddlBOMCode.SelectedIndexChanged += new System.EventHandler(this.ddlBOMCode_SelectedIndexChanged);
			this.drpYear.SelectedIndexChanged += new System.EventHandler(this.drpYear_SelectedIndexChanged);
			this.drpMonth.SelectedIndexChanged += new System.EventHandler(this.drpMonth_SelectedIndexChanged);
			this.drpEYear.SelectedIndexChanged += new System.EventHandler(this.drpEYear_SelectedIndexChanged);
			this.drpEMonth.SelectedIndexChanged += new System.EventHandler(this.drpEMonth_SelectedIndexChanged);
			this.gridOrderLine.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.gridOrderLine_ItemDataBound);
			this.gridOrderLine.SelectedIndexChanged += new System.EventHandler(this.gridOrderLine_SelectedIndexChanged);
			this.Button2.Click += new System.EventHandler(this.Button2_Click);
			this.btnContinue.Click += new System.EventHandler(this.btnContinue_Click);
			this.btnGoBack.Click += new System.EventHandler(this.Button3_Click);
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion

		private void ddlBOMCode_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			this.txtBOMCode.Text = this.ddlBOMCode.SelectedItem.Value;
			this.BindBOMLine();
		}

		private void BindBOMLine()
		{
			string bomCode=this.txtBOMCode.Text.Trim();
			if(bomCode=="")
				bomCode="*";
						
			DataTable dtBOMLine=BOMSystem.AllBOMLineByCode(bomCode,"");
			Common.ReSet(this.gridOrderLine,dtBOMLine.DefaultView);
			this.gridOrderLine.DataSource=dtBOMLine;
			this.gridOrderLine.DataBind();
		}

		private void txtBOMCode_TextChanged(object sender, System.EventArgs e)
		{
			this.BindBOMLine();
		}

		
		private void Button2_Click(object sender, System.EventArgs e)
		{
			string ohid=this.ViewState["OHID"].ToString();
			string orderCode=this.txtBOMCode.Text.Trim();
			if(orderCode!="")
			{
				if(!OrderTicketSystem.OrderIsInOrderHead(orderCode,ohid))
				{
					this.lblMessage.Text ="失败:此定单中已经不包含此成品,可能被其他人删除";
					this.lblMessage.Visible=true;
					return;
				}

				DataTable dtBOM=BOMSystem.AllBOM(orderCode,"");
				if(dtBOM.Rows.Count<=0)
				{
					this.lblMessage.Text ="失败:没有此成品编号,请确认";
					this.lblMessage.Visible=true;
					return;
				}

				Order o=new Order();
				o.Id=this.txtOrderId.Text.Trim();
				o.Retrieve();
				o.OrderHeadId=ohid;
				o.BOMCode=orderCode;
				
				DataRow dr=dtBOM.Rows[0];
				o.BOMId=dr[BOM.ID].ToString();
				o.BOMName=dr[BOM.NAME].ToString();

				o.Quantity=int.Parse(this.txtQuantity.Text.Trim());
				o.UnitJGCost=double.Parse(dr[BOM.JGCOST].ToString());
				o.UnitJGPrice=double.Parse(dr[BOM.JGPRICE].ToString());
				o.JGCost=o.Quantity * o.UnitJGCost;
				o.JGPrice =o.Quantity * o.UnitJGPrice;

				o.DeliDate=Common.GetApplicationTime(this.drpYear,this.drpMonth,this.drpDay);
				o.ShipDate=Common.GetApplicationTime(this.drpEYear,this.drpEMonth,this.drpEDay);
				if(this.ddlUnit.Items.Count>0)
					o.UnitId=this.ddlUnit.SelectedItem.Value;
				else
					o.UnitId="";
				o.Remark=this.txtOrderRemark.Text.Trim();
				//o.InsertDate=System.DateTime.Now;
				//o.InsertOperater=this.CurrentUser().Id;
				o.Flag=this.ddlFlag.SelectedItem.Value;
				//o.CompleteQuantity=0;

				ArrayList orderlines=new ArrayList();

				for(int i=0;i<this.gridOrderLine.Items.Count;i++)
				{
					string mId=this.gridOrderLine.DataKeys[i].ToString();
					if(((CheckBox)this.gridOrderLine.Items[i].FindControl("chkTake")).Checked)
					{
						orderlines.Add(mId);
					}
				}

				if(orderlines.Count==0)
				{
					this.lblMessage.Text="失败:请选择需要的物料,至少需要一种";
					this.lblMessage.Visible=true;
					return;
				}

				try
				{
					OrderTicketSystem.SaveOrderWidthOrderLine(o,orderlines);
				}
				catch
				{
					this.lblMessage.Text="失败:修改成品遇到错误";
					this.lblMessage.Visible=true;
				}
				this.lblMessage.Text="成功:修改成品成功";
				this.lblMessage.Visible=true;
				this.Button2.Visible=false;
				//this.btnContinue.Visible=true;

			
			}
		}

		private void gridOrderLine_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
		{
			if(e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
			{
				if(OrderTicketSystem.MaterielInOrder(e.Item.Cells[0].Text.Trim(),this.txtOrderId.Text.Trim()))
				{
					CheckBox cb=(CheckBox)e.Item.FindControl("chkTake");
					cb.Checked=true;
				}

				e.Item.Cells[0].Text = MaterielSystem.GetMaterielCode(e.Item.Cells[0].Text.Trim());
				e.Item.Cells[2].Text = UnitSystem.GetUnitCode(e.Item.Cells[2].Text.Trim());
				e.Item.Cells[3].Text =e.Item.Cells[3].Text.Trim() +"%";
			}
		}

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

		private void Button3_Click(object sender, System.EventArgs e)
		{
			Response.Redirect("OrderTicketMod1.aspx?id=" + this.ViewState["OHID"].ToString());
			Response.End();
		}

		private void btnContinue_Click(object sender, System.EventArgs e)
		{
			this.txtOrderId.Text="";
			this.txtBOMCode.Text="";
			this.ddlBOMCode.SelectedIndex=0;
			this.ddlUnit.SelectedIndex=0;
			this.txtQuantity.Text="";

			this.BindDropDate(drpYear,drpMonth,drpDay);
			this.BindDropDate(drpEYear,drpEMonth,drpEDay);	

			Common.BindDrop(this.drpYear,this.drpMonth,this.drpDay,DateTime.Now);
			Common.BindDrop(this.drpEYear,this.drpEMonth,this.drpEDay,DateTime.Now);

			this.txtOrderRemark.Text="";

			
			this.BindBOMLine();

			this.Button2.Visible=true;
			this.btnContinue.Visible=false;

		}

		private void drpYear_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			Common.BindDayTo(drpDay,Convert.ToInt16(drpYear.SelectedItem.Value),Convert.ToInt16(drpMonth.SelectedItem.Value));
		}

		private void drpMonth_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			Common.BindDayTo(drpDay,Convert.ToInt16(drpYear.SelectedItem.Value),Convert.ToInt16(drpMonth.SelectedItem.Value));
		}

		private void drpEYear_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			Common.BindDayTo(drpEDay,Convert.ToInt16(drpEYear.SelectedItem.Value),Convert.ToInt16(drpEMonth.SelectedItem.Value));
		}

		private void drpEMonth_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			Common.BindDayTo(drpEDay,Convert.ToInt16(drpEYear.SelectedItem.Value),Convert.ToInt16(drpEMonth.SelectedItem.Value));
		}
	}
}

⌨️ 快捷键说明

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