public short UpdateMrStatus(MrIndex mrIndex) { string szDoctorID = string.Empty; if (base.MedQCAccess == null) { return(SystemData.ReturnValue.PARAM_ERROR); } DbParameter[] pmi = new DbParameter[5]; pmi[0] = new DbParameter("patientID", mrIndex.PATIENT_ID); pmi[1] = new DbParameter("visitNO", mrIndex.VISIT_NO); pmi[2] = new DbParameter("visitID", mrIndex.VISIT_ID); pmi[3] = new DbParameter("mrStatus", mrIndex.MR_STATUS); pmi[4] = new DbParameter("rcount", 0, ParameterDirection.Output); int nResult = 0; int rcount = 0; try { nResult = base.MedQCAccess.ExecuteNonQuery("UPDATE_MR_INDEX", CommandType.StoredProcedure, ref pmi); rcount = int.Parse(pmi[4].Value.ToString()); } catch (Exception ex) { LogManager.Instance.WriteLog("", ex); return(SystemData.ReturnValue.EXCEPTION); } finally { base.MedQCAccess.CloseConnnection(false); } return(rcount <= 0 ? SystemData.ReturnValue.OTHER_ERROR : SystemData.ReturnValue.OK); }
private void btnArchiveTime_Click(object sender, EventArgs e) { if (this.dataGridView1.SelectedRows.Count <= 0) { return; } PatVisitInfo patVisitInfo = this.dataGridView1.SelectedRows[0].Tag as PatVisitInfo; QcMrIndex qcMrIndex = this.dataGridView1.SelectedRows[0].Cells[this.col_ARCHIVE_TIME.Index].Tag as QcMrIndex; if (patVisitInfo == null) { MessageBoxEx.ShowMessage("取消催送失败"); return; } short shRet = SystemData.ReturnValue.OK; if (qcMrIndex == null) { qcMrIndex = new QcMrIndex(); qcMrIndex.ARCHIVE_DOCTOR = SystemParam.Instance.UserInfo.USER_NAME; qcMrIndex.ARCHIVE_DOCTOR_ID = SystemParam.Instance.UserInfo.USER_ID; qcMrIndex.ARCHIVE_TIME = SysTimeHelper.Instance.Now; qcMrIndex.PATIENT_ID = patVisitInfo.PATIENT_ID; qcMrIndex.VISIT_ID = patVisitInfo.VISIT_ID; qcMrIndex.VISIT_NO = patVisitInfo.VISIT_NO; shRet = QcMrIndexAccess.Instance.Insert(qcMrIndex); } else { qcMrIndex.ARCHIVE_TIME = SysTimeHelper.Instance.Now; shRet = QcMrIndexAccess.Instance.Update(qcMrIndex); } if (shRet != SystemData.ReturnValue.OK) { MessageBoxEx.ShowMessage("取消催送失败"); return; } //更新mrIndex表,将病案设为归档状态 MrIndex mrIndex = new MrIndex(); mrIndex.PATIENT_ID = qcMrIndex.PATIENT_ID; mrIndex.VISIT_ID = qcMrIndex.VISIT_ID; mrIndex.VISIT_NO = qcMrIndex.VISIT_NO; mrIndex.MR_STATUS = SystemData.MrStatus.Archive; shRet = MrIndexAccess.Instance.UpdateMrStatus(mrIndex); if (shRet != SystemData.ReturnValue.OK) { MessageBoxEx.ShowMessage("更新病案状态失败"); return; } this.dataGridView1.SelectedRows[0].Cells[this.col_ARCHIVE_TIME.Index].Value = qcMrIndex.ARCHIVE_TIME.ToString("yyyy-MM-dd HH:mm"); MessageBoxEx.ShowMessage("取消催送成功"); }
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("归档成功"); }
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; } } }
public short GetMrIndex(string szPatientID, string szVisitID, ref MrIndex mrIndex) { IDataReader dataReader = null; string szField = string.Format("{0},{1},{2},{3},{4},{5}" , SystemData.MrIndexView.MR_CLASS , SystemData.MrIndexView.MR_STATUS , SystemData.MrIndexView.PATIENT_ID , SystemData.MrIndexView.SUBMIT_DOCTOR_ID , SystemData.MrIndexView.VISIT_ID , SystemData.MrIndexView.VISIT_NO); string szCondition = string.Format("1=1 AND {0}='{1}' AND {2}='{3}'" , SystemData.MrIndexView.PATIENT_ID, szPatientID , SystemData.MrIndexView.VISIT_ID, szVisitID ); string szTable = SystemData.DataView.MR_INDEX_V; string szSQL = string.Format(SystemData.SQL.SELECT_WHERE, szField, szTable, szCondition); try { dataReader = base.MedQCAccess.ExecuteReader(szSQL, CommandType.Text); if (dataReader == null || dataReader.IsClosed || !dataReader.Read()) { return(SystemData.ReturnValue.RES_NO_FOUND); } if (mrIndex == null) { mrIndex = new MrIndex(); } if (!dataReader.IsDBNull(0)) { mrIndex.MR_CLASS = dataReader.GetString(0); } if (!dataReader.IsDBNull(1)) { mrIndex.MR_STATUS = dataReader.GetString(1); } if (!dataReader.IsDBNull(2)) { mrIndex.PATIENT_ID = dataReader.GetString(2); } if (!dataReader.IsDBNull(3)) { mrIndex.SUBMIT_DOCTOR_ID = dataReader.GetString(3); } if (!dataReader.IsDBNull(4)) { mrIndex.VISIT_ID = dataReader.GetString(4); } if (!dataReader.IsDBNull(5)) { mrIndex.VISIT_NO = dataReader.GetString(5); } return(SystemData.ReturnValue.OK); } catch (Exception ex) { LogManager.Instance.WriteLog("", new string[] { "SQL" } , new object[] { szSQL }, "查询失败!", ex); return(SystemData.ReturnValue.EXCEPTION); } finally { base.MedQCAccess.CloseConnnection(false); } }