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

📄 encountersform.ascx.cs

📁 医疗决策支持系统
💻 CS
字号:
namespace Caisis.UI.Modules.All.DataEntryForms
{
	using System;
	using System.Data;
	using System.Data.SqlClient;
	using System.Drawing;
	using System.Web;
	using System.Web.UI.WebControls;
	using System.Web.UI.HtmlControls;
	using System.Collections;
	using System.Collections.Specialized;

	using Caisis.Controller;
	using Caisis.DataAccess;
	using Caisis.BusinessObject;

	using Caisis.UI.Core.Classes;
	using Caisis.UI.Core.Classes.CustomControls;

	public abstract class EncountersForm : DataEntryControl
	{

		protected HtmlInputCheckBox EncPending;
		protected HtmlInputText EncChiefComplaint;
		protected HtmlInputText EncDateText;
		protected HtmlInputText EncDate;
		protected HtmlSelect EncType;
		protected ComboBox EncPhysician;
		protected ComboBox EncFellow;
		protected ComboBox EncNurse;
		protected HtmlSelect EncPresentation;
		protected HtmlSelect EncStatus;
		protected HtmlInputText EncBP;
		protected HtmlInputText EncPulse;
		protected HtmlInputText EncTemp;
		protected HtmlInputText EncResp;
		protected HtmlInputText EncHeight;
		protected HtmlInputText EncWeight;
		protected HtmlInputText EncBSA;
		protected HtmlInputText EncBMI;
		protected HtmlInputText EncKPS;
		protected ComboBox EncInstitution;
		protected HtmlTextArea EncNotes;
		protected ComboBox EncDataSource;
		protected HtmlSelect EncQuality;
		protected HtmlInputHidden EncounterId;

		protected HtmlImage EncDateTextCal;

		override protected void Page_Load(object sender, System.EventArgs e)
		{
			
			//populate look up and distinct value select boxes
			PageUtil.FillLkpDropDown(EncPresentation, "EncPresentation", ViewState);
			PageUtil.FillLkpDropDown(EncType, "EncType", ViewState);
			PageUtil.FillLkpDropDown(EncStatus, "EncStatus", ViewState);
			PageUtil.FillLkpDropDown(EncQuality, "DataQuality", ViewState);

			//create arrays that populate combo boxes
			Page.RegisterClientScriptBlock("EncInstitution",PageUtil.FillComboDropDown(EncInstitution.RefBy, "Institution,PercentUsage,Top80"));
			Page.RegisterClientScriptBlock("EncPhysician",	PageUtil.FillComboDropDown(EncPhysician.RefBy, "ApptPhysician"));
			Page.RegisterClientScriptBlock("EncFellow",		PageUtil.FillComboDropDown(EncFellow.RefBy, "Fellow"));
			Page.RegisterClientScriptBlock("EncNurse",		PageUtil.FillComboDropDown(EncNurse.RefBy, "Nurse"));
			Page.RegisterClientScriptBlock("EncDataSource", PageUtil.FillComboDropDown(EncDataSource.RefBy, "DataSource"));

			string reqFieldArray = PageUtil.CreateValidationScript("");
			Page.RegisterClientScriptBlock("requiredFieldArray", reqFieldArray);


			PageUtil.AddCalendarFunction(EncDateTextCal, EncDateText);
			PageUtil.AddFuzzyDateFunction(EncDateText, EncDate);

			// calls to client scripts to calculate Body Mass Index
			string strJs = EncBMI.ClientID+".value = calculateBMI("+EncHeight.ClientID+".value, "+ EncWeight.ClientID+".value);" + EncBSA.ClientID + ".value = calculateBSA("+EncHeight.ClientID+".value, "+ EncWeight.ClientID+".value);";

			EncHeight.Attributes.Add("onBlur", strJs);
			EncWeight.Attributes.Add("onBlur", strJs);

			base.Page_Load(sender, e);
		}

		override protected object SaveViewState()
		{
			//add select and combo boxes to view state
			
			PageUtil.AddSelectToViewState(ViewState,EncType);
			PageUtil.AddSelectToViewState(ViewState,EncPresentation);
			PageUtil.AddSelectToViewState(ViewState,EncStatus);
			PageUtil.AddSelectToViewState(ViewState,EncQuality);
			
			PageUtil.AddComboToViewState(ViewState,EncInstitution);
			PageUtil.AddComboToViewState(ViewState,EncPhysician);
			PageUtil.AddComboToViewState(ViewState,EncFellow);
			PageUtil.AddComboToViewState(ViewState,EncNurse);
			PageUtil.AddComboToViewState(ViewState,EncDataSource);

			return base.SaveViewState();
		}

		override public HtmlInputHidden GetPrimKeyField()
		{	
			return EncounterId;
		}

		override protected DataEntryController GetController()
		{
			return new EncounterController(new EncounterDa()); //NOTE: fix args
		}

		override protected void SetDataEntryInfo()
		{
			this._tableInfo = "Encounters";
			this._dataEntryTitle = "Encounters";
		}

		override protected BizObject GetParams()
		{
			Encounter biz = new Encounter();
			DataRow dr = biz.Tables[Encounter.Table_Encounters].NewRow();

			if (!EncounterId.Value.Equals(""))
			{
				dr[Encounter.EncounterId] = EncounterId.Value;
			}

			//below assignment only valid for text and textarea input.. need to modify for other form elements
			//selects use: Request.Form[FieldName.UniqueID].ToString();
			//dates use: PageUtil.ObjToDateTime(FieldName.Value);
			//checkbox use: if(SurgPending.Checked){dr[Surgery.SurgPending] = 1;}
			//Patient ID should = this.patientID
			
			dr[Encounter.PatientId] = this.patientID;
			 
			dr[Encounter.EncChiefComplaint] = EncChiefComplaint.Value;
			dr[Encounter.EncPending] = EncPending.Checked;
			dr[Encounter.EncDateText] = Request.Form[EncDateText.UniqueID].ToString();
			dr[Encounter.EncDate] = PageUtil.ObjToDateTime(EncDate.Value);
			dr[Encounter.EncType] = Request.Form[EncType.UniqueID].ToString();
			dr[Encounter.EncPhysician] = Request.Form[EncPhysician.UniqueID].ToString();
			dr[Encounter.EncFellow] = Request.Form[EncFellow.UniqueID].ToString();
			dr[Encounter.EncNurse] = Request.Form[EncNurse.UniqueID].ToString();
			dr[Encounter.EncPresentation] = Request.Form[EncPresentation.UniqueID].ToString();
			dr[Encounter.EncStatus] = Request.Form[EncStatus.UniqueID].ToString();
			dr[Encounter.EncBP] = EncBP.Value;
			dr[Encounter.EncPulse] = EncPulse.Value;
			dr[Encounter.EncTemp] = EncTemp.Value;
			dr[Encounter.EncResp] = EncResp.Value;
			dr[Encounter.EncHeight] = EncHeight.Value;
			dr[Encounter.EncWeight] = EncWeight.Value;
			dr[Encounter.EncBSA] = EncBSA.Value;
			dr[Encounter.EncBMI] = EncBMI.Value;
			dr[Encounter.EncKPS] = EncKPS.Value;
			dr[Encounter.EncInstitution] = Request.Form[EncInstitution.UniqueID].ToString();
			dr[Encounter.EncNotes] = EncNotes.Value;
			dr[Encounter.EncDataSource] = Request.Form[EncDataSource.UniqueID].ToString();
			dr[Encounter.EncQuality] = Request.Form[EncQuality.UniqueID].ToString();

			AddBaseParams(dr);
			biz.Tables[Encounter.Table_Encounters].Rows.Add(dr);
			biz.AcceptChanges();
			return biz;

		}

		protected override void SetFields(BizObject bz)
		{
			Encounter biz = (Encounter)bz;
			DataRow dr = biz.Tables[Encounter.Table_Encounters].Rows[0];

			//below assignment good only for text and input fields, checkboxes, selects, radios need additional logic
			//selects use: PageUtil.SelectDropDownItem(fieldIdName, dr[Object.FieldName]);
			
			EncounterId.Value = dr[Encounter.EncounterId].ToString();
			PageUtil.SetCheckBox(EncPending, dr[Encounter.EncPending]);
			EncChiefComplaint.Value = dr[Encounter.EncChiefComplaint].ToString();
			EncDateText.Value = dr[Encounter.EncDateText].ToString();
			EncDate.Value = PageUtil.ObjToDateString(dr[Encounter.EncDate]);
			PageUtil.SelectDropDownItem(EncType, dr[Encounter.EncType]);
			EncPhysician.Value = dr[Encounter.EncPhysician].ToString();
			EncFellow.Value = dr[Encounter.EncFellow].ToString();
			EncNurse.Value = dr[Encounter.EncNurse].ToString();
			PageUtil.SelectDropDownItem(EncPresentation, dr[Encounter.EncPresentation]);
			PageUtil.SelectDropDownItem(EncStatus, dr[Encounter.EncStatus]);
			EncBP.Value = dr[Encounter.EncBP].ToString();
			EncPulse.Value = dr[Encounter.EncPulse].ToString();
			EncTemp.Value = dr[Encounter.EncTemp].ToString();
			EncResp.Value = dr[Encounter.EncResp].ToString();
			EncHeight.Value = dr[Encounter.EncHeight].ToString();
			EncWeight.Value = dr[Encounter.EncWeight].ToString();
			EncBSA.Value = dr[Encounter.EncBSA].ToString();
			EncBMI.Value = dr[Encounter.EncBMI].ToString();
			EncKPS.Value = dr[Encounter.EncKPS].ToString();
			EncInstitution.Value = dr[Encounter.EncInstitution].ToString();
			EncNotes.Value = dr[Encounter.EncNotes].ToString();
			EncDataSource.Value = dr[Encounter.EncDataSource].ToString();
			PageUtil.SelectDropDownItem(EncQuality, dr[Encounter.EncQuality]);

			SetBaseFields(dr);
		}

		public override void SaveBtn_Click()
		{
			base.SaveBtn_Click();

			
			// re-enable the form if the user had a uniquness error
			string message = "";
			if (this.commonFields.errMsg != null && this.commonFields.errMsg.Message != null)
			{
				message = this.commonFields.errMsg.Message;
			}

			if (this.UserError && message.StartsWith("Encounter physician"))
			{
				this.EnableFormFields();
			}
		}

	}
}

⌨️ 快捷键说明

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