Ejemplo n.º 1
0
        /// <summary>
        /// 保存
        /// </summary>
        /// <returns></returns>
        private long m_lngSave()
        {
            long lngRes = 0;

            try
            {
                //获取服务器时间
                string strTimeNow = new clsPublicDomain().m_strGetServerTime();
                //从界面获取表单值
                clsCourseDiseasesRecord objContent = new clsCourseDiseasesRecord();
                objContent.m_strInPatientID           = strRecordInPatientID;
                objContent.m_dtmInPatientDate         = DateTime.Parse(strRecordInPatientDate);
                objContent.m_dtmOpenDate              = DateTime.Parse(strTimeNow);
                objContent.m_dtmCreateDate            = m_dtpCreateDate.Value;
                objContent.m_strDiseasesRecordContent = m_txtRecordContent.Text;
                //objContent.m_strRecordContent_Right = m_txtRecordContent.m_strGetRightText();
                objContent.m_strDiseasesRecordContentXml = m_txtRecordContent.m_strGetXmlText();
                objContent.m_strClass        = GetClassWith(m_dtpCreateDate.Value);
                objContent.m_strModifyUserID = ((clsEmrEmployeeBase_VO)txtSign.Tag).m_strEMPNO_CHR;
                objContent.m_strCreateUserID = ((clsEmrEmployeeBase_VO)txtSign.Tag).m_strEMPNO_CHR;
                clsIntensiveTendRecordService objserv = new clsIntensiveTendRecordService();
                //电子签名
                //记录ID通常为 住院号+住院时间 || 住院号+记录时间 来识别唯一 格式 00000056-2005-10-10 10:20:20
                clsEmrDigitalSign_VO objSign_VO = new clsEmrDigitalSign_VO();
                objSign_VO.m_strFORMID_VCHR       = this.Name;
                objSign_VO.m_strFORMRECORDID_VCHR = objContent.m_strInPatientID.Trim() + "-" + objContent.m_dtmInPatientDate.ToString("yyyy-MM-dd HH:mm:ss");;
                objSign_VO.m_strSIGNIDID_VCHR     = clsEMRLogin.LoginInfo.m_strEmpID;
                objSign_VO.m_strRegisterId        = m_objBaseCurrentPatient.m_StrRegisterId;
                clsCheckSignersController objCheck = new clsCheckSignersController();
                if (objCheck.m_lngSign(objContent, objSign_VO) == -1)
                {
                    return(-1);
                }
                lngRes = objserv.m_lngAddNewRecordContent(objContent);
            }
            catch (Exception ex)
            {
                string strMsg = ex.Message;
            }
            return(lngRes);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 从界面获取特殊记录的值。如果界面值出错,返回null。
        /// </summary>
        /// <returns></returns>
        protected override clsTrackRecordContent m_objGetContentFromGUI()
        {
            //界面参数校验
            //if(m_objCurrentPatient==null || this.txtInPatientID.Text!=this.m_objCurrentPatient.m_StrHISInPatientID || txtInPatientID.Text=="")
            if (base.m_objCurrentPatient == null || m_ObjCurrentEmrPatientSession == null)
            {
                return(null);
            }

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

            objContent.m_dtmCreateDate = m_dtpCreateDate.Value;

            objContent.m_strRecordContent_Right = m_txtRecordContent.m_strGetRightText();
            objContent.m_strRecordContent       = m_txtRecordContent.Text;
            objContent.m_strRecordContentXml    = m_txtRecordContent.m_strGetXmlText();
            #region 是否可以无痕迹修改
            if (chkModifyWithoutMatk.Checked)
            {
                objContent.m_intMarkStatus = 0;
            }
            else
            {
                objContent.m_intMarkStatus = 1;
            }
            #endregion
            objContent.m_strCreateUserID = ((clsEmrEmployeeBase_VO)txtSign.Tag).m_strEMPNO_CHR;
            objContent.m_strModifyUserID = ((clsEmrEmployeeBase_VO)txtSign.Tag).m_strEMPNO_CHR;
            objContent.m_strSignName     = ((clsEmrEmployeeBase_VO)txtSign.Tag).m_strLASTNAME_VCHR;
            //获取签名
            strUserIDList   = "";
            strUserNameList = "";
            m_mthGetSignArr(new Control[] { txtSign }, ref objContent.objSignerArr, ref strUserIDList, ref strUserNameList);
            return(objContent);
        }
Ejemplo n.º 3
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 objContent = new clsFirstIllnessNoteRecordContent();

            #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_strMostlyContent_Right = m_txtMostlyContent.m_strGetRightText();
            objContent.m_strMostlyContent       = m_txtMostlyContent.Text;
            objContent.m_strMostlyContentXML    = m_txtMostlyContent.m_strGetXmlText();
            //(一)病例特点
            objContent.m_strOriginalDiagnose_Right = m_txtOriginalDiagnose.m_strGetRightText();
            objContent.m_strOriginalDiagnose       = m_txtOriginalDiagnose.Text;
            objContent.m_strOriginalDiagnoseXML    = m_txtOriginalDiagnose.m_strGetXmlText();
            //(二)诊断与鉴别诊断
            objContent.m_strDiagnoseDiffe_Right = m_txtDiagnoseThe.m_strGetRightText();
            objContent.m_strDiagnoseDiffe       = m_txtDiagnoseThe.Text;
            objContent.m_strDiagnoseDiffeXML    = m_txtDiagnoseThe.m_strGetXmlText();
            //(三)诊疗计划
            objContent.m_strCurePlan_Right = m_txtCurePlan.m_strGetRightText();
            objContent.m_strCurePlan       = m_txtCurePlan.Text;
            objContent.m_strCurePlanXML    = m_txtCurePlan.m_strGetXmlText();


            return(objContent);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 从界面获取特殊记录的值。如果界面值出错,返回null。
        /// </summary>
        /// <returns></returns>
        protected override clsTrackRecordContent m_objGetContentFromGUI()
        {
            //界面参数校验
            int intSignCount = lsvSign.Items.Count;
            int intCompere   = lsvCompere.Items.Count;

            //int intAttend=lsvAttend.Items.Count;
            if (m_objCurrentPatient == null)
            {
                return(null);
            }
            if (intSignCount == 0)
            {
                clsPublicFunction.ShowInformationMessageBox("请至少一个记录员签名!");
                m_cmdEmployeeSign.Focus();
                return(null);
            }

            if (intCompere == 0)
            {
                clsPublicFunction.ShowInformationMessageBox("请主持人签名!");
                m_cmdCompere.Focus();
                return(null);
            }
            if (m_txtAttendee.Text.Trim() == string.Empty)
            {
                clsPublicFunction.ShowInformationMessageBox("请至少一个参加人员签名!");
                m_txtAttendee.Focus();
                return(null);
            }
            //从界面获取表单值
            clsLargeConsultationContent objContent = new clsLargeConsultationContent();

            //获取lsvsign签名
            //objContent.objSignerArr=new clsEmrSigns_VO[intSignCount+intCompere];
            strUserIDList   = "";
            strUserNameList = "";
            m_mthGetSignArr(new Control[] { lsvSign, lsvCompere }, ref objContent.objSignerArr, ref strUserIDList, ref strUserNameList);
            objContent.m_strRecordUserID = strUserIDList;
            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_strAddress_Right = m_txtAddress.m_strGetRightText();
            objContent.m_strAddress       = m_txtAddress.Text;
            objContent.m_strAddressXML    = m_txtAddress.m_strGetXmlText();

            objContent.m_strDiscussContent_Right = m_txtDiscussContent.m_strGetRightText();
            objContent.m_strDiscussContent       = m_txtDiscussContent.Text;
            objContent.m_strDiscussContentXML    = m_txtDiscussContent.m_strGetXmlText();

            objContent.m_strAttendeeName_Right = m_txtAttendee.m_strGetRightText();
            objContent.m_strAttendeeName       = m_txtAttendee.Text;
            objContent.m_strAttendeeNameXml    = m_txtAttendee.m_strGetXmlText();

            return(objContent);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 保存
        /// </summary>
        /// <returns></returns>
        private new long m_lngSave()
        {
            long lngRes = 0;

            try
            {
                //获取服务器时间
                string strTimeNow = new clsPublicDomain().m_strGetServerTime();
                //从界面获取表单值
                clsIntensiveTendRecordDetail_GX objContent = new clsIntensiveTendRecordDetail_GX();
                objContent.m_strInPatientID      = strRecordInPatientID;
                objContent.m_dtmInPatientDate    = DateTime.Parse(strRecordInPatientDate);
                objContent.m_dtmOpenDate         = DateTime.Parse(strTimeNow);
                objContent.m_dtmModifyDate       = DateTime.Parse(strTimeNow);
                objContent.m_dtmDETAILRECORDDATE = Convert.ToDateTime(m_dtpCreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss"));
                objContent.m_dtmCreateDate       = DateTime.Parse(strTimeNow);
                objContent.m_strDETAILCONTENT    = m_txtRecordContent.Text;
                objContent.m_strDETAILCONTENTXML = m_txtRecordContent.m_strGetXmlText();
                objContent.m_intSTAT_STATUS      = m_intGetClass(m_dtpCreateDate.Value);

                objContent.m_strModifyUserID = MDIParent.OperatorID;
                objContent.m_strCreateUserID = MDIParent.OperatorID;

                if (m_txtRecordContent.m_strGetRightText() == null || m_txtRecordContent.m_strGetRightText() == string.Empty)
                {
                    MDIParent.ShowInformationMessageBox("请填写病情记录内容");
                    return(0);
                }

                ////签名
                //if(m_txtSign.Tag != null)
                //{

                //    objContent.m_strDETAILSIGNID=((clsEmployee)m_txtSign.Tag).m_StrEmployeeID;
                //    objContent.m_strDETAILSIGNNAME=m_txtSign.Text;
                //}
                objContent.m_strDETAILSIGNID   = ((clsEmrEmployeeBase_VO)txtSign.Tag).m_strEMPNO_CHR;
                objContent.m_strDETAILSIGNNAME = ((clsEmrEmployeeBase_VO)txtSign.Tag).m_strLASTNAME_VCHR;
                //获取签名
                strUserIDList   = "";
                strUserNameList = "";
                m_mthGetSignArr(new Control[] { txtSign }, ref objContent.objSignerArr, ref strUserIDList, ref strUserNameList);
                //objContent.objSignerArr = new clsEmrSigns_VO[1];
                //objContent.objSignerArr[0] = new clsEmrSigns_VO();
                //objContent.objSignerArr[0].objEmployee = new clsEmrEmployeeBase_VO();
                //objContent.objSignerArr[0].objEmployee = (clsEmrEmployeeBase_VO)(txtSign.Tag);
                //objContent.objSignerArr[0].controlName = "txtSign";
                //objContent.objSignerArr[0].m_strFORMID_VCHR = "frmGeneralNurseRecord_GXRec";//注意大小写
                //objContent.objSignerArr[0].m_strREGISTERID_CHR = com.digitalwave.emr.BEDExplorer.frmHRPExplorer.objpCurrentPatient.m_strREGISTERID_CHR;

                #region 多签名时验证所有签名者 并保存
                //数字签名
                //记录ID通常为 住院号+住院时间 || 住院号+记录时间 来识别唯一 格式 00000056-2005-10-10 10:20:20
                clsEmrDigitalSign_VO objSign_VO = new clsEmrDigitalSign_VO();
                objSign_VO.m_strFORMID_VCHR       = this.Name;
                objSign_VO.m_strFORMRECORDID_VCHR = objContent.m_strInPatientID.Trim() + "-" + objContent.m_dtmInPatientDate.ToString("yyyy-MM-dd HH:mm:ss");
                objSign_VO.m_strSIGNIDID_VCHR     = clsEMRLogin.LoginInfo.m_strEmpID;
                objSign_VO.m_strRegisterId        = m_objBaseCurrentPatient.m_StrRegisterId;

                if (objContent.objSignerArr != null)
                {
                    ArrayList objSignerArr = new ArrayList();
                    for (int i = 0; i < objContent.objSignerArr.Length; i++)
                    {
                        if (objContent.objSignerArr[i].controlName == "lsvSign" || objContent.objSignerArr[i].controlName == "txtSign")
                        {
                            objSignerArr.Add(objContent.objSignerArr[i].objEmployee);
                        }
                    }
                    clsCheckSignersController objCheck = new clsCheckSignersController(objSignerArr, false);
                    if (objCheck.CheckSigner(objContent, objSign_VO) == -1)
                    {
                        return(-1);
                    }
                }
                else
                {
                    objContent.m_strModifyUserID = MDIParent.OperatorID;
                    clsCheckSignersController objCheck = new clsCheckSignersController();
                    if (objCheck.m_lngSign(objContent, objSign_VO) == -1)
                    {
                        return(-1);
                    }
                }
                #endregion

                clsIntensiveTendRecord_GXService objserv =
                    (clsIntensiveTendRecord_GXService)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(clsIntensiveTendRecord_GXService));


                lngRes = objserv.m_lngAddNewDetail(objContent);
            }
            catch (Exception ex)
            {
                string strMsg = ex.Message;
            }
            return(lngRes);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// 保存
        /// </summary>
        /// <returns></returns>
        private new long m_lngSave()
        {
            long lngRes = 0;

            try
            {
                //获取服务器时间
                string strTimeNow = new clsPublicDomain().m_strGetServerTime();
                //从界面获取表单值
                clsGeneralNurseRecordContent_GXDetail objContent = new clsGeneralNurseRecordContent_GXDetail();
                objContent.m_strINPATIENTID         = strRecordInPatientID;
                objContent.m_dtmINPATIENTDATE       = DateTime.Parse(strRecordInPatientDate);
                objContent.m_dtmOPENDATE            = DateTime.Parse(strTimeNow);
                objContent.m_dtmMODIFYDATE          = DateTime.Parse(strTimeNow);
                objContent.m_dtmRECORDDATE          = DateTime.Parse(m_dtpCreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss"));
                objContent.m_dtmCREATERECORDDATE    = DateTime.Parse(strTimeNow);
                objContent.m_strRECORDCONTENTAll    = m_txtRecordContent.Text;
                objContent.m_strRECORDCONTENT_RIGHT = m_txtRecordContent.m_strGetRightText();
                objContent.m_strRECORDCONTENTXML    = m_txtRecordContent.m_strGetXmlText();
                objContent.m_intClass = m_intGetClass(m_dtpCreateDate.Value);

                if (objContent.m_strRECORDCONTENT_RIGHT == null || objContent.m_strRECORDCONTENT_RIGHT == string.Empty)
                {
                    MDIParent.ShowInformationMessageBox("请填写病情记录内容");
                    return(0);
                }
                ////签名
                //foreach(Control ctlSub in this.Controls)
                //{
                //    if(ctlSub.Name=="m_txtEmpSign")
                //    {
                //        objContent.m_strMODIFYRECORDUSERID = ((clsEmployee)ctlSub.Tag).m_StrEmployeeID;
                //        objContent.m_strCREATERECORDUSERID=  ((clsEmployee)ctlSub.Tag).m_StrEmployeeID;
                //    }
                //}
                //获取签名
                objContent.m_strMODIFYRECORDUSERID = ((clsEmrEmployeeBase_VO)txtSign.Tag).m_strEMPNO_CHR;
                objContent.m_strCREATERECORDUSERID = ((clsEmrEmployeeBase_VO)txtSign.Tag).m_strEMPNO_CHR;

                strUserIDList   = "";
                strUserNameList = "";
                m_mthGetSignArr(new Control[] { txtSign }, ref objContent.objSignerArr, ref strUserIDList, ref strUserNameList);
                //objContent.objSignerArr = new clsEmrSigns_VO[1];
                //objContent.objSignerArr[0] = new clsEmrSigns_VO();
                //objContent.objSignerArr[0].objEmployee = new clsEmrEmployeeBase_VO();
                //objContent.objSignerArr[0].objEmployee = (clsEmrEmployeeBase_VO)(txtSign.Tag);
                //objContent.objSignerArr[0].controlName = "txtSign";
                //objContent.objSignerArr[0].m_strFORMID_VCHR = "frmGeneralNurseRecord_GXCon";//注意大小写
                //objContent.objSignerArr[0].m_strREGISTERID_CHR = com.digitalwave.emr.BEDExplorer.frmHRPExplorer.objpCurrentPatient.m_strREGISTERID_CHR;

                clsGeneralNurseRecord_GXService objserv =
                    (clsGeneralNurseRecord_GXService)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(clsGeneralNurseRecord_GXService));

                #region 多签名时验证所有签名者
                //数字签名
                //记录ID通常为 住院号+住院时间 || 住院号+记录时间 来识别唯一 格式 00000056-2005-10-10 10:20:20
                clsEmrDigitalSign_VO objSign_VO = new clsEmrDigitalSign_VO();
                objSign_VO.m_strFORMID_VCHR       = this.Name;
                objSign_VO.m_strFORMRECORDID_VCHR = objContent.m_strINPATIENTID.Trim() + "-" + objContent.m_dtmInPatientDate.ToString("yyyy-MM-dd HH:mm:ss");
                objSign_VO.m_strSIGNIDID_VCHR     = clsEMRLogin.LoginInfo.m_strEmpID;
                objSign_VO.m_strRegisterId        = m_strRegisterid;
                //objSign_VO.m_strRegisterId = m_objBaseCurrentPatient.m_StrRegisterId;
                if (objContent.objSignerArr != null)
                {
                    ArrayList objSignerArr = new ArrayList();
                    for (int i = 0; i < objContent.objSignerArr.Length; i++)
                    {
                        if (objContent.objSignerArr[i].controlName == "lsvSign" || objContent.objSignerArr[i].controlName == "txtSign")
                        {
                            objSignerArr.Add(objContent.objSignerArr[i].objEmployee);
                        }
                    }
                    clsCheckSignersController objCheck = new clsCheckSignersController(objSignerArr, false);
                    if (objCheck.CheckSigner(objContent, objSign_VO) == -1)
                    {
                        return(-1);
                    }
                }
                else
                {
                    objContent.m_strModifyUserID = MDIParent.OperatorID;
                    clsCheckSignersController objCheck = new clsCheckSignersController();
                    if (objCheck.m_lngSign(objContent, objSign_VO) == -1)
                    {
                        return(-1);
                    }
                }
                #endregion

                lngRes = objserv.m_lngAddNewDetail(objContent);
            }
            catch (Exception ex)
            {
                new com.digitalwave.Utility.clsLogText().LogDetailError(ex, false);
            }
            return(lngRes);
        }