コード例 #1
0
        /// <summary>
        /// 病历质控系统,保存一条病案质控问题类别
        /// </summary>
        /// <param name="qcEventType">病案质控问题类别</param>
        /// <returns>SystemData.ReturnValue</returns>
        public short Insert(QaEventTypeDict qcEventType)
        {
            if (qcEventType == null)
            {
                LogManager.Instance.WriteLog("QcCheckPointAccess.Insert", new string[] { "timeQCRule" }
                                             , new object[] { qcEventType }, "参数不能为空");
                return(SystemData.ReturnValue.PARAM_ERROR);
            }

            string szField = string.Format("{0},{1},{2},{3},{4},{5}"
                                           , SystemData.QaEventTypeDictTable.APPLY_ENV
                                           , SystemData.QaEventTypeDictTable.INPUT_CODE
                                           , SystemData.QaEventTypeDictTable.MAX_SCORE
                                           , SystemData.QaEventTypeDictTable.PARENT_CODE
                                           , SystemData.QaEventTypeDictTable.QA_EVENT_TYPE
                                           , SystemData.QaEventTypeDictTable.SERIAL_NO);

            string szValue = string.Format("'{0}','{1}',{2},'{3}','{4}',{5}"
                                           , "MEDDOC"
                                           , qcEventType.INPUT_CODE
                                           , qcEventType.MAX_SCORE
                                           , qcEventType.PARENT_CODE
                                           , qcEventType.QA_EVENT_TYPE
                                           , qcEventType.SERIAL_NO);

            string szSQL  = string.Format(SystemData.SQL.INSERT, SystemData.DataTable.QA_EVENT_TYPE_DICT, szField, szValue);
            int    nCount = 0;

            try
            {
                nCount = base.MedQCAccess.ExecuteNonQuery(szSQL, CommandType.Text);
            }
            catch (Exception ex)
            {
                LogManager.Instance.WriteLog("", new string[] { "szSQL" }, new object[] { szSQL }, ex);
                return(SystemData.ReturnValue.EXCEPTION);
            }
            if (nCount <= 0)
            {
                LogManager.Instance.WriteLog("", new string[] { "szSQL" }, new object[] { szSQL }, "SQL语句执行后返回0!");
                return(SystemData.ReturnValue.EXCEPTION);
            }
            return(SystemData.ReturnValue.OK);
        }
コード例 #2
0
        private void tsBtnAutoSerialNo_Click(object sender, EventArgs e)
        {
            //序号根据问题分类生成
            //字典排序规则,先按分类序号,在按代码
            List <QaEventTypeDict> lstQaEventTypeDict = null;
            short            shRet        = QaEventTypeDictAccess.Instance.GetQCEventTypeList(ref lstQaEventTypeDict);
            List <QcMsgDict> lstQcMsgDict = null;

            shRet = QcMsgDictAccess.Instance.GetAllQcMsgDictList(ref lstQcMsgDict);
            WorkProcess.Instance.Initialize(this, lstQcMsgDict.Count, "正在按分类排序生成问题字典序号");
            foreach (QcMsgDict item in lstQcMsgDict)
            {
                if (WorkProcess.Instance.Canceled)
                {
                    WorkProcess.Instance.Close();
                    break;
                }
                WorkProcess.Instance.Show(string.Format("已完成{0}条...", lstQcMsgDict.IndexOf(item)), lstQcMsgDict.IndexOf(item), true);
                QaEventTypeDict qaEventTypeDict = null;
                if (string.IsNullOrEmpty(item.MESSAGE_TITLE))
                {
                    qaEventTypeDict = lstQaEventTypeDict.Where(m => m.QA_EVENT_TYPE == item.QA_EVENT_TYPE && string.IsNullOrEmpty(m.PARENT_CODE)).FirstOrDefault();
                }
                else
                {
                    qaEventTypeDict = lstQaEventTypeDict.Where(m => m.QA_EVENT_TYPE == item.MESSAGE_TITLE && !string.IsNullOrEmpty(m.PARENT_CODE)).FirstOrDefault();
                }
                if (qaEventTypeDict == null)
                {
                    continue;
                }
                item.SERIAL_NO = qaEventTypeDict.SERIAL_NO;
                shRet          = QcMsgDictAccess.Instance.Update(item, item.QC_MSG_CODE);
                if (shRet != SystemData.ReturnValue.OK)
                {
                    MessageBoxEx.ShowError("生成失败");
                    WorkProcess.Instance.Close();
                    return;
                }
            }
            WorkProcess.Instance.Close();
            this.OnRefreshView();
        }
コード例 #3
0
        /// <summary>
        /// 增加一行记录
        /// </summary>
        private void AddNewItem()
        {
            if (SystemParam.Instance.UserRight == null)
            {
                return;
            }


            EMRDBLib.QaEventTypeDict qcEventInfo = null;
            DataTableViewRow         currRow     = this.dataGridView1.CurrentRow;

            if (currRow != null && currRow.Index >= 0)
            {
                qcEventInfo = currRow.Tag as EMRDBLib.QaEventTypeDict;
            }
            if (qcEventInfo == null)
            {
                qcEventInfo = new QaEventTypeDict();
            }
            else
            {
                qcEventInfo = qcEventInfo.Clone() as QaEventTypeDict;
            }
            int nRowIndex = 0;

            if (currRow != null)
            {
                nRowIndex = currRow.Index + 1;
                DataTableViewRow dataTableViewRow = new DataTableViewRow();
                this.dataGridView1.Rows.Insert(nRowIndex, dataTableViewRow);
            }
            else
            {
                nRowIndex = this.dataGridView1.Rows.Add();
            }
            DataTableViewRow row = this.dataGridView1.Rows[nRowIndex];

            this.SetRowData(row, qcEventInfo);
            this.dataGridView1.Focus();
            this.dataGridView1.SelectRow(row);
            this.dataGridView1.SetRowState(row, RowState.New);
        }
コード例 #4
0
        /// <summary>
        /// 病历质控系统,修改一条病案质控问题类别
        /// </summary>
        /// <param name="qcEventType">病案质控问题类别</param>
        /// <param name="szOldInputCode">旧的病案质控问题类别名称</param>
        /// <returns>SystemData.ReturnValue</returns>
        public short Update(QaEventTypeDict qcEventType, string szOldInputCode)
        {
            if (qcEventType == null)
            {
                LogManager.Instance.WriteLog("QcMsgDictAccess.Update", new string[] { "qcMsgDict" }
                                             , new object[] { qcEventType }, "参数不能为空");
                return(SystemData.ReturnValue.PARAM_ERROR);
            }

            if (base.MedQCAccess == null)
            {
                return(SystemData.ReturnValue.PARAM_ERROR);
            }
            qcEventType.APPLY_ENV = "MEDDOC";
            string szField = string.Format("{0}='{1}',{2}='{3}',{4}={5},{6}='{7}',{8}='{9}',{10}={11}"
                                           , SystemData.QaEventTypeDictTable.APPLY_ENV, qcEventType.APPLY_ENV
                                           , SystemData.QaEventTypeDictTable.INPUT_CODE, qcEventType.INPUT_CODE
                                           , SystemData.QaEventTypeDictTable.MAX_SCORE, qcEventType.MAX_SCORE
                                           , SystemData.QaEventTypeDictTable.PARENT_CODE, qcEventType.PARENT_CODE
                                           , SystemData.QaEventTypeDictTable.QA_EVENT_TYPE, qcEventType.QA_EVENT_TYPE
                                           , SystemData.QaEventTypeDictTable.SERIAL_NO, qcEventType.SERIAL_NO);

            string szCondition = string.Format("{0}='{1}'", SystemData.QaEventTypeDictTable.INPUT_CODE, szOldInputCode);
            string szSQL       = string.Format(SystemData.SQL.UPDATE, SystemData.DataTable.QA_EVENT_TYPE_DICT, szField, szCondition);
            int    nCount      = 0;

            try
            {
                nCount = base.MedQCAccess.ExecuteNonQuery(szSQL, CommandType.Text);
            }
            catch (Exception ex)
            {
                LogManager.Instance.WriteLog("", new string[] { "szSQL" }, new object[] { szSQL }, ex);
                return(SystemData.ReturnValue.EXCEPTION);
            }
            if (nCount <= 0)
            {
                LogManager.Instance.WriteLog("", new string[] { "szSQL" }, new object[] { szSQL }, "SQL语句执行后返回0!");
                return(SystemData.ReturnValue.EXCEPTION);
            }
            return(SystemData.ReturnValue.OK);
        }
コード例 #5
0
        /// <summary>
        /// 病历质控系统,获取病案质量问题分类信息字典列表
        /// </summary>
        /// <param name="lstQCEventTypes">病案质量问题分类信息字典列表</param>
        /// <returns>SystemData.ReturnValue</returns>
        public short GetQCEventType(string szQAEventType, ref QaEventTypeDict qcEventType)
        {
            if (base.MedQCAccess == null)
            {
                return(SystemData.ReturnValue.PARAM_ERROR);
            }

            string szField = string.Format("{0},{1},{2},{3},{4}", SystemData.QaEventTypeDictTable.SERIAL_NO
                                           , SystemData.QaEventTypeDictTable.QA_EVENT_TYPE, SystemData.QaEventTypeDictTable.INPUT_CODE
                                           , SystemData.QaEventTypeDictTable.PARENT_CODE, SystemData.QaEventTypeDictTable.MAX_SCORE);
            string szCondtion = string.Format("{0} = '{1}'", SystemData.QaEventTypeDictTable.QA_EVENT_TYPE, szQAEventType);
            string szSQL      = string.Format(SystemData.SQL.SELECT_WHERE_ORDER_ASC, szField
                                              , SystemData.DataTable.QA_EVENT_TYPE_DICT, szCondtion, SystemData.QaEventTypeDictTable.SERIAL_NO);
            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 (qcEventType == null)
                {
                    qcEventType = new QaEventTypeDict();
                }
                if (!dataReader.IsDBNull(0))
                {
                    qcEventType.SERIAL_NO = int.Parse(dataReader.GetValue(0).ToString());
                }
                if (!dataReader.IsDBNull(1))
                {
                    qcEventType.QA_EVENT_TYPE = dataReader.GetString(1);
                }
                if (!dataReader.IsDBNull(2))
                {
                    qcEventType.INPUT_CODE = dataReader.GetString(2);
                }
                if (!dataReader.IsDBNull(3))
                {
                    qcEventType.PARENT_CODE = dataReader.GetString(3);
                }
                if (!dataReader.IsDBNull(4))
                {
                    qcEventType.MAX_SCORE = Convert.ToDouble(dataReader.GetValue(4));
                }
                return(SystemData.ReturnValue.OK);
            }
            catch (Exception ex)
            {
                LogManager.Instance.WriteLog("MedQCAccess.GetQCEventType", new string[] { "szSQL" }, new object[] { szSQL }, ex);
                return(SystemData.ReturnValue.EXCEPTION);
            }
            finally
            {
                if (dataReader != null)
                {
                    dataReader.Close();
                    dataReader.Dispose();
                    dataReader = null;
                }
                base.MedQCAccess.CloseConnnection(false);
            }
        }