Пример #1
0
        protected override void m_mthSetDeletedGUIFromContent(clsTrackRecordContent p_objContent)
        {
            if (p_objContent == null)
            {
                return;
            }
            clsFirstIllnessNoteRecordContent_XJ objContent = (clsFirstIllnessNoteRecordContent_XJ)p_objContent;

            //把表单值赋值到界面,由子窗体重载实现

            //m_txtMostlyContent.Text = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strMostlyContent, objContent.m_strMostlyContentXML);
            //m_txtOriginalDiagnose.Text = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strOriginalDiagnose, objContent.m_strOriginalDiagnoseXML);
            //m_txtDiagnoseThe.Text = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strDiagnoseDiffe, objContent.m_strDiagnoseDiffeXML);
            //m_txtCurePlan.Text = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strCurePlan, objContent.m_strCurePlanXML);
            txtbingliteidian.Text          = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strBingLiTeDian, objContent.m_strBingLiTeDianXML);
            txtzhongyibianbingyiju.Text    = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strZhongYiBianBing, objContent.m_strZhongYiBianBingXML);
            txtxiyizhenduanyiju.Text       = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strXiYiZhenDuanYiJu, objContent.m_strXiYiZhenDuanYiJuXML);
            txtzhongyijianbiezhenduan.Text = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strZhongYiJianBie, objContent.m_strZhongYiJianBieXML);
            txtxiyijianbiezhenduan.Text    = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strXiYiJianBie, objContent.m_strXiYiJianBieXML);
            txtzhongyichubu.Text           = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strZhongYiChuBu, objContent.m_strZhongYiChuBuXML);
            txtxiyichubu.Text     = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strXiYiChuBu, objContent.m_strXiYiChuBuXML);
            txtzhenliaojihua.Text = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strZhenLiaoJiHua, objContent.m_strZhenLiaoJiHuaXML);

            if (objContent.objSignerArr != null)
            {
                m_mthAddSignToListView(lsvSign, objContent.objSignerArr);
            }
        }
Пример #2
0
        /// <summary>
        /// 特殊记录内容格式Xml的获取
        /// </summary>
        /// <returns></returns>
        public override string m_strGetTrackXml()
        {
            if (m_objRecordContent == null)
            {
                return("");
            }

            clsFirstIllnessNoteRecordContent_XJ objContent = ((clsFirstIllnessNoteRecordContent_XJ)m_objRecordContent);
            string strText;

            strText = objContent.m_dtmCreateDate.ToString(MDIParent.s_ObjRecordDateTimeInfo.m_strGetRecordTimeFormat("frmFirstIllnessNote")) + "   " + "首次病程记录";
            clsPatient objPatient = new clsPatient(objContent.m_strInPatientID);

            string strCreateUserName = m_strGetSignText();

            string strXML1 = ctlRichTextBox.clsXmlTool.s_strMakeTextXml(strText, objContent.m_strCreateUserID, strCreateUserName, System.Drawing.Color.White);
            // string strXML2 = ctlRichTextBox.clsXmlTool.s_strMakeTextXml("\n", objContent.m_strCreateUserID, strCreateUserName, System.Drawing.Color.White);
            string strXML3 = ctlRichTextBox.clsXmlTool.s_strMakeTextXml("\n(一)病例特点:\n", objContent.m_strCreateUserID, strCreateUserName, System.Drawing.Color.White);
            //string strXML4 = ctlRichTextBox.clsXmlTool.s_strMakeTextXml("\n(二)诊断与鉴别诊断:\n", objContent.m_strCreateUserID, strCreateUserName, System.Drawing.Color.White);
            // string strXML5 = "";
            // if (com.digitalwave.Emr.StaticObject.clsEMR_StaticObject.s_StrCurrentHospitalNO != "440605001")
            string strXML4 = ctlRichTextBox.clsXmlTool.s_strMakeTextXml("\n(二)中医辩病辨证依据:\n", objContent.m_strCreateUserID, strCreateUserName, System.Drawing.Color.White);
            //  else
            string strXML5 = ctlRichTextBox.clsXmlTool.s_strMakeTextXml("\n(三)西医诊断依据:\n", objContent.m_strCreateUserID, strCreateUserName, System.Drawing.Color.White);
            string strXML6 = ctlRichTextBox.clsXmlTool.s_strMakeTextXml("\n(四)中医鉴别诊断:\n", objContent.m_strCreateUserID, strCreateUserName, System.Drawing.Color.White);

            string strXML7  = ctlRichTextBox.clsXmlTool.s_strMakeTextXml("\n(五)西医鉴别诊断:\n", objContent.m_strCreateUserID, strCreateUserName, System.Drawing.Color.White);
            string strXML8  = ctlRichTextBox.clsXmlTool.s_strMakeTextXml("\n(六)中医初步诊断:\n", objContent.m_strCreateUserID, strCreateUserName, System.Drawing.Color.White);
            string strXML9  = ctlRichTextBox.clsXmlTool.s_strMakeTextXml("\n(七)西医初步诊断:\n", objContent.m_strCreateUserID, strCreateUserName, System.Drawing.Color.White);
            string strXML10 = ctlRichTextBox.clsXmlTool.s_strMakeTextXml("\n(八)诊疗计划:\n", objContent.m_strCreateUserID, strCreateUserName, System.Drawing.Color.White);

            string strXML = ctlRichTextBox.clsXmlTool.s_strCombineXml(new string[] { strXML1, strXML3, objContent.m_strBingLiTeDianXML, strXML4, objContent.m_strZhongYiBianBingXML, strXML5, objContent.m_strXiYiZhenDuanYiJuXML, strXML6, objContent.m_strZhongYiJianBieXML, strXML7, objContent.m_strXiYiJianBieXML, strXML8, objContent.m_strZhongYiChuBuXML, strXML9, objContent.m_strXiYiChuBuXML, strXML10, objContent.m_strZhenLiaoJiHuaXML });

            return(strXML);
        }
Пример #3
0
        /// <summary>
        /// 特殊记录内容文本的获取。
        /// </summary>
        /// <returns></returns>
        public override string m_strGetTrackText()
        {
            if (m_objRecordContent == null)
            {
                return("");
            }

            clsFirstIllnessNoteRecordContent_XJ objContent = ((clsFirstIllnessNoteRecordContent_XJ)m_objRecordContent);
            string strText;

            strText = objContent.m_dtmCreateDate.ToString(MDIParent.s_ObjRecordDateTimeInfo.m_strGetRecordTimeFormat("frmFirstIllnessNote_XJ")) + "   " + "首次病程记录";
            clsPatient objPatient = new clsPatient(objContent.m_strInPatientID);

            //strText += "\n" + objContent.m_strMostlyContent;
            strText += "\n(一)病例特点:\n" + objContent.m_strBingLiTeDian;
            //if (com.digitalwave.Emr.StaticObject.clsEMR_StaticObject.s_StrCurrentHospitalNO != "440605001")
            strText += "\n(二)中医辩病辨证依据:\n" + objContent.m_strZhongYiBianBing;
            // else
            strText += "\n(三)西医诊断依据:\n" + objContent.m_strXiYiZhenDuanYiJu;
            strText += "\n(四)中医鉴别诊断:\n" + objContent.m_strZhongYiJianBie;
            strText += "\n(五)西医鉴别诊断:\n" + objContent.m_strXiYiJianBie;
            strText += "\n(六)中医初步诊断:\n" + objContent.m_strZhongYiChuBu;
            strText += "\n(七)西医初步诊断:\n" + objContent.m_strXiYiChuBu;
            strText += "\n(八)诊疗计划:\n" + objContent.m_strZhenLiaoJiHua;

            return(strText);
        }
Пример #4
0
        /// <summary>
        /// 把选择时间记录内容重新整理为完全正确的内容。
        /// </summary>
        /// <param name="p_objRecordContent"></param>
        protected override void m_mthReAddNewRecord(clsTrackRecordContent p_objRecordContent)
        {
            //把选择时间记录内容重新整理为完全正确的内容,由子窗体重载实现。
            clsFirstIllnessNoteRecordContent_XJ objContent = (clsFirstIllnessNoteRecordContent_XJ)p_objRecordContent;

            //把表单值赋值到界面,由子窗体重载实现
            txtbingliteidian.Text          = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strBingLiTeDian, objContent.m_strBingLiTeDianXML);
            txtzhongyibianbingyiju.Text    = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strZhongYiBianBing, objContent.m_strZhongYiBianBingXML);
            txtxiyizhenduanyiju.Text       = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strXiYiZhenDuanYiJu, objContent.m_strXiYiZhenDuanYiJuXML);
            txtzhongyijianbiezhenduan.Text = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strZhongYiJianBie, objContent.m_strZhongYiJianBieXML);

            txtxiyijianbiezhenduan.Text = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strXiYiJianBie, objContent.m_strXiYiJianBieXML);
            txtzhongyichubu.Text        = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strZhongYiChuBu, objContent.m_strZhongYiChuBuXML);
            txtxiyichubu.Text           = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strXiYiChuBu, objContent.m_strXiYiChuBuXML);
            txtzhenliaojihua.Text       = com.digitalwave.controls.ctlRichTextBox.s_strGetRightText(objContent.m_strZhenLiaoJiHua, objContent.m_strZhenLiaoJiHuaXML);
        }
Пример #5
0
        /// <summary>
        /// 把特殊记录的值显示到界面上。
        /// </summary>
        /// <param name="p_objContent"></param>
        protected override void m_mthSetGUIFromContent(clsTrackRecordContent p_objContent)
        {
            if (p_objContent == null)
            {
                return;
            }
            clsFirstIllnessNoteRecordContent_XJ objContent = (clsFirstIllnessNoteRecordContent_XJ)p_objContent;

            //把表单值赋值到界面,由子窗体重载实现

            //m_txtMostlyContent.m_mthSetNewText(objContent.m_strMostlyContent, objContent.m_strMostlyContentXML);
            //m_txtOriginalDiagnose.m_mthSetNewText(objContent.m_strOriginalDiagnose, objContent.m_strOriginalDiagnoseXML);
            //m_txtDiagnoseThe.m_mthSetNewText(objContent.m_strDiagnoseDiffe, objContent.m_strDiagnoseDiffeXML);
            //m_txtCurePlan.m_mthSetNewText(objContent.m_strCurePlan, objContent.m_strCurePlanXML);
            txtbingliteidian.m_mthSetNewText(objContent.m_strBingLiTeDian, objContent.m_strBingLiTeDianXML);
            txtzhongyibianbingyiju.m_mthSetNewText(objContent.m_strZhongYiBianBing, objContent.m_strZhongYiBianBingXML);
            txtxiyizhenduanyiju.m_mthSetNewText(objContent.m_strXiYiZhenDuanYiJu, objContent.m_strXiYiZhenDuanYiJuXML);
            txtzhongyijianbiezhenduan.m_mthSetNewText(objContent.m_strZhongYiJianBie, objContent.m_strZhongYiJianBieXML);
            txtxiyijianbiezhenduan.m_mthSetNewText(objContent.m_strXiYiJianBie, objContent.m_strXiYiJianBieXML);
            txtzhongyichubu.m_mthSetNewText(objContent.m_strZhongYiChuBu, objContent.m_strZhongYiChuBuXML);
            txtxiyichubu.m_mthSetNewText(objContent.m_strXiYiChuBu, objContent.m_strXiYiChuBuXML);
            txtzhenliaojihua.m_mthSetNewText(objContent.m_strZhenLiaoJiHua, objContent.m_strZhenLiaoJiHuaXML);
            #region 签名集合
            if (objContent.objSignerArr != null)
            {
                m_mthAddSignToListView(lsvSign, objContent.objSignerArr);
                //lsvSign.Items.Clear();
                //for (int i = 0; i < objContent.objSignerArr.Length; i++)
                //{
                //    if (objContent.objSignerArr[i].controlName=="lsvSign")
                //    {
                //        ListViewItem lviNewItem=new ListViewItem(objContent.objSignerArr[i].objEmployee.m_strLASTNAME_VCHR);
                //        //ID 检查重复用
                //        lviNewItem.SubItems.Add(objContent.objSignerArr[i].objEmployee.m_strEMPID_CHR);
                //        //级别 排序用
                //        lviNewItem.SubItems.Add(objContent.objSignerArr[i].objEmployee.m_strLEVEL_CHR);
                //        //tag均为对象
                //        lviNewItem.Tag=objContent.objSignerArr[i].objEmployee;
                //        //是按顺序保存故获取顺序也一样
                //        lsvSign.Items.Add(lviNewItem);

                //    }
                //}
            }
            #endregion 签名
        }
Пример #6
0
        // 获取记录的主要信息(必须获取的是CreateDate,OpenDate,LastModifyDate)
        protected override clsTrackRecordContent m_objGetRecordMainContent(int p_intRecordType,
                                                                           object[] p_objDataArr)
        {
            //根据 p_intRecordType 获取对应的 clsTrackRecordContent
            clsTrackRecordContent objContent = null;

            #region
            switch ((enmDiseaseTrackType)p_intRecordType)
            {
            case enmDiseaseTrackType.GeneralDisease:
                objContent = new clsGeneralDiseaseRecordContent();
                break;

            case enmDiseaseTrackType.HandOver:
                objContent = new clsHandOverRecordContent();
                break;

            case enmDiseaseTrackType.HandOver_XJ:
                objContent = new clsHandOverRecordContent_XJ();
                break;

            case enmDiseaseTrackType.TakeOver:
                objContent = new clsTakeOverRecordContent();
                break;

            case enmDiseaseTrackType.TakeOver_XJ:
                objContent = new clsTakeOverRecordContent_XJ();
                break;

            case enmDiseaseTrackType.Consultation:
                objContent = new clsConsultationRecordContent();
                break;

            case enmDiseaseTrackType.Convey:
                objContent = new clsConveyRecordContent();
                break;

            case enmDiseaseTrackType.Convey_XJ:
                objContent = new clsConveyRecordContent_XJ();
                break;

            case enmDiseaseTrackType.TurnIn:
                objContent = new clsTurnInRecordContent();
                break;

            case enmDiseaseTrackType.TurnIn_XJ:
                objContent = new clsTurnInRecordContent_XJ();
                break;

            case enmDiseaseTrackType.DiseaseSummary:
                objContent = new clsDiseaseSummaryRecordContent();
                break;

            case enmDiseaseTrackType.DiseaseSummary_XJ:
                objContent = new clsDiseaseSummaryRecordContent_XJ();
                break;

            case enmDiseaseTrackType.CheckRoom:
                objContent = new clsCheckRoomRecordContent();
                break;

            case enmDiseaseTrackType.CaseDiscuss:
                objContent = new clsCaseDiscussRecordContent();
                break;

            case enmDiseaseTrackType.BeforeOperationDiscuss:
                objContent = new clsBeforeOperationDiscussRecordContent();
                break;

            case enmDiseaseTrackType.DeadCaseDiscuss:
                objContent = new clsDeadCaseDiscussRecordContent();
                break;

            case enmDiseaseTrackType.DeathCaseDiscuss:
                objContent = new clsDeadCaseDiscussRecord_VO();
                break;

            case enmDiseaseTrackType.AfterOperation:
                objContent = new clsAfterOperationRecordContent();
                break;

            case enmDiseaseTrackType.Dead:
                objContent = new clsDeadRecordContent();
                break;

            case enmDiseaseTrackType.Death:
                objContent = new clsDeadRecord_VO();
                break;

            case enmDiseaseTrackType.OutHospital:
                objContent = new clsOutHospitalRecordContent();
                break;

            case enmDiseaseTrackType.Save:
                objContent = new clsSaveRecordContent();
                break;

            case enmDiseaseTrackType.FirstIllnessNote:
                objContent = new clsFirstIllnessNoteRecordContent();
                break;

            case enmDiseaseTrackType.FirstIllnessNote_ZY:
                objContent = new clsFirstIllnessNote_ZYRecordContent();
                break;

            case enmDiseaseTrackType.EMR_SummaryBeforeOP:
                objContent = new clsEMR_SummaryBeforeOPValue();
                break;

            case enmDiseaseTrackType.FirstIllnessNote_F2:
                objContent = new clsFirstIllnessNoteRecordContent();
                break;

            case enmDiseaseTrackType.FirstIllnessNote_XJ:
                objContent = new clsFirstIllnessNoteRecordContent_XJ();
                break;
            }
            #endregion
            if (m_objCurrentPatient != null && m_ObjCurrentEmrPatientSession != null)
            {
                objContent.m_strInPatientID = m_objCurrentPatient.m_StrInPatientID;
            }
            else
            {
                clsPublicFunction.ShowInformationMessageBox("当前病人为空!");
                return(null);
            }
            objContent.m_dtmInPatientDate = m_ObjLastEmrPatientSession.m_dtmEMRInpatientDate;
            objContent.m_dtmCreateDate    = DateTime.Parse((string)p_objDataArr[0]);
            objContent.m_dtmOpenDate      = DateTime.Parse((string)p_objDataArr[2]);
            objContent.m_dtmModifyDate    = DateTime.Parse((string)p_objDataArr[3]);
            objContent.m_strCreateUserID  = (string)p_objDataArr[6];

            return(objContent);
        }
Пример #7
0
        /// <summary>
        /// 从界面获取特殊记录的值。如果界面值出错,返回null。
        /// </summary>
        /// <returns></returns>
        protected override clsTrackRecordContent m_objGetContentFromGUI()
        {
            //界面参数校验
            int intSignCount = lsvSign.Items.Count;

            if (m_objCurrentPatient == null || m_ObjCurrentEmrPatientSession == null || intSignCount == 0)
            {
                return(null);
            }
            //从界面获取表单值
            clsFirstIllnessNoteRecordContent_XJ objContent = new clsFirstIllnessNoteRecordContent_XJ();

            #region 是否可以无痕迹修改
            if (chkModifyWithoutMatk.Checked)
            {
                objContent.m_intMarkStatus = 0;
            }
            else
            {
                objContent.m_intMarkStatus = 1;
            }
            #endregion
            //获取lsvsign签名
            objContent.objSignerArr = new clsEmrSigns_VO[intSignCount];
            strUserIDList           = "";
            strUserNameList         = "";
            m_mthGetSignArr(new Control[] { lsvSign }, ref objContent.objSignerArr, ref strUserIDList, ref strUserNameList);
            //for (int i = 0; i < intSignCount; i++)
            //{
            //    objContent.objSignerArr[i]=new clsEmrSigns_VO();
            //    objContent.objSignerArr[i].objEmployee=new clsEmrEmployeeBase_VO();
            //    objContent.objSignerArr[i].objEmployee=(clsEmrEmployeeBase_VO)( lsvSign.Items[i].Tag);
            //    objContent.objSignerArr[i].controlName="lsvSign";
            //    objContent.objSignerArr[i].m_strFORMID_VCHR="frmFirstIllnessNote";
            //    objContent.objSignerArr[i].m_strREGISTERID_CHR=com.digitalwave.emr.BEDExplorer.frmHRPExplorer.objpCurrentPatient.m_strREGISTERID_CHR;
            //    //痕迹格式 0972,0324,
            //    strUserIDList=strUserIDList+objContent.objSignerArr[i].objEmployee.m_strEMPID_CHR.Trim()+",";
            //    strUserNameList=strUserNameList+objContent.objSignerArr[i].objEmployee.m_strLASTNAME_VCHR.Trim()+",";
            //}
            objContent.m_strModifyUserID = strUserIDList;

            //设置Richtextbox的modifyuserID 和modifyuserName
            m_mthSetRichTextBoxAttribInControlWithIDandName(this);
            #region 是否可以无痕迹修改
            if (chkModifyWithoutMatk.Checked)
            {
                objContent.m_intMarkStatus = 0;
            }
            else
            {
                objContent.m_intMarkStatus = 1;
            }
            #endregion
            objContent.m_dtmCreateDate = m_dtpCreateDate.Value;
            //中医辩病辨证依据
            objContent.m_strZhongYiBianBing_Right = txtzhongyibianbingyiju.m_strGetRightText();
            objContent.m_strZhongYiBianBing       = txtzhongyibianbingyiju.Text;
            objContent.m_strZhongYiBianBingXML    = txtzhongyibianbingyiju.m_strGetXmlText();
            //(一)病例特点
            objContent.m_strBingLiTeDian_Right = txtbingliteidian.m_strGetRightText();
            objContent.m_strBingLiTeDian       = txtbingliteidian.Text;
            objContent.m_strBingLiTeDianXML    = txtbingliteidian.m_strGetXmlText();
            //(二)西医诊断依据
            objContent.m_strXiYiZhenDuanYiJu_Right = txtxiyizhenduanyiju.m_strGetRightText();
            objContent.m_strXiYiZhenDuanYiJu       = txtxiyizhenduanyiju.Text;
            objContent.m_strXiYiZhenDuanYiJuXML    = txtxiyizhenduanyiju.m_strGetXmlText();
            //(三)诊疗计划
            objContent.m_strZhenLiaoJiHua_Right = txtzhenliaojihua.m_strGetRightText();
            objContent.m_strZhenLiaoJiHua       = txtzhenliaojihua.Text;
            objContent.m_strZhenLiaoJiHuaXML    = txtzhenliaojihua.m_strGetXmlText();
            //中医鉴别诊断
            objContent.m_strZhongYiJianBie_Right = txtzhongyijianbiezhenduan.m_strGetRightText();
            objContent.m_strZhongYiJianBie       = txtzhongyijianbiezhenduan.Text;
            objContent.m_strZhongYiJianBieXML    = txtzhongyijianbiezhenduan.m_strGetXmlText();
            //西医鉴别诊断
            objContent.m_strXiYiJianBie_Right = txtxiyijianbiezhenduan.m_strGetRightText();
            objContent.m_strXiYiJianBie       = txtxiyijianbiezhenduan.Text;
            objContent.m_strXiYiJianBieXML    = txtxiyijianbiezhenduan.m_strGetXmlText();

            //中医初步诊断
            objContent.m_strZhongYiChuBu_Right = txtzhongyichubu.m_strGetRightText();
            objContent.m_strZhongYiChuBu       = txtzhongyichubu.Text;
            objContent.m_strZhongYiChuBuXML    = txtzhongyichubu.m_strGetXmlText();
            //西医初步诊断
            objContent.m_strXiYiChuBu_Right = txtxiyichubu.m_strGetRightText();
            objContent.m_strXiYiChuBu       = txtxiyichubu.Text;
            objContent.m_strXiYiChuBuXML    = txtxiyichubu.m_strGetXmlText();

            return(objContent);
        }