Esempio n. 1
0
        /// <summary>
        /// 获取当前的特殊病程记录信息
        /// </summary>
        /// <returns></returns>
        public override clsDiseaseTrackInfo m_objGetDiseaseTrackInfo()
        {
            clsCaseDiscussInfo objTrackInfo = new clsCaseDiscussInfo();

            objTrackInfo.m_ObjRecordContent = m_objGetContentFromGUI();
            //设置m_strTitle和m_dtmRecordTime
            objTrackInfo.m_DtmRecordTime = m_dtpCreateDate.Value;
            objTrackInfo.m_StrTitle      = "大会诊记录";

            return(objTrackInfo);
        }
Esempio n. 2
0
        // 获取添加到DataTable的数据
        protected override object[][] m_objGetRecordsValueArr(clsTransDataInfo p_objTransDataInfo)
        {
            //根据不同的表单类型,获取对应的clsDiseaseTrackInfo
            clsDiseaseTrackInfo objTrackInfo = null;

            #region
            switch ((enmDiseaseTrackType)p_objTransDataInfo.m_intFlag)
            {
            case enmDiseaseTrackType.FirstIllnessNote:
                if (com.digitalwave.Emr.StaticObject.clsEMR_StaticObject.s_StrCurrentHospitalNO == "450101001")    //佛二
                {
                    objTrackInfo = new clsFirstIllnessNoteInfo();
                }
                else
                {
                    objTrackInfo = new clsFirstIllnessNoteInfo_F2();
                    p_objTransDataInfo.m_intFlag = (int)enmDiseaseTrackType.FirstIllnessNote_F2;
                }
                break;

            case enmDiseaseTrackType.GeneralDisease:
                objTrackInfo = new clsGeneralDiseaseInfo();
                break;

            case enmDiseaseTrackType.HandOver:
                objTrackInfo = new clsHandOverInfo(m_objCurrentPatient);
                break;

            case enmDiseaseTrackType.HandOver_XJ:
                objTrackInfo = new clsHandOverInfo_XJ(m_objCurrentPatient);
                break;

            case enmDiseaseTrackType.TakeOver:
                objTrackInfo = new clsTakeOverInfo(m_objCurrentPatient);
                break;

            case enmDiseaseTrackType.TakeOver_XJ:
                objTrackInfo = new clsTakeOverInfo_XJ(m_objCurrentPatient);
                break;

            case enmDiseaseTrackType.Consultation:
                objTrackInfo = new clsConsultationInfo();
                break;

            case enmDiseaseTrackType.Convey:
                objTrackInfo = new clsConveyInfo(m_objCurrentPatient);
                break;

            case enmDiseaseTrackType.Convey_XJ:
                objTrackInfo = new clsConveyInfo_XJ(m_objCurrentPatient);
                break;

            case enmDiseaseTrackType.TurnIn:
                objTrackInfo = new clsTurnInInfo(m_objCurrentPatient);
                break;

            case enmDiseaseTrackType.TurnIn_XJ:
                objTrackInfo = new clsTurnInInfo_XJ(m_objCurrentPatient);
                break;

            case enmDiseaseTrackType.DiseaseSummary:
                objTrackInfo = new clsDiseaseSummaryInfo();
                break;

            case enmDiseaseTrackType.DiseaseSummary_XJ:
                objTrackInfo = new clsDiseaseSummaryInfo_XJ(m_objCurrentPatient);
                break;

            case enmDiseaseTrackType.CheckRoom:
                objTrackInfo = new clsCheckRoomInfo();
                break;

            case enmDiseaseTrackType.CaseDiscuss:
                objTrackInfo = new clsCaseDiscussInfo();
                break;

            case enmDiseaseTrackType.BeforeOperationDiscuss:
                objTrackInfo = new clsBeforeOperationDiscussInfo();
                break;

            case enmDiseaseTrackType.DeadCaseDiscuss:
                objTrackInfo = new clsDeadCaseDiscussInfo();
                break;

            case enmDiseaseTrackType.DeathCaseDiscuss:
                objTrackInfo = new clsDeathCaseDiscussInfo();
                break;

            case enmDiseaseTrackType.AfterOperation:
                objTrackInfo = new clsAfterOperationInfo();
                break;

            case enmDiseaseTrackType.Dead:
                objTrackInfo = new clsDeadRecordInfo(m_objCurrentPatient);
                break;

            case enmDiseaseTrackType.Death:
                objTrackInfo = new clsDeathRecordInfo();
                break;

            case enmDiseaseTrackType.OutHospital:
                objTrackInfo = new clsOutHospitalInfo();
                break;

            case enmDiseaseTrackType.Save:
                objTrackInfo = new clsSaveRecordInfo();
                break;

            case enmDiseaseTrackType.FirstIllnessNote_ZY:
                objTrackInfo = new clsFirstIllnessNote_ZYInfo();
                break;

            case enmDiseaseTrackType.EMR_SummaryBeforeOP:
                objTrackInfo = new clsEMR_SummaryBeforeOPInfo();
                break;

            case enmDiseaseTrackType.FirstIllnessNote_F2:
                objTrackInfo = new clsFirstIllnessNoteInfo_F2();
                break;

            case enmDiseaseTrackType.FirstIllnessNote_XJ:
                objTrackInfo = new clsFirstIllnessNoteInfo_XJ();
                break;
            }
            #endregion
            //设置clsDiseaseTrackInfo的内容
            objTrackInfo.m_ObjRecordContent = p_objTransDataInfo.m_objRecordContent;

            int intCharPerLine  = clmContent.Width / 14 - 4;
            int intBytesPerLine = 100;

            //根据 clsDiseaseTrackInfo 获得的文本和Xml
            string strText = "";
            string strXML  = "";

            if ((enmDiseaseTrackType)p_objTransDataInfo.m_intFlag == enmDiseaseTrackType.CaseDiscuss)
            {
                ((clsCaseDiscussInfo)objTrackInfo).m_mthGetFormatTrackInfo(((int)(clmContent.Width / 17.5)) - 5, out strText, out strXML);
            }
            else if ((enmDiseaseTrackType)p_objTransDataInfo.m_intFlag == enmDiseaseTrackType.DeadCaseDiscuss)
            {
                ((clsDeadCaseDiscussInfo)objTrackInfo).m_mthGetFormatTrackInfo(((int)(clmContent.Width / 17.5)) - 5, out strText, out strXML);
            }
            else
            {
                strText = objTrackInfo.m_strGetTrackText();
                strXML  = objTrackInfo.m_strGetTrackXml();
            }

            string strSignText = objTrackInfo.m_strGetSignText();
            string strSignXml  = objTrackInfo.m_strGetSignXml();

            string strBlanks = "";
            for (int j2 = 0; j2 < intCharPerLine - strSignText.Length; j2++)
            {
                strBlanks += " ";       //注意:此处填充的空格是全角占一个汉字的空格
            }
            strSignText = strBlanks + strSignText;

            //结合DataGrid每行的显示数目
            //生成每行内容的文本和Xml数组
            string[] strTextArr, strXmlArr;

            com.digitalwave.controls.ctlRichTextBox.m_mthSplitXmlByBytes(strText, strXML, intBytesPerLine, out strTextArr, out strXmlArr);

            object[][] objData = new object[strTextArr.Length + 1][];

            for (int i = 0; i < objData.Length - 1; i++)
            {
                objData[i] = new object[7];

                //设置值
                if (i == 0)
                {
                    //只在第一行记录才由以下信息
                    objData[i][0] = objTrackInfo.m_ObjRecordContent.m_dtmCreateDate.ToString(MDIParent.s_ObjRecordDateTimeInfo.m_strGetRecordTimeFormat(this.Name)); //存放记录时间的字符串
                    objData[i][1] = (int)objTrackInfo.m_enmGetTrackType();                                                                                           //存放记录类型的int值
                    objData[i][2] = objTrackInfo.m_ObjRecordContent.m_dtmOpenDate.ToString("yyyy-MM-dd HH:mm:ss");                                                   //存放记录的OpenDate字符串
                    objData[i][3] = objTrackInfo.m_ObjRecordContent.m_dtmModifyDate.ToString("yyyy-MM-dd HH:mm:ss");                                                 //存放记录的ModifyDate字符串
                    objData[i][5] = objTrackInfo.m_ObjRecordContent.m_StrPagination;                                                                                 //存放分页
                    objData[i][6] = objTrackInfo.m_ObjRecordContent.m_strCreateUserID;                                                                               //存放记录的createuserid字符串
                }

                clsDSTRichTextBoxValue objclsDSTRichTextBoxValue = new clsDSTRichTextBoxValue();
                objclsDSTRichTextBoxValue.m_strText   = strTextArr[i];
                objclsDSTRichTextBoxValue.m_strDSTXml = strXmlArr[i];

                objData[i][4] = objclsDSTRichTextBoxValue;//存放显示内容
            }

            objData[objData.Length - 1] = new object[5];
            //   objData[objData.Length - 1] = new object[6];
            clsDSTRichTextBoxValue objclsDSTRichTextBoxValueSign = new clsDSTRichTextBoxValue();
            objclsDSTRichTextBoxValueSign.m_strText   = strSignText;
            objclsDSTRichTextBoxValueSign.m_strDSTXml = strSignXml;

            objData[objData.Length - 1][4] = objclsDSTRichTextBoxValueSign;//存放显示内容
            //  objData[objData.Length - 1][5] = objclsDSTRichTextBoxValueSign;//存放显示内容
            return(objData);
        }