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

📄 clinicreg.cs

📁 用于医院的病人管理
💻 CS
📖 第 1 页 / 共 2 页
字号:
			this.label8.Text = "医生";
			this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
			// 
			// cmb6
			// 
			this.cmb6.BackColor = System.Drawing.SystemColors.Desktop;
			this.cmb6.Location = new System.Drawing.Point(384, 216);
			this.cmb6.Name = "cmb6";
			this.cmb6.Size = new System.Drawing.Size(144, 20);
			this.cmb6.TabIndex = 3;
			this.cmb6.DropDown += new System.EventHandler(this.cmb6_DropDown);
			// 
			// label9
			// 
			this.label9.Location = new System.Drawing.Point(128, 328);
			this.label9.Name = "label9";
			this.label9.Size = new System.Drawing.Size(56, 16);
			this.label9.TabIndex = 1;
			this.label9.Text = "挂号费用";
			// 
			// txt3
			// 
			this.txt3.Location = new System.Drawing.Point(128, 344);
			this.txt3.Name = "txt3";
			this.txt3.ReadOnly = true;
			this.txt3.Size = new System.Drawing.Size(136, 21);
			this.txt3.TabIndex = 2;
			this.txt3.Text = "";
			// 
			// txt4
			// 
			this.txt4.Location = new System.Drawing.Point(384, 344);
			this.txt4.Name = "txt4";
			this.txt4.ReadOnly = true;
			this.txt4.Size = new System.Drawing.Size(144, 21);
			this.txt4.TabIndex = 2;
			this.txt4.Text = "";
			// 
			// label10
			// 
			this.label10.Location = new System.Drawing.Point(384, 328);
			this.label10.Name = "label10";
			this.label10.Size = new System.Drawing.Size(64, 16);
			this.label10.TabIndex = 1;
			this.label10.Text = "挂号时间";
			// 
			// imageList1
			// 
			this.imageList1.ImageSize = new System.Drawing.Size(16, 16);
			this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
			this.imageList1.TransparentColor = System.Drawing.SystemColors.ControlLightLight;
			// 
			// toolBar1
			// 
			this.toolBar1.Buttons.AddRange(new System.Windows.Forms.ToolBarButton[] {
																						this.tBtnNew,
																						this.tBtnSubmit,
																						this.tBtnCancel,
																						this.tBtnQuit});
			this.toolBar1.DropDownArrows = true;
			this.toolBar1.ImageList = this.imageList1;
			this.toolBar1.Location = new System.Drawing.Point(0, 0);
			this.toolBar1.Name = "toolBar1";
			this.toolBar1.ShowToolTips = true;
			this.toolBar1.Size = new System.Drawing.Size(680, 41);
			this.toolBar1.TabIndex = 30;
			this.toolBar1.ButtonClick += new System.Windows.Forms.ToolBarButtonClickEventHandler(this.toolBar1_ButtonClick);
			// 
			// tBtnNew
			// 
			this.tBtnNew.ImageIndex = 4;
			this.tBtnNew.Text = "新增";
			this.tBtnNew.ToolTipText = "新增";
			// 
			// tBtnSubmit
			// 
			this.tBtnSubmit.ImageIndex = 7;
			this.tBtnSubmit.Text = "保存";
			this.tBtnSubmit.ToolTipText = "保存";
			// 
			// tBtnCancel
			// 
			this.tBtnCancel.ImageIndex = 8;
			this.tBtnCancel.Text = "取消";
			this.tBtnCancel.ToolTipText = "取消";
			// 
			// tBtnQuit
			// 
			this.tBtnQuit.ImageIndex = 9;
			this.tBtnQuit.Text = "退出";
			this.tBtnQuit.ToolTipText = "退出";
			// 
			// ClinicReg
			// 
			this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
			this.ClientSize = new System.Drawing.Size(680, 493);
			this.Controls.Add(this.groupBox1);
			this.Controls.Add(this.txt5);
			this.Controls.Add(this.txt6);
			this.Controls.Add(this.txt7);
			this.Controls.Add(this.txt8);
			this.Controls.Add(this.toolBar1);
			this.Name = "ClinicReg";
			this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
			this.Text = "【门诊挂号】";
			this.Load += new System.EventHandler(this.ClinicReg_Load);
			this.groupBox1.ResumeLayout(false);
			this.ResumeLayout(false);

		}
		#endregion

		//-----------创建窗体时设置下拉列表框项目---------------
		private void ClinicReg_Load(object sender, System.EventArgs e)
		{
			//设置【科室资料】下拉列表框的下拉选项
			string strConn="workstation id=localhost;Integrated Security=SSPI;database=hisbook;";
			SqlConnection cn=new SqlConnection(strConn);
			cn.Open();
			SqlCommand cmb=cn.CreateCommand();
			cmb.CommandText="select distinct 名称 from 科室资料";
			SqlDataReader dr=cmb.ExecuteReader();
			cmb5.Items.Clear();
			while(dr.Read())
			{
				cmb5.Items.Add(dr.GetValue(0).ToString().Trim());
			}
			dr.Close();		
		}

		//--------------工具栏控制代码------------------
		private void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
		{
			if(e.Button.ToolTipText=="新增")
			{
				this.SetDefaultValue();//设置默认值
				//生成新编号
				this.regID=this.CreateNewID("select max(编号) 最大编号 from 门诊挂号");
				this.infoID=this.CreateNewID("select max(编号) 最大编号 from 病人信息库");				
			}
			if(e.Button.ToolTipText=="保存")
			{
				if(this.CheckNotNull()==false)
				{
					return;
				}
				this.SaveReg();
				this.clearInfo();

			}
			if(e.Button.ToolTipText=="取消")
			{
				this.clearInfo();
				
			}
			if(e.Button.ToolTipText=="退出")
			{
				this.Close();
			}
		}

		//-------------根据选择的科室显示医生清单------------
		private void cmb6_DropDown(object sender, System.EventArgs e)
		{
			//设置【医生】下拉列表框的下拉选项
			cmb6.Items.Clear();//清空原有下拉选项
			if(cmb5.Text.Trim()=="")
			{
				return;
			}
			string strConn="workstation id=localhost;Integrated Security=SSPI;database=hisbook;";
			SqlConnection cn=new SqlConnection(strConn);
			cn.Open();
			SqlCommand cmb=cn.CreateCommand();
			cmb.CommandText="select distinct 姓名 from 医生资料 where 科室='"+cmb5.Text.Trim()+"'";
			SqlDataReader dr=cmb.ExecuteReader();			
			while(dr.Read())
			{
				cmb6.Items.Add(dr.GetValue(0).ToString().Trim());
			}
			dr.Close();		
		}

		//-----------清空面板中的信息------------
		private void clearInfo()
		{
			txt1.Clear();
			txt2.Clear();
			txt3.Clear();
			txt4.Clear();
			cmb1.Text="";
			cmb2.Text="";
			cmb3.Text="";
			cmb4.Text="";
			cmb5.Text="";
			cmb6.Text="";
		}
		//-----------新增病人时设置默认信息------------
		private void SetDefaultValue()
		{
			cmb1.SelectedText="男";//默认性别为男性
			cmb2.SelectedText="汉族";//默认民族为汉族
			cmb3.SelectedText="自费";//默认费用类型为自费
			cmb4.SelectedText="普通";//默认挂号类型为普通
			cmb5.SelectedText="内科";//默认挂号科室为内科
			txt3.Text="1";//默认挂号费1元
			txt4.Text=System.DateTime.Now.ToString();//当前系统时间为挂号时间			
		}

		//----------根据挂号类型设置挂号费用-----------
		private void cmb4_SelectionChangeCommitted(object sender, System.EventArgs e)
		{
			if(cmb4.SelectedIndex==0)//普通号1元
			{
				txt3.Text="1";
			}
			if(cmb4.SelectedIndex==1)//20元专家号
			{
				txt3.Text="20";
			}
			if(cmb4.SelectedIndex==2)//5元专家号
			{
				txt3.Text="5";
			}
		
		}
		
		//---------------检查非空字段--------------
		private bool CheckNotNull()
		{
			if(txt1.Text.Trim()=="")
			{
				MessageBox.Show("病人姓名不能为空,请输入姓名","提示",MessageBoxButtons.OK,MessageBoxIcon.Stop);
				return(false);
			}
			if(cmb3.Text.Trim()=="")
			{
				MessageBox.Show("费用类型不能为空,请选择费用类型","提示",MessageBoxButtons.OK,MessageBoxIcon.Stop);
				return(false);
			}
			if(cmb5.Text.Trim()=="")
			{
				MessageBox.Show("挂号科室不能为空,请选择挂号科室","提示",MessageBoxButtons.OK,MessageBoxIcon.Stop);
				return(false);
			}
			if(cmb6.Text.Trim()=="")
			{
				MessageBox.Show("未选择医生或您选择的挂号科室没有医生","提示",MessageBoxButtons.OK,MessageBoxIcon.Stop);
				return(false);
			}
			return(true);
		}
		//-----------保存挂号信息和病人信息-------------
		private void SaveReg()
		{
			string strConn="workstation id=localhost;Integrated Security=SSPI;database=hisbook;";
			SqlConnection cn=new SqlConnection(strConn);
			cn.Open();
			SqlCommand cmb=cn.CreateCommand();
			
			string insertStr="insert into 病人信息库([编号], [姓名], [性别], [年龄], [民族], [费用类型]) "
				+"values('"+infoID+"','"+txt1.Text.Trim()+"','"+cmb1.Text.Trim()+"','"+txt2.Text.Trim()
				+"','"+cmb2.Text.Trim()+"','"+cmb3.Text.Trim()+"')";			
			cmb.CommandText=insertStr;
			try
			{
				cmb.ExecuteNonQuery();
			}
			catch(Exception express)
			{
				MessageBox.Show(express.ToString(),"新增病人信息错误",MessageBoxButtons.OK,MessageBoxIcon.Error);
				return;
			}
			insertStr="insert into 门诊挂号([编号], [病人编号], [姓名], [性别], [挂号科室], [费用类型],"
                +"[挂号类型], [挂号费用], [医生], [时间], [是否已划价]) "
				+"values('"+regID+"','"+infoID+"','"+txt1.Text.Trim()+"','"+cmb1.Text.Trim()+"','"
				+cmb5.Text.Trim()+"','"+cmb3.Text.Trim()+"','"+cmb4.Text.Trim()+"',CAST('"+txt3.Text
				+"' as decimal),'"+cmb6.Text.Trim()+"','"+txt4.Text+"','否')";
			cmb.CommandText=insertStr;
			try
			{
				cmb.ExecuteNonQuery();
			}
			catch(Exception express)
			{
				MessageBox.Show(express.ToString(),"新增门诊挂号错误",MessageBoxButtons.OK,MessageBoxIcon.Error);
				return;
			}


		}
		
		//---------在新增信息时,根据sql语句计算并设置新的门诊挂号编号和病人信息---------
		private string CreateNewID(string sql)
		{
			string strConn="workstation id=localhost;Integrated Security=SSPI;database=hisbook;";
			SqlConnection cn=new SqlConnection(strConn);
			cn.Open();
			SqlCommand cmb=cn.CreateCommand();
			cmb.CommandText=sql;
			string result;
			if(cmb.ExecuteScalar()!=System.DBNull.Value)
			{
				result=cmb.ExecuteScalar().ToString().Trim();
			}
			else
			{
				return(System.DateTime.Now.Year.ToString()+"0000001");//命名规则为年份+7位编号
			}
			result=result.Substring(4,7);
			int newID=Convert.ToInt32(result)+1;
			int length=newID.ToString().Length;
			string returnStr=System.DateTime.Now.Year.ToString();
			switch(length)//生成新的编码
			{
				case 1:
					returnStr+="000000"+newID.ToString();					
					break;
				case 2:
					returnStr+="00000"+newID.ToString();					
					break;
				case 3:
					returnStr+="0000"+newID.ToString();					
					break;
				case 4:
					returnStr+="000"+newID.ToString();					
					break;
				case 5:
					returnStr+="00"+newID.ToString();					
					break;
				case 6:
					returnStr+="0"+newID.ToString();					
					break;
				case 7:
					returnStr+=newID.ToString();					
					break;
			}
			return(returnStr);
		}
	}
}

⌨️ 快捷键说明

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