diff --git a/AIMS/AIMS.csproj b/AIMS/AIMS.csproj
index 383ac3f..f19bab1 100644
--- a/AIMS/AIMS.csproj
+++ b/AIMS/AIMS.csproj
@@ -213,6 +213,7 @@
frmPharmaCology.cs
+
Form
diff --git a/AIMS/AIMS.xml b/AIMS/AIMS.xml
index 093bb06..8fe8536 100644
--- a/AIMS/AIMS.xml
+++ b/AIMS/AIMS.xml
@@ -1,6 +1,6 @@
- Data Source=.;Initial Catalog=AIMSDB_QHDSGRYY;User ID=sa;Password=Test2020;
+ Data Source=.;Initial Catalog=AIMSDB_FJZPTFYY;User ID=sa;Password=Test2020;
Data Source=.;Initial Catalog=AIMSDB_DATA;User ID=sa;Password=Test2020;
Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.10.7)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=orcl2))));Persist Security Info=True;User ID=smview;Password=i39;
diff --git a/AIMS/Extensions/OpeApplyAnalyze.cs b/AIMS/Extensions/OpeApplyAnalyze.cs
new file mode 100644
index 0000000..acbe16c
--- /dev/null
+++ b/AIMS/Extensions/OpeApplyAnalyze.cs
@@ -0,0 +1,1924 @@
+using AIMSExtension;
+using HelperDB;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.IO;
+using System.Text;
+using System.Windows.Forms;
+
+namespace AIMS
+{
+ public class OpeApplyAnalyze
+ {
+ public void Analyze(string name)
+ {
+ string sqlStr = string.Format("select * from AIMS_SCHEDULES where patient_id in (select patient_id from AIMS_PATIENTS where patient_name='{0}')", name);
+ DataTable dt = null;
+ try
+ {
+ dt = PGDBHelper.GetDataTable(sqlStr);
+ int count = 0;
+ if (dt != null && dt.Rows.Count > 0)
+ {
+ Analysis(dt, ref count);
+ }
+
+ if (count == 0)
+ {
+ MessageBox.Show("HIS也没找到'" + name + "'病人申请 找李工看吧 ┐(─.─)┌ ");
+ }
+ }
+ catch (Exception ex)
+ {
+ PublicMethod.WriteLog(ex, "");
+ }
+ }
+
+ #region 解析手术申请预约信息
+ ///
+ /// 解析手术申请预约信息
+ ///
+ ///
+ private void Analysis(DataTable table, ref int count)
+ {
+ if (table != null)
+ foreach (DataRow row in table.Rows)
+ {
+ OpeApply oa = new OpeApply();
+ OPPatients p;
+ string Site = row["APPLY_SITE"].ToString();
+ if (Site.Length == 0) { Site = "手术室"; }
+ if (Site == "内镜室") Site = "内镜室";
+ else Site = "手术室";
+
+ string anes = row["ANAESTHESIA_NAME"].ToString().Trim();
+ if (anes == "" && Site == "内镜室") anes = "全身麻醉";
+ DateTime time = DateTime.Parse(row["APPLY_DATE"].ToString());
+ string operation = row["OPERATION1_NAME"].ToString().Trim();
+ //if (operation.Contains("非手术室")) continue;
+
+ #region 解析手术申请
+ string PatientId = row["PATIENT_ID"].ToString();//HIS患者ID
+ string Encounterid = row["IPD_NO"].ToString();//HIS患者住院号
+ string PatientCaseNO = row["APD_NO"].ToString();//HIS患者病案号
+ string ScheduleNo = row["APPLY_NUM"].ToString(); //手术申请单号,手术序号
+
+ string VisitTiems = row["IPDNEXT"].ToString();//HIS患者住院次数
+ string hOrderdeptno = row["SECTION_CODE"].ToString(); //申请手术科室编码
+ if (PatientId == "" || Encounterid == "" || ScheduleNo == "" || GetOpeApply(ScheduleNo, row) || GetOpeApply2(ScheduleNo, row))
+ {
+ continue;
+ }
+ //select * from AIMS_PATIENTS where patient_id='825660820380852224'
+ int OrderDeptId = GetDepartmentName(hOrderdeptno);
+ if (OrderDeptId < 1)
+ {
+ continue;
+ }
+ int patientId = FullPatient(PatientId, Encounterid, VisitTiems, OrderDeptId, out p);
+ if (patientId == 0)
+ {
+ continue;
+ }
+ string ScheduleNo2 = "";
+ List OperationIds2 = new List();
+ if (Site == "内镜室")
+ foreach (DataRow row2 in table.Rows)
+ {
+ string PatientId2 = row2["PATIENT_ID"].ToString();//HIS患者ID
+ DateTime time2 = DateTime.Parse(row2["APPLY_DATE"].ToString());
+ string ScheduleNot = row2["APPLY_NUM"].ToString(); //手术申请单号,手术序号
+ if (PatientId == PatientId2 && time == time2 && ScheduleNot != ScheduleNo)
+ {
+ ScheduleNo2 = ScheduleNot;
+ string OperationRemark2 = "";
+ OperationIds2 = this.GetOperationIds(new string[]
+ {
+ row2["OPERATION1_ICD"].ToString()
+ }, new string[]
+ {
+ row2["OPERATION1_NAME"].ToString().Trim()
+ }, new string[]
+ {
+ "未分级"
+ }, out OperationRemark2);
+ }
+ }
+ string Reqworkno = row["APPLYDOCTORCODE"].ToString(); //申请手术医生工号
+ string ReqworkName = row["APPLYDOCTORNAME"].ToString(); //申请手术医生工号
+ int ReqworkId = GetWorkerId(Reqworkno, OrderDeptId);
+
+ DateTime Reqdatetime = time;
+ if (row["SUBMIT_DATE"].ToString() != "")
+ Reqdatetime = Convert.ToDateTime(row["SUBMIT_DATE"].ToString()); //申请手术时间
+
+ string DiagnoseRemark = "";
+ List DiseaseIds = this.GetDiseaseIds(new string[] { row["DIAGNOSE1_ICD"].ToString() }, new string[] { row["DIAGNOSE1_NAME"].ToString() }, out DiagnoseRemark);
+ List DiseaseIds2 = this.GetDiseaseIds(new string[] { row["DIAGNOSE2_ICD"].ToString() }, new string[] { row["DIAGNOSE2_NAME"].ToString() }, out DiagnoseRemark);
+ if (DiseaseIds.Count == 0 && DiseaseIds2.Count > 0)
+ {
+ DiseaseIds = DiseaseIds2;
+ }
+ DiagnoseRemark = "";
+ string OperationRemark = "";
+ List OperationIds = this.GetOperationIds(new string[]
+ {
+ row["OPERATION1_ICD"].ToString()
+ }, new string[]
+ {
+ operation
+ }, new string[]
+ {
+ "未分级"
+ }, out OperationRemark);
+ //foreach (var item in OperationIds2)
+ //{
+ // OperationIds.Add(item);
+ //}
+ if (Site == "内镜室")
+ {
+ OperationIds = new List() { 18036, 18037, 18038, 18039, 18040 };
+ }
+ OperationRemark = row["OPERATION_REMARK"].ToString();// row["OperationRemark"].ToString(); //拟施手术备注
+ string Remark = row["APPLY_REMARK"].ToString(); //手术备注
+ string OperationScale = row["operation5_level"].ToString(); //拟施手术综合等级
+ int OperationLeveId = GetOperationLeveId(OperationScale);//手术分级
+ string OperationPriority = row["EMERGENCY"].ToString() == "急诊" ? "急诊" : "择期"; //手术类型0,1,2(择期、急诊、日间)
+ if (time.Date == Reqdatetime.Date) OperationPriority = "急诊";
+ if (Site == "内镜室") OperationPriority = "择期";
+ //string Operationcut = row["OPERAITION_CUT"].ToString(); //手术切口
+ //int? OperationcutId = GetOperationCutId(Operationcut);
+ string OperationPosition = row["OPERAITION_POSITION"].ToString(); //手术部位
+ string OperationPositionIds = GetOperationPositionId(OperationPosition);
+ string OperationSite = row["OPERATION_SITE"].ToString(); //手术体位
+ string OperationSiteIds = GetOperationSiteId(OperationSite);
+ string Contagion = row["CONTAGION"].ToString(); //传染病
+ string ContagionIds = GetContagionIds(Contagion);
+ List AnaesthesiamethodIds = GetAnaesthesiaMethodIds(anes);//麻醉方式编号
+ int? SpecializedAnaesthesia = null; //专科麻醉类型
+ int IsReturnOperation = 0;
+
+ string SurgeonWorkNo = row["SURGEON_NO"].ToString(); //手术医生工号
+ string SurgeonWorkName = row["SURGEON_NAME"].ToString(); //手术医生工号
+ if (Site == "内镜室")
+ {
+ SurgeonWorkNo = "0065";
+ SurgeonWorkName = "毕晓艳";
+ }
+ if (SurgeonWorkNo == "" && SurgeonWorkName == "")
+ {
+ SurgeonWorkNo = Reqworkno;
+ SurgeonWorkName = ReqworkName;
+ }
+ List SurgeonWorkIds = GetSurgeonWorkIds(new string[] { SurgeonWorkNo }, OrderDeptId);
+ if (SurgeonWorkIds == null || SurgeonWorkIds.Count <= 0)
+ {
+ SurgeonWorkIds = new List();
+ int SurgeonWorkId = GetWorkerName(SurgeonWorkName, OrderDeptId);
+ if (SurgeonWorkId != -1)
+ SurgeonWorkIds.Add(SurgeonWorkId);
+ }
+ string FirstAssistantWorkNo = row["ASSISTANT1_NO"].ToString(); //助手工号1
+
+ string Assistant1 = GetWorkerId(FirstAssistantWorkNo, OrderDeptId).ToString();
+
+ string OperationGroup = row["OperationGroup"].ToString(); //手术分组
+ #endregion
+
+ #region 封装手术申请信息
+ oa = new OpeApply();
+ oa.PatientId = patientId;
+ //oa.PatientType = Patienttype;//患者类别
+ oa.ApplyDepartmentId = OrderDeptId;//申请科室编号
+ oa.DiagnoseRemark = DiagnoseRemark;//诊断备注
+ oa.OPerationRemark = OperationRemark;//手术备注
+ oa.Remark = Remark;//手术备注
+ oa.OperationLevelId = OperationLeveId;//手术分级编号
+ oa.OperationPriorityId = OperationPriority;//手术优先级编号0、择期、1急诊、2、日间
+ oa.OperationPositionId = OperationPositionIds;//手术部位
+ oa.Contagion = ContagionIds;//等待HIS提供传染病
+ oa.SpecializedAnaesthesiaId = SpecializedAnaesthesia;//专科麻醉类型
+ oa.IsReturnOperation = IsReturnOperation;//是否重返再手术
+ //oa.IsPlanReturnOperation = IsPlanReturnOperation;//是否计划重返再手术
+ //oa.IsNotPlanReturnOperation = IsReturnOperation == 1 && IsPlanReturnOperation == 0 ? 1 : 0;//是非否计划重返再手术
+ oa.OrderOperationTime = Reqdatetime;//预约手术时间
+ oa.OperationTimeLeight = 0; //预计手术用时(分钟)
+ oa.Assistant1 = int.Parse(Assistant1) < 1 ? "" : Assistant1;
+ //oa.Assistant2 = int.Parse(Assistant2) < 1 ? "" : Assistant2;
+ //oa.Assistant3 = int.Parse(Assistant3) < 1 ? "" : Assistant3;
+ oa.Intern = "";
+ oa.Other = "";
+ oa.IsVerify = 1;
+ oa.VerifyTime = time;
+ oa.State = 1;
+ if (Reqworkno != "")
+ {
+ oa.OperatorId = GetWorkerId(Reqworkno, OrderDeptId);
+ }
+ else
+ {
+ oa.OperatorId = 1;
+ }
+ oa.OperatorTime = time;
+ oa.ScheduleNo = ScheduleNo;
+ oa.ScheduleNo2 = ScheduleNo2;
+ #endregion
+
+ #region 保存手术申请信息
+
+ try
+ {
+ StringBuilder sb = new StringBuilder("insert into OperationApply values(");
+ sb.Append("" + oa.PatientId + ",");
+ sb.Append("" + oa.ApplyDepartmentId + ",");
+ sb.Append("'" + oa.OperationPriorityId + "',");
+ sb.Append("'" + oa.OrderOperationTime + "',");
+ sb.Append("0,0,0,0,");
+ sb.Append("'" + oa.DiagnoseRemark + "',");
+ sb.Append("'" + oa.OPerationRemark + "',");
+ sb.Append("'" + oa.OperationLevelId + "',");
+ sb.Append("'" + oa.Contagion + "',");
+ sb.Append("'" + oa.Intern + "',");
+ sb.Append("'" + oa.Other + "',");
+ sb.Append("'" + oa.VerifyTime + "',");
+ sb.Append("'" + ReqworkName + "',");
+ sb.Append("'" + oa.VerifyTime + "',");
+ sb.Append("'" + ReqworkName + "',");
+ sb.Append("NULL,NULL,NULL,2,NULL,NULL,0, ");
+ sb.Append("'" + oa.Remark + "',");
+ sb.Append("'admin','系统管理员',getdate(), ");
+ sb.Append("'" + Site + "',");
+ sb.Append("'" + oa.ScheduleNo + "',null,null,'" + oa.ScheduleNo2 + "','" + OperationGroup + "') Select @@Identity");
+
+ int operApplyId = Convert.ToInt32(DBHelper.ExecuteScalar(sb.ToString()));
+ if (operApplyId > 0)
+ {
+ //导入医生 手术 诊断 麻醉方式
+ if (SurgeonWorkIds != null && SurgeonWorkIds.Count > 0)
+ foreach (int PersonId in SurgeonWorkIds)
+ {
+ StringBuilder strSql = new StringBuilder();
+ strSql.Append("insert into [ApplyPersonDuty](");
+ strSql.Append("OperationApplyId,PersonDutyId,PersonId,OperatorNo,OperatorName,OperateDate");
+ strSql.Append(")");
+ strSql.Append(" values (");
+ strSql.Append("" + operApplyId + ",");
+ strSql.Append("" + 1 + ",");
+ strSql.Append("" + PersonId + ",");
+ strSql.Append("'" + SurgeonWorkNo + "',");
+ strSql.Append("'" + SurgeonWorkName + "',");
+ strSql.Append("getdate()");
+ strSql.Append(")");
+ DBHelper.ExecNonQuery(strSql.ToString());
+ }
+ if (oa.Assistant1 != null && oa.Assistant1 != "")
+ {
+ StringBuilder strSqlAssistant = new StringBuilder();
+ strSqlAssistant.Append("insert into [ApplyPersonDuty](");
+ strSqlAssistant.Append("OperationApplyId,PersonDutyId,PersonId,OperatorNo,OperatorName,OperateDate");
+ strSqlAssistant.Append(")");
+ strSqlAssistant.Append(" values (");
+ strSqlAssistant.Append("" + operApplyId + ",");
+ strSqlAssistant.Append("" + 2 + ",");
+ strSqlAssistant.Append("" + oa.Assistant1 + ",");
+ strSqlAssistant.Append("'" + SurgeonWorkNo + "',");
+ strSqlAssistant.Append("'" + SurgeonWorkName + "',");
+ strSqlAssistant.Append("getdate()");
+ strSqlAssistant.Append(")");
+ DBHelper.ExecNonQuery(strSqlAssistant.ToString());
+ }
+ if (AnaesthesiamethodIds != null && AnaesthesiamethodIds.Count > 0)
+ foreach (int AnaesthesiaMethodId in AnaesthesiamethodIds)
+ {
+ StringBuilder strSql = new StringBuilder();
+ strSql.Append("insert into [ApplyAnaesthesiaMethod](");
+ strSql.Append("OperationApplyId,AnaesthesiaMethodId,OperatorNo,OperatorName,OperateDate");
+ strSql.Append(")");
+ strSql.Append(" values (");
+ strSql.Append("" + operApplyId + ",");
+ strSql.Append("" + AnaesthesiaMethodId + ",");
+ strSql.Append("'" + SurgeonWorkNo + "',");
+ strSql.Append("'" + SurgeonWorkName + "',");
+ strSql.Append("getdate()");
+ strSql.Append(")");
+ DBHelper.ExecNonQuery(strSql.ToString());
+ }
+ if (DiseaseIds != null && DiseaseIds.Count > 0)
+ foreach (int DiseaseId in DiseaseIds)
+ {
+ StringBuilder strSql = new StringBuilder();
+ strSql.Append("insert into [ApplyDiagnoseInfo](");
+ strSql.Append("OperationApplyId,DiagnoseId,OperatorNo,OperatorName,OperateDate");
+ strSql.Append(")");
+ strSql.Append(" values (");
+ strSql.Append("" + operApplyId + ",");
+ strSql.Append("" + DiseaseId + ",");
+ strSql.Append("'" + SurgeonWorkNo + "',");
+ strSql.Append("'" + SurgeonWorkName + "',");
+ strSql.Append("getdate()");
+ strSql.Append(")");
+ DBHelper.ExecNonQuery(strSql.ToString());
+ }
+ if (OperationIds != null && OperationIds.Count > 0)
+ foreach (int OperationId in OperationIds)
+ {
+ string OperationName = operation;
+ DataTable dt = DBHelper.GetDataTable("select * from Operation where id ='" + OperationId + "'");
+ if (dt.Rows.Count > 0)
+ {
+ OperationName = dt.Rows[0]["Name"].ToString();
+ }
+ StringBuilder strSql = new StringBuilder();
+ strSql.Append("insert into [ApplyOperationInfo](");
+ strSql.Append("OperationApplyId,OperationId,OperationName,OperatorNo,OperatorName,OperateDate");
+ strSql.Append(")");
+ strSql.Append(" values (");
+ strSql.Append("" + operApplyId + ",");
+ strSql.Append("" + OperationId + ",");
+ strSql.Append("'" + OperationName + "',");
+ strSql.Append("'" + SurgeonWorkNo + "',");
+ strSql.Append("'" + SurgeonWorkName + "',");
+ strSql.Append("getdate()");
+ strSql.Append(")");
+ DBHelper.ExecNonQuery(strSql.ToString());
+ }
+ }
+ MessageBox.Show("【同步完成】患者姓名:" + p.Name, "系统提示");
+ count++;
+ }
+ catch (Exception ex)
+ {
+ PublicMethod.WriteLog(ex, "");
+ }
+ #endregion
+ }
+ }
+ #endregion
+
+ #region 判断手术申请是否存在
+ private bool GetOpeApply(string ScheduleId, DataRow row)
+ {
+ DataTable dt = DBHelper.GetDataTable("select * from OperationApply where OrderNo='" + ScheduleId + "'");
+ if (dt.Rows.Count > 0)
+ {
+ return true;
+ }
+ else
+ {
+ return false;
+ }
+ }
+ private bool GetOpeApply2(string ScheduleId, DataRow row)
+ {
+ DataTable dt = DBHelper.GetDataTable("select * from OperationApply where OrderNo2='" + ScheduleId + "'");
+ if (dt.Rows.Count > 0)
+ {
+ return true;
+ }
+ else
+ {
+ return false;
+ }
+ }
+ #endregion
+
+ #region 解析并保存申请手术的患者信息
+ ///
+ /// 解析并保存申请手术的患者信息
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ private int FullPatient(string PatientId, string Encounterid, string VisitId, int OrderDeptId, out OPPatients patient)
+ {
+ patient = new OPPatients();
+ int patientId = 0;
+ string sqlStr = string.Format("select * from {0} where patient_id='{1}' ", "AIMS_PATIENTS", PatientId);
+ DataTable dt = null;
+ try
+ {
+ dt = PGDBHelper.GetDataTable(sqlStr);
+ #region 解析患者信息
+ if (dt != null && dt.Rows.Count > 0)
+ {
+ DataRow row = dt.Rows[0];
+ patient.HISPatientId = PatientId;
+ patient.HISPatientId2 = row["Patient_id2"].ToString();
+ patient.InHospitalNo = Encounterid;
+ patient.MedicalHistoryNo = Encounterid;
+ string hDeptNo = row["DEPARTMENT_NO"].ToString();
+ patient.DepartmentId = GetDepartmentName(hDeptNo);
+ if (patient.DepartmentId <= 1) patient.DepartmentId = OrderDeptId;
+ patient.Name = row["PATIENT_NAME"].ToString();
+ patient.SpareEight = row["PATIENT_TYPE"].ToString();
+ patient.Sex = row["PATIENT_SEX"].ToString();
+ try
+ {
+ patient.BirthDay = Convert.ToDateTime(row["PATIENT_BIRTH"].ToString());
+ }
+ catch (Exception)
+ {
+ patient.BirthDay = DateTime.Now;
+ }
+ patient.Age = PublicMethod.GetAge(patient.BirthDay.Value);
+ if (row["INHOSPITALTIME"].ToString() != "")
+ patient.InHospitalTime = Convert.ToDateTime(row["INHOSPITALTIME"].ToString());
+
+ string PATIENT_HEIGHT = row["PATIENT_HEIGHT"].ToString().Trim();
+ string PATIENT_WEIGHT = row["PATIENT_WEIGHT"].ToString().Trim();
+ double HEIGHT = 0;
+ if (double.TryParse(PATIENT_HEIGHT, out HEIGHT))
+ {
+ if (HEIGHT != 0)
+ patient.Height = HEIGHT.ToString();
+ }
+
+ double WEIGHT = 0;
+ if (double.TryParse(PATIENT_WEIGHT, out WEIGHT))
+ {
+ if (WEIGHT != 0)
+ patient.Weight = WEIGHT.ToString();
+ }
+ string MedicalHistory = row["HISTORYRENARK"].ToString();
+
+ patient.BloodType = row["PATINET_BLOODTYPE"].ToString();
+ patient.RHBloodType = "";// row["PATINET_BLOODTYPE_RH"].ToString();
+ patient.Identity = row["IDNO"].ToString();
+ patient.FareType = row["PATIENT_CHARGE_TYPE"].ToString();
+ patient.EndemicArea = row["WARD_NO"].ToString();
+ patient.Bed = row["ROOM_NO"].ToString();
+ patient.ADDRESS = row["PATIENT_ADDRESS"].ToString();
+ patient.Contacts = row["PATIENT_CONTACTOR"].ToString();
+ patient.ContactsPhone = row["PATIENT_CONTACTOR_PHONE"].ToString();
+ if (VisitId != "")
+ {
+ patient.VisitId = Convert.ToInt32(VisitId);//VisitId
+ }
+ else
+ {
+ patient.VisitId = 1;
+ }
+ patient.IsValid = 1;
+ patient.OperatorId = 1;
+ patient.OperatorTime = DateTime.Now;
+
+ #region 保存患者信息
+
+ StringBuilder sb = new StringBuilder("insert into Oris_Patient values(");
+ sb.Append("'" + patient.InHospitalNo + "',");
+ sb.Append("'" + patient.MedicalHistoryNo + "',");
+ sb.Append("'" + patient.Name + "',");
+ sb.Append("'" + patient.Sex + "',");
+ sb.Append("'" + patient.BirthDay + "',");
+ sb.Append("'" + patient.Height + "',");
+ sb.Append("'" + patient.Weight + "',");
+ sb.Append("" + patient.DepartmentId + ",");
+ sb.Append("'" + patient.EndemicArea + "',");
+ sb.Append("'" + patient.Bed + "',");
+ sb.Append("'" + patient.BloodType + "',");
+ sb.Append("'" + patient.RHBloodType + "',");
+ sb.Append("'" + patient.FareType + "',");
+ sb.Append("'" + patient.InHospitalTime + "',");
+ sb.Append("'" + patient.Identity + "',");
+ sb.Append("'" + patient.Contacts + "',");
+ sb.Append("'" + patient.ContactsPhone + "',");
+ sb.Append("'admin','系统管理员',getdate(),");
+ sb.Append("'" + patient.SpareEight + "',");
+ sb.Append("'" + patient.HISPatientId + "',");
+ sb.Append("'" + patient.VisitId + "',");
+ sb.Append("'" + patient.ADDRESS + "',");
+ sb.Append("'','" + MedicalHistory.Trim() + "',null,null,null,'" + patient.HISPatientId2 + "' ,'" + patient.Age + "') Select @@Identity");
+
+ patientId = Convert.ToInt32(DBHelper.ExecuteScalar(sb.ToString()));
+ #endregion
+ }
+ #endregion
+ }
+ catch (Exception ex)
+ {
+ PublicMethod.WriteLog(ex, "");
+ }
+ return patientId;
+ }
+ #endregion
+
+ #region 获取科室编号
+ private static int GetDepartmentName(string Userdeptid)
+ {
+ DataTable dtdept = DBHelper.GetDataTable("select * from Department where Clinic='" + Userdeptid + "'");
+ int id = -1;
+ try
+ {
+ if (dtdept.Rows.Count > 0)
+ {
+ id = int.Parse(dtdept.Rows[0]["Id"].ToString());
+ }
+ }
+ catch (Exception)
+ {
+ }
+ return id;
+ }
+ #endregion
+
+ #region 获取用户编号
+ ///
+ /// 获取用户编号
+ ///
+ ///
+ ///
+ ///
+ private static int GetWorkerId(string workNo, int OrderDeptId)
+ {
+ if (workNo == "")
+ {
+ return -1;
+ }
+ DataTable dtdept = DBHelper.GetDataTable("select * from person where No='" + workNo + "' ");// and DepartmentId=" + OrderDeptId);
+ int id = -1;
+ try
+ {
+ if (dtdept != null && dtdept.Rows.Count > 0)
+ {
+ id = int.Parse(dtdept.Rows[0]["Id"].ToString());
+ }
+ //else
+ //{
+ // WorkerAnalyze wa = new WorkerAnalyze();
+ // if (id == 0)
+ // {
+ // Exception ex = new Exception("工号:" + workNo + "错误!");
+ // PublicMethod.WriteLog(ex, "");
+ // }
+ //}
+ }
+ catch (Exception)
+ {
+ }
+ return id;
+ }
+ private static int GetWorkerName(string name, int OrderDeptId)
+ {
+ if (name.Trim() == "")
+ {
+ return -1;
+ }
+ DataTable dtdept = DBHelper.GetDataTable("select * from person where Name='" + name + "' ");// and DepartmentId=" + OrderDeptId);
+ int id = -1;
+ try
+ {
+ if (dtdept != null && dtdept.Rows.Count > 0)
+ {
+ id = int.Parse(dtdept.Rows[0]["Id"].ToString());
+ }
+ }
+ catch (Exception)
+ {
+ }
+ return id;
+ }
+ #endregion
+
+ #region 获取所有诊断编号
+ ///
+ /// 获取所有诊断编号
+ ///
+ ///
+ ///
+ ///
+ private List GetDiseaseIds(string[] icds, string[] names, out string remark)
+ {
+ List result = new List();
+ remark = "";
+ try
+ {
+ for (int i = 0; i < names.Length; i++)
+ {
+ if (names[i] == "") continue;
+ DataTable dt = new DataTable();
+ if (dt == null || dt.Rows.Count <= 0)
+ {
+ string name = "";
+ name = names[i].Replace("\r\n", "");
+ name = name.Trim();
+ string icd = "";
+ icd = icds[i].Replace("\r\n", "");
+ icd = icd.Trim();
+ dt = DBHelper.GetDataTable("select * from Disease where Name ='" + name + "'");
+ if (dt.Rows.Count == 0)
+ {
+ DBHelper.ExecNonQuery(string.Concat(new Object[]{
+ "insert into Disease(ICDCode,Name,[HelpCode],UseRate,IsValid,[OperatorNo],[OperatorName],OperateDate) values('"+icd+"','"+name+"','"+PublicMethod.GetFirstLetter(name)+"',0,1,'admin','系统管理员','"+DateTime.Now+"')"}));
+ }
+ dt = DBHelper.GetDataTable("select * from Disease where Name ='" + name + "'");
+ }
+ if (dt != null && dt.Rows.Count > 0)
+ {
+ for (int j = 0; j < dt.Rows.Count; j++)
+ {
+ result.Add(int.Parse(dt.Rows[j]["Id"].ToString()));
+ }
+ }
+ }
+ }
+ catch (Exception)
+ {
+ }
+ return result;
+ }
+ #endregion
+
+ #region 获取所有手术编号
+ ///
+ /// 获取所有手术编号
+ ///
+ ///
+ ///
+ ///
+ private List GetOperationIds(string[] icds, string[] names, string[] levels, out string remark)
+ {
+ List result = new List();
+ remark = "";
+ try
+ {
+ for (int i = 0; i < names.Length; i++)
+ {
+ if (names[i] == "") continue;
+ DataTable dt = new DataTable();
+ if (dt == null || dt.Rows.Count <= 0)
+ {
+ string name = "";
+ name = names[i].Replace("\r\n", "");
+ name = name.Trim();
+ dt = DBHelper.GetDataTable("select * from Operation where Name ='" + name + "'");
+ if (dt.Rows.Count == 0)
+ {
+ DBHelper.ExecNonQuery(string.Concat(new Object[]{
+ "insert into Operation(ICDCode,Name,HelpCode,IsValid,UseRate,OperatorNo,[OperatorName],OperateDate) values('"+icds[i]+"','"+name+"','"+PublicMethod.GetFirstLetter(name)+"',1,1,'admin','系统管理员','"+DateTime.Now+"')"}));
+ }
+ dt = DBHelper.GetDataTable("select * from Operation where Name ='" + name + "'");
+ }
+ if (dt.Rows.Count > 0)
+ {
+ for (int j = 0; j < dt.Rows.Count; j++)
+ {
+ result.Add(int.Parse(dt.Rows[0]["Id"].ToString()));
+ }
+ }
+ }
+ }
+ catch (Exception)
+ {
+ }
+ return result;
+ }
+ #endregion
+
+ #region 获取手术分级编号
+ ///
+ /// 获取手术分级编号
+ ///
+ ///
+ ///
+ private int GetOperationLeveId(string OperationLeve)
+ {
+ int level = 5;
+ try
+ {
+ if (OperationLeve == "Ⅰ" || OperationLeve == "一级")
+ {
+ level = 1;
+ }
+ else if (OperationLeve == "Ⅱ" || OperationLeve == "二级")
+ {
+ level = 2;
+ }
+ else if (OperationLeve == "Ⅲ" || OperationLeve == "三级")
+ {
+ level = 3;
+ }
+ else if (OperationLeve == "Ⅳ" || OperationLeve == "四级")
+ {
+ level = 4;
+ }
+ }
+ catch (Exception)
+ {
+ level = 5;
+ }
+ return level;
+ }
+ #endregion
+
+ #region 获取手术切口编号
+ ///
+ /// 获取手术分级编号
+ ///
+ ///
+ ///
+ private int? GetOperationCutId(string cut)
+ {
+ if (cut != "")
+ {
+ DataTable dt = DBHelper.GetDataTable("select * from BasicDictionary where ParentId=(select Id from BasicDictionary where Name='手术切口') and Name like '%" + cut + "%'");
+ if (dt.Rows.Count > 0)
+ {
+ return int.Parse((dt.Rows[0]["Id"].ToString()));
+ }
+ else
+ {
+ return null;
+ }
+ }
+ else
+ {
+ return null;
+ }
+ }
+ #endregion
+
+ #region 获取手术部位编号
+ ///
+ /// 获取手术部位编号
+ ///
+ ///
+ ///
+ private string GetOperationPositionId(string posi)
+ {
+ StringBuilder sb = new StringBuilder();
+ string result = "";
+ try
+ {
+ if (posi != "")
+ {
+ string[] strs = null;
+ if (posi.Contains("|"))
+ strs = posi.Split('|');
+ else if (posi.Contains(","))
+ strs = posi.Split(',');
+ else
+ {
+ strs = new string[1];
+ strs[0] = posi;
+ }
+ foreach (string ss in strs)
+ {
+ DataTable dt = DBHelper.GetDataTable("select * from BasicDictionary where ParentId=(select Id from BasicDictionary where Name='手术部位') and Name = '" + ss + "'");
+ if (dt.Rows.Count > 0)
+ {
+ sb.Append(dt.Rows[0]["Id"].ToString() + ",");
+ }
+ else
+ {
+ int pid = int.Parse(DBHelper.ExecuteScalar("select Id from BasicDictionary where Name='手术部位'").ToString());
+ string sql = string.Format("insert into BasicDictionary values({0},'{1}','{2}',1,0,null,1,'{3}',null) select @@Identity", pid, ss, PublicMethod.GetFirstLetter(ss), DateTime.Now.ToString());
+ sb.Append(DBHelper.ExecuteScalar(sql).ToString() + ",");
+ }
+ }
+ }
+ if (sb.ToString().Length > 1)
+ {
+ result = sb.ToString().Substring(0, sb.ToString().Length - 1);
+ }
+ }
+ catch (Exception)
+ {
+
+ }
+ return result;
+ }
+ #endregion
+
+ #region 获取手术体位编号
+ ///
+ /// 获取手术体位编号
+ ///
+ ///
+ ///
+ private string GetOperationSiteId(string site)
+ {
+ StringBuilder sb = new StringBuilder();
+ string result = "";
+ try
+ {
+ if (site != "")
+ {
+ string[] strs = null;
+ if (site.Contains("|"))
+ strs = site.Split('|');
+ else if (site.Contains(","))
+ strs = site.Split(',');
+ else
+ {
+ strs = new string[1];
+ strs[0] = site;
+ }
+ foreach (string ss in strs)
+ {
+ DataTable dt = DBHelper.GetDataTable("select * from BasicDictionary where ParentId=(select Id from BasicDictionary where Name='手术体位') and Name = '" + ss + "'");
+ if (dt.Rows.Count > 0)
+ {
+ sb.Append(dt.Rows[0]["Id"].ToString() + ",");
+ }
+ else
+ {
+ int pid = int.Parse(DBHelper.ExecuteScalar("select Id from BasicDictionary where Name='手术体位'").ToString());
+ string sql = string.Format("insert into BasicDictionary values({0},'{1}','{2}',1,0,null,1,'{3}',null) select @@Identity", pid, ss, PublicMethod.GetFirstLetter(ss), DateTime.Now.ToString());
+ sb.Append(DBHelper.ExecuteScalar(sql).ToString() + ",");
+ }
+ }
+ }
+ if (sb.ToString().Length > 1)
+ {
+ result = sb.ToString().Substring(0, sb.ToString().Length - 1);
+ }
+ }
+ catch (Exception)
+ {
+ }
+ return result;
+ }
+ #endregion
+
+ #region 获取传染病编号
+ ///
+ /// 获取传染病编号
+ ///
+ ///
+ ///
+ private string GetContagionIds(string cont)
+ {
+ StringBuilder sb = new StringBuilder();
+ string result = "";
+ try
+ {
+ if (cont != "")
+ {
+ string[] strs = null;
+ if (cont.Contains("|"))
+ strs = cont.Split('|');
+ else if (cont.Contains(","))
+ strs = cont.Split(',');
+ else
+ {
+ strs = new string[1];
+ strs[0] = cont;
+ }
+ foreach (string ss in strs)
+ {
+ DataTable dt = DBHelper.GetDataTable("select * from BasicDictionary where ParentId=(select Id from BasicDictionary where Name='传染病') and Name = '" + ss + "'");
+ if (dt.Rows.Count > 0)
+ {
+ sb.Append(dt.Rows[0]["Id"].ToString() + ",");
+ }
+ else
+ {
+ int pid = int.Parse(DBHelper.ExecuteScalar("select Id from BasicDictionary where Name='传染病'").ToString());
+ string sql = string.Format("insert into BasicDictionary values({0},'{1}','{2}',1,0,null,1,'{3}',null) select @@Identity", pid, ss, PublicMethod.GetFirstLetter(ss), DateTime.Now.ToString());
+ sb.Append(DBHelper.ExecuteScalar(sql).ToString() + ",");
+ }
+ }
+ }
+ if (sb.ToString().Length > 1)
+ {
+ result = sb.ToString().Substring(0, sb.ToString().Length - 1);
+ }
+ }
+ catch (Exception)
+ {
+ }
+ return result;
+ }
+ #endregion
+
+ #region 获取麻醉方式编号
+ ///
+ /// 获取麻醉方式编号
+ ///
+ ///
+ ///
+ private List GetAnaesthesiaMethodIds(string str)
+ {
+ List result = new List();
+ try
+ {
+ if (str.Contains("全麻+"))
+ {
+ result.Add(1);
+ str = str.Replace("全麻+", "");
+ }
+ if (str.Length > 0)
+ {
+ DataTable dt = DBHelper.GetDataTable("select * from AnaesthesiaMethod where Name = '" + str + "'");
+ if (dt != null && dt.Rows.Count > 0)
+ {
+ result.Add(int.Parse(dt.Rows[0]["Id"].ToString()));
+ }
+ else
+ {
+ DBHelper.ExecNonQuery(string.Concat(new Object[]{
+ "insert into AnaesthesiaMethod values( '"+str+"','"+PublicMethod.GetFirstLetter(str)+"',0,1,1,'admin','系统管理员','"+DateTime.Now+"','')"}));
+ DataTable dtt = DBHelper.GetDataTable("select * from AnaesthesiaMethod where Name = '" + str + "'");
+ if (dtt != null && dtt.Rows.Count > 0)
+ {
+ result.Add(int.Parse(dtt.Rows[0]["Id"].ToString()));
+ }
+ }
+ }
+ }
+ catch (Exception)
+ {
+ }
+ return result;
+ }
+ #endregion
+
+ #region 获取手术医生编号
+ ///
+ /// 获取手术医生编号
+ ///
+ ///
+ ///
+ ///
+ private List GetSurgeonWorkIds(string[] workNos, int OrderDeptId)
+ {
+ List result = new List();
+ try
+ {
+ for (int i = 0; i < workNos.Length; i++)
+ {
+ if (workNos[i] != "")
+ {
+ result.Add(GetWorkerId(workNos[i], OrderDeptId));
+ }
+ }
+
+ }
+ catch (Exception)
+ {
+ }
+ return result;
+ }
+ #endregion
+
+
+ }
+
+ [Serializable]
+ public partial class OpeApply
+ {
+ private int? id;
+ private int? patientId;
+ private string patientType;
+ private int? applyDepartmentId;
+ private string diagnose;
+ private string diagnoseRemark;
+ private string operation;
+ private string oPerationRemark;
+ private int? operationLevelId;
+ private string operationPriorityId;
+ private string operationCutId;
+ private string operationPositionId;
+ private string anaesthesiaMethodId;
+ private string contagion;
+ private int? specializedAnaesthesiaId;
+ private int? isReturnOperation;
+ private int? isPlanReturnOperation;
+ private int? isNotPlanReturnOperation;
+ private DateTime? orderOperationTime;
+ private int? operationTimeLeight;
+ private string operationDoctor;
+ private string assistant1;
+ private string assistant2;
+ private string assistant3;
+ private string intern;
+ private string other;
+ private int? isVerify;
+ private DateTime? verifyTime;
+ private int? verifyWorkerId;
+ private DateTime? planOperationTime;
+ private int? planOperationRoom;
+ private int? tableIndex;
+ private string instrumentNurse;
+ private string instrumentNurseSucceed;
+ private string tourNurse;
+ private string tourNurseSucceed;
+ private string anesthesiaDoctor;
+ private string anesthesiaDoctorSucceed;
+ private int? state;
+ private string cancelReason;
+ private int? aSALevel;
+ private int? nYI_IA;
+ private int? fasting;
+ private int? takeMedicine;
+ private int? aPassApply;
+ private int? nPassApply;
+ private DateTime? planTime;
+ private int? planOperatorId;
+ private int? operatorId;
+ private DateTime? operatorTime;
+ private string remark;
+ private string scheduleNo;
+ private string scheduleNo2;
+ private int? execDepartmentId;
+ private string orderNo;
+ private string whereabouts;
+ private string cATALOGUE;
+ private string spareOne;
+ private string spareTwo;
+ private string spareThree;
+ private string spareFour;
+ private string spareFive;
+ private string spareSix;
+ private string spareSeven;
+ private string spareEight;
+ private string spareNine;
+ private string spareTen;
+
+ ///
+ /// 编号,自增
+ ///
+ public int? Id
+ {
+ get { return id; }
+ set { id = value; }
+ }
+ ///
+ /// 患者编号
+ ///
+ public int? PatientId
+ {
+ get { return patientId; }
+ set { patientId = value; }
+ }
+ ///
+ /// 患者类别,住院\门诊
+ ///
+ public string PatientType
+ {
+ get { return patientType; }
+ set { patientType = value; }
+ }
+ ///
+ /// 申请部门编号
+ ///
+ public int? ApplyDepartmentId
+ {
+ get { return applyDepartmentId; }
+ set { applyDepartmentId = value; }
+ }
+ ///
+ /// 术前诊断
+ ///
+ public string Diagnose
+ {
+ get { return diagnose; }
+ set { diagnose = value; }
+ }
+ ///
+ /// 诊断备注
+ ///
+ public string DiagnoseRemark
+ {
+ get { return diagnoseRemark; }
+ set { diagnoseRemark = value; }
+ }
+ ///
+ /// 拟施手术
+ ///
+ public string Operation
+ {
+ get { return operation; }
+ set { operation = value; }
+ }
+ ///
+ /// 手术备注
+ ///
+ public string OPerationRemark
+ {
+ get { return oPerationRemark; }
+ set { oPerationRemark = value; }
+ }
+ ///
+ /// 手术分级编号
+ ///
+ public int? OperationLevelId
+ {
+ get { return operationLevelId; }
+ set { operationLevelId = value; }
+ }
+ ///
+ /// 手术优先级编号
+ ///0、择期
+ ///1、急诊
+ ///2、日间
+ ///
+ public string OperationPriorityId
+ {
+ get { return operationPriorityId; }
+ set { operationPriorityId = value; }
+ }
+ ///
+ /// 手术切口分类,多选
+ ///
+ public string OperationCutId
+ {
+ get { return operationCutId; }
+ set { operationCutId = value; }
+ }
+ ///
+ /// 手术部位分类,多选
+ ///
+ public string OperationPositionId
+ {
+ get { return operationPositionId; }
+ set { operationPositionId = value; }
+ }
+ ///
+ /// 麻醉方式编号,多选
+ ///
+ public string AnaesthesiaMethodId
+ {
+ get { return anaesthesiaMethodId; }
+ set { anaesthesiaMethodId = value; }
+ }
+ ///
+ /// 传染病
+ ///
+ public string Contagion
+ {
+ get { return contagion; }
+ set { contagion = value; }
+ }
+ ///
+ /// 专科麻醉类型,类型由基础字典维护
+ ///
+ public int? SpecializedAnaesthesiaId
+ {
+ get { return specializedAnaesthesiaId; }
+ set { specializedAnaesthesiaId = value; }
+ }
+ ///
+ /// 是否重返再手术
+ ///
+ public int? IsReturnOperation
+ {
+ get { return isReturnOperation; }
+ set { isReturnOperation = value; }
+ }
+ ///
+ /// 计划再次手术
+ ///
+ public int? IsPlanReturnOperation
+ {
+ get { return isPlanReturnOperation; }
+ set { isPlanReturnOperation = value; }
+ }
+ ///
+ /// 非计划再次手术
+ ///
+ public int? IsNotPlanReturnOperation
+ {
+ get { return isNotPlanReturnOperation; }
+ set { isNotPlanReturnOperation = value; }
+ }
+ ///
+ /// 预约手术时间
+ ///
+ public DateTime? OrderOperationTime
+ {
+ get { return orderOperationTime; }
+ set { orderOperationTime = value; }
+ }
+ ///
+ /// 预计手术用时(分钟)
+ ///
+ public int? OperationTimeLeight
+ {
+ get { return operationTimeLeight; }
+ set { operationTimeLeight = value; }
+ }
+ ///
+ /// 手术医生
+ ///
+ public string OperationDoctor
+ {
+ get { return operationDoctor; }
+ set { operationDoctor = value; }
+ }
+ ///
+ /// 助理1
+ ///
+ public string Assistant1
+ {
+ get { return assistant1; }
+ set { assistant1 = value; }
+ }
+ ///
+ /// 助理2
+ ///
+ public string Assistant2
+ {
+ get { return assistant2; }
+ set { assistant2 = value; }
+ }
+ ///
+ /// 助理3
+ ///
+ public string Assistant3
+ {
+ get { return assistant3; }
+ set { assistant3 = value; }
+ }
+ ///
+ /// 实习生
+ ///
+ public string Intern
+ {
+ get { return intern; }
+ set { intern = value; }
+ }
+ ///
+ /// 其他人员
+ ///
+ public string Other
+ {
+ get { return other; }
+ set { other = value; }
+ }
+ ///
+ /// 是否审核,0未审核,1审核
+ ///
+ public int? IsVerify
+ {
+ get { return isVerify; }
+ set { isVerify = value; }
+ }
+ ///
+ /// 审核时间
+ ///
+ public DateTime? VerifyTime
+ {
+ get { return verifyTime; }
+ set { verifyTime = value; }
+ }
+ ///
+ /// 审核人员编号
+ ///
+ public int? VerifyWorkerId
+ {
+ get { return verifyWorkerId; }
+ set { verifyWorkerId = value; }
+ }
+ ///
+ /// 安排手术时间
+ ///
+ public DateTime? PlanOperationTime
+ {
+ get { return planOperationTime; }
+ set { planOperationTime = value; }
+ }
+ ///
+ /// 安排手术间
+ ///
+ public int? PlanOperationRoom
+ {
+ get { return planOperationRoom; }
+ set { planOperationRoom = value; }
+ }
+ ///
+ /// 手术台次
+ ///
+ public int? TableIndex
+ {
+ get { return tableIndex; }
+ set { tableIndex = value; }
+ }
+ ///
+ /// 器械护士
+ ///
+ public string InstrumentNurse
+ {
+ get { return instrumentNurse; }
+ set { instrumentNurse = value; }
+ }
+ ///
+ /// 器械接台护士
+ ///
+ public string InstrumentNurseSucceed
+ {
+ get { return instrumentNurseSucceed; }
+ set { instrumentNurseSucceed = value; }
+ }
+ ///
+ /// 巡回护士
+ ///
+ public string TourNurse
+ {
+ get { return tourNurse; }
+ set { tourNurse = value; }
+ }
+ ///
+ /// 巡回接台护士
+ ///
+ public string TourNurseSucceed
+ {
+ get { return tourNurseSucceed; }
+ set { tourNurseSucceed = value; }
+ }
+ ///
+ /// 麻醉医生
+ ///
+ public string AnesthesiaDoctor
+ {
+ get { return anesthesiaDoctor; }
+ set { anesthesiaDoctor = value; }
+ }
+ ///
+ /// 麻醉接台医生 改为 麻醉助手
+ ///
+ public string AnesthesiaDoctorSucceed
+ {
+ get { return anesthesiaDoctorSucceed; }
+ set { anesthesiaDoctorSucceed = value; }
+ }
+ ///
+ /// 申请状态
+ ///0、待审核
+ ///1、待排程
+ ///2、待手术
+ ///3、已手术
+ ///9、作废
+ ///
+ public int? State
+ {
+ get { return state; }
+ set { state = value; }
+ }
+ ///
+ /// 取消申请原因
+ ///
+ public string CancelReason
+ {
+ get { return cancelReason; }
+ set { cancelReason = value; }
+ }
+ ///
+ /// ASA分级
+ ///该项数据应在访视后添加到申请表
+ ///
+ public int? ASALevel
+ {
+ get { return aSALevel; }
+ set { aSALevel = value; }
+ }
+ ///
+ /// 心功能分级
+ /// 该项数据应在访视后添加到申请表
+ ///
+ public int? NYI_IA
+ {
+ get { return nYI_IA; }
+ set { nYI_IA = value; }
+ }
+ ///
+ /// 术前8小时禁食
+ ///该项数据应在访视后添加到申请表
+ ///
+ public int? Fasting
+ {
+ get { return fasting; }
+ set { fasting = value; }
+ }
+ ///
+ /// 术晨用一小口水(5ml)服用抗高压药物。
+ ///该项数据应在访视后添加到申请表
+ ///
+ public int? TakeMedicine
+ {
+ get { return takeMedicine; }
+ set { takeMedicine = value; }
+ }
+ ///
+ /// 麻醉师排程状态:0、已排程未通过,1、已排程已通过
+ ///
+ public int? APassApply
+ {
+ get { return aPassApply; }
+ set { aPassApply = value; }
+ }
+ ///
+ /// 护士排程状态:0、已排程未通过,1、已排程已通过
+ ///
+ public int? NPassApply
+ {
+ get { return nPassApply; }
+ set { nPassApply = value; }
+ }
+ ///
+ /// 排程操作时间
+ ///
+ public DateTime? PlanTime
+ {
+ get { return planTime; }
+ set { planTime = value; }
+ }
+ ///
+ /// 排程操作员编号
+ ///
+ public int? PlanOperatorId
+ {
+ get { return planOperatorId; }
+ set { planOperatorId = value; }
+ }
+ ///
+ /// 操作员
+ ///
+ public int? OperatorId
+ {
+ get { return operatorId; }
+ set { operatorId = value; }
+ }
+ ///
+ /// 操作时间
+ ///
+ public DateTime? OperatorTime
+ {
+ get { return operatorTime; }
+ set { operatorTime = value; }
+ }
+ ///
+ /// 备注
+ ///
+ public string Remark
+ {
+ get { return remark; }
+ set { remark = value; }
+ }
+ ///
+ /// 外键关联的实体属性
+ ///
+ public string ScheduleNo
+ {
+ get { return scheduleNo; }
+ set { scheduleNo = value; }
+ }
+ ///
+ /// 外键关联的实体属性
+ ///
+ public string ScheduleNo2
+ {
+ get { return scheduleNo2; }
+ set { scheduleNo2 = value; }
+ }
+ ///
+ /// 执行科室
+ ///
+ public int? ExecDepartmentId
+ {
+ get { return execDepartmentId; }
+ set { execDepartmentId = value; }
+ }
+ ///
+ /// 医嘱号
+ ///
+ public string OrderNo
+ {
+ get { return orderNo; }
+ set { orderNo = value; }
+ }
+ ///
+ /// 计划去向
+ ///
+ public string Whereabouts
+ {
+ get { return whereabouts; }
+ set { whereabouts = value; }
+ }
+ ///
+ ///
+ ///
+ public string CATALOGUE
+ {
+ get { return cATALOGUE; }
+ set { cATALOGUE = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareOne
+ {
+ get { return spareOne; }
+ set { spareOne = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareTwo
+ {
+ get { return spareTwo; }
+ set { spareTwo = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareThree
+ {
+ get { return spareThree; }
+ set { spareThree = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareFour
+ {
+ get { return spareFour; }
+ set { spareFour = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareFive
+ {
+ get { return spareFive; }
+ set { spareFive = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareSix
+ {
+ get { return spareSix; }
+ set { spareSix = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareSeven
+ {
+ get { return spareSeven; }
+ set { spareSeven = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareEight
+ {
+ get { return spareEight; }
+ set { spareEight = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareNine
+ {
+ get { return spareNine; }
+ set { spareNine = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareTen
+ {
+ get { return spareTen; }
+ set { spareTen = value; }
+ }
+ }
+ [Serializable]
+ public partial class OPPatients
+ {
+ private int? id;
+ private string hISPatientId;
+ private string hISPatientId2;
+ private string inHospitalNo;
+ private string medicalHistoryNo;
+ private int? departmentId;
+ private string name;
+ private string sex;
+ private string age;
+ private DateTime? birthDay;
+ private string height;
+ private string weight;
+ private string identity;
+ private string bloodType;
+ private string rHBloodType;
+ private string fareType;
+ private string endemicArea;
+ private string bed;
+ private string contacts;
+ private string contactsPhone;
+ private DateTime? inHospitalTime;
+ private int? visitId;
+ private int? isValid;
+ private int? operatorId;
+ private DateTime? operatorTime;
+ private string remark;
+ private string spareOne;
+ private string spareTwo;
+ private string spareThree;
+ private string spareFour;
+ private string spareFive;
+ private string spareSix;
+ private string spareSeven;
+ private string spareEight;
+ private string spareNine;
+ private string spareTen;
+
+ public string Icdname { get; set; }
+ public string IcdId { get; set; }
+
+ ///
+ /// 编号,自增
+ ///
+ public int? Id
+ {
+ get { return id; }
+ set { id = value; }
+ }
+ ///
+ /// HIS编号
+ ///
+ public string HISPatientId
+ {
+ get { return hISPatientId; }
+ set { hISPatientId = value; }
+ }
+ ///
+ /// HIS编号
+ ///
+ public string HISPatientId2
+ {
+ get { return hISPatientId2; }
+ set { hISPatientId2 = value; }
+ }
+ ///
+ /// 住院号
+ ///
+ public string InHospitalNo
+ {
+ get { return inHospitalNo; }
+ set { inHospitalNo = value; }
+ }
+ ///
+ /// 病历号
+ ///
+ public string MedicalHistoryNo
+ {
+ get { return medicalHistoryNo; }
+ set { medicalHistoryNo = value; }
+ }
+ ///
+ /// 科室编号
+ ///
+ public int? DepartmentId
+ {
+ get { return departmentId; }
+ set { departmentId = value; }
+ }
+ ///
+ /// 患者姓名
+ ///
+ public string Name
+ {
+ get { return name; }
+ set { name = value; }
+ }
+ ///
+ /// 性别
+ ///
+ public string Sex
+ {
+ get { return sex; }
+ set { sex = value; }
+ }
+ ///
+ /// 出生日期
+ ///
+ public DateTime? BirthDay
+ {
+ get { return birthDay; }
+ set { birthDay = value; }
+ }
+ ///
+ /// 年龄
+ ///
+ public string Age
+ {
+ get { return age; }
+ set { age = value; }
+ }
+ ///
+ /// 身高,单位cm
+ ///
+ public string Height
+ {
+ get { return height; }
+ set { height = value; }
+ }
+ ///
+ /// 体重,单位kg
+ ///
+ public string Weight
+ {
+ get { return weight; }
+ set { weight = value; }
+ }
+ ///
+ /// 身份证号码
+ ///
+ public string Identity
+ {
+ get { return identity; }
+ set { identity = value; }
+ }
+ ///
+ /// 血型
+ ///
+ public string BloodType
+ {
+ get { return bloodType; }
+ set { bloodType = value; }
+ }
+ ///
+ /// RH血型
+ ///
+ public string RHBloodType
+ {
+ get { return rHBloodType; }
+ set { rHBloodType = value; }
+ }
+ ///
+ /// 医保类别
+ ///
+ public string FareType
+ {
+ get { return fareType; }
+ set { fareType = value; }
+ }
+ ///
+ /// 病区
+ ///
+ public string EndemicArea
+ {
+ get { return endemicArea; }
+ set { endemicArea = value; }
+ }
+ ///
+ /// 病区床位
+ ///
+ public string Bed
+ {
+ get { return bed; }
+ set { bed = value; }
+ }
+ public string ADDRESS { get; set; }
+ ///
+ /// 联系人
+ ///
+ public string Contacts
+ {
+ get { return contacts; }
+ set { contacts = value; }
+ }
+ ///
+ /// 联系人电话
+ ///
+ public string ContactsPhone
+ {
+ get { return contactsPhone; }
+ set { contactsPhone = value; }
+ }
+ ///
+ /// 入院时间
+ ///
+ public DateTime? InHospitalTime
+ {
+ get { return inHospitalTime; }
+ set { inHospitalTime = value; }
+ }
+ ///
+ /// 住院次数
+ ///
+ public int? VisitId
+ {
+ get { return visitId; }
+ set { visitId = value; }
+ }
+ ///
+ /// 是否有效
+ ///
+ public int? IsValid
+ {
+ get { return isValid; }
+ set { isValid = value; }
+ }
+ ///
+ /// 操作员编号
+ ///
+ public int? OperatorId
+ {
+ get { return operatorId; }
+ set { operatorId = value; }
+ }
+ ///
+ /// 操作时间
+ ///
+ public DateTime? OperatorTime
+ {
+ get { return operatorTime; }
+ set { operatorTime = value; }
+ }
+ ///
+ /// 备注
+ ///
+ public string Remark
+ {
+ get { return remark; }
+ set { remark = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareOne
+ {
+ get { return spareOne; }
+ set { spareOne = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareTwo
+ {
+ get { return spareTwo; }
+ set { spareTwo = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareThree
+ {
+ get { return spareThree; }
+ set { spareThree = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareFour
+ {
+ get { return spareFour; }
+ set { spareFour = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareFive
+ {
+ get { return spareFive; }
+ set { spareFive = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareSix
+ {
+ get { return spareSix; }
+ set { spareSix = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareSeven
+ {
+ get { return spareSeven; }
+ set { spareSeven = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareEight
+ {
+ get { return spareEight; }
+ set { spareEight = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareNine
+ {
+ get { return spareNine; }
+ set { spareNine = value; }
+ }
+ ///
+ ///
+ ///
+ public string SpareTen
+ {
+ get { return spareTen; }
+ set { spareTen = value; }
+ }
+ }
+}
\ No newline at end of file
diff --git a/AIMS/OperationAanesthesia/frmAanesthesiaRecord.cs b/AIMS/OperationAanesthesia/frmAanesthesiaRecord.cs
index 1f7eb99..95d926e 100644
--- a/AIMS/OperationAanesthesia/frmAanesthesiaRecord.cs
+++ b/AIMS/OperationAanesthesia/frmAanesthesiaRecord.cs
@@ -1103,29 +1103,29 @@ namespace AIMS.OperationAanesthesia
LoadAnesRescue();
}
- //private System.Windows.Forms.Timer timerLoadAnesRescue;
+ private System.Windows.Forms.Timer timerLoadAnesRescue;
public void LoadAnesRescue()
{
- //circularProgress1.IsRunning = true;
- //circularProgress1.Visible = true;
- //circularProgress1.AnimationSpeed = 0;
- //circularProgress2.IsRunning = true;
- //circularProgress2.Visible = true;
- //zgcAnaesRecord.Visible = false;
- //zgcAnaesRecord2.Visible = false;
- //timerLoadAnesRescue = new System.Windows.Forms.Timer(components);
- //timerLoadAnesRescue.Enabled = true;//调试时设置为FALSE ,
- //timerLoadAnesRescue.Interval = 200;
- //timerLoadAnesRescue.Tick -= TimerLoadAnesRescue_Tick;
- //timerLoadAnesRescue.Tick += TimerLoadAnesRescue_Tick;
- //timerLoadAnesRescue.Start();
+ circularProgress1.IsRunning = true;
+ circularProgress1.Visible = true;
+ circularProgress1.AnimationSpeed = 0;
+ circularProgress2.IsRunning = true;
+ circularProgress2.Visible = true;
+ zgcAnaesRecord.Visible = false;
+ zgcAnaesRecord2.Visible = false;
+ timerLoadAnesRescue = new System.Windows.Forms.Timer(components);
+ timerLoadAnesRescue.Enabled = true;//调试时设置为FALSE ,
+ timerLoadAnesRescue.Interval = 200;
+ timerLoadAnesRescue.Tick -= TimerLoadAnesRescue_Tick;
+ timerLoadAnesRescue.Tick += TimerLoadAnesRescue_Tick;
+ timerLoadAnesRescue.Start();
- TimerLoadAnesRescue_Tick(null, null);
+ //TimerLoadAnesRescue_Tick(null, null);
}
private void TimerLoadAnesRescue_Tick(object sender, EventArgs e)
{
- //timerLoadAnesRescue.Dispose();
+ timerLoadAnesRescue.Dispose();
try
{
if (PatientId > 0 && State == AIMSExtension.EditState.ADD)
diff --git a/AIMS/OperationAanesthesia/frmSelectPatientNew3.Designer.cs b/AIMS/OperationAanesthesia/frmSelectPatientNew3.Designer.cs
index efaa740..d6d70a8 100644
--- a/AIMS/OperationAanesthesia/frmSelectPatientNew3.Designer.cs
+++ b/AIMS/OperationAanesthesia/frmSelectPatientNew3.Designer.cs
@@ -41,7 +41,9 @@
this.cboRoom = new System.Windows.Forms.ComboBox();
this.btnFrontDay = new System.Windows.Forms.Button();
this.btnNextDay = new System.Windows.Forms.Button();
+ this.dtpSelectPatientTime2 = new System.Windows.Forms.DateTimePicker();
this.dtpSelectPatientTime = new System.Windows.Forms.DateTimePicker();
+ this.label6 = new System.Windows.Forms.Label();
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.panel2 = new System.Windows.Forms.Panel();
this.buttonX2 = new DevComponents.DotNetBar.ButtonX();
@@ -73,8 +75,7 @@
this.label3 = new System.Windows.Forms.Label();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.panel3 = new System.Windows.Forms.Panel();
- this.dtpSelectPatientTime2 = new System.Windows.Forms.DateTimePicker();
- this.label6 = new System.Windows.Forms.Label();
+ this.buttonX4 = new DevComponents.DotNetBar.ButtonX();
this.panel1.SuspendLayout();
this.groupBox1.SuspendLayout();
this.panel2.SuspendLayout();
@@ -87,6 +88,7 @@
this.panel1.Controls.Add(this.CboOperationSite);
this.panel1.Controls.Add(this.labelSite);
this.panel1.Controls.Add(this.txtquery);
+ this.panel1.Controls.Add(this.buttonX4);
this.panel1.Controls.Add(this.btnQuery);
this.panel1.Controls.Add(this.buttonX3);
this.panel1.Controls.Add(this.label1);
@@ -240,6 +242,15 @@
this.btnNextDay.UseVisualStyleBackColor = false;
this.btnNextDay.Click += new System.EventHandler(this.btnNext_Click);
//
+ // dtpSelectPatientTime2
+ //
+ this.dtpSelectPatientTime2.CustomFormat = "yyyy-MM-dd";
+ this.dtpSelectPatientTime2.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
+ this.dtpSelectPatientTime2.Location = new System.Drawing.Point(203, 9);
+ this.dtpSelectPatientTime2.Name = "dtpSelectPatientTime2";
+ this.dtpSelectPatientTime2.Size = new System.Drawing.Size(111, 23);
+ this.dtpSelectPatientTime2.TabIndex = 0;
+ //
// dtpSelectPatientTime
//
this.dtpSelectPatientTime.CustomFormat = "yyyy-MM-dd";
@@ -249,6 +260,16 @@
this.dtpSelectPatientTime.Size = new System.Drawing.Size(111, 23);
this.dtpSelectPatientTime.TabIndex = 0;
//
+ // label6
+ //
+ this.label6.AutoSize = true;
+ this.label6.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.label6.Location = new System.Drawing.Point(189, 9);
+ this.label6.Name = "label6";
+ this.label6.Size = new System.Drawing.Size(15, 20);
+ this.label6.TabIndex = 7;
+ this.label6.Text = "-";
+ //
// groupBox1
//
this.groupBox1.BackColor = System.Drawing.Color.AliceBlue;
@@ -575,24 +596,18 @@
this.panel3.Size = new System.Drawing.Size(1029, 499);
this.panel3.TabIndex = 0;
//
- // dtpSelectPatientTime2
+ // buttonX4
//
- this.dtpSelectPatientTime2.CustomFormat = "yyyy-MM-dd";
- this.dtpSelectPatientTime2.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
- this.dtpSelectPatientTime2.Location = new System.Drawing.Point(203, 9);
- this.dtpSelectPatientTime2.Name = "dtpSelectPatientTime2";
- this.dtpSelectPatientTime2.Size = new System.Drawing.Size(111, 23);
- this.dtpSelectPatientTime2.TabIndex = 0;
- //
- // label6
- //
- this.label6.AutoSize = true;
- this.label6.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.label6.Location = new System.Drawing.Point(189, 9);
- this.label6.Name = "label6";
- this.label6.Size = new System.Drawing.Size(15, 20);
- this.label6.TabIndex = 7;
- this.label6.Text = "-";
+ this.buttonX4.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
+ this.buttonX4.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground;
+ this.buttonX4.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.buttonX4.Location = new System.Drawing.Point(853, 8);
+ this.buttonX4.Name = "buttonX4";
+ this.buttonX4.Size = new System.Drawing.Size(81, 23);
+ this.buttonX4.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.buttonX4.TabIndex = 8;
+ this.buttonX4.Text = "同步";
+ this.buttonX4.Click += new System.EventHandler(this.buttonX4_Click);
//
// frmSelectPatientNew3
//
@@ -668,5 +683,6 @@
private System.Windows.Forms.Label labelSite;
private System.Windows.Forms.DateTimePicker dtpSelectPatientTime2;
private System.Windows.Forms.Label label6;
+ private DevComponents.DotNetBar.ButtonX buttonX4;
}
}
\ No newline at end of file
diff --git a/AIMS/OperationAanesthesia/frmSelectPatientNew3.cs b/AIMS/OperationAanesthesia/frmSelectPatientNew3.cs
index ec7c554..354ca36 100644
--- a/AIMS/OperationAanesthesia/frmSelectPatientNew3.cs
+++ b/AIMS/OperationAanesthesia/frmSelectPatientNew3.cs
@@ -32,7 +32,7 @@ namespace AIMS.OperationAanesthesia
private string[] Day = new string[] { "周日", "周一", "周二", "周三", "周四", "周五", "周六" };
private void frmSelectPatientNew3_Load(object sender, EventArgs e)
{
- ControlExtension.GetOperationSiteRoom(labelSite, CboOperationSite, cboRoom,"内镜室");
+ ControlExtension.GetOperationSiteRoom(labelSite, CboOperationSite, cboRoom, "内镜室");
string week = Day[Convert.ToInt32(DateTime.Now.DayOfWeek.ToString("d"))].ToString();
cboRoom.Text = "";
if (week == "周一")
@@ -63,8 +63,9 @@ namespace AIMS.OperationAanesthesia
FillDgv();
}
- private void FillDgv()
+ private int FillDgv()
{
+ int count = 0;
panel3.Controls.Clear();
panel2.Visible = false;
@@ -123,6 +124,7 @@ namespace AIMS.OperationAanesthesia
numi++;
j = 0;
}
+ count++;
}
foreach (DataRow dr in dt.Rows)
{
@@ -139,6 +141,7 @@ namespace AIMS.OperationAanesthesia
numi++;
j = 0;
}
+ count++;
}
//}
@@ -185,6 +188,7 @@ namespace AIMS.OperationAanesthesia
// }
// }
//}
+ return count;
}
public ucPatientCard SelUc;
@@ -518,7 +522,17 @@ namespace AIMS.OperationAanesthesia
private void btnQuery_Click(object sender, EventArgs e)
{
- FillDgv();
+ int count = FillDgv();
+ if (txtquery.Text.Trim() != "" && count == 0)
+ {
+ DialogResult result = MessageBox.Show("未找到'" + txtquery.Text.Trim() + "' 手术申请信息 是否从HIS同步数据?", "系统提示", MessageBoxButtons.YesNo);
+ if (result == DialogResult.Yes)
+ {
+ OpeApplyAnalyze opeApplyAnalyze = new OpeApplyAnalyze();
+ opeApplyAnalyze.Analyze(txtquery.Text.Trim());
+ FillDgv();
+ }
+ }
}
private void buttonX2_Click(object sender, EventArgs e)
@@ -551,5 +565,15 @@ namespace AIMS.OperationAanesthesia
FillDgv();
this.cboRoom.SelectedIndexChanged += new System.EventHandler(this.cboRoom_SelectedIndexChanged);
}
+
+ private void buttonX4_Click(object sender, EventArgs e)
+ {
+ if (txtquery.Text.Trim() != "")
+ {
+ OpeApplyAnalyze opeApplyAnalyze = new OpeApplyAnalyze();
+ opeApplyAnalyze.Analyze(txtquery.Text.Trim());
+ FillDgv();
+ }
+ }
}
}
\ No newline at end of file
diff --git a/DrawGraph/AreaManage/FactDrug.cs b/DrawGraph/AreaManage/FactDrug.cs
index a1fce7e..3f1176f 100644
--- a/DrawGraph/AreaManage/FactDrug.cs
+++ b/DrawGraph/AreaManage/FactDrug.cs
@@ -117,15 +117,24 @@ namespace DrawGraph
{
try
{
+ bool isEqual = false;
if ((this.DosageUnit == ((FactDrug)drug1).DosageUnit) && (this.DrugChannel == ((FactDrug)drug1).DrugChannel) && (this.DrugName == ((FactDrug)drug1).DrugName) && (this.Access == ((FactDrug)drug1).Access))
{
- return true;
+ isEqual = true;
+ }
+ if (isEqual == true && !this.DrugName.Contains("氧") && ((this.DensityUnit == ((FactDrug)drug1).DensityUnit) && (this.Density == ((FactDrug)drug1).Density)))
+ {
+ isEqual = true;
+ }
+ else
+ {
+ isEqual = false;
}
//if ((this.DrugChannel == ((FactDrug)drug1).DrugChannel) && (this.DrugName == ((FactDrug)drug1).DrugName) && (this.Access == ((FactDrug)drug1).Access))
//{
// return true;
//}
- return false;
+ return isEqual;
}
catch (Exception)
{
@@ -159,7 +168,7 @@ namespace DrawGraph
if ((DateTime.Compare(time, DateTime.Parse(DrugBeginTime.ToString())) > 0 && DateTime.Compare(time, DateTime.Parse(DrugEndTime.ToString())) < 0))
{
reValue = true;
- }
+ }
}
}
return reValue;
@@ -211,13 +220,17 @@ namespace DrawGraph
DoseStr = (((double)this.Dosage).ToString());
string RemarkStr = this.Remark;//
string DensityStr = Density == 0 ? "" : ((double)this.Density).ToString();
- string VelocityStr = Velocity ;
+ string VelocityStr = Velocity;
string s = "";
- if (DensityStr != "" || VelocityStr != "")
+
+ if (DensityStr != "" && this.DrugName.Contains("氧"))
{
if (this.DensityUnit != null && this.DensityUnit != "") DensityStr += this.DensityUnit;
- s = (DensityStr + " " + VelocityStr).Trim();
- if (DensityStr != "" && VelocityStr != "") s = DensityStr + "|" + VelocityStr;
+ s = (DensityStr).Trim();
+ }
+ if (VelocityStr != "")
+ {
+ if (VelocityStr != "") s = VelocityStr;
if (this.VelocityUnit != null && this.VelocityUnit != "") s += this.VelocityUnit;
}
if ((EqualDose == null || EqualDose == ""))
@@ -293,7 +306,11 @@ namespace DrawGraph
double x1 = x;// 0.05f;
string DrName = this.DrugName.Trim();
- //if (this.Remark != null && this.Remark != "") DrName += "(" + this.Remark + ")";
+ //if (this.Remark != null && this.Remark != "") DrName += "(" + this.Remark + ")";
+ if (!this.DrugName.Contains("氧"))
+ {
+ if (this.Density > 0 && this.DensityUnit != null && this.DensityUnit != "") DrName = ((double)this.Density).ToString() + this.DensityUnit + DrName;
+ }
if (this.DrugChannel != null && this.DrugChannel != "") DrName += "(" + this.DrugChannel + ")";
if (this.DosageUnit != null && this.DosageUnit != "") DrName += "(" + this.DosageUnit + ")";
if (this.BloodType != null && this.BloodType != "") DrName += "(" + this.BloodType + ")";