Пример #1
0
        public static clsFieldInfo getFieldInfo(string sField)
        {
            var f = new clsFieldInfo();

            if (sField.Contains(":"))
            {
                string[] sVals = sField.Split(':');

                f.FieldName  = sVals[0].Trim();
                f.FieldTitle = sVals.Length > 0 ? sVals[1].Trim() : f.FieldName;
            }

            else
            {
                f.FieldName  = sField;
                f.FieldTitle = sField;
            }


            return(f);
        }
Пример #2
0
        /// <summary>
        /// 获取表单的字段信息
        /// </summary>
        /// <param name="p_objFormInfo">表单信息</param>
        public void m_objGetFieldInfoArr(ref clsFormInfo p_objFormInfo)
        {
            DataTable dtResult;

            clsRecordSearchService m_objService =
                (clsRecordSearchService)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(clsRecordSearchService));

            long lngRes = 0;

            try
            {
                lngRes = m_objService.m_lngGetFieldInfo(clsLoginContext.s_ObjLoginContext.m_ObjPrincial, p_objFormInfo.m_strFormName, out dtResult);
            }
            finally
            {
                //m_objService.Dispose();
            }
            if (lngRes <= 0 || dtResult.Rows.Count == 0)
            {
                return;
            }

            clsFieldInfo[] objFieldInfoArr = new clsFieldInfo[dtResult.Rows.Count];
            DataRow        objRow          = null;

            for (int i = 0; i < dtResult.Rows.Count; i++)
            {
                objRow = dtResult.Rows[i];
                clsFieldInfo objFieldInfo = new clsFieldInfo();
                objFieldInfo.m_strFieldName          = objRow["FIELDNAME"].ToString();
                objFieldInfo.m_strConditionFieldType = objRow["CONDITIONFIELDTYPE"].ToString();
                objFieldInfo.m_strConditionFieldName = objRow["CONDITIONFIELDNAME"].ToString();
                objFieldInfoArr[i] = objFieldInfo;
            }

            p_objFormInfo.m_objFieldInfoArr = objFieldInfoArr;
        }
Пример #3
0
        /// <summary>
        /// 获取表单的字段信息(新专科病历用)
        /// </summary>
        /// <param name="p_objFormInfo">表单信息</param>
        public void m_mthIMR_GetFieldInfo(ref clsFormInfo p_objFormInfo)
        {
            if (p_objFormInfo == null || p_objFormInfo.m_strFormName == null)
            {
                return;
            }
            DataTable dtResult;

            clsRecordSearchService m_objService =
                (clsRecordSearchService)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(clsRecordSearchService));

            long lngRes = 0;

            try
            {
                lngRes = m_objService.m_lngIMR_GetFieldInfo(clsLoginContext.s_ObjLoginContext.m_ObjPrincial, p_objFormInfo.m_strFormID, out dtResult);
            }
            finally
            {
                //m_objService.Dispose();
            }
            if (lngRes <= 0 || dtResult.Rows.Count == 0)
            {
                return;
            }

            clsFieldInfo [] objFieldInfoArr = new clsFieldInfo[dtResult.Rows.Count + 5];

            #region 固定内容
            objFieldInfoArr[0] = new clsFieldInfo();
            objFieldInfoArr[0].m_strFieldName          = "住院号";
            objFieldInfoArr[0].m_strConditionFieldType = "text";
            objFieldInfoArr[0].m_strConditionFieldName = "b.InPatientID";

            objFieldInfoArr[1] = new clsFieldInfo();
            objFieldInfoArr[1].m_strFieldName          = "患者姓名";
            objFieldInfoArr[1].m_strConditionFieldType = "text";
            objFieldInfoArr[1].m_strConditionFieldName = "PBI.FirstName";

            objFieldInfoArr[2] = new clsFieldInfo();
            objFieldInfoArr[2].m_strFieldName          = "性别";
            objFieldInfoArr[2].m_strConditionFieldType = "text";
            objFieldInfoArr[2].m_strConditionFieldName = "PBI.Sex";

            objFieldInfoArr[3] = new clsFieldInfo();
            objFieldInfoArr[3].m_strFieldName          = "年龄";
            objFieldInfoArr[3].m_strConditionFieldType = "number";
            objFieldInfoArr[3].m_strConditionFieldName = "datediff(year,PBI.Birth,getdate())";

            objFieldInfoArr[4] = new clsFieldInfo();
            objFieldInfoArr[4].m_strFieldName          = "入院日期";
            objFieldInfoArr[4].m_strConditionFieldType = "date";
            objFieldInfoArr[4].m_strConditionFieldName = "b.InPatientDate";
            #endregion

            for (int i = 0; i < dtResult.Rows.Count; i++)
            {
                objFieldInfoArr[i + 5] = new clsFieldInfo();
                objFieldInfoArr[i + 5].m_strFieldName = dtResult.Rows[i]["ITEMNAME"].ToString();
                switch (dtResult.Rows[i]["ITEMTYPE"].ToString().Trim())
                {
                case "RichTextBox":
                case "ctlBorderTextBox":
                case "ctlComboBox":
                case "ctlRichTextBox":
                default:
                    objFieldInfoArr[i + 5].m_strConditionFieldType = "text";
                    break;

                case "ctlTimePicker":
                    objFieldInfoArr[i + 5].m_strConditionFieldType = "date";
                    break;

                case "RadioButton":
                case "CheckBox":
                    objFieldInfoArr[i + 5].m_strConditionFieldType = "truefalse";
                    break;
                }
                objFieldInfoArr[i + 5].m_strConditionFieldName = @"b.ItemID = '" + dtResult.Rows[i]["ITEMID"].ToString() + "' and b.ItemContent";
            }

            p_objFormInfo.m_objFieldInfoArr = objFieldInfoArr;
        }