private void dataTableView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e) { if (e.RowIndex < 0) { return; } DataGridViewRow row = this.dataTableView1.Rows[e.RowIndex]; MrArchive mrAchive = this.dataTableView1.Rows[e.RowIndex].Tag as MrArchive; }
private void dataTableView1_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e) { if (e.RowIndex < 0) { return; } MrArchive mrArchive = this.dataTableView1.Rows[e.RowIndex].Tag as MrArchive; if (mrArchive == null) { return; } this.MainForm.SwitchPatient(mrArchive.PATIENT_ID, mrArchive.VISIT_ID); }
private void dataTableView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e) { if (e.RowIndex < 0) { return; } DataGridViewRow row = this.dataTableView1.Rows[e.RowIndex]; MrArchive mrAchive = this.dataTableView1.Rows[e.RowIndex].Tag as MrArchive; if (e.ColumnIndex == this.colReject.Index) { if (MessageBoxEx.ShowConfirm("确认驳回吗?") != DialogResult.OK) { return; } //修改病案状态 MrIndex mrIndex = new MrIndex(); mrIndex.MR_STATUS = SystemData.MrStatus.Online; mrIndex.PATIENT_ID = mrAchive.PATIENT_ID; mrIndex.VISIT_ID = mrAchive.VISIT_ID; mrIndex.VISIT_NO = mrAchive.VISIT_NO; short shRet = MrIndexAccess.Instance.UpdateMrStatus(mrIndex); if (shRet != SystemData.ReturnValue.OK) { MessageBoxEx.ShowMessage("驳回失败"); return; } QcMrIndex qcMrIndex = new QcMrIndex(mrAchive); qcMrIndex.RETURN_COUNT = mrAchive.RETURN_COUNT + 1; shRet = QcMrIndexAccess.Instance.Update(qcMrIndex); MessageBoxEx.ShowMessage("驳回成功"); mrAchive.RETURN_COUNT = qcMrIndex.RETURN_COUNT; mrAchive.MR_STATUS = mrIndex.MR_STATUS; if (mrAchive.RETURN_COUNT != 0) { string szFlag = string.Empty; for (int i = 0; i < mrAchive.RETURN_COUNT; i++) { szFlag += "🏁 "; } row.Cells[this.col_RETURN_COUNT.Index].Value = szFlag; row.Cells[this.col_RETURN_COUNT.Index].Style.ForeColor = Color.Red; } this.dataTableView1.Rows[e.RowIndex].Cells[this.col_ARCHIVE_TIME.Index].Value = null; this.dataTableView1.Rows[e.RowIndex].Cells[this.col_MR_STATUS.Index].Value = SystemData.MrStatus.GetMedMrStatusDesc(mrAchive.MR_STATUS); } else if (e.ColumnIndex == this.colArchive.Index) { if (MessageBoxEx.ShowConfirm("确认归档吗?") != DialogResult.OK) { return; } //修改病案状态 MrIndex mrIndex = new MrIndex(); mrIndex.MR_STATUS = SystemData.MrStatus.Archive; mrIndex.PATIENT_ID = mrAchive.PATIENT_ID; mrIndex.VISIT_ID = mrAchive.VISIT_ID; mrIndex.VISIT_NO = mrAchive.VISIT_NO; short shRet = MrIndexAccess.Instance.UpdateMrStatus(mrIndex); if (shRet != SystemData.ReturnValue.OK) { MessageBoxEx.ShowMessage("归档失败"); return; } QcMrIndex qcMrIndex = null; shRet = QcMrIndexAccess.Instance.GetQcMrIndex(mrAchive.PATIENT_ID, mrAchive.VISIT_ID, ref qcMrIndex); if (qcMrIndex == null) { qcMrIndex = new QcMrIndex(mrAchive); } qcMrIndex.ARCHIVE_DOCTOR = SystemParam.Instance.UserInfo.USER_NAME; qcMrIndex.ARCHIVE_DOCTOR_ID = SystemParam.Instance.UserInfo.USER_ID; qcMrIndex.ARCHIVE_TIME = SysTimeHelper.Instance.Now; if (shRet == SystemData.ReturnValue.RES_NO_FOUND) { shRet = QcMrIndexAccess.Instance.Insert(qcMrIndex); } else if (shRet == SystemData.ReturnValue.OK) { shRet = QcMrIndexAccess.Instance.Update(qcMrIndex); } MessageBoxEx.ShowMessage("归档成功"); mrAchive.MR_STATUS = mrIndex.MR_STATUS; mrAchive.ARCHIVE_DOCTOR = qcMrIndex.ARCHIVE_DOCTOR; mrAchive.ARCHIVE_DOCTOR_ID = qcMrIndex.ARCHIVE_DOCTOR_ID; mrAchive.ARCHIVE_TIME = qcMrIndex.ARCHIVE_TIME; this.dataTableView1.Rows[e.RowIndex].Cells[this.col_ARCHIVE_TIME.Index].Value = mrAchive.ARCHIVE_TIME.ToString("yyyy-MM-dd HH:mm"); this.dataTableView1.Rows[e.RowIndex].Cells[this.col_MR_STATUS.Index].Value = SystemData.MrStatus.GetMedMrStatusDesc(mrAchive.MR_STATUS); } else if (e.ColumnIndex == this.col_CheckBox.Index) { if (row.Cells[this.col_CheckBox.Index].Value != null && row.Cells[this.col_CheckBox.Index].Value.ToString() == "True") { row.Cells[this.col_CheckBox.Index].Value = false; } else { row.Cells[this.col_CheckBox.Index].Value = true; } } }
private void btnArchive_Click(object sender, EventArgs e) { if (MessageBoxEx.ShowConfirm("确认归档选中的病案吗?") != DialogResult.OK) { return; } StringBuilder errorMessage = new StringBuilder(); foreach (DataGridViewRow row in this.dataTableView1.Rows) { if (row.Cells[this.col_CheckBox.Index].Value == null || row.Cells[this.col_CheckBox.Index].Value.ToString().ToLower() == "false") { continue; } MrArchive mrArchive = row.Tag as MrArchive; if (mrArchive == null) { continue; } //修改病案状态 MrIndex mrIndex = new MrIndex(); mrIndex.MR_STATUS = SystemData.MrStatus.Archive; mrIndex.PATIENT_ID = mrArchive.PATIENT_ID; mrIndex.VISIT_ID = mrArchive.VISIT_ID; mrIndex.VISIT_NO = mrArchive.VISIT_NO; short shRet = MrIndexAccess.Instance.UpdateMrStatus(mrIndex); if (shRet != SystemData.ReturnValue.OK) { errorMessage.AppendFormat("{0}\r\n", mrArchive.PATIENT_NAME); continue; } QcMrIndex qcMrIndex = null; shRet = QcMrIndexAccess.Instance.GetQcMrIndex(mrArchive.PATIENT_ID, mrArchive.VISIT_ID, ref qcMrIndex); if (qcMrIndex == null) { qcMrIndex = new QcMrIndex(mrArchive); } qcMrIndex.ARCHIVE_DOCTOR = SystemParam.Instance.UserInfo.USER_NAME; qcMrIndex.ARCHIVE_DOCTOR_ID = SystemParam.Instance.UserInfo.USER_ID; qcMrIndex.ARCHIVE_TIME = SysTimeHelper.Instance.Now; if (shRet == SystemData.ReturnValue.RES_NO_FOUND) { shRet = QcMrIndexAccess.Instance.Insert(qcMrIndex); } else if (shRet == SystemData.ReturnValue.OK) { shRet = QcMrIndexAccess.Instance.Update(qcMrIndex); } mrArchive.MR_STATUS = mrIndex.MR_STATUS; mrArchive.ARCHIVE_DOCTOR = qcMrIndex.ARCHIVE_DOCTOR; mrArchive.ARCHIVE_DOCTOR_ID = qcMrIndex.ARCHIVE_DOCTOR_ID; mrArchive.ARCHIVE_TIME = qcMrIndex.ARCHIVE_TIME; row.Cells[this.col_MR_STATUS.Index].Value = SystemData.MrStatus.GetMedMrStatusDesc(mrArchive.MR_STATUS); row.Cells[this.col_ARCHIVE_TIME.Index].Value = mrArchive.ARCHIVE_TIME.ToString("yyyy-MM-dd HH:mm"); } if (errorMessage.ToString() != string.Empty) { MessageBoxEx.ShowError("以下病案归档失败:\n" + errorMessage.ToString()); return; } MessageBoxEx.ShowMessage("归档成功"); }
public short GetMrArchives(DateTime dtVisitTimeBegin, DateTime dtVisitTimeEnd, DateTime dtDischargeTimeBegin, DateTime dtDischargeTimeEnd, string szMrStatus, string szDeptCode, ref List <MrArchive> lstMrArchives) { if (base.MedQCAccess == null) { return(SystemData.ReturnValue.PARAM_ERROR); } StringBuilder sbField = new StringBuilder(); sbField.AppendFormat("{0},", SystemData.MrArchiveView.ARCHIVE_DOCTOR); sbField.AppendFormat("{0},", SystemData.MrArchiveView.ARCHIVE_DOCTOR_ID); sbField.AppendFormat("{0},", SystemData.MrArchiveView.ARCHIVE_TIME); sbField.AppendFormat("{0},", SystemData.MrArchiveView.DEPT_DISCHARGE_FROM); sbField.AppendFormat("{0},", SystemData.MrArchiveView.DEPT_DISCHARGE_NAME); sbField.AppendFormat("{0},", SystemData.MrArchiveView.DEPT_ADMISSION_NAME); sbField.AppendFormat("{0},", SystemData.MrArchiveView.DISCHARGE_DATE_TIME); sbField.AppendFormat("{0},", SystemData.MrArchiveView.ADMISSION_DATE_TIME); sbField.AppendFormat("{0},", SystemData.MrArchiveView.DEPT_ADMISSION_TO); sbField.AppendFormat("{0},", SystemData.MrArchiveView.MR_CLASS); sbField.AppendFormat("{0},", SystemData.MrArchiveView.HOS_QCMAN); sbField.AppendFormat("{0},", SystemData.MrArchiveView.MR_STATUS); sbField.AppendFormat("{0},", SystemData.MrArchiveView.PATIENT_SEX); sbField.AppendFormat("{0},", SystemData.MrArchiveView.PAPER_RECEIVE); sbField.AppendFormat("{0},", SystemData.MrArchiveView.PATIENT_ID); sbField.AppendFormat("{0},", SystemData.MrArchiveView.PATIENT_NAME); sbField.AppendFormat("{0},", SystemData.MrArchiveView.RETURN_COUNT); sbField.AppendFormat("{0},", SystemData.MrArchiveView.SUBMIT_DOCTOR); sbField.AppendFormat("{0},", SystemData.MrArchiveView.SUBMIT_DOCTOR_ID); sbField.AppendFormat("{0},", SystemData.MrArchiveView.SUBMIT_TIME); sbField.AppendFormat("{0},", SystemData.MrArchiveView.VISIT_ID); sbField.AppendFormat("{0}", SystemData.MrArchiveView.VISIT_NO); string szCondition = string.Format("1=1"); if (dtVisitTimeBegin != SystemParam.Instance.DefaultTime && dtVisitTimeEnd != SystemParam.Instance.DefaultTime) { szCondition = string.Format("{0} AND {1} > {2} AND {1} < {3}" , szCondition , SystemData.MrArchiveView.ADMISSION_DATE_TIME , base.MedQCAccess.GetSqlTimeFormat(dtVisitTimeBegin) , base.MedQCAccess.GetSqlTimeFormat(dtVisitTimeEnd)); } if (dtDischargeTimeBegin != SystemParam.Instance.DefaultTime && dtDischargeTimeEnd != SystemParam.Instance.DefaultTime) { szCondition = string.Format("{0} AND {1} > {2} AND {1} < {3}" , szCondition , SystemData.MrArchiveView.DISCHARGE_DATE_TIME , base.MedQCAccess.GetSqlTimeFormat(dtDischargeTimeBegin) , base.MedQCAccess.GetSqlTimeFormat(dtDischargeTimeEnd)); } if (!string.IsNullOrEmpty(szDeptCode)) { szCondition = string.Format("{0} AND {1} = '{2}'" , szCondition , SystemData.MrArchiveView.DEPT_ADMISSION_TO , szDeptCode); } if (!string.IsNullOrEmpty(szMrStatus)) { szCondition = string.Format("{0} AND {1} ='{2}'" , szCondition , SystemData.MrArchiveView.MR_STATUS , szMrStatus); } string szOrderBy = string.Format("{0},{1}" , SystemData.MrArchiveView.DEPT_ADMISSION_NAME , SystemData.MrArchiveView.PATIENT_NAME); string szSQL = string.Format(SystemData.SQL.SELECT_WHERE_ORDER_ASC , sbField.ToString(), SystemData.DataView.MR_ARCHIVE_V, szCondition, szOrderBy); IDataReader dataReader = null; try { dataReader = base.MedQCAccess.ExecuteReader(szSQL, CommandType.Text); if (dataReader == null || dataReader.IsClosed || !dataReader.Read()) { return(SystemData.ReturnValue.RES_NO_FOUND); } if (lstMrArchives == null) { lstMrArchives = new List <MrArchive>(); } do { MrArchive mrArchive = new MrArchive(); for (int i = 0; i < dataReader.FieldCount; i++) { if (dataReader.IsDBNull(i)) { continue; } switch (dataReader.GetName(i)) { case SystemData.MrArchiveView.ARCHIVE_DOCTOR: mrArchive.ARCHIVE_DOCTOR = dataReader.GetString(i); break; case SystemData.MrArchiveView.ARCHIVE_TIME: mrArchive.ARCHIVE_TIME = dataReader.GetDateTime(i); break; case SystemData.MrArchiveView.ARCHIVE_DOCTOR_ID: mrArchive.ARCHIVE_DOCTOR_ID = dataReader.GetString(i); break; case SystemData.MrArchiveView.ADMISSION_DATE_TIME: mrArchive.ADMISSION_DATE_TIME = dataReader.GetDateTime(i); break; case SystemData.MrArchiveView.DISCHARGE_DATE_TIME: mrArchive.DISCHARGE_DATE_TIME = dataReader.GetDateTime(i); break; case SystemData.MrArchiveView.DEPT_DISCHARGE_FROM: mrArchive.DEPT_DISCHARGE_FROM = dataReader.GetString(i); break; case SystemData.MrArchiveView.DEPT_DISCHARGE_NAME: mrArchive.DEPT_DISCHARGE_NAME = dataReader.GetString(i); break; case SystemData.MrArchiveView.DEPT_ADMISSION_NAME: mrArchive.DEPT_ADMISSION_NAME = dataReader.GetString(i); break; case SystemData.MrArchiveView.DEPT_ADMISSION_TO: mrArchive.DEPT_ADMISSION_TO = dataReader.GetString(i); break; case SystemData.MrArchiveView.MR_CLASS: mrArchive.MR_CLASS = dataReader.GetString(i); break; case SystemData.MrArchiveView.MR_STATUS: mrArchive.MR_STATUS = dataReader.GetString(i); break; case SystemData.MrArchiveView.HOS_QCMAN: mrArchive.HOS_QCMAN = dataReader.GetString(i); break; case SystemData.MrArchiveView.RETURN_COUNT: mrArchive.RETURN_COUNT = int.Parse(dataReader.GetValue(i).ToString()); break; case SystemData.MrArchiveView.SUBMIT_DOCTOR: mrArchive.SUBMIT_DOCTOR = dataReader.GetString(i); break; case SystemData.MrArchiveView.SUBMIT_DOCTOR_ID: mrArchive.SUBMIT_DOCTOR_ID = dataReader.GetString(i); break; case SystemData.MrArchiveView.SUBMIT_TIME: mrArchive.SUBMIT_TIME = dataReader.GetDateTime(i); break; case SystemData.MrArchiveView.VISIT_ID: mrArchive.VISIT_ID = dataReader.GetString(i); break; case SystemData.MrArchiveView.PATIENT_ID: mrArchive.PATIENT_ID = dataReader.GetString(i); break; case SystemData.MrArchiveView.PATIENT_NAME: mrArchive.PATIENT_NAME = dataReader.GetString(i); break; case SystemData.MrArchiveView.PATIENT_SEX: mrArchive.PATIENT_SEX = dataReader.GetString(i); break; case SystemData.MrArchiveView.VISIT_NO: mrArchive.VISIT_NO = dataReader.GetString(i); break; default: break; } } lstMrArchives.Add(mrArchive); } while (dataReader.Read()); return(SystemData.ReturnValue.OK); } catch (Exception ex) { LogManager.Instance.WriteLog("", new string[] { "szSQL" }, new object[] { szSQL }, ex); return(SystemData.ReturnValue.EXCEPTION); } finally { base.MedQCAccess.CloseConnnection(false); } }