/// <summary> /// 更新手术排班信息 /// </summary> /// <param name="operationSchedule">手术信息</param> /// <returns></returns> public int UpdateOperationSchedule(MED_OPERATION_SCHEDULE operationSchedule, Func <MED_OPERATION_SCHEDULE, object> onlyFields = null) { int result = dapper.Set <MED_OPERATION_SCHEDULE>().Update(operationSchedule, onlyFields); dapper.SaveChanges(); return(result); }
public bool SearchTomorrowFilterData(string searchContent) { bool isReturn = false; if (OperationScheduleFilter != null && OperationScheduleFilter.Count > 0) { List <MED_OPERATION_SCHEDULE> operScheduledList = OperationScheduleFilter.Where(x => x.PATIENT_ID == searchContent || x.INP_NO == searchContent || x.NAME == searchContent).ToList().OrderBy(x => x.SCHEDULED_DATE_TIME).ToList(); if (operScheduledList != null && operScheduledList.Count > 0) { MED_OPERATION_SCHEDULE operSchedule = operScheduledList[0]; for (int i = 0; i < dgTomorrowSchedule.Rows.Count; i++) { if (dgTomorrowSchedule["ColumnPatientID", i].Value.ToString().Trim() == operSchedule.PATIENT_ID && Convert.ToInt32(dgTomorrowSchedule["ColumnVisitID", i].Value) == operSchedule.VISIT_ID && Convert.ToInt32(dgTomorrowSchedule["ColumnOperID", i].Value) == operSchedule.OPER_ID) { this.dgTomorrowSchedule.Rows[i].Selected = true; this.dgTomorrowSchedule.CurrentCell = this.dgTomorrowSchedule.Rows[i].Cells[0]; isReturn = true; break; } else { this.dgTomorrowSchedule.Rows[i].Selected = false; } } MessageQueue.AddMessage("为您查找到明日手术患者" + operSchedule.NAME + " " + operSchedule.SEX + " " + operSchedule.AGE, Color.Black); } } else if (PatientCardScheduleFilter != null && PatientCardScheduleFilter.Count > 0) { List <MED_PATIENT_CARD> operScheduledList = PatientCardScheduleFilter.Where(x => x.PATIENT_ID == searchContent || x.INP_NO == searchContent || x.NAME == searchContent).ToList().OrderBy(x => x.SCHEDULED_DATE_TIME).ToList(); if (operScheduledList != null && operScheduledList.Count > 0) { MED_PATIENT_CARD operSchedule = operScheduledList[0]; for (int i = 0; i < dgTomorrowSchedule.Rows.Count; i++) { if (dgTomorrowSchedule["ColumnPatientID", i].Value.ToString().Trim() == operSchedule.PATIENT_ID && Convert.ToInt32(dgTomorrowSchedule["ColumnVisitID", i].Value) == operSchedule.VISIT_ID && Convert.ToInt32(dgTomorrowSchedule["ColumnOperID", i].Value) == operSchedule.OPER_ID) { this.dgTomorrowSchedule.Rows[i].Selected = true; this.dgTomorrowSchedule.CurrentCell = this.dgTomorrowSchedule.Rows[i].Cells[0]; isReturn = true; break; } else { this.dgTomorrowSchedule.Rows[i].Selected = false; } } MessageQueue.AddMessage("为您查找到明日手术患者" + operSchedule.NAME + " " + operSchedule.SEX + " " + operSchedule.AGE, Color.Black); } } if (!isReturn) { for (int i = 0; i < dgTomorrowSchedule.Rows.Count; i++) { this.dgTomorrowSchedule.Rows[i].Selected = false; } } return(isReturn); }
/// <summary> /// 手术取消 /// </summary> /// <param name="operationCanceled"></param> /// <returns></returns> public bool CancelOperationSchedule(OperCancelAndDetailEntity operationCanceled) { MED_OPERATION_SCHEDULE opsche = dapper.Set <MED_OPERATION_SCHEDULE>().Single(d => d.PATIENT_ID == operationCanceled.OperCanceled.PATIENT_ID && d.VISIT_ID == operationCanceled.OperCanceled.VISIT_ID && d.SCHEDULE_ID == operationCanceled.OperCanceled.SCHEDULE_ID); int CancelID = GetMaxOperCancelCancelID(operationCanceled.OperCanceled); operationCanceled.OperCanceled.OPER_ID = opsche.OPER_ID; operationCanceled.OperCanceled.CANCEL_ID = ++CancelID; bool flag = dapper.Set <MED_OPERATION_CANCELED>().Insert(operationCanceled.OperCanceled); if (operationCanceled.AnesInputDict != null && operationCanceled.AnesInputDict.Count > 0) { foreach (var item in operationCanceled.AnesInputDict) { dapper.Set <MED_OPERATION_CANCELED_DETAIL>().Insert(new MED_OPERATION_CANCELED_DETAIL { PATIENT_ID = operationCanceled.OperCanceled.PATIENT_ID, VISIT_ID = operationCanceled.OperCanceled.VISIT_ID, CANCEL_ID = operationCanceled.OperCanceled.CANCEL_ID, CANCEL_CLASS = item.ITEM_CLASS, CANCEL_TYPE = item.ITEM_NAME }); } } if (flag) { opsche.OPER_ROOM_NO = null; opsche.SEQUENCE = 0; opsche.OPERATING_TIME = 0; opsche.ANES_CONFIRM = 0; opsche.NURSE_CONFIRM = 0; opsche.FIRST_OPER_NURSE = null; opsche.FIRST_SUPPLY_NURSE = null; opsche.ANES_DOCTOR = null; opsche.FIRST_ANES_ASSISTANT = null; opsche.OPER_STATUS_CODE = -80; dapper.Set <MED_OPERATION_SCHEDULE>().Update(opsche, d => new { d.OPER_ROOM_NO, d.SEQUENCE, d.OPERATING_TIME, d.ANES_CONFIRM, d.NURSE_CONFIRM, d.FIRST_OPER_NURSE, d.FIRST_SUPPLY_NURSE, d.ANES_DOCTOR, d.FIRST_ANES_ASSISTANT, d.OPER_STATUS_CODE, }); if (AppSettings.OpenHIS212) { SyncInfoService.SyncWrite_OPER504W(opsche.PATIENT_ID, opsche.VISIT_ID, opsche.SCHEDULE_ID); } } dapper.SaveChanges(); return(flag); }
private int getMaxOperId(string sql_GetMaxOperID, MED_OPERATION_SCHEDULE item) { object operId = dapper.ExecuteScalar(sql_GetMaxOperID, new { PatientID = item.PATIENT_ID, VisitID = item.VISIT_ID }); int maxOperID = 0; if (operId != null) { int.TryParse(operId.ToString(), out maxOperID); } return(++maxOperID); }
/// <summary> /// 是否允许手术撤销 /// </summary> /// <param name="operationSchedule"></param> /// <returns></returns> public MED_OPERATION_SCHEDULE IsCanRevokedOpertionSchedule(MED_OPERATION_SCHEDULE operationSchedule) { //新增已入室的手术,不允许撤销功能 MED_OPERATION_SCHEDULE scheduleTemp = null; if (operationSchedule != null && !string.IsNullOrEmpty(operationSchedule.PATIENT_ID)) { scheduleTemp = dapper.Set <MED_OPERATION_SCHEDULE>().Single(d => d.PATIENT_ID == operationSchedule.PATIENT_ID && d.VISIT_ID == operationSchedule.VISIT_ID && d.OPER_ID == operationSchedule.OPER_ID); } return(scheduleTemp); }
public RequestResult UpdateOperDetailInfo(MED_OPERATION_SCHEDULE operationSchedule) { int count = 0; if (operationSchedule.OPER_STATUS_CODE == 0) { count = OperSchedule.UpdateOperationSchedule(operationSchedule, d => new { d.SCHEDULED_DATE_TIME, d.OPERATING_TIME, d.SURGEON, d.ANES_METHOD, d.ANES_DOCTOR, d.FIRST_ANES_ASSISTANT, d.SECOND_ANES_ASSISTANT, d.FIRST_OPER_NURSE, d.SECOND_OPER_NURSE, d.FIRST_SUPPLY_NURSE, d.SECOND_SUPPLY_NURSE, d.NOTES_ON_OPERATION }); } else { count = OperSchedule.UpdateOperationSchedule(operationSchedule, d => new { d.OPERATING_TIME, d.SURGEON, d.ANES_METHOD, d.ANES_DOCTOR, d.FIRST_ANES_ASSISTANT, d.SECOND_ANES_ASSISTANT, d.FIRST_OPER_NURSE, d.SECOND_OPER_NURSE, d.FIRST_SUPPLY_NURSE, d.SECOND_SUPPLY_NURSE, d.NOTES_ON_OPERATION }); } if (count > 0) { return(Success(new { count = count, operDetail = OperSchedule.GetOperDetail(operationSchedule) })); } else { return(Success(new { count = count })); } }
/// <summary> /// 保存手术取消记录数据 /// </summary> private void SaveOperationCanceled(ref TransactionParamsters tp) { MED_OPERATION_SCHEDULE scheduled = AnesInfoService.ClientInstance.GetOperSchedule(this.CurPatientModel.PatientID, this.CurPatientModel.VisitID, this.CurPatientModel.OperID); List <MED_OPERATION_CANCELED> list = CommonService.ClientInstance.GetOperationCanceled(this.CurPatientModel.PatientID, this.CurPatientModel.VisitID); MED_OPERATION_CANCELED newRow = new MED_OPERATION_CANCELED(); newRow.PATIENT_ID = this.CurPatientModel.PatientID; newRow.VISIT_ID = this.CurPatientModel.VisitID; newRow.CANCEL_ID = list.Count + 1; newRow.SCHEDULE_ID = null != scheduled ? scheduled.SCHEDULE_ID : 1; newRow.OPER_ID = this.CurPatientModel.OperID; newRow.OPER_STATUS_CODE = (int)this.CurPatientModel.OperStatusCode; newRow.CANCEL_REASON = this.strReason; newRow.CANCEL_DATE = DateTime.Now; newRow.CANCEL_BY = string.Empty; newRow.ENTERED_BY = ExtendAppContext.Current.LoginUser.USER_JOB_ID; newRow.ModelStatus = ModelStatus.Add; list.Add(newRow); tp.Append(list); this.SaveOperationCanceledDetail(newRow.CANCEL_ID, ref tp); }
public bool UpdateOperationScheduleByPatientInfo(MED_OPERATION_SCHEDULE item, string type) { bool flg = true; if (type == "1") { flg = dapper.Set <MED_OPERATION_SCHEDULE>().Update(item, p => new { p.OPER_ROOM_NO, p.SEQUENCE, p.SCHEDULED_DATE_TIME, p.FIRST_OPER_NURSE, p.SECOND_OPER_NURSE, p.FIRST_SUPPLY_NURSE, p.SECOND_SUPPLY_NURSE, p.OPER_STATUS_CODE, p.NURSE_CONFIRM }) > 0 ? true : false; } else { flg = dapper.Set <MED_OPERATION_SCHEDULE>().Update(item, p => new { p.ANES_METHOD, p.ANES_DOCTOR, p.FIRST_ANES_ASSISTANT, p.SECOND_ANES_ASSISTANT, p.THIRD_ANES_ASSISTANT, p.FOURTH_ANES_ASSISTANT, p.OPER_STATUS_CODE, p.ANES_CONFIRM }) > 0 ? true : false; } dapper.SaveChanges(); return(flg); }
public RequestResult UpdateOperationSchedule(MED_OPERATION_SCHEDULE operationSchedule) { return(Success(OperSchedule.UpdateOperationSchedule(operationSchedule, d => new { d.OPER_ROOM_NO, d.SEQUENCE, d.OPER_STATUS_CODE, d.SCHEDULED_DATE_TIME, d.OPERATING_TIME }))); }
/// <summary> /// 保存手术室外麻醉 /// </summary> /// <param name="model"></param> /// <returns></returns> public int SaveOutOperatingRoomAnesRecordData(OutOperatingRoomAnesRecordEntity model) { if (model == null) { return(0); } try { if (string.IsNullOrEmpty(model.PATIENT_ID)) { model.PATIENT_ID = model.INP_NO; } //获取master主表是否有改挑手术 MED_OPERATION_MASTER operationMaster = dapper.Set <MED_OPERATION_MASTER>().Single( x => x.PATIENT_ID == model.PATIENT_ID && x.VISIT_ID == model.VISIT_ID && x.OPER_ID == model.OPER_ID); int result = 0; if (operationMaster != null) { operationMaster.DEPT_CODE = model.DEPT_CODE; operationMaster.DIAG_BEFORE_OPERATION = model.DIAG_BEFORE_OPERATION; operationMaster.OPERATION_NAME = model.OPERATION_NAME; operationMaster.ANES_METHOD = model.ANES_METHOD; operationMaster.ANES_DOCTOR = model.ANES_DOCTOR; operationMaster.FIRST_ANES_ASSISTANT = model.FIRST_ANES_ASSISTANT; operationMaster.FIRST_OPER_NURSE = model.FIRST_OPER_NURSE; operationMaster.SECOND_OPER_NURSE = model.SECOND_OPER_NURSE; operationMaster.ASA_GRADE = model.ASA_GRADE; operationMaster.EMERGENCY_IND = Convert.ToInt32(model.EMERGENCY_IND); operationMaster.IN_DATE_TIME = model.IN_DATE_TIME; operationMaster.START_DATE_TIME = model.START_DATE_TIME; operationMaster.END_DATE_TIME = model.END_DATE_TIME; operationMaster.OUT_DATE_TIME = model.OUT_DATE_TIME; operationMaster.LOCAL_ANESTHESIA = 1; operationMaster.OPER_STATUS_CODE = 35; operationMaster.OPER_ROOM = model.OPER_ROOM; operationMaster.OPER_ROOM_NO = model.OPER_ROOM_NO; operationMaster.OPER_SCALE = model.OPER_SCALE; operationMaster.SURGEON = model.SURGEON; operationMaster.FIRST_OPER_ASSISTANT = model.FIRST_OPER_ASSISTANT; result = dapper.Set <MED_OPERATION_MASTER>().Update(operationMaster) > 0 ? 1 : 0; } else { MED_OPERATION_MASTER newModel = new MED_OPERATION_MASTER(); newModel.PATIENT_ID = model.PATIENT_ID; newModel.VISIT_ID = model.VISIT_ID; newModel.OPER_ID = model.OPER_ID; newModel.DEPT_CODE = model.DEPT_CODE; newModel.DIAG_BEFORE_OPERATION = model.DIAG_BEFORE_OPERATION; newModel.OPERATION_NAME = model.OPERATION_NAME; newModel.ANES_METHOD = model.ANES_METHOD; newModel.ANES_DOCTOR = model.ANES_DOCTOR; newModel.FIRST_ANES_ASSISTANT = model.FIRST_ANES_ASSISTANT; newModel.FIRST_OPER_NURSE = model.FIRST_OPER_NURSE; newModel.SECOND_OPER_NURSE = model.SECOND_OPER_NURSE; newModel.ASA_GRADE = model.ASA_GRADE; newModel.EMERGENCY_IND = Convert.ToInt32(model.EMERGENCY_IND); newModel.IN_DATE_TIME = model.IN_DATE_TIME; newModel.SCHEDULED_DATE_TIME = model.SCHEDULED_DATE_TIME; newModel.START_DATE_TIME = model.START_DATE_TIME; newModel.END_DATE_TIME = model.END_DATE_TIME; newModel.OUT_DATE_TIME = model.OUT_DATE_TIME; newModel.LOCAL_ANESTHESIA = 1; newModel.OPER_STATUS_CODE = 35; newModel.OPER_ROOM = model.OPER_ROOM; newModel.OPER_ROOM_NO = model.OPER_ROOM_NO; newModel.OPER_SCALE = model.OPER_SCALE; newModel.SURGEON = model.SURGEON; newModel.FIRST_OPER_ASSISTANT = model.FIRST_OPER_ASSISTANT; result = dapper.Set <MED_OPERATION_MASTER>().Insert(newModel) == true ? 1 : 0; } //手术名称表(先删再增) //删除模版 dapper.Set <MED_OPERATION_NAME>().Delete(d => d.PATIENT_ID == model.PATIENT_ID && d.VISIT_ID == model.VISIT_ID && d.OPER_ID == model.OPER_ID); if (!string.IsNullOrEmpty(model.OPERATION_NAME)) { string[] operNames = model.OPERATION_NAME.Split('+'); for (int i = 1; i <= operNames.Length; i++) { MED_OPERATION_NAME operNameModel = new MED_OPERATION_NAME(); operNameModel.PATIENT_ID = model.PATIENT_ID; operNameModel.VISIT_ID = model.VISIT_ID; operNameModel.OPER_ID = model.OPER_ID; operNameModel.OPER_NO = i; operNameModel.OPER_NAME = operNames[i - 1]; dapper.Set <MED_OPERATION_NAME>().Insert(operNameModel); } } //室外麻醉手术在输入出手术室时间点击保存后,需要把对应的schedule表状态改为4, string OPER_STATUS_CODE = "" ; MED_OPERATION_SCHEDULE scheduleModel = dapper.Set <MED_OPERATION_SCHEDULE>().Single( x => x.PATIENT_ID == model.PATIENT_ID && x.VISIT_ID == model.VISIT_ID && x.OPER_ID == model.OPER_ID); if (scheduleModel != null) { OPER_STATUS_CODE = scheduleModel.OPER_STATUS_CODE.ToString(); scheduleModel.OPER_STATUS_CODE = 4; scheduleModel.ModelStatus = ModelStatus.Modeified; dapper.Set <MED_OPERATION_SCHEDULE>().Update(scheduleModel); } //修改扩展 体重 MED_ANESTHESIA_PLAN_PMH phmModel = dapper.Set <MED_ANESTHESIA_PLAN_PMH>().Single( x => x.PATIENT_ID == model.PATIENT_ID && x.VISIT_ID == model.VISIT_ID && x.OPER_ID == model.OPER_ID); if (phmModel != null) { phmModel.WEIGHT = model.WEIGHT; dapper.Set <MED_ANESTHESIA_PLAN_PMH>().Update(phmModel); } else { phmModel = new MED_ANESTHESIA_PLAN_PMH(); phmModel.PATIENT_ID = model.PATIENT_ID; phmModel.VISIT_ID = model.VISIT_ID; phmModel.OPER_ID = model.OPER_ID; phmModel.WEIGHT = model.WEIGHT; dapper.Set <MED_ANESTHESIA_PLAN_PMH>().Save(phmModel); } dapper.SaveChanges(); //调用HISHIS203回写手术主表信息 //if (OPER_STATUS_CODE != "4") //回写之后不再回写 //{ // if (SyncHIS203(model.PATIENT_ID, model.VISIT_ID,model.OPER_ID) != "") // { // return 2; // } //} } catch (Exception ex) { return(0); } return(1); }
public RequestResult UpdateOperationNurse(MED_OPERATION_SCHEDULE operationSchedule) { return(Success(OperSchedule.UpdateOperationSchedule(operationSchedule, d => new { d.FIRST_OPER_NURSE, d.FIRST_SUPPLY_NURSE }))); }
private int GetMaxOperationNo(string sql_GetMaxOperationNo, MED_OPERATION_SCHEDULE item) { return(dapper.ExecuteScalar <int>(sql_GetMaxOperationNo, new { PatientID = item.PATIENT_ID, VisitID = item.VISIT_ID, OperID = item.OPER_ID })); }
/// <summary> /// 提交手术信息 /// </summary> /// <param name="operationScheduleList"></param> /// <returns></returns> public List <MED_OPERATION_SCHEDULE> SubmitOperationScheduleList(List <MED_OPERATION_SCHEDULE> operationScheduleList) { List <MED_OPERATION_SCHEDULE> returnOperationScheduleList = new List <MED_OPERATION_SCHEDULE>(); string sql_GetMaxOperID = sqlDict.GetSQLByKey("GetMaxOperID"); string sql_GetMaxOperationNo = sqlDict.GetSQLByKey("GetMaxOperationNo"); foreach (MED_OPERATION_SCHEDULE item in operationScheduleList) { item.OPER_ID = getMaxOperId(sql_GetMaxOperID, item); if (item.OPER_STATUS_CODE == 2) { Logger.InfoFormat("{0}手术提交2:{1}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff"), JsonConvert.SerializeObject(item)); MED_OPERATION_SCHEDULE returnobj = setOperationSubmit(sql_GetMaxOperationNo, item); if (returnobj != null) { returnOperationScheduleList.Add(returnobj); } } else { MED_OPERATION_SCHEDULE dbSCHEDULE = dapper.Set <MED_OPERATION_SCHEDULE>().Single(item); if ((dbSCHEDULE.NURSE_CONFIRM == 1 && item.ANES_CONFIRM == 1) || (dbSCHEDULE.ANES_CONFIRM == 1 && item.NURSE_CONFIRM == 1)) { if (dbSCHEDULE.OPER_STATUS_CODE == 1) { item.NURSE_CONFIRM = 1; item.ANES_CONFIRM = 1; item.OPER_STATUS_CODE = 2; Logger.InfoFormat("{0}手术提交:{1} 数据库中的{2}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff"), JsonConvert.SerializeObject(item), JsonConvert.SerializeObject(dbSCHEDULE)); MED_OPERATION_SCHEDULE returnobj = setOperationSubmit(sql_GetMaxOperationNo, item); if (returnobj != null) { returnOperationScheduleList.Add(returnobj); } } else { returnOperationScheduleList.Add(dbSCHEDULE); } } else { int temp = 0; if (dbSCHEDULE.ANES_CONFIRM == 0 && item.ANES_CONFIRM == 1) { temp = dapper.Set <MED_OPERATION_SCHEDULE>().Update(item, d => new { d.ANES_CONFIRM }); } if (dbSCHEDULE.NURSE_CONFIRM == 0 && item.NURSE_CONFIRM == 1) { temp = dapper.Set <MED_OPERATION_SCHEDULE>().Update(item, d => new { d.NURSE_CONFIRM }); } if (temp > 0) { dapper.SaveChanges(); returnOperationScheduleList.Add(item); } } } if (AppSettings.OpenHIS202) { SyncInfoService.SyncWrite_OPER501W(item.PATIENT_ID, item.VISIT_ID, item.SCHEDULE_ID); } } return(returnOperationScheduleList); }
private MED_OPERATION_SCHEDULE setOperationSubmit(string sql_GetMaxOperationNo, MED_OPERATION_SCHEDULE item) { MED_OPERATION_SCHEDULE dbSCHEDULE = dapper.Set <MED_OPERATION_SCHEDULE>().Single(item); //判断收到已经提交 if (dbSCHEDULE.OPER_STATUS_CODE == 1) //实时判断,没提交才能判断 { #region 获取MED_OPERATION_SCHEDULE_NAME表数据 List <MED_OPERATION_SCHEDULE_NAME> scheduleNameItemList = dapper.Set <MED_OPERATION_SCHEDULE_NAME>().Select(d => d.PATIENT_ID == item.PATIENT_ID && d.VISIT_ID == item.VISIT_ID && d.SCHEDULE_ID == item.SCHEDULE_ID).OrderBy(d => d.OPER_NO).ToList <MED_OPERATION_SCHEDULE_NAME>(); #endregion int OperationNo = GetMaxOperationNo(sql_GetMaxOperationNo, item); string tempOperationName = string.Empty; #region 向MED_OPERATION_NAME表插入数据 List <MED_OPERATION_NAME> operNameItemList = new List <MED_OPERATION_NAME>(); foreach (MED_OPERATION_SCHEDULE_NAME scheduleNameItem in scheduleNameItemList) { MED_OPERATION_NAME operNameItem = new MED_OPERATION_NAME(); operNameItem.PATIENT_ID = scheduleNameItem.PATIENT_ID; operNameItem.VISIT_ID = scheduleNameItem.VISIT_ID; operNameItem.OPER_ID = item.OPER_ID; operNameItem.OPER_NO = ++OperationNo; operNameItem.OPER_NAME = scheduleNameItem.OPER_NAME; operNameItem.OPER_CODE = scheduleNameItem.OPER_CODE; operNameItem.OPER_SCALE = scheduleNameItem.OPER_SCALE; operNameItem.WOUND_TYPE = scheduleNameItem.WOUND_TYPE; operNameItem.RESERVED1 = scheduleNameItem.RESERVED1; operNameItem.RESERVED2 = scheduleNameItem.RESERVED2; operNameItem.RESERVED3 = scheduleNameItem.RESERVED3; operNameItem.RESERVED4 = scheduleNameItem.RESERVED4; operNameItemList.Add(operNameItem); tempOperationName += "," + scheduleNameItem.RESERVED2 + scheduleNameItem.OPER_NAME; } dapper.Set <MED_OPERATION_NAME>().Insert(operNameItemList); #endregion tempOperationName = tempOperationName.TrimStart(','); #region 向MED_OPERATION_MASTER表插入数据 MED_OPERATION_MASTER masterITEM = new MED_OPERATION_MASTER { PATIENT_ID = item.PATIENT_ID, VISIT_ID = item.VISIT_ID, OPER_ID = Convert.ToInt32(item.OPER_ID), HOSP_BRANCH = item.HOSP_BRANCH, WARD_CODE = item.WARD_CODE, DEPT_CODE = item.DEPT_CODE, OPER_DEPT_CODE = item.OPER_DEPT_CODE, OPER_ROOM = item.OPER_ROOM, OPER_ROOM_NO = item.OPER_ROOM_NO, SEQUENCE = item.SEQUENCE, OPER_CLASS = item.OPER_CLASS, DIAG_BEFORE_OPERATION = item.DIAG_BEFORE_OPERATION, DIAG_AFTER_OPERATION = item.DIAG_BEFORE_OPERATION, PATIENT_CONDITION = item.PATIENT_CONDITION, OPER_SCALE = item.OPER_SCALE, WOUND_TYPE = item.WOUND_TYPE, ASA_GRADE = item.ASA_GRADE, EMERGENCY_IND = item.EMERGENCY_IND, OPER_SOURCE = item.OPER_SOURCE, ISOLATION_IND = item.ISOLATION_IND, INFECTED_IND = item.INFECTED_IND, RADIATE_IND = item.RADIATE_IND, SURGEON = item.SURGEON, FIRST_OPER_ASSISTANT = item.FIRST_OPER_ASSISTANT, SECOND_OPER_ASSISTANT = item.SECOND_OPER_ASSISTANT, THIRD_OPER_ASSISTANT = item.THIRD_OPER_ASSISTANT, FOURTH_OPER_ASSISTANT = item.FOURTH_OPER_ASSISTANT, ANES_METHOD = item.ANES_METHOD, ANES_DOCTOR = item.ANES_DOCTOR, FIRST_ANES_ASSISTANT = item.FIRST_ANES_ASSISTANT, SECOND_ANES_ASSISTANT = item.SECOND_ANES_ASSISTANT, THIRD_ANES_ASSISTANT = item.THIRD_ANES_ASSISTANT, FOURTH_ANES_ASSISTANT = item.FOURTH_ANES_ASSISTANT, FIRST_ANES_NURSE = item.FIRST_ANES_NURSE, SECOND_ANES_NURSE = item.SECOND_ANES_NURSE, THIRD_ANES_NURSE = item.THIRD_ANES_NURSE, CPB_DOCTOR = item.CPB_DOCTOR, FIRST_CPB_ASSISTANT = item.FIRST_CPB_ASSISTANT, SECOND_CPB_ASSISTANT = item.SECOND_CPB_ASSISTANT, THIRD_CPB_ASSISTANT = item.THIRD_CPB_ASSISTANT, FOURTH_CPB_ASSISTANT = item.FOURTH_CPB_ASSISTANT, FIRST_OPER_NURSE = item.FIRST_OPER_NURSE, SECOND_OPER_NURSE = item.SECOND_OPER_NURSE, THIRD_OPER_NURSE = item.THIRD_OPER_NURSE, FOURTH_OPER_NURSE = item.FOURTH_OPER_NURSE, FIRST_SUPPLY_NURSE = item.FIRST_SUPPLY_NURSE, SECOND_SUPPLY_NURSE = item.SECOND_SUPPLY_NURSE, THIRD_SUPPLY_NURSE = item.THIRD_SUPPLY_NURSE, FOURTH_SUPPLY_NURSE = item.FOURTH_SUPPLY_NURSE, PACU_DOCTOR = item.PACU_DOCTOR, FIRST_PACU_ASSISTANT = item.FIRST_PACU_ASSISTANT, SECOND_PACU_ASSISTANT = item.SECOND_PACU_ASSISTANT, FIRST_PACU_NURSE = item.FIRST_PACU_NURSE, SECOND_PACU_NURSE = item.SECOND_PACU_NURSE, REQ_DATE_TIME = item.REQ_DATE_TIME, SCHEDULED_DATE_TIME = item.SCHEDULED_DATE_TIME, OPER_POSITION = item.OPER_POSITION, BED_NO = item.BED_NO, OPERATION_NAME = tempOperationName, SPECIAL_EQUIPMENT = item.SPECIAL_EQUIPMENT, SPECIAL_INFECT = item.SPECIAL_INFECT, OPER_STATUS_CODE = item.OPER_STATUS_CODE, HIS_PATIENT_ID = item.HIS_PATIENT_ID, HIS_VISIT_ID = item.HIS_VISIT_ID, HIS_SCHEDULE_ID = item.HIS_SCHEDULE_ID, HIS_OPER_STATUS = item.HIS_OPER_STATUS, MEMO = item.NOTES_ON_OPERATION }; bool flag = dapper.Set <MED_OPERATION_MASTER>().Insert(masterITEM); #endregion item.OPERATION_NAME = tempOperationName; dapper.Set <MED_OPERATION_SCHEDULE>().Update(item, d => new { d.ANES_CONFIRM, d.NURSE_CONFIRM, d.OPER_STATUS_CODE, d.OPER_ID, d.OPERATION_NAME, d.ANES_DOCTOR }); if (flag) { //确认成功后,从visit表中往plan表中写入手术名称,身高体重数据 MED_ANESTHESIA_PLAN anesPlan = dapper.Set <MED_ANESTHESIA_PLAN>().Single(d => d.PATIENT_ID == masterITEM.PATIENT_ID && d.VISIT_ID == masterITEM.VISIT_ID && d.OPER_ID == masterITEM.OPER_ID); if (anesPlan == null) { anesPlan = new MED_ANESTHESIA_PLAN(); anesPlan.PATIENT_ID = masterITEM.PATIENT_ID; anesPlan.VISIT_ID = masterITEM.VISIT_ID; anesPlan.OPER_ID = masterITEM.OPER_ID; } if (!string.IsNullOrEmpty(masterITEM.OPERATION_NAME)) { anesPlan.OPERATION_NAME = masterITEM.OPERATION_NAME; } dapper.Set <MED_ANESTHESIA_PLAN>().Save(anesPlan, d => d.PATIENT_ID == masterITEM.PATIENT_ID && d.VISIT_ID == masterITEM.VISIT_ID && d.OPER_ID == masterITEM.OPER_ID); MED_ANESTHESIA_PLAN_PMH anesPlanPmh = dapper.Set <MED_ANESTHESIA_PLAN_PMH>().Single(d => d.PATIENT_ID == masterITEM.PATIENT_ID && d.VISIT_ID == masterITEM.VISIT_ID && d.OPER_ID == masterITEM.OPER_ID); MED_PAT_VISIT patVisit = dapper.Set <MED_PAT_VISIT>().Single(d => d.PATIENT_ID == masterITEM.PATIENT_ID && d.VISIT_ID == masterITEM.VISIT_ID); if (anesPlanPmh == null) { anesPlanPmh = new MED_ANESTHESIA_PLAN_PMH(); anesPlanPmh.PATIENT_ID = masterITEM.PATIENT_ID; anesPlanPmh.VISIT_ID = masterITEM.VISIT_ID; anesPlanPmh.OPER_ID = masterITEM.OPER_ID; if (patVisit != null) { anesPlanPmh.HEIGHT = patVisit.BODY_HEIGHT.HasValue ? patVisit.BODY_HEIGHT.Value.ToString() : ""; anesPlanPmh.WEIGHT = patVisit.BODY_WEIGHT.HasValue ? patVisit.BODY_WEIGHT.Value.ToString() : ""; anesPlanPmh.BLOOD_TYPE = patVisit.BLOOD_TYPE + " " + patVisit.BLOOD_TYPE_RH; } } else { if (patVisit != null) { anesPlanPmh.HEIGHT = patVisit.BODY_HEIGHT.HasValue ? patVisit.BODY_HEIGHT.Value.ToString() : "";; anesPlanPmh.WEIGHT = patVisit.BODY_WEIGHT.HasValue ? patVisit.BODY_WEIGHT.Value.ToString() : "";; anesPlanPmh.BLOOD_TYPE = patVisit.BLOOD_TYPE + " " + patVisit.BLOOD_TYPE_RH; } } dapper.Set <MED_ANESTHESIA_PLAN_PMH>().Save(anesPlanPmh, d => d.PATIENT_ID == anesPlanPmh.PATIENT_ID && d.VISIT_ID == anesPlanPmh.VISIT_ID && d.OPER_ID == anesPlanPmh.OPER_ID); dapper.SaveChanges(); return(item); } } return(null); }
/// <summary> /// 获取手术信息信息 /// </summary> /// <param name="operationSchedule"></param> /// <returns></returns> public MED_OPERATION_SCHEDULE GetOperDetail(MED_OPERATION_SCHEDULE operationSchedule) { string sql = sqlDict.GetSQLByKey("GetOperDetail"); return(dapper.Set <MED_OPERATION_SCHEDULE>().Query(sql, new { PatientID = operationSchedule.PATIENT_ID, VisitID = operationSchedule.VISIT_ID, ScheduleID = operationSchedule.SCHEDULE_ID }).FirstOrDefault()); }
public RequestResult UpdateOperationDoctor(MED_OPERATION_SCHEDULE operationSchedule) { return(Success(OperSchedule.UpdateOperationSchedule(operationSchedule, d => new { d.ANES_DOCTOR, d.FIRST_ANES_ASSISTANT }))); }
private void PatientTree_Load(object sender, EventArgs e) { MED_PATIENT_CARD cardRow = patientInfoRepository.GetPatCard(patientID, (int)visitID, (int)operID).Data; labelName.Text = GetValue(cardRow.NAME); labelBaseInfo.Text = string.Format("{0} {1} {2}", GetValue(cardRow.SEX), DateDiff.CalAge(cardRow.DATE_OF_BIRTH.Value, cardRow.SCHEDULED_DATE_TIME.Value), GetValue(cardRow.INP_NO)); MED_PAT_VISIT patVisit = operationInfoRepository.GetPatVisit(patientID, (int)visitID).Data; if (patVisit == null) { patVisit = new MED_PAT_VISIT(); } string admission_date_time = string.Empty; if (patVisit.ADMISSION_DATE_TIME != null) { admission_date_time = patVisit.ADMISSION_DATE_TIME.Value.ToString("yyyy-MM-dd"); } labelZD.Text = string.Format("{0}{1}{2}", admission_date_time, GetValue(patVisit.PAT_ADM_CONDITION), GetValue(patVisit.INSURANCE_TYPE)); #region 术后随访 List <MED_ANESTHESIA_INQUIRY> anesthesia_inquiry = operationInfoRepository.GetAnesInquiryList(patientID, (int)visitID, (int)operID).Data; if (anesthesia_inquiry != null && anesthesia_inquiry.Count > 0) { labelINQUIRY_DATE.Text = anesthesia_inquiry[0].INQUIRY_DATE.ToString("yyyy-MM-dd"); labelDocName.Text = RefUsersDT(anesthesia_inquiry[0].INQUIRY_DOCTOR); } else { labelINQUIRY_DATE.Text = string.Empty; labelDocName.Text = string.Empty; } #endregion #region 患者复苏 string[] tempArr = new string[10] { "", "", "", "", "", "", "", "", "", "" }; StringBuilder sb = new StringBuilder(); sb.Append("入室:{0} 出室:{1}\r\n"); sb.Append("复苏市时长:{2}分钟\r\n"); sb.Append("入室情况:体温{3}℃ 意识:{4} 呼吸:{5}次/分\r\n"); sb.Append("苏醒评分:{6}分\r\n"); sb.Append("出室情况:体温{7}℃ 意识:{8} 呼吸:{9}次/分\r\n"); if (cardRow.IN_PACU_DATE_TIME != null) { labelFuSuDate.Text = cardRow.IN_PACU_DATE_TIME.Value.ToString("yyyy-MM-dd"); tempArr[0] = cardRow.IN_PACU_DATE_TIME.Value.ToString("HH:mm"); } else { labelFuSuDate.Text = string.Empty; } if (cardRow.OUT_PACU_DATE_TIME != null) { tempArr[1] = cardRow.OUT_PACU_DATE_TIME.Value.ToString("HH:mm"); } if (cardRow.IN_PACU_DATE_TIME != null && cardRow.OUT_PACU_DATE_TIME != null) { tempArr[2] = (cardRow.OUT_PACU_DATE_TIME.Value - cardRow.IN_PACU_DATE_TIME.Value).Minutes.ToString(); } //入室 MED_CONFIRMATION_PACU in_confirmation_pacu = operationInfoRepository.GetConfirmationPACU(patientID, (int)visitID, (int)operID, 45).Data; if (in_confirmation_pacu != null) { tempArr[3] = in_confirmation_pacu.BODY_TEMP.Value.ToString(); tempArr[4] = in_confirmation_pacu.CONSCIOUSNESS; tempArr[5] = in_confirmation_pacu.RESP.Value.ToString(); } List <MED_STEWARD_MARK> steward_mark = operationInfoRepository.GetStewardMarkList(patientID, (int)visitID, (int)operID).Data; if (steward_mark != null && steward_mark.Count > 0) { tempArr[6] = steward_mark[steward_mark.Count - 1].TOTAL_MATK.ToString(); } //出室 MED_CONFIRMATION_PACU out_confirmation_pacu = operationInfoRepository.GetConfirmationPACU(patientID, (int)visitID, (int)operID, 55).Data; if (out_confirmation_pacu != null) { tempArr[7] = out_confirmation_pacu.BODY_TEMP.Value.ToString(); tempArr[8] = out_confirmation_pacu.CONSCIOUSNESS; tempArr[9] = out_confirmation_pacu.RESP.Value.ToString(); } labelPACU.Text = string.Format(sb.ToString(), tempArr); #endregion #region 术中麻醉 MED_ANESTHESIA_INPUT_DATA input_data = operationInfoRepository.GetAnesInputData(patientID, (int)visitID, (int)operID).Data; if (cardRow.START_DATE_TIME != null) { labelShouShuZhongDate.Text = cardRow.START_DATE_TIME.Value.ToString("yyyy-MM-dd"); } else { labelShouShuZhongDate.Text = string.Empty; } string ANALGESIA_EFFECT = string.Empty; if (input_data != null) { ANALGESIA_EFFECT = input_data.ANALGESIA_EFFECT; } if (cardRow.OUT_DATE_TIME != null && cardRow.IN_DATE_TIME != null) { TimeSpan span = (TimeSpan)(cardRow.OUT_DATE_TIME - cardRow.IN_DATE_TIME); int hour = span.Days * 24; lbloperTime.Text = string.Format("手术时长:{0}小时 {1}分钟 麻醉效果:{2}", hour + span.Hours, span.Minutes, ANALGESIA_EFFECT); lbInRoomTime.Text = cardRow.IN_DATE_TIME.Value.ToString("HH:mm"); lbAnesStartTime.Text = cardRow.ANES_START_TIME.Value.ToString("HH:mm"); lbOperStartTime.Text = cardRow.START_DATE_TIME.Value.ToString("HH:mm"); lbOperEndTime.Text = cardRow.END_DATE_TIME.Value.ToString("HH:mm"); lbAnesEndTime.Text = cardRow.ANES_END_TIME.Value.ToString("HH:mm"); lbOutRomTime.Text = cardRow.OUT_DATE_TIME.Value.ToString("HH:mm"); } else { lbloperTime.Text = string.Format("手术时长: 麻醉效果:"); lbInRoomTime.Text = "--:--"; lbAnesStartTime.Text = "--:--"; lbAnesStartTime.Text = "--:--"; lbOperStartTime.Text = "--:--"; lbOperEndTime.Text = "--:--"; lbAnesEndTime.Text = "--:--"; lbOutRomTime.Text = "--:--"; } MED_OPERATION_MASTER_EXT master_ext = operationInfoRepository.GetOperMasterExt(patientID, (int)visitID, (int)operID).Data; string[] arrayInOrOut = new string[8] { "", "", "", "", "", "", "", "" }; if (master_ext == null) { master_ext = new MED_OPERATION_MASTER_EXT(); } if (master_ext.INFUSION_TRAN_VOL != null) { arrayInOrOut[0] = GetValue(master_ext.INFUSION_TRAN_VOL.ToString()); } if (master_ext.OUT_FLUIDS_AMOUNT != null) { arrayInOrOut[1] = GetValue(master_ext.OUT_FLUIDS_AMOUNT.ToString()); } if (master_ext.BLOOD_TRANSFUSED != null) { arrayInOrOut[2] = GetValue(master_ext.BLOOD_TRANSFUSED.ToString()); } if (master_ext.CRY_WATHER != null) { arrayInOrOut[3] = GetValue(master_ext.CRY_WATHER.ToString()); } List <MED_VITAL_SIGN> vitalSignList = new OperationVitalSignRepository().GetVitalSignData(patientID, (int)visitID, (int)operID, "0", false); if (vitalSignList != null && vitalSignList.Count > 0) { DateTime lastTime = vitalSignList[vitalSignList.Count - 1].TIME_POINT; vitalSignList = vitalSignList.Where(p => p.TIME_POINT == lastTime).ToList(); foreach (MED_VITAL_SIGN row in vitalSignList) { if (row.ITEM_CODE == "100") //体温 { arrayInOrOut[4] = GetValue(row.ITEM_VALUE); } else if (row.ITEM_CODE == "89")//血压高 { arrayInOrOut[5] = GetValue(row.ITEM_VALUE); } else if (row.ITEM_CODE == "90")//血压低 { arrayInOrOut[6] = GetValue(row.ITEM_VALUE); } else if (row.ITEM_CODE == "44")//脉搏 { arrayInOrOut[7] = GetValue(row.ITEM_VALUE); } } } labelInOrOut.Text = string.Format("术中输液:入量:{0}ml 出量:{1}ml\r\n输血:{2}ml 自体血:{3}\r\n出室时:体温:{4}℃ 血压:{5}/{6} 脉搏:{7}", arrayInOrOut); MED_OPERATION_MASTER master = operationInfoRepository.GetOperMaster(patientID, (int)visitID, (int)operID).Data; labelAnesOper.Text = string.Format("麻:{0} 护:{1}\r\n手:{2}", RefUsersDT(master.ANES_DOCTOR) + " " + RefUsersDT(master.FIRST_ANES_ASSISTANT), RefUsersDT(master.FIRST_OPER_NURSE) + " " + RefUsersDT(master.FIRST_SUPPLY_NURSE), RefUsersDT(master.SURGEON) + " " + RefUsersDT(master.FIRST_OPER_ASSISTANT)); #endregion #region 术前访视 MED_ANESTHESIA_PLAN_EXAM anesPlanExam = operationInfoRepository.GetAnesPlanExam(patientID, (int)visitID, (int)operID).Data; MED_ANESTHESIA_PLAN_PMH anesPlanPmh = operationInfoRepository.GetAnesPlanPmh(patientID, (int)visitID, (int)operID).Data; MED_ANESTHESIA_PLAN anesPlan = operationInfoRepository.GetAnesPlan(patientID, (int)visitID, (int)operID).Data; if (anesPlanExam == null) { anesPlanExam = new MED_ANESTHESIA_PLAN_EXAM(); } if (anesPlanPmh == null) { anesPlanPmh = new MED_ANESTHESIA_PLAN_PMH(); } if (anesPlan == null) { anesPlan = new MED_ANESTHESIA_PLAN(); } if (anesPlan.INQUIRY_BEFORE_DATE != null) { labelFangShiDate.Text = anesPlan.INQUIRY_BEFORE_DATE.Value.ToString("yyyy-MM-dd"); } else { labelFangShiDate.Text = string.Empty; } labelFangShiName.Text = GetValue(anesPlan.INQUIRY_DOCTOR); labelPatient.Text = string.Format("{0}cm,{1}kg{2}/{3}mmHg{4}次/分,{5}次/分", GetValue(anesPlanPmh.HEIGHT.ToString()), GetValue(anesPlanPmh.WEIGHT.ToString()), GetValue(anesPlanExam.BLOOD_PRESS_HIGH.ToString()), GetValue(anesPlanExam.BLOOD_PRESS_LOW.ToString()), GetValue(anesPlanExam.CARDIOTACH.ToString()), GetValue(anesPlanExam.BREATH.ToString())); labelSQ1.Text = string.Format("血常规:{0} 心电图:{1}", "", GetValue(anesPlanExam.ECG_EXAM)); labelSQ2.Text = string.Format("生化:{0} 意识:{1}", "", ""); labelSQ3.Text = string.Format("{0} {1}", "", ""); labelSQ4.Text = string.Format("执行麻醉:{0} ASA分级:{1}", GetValue(anesPlan.ANESTHESIA_METHOD), GetValue(cardRow.ASA_GRADE)); #endregion List <MED_OPERATION_SCHEDULE> operScheduleList = operationInfoRepository.GetOperScheduleList(patientID, (int)visitID).Data.ToList(); if (operScheduleList != null && operScheduleList.Count > 0) { operScheduleList = operScheduleList.Where(x => x.OPER_ID == (int)operID).ToList(); } #region 手术安排 StringBuilder sbschedule1 = new StringBuilder(); sbschedule1.Append("手术安排日期:{0}\r\n"); sbschedule1.Append("麻:{1}\r\n"); sbschedule1.Append("护:{2}\r\n"); sbschedule1.Append("手术间:{3} 台次:{4}"); string[] tempSchedule1Arr = new string[5] { "", "", "", "", "" }; if (operScheduleList != null && operScheduleList.Count > 0) { MED_OPERATION_SCHEDULE tempoperation_schedule1 = operScheduleList[0]; tempSchedule1Arr[0] = tempoperation_schedule1.SCHEDULED_DATE_TIME.Value.ToString("yyyy-MM-dd"); StringBuilder sbOperAnes = new StringBuilder(); sbOperAnes.Append(RefUsersDT(tempoperation_schedule1.ANES_DOCTOR)); sbOperAnes.Append(RefUsersDT(tempoperation_schedule1.FIRST_ANES_ASSISTANT)); sbOperAnes.Append(RefUsersDT(tempoperation_schedule1.SECOND_ANES_ASSISTANT)); sbOperAnes.Append(RefUsersDT(tempoperation_schedule1.THIRD_ANES_ASSISTANT)); sbOperAnes.Append(RefUsersDT(tempoperation_schedule1.FOURTH_ANES_ASSISTANT)); tempSchedule1Arr[1] = sbOperAnes.ToString(); StringBuilder sbOperNurse = new StringBuilder(); sbOperNurse.Append(RefUsersDT(tempoperation_schedule1.FIRST_OPER_NURSE)); sbOperNurse.Append(RefUsersDT(tempoperation_schedule1.SECOND_OPER_NURSE)); sbOperNurse.Append(RefUsersDT(tempoperation_schedule1.THIRD_OPER_NURSE)); sbOperNurse.Append(RefUsersDT(tempoperation_schedule1.FOURTH_OPER_NURSE)); sbOperNurse.Append(RefUsersDT(tempoperation_schedule1.FIRST_OPER_NURSE)); sbOperNurse.Append(RefUsersDT(tempoperation_schedule1.SECOND_SUPPLY_NURSE)); sbOperNurse.Append(RefUsersDT(tempoperation_schedule1.THIRD_SUPPLY_NURSE)); sbOperNurse.Append(RefUsersDT(tempoperation_schedule1.FOURTH_SUPPLY_NURSE)); tempSchedule1Arr[2] = sbOperNurse.ToString(); tempSchedule1Arr[3] = GetValue(tempoperation_schedule1.OPER_ROOM_NO); if (tempoperation_schedule1.SEQUENCE != null) { tempSchedule1Arr[4] = tempoperation_schedule1.SEQUENCE.ToString(); } labelSchedule.Text = string.Format(sbschedule1.ToString(), tempSchedule1Arr); labelOperScheduleTime.Text = tempoperation_schedule1.SCHEDULED_DATE_TIME.Value.ToString("yyyy-MM-dd"); } else { labelSchedule.Text = string.Format(sbschedule1.ToString(), tempSchedule1Arr); labelOperScheduleTime.Visible = false; } #endregion #region 手术申请 if (operScheduleList != null && operScheduleList.Count > 0) { MED_OPERATION_SCHEDULE tempoperation_schedule = operScheduleList[0]; string[] tempScheduleArr = new string[7] { "", "", "", "", "", "", "" }; tempScheduleArr[0] = RefDeptDT(tempoperation_schedule.DEPT_CODE); tempScheduleArr[1] = GetValue(tempoperation_schedule.BED_NO); tempScheduleArr[2] = GetValue(tempoperation_schedule.DIAG_BEFORE_OPERATION); tempScheduleArr[3] = GetValue(tempoperation_schedule.OPERATION_NAME); tempScheduleArr[4] = GetValue(tempoperation_schedule.OPER_SCALE); tempScheduleArr[5] = GetValue(tempoperation_schedule.OPER_POSITION); labelOperReg.Text = string.Format("{0}{1}\r\n{2}\r\n{3}{4}\r\n{5}", tempScheduleArr); StringBuilder sbOper = new StringBuilder(); sbOper.Append(RefUsersDT(tempoperation_schedule.SURGEON)); sbOper.Append(RefUsersDT(tempoperation_schedule.FIRST_OPER_ASSISTANT)); sbOper.Append(RefUsersDT(tempoperation_schedule.SECOND_OPER_ASSISTANT)); sbOper.Append(RefUsersDT(tempoperation_schedule.THIRD_OPER_ASSISTANT)); sbOper.Append(RefUsersDT(tempoperation_schedule.FOURTH_ANES_ASSISTANT)); labelOper.Text = string.Format("手:{0}", sbOper.ToString()); labelCreateDate.Text = tempoperation_schedule.REQ_DATE_TIME.Value.ToString("yyyy-Mm-dd"); if (cardRow.EMERGENCY_IND == 1) { pictureBoxJZ.Visible = true; } if (cardRow.RADIATE_IND == 2) { pictureBoxFS.Visible = true; } if (cardRow.ISOLATION_IND == 2) { pictureBoxGL.Visible = true; } } else { labelOperReg.Text = string.Empty; labelOper.Text = "手:"; labelCreateDate.Text = string.Empty; } #endregion }
public RequestResult RevokedOpertionSchedule(MED_OPERATION_SCHEDULE operationSchedule) { return(Success(OperSchedule.RevokedOpertionSchedule(operationSchedule))); }
public bool SavePatientOperation(MED_OPERATION_SCHEDULE operSchedule, MED_PAT_VISIT patVisit, MED_PAT_MASTER_INDEX patMasterIndex, List <MED_OPERATION_NAME> operNameOldList, List <MED_OPERATION_NAME> operNameNewList, MED_OPERATION_MASTER operMaster, MED_ANESTHESIA_PLAN anesPlan, MED_ANESTHESIA_PLAN_PMH anesPlanPmh, MED_ANESTHESIA_PLAN_EXAM anesPlanExam, MED_OPERATION_MASTER_EXT operMasterExt) { bool flag = true; if (operSchedule != null) { flag = flag & dapper.Set <MED_OPERATION_SCHEDULE>().Save(operSchedule); } if (patVisit != null) { flag = flag & dapper.Set <MED_PAT_VISIT>().Save(patVisit); } if (patMasterIndex != null) { flag = flag & dapper.Set <MED_PAT_MASTER_INDEX>().Save(patMasterIndex); } if (operNameOldList != null && operNameOldList.Count > 0) { foreach (var item in operNameNewList) { flag = flag & dapper.Set <MED_OPERATION_NAME>().Delete(item); } } if (operNameNewList != null && operNameNewList.Count > 0) { foreach (var item in operNameNewList) { flag = flag & dapper.Set <MED_OPERATION_NAME>().Save(item); } } if (operMaster != null) { flag = flag & dapper.Set <MED_OPERATION_MASTER>().Save(operMaster); } if (anesPlan != null) { flag = flag & dapper.Set <MED_ANESTHESIA_PLAN>().Save(anesPlan); } if (anesPlanPmh != null) { flag = flag & dapper.Set <MED_ANESTHESIA_PLAN_PMH>().Save(anesPlanPmh); } if (anesPlanExam != null) { flag = flag & dapper.Set <MED_ANESTHESIA_PLAN_EXAM>().Save(anesPlanExam); } if (operMasterExt != null) { flag = flag & dapper.Set <MED_OPERATION_MASTER_EXT>().Save(operMasterExt); } if (flag) { dapper.SaveChanges(); } return(flag); }
/// <summary> /// 手术撤销 /// </summary> /// <param name="operationSchedule"></param> /// <returns></returns> public int RevokedOpertionSchedule(MED_OPERATION_SCHEDULE operationSchedule) { int flag = 0; if (operationSchedule.OPER_STATUS_CODE == 1)//从2变成1 { dapper.Set <MED_OPERATION_SCHEDULE>().Update(operationSchedule, d => new { d.OPER_STATUS_CODE, }); flag = dapper.Set <MED_OPERATION_MASTER>().Delete(d => d.PATIENT_ID == operationSchedule.PATIENT_ID && d.VISIT_ID == operationSchedule.VISIT_ID && d.OPER_ID == operationSchedule.OPER_ID); dapper.Set <MED_OPERATION_NAME>().Delete(d => d.PATIENT_ID == operationSchedule.PATIENT_ID && d.VISIT_ID == operationSchedule.VISIT_ID && d.OPER_ID == operationSchedule.OPER_ID); dapper.Set <MED_ANESTHESIA_PLAN>().Delete(d => d.PATIENT_ID == operationSchedule.PATIENT_ID && d.VISIT_ID == operationSchedule.VISIT_ID && d.OPER_ID == operationSchedule.OPER_ID); dapper.SaveChanges(); } else if (operationSchedule.OPER_STATUS_CODE == 0)//从1变成0 { //获取当前撤销事件 DateTime dtCurrentTime = Convert.ToDateTime(operationSchedule.SCHEDULED_DATE_TIME.ToString("d")); string operRoom = operationSchedule.OPER_ROOM; string operRoomNo = operationSchedule.OPER_ROOM_NO; int? seq = operationSchedule.SEQUENCE; //判断此手术后面是否全是是未提交的string string sql = sqlDict.GetSQLByKey("GetOperList"); List <MED_OPERATION_SCHEDULE> list = dapper.Set <MED_OPERATION_SCHEDULE>().Query(sql, new { StartDateTime = dtCurrentTime, ENDDateTime = dtCurrentTime.AddDays(1), OperRoom = operRoom }); operationSchedule.OPER_ROOM_NO = null; operationSchedule.SEQUENCE = 0; operationSchedule.OPERATING_TIME = 0; operationSchedule.ANES_CONFIRM = 0; operationSchedule.NURSE_CONFIRM = 0; operationSchedule.FIRST_OPER_NURSE = null; operationSchedule.FIRST_SUPPLY_NURSE = null; operationSchedule.ANES_DOCTOR = null; operationSchedule.FIRST_ANES_ASSISTANT = null; flag = dapper.Set <MED_OPERATION_SCHEDULE>().Update(operationSchedule, d => new { d.OPER_ROOM_NO, d.SEQUENCE, d.OPERATING_TIME, d.ANES_CONFIRM, d.NURSE_CONFIRM, d.FIRST_OPER_NURSE, d.FIRST_SUPPLY_NURSE, d.ANES_DOCTOR, d.FIRST_ANES_ASSISTANT, d.OPER_STATUS_CODE, }); dapper.SaveChanges(); //List<MED_OPERATION_SCHEDULE> listRoom = list.Where(d => d.OPER_ROOM_NO == operRoomNo).ToList(); //List<MED_OPERATION_SCHEDULE> listUpdate = new List<MED_OPERATION_SCHEDULE>(); //DateTime time1 = operationSchedule.SCHEDULED_DATE_TIME; //DateTime time2 = DateTime.Now; //int mark = 0; //bool isUpdate = true; //int? seqTemp = seq; //foreach (var item in listRoom) //{ // if (item.SEQUENCE > seq) // { // if (mark == 0) // { // time2 = item.SCHEDULED_DATE_TIME; // mark = 1; // } // if (item.OPER_STATUS_CODE < 2) // { // //item.SEQUENCE = item.SEQUENCE - 1; // item.SEQUENCE = seqTemp; // seqTemp++; // TimeSpan ts = time1 - time2; // item.SCHEDULED_DATE_TIME = item.SCHEDULED_DATE_TIME.AddMinutes(ts.TotalMinutes); // listUpdate.Add(item); // } // else // { // seqTemp = item.SEQUENCE + 1; // time1 = item.SCHEDULED_DATE_TIME; // time2 = item.SCHEDULED_DATE_TIME; // //isUpdate = false; // } // } //} //if (isUpdate) //{ // dapper.Set<MED_OPERATION_SCHEDULE>().Update(listUpdate); // dapper.SaveChanges(); //} } return(flag); }
public RequestResult <bool> updateOperSchedule(MED_OPERATION_SCHEDULE data) { return(Success(_anesInfoService.updateOperSchedule(data))); }
public RequestResult <MED_OPERATION_SCHEDULE> GetOperSchedule(string patientID, int visitID, int operID) { MED_OPERATION_SCHEDULE operSchedule = _anesInfoService.GetOperSchedule(patientID, visitID, operID); return(Success(operSchedule)); }
public RequestResult <int> UpdateOperationScheduleByPatientInfo(MED_OPERATION_SCHEDULE item, string type) { string address = "PacuOperationSchedule/UpdateOperationScheduleByPatientInfo?type=" + type; return(BaseRepository.PostCallApi <MED_OPERATION_SCHEDULE>(address, item)); }
public RequestResult <bool> SavePatientOperation(dynamic dyParams) { RequestResult <bool> Result = new RequestResult <bool>(); try { List <MED_OPERATION_NAME> operNameOldList = null; List <MED_OPERATION_NAME> operNameNewList = null; MED_OPERATION_MASTER operMaster = null; MED_ANESTHESIA_PLAN anesPlan = null; MED_ANESTHESIA_PLAN_PMH anesPlanPmh = null; MED_ANESTHESIA_PLAN_EXAM anesPlanExam = null; MED_PAT_MASTER_INDEX patMasterIndex = null; MED_PAT_VISIT patVisit = null; MED_OPERATION_SCHEDULE operSchedlue = null; MED_OPERATION_MASTER_EXT operMasterExt = null; if (dyParams.operSchedlue != null) { string value = dyParams.operSchedlue.ToString(); operSchedlue = JsonConvert.DeserializeObject <MED_OPERATION_SCHEDULE>(value); } if (dyParams.patVisit != null) { string value = dyParams.patVisit.ToString(); patVisit = JsonConvert.DeserializeObject <MED_PAT_VISIT>(value); } if (dyParams.patMasterIndex != null) { string value = dyParams.patMasterIndex.ToString(); patMasterIndex = JsonConvert.DeserializeObject <MED_PAT_MASTER_INDEX>(value); } if (dyParams.operNameOldList != null) { string value = dyParams.operNameOldList.ToString(); operNameOldList = JsonConvert.DeserializeObject <List <MED_OPERATION_NAME> >(value); } if (dyParams.operNameNewList != null) { string value = dyParams.operNameNewList.ToString(); operNameNewList = JsonConvert.DeserializeObject <List <MED_OPERATION_NAME> >(value); } if (dyParams.operMaster != null) { string value = dyParams.operMaster.ToString(); operMaster = JsonConvert.DeserializeObject <MED_OPERATION_MASTER>(value); } if (dyParams.anesPlan != null) { string value = dyParams.anesPlan.ToString(); anesPlan = JsonConvert.DeserializeObject <MED_ANESTHESIA_PLAN>(value); } if (dyParams.anesPlanPmh != null) { string value = dyParams.anesPlanPmh.ToString(); anesPlanPmh = JsonConvert.DeserializeObject <MED_ANESTHESIA_PLAN_PMH>(value); } if (dyParams.anesPlanExam != null) { string value = dyParams.anesPlanExam.ToString(); anesPlanExam = JsonConvert.DeserializeObject <MED_ANESTHESIA_PLAN_EXAM>(value); } if (dyParams.operMasterExt != null) { string value = dyParams.operMasterExt.ToString(); operMasterExt = JsonConvert.DeserializeObject <MED_OPERATION_MASTER_EXT>(value); } Result = Success(_pacuOperationInfoService.SavePatientOperation(operSchedlue, patVisit, patMasterIndex, operNameOldList, operNameNewList, operMaster, anesPlan, anesPlanPmh, anesPlanExam, operMasterExt)); } catch (Exception ex) { Logger.Error("SavePatientOperation:" + ex.Message); } return(Result); }
public RequestResult <bool> UpdateOperationScheduleByPatientInfo(MED_OPERATION_SCHEDULE item, string type) { return(Success(_pacuOperationScheduleService.UpdateOperationScheduleByPatientInfo(item, type))); }