Ejemplo n.º 1
0
        private void LoadBaseCodeDict(RecCodeCompasion recCodeCompasion, string codeName)
        {
            if (recCodeCompasion == null)
            {
                MessageBoxEx.ShowMessage("请先选择分类");
                return;
            }
            this.Text = string.Format("病案上传编码对照-{0}", recCodeCompasion.CONFIG_NAME);
            this.dataTableView1.Rows.Clear();


            string codeTypeName = recCodeCompasion.CODETYPE_NAME;

            if (string.IsNullOrEmpty(codeTypeName))
            {
                MessageBoxEx.ShowError("字典类型代码为空");
                return;
            }
            if (this.m_lstBaseCodeDicts == null)
            {
                this.m_lstBaseCodeDicts = new List <BaseCodeDict>();
            }
            this.m_lstBaseCodeDicts.Clear();
            this.col_MC.Items.Clear();
            DataSet ds    = null;
            short   shRet = HerenHisCommonAccess.Instance.ExecuteQuery(recCodeCompasion.FORM_SQL, out ds);

            if (ds != null && ds.Tables[0].Rows.Count > 0)
            {
                if (this.m_lstBaseCodeDicts == null)
                {
                    this.m_lstBaseCodeDicts = new List <BaseCodeDict>();
                }
                this.m_lstBaseCodeDicts.Clear();
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    BaseCodeDict item = new BaseCodeDict();
                    item.CODETYPE_NAME = ds.Tables[0].Rows[i]["CODETYPE_NAME"].ToString();
                    item.CODE_NAME     = ds.Tables[0].Rows[i]["CODE_NAME"].ToString();
                    item.CODE_ID       = ds.Tables[0].Rows[i]["CODE_ID"].ToString();
                    this.m_lstBaseCodeDicts.Add(item);
                }
            }
            if (this.m_lstBaseCodeDicts != null && !string.IsNullOrEmpty(codeName))
            {
                this.m_lstBaseCodeDicts = this.m_lstBaseCodeDicts.Where(m => m.CODE_NAME.Contains(codeName)).ToList();
            }
            if (this.m_lstBaseCodeDicts != null && m_lstBaseCodeDicts.Count > 0)
            {
                Pagination(1);
            }
        }
Ejemplo n.º 2
0
        private void Pagination(int pageIndex)
        {
            if (this.m_lstBaseCodeDicts == null)
            {
                return;
            }
            this.col_MC.Items.Clear();
            this.txt_PageIndex.Text = pageIndex.ToString();

            int pageSize   = int.Parse(lblPageSize.Text);
            int TotalCount = m_lstBaseCodeDicts.Count();
            int pageCount  = (int)Math.Ceiling((decimal)(TotalCount) / pageSize);

            this.lbl_TotalCount.Text = TotalCount.ToString();
            this.lbl_PageCount.Text  = pageCount.ToString();
            refreshUI();
            string codeTypeName = this.m_RecCodeCompasion.CODETYPE_NAME;
            List <RecCodeCompasion> lstRecCodeCompasions = null;
            short shRet = EMRDBLib.DbAccess.RecCodeCompasionAccess.Instance.GetRecCodeCompasions(codeTypeName, ref lstRecCodeCompasions);
            List <BaseCodeDict> lstBaseCodeDictPage = null;

            if (pageIndex != 0)
            {
                lstBaseCodeDictPage = m_lstBaseCodeDicts.Skip((pageIndex - 1) * pageSize).Take(pageSize).ToList();
            }
            else
            {
                lstBaseCodeDictPage = m_lstBaseCodeDicts;
            }
            this.dataTableView1.Rows.Clear();
            WorkProcess.Instance.Initialize(this, lstBaseCodeDictPage.Count, "正在加载......");
            for (int i = 0; i < lstBaseCodeDictPage.Count; i++)
            {
                if (WorkProcess.Instance.Canceled)
                {
                    break;
                }
                BaseCodeDict gygydm = lstBaseCodeDictPage[i];
                WorkProcess.Instance.Show(i);
                int             index    = this.dataTableView1.Rows.Add();
                DataGridViewRow row      = this.dataTableView1.Rows[index];
                string          codeID   = gygydm.CODE_ID;
                string          codeName = gygydm.CODE_NAME;
                row.Cells[this.col_CODE_ID.Index].Value   = codeID;
                row.Cells[this.col_CODE_NAME.Index].Value = codeName;
                if (lstRecCodeCompasions != null)
                {
                    var recCodeCompasion = lstRecCodeCompasions.Where(m => m.CODE_ID == codeID && m.CODETYPE_NAME == codeTypeName).FirstOrDefault();
                    if (recCodeCompasion == null)
                    {
                        continue;
                    }
                    this.dataTableView1.SetRowState(index, RowState.Normal);
                    row.Tag = recCodeCompasion;
                    if (!string.IsNullOrEmpty(recCodeCompasion.MC))
                    {
                        row.Cells[this.col_STATUS.Index].Value = "→";
                    }
                    row.Cells[this.col_DM.Index].Value = recCodeCompasion.DM;
                    row.Cells[this.col_MC.Index].Value = recCodeCompasion.MC;
                }
            }
            WorkProcess.Instance.Close();
            if (this.col_MC.Items.Count == 0)
            {
                LoadMC(this.m_RecCodeCompasion);
            }
        }
Ejemplo n.º 3
0
        public short GetBaseCodeDicts(string codeName, string szCodeTypeName, ref List <BaseCodeDict> lstBaseCodeDicts)
        {
            if (base.HerenHisAccess == null)
            {
                return(SystemData.ReturnValue.PARAM_ERROR);
            }
            StringBuilder sbField = new StringBuilder();

            sbField.AppendFormat("*");
            string szCondition = string.Format("1=1");

            szCondition = string.Format("{0} AND {1} = '{2}' "
                                        , szCondition
                                        , SystemData.BaseCodeDictTable.CODETYPE_NAME
                                        , szCodeTypeName);
            if (!string.IsNullOrEmpty(codeName))
            {
                szCondition = string.Format("{0} AND {1} like '%{2}%' "
                                            , szCondition
                                            , SystemData.BaseCodeDictTable.CODE_NAME
                                            , codeName);
            }
            string szOrderBy = string.Format("{0}", SystemData.BaseCodeDictTable.CODE_ID);
            string szSQL     = string.Format(SystemData.SQL.SELECT_WHERE_ORDER_ASC
                                             , sbField.ToString(), SystemData.DataTable_HerenHis.BASE_CODE_DICT, szCondition, szOrderBy);

            IDataReader dataReader = null;

            try
            {
                dataReader = base.HerenHisAccess.ExecuteReader(szSQL, CommandType.Text);
                if (dataReader == null || dataReader.IsClosed || !dataReader.Read())
                {
                    return(SystemData.ReturnValue.RES_NO_FOUND);
                }
                if (lstBaseCodeDicts == null)
                {
                    lstBaseCodeDicts = new List <BaseCodeDict>();
                }
                do
                {
                    BaseCodeDict item = new BaseCodeDict();
                    for (int i = 0; i < dataReader.FieldCount; i++)
                    {
                        if (dataReader.IsDBNull(i))
                        {
                            continue;
                        }
                        switch (dataReader.GetName(i))
                        {
                        case SystemData.BaseCodeDictTable.CODETYPE_ID:
                            item.CODETYPE_ID = dataReader.GetValue(i).ToString();
                            break;

                        case SystemData.BaseCodeDictTable.CODE_ID:
                            item.CODE_ID = dataReader.GetValue(i).ToString();
                            break;

                        case SystemData.BaseCodeDictTable.CODE_NAME:
                            item.CODE_NAME = dataReader.GetValue(i).ToString();
                            break;

                        case SystemData.BaseCodeDictTable.INPUT_CODE:
                            item.INPUT_CODE = dataReader.GetValue(i).ToString();
                            break;

                        default: break;
                        }
                    }
                    lstBaseCodeDicts.Add(item);
                } 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.HerenHisAccess.CloseConnnection(false); }
        }