/// <summary>
        /// 显示已删除记录至界面
        /// </summary>
        /// <param name="p_objContent"></param>
        protected override void m_mthSetDeletedGUIFromContent(iCareData.clsTrackRecordContent p_objContent)
        {
            clsEMR_intbloodsugarwatchValue objContent = p_objContent as clsEMR_intbloodsugarwatchValue;

            if (objContent == null)
            {
                return;
            }

            this.m_mthClearRecordInfo();

            m_dtpCreateDate.Value = objContent.m_dtmRecordDate;

            //m_txtCheckResult.Text = objContent.m_strCHECKRESULT_RIGHT;
            //m_cboCheckTime.Text = objContent.m_strCHECKTIME_RIGHT;
            m_txtnullAbdon.Text    = objContent.m_strNULLABDOMEN_RIGHT;
            m_txttwoBreakfast.Text = objContent.m_strTWOBREAKFAST_RIGTH;
            m_txtBeforeLunch.Text  = objContent.m_strBEFORELUNCH_RIGHT;
            m_txttwoLunch.Text     = objContent.m_strTWOAFTERLUNCH_RIGHT;
            m_txtBeforeDinner.Text = objContent.m_strBEFOREDINNER_RIGHT;
            m_txttwoDinner.Text    = objContent.m_strTWOAFTERDINNER_RIGHT;
            m_txtBeforeSleep.Text  = objContent.m_strBEFORESLEEP_RIGHT;
            m_txtBeizhu.Text       = objContent.m_strBEIZHU_RIGHT;


            #region 签名集合
            if (objContent.objSignerArr != null)
            {
                m_mthAddSignToListView(lsvSign, objContent.objSignerArr);
            }
            else
            {
                clsEmrEmployeeBase_VO    objEMP    = null;
                clsHospitalManagerDomain objDomain = new clsHospitalManagerDomain();
                long lngRes = objDomain.m_lngGetEmpByID(objContent.m_strCreateUserID, out objEMP);
                if (objEMP != null)
                {
                    ListViewItem lviNewItem = new ListViewItem(objEMP.m_strGetTechnicalRankAndName);
                    lviNewItem.SubItems.Add(objEMP.m_strEMPID_CHR);
                    lviNewItem.SubItems.Add(objEMP.m_StrHistroyLevel);
                    lviNewItem.Tag = objEMP;
                    lsvSign.Items.Add(lviNewItem);
                }
                objDomain = null;
            }
            #endregion 签名

            this.lsvSign.Enabled         = false;
            this.m_cmdSign.Enabled       = false;
            this.m_dtpCreateDate.Enabled = false;
        }
示例#2
0
        /// <summary>
        /// 获取记录的主要信息(必须获取的是CreateDate,LastModifyDate)
        /// </summary>
        /// <param name="p_intRecordType"></param>
        /// <param name="p_objDataArr"></param>
        /// <returns></returns>
        protected override clsTrackRecordContent m_objGetRecordMainContent(int p_intRecordType,
                                                                           object[] p_objDataArr)
        {
            //根据 p_intRecordType 获取对应的 clsTrackRecordContent
            clsTrackRecordContent objContent = null;

            switch ((enmDiseaseTrackType)p_intRecordType)
            {
            case enmDiseaseTrackType.EMR_IntBloodSugarWatch:
                objContent = new clsEMR_intbloodsugarwatchValue();
                break;
            }

            if (objContent == null)
            {
                objContent = new clsEMR_intbloodsugarwatchValue();
            }

            if (m_objCurrentPatient != null)
            {
                objContent.m_strInPatientID = m_objCurrentPatient.m_StrInPatientID;
            }
            else
            {
                clsPublicFunction.ShowInformationMessageBox("当前病人为空!");
                return(null);
            }
            int intSelectedRecordStartRow = m_dtgRecordDetail.CurrentCell.RowNumber;

            objContent.m_dtmInPatientDate = m_objCurrentPatient.m_DtmSelectedInDate;
            objContent.m_dtmCreateDate    = DateTime.Parse((string)p_objDataArr[2]);
            objContent.m_dtmModifyDate    = DateTime.Parse((string)p_objDataArr[3]);
            objContent.m_strCreateUserID  = (string)p_objDataArr[14];
            if (frmHRPExplorer.objpCurrentPatient == null)
            {
                objContent.m_strRegisterID = frmHRPExplorer.objpCurrentPatient.m_strREGISTERID_CHR;
            }

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

            clsEMR_intbloodsugarwatchValue objContent = (clsEMR_intbloodsugarwatchValue)p_objRecordContent;
        }
        /// <summary>
        /// 从界面获取记录内容

        /// </summary>
        /// <returns></returns>
        protected override iCareData.clsTrackRecordContent m_objGetContentFromGUI()
        {
            //界面参数校验
            if (m_objCurrentPatient == null || m_ObjCurrentEmrPatientSession == null)
            {
                return(null);
            }

            //从界面获取表单值
            clsEMR_intbloodsugarwatchValue objContent = new clsEMR_intbloodsugarwatchValue();

            try
            {
                string StrNow = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                objContent.m_dtmCreateDate   = Convert.ToDateTime(StrNow);
                objContent.m_strCreateUserID = clsEMRLogin.LoginInfo.m_strEmpID;
                objContent.m_dtmModifyDate   = Convert.ToDateTime(StrNow);
                objContent.m_strModifyUserID = clsEMRLogin.LoginInfo.m_strEmpID;
                objContent.m_strRegisterID   = frmHRPExplorer.objpCurrentPatient.m_strREGISTERID_CHR;

                objContent.m_dtmRecordDate = Convert.ToDateTime(m_dtpCreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss"));

                //objContent.m_strCHECKRESULT_RIGHT = m_txtCheckResult.m_strGetRightText();
                //objContent.m_strCHECKRESULT_VCHR = m_txtCheckResult.Text;
                //objContent.m_strCHECKRESULT_XML = m_txtCheckResult.m_strGetXmlText();

                //objContent.m_strCHECKTIME_RIGHT = m_cboCheckTime.Text;
                //objContent.m_strCHECKTIME_VCHR = m_cboCheckTime.Text;
                //objContent.m_strCHECKTIME_XML = "<root />";

                objContent.m_strNULLABDOMEN_RIGHT = m_txtnullAbdon.m_strGetRightText();
                objContent.m_strNULLABDOMEN_VCHR  = m_txtnullAbdon.Text;
                objContent.m_strNULLABDOMEN_XML   = m_txtnullAbdon.m_strGetXmlText();

                objContent.m_strTWOBREAKFAST_RIGTH = m_txttwoBreakfast.m_strGetRightText();
                objContent.m_strTWOBREAKFAST_VCHR  = m_txttwoBreakfast.Text;
                objContent.m_strTWOBREAKFAST_XML   = m_txttwoBreakfast.m_strGetXmlText();

                objContent.m_strBEFORELUNCH_RIGHT = m_txtBeforeLunch.m_strGetRightText();
                objContent.m_strBEFORELUNCH_VCHR  = m_txtBeforeLunch.Text;
                objContent.m_strBEFORELUNCH_XML   = m_txtBeforeLunch.m_strGetXmlText();

                objContent.m_strTWOAFTERLUNCH_RIGHT = m_txttwoLunch.m_strGetRightText();
                objContent.m_strTWOAFTERLUNCH_VCHR  = m_txttwoLunch.Text;
                objContent.m_strTWOAFTERLUNCH_XML   = m_txttwoLunch.m_strGetXmlText();

                objContent.m_strBEFOREDINNER_RIGHT = m_txtBeforeDinner.m_strGetRightText();
                objContent.m_strBEFOREDINNER_VCHR  = m_txtBeforeDinner.Text;
                objContent.m_strBEFOREDINNER_XML   = m_txtBeforeDinner.m_strGetXmlText();


                objContent.m_strTWOAFTERDINNER_RIGHT = m_txttwoDinner.m_strGetRightText();
                objContent.m_strTWOAFTERDINNER_VCHR  = m_txttwoDinner.Text;
                objContent.m_strTWOAFTERDINNER_XML   = m_txttwoDinner.m_strGetXmlText();

                objContent.m_strBEFORESLEEP_RIGHT = m_txtBeforeSleep.m_strGetRightText();
                objContent.m_strBEFORESLEEP_VCHR  = m_txtBeforeSleep.Text;
                objContent.m_strBEFORESLEEP_XML   = m_txtBeforeSleep.m_strGetXmlText();

                objContent.m_strBEIZHU_RIGHT = m_txtBeizhu.m_strGetRightText();
                objContent.m_strBEIZHU_VCHR  = m_txtBeizhu.Text;
                objContent.m_strBEIZHU_XML   = m_txtBeizhu.m_strGetXmlText();

                #region 获取签名
                objContent.objSignerArr = null;
                strUserIDList           = "";
                strUserNameList         = "";
                m_mthGetSignArr(new Control[] { lsvSign }, ref objContent.objSignerArr, ref strUserIDList, ref strUserNameList);

                objContent.m_strRecordUserID = strUserIDList;
                #endregion
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return(null);
            }
            return(objContent);
        }
示例#5
0
        /// <summary>
        /// 获取显示到DataGrid的数据

        /// </summary>
        /// <param name="p_objTransDataInfo"></param>
        /// <returns></returns>
        protected override object[][] m_objGetRecordsValueArr(clsTransDataInfo p_objTransDataInfo)
        {
            #region 显示记录到DataGrid
            try
            {
                object[]  objData;
                ArrayList objReturnData = new ArrayList();

                clsEMR_intbloodsugarwatchDataInfo objInfo = null;

                objInfo = p_objTransDataInfo as clsEMR_intbloodsugarwatchDataInfo;

                if (objInfo == null || objInfo.m_objRecordArr == null)
                {
                    return(null);
                }

                int intRecordCount = objInfo.m_objRecordArr.Length;
                clsDSTRichTextBoxValue objclsDSTRichTextBoxValue;
                string strText, strXml;

                #region 获取修改限定时间
                int intCanModifyTime = 0;
                try
                {
                    intCanModifyTime = int.Parse(m_strCanModifyTime);
                }
                catch
                {
                    intCanModifyTime = 6;
                }
                #endregion

                for (int i = 0; i < intRecordCount; i++)
                {
                    objData = new object[15];
                    clsEMR_intbloodsugarwatchValue objCurrent = objInfo.m_objRecordArr[i];
                    clsEMR_intbloodsugarwatchValue objNext    = new clsEMR_intbloodsugarwatchValue();//下一条记录



                    if (i < intRecordCount - 1)
                    {
                        objNext = objInfo.m_objRecordArr[i + 1];
                    }

                    //如果该护理记录是修改前的记录且是在指定时间内修改的,修改者与创建者为同一人,则不显示
                    if (objNext != null && objNext.m_dtmCreateDate == objCurrent.m_dtmCreateDate &&
                        objNext.m_strModifyUserID.Trim() == objCurrent.m_strCreateUserID.Trim())
                    {
                        TimeSpan tsModify = objNext.m_dtmModifyDate - objCurrent.m_dtmModifyDate;
                        if ((int)tsModify.TotalHours < intCanModifyTime)
                        {
                            continue;
                        }
                    }
                    #region 存放关键字段
                    if (objCurrent.m_dtmCreateDate != DateTime.MinValue)
                    {
                        objData[0] = objCurrent.m_dtmRecordDate;                 //存放记录时间的字符串
                        objData[1] = (int)enmRecordsType.EMR_IntBloodSugarWatch; //存放记录类型的int值



                        objData[2] = objCurrent.m_dtmCreateDate;//存放记录的OpenDate字符串



                        objData[3] = objCurrent.m_dtmModifyDate;//存放记录的ModifyDate字符串

                        //同一个则只在第一行显示日期



                        if (objCurrent.m_dtmRecordDate.Date.ToString() != m_dtmPreRecordDate.Date.ToString())
                        {
                            objData[4] = objCurrent.m_dtmRecordDate.Date.ToString("yyyy-MM-dd");//日期字符串
                        }

                        objData[14] = objCurrent.m_strCreateUserID;//存放记录的createUserid字符串
                    }
                    m_dtmPreRecordDate = objCurrent.m_dtmRecordDate;
                    #endregion ;

                    #region 存放单项信息
                    ////监测时间
                    //strText = objCurrent.m_strCHECKTIME_RIGHT;
                    //strXml = "<root />";
                    //if (objNext != null && objNext.m_dtmCreateDate == objCurrent.m_dtmCreateDate
                    //    && objNext.m_strCHECKTIME_RIGHT != objCurrent.m_strCHECKTIME_RIGHT)/*objNext的记录内容与objCurrent的记录内容不一致,文本需要加双划线*/
                    //{
                    //    strXml = m_strGetDSTTextXML(objCurrent.m_strCHECKTIME_RIGHT, objCurrent.m_strModifyUserID, objCurrent.m_strModifyUserName);
                    //}
                    //objclsDSTRichTextBoxValue = new clsDSTRichTextBoxValue();
                    //objclsDSTRichTextBoxValue.m_strText = strText;
                    //objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                    //objData[5] = objclsDSTRichTextBoxValue;
                    ////监测结果
                    //strText = objCurrent.m_strCHECKRESULT_RIGHT;
                    //strXml = "<root />";
                    //if (objNext != null && objNext.m_dtmCreateDate == objCurrent.m_dtmCreateDate
                    //    && objNext.m_strCHECKRESULT_RIGHT != objCurrent.m_strCHECKRESULT_RIGHT)/*objNext的记录内容与objCurrent的记录内容不一致,文本需要加双划线*/
                    //{
                    //    strXml = m_strGetDSTTextXML(objCurrent.m_strCHECKRESULT_RIGHT, objCurrent.m_strModifyUserID, objCurrent.m_strModifyUserName);
                    //}
                    //objclsDSTRichTextBoxValue = new clsDSTRichTextBoxValue();
                    //objclsDSTRichTextBoxValue.m_strText = strText;
                    //objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                    //objData[6] = objclsDSTRichTextBoxValue;
                    //空腹
                    strText = objCurrent.m_strNULLABDOMEN_RIGHT;
                    strXml  = "<root />";
                    if (objNext != null && objNext.m_dtmCreateDate == objCurrent.m_dtmCreateDate &&
                        objNext.m_strNULLABDOMEN_RIGHT != objCurrent.m_strNULLABDOMEN_RIGHT)   /*objNext的记录内容与objCurrent的记录内容不一致,文本需要加双划线*/
                    {
                        strXml = m_strGetDSTTextXML(objCurrent.m_strNULLABDOMEN_RIGHT, objCurrent.m_strModifyUserID, objCurrent.m_strModifyUserName);
                    }
                    objclsDSTRichTextBoxValue             = new clsDSTRichTextBoxValue();
                    objclsDSTRichTextBoxValue.m_strText   = strText;
                    objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                    objData[5] = objclsDSTRichTextBoxValue;
                    //早餐后2小时
                    strText = objCurrent.m_strTWOBREAKFAST_RIGTH;
                    strXml  = "<root />";
                    if (objNext != null && objNext.m_dtmCreateDate == objCurrent.m_dtmCreateDate &&
                        objNext.m_strTWOBREAKFAST_RIGTH != objCurrent.m_strTWOBREAKFAST_RIGTH)   /*objNext的记录内容与objCurrent的记录内容不一致,文本需要加双划线*/
                    {
                        strXml = m_strGetDSTTextXML(objCurrent.m_strTWOBREAKFAST_RIGTH, objCurrent.m_strModifyUserID, objCurrent.m_strModifyUserName);
                    }
                    objclsDSTRichTextBoxValue             = new clsDSTRichTextBoxValue();
                    objclsDSTRichTextBoxValue.m_strText   = strText;
                    objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                    objData[6] = objclsDSTRichTextBoxValue;
                    //中餐前
                    strText = objCurrent.m_strBEFORELUNCH_RIGHT;
                    strXml  = "<root />";
                    if (objNext != null && objNext.m_dtmCreateDate == objCurrent.m_dtmCreateDate &&
                        objNext.m_strBEFORELUNCH_RIGHT != objCurrent.m_strBEFORELUNCH_RIGHT)   /*objNext的记录内容与objCurrent的记录内容不一致,文本需要加双划线*/
                    {
                        strXml = m_strGetDSTTextXML(objCurrent.m_strBEFORELUNCH_RIGHT, objCurrent.m_strModifyUserID, objCurrent.m_strModifyUserName);
                    }
                    objclsDSTRichTextBoxValue             = new clsDSTRichTextBoxValue();
                    objclsDSTRichTextBoxValue.m_strText   = strText;
                    objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                    objData[7] = objclsDSTRichTextBoxValue;
                    //中餐2小时
                    strText = objCurrent.m_strTWOAFTERLUNCH_RIGHT;
                    strXml  = "<root />";
                    if (objNext != null && objNext.m_dtmCreateDate == objCurrent.m_dtmCreateDate &&
                        objNext.m_strTWOAFTERLUNCH_RIGHT != objCurrent.m_strTWOAFTERLUNCH_RIGHT)   /*objNext的记录内容与objCurrent的记录内容不一致,文本需要加双划线*/
                    {
                        strXml = m_strGetDSTTextXML(objCurrent.m_strTWOAFTERLUNCH_RIGHT, objCurrent.m_strModifyUserID, objCurrent.m_strModifyUserName);
                    }
                    objclsDSTRichTextBoxValue             = new clsDSTRichTextBoxValue();
                    objclsDSTRichTextBoxValue.m_strText   = strText;
                    objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                    objData[8] = objclsDSTRichTextBoxValue;
                    //晚餐前
                    strText = objCurrent.m_strBEFOREDINNER_RIGHT;
                    strXml  = "<root />";
                    if (objNext != null && objNext.m_dtmCreateDate == objCurrent.m_dtmCreateDate &&
                        objNext.m_strBEFOREDINNER_RIGHT != objCurrent.m_strBEFOREDINNER_RIGHT)   /*objNext的记录内容与objCurrent的记录内容不一致,文本需要加双划线*/
                    {
                        strXml = m_strGetDSTTextXML(objCurrent.m_strBEFOREDINNER_RIGHT, objCurrent.m_strModifyUserID, objCurrent.m_strModifyUserName);
                    }
                    objclsDSTRichTextBoxValue             = new clsDSTRichTextBoxValue();
                    objclsDSTRichTextBoxValue.m_strText   = strText;
                    objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                    objData[9] = objclsDSTRichTextBoxValue;
                    //晚餐后2小时
                    strText = objCurrent.m_strTWOAFTERDINNER_RIGHT;
                    strXml  = "<root />";
                    if (objNext != null && objNext.m_dtmCreateDate == objCurrent.m_dtmCreateDate &&
                        objNext.m_strTWOAFTERDINNER_RIGHT != objCurrent.m_strTWOAFTERDINNER_RIGHT)   /*objNext的记录内容与objCurrent的记录内容不一致,文本需要加双划线*/
                    {
                        strXml = m_strGetDSTTextXML(objCurrent.m_strTWOAFTERDINNER_RIGHT, objCurrent.m_strModifyUserID, objCurrent.m_strModifyUserName);
                    }
                    objclsDSTRichTextBoxValue             = new clsDSTRichTextBoxValue();
                    objclsDSTRichTextBoxValue.m_strText   = strText;
                    objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                    objData[10] = objclsDSTRichTextBoxValue;
                    //睡前
                    strText = objCurrent.m_strBEFORESLEEP_RIGHT;
                    strXml  = "<root />";
                    if (objNext != null && objNext.m_dtmCreateDate == objCurrent.m_dtmCreateDate &&
                        objNext.m_strBEFORESLEEP_RIGHT != objCurrent.m_strBEFORESLEEP_RIGHT)   /*objNext的记录内容与objCurrent的记录内容不一致,文本需要加双划线*/
                    {
                        strXml = m_strGetDSTTextXML(objCurrent.m_strBEFORESLEEP_RIGHT, objCurrent.m_strModifyUserID, objCurrent.m_strModifyUserName);
                    }
                    objclsDSTRichTextBoxValue             = new clsDSTRichTextBoxValue();
                    objclsDSTRichTextBoxValue.m_strText   = strText;
                    objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                    objData[11] = objclsDSTRichTextBoxValue;
                    //备注
                    strText = objCurrent.m_strBEIZHU_RIGHT;
                    strXml  = "<root />";
                    if (objNext != null && objNext.m_dtmCreateDate == objCurrent.m_dtmCreateDate &&
                        objNext.m_strBEIZHU_RIGHT != objCurrent.m_strBEIZHU_RIGHT)   /*objNext的记录内容与objCurrent的记录内容不一致,文本需要加双划线*/
                    {
                        strXml = m_strGetDSTTextXML(objCurrent.m_strBEIZHU_RIGHT, objCurrent.m_strModifyUserID, objCurrent.m_strModifyUserName);
                    }
                    objclsDSTRichTextBoxValue             = new clsDSTRichTextBoxValue();
                    objclsDSTRichTextBoxValue.m_strText   = strText;
                    objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                    objData[12] = objclsDSTRichTextBoxValue;

                    if (objCurrent.objSignerArr != null)
                    {
                        //签名
                        strText = string.Empty;
                        for (int j = 0; j < objCurrent.objSignerArr.Length; j++)
                        {
                            strText += objCurrent.objSignerArr[j].objEmployee.m_strGetTechnicalRankAndName + " ";
                        }
                        strXml = "<root />";
                        objclsDSTRichTextBoxValue             = new clsDSTRichTextBoxValue();
                        objclsDSTRichTextBoxValue.m_strText   = strText;
                        objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                        objData[13] = objclsDSTRichTextBoxValue;
                    }
                    else //从旧表导过来的数据没有电子签名

                    {
                        clsEmrEmployeeBase_VO    objEMP    = null;
                        clsHospitalManagerDomain objDomain = new clsHospitalManagerDomain();
                        long lngRes = objDomain.m_lngGetEmpByID(objCurrent.m_strCreateUserID, out objEMP);
                        if (objEMP != null)
                        {
                            strText = objEMP.m_strLASTNAME_VCHR;
                            strXml  = "<root />";
                            objclsDSTRichTextBoxValue             = new clsDSTRichTextBoxValue();
                            objclsDSTRichTextBoxValue.m_strText   = strText;
                            objclsDSTRichTextBoxValue.m_strDSTXml = strXml;
                            objData[13] = objclsDSTRichTextBoxValue;
                        }
                        objDomain = null;
                    }
                    #endregion
                    objReturnData.Add(objData);
                }
                object[][] m_objRe = new object[objReturnData.Count][];

                for (int m = 0; m < objReturnData.Count; m++)
                {
                    m_objRe[m] = (object[])objReturnData[m];
                }
                return(m_objRe);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return(null);
            }
            #endregion
        }