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

📄 formlistemployee.cs

📁 蓝山人事管理系统
💻 CS
字号:
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data ;
using System.Data .SqlClient ;
using System.Data .Common ;
using System.IO ;


namespace BlueHill.BlueHillWindows.EmployeeManagement
{
	/// <summary>
	/// FormListEmployee 的摘要说明。
	/// </summary>
	public class FormListEmployee : System.Windows.Forms.Form
	{
				public System.Windows .Forms.DataGrid grdEmployee;
		
				private SqlConnection conn;
				private SqlDataAdapter adp;
				DataTable dt;
				DataSet ds;
				SqlCommand com;

	 
		private System.Windows.Forms.Button btnNewEmployee;
		private System.Windows.Forms.Button btnEditEmployee;
		private System.Windows.Forms.Button btnDeleteEmployee;
		private System.Windows.Forms.Button btnQueryEmployee;
		private System.Windows.Forms.Button btnCancel;

		
		/// 必需的设计器变量。
		/// </summary>
		private System.ComponentModel.Container components = null;

		public FormListEmployee()
		{
			//
			// Windows 窗体设计器支持所必需的
			//
			InitializeComponent();

			//
			// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
			//
		}

		/// <summary>
		/// 清理所有正在使用的资源。
		/// </summary>
		protected override void Dispose( bool disposing )
		{
			if( disposing )
			{
				if(components != null)
				{
					components.Dispose();
				}
			}
			base.Dispose( disposing );
		}
				
		       private void FormListEmployee_Load(object sender, System.EventArgs e)
				{
					readSQL();
					ds=new DataSet ();
					adp.Fill (ds,"tblemployeeMap");
					DataTable dt=ds.Tables["tblemployee"];
					this.grdEmployee.DataSource=dt;
				}

				private void readSQL()
				{
					conn=new SqlConnection ("Initial Catalog=BlueHill;Data Source=(local) ;Trusted_Connection=Yes");
					adp=new SqlDataAdapter ("select * from tblemployee",conn);
		
					DataTableMapping yy=adp.TableMappings .Add ("tblemployeeMap","tblemployee");
					yy.ColumnMappings .Add ("EmployeeID","员工编号");
					yy.ColumnMappings .Add ("Name","员工名字");
					yy.ColumnMappings .Add ("LoginName","登录名字");
					yy.ColumnMappings .Add ("Password","密码");
					yy.ColumnMappings .Add ("Email","邮箱地址");
					yy.ColumnMappings .Add ("DeptID","部门编号");
					yy.ColumnMappings .Add ("BasicSalary","基本薪资");
					yy.ColumnMappings .Add ("Title","职位");
					yy.ColumnMappings .Add ("Telephone","电话");
					yy.ColumnMappings .Add ("OnboardDate","工作日期");
					yy.ColumnMappings .Add ("SelfIntro","自我介绍");
					yy.ColumnMappings .Add ("VacationRemain","假期时间");
					yy.ColumnMappings .Add ("EmployeeLevel","员工级别");
					yy.ColumnMappings .Add ("PhotoImage","员工图片");
		
		
		
				}




		#region Windows 窗体设计器生成的代码
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{
			this.btnNewEmployee = new System.Windows.Forms.Button();
			this.btnEditEmployee = new System.Windows.Forms.Button();
			this.btnDeleteEmployee = new System.Windows.Forms.Button();
			this.btnQueryEmployee = new System.Windows.Forms.Button();
			this.btnCancel = new System.Windows.Forms.Button();
			this.grdEmployee = new System.Windows.Forms.DataGrid();
			((System.ComponentModel.ISupportInitialize)(this.grdEmployee)).BeginInit();
			this.SuspendLayout();
			// 
			// btnNewEmployee
			// 
			this.btnNewEmployee.Location = new System.Drawing.Point(8, 24);
			this.btnNewEmployee.Name = "btnNewEmployee";
			this.btnNewEmployee.TabIndex = 0;
			this.btnNewEmployee.Text = "添加员工";
			this.btnNewEmployee.Click += new System.EventHandler(this.btnNewEmployee_Click);
			// 
			// btnEditEmployee
			// 
			this.btnEditEmployee.Location = new System.Drawing.Point(100, 24);
			this.btnEditEmployee.Name = "btnEditEmployee";
			this.btnEditEmployee.TabIndex = 1;
			this.btnEditEmployee.Text = "修改员工";
			this.btnEditEmployee.Click += new System.EventHandler(this.btnEditEmployee_Click);
			// 
			// btnDeleteEmployee
			// 
			this.btnDeleteEmployee.Location = new System.Drawing.Point(192, 24);
			this.btnDeleteEmployee.Name = "btnDeleteEmployee";
			this.btnDeleteEmployee.TabIndex = 2;
			this.btnDeleteEmployee.Text = "删除员工";
			this.btnDeleteEmployee.Click += new System.EventHandler(this.btnDeleteEmployee_Click);
			// 
			// btnQueryEmployee
			// 
			this.btnQueryEmployee.Location = new System.Drawing.Point(284, 24);
			this.btnQueryEmployee.Name = "btnQueryEmployee";
			this.btnQueryEmployee.TabIndex = 3;
			this.btnQueryEmployee.Text = "查询员工";
			this.btnQueryEmployee.Click += new System.EventHandler(this.btnQueryEmployee_Click);
			// 
			// btnCancel
			// 
			this.btnCancel.Location = new System.Drawing.Point(376, 24);
			this.btnCancel.Name = "btnCancel";
			this.btnCancel.TabIndex = 4;
			this.btnCancel.Text = "取消";
			this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
			// 
			// grdEmployee
			// 
			this.grdEmployee.AllowSorting = false;
			this.grdEmployee.CaptionBackColor = System.Drawing.Color.DodgerBlue;
			this.grdEmployee.CaptionText = "员工记录";
			this.grdEmployee.DataMember = "";
			this.grdEmployee.Dock = System.Windows.Forms.DockStyle.Bottom;
			this.grdEmployee.HeaderForeColor = System.Drawing.SystemColors.ControlText;
			this.grdEmployee.Location = new System.Drawing.Point(0, 77);
			this.grdEmployee.Name = "grdEmployee";
			this.grdEmployee.Size = new System.Drawing.Size(464, 288);
			this.grdEmployee.TabIndex = 5;
			// 
			// FormListEmployee
			// 
			this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
			this.ClientSize = new System.Drawing.Size(464, 365);
			this.Controls.Add(this.grdEmployee);
			this.Controls.Add(this.btnCancel);
			this.Controls.Add(this.btnQueryEmployee);
			this.Controls.Add(this.btnDeleteEmployee);
			this.Controls.Add(this.btnEditEmployee);
			this.Controls.Add(this.btnNewEmployee);
			this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
			this.Name = "FormListEmployee";
			this.Text = "员工列表";
			this.Load += new System.EventHandler(this.FormListEmployee_Load);
			((System.ComponentModel.ISupportInitialize)(this.grdEmployee)).EndInit();
			this.ResumeLayout(false);

		}
		#endregion
		/// <summary>
		/// 应用程序的主入口点。
		/// </summary>

		[STAThread]
		static void Main()
		{
			Application.Run(new FormListEmployee());
		}

		private void btnCancel_Click(object sender, System.EventArgs e)
		{
			DialogResult result=MessageBox.Show ("确定要退出本窗口吗?","MessageBox",MessageBoxButtons.OKCancel );
			switch (result)
			{
				case DialogResult.OK :
					this.Close ();
					break;
				case DialogResult.Cancel :
					break;
			}
			
		
				
		}

		private void btnNewEmployee_Click(object sender, System.EventArgs e)
		{
			FormNewEmployee frmNewEmployee=new FormNewEmployee();
			SqlConnection sconn=new SqlConnection ("Initial Catalog=BlueHill;Data Source=(local);Trusted_Connection=Yes");
			SqlDataAdapter sadp=new SqlDataAdapter ("select * from tblDepartment",sconn);
			DataSet dats=new DataSet ();
			DataTable dat=new DataTable ();
			sadp.Fill (dats,"tblDepartment");
			dat=dats.Tables [0];
			frmNewEmployee.cbDepartment.DataSource=dat;
			frmNewEmployee.cbDepartment.DisplayMember="DeptName";
			frmNewEmployee. cbDepartment.ValueMember="DeptID";
		
		
			frmNewEmployee.ShowDialog ();
			readSQL();
			ds=new DataSet ();
			adp.Fill (ds,"tblemployeeMap");
			DataTable dtt=ds.Tables["tblemployee"];
			this.grdEmployee.DataSource=dtt;
		}
		
		private void btnQueryEmployee_Click(object sender, System.EventArgs e)
		{
			FormQueryEmployee frmNewEmployee=new FormQueryEmployee();
			SqlConnection sconn=new SqlConnection ("Initial Catalog=BlueHill;Data Source=(local);Trusted_Connection=Yes");
			SqlDataAdapter sadp=new SqlDataAdapter ("select * from tblDepartment",sconn);
			DataSet dats=new DataSet ();
			DataTable dat=new DataTable ();
			sadp.Fill (dats,"tblDepartment");
			dat=dats.Tables [0];
			frmNewEmployee.cbDepartment.DataSource=dat;
			frmNewEmployee.cbDepartment.DisplayMember="DeptName";
			frmNewEmployee.cbDepartment.ValueMember="DeptID";
			if(frmNewEmployee.ShowDialog()==DialogResult.OK )
			{
				try
				{
					this.grdEmployee.DataSource=frmNewEmployee.datat;
					int number=frmNewEmployee.datat.Rows.Count;
					if(number==0)
					{
						MessageBox.Show ("没有符合的查询结果!");
						frmNewEmployee.Close ();
					}
				}
				catch(Exception)
				{
					MessageBox.Show ("请合适输入查询的条件!");
				}
			}
			else
			{
				frmNewEmployee.Close ();
			}
		}
		
	
		private DataRow SelectedRow()
		{
			return dt.Rows[grdEmployee.CurrentCell.RowNumber ];
		}
		
		private void btnEditEmployee_Click(object sender, System.EventArgs e)
		{
			dt=ds.Tables["tblemployee"];
					
			int currentSelection =grdEmployee.CurrentRowIndex;
		
			DataRow r=dt.Rows[currentSelection];
		
			FormModifyEmployee frmUdEmployee=new FormModifyEmployee ();
			frmUdEmployee.txtName.Text=r["员工名字"].ToString();
			frmUdEmployee.txtUserName.Text=r["登录名字"].ToString();
			frmUdEmployee.txtEmail.Text=r["邮箱地址"].ToString();
			frmUdEmployee.txtBaseSalary.Text=r["基本薪资"].ToString();
			frmUdEmployee.txtPos.Text=r["职位"].ToString();
			frmUdEmployee.txtTel.Text=r["电话"].ToString();
		
			object imabobj=grdEmployee[grdEmployee.CurrentRowIndex,13];
			if(imabobj !=null && !Convert.IsDBNull(imabobj))
			{
				byte[] imab=(byte[])imabobj;
				MemoryStream memStream=new MemoryStream (imab);
		
				frmUdEmployee.picPhoto.Image=Image.FromStream (memStream);
			}
			else
			{
				frmUdEmployee.picPhoto.Image=null;
			}
		
			frmUdEmployee.grd=grdEmployee;
			frmUdEmployee.dts=ds;
		
			frmUdEmployee.ShowDialog ();
			readSQL();
			ds=new DataSet ();
			adp.Fill (ds,"tblemployeeMap");
			DataTable dtt=ds.Tables["tblemployee"];
			this.grdEmployee .DataSource=dtt;
		}
		
		private void btnDeleteEmployee_Click(object sender, System.EventArgs e)
		{
			DialogResult result=MessageBox.Show ("确定删除员工吗?将不能恢复!","确认删除员工",MessageBoxButtons.OKCancel );
			switch (result)
			{
				case DialogResult.OK :
					try
					{
						conn.Open();
						dt=ds.Tables["tblemployee"];
						DataRow selectedRow=dt.Rows[grdEmployee.CurrentCell.RowNumber ];
						int id=(int)selectedRow["员工编号"];
                        com=new SqlCommand("delete tblEmployee where EmployeeID=@cID",conn);
						com.Parameters.Add("@cID",SqlDbType.Int,4);
						com.Parameters["@cID"].Value=id;							
						ds.AcceptChanges();						
						int i=com.ExecuteNonQuery();
							
						if(i>0)
						{
							MessageBox.Show("删除成功!");
							selectedRow.Delete();
						}						
				
					}
					catch(Exception)
					{
						MessageBox.Show("不能删除该员工,因为该员工与其它表有主外键约束着.");
								
					}
					finally
					{
						conn.Close();
					}
							
					break;
				    case DialogResult.Cancel:
					break;
			}		
		}

		

		

		
	}
}



		





			




		

		
	




		
	


⌨️ 快捷键说明

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