Exemple #1
0
        protected override void m_mthSetDeletedGUIFromContent(iCareData.clsTrackRecordContent p_objContent)
        {
            clsIntensiveTendRecordDetail_GX objContent = (clsIntensiveTendRecordDetail_GX )p_objContent;

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

            this.m_mthClearRecordInfo();
            m_txtRecordContent.m_mthSetNewText(objContent.m_strDETAILCONTENT, objContent.m_strDETAILCONTENTXML);
            m_dtpCreateDate.Value = objContent.m_dtmDETAILRECORDDATE;
            //if(objContent.m_strDETAILSIGNID != null && objContent.m_strDETAILSIGNID != "")
            //{
            //    clsEmployee objEmployee=new clsEmployee(objContent.m_strDETAILSIGNID);
            //    m_txtSign.Tag=objEmployee;
            //}
            //m_txtSign.Text=objContent.m_strDETAILSIGNNAME;

            //this.m_txtSign.Enabled = false;
            //根据工号获取签名信息
            //出于兼容考虑,过渡使用 tfzhang 2006-03-12
            com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
            clsEmrEmployeeBase_VO objSign = new clsEmrEmployeeBase_VO();

            objEmployeeSign.m_lngGetEmpByNO(objContent.m_strDETAILSIGNID, out objSign);
            if (objSign != null)
            {
                txtSign.Text = objSign.m_strLASTNAME_VCHR;
                txtSign.Tag  = objSign;
            }
            this.txtSign.Enabled         = false;
            this.m_dtpCreateDate.Enabled = false;
        }
Exemple #2
0
        /// <summary>
        /// key盘验证签名者
        /// 适用于选择签名的时候使用
        /// </summary>
        /// <param name="p_strEmployeeID"></param>
        /// <param name="p_strEmployeeName"></param>
        /// <returns></returns>
        private bool m_blnCheckEmployeeSignByKey(string p_strEmployeeID, string p_strEmployeeName)
        {
            try
            {
                //获取证书
                clsDigitalSign objsign = new clsDigitalSign();

                //虚拟签名使弹出密码窗口
                string strContentTemp = null;
                strContentTemp = objsign.sign("1", 0);
                if (strContentTemp == null)
                {
                    MessageBox.Show("key盘校验失败,请确认已插入key盘!", "iCare Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return(false);
                }
                //使用key登录
                clsEmrEmployeeBase_VO objEmp = null;
                com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmpDomain = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                long ret = 0;
                ret = objEmpDomain.m_lngGetMinEmpByKey(objsign.currentCerts.m_strSerialNumber, out objEmp);
                if ((ret > 0) && (objEmp != null))
                {
                    if (objEmp.m_strEMPNO_CHR.Trim() == p_strEmployeeID.Trim())
                    {
                        return(true);
                    }
                    else
                    {
                        MessageBox.Show("检测到key盘证书名称和指定的签名者不一致,不能通过验证", "iCare Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        return(false);
                    }
                }
                else
                {
                    MessageBox.Show("用户不存在或者未关联key盘登录,请检查!", "iCare Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return(false);
                }
            }
            catch (Exception exp)
            {
                MessageBox.Show("未能检测到key盘,确认是否插入key盘", "iCare Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return(false);
            }
        }
Exemple #3
0
        public void m_mthInit(Form p_frmMDI, com.digitalwave.iCare.ValueObject.clsLoginInfo p_objLoginInfo)
        {
            s_frmMDI       = p_frmMDI;
            m_objLoginInfo = p_objLoginInfo;

            clsLoginContext objLogin = clsLoginContext.s_ObjLoginContext;

            objLogin.m_StrEmployeeID = p_objLoginInfo.m_strEmpNo;
            MDIParent.m_mthClearAll();
            m_objCurDeptOfEmpArr = null;
            new clsForWholeHosInfoManager().m_lngGetDepartmentByUserID(p_objLoginInfo.m_strEmpID, out m_objCurDeptOfEmpArr);

            m_mthGetCurrentHospitalInfo();

            #region 设置全局员工变量,新员工类,该静态类会被外部其他模块调用到,要保证正确赋值 tfzhang 2006-04-07
            iCareData.clsEmrEmployeeBase_VO m_objEmployeeTemp;
            com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objsrv = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
            long lngRes = objsrv.m_lngGetEmpByID(m_objLoginInfo.m_strEmpID, out m_objEmployeeTemp);
            //未保存状态 用于签名集合
            m_objEmployeeTemp.m_intSTATUS_INT = 0;
            com.digitalwave.emr.BEDExplorer.frmHRPExplorer.objpCurrentEmployee = m_objEmployeeTemp;
            #endregion


            iCare.CustomForm.clsExteriorFunctionInterface.m_ObjUserInfo        = p_objLoginInfo;
            iCare.CustomForm.clsExteriorFunctionInterface.m_ObjCurDeptOfEmpArr = m_objCurDeptOfEmpArr;

            //获取修改时限 小时
            if (clsEMR_StaticObject.s_IntCanModifyTime <= 0)
            {
                com.digitalwave.PublicMiddleTier.clsPublicMiddleTier objPM =
                    (com.digitalwave.PublicMiddleTier.clsPublicMiddleTier)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(com.digitalwave.PublicMiddleTier.clsPublicMiddleTier));

                objPM.m_lngGetRTBChangeTime("3001", out strCanModifyTime);
            }
            else
            {
                strCanModifyTime = clsEMR_StaticObject.s_IntCanModifyTime.ToString();
            }

            m_strDoctorID = p_objLoginInfo.m_strEmpNo;
        }
        /// <summary>
        /// 给每一打印行的元素赋值
        /// </summary>
        private void m_mthSetPrintValue()
        {
            #region  第一次打印时间赋值
            dtmFirstPrintTime = DateTime.Now;
            if (m_objRecordContent != null && m_objRecordContent.m_dtmFirstPrintDate != DateTime.MinValue)
            {
                dtmFirstPrintTime = m_objRecordContent.m_dtmFirstPrintDate;
            }
            #endregion  第一次打印时间赋值

            #region 打印行初始化
            m_objLine1Arr = new clsPrintLine1[6];
            m_objLine2Arr = new clsPrintLine2[1];
            for (int i = 0; i < m_objLine1Arr.Length; i++)
            {
                m_objLine1Arr[i] = new clsPrintLine1();
            }


            m_objLine2Arr[0] = new clsPrintLine2(20);
            //m_objLine2Arr[1] = new clsPrintLine2(400);
            //m_objLine2Arr[2] = new clsPrintLine2(560);
            ////     m_objLine2Arr[3] = new clsPrintLine2(790);
            m_objPrintContext = new com.digitalwave.Utility.Controls.clsPrintContext(
                new com.digitalwave.Utility.Controls.clsPrintLineBase[] {
                m_objLine1Arr[1], m_objLine1Arr[3], m_objLine1Arr[4], m_objLine1Arr[2], m_objLine1Arr[5],
                m_objLine2Arr[0]
            });
            m_objPrintContext.m_ObjPrintSign = new com.digitalwave.Utility.Controls.clsPrintRecordSign();
            #endregion

            #region 给每一行的元素赋值
            string strBlanks = "            ";
            if (m_objRecordContent != null)
            {
                ///////////////1行/////////////////
                string strOutDate = "";
                //if (m_objRecordContent.m_dtmOutHospitalDate != DateTime.MinValue
                //    && m_objRecordContent.m_dtmOutHospitalDate != new DateTime(1900, 1, 1))
                //    strOutDate = m_objRecordContent.m_dtmOutHospitalDate.ToString("yyyy年MM月dd日");
                Object[] objData1 = new object[6];

                objData1[0] = "";
                objData1[1] = "";
                objData1[2] = dtmFirstPrintTime;
                objData1[3] = "入院日期: " + m_objPrintInfo.m_dtmHISInDate.ToString("yyyy年MM月dd日") + "           " + "手术时间: " + m_objRecordContent.m_dtmDiscussDate.ToString("yyyy年MM月dd日");
                m_objLine1Arr[1].m_ObjPrintLineInfo = objData1;

                ///////////////2行/////////////////
                objData1[0] = "    ";
                foreach (string str in m_objRecordContent.m_strAttendeeIDArr)
                {
                    com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                    clsEmrEmployeeBase_VO objEmpVO = null;
                    objEmployeeSign.m_lngGetEmpByNO(str, out objEmpVO);
                    //if (objEmpVO != null)
                    //    if (!(string.IsNullOrEmpty(objEmpVO.m_strGetTechnicalRankAndName)))
                    //        e.Graphics.DrawString(objEmpVO.m_strGetTechnicalRankAndName, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 500 + (int)(5f * 15.5f), m_intYPos);

                    objData1[0] += objEmpVO.m_strGetTechnicalRankAndName + " ";
                }
                objData1[1] = "";
                objData1[2] = dtmFirstPrintTime;
                objData1[3] = "手术者:";
                m_objLine1Arr[2].m_ObjPrintLineInfo = objData1;
                //////////////////////////////

                //////////////////////////////
                //objData1[0] = "    ";
                //com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign2 = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                //clsEmrEmployeeBase_VO objEmpVO2 = null;
                //objEmployeeSign2.m_lngGetEmpByNO(m_objRecordContent.m_strHuiBaoID, out objEmpVO2);
                ////if (objEmpVO != null)
                ////    if (!(string.IsNullOrEmpty(objEmpVO.m_strGetTechnicalRankAndName)))
                ////        e.Graphics.DrawString(objEmpVO.m_strGetTechnicalRankAndName, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 500 + (int)(5f * 15.5f), m_intYPos);

                //objData1[0] += objEmpVO2.m_strGetTechnicalRankAndName + " ";
                //objData1[1] = "";
                //objData1[2] = dtmFirstPrintTime;
                //objData1[3] = "病史汇报者:";
                //m_objLine1Arr[4].m_ObjPrintLineInfo = objData1;


                ///////////////3行/////////////////
                objData1[0] = m_objRecordContent.m_strShuQian;
                objData1[1] = m_objRecordContent.m_strShuQianXML;
                objData1[3] = "术前诊断:";
                m_objLine1Arr[3].m_ObjPrintLineInfo = objData1;
                /////////////////////////////////////
                objData1[0] = m_objRecordContent.m_strNiShi;
                objData1[1] = m_objRecordContent.m_strNiShiXML;
                objData1[3] = "拟施手术:";
                m_objLine1Arr[4].m_ObjPrintLineInfo = objData1;

                /////////////////////////////////////
                com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign2 = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                clsEmrEmployeeBase_VO objEmpVO2 = null;
                objEmployeeSign2.m_lngGetEmpByNO(m_objRecordContent.m_strCompereID, out objEmpVO2);

                objData1[0] = m_objRecordContent.m_strMaZui + "                                               \n  麻醉医师" + objEmpVO2.m_strGetTechnicalRankAndName;
                objData1[1] = "";
                objData1[3] = "麻醉方式:";
                m_objLine1Arr[5].m_ObjPrintLineInfo = objData1;


                ///////////////4行/////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[2] = dtmFirstPrintTime;
                m_objLine1Arr[0].m_ObjPrintLineInfo = objData1;

                ///////////////5行/////////////////
                objData1[0] = " 1、麻醉意外;" + "\n 2、造气腹和穿刺套管针所致并发症:" + "\n (1)皮下气肿,气胸,纵隔气肿,气体栓塞等;" + "\n (2)误伤腹腔内器官;" + "\n (3)血管损伤;腹壁血管、腹膜后大血管几肠系膜血管等;" + "\n (4)高碳酸血症;" +
                              "\n 3、术中操作所导致并发症:" + "\n (1)术中大出血、严重者乃至死亡;" + "\n (2)误伤病变部位周围器官(实、空腔脏器)。术中发现异常情况,如造气腹失败、病变为肿瘤、大血管损伤及脏器损伤、腹内粘连严重需要中转开腹;" + "\n (3)术中由于局部粘连,或水肿较甚,操作中勿伤胆总管,则行胆总管控查,T管引流术,并有可能长期置管,半年---1年;" +
                              "\n 4、术后并发症:" + "\n (1)操作孔感染;" + "\n (2)术后腹腔内大出血,必要时输血;" + "\n (3)胆漏,肠漏等;" + "\n (4)粘连性肠梗阻;" + "\n (5)术后肩部酸胀不适等;" + "\n 5、其他:" + "\n 以上并发症均可在术中、术后发生,严重者可危急生命,甚至死亡,如出现上述并发症,望患者及家属予以谅解,协助治疗。如同意手术,请签字,以此为据。";
                objData1[1] = "";
                objData1[3] = "术中可能发生以下并发症,特向本人及家属说明:";
                m_objLine2Arr[0].m_ObjPrintLineInfo = objData1;

                //objData1[0] = m_objRecordContent.m_strTaoLunYiJian;
                //objData1[1] = m_objRecordContent.m_strTaoLunYiJianXML;
                //objData1[3] = "讨论意见:";
                //m_objLine2Arr[1].m_ObjPrintLineInfo = objData1;
                /////////////////8行/////////////////
                //objData1[0] = m_objRecordContent.m_strTaoLunXiaoJie;
                //objData1[1] = m_objRecordContent.m_strTaoLunXiaoJieXML;
                //objData1[3] = "讨论小结:";
                //m_objLine2Arr[2].m_ObjPrintLineInfo = objData1;
            }
            else
            {
                ///////////////1行/////////////////
                Object[] objData1 = new object[5];
                //objData1[0] = "";
                //objData1[1] = "";
                //objData1[2] = dtmFirstPrintTime;
                //if (m_objPrintInfo.m_dtmHISInDate != DateTime.MinValue)
                //{
                //    objData1[3] = "入院日期:" + m_objPrintInfo.m_dtmHISInDate.ToString("yyyy年MM月dd日") + "           " + "出院日期:" + "    年  月  日";
                //}
                //else
                //{
                //    objData1[3] = "入院日期:" + "    年  月  日" + "           " + "出院日期:" + "    年  月  日";
                //}
                //m_objLine1Arr[1].m_ObjPrintLineInfo = objData1;

                ///////////////2行/////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[2] = dtmFirstPrintTime;
                objData1[3] = "入院日期:";
                m_objLine1Arr[1].m_ObjPrintLineInfo = objData1;
                ///////////////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[2] = dtmFirstPrintTime;
                objData1[3] = "手术者:";
                m_objLine1Arr[2].m_ObjPrintLineInfo = objData1;

                ///////////////3行/////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[3] = "术前诊断:";
                m_objLine1Arr[3].m_ObjPrintLineInfo = objData1;
                //////////////////////////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[3] = "拟施手术:";
                m_objLine1Arr[4].m_ObjPrintLineInfo = objData1;
                //////////////////////////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[3] = "麻醉方式:";
                m_objLine1Arr[5].m_ObjPrintLineInfo = objData1;
                ///////////////4行/////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[2] = dtmFirstPrintTime;
                //   objData1[3] = "  心电图号:" + strBlanks + "X光号:" + strBlanks;// +"主治医师:";
                m_objLine1Arr[0].m_ObjPrintLineInfo = objData1;
                ///////////////5行/////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[3] = "说明:";
                m_objLine2Arr[0].m_ObjPrintLineInfo = objData1;
                ///////////////6行/////////////////
            }

            #endregion
        }
        // 打印页
        private void m_mthPrintPageSub(PrintPageEventArgs e)
        {
            e.HasMorePages = false;
            m_mthPrintTitleInfo(e);
            Font fntNormal = new Font("SimSun", 12);

            if (m_intPages == 1)
            {
                m_intYPos += (int)enmRectangleInfo.RowStep - 20;
            }

            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY);

            while (m_objPrintContext.m_BlnHaveMoreLine)
            {
                m_objPrintContext.m_mthPrintNextLine(ref m_intYPos, e.Graphics, fntNormal);

                if (m_intYPos >= (int)enmRectangleInfo.BottomY &&
                    m_objPrintContext.m_BlnHaveMoreLine)
                {
                    #region 换页处理
                    e.HasMorePages = true;

                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.LeftX, m_intYPos);
                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.RightX, m_intYPos);
                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, m_intYPos, (int)enmRectangleInfo.RightX, m_intYPos);

                    m_intPages++;
                    m_intYPos = (int)enmRectangleInfo.TopY + 10;

                    clsPrintLine2.m_blnSinglePage = false;
                    return;

                    #endregion 换页处理
                }
            }

            #region 最后一页处理
            //  m_intYPos += 20;

            string strRecordName    = "                 ";
            string strGuanChangName = "";
            string strZhuRenName    = "";
            if (m_objRecordContent != null)
            {
                com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                clsEmrEmployeeBase_VO objEmpVO = null;
                objEmployeeSign.m_lngGetEmpByNO(m_objRecordContent.m_strRecordID, out objEmpVO);
                if (objEmpVO != null)
                {
                    strRecordName = objEmpVO.ToString();
                }
            }
            e.Graphics.DrawString("主管医师签字:" + strRecordName, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 5, m_intYPos);
            e.Graphics.DrawString(m_objRecordContent.m_dtmDoctorDate.ToString("yyyy-MM-dd"), new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 5, m_intYPos + 20);

            e.Graphics.DrawString("患者本人签字:", new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 290, m_intYPos);
            e.Graphics.DrawString("患者亲属代签:" + "              " + "与患者关系:             ", new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 290, m_intYPos + 20);
            e.Graphics.DrawString("患者单位主要负责人签字:", new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 290, m_intYPos + 40);
            e.Graphics.DrawString(m_objRecordContent.m_dtmHuanzheDate.ToString("yyyy-MM-dd"), new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 290, m_intYPos + 60);
            //			m_intYPos+=25;
            //			e.Graphics.DrawString("工  号:",new Font("SimSun",12) ,Brushes.Black,(int)enmRectangleInfo.LeftX+560,m_intYPos);
            //			if(m_objRecordContent!=null)
            //				e.Graphics.DrawString(m_objRecordContent.m_strDoctorID,new Font("SimSun",12) ,Brushes.Black,(int)enmRectangleInfo.LeftX+560+(int)(5f*17.5f),m_intYPos);
            /////////////////////////////////*******************************************
            m_intYPos += 50;
            if (m_intYPos < (int)enmRectangleInfo.BottomY)
            {
                m_intYPos = (int)enmRectangleInfo.BottomY;
            }
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.LeftX, m_intYPos);
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.RightX, m_intYPos);
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, m_intYPos, (int)enmRectangleInfo.RightX, m_intYPos);

            #endregion 最后一页处理

            m_intYPos += (int)enmRectangleInfo.RowStep + 15;
            Font fntSign = new Font("", 6);
            while (m_objPrintContext.m_BlnHaveMoreSign)
            {
                m_objPrintContext.m_mthPrintNextSign((int)enmRectangleInfo.LeftX, m_intYPos, e.Graphics, fntSign);

                m_intYPos += (int)enmRectangleInfo.RowStep - 10;
            }

            //全部打完
            m_objPrintContext.m_mthReset();
            m_intPages = 1;
            m_intYPos  = (int)enmRectangleInfo.TopY;
        }
Exemple #6
0
        // 打印页
        private void m_mthPrintPageSub(PrintPageEventArgs e)
        {
            e.HasMorePages = false;
            m_mthPrintTitleInfo(e);
            Font fntNormal = new Font("SimSun", 12);

            if (m_intPages == 1)
            {
                m_intYPos += (int)enmRectangleInfo.RowStep - 20;
            }

            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY);

            while (m_objPrintContext.m_BlnHaveMoreLine)
            {
                m_objPrintContext.m_mthPrintNextLine(ref m_intYPos, e.Graphics, fntNormal);

                if (m_intYPos >= (int)enmRectangleInfo.BottomY &&
                    m_objPrintContext.m_BlnHaveMoreLine)
                {
                    #region 换页处理
                    e.HasMorePages = true;

                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.LeftX, m_intYPos);
                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.RightX, m_intYPos);
                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, m_intYPos, (int)enmRectangleInfo.RightX, m_intYPos);

                    m_intPages++;
                    m_intYPos = (int)enmRectangleInfo.TopY + 10;

                    clsPrintLine2.m_blnSinglePage = false;
                    return;

                    #endregion 换页处理
                }
            }

            #region 最后一页处理
            m_intYPos += 30;

            string strMainName = "                 ";
            string strDocName  = "";
            if (m_objRecordContent != null)
            {
                com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                clsEmrEmployeeBase_VO objEmpVO = null;
                objEmployeeSign.m_lngGetEmpByNO(m_objRecordContent.m_strMainDoctorID, out objEmpVO);
                if (objEmpVO != null)
                {
                    strMainName = objEmpVO.m_strLASTNAME_VCHR;
                }
                objEmployeeSign.m_lngGetEmpByNO(m_objRecordContent.m_strDoctorID, out objEmpVO);
                if (objEmpVO != null)
                {
                    strDocName = objEmpVO.m_strLASTNAME_VCHR;
                }
            }
            e.Graphics.DrawString("主治医师:", new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 300, m_intYPos);

            Image imgEmpSig = ImageSignature.GetEmpSigImage(strMainName);
            if (imgEmpSig != null)
            {
                //imgEmpSig = ImageSignature.pictureProcess(imgEmpSig, 579, 268);
                e.Graphics.DrawImage(imgEmpSig, (int)enmRectangleInfo.LeftX + 380, m_intYPos - 2, 70, 30);
            }
            else
            {
                e.Graphics.DrawString(strMainName, m_fotSmallFont, Brushes.Black, (int)enmRectangleInfo.LeftX + 380, m_intYPos);
            }

            e.Graphics.DrawString("     医师签名:", new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 450, m_intYPos);
            imgEmpSig = ImageSignature.GetEmpSigImage(strDocName);
            if (imgEmpSig != null)
            {
                //imgEmpSig = ImageSignature.pictureProcess(imgEmpSig, 579, 268);
                e.Graphics.DrawImage(imgEmpSig, (int)enmRectangleInfo.LeftX + 580, m_intYPos - 2, 70, 30);
            }
            else
            {
                e.Graphics.DrawString(strDocName, m_fotSmallFont, Brushes.Black, (int)enmRectangleInfo.LeftX + 580, m_intYPos);
            }



//			m_intYPos+=25;
//			e.Graphics.DrawString("工  号:",new Font("SimSun",12) ,Brushes.Black,(int)enmRectangleInfo.LeftX+560,m_intYPos);
//			if(m_objRecordContent!=null)
//				e.Graphics.DrawString(m_objRecordContent.m_strDoctorID,new Font("SimSun",12) ,Brushes.Black,(int)enmRectangleInfo.LeftX+560+(int)(5f*17.5f),m_intYPos);
            /////////////////////////////////*******************************************
            m_intYPos += 50;
            if (m_intYPos < (int)enmRectangleInfo.BottomY)
            {
                m_intYPos = (int)enmRectangleInfo.BottomY;
            }
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.LeftX, m_intYPos);
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.RightX, m_intYPos);
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, m_intYPos, (int)enmRectangleInfo.RightX, m_intYPos);

            #endregion 最后一页处理

            m_intYPos += (int)enmRectangleInfo.RowStep + 15;
            Font fntSign = new Font("", 6);
            while (m_objPrintContext.m_BlnHaveMoreSign)
            {
                m_objPrintContext.m_mthPrintNextSign((int)enmRectangleInfo.LeftX, m_intYPos, e.Graphics, fntSign);

                m_intYPos += (int)enmRectangleInfo.RowStep - 10;
            }

            //全部打完
            m_objPrintContext.m_mthReset();
            m_intPages = 1;
            m_intYPos  = (int)enmRectangleInfo.TopY;
        }
Exemple #7
0
        // 打印页
        private void m_mthPrintPageSub(PrintPageEventArgs e)
        {
            e.HasMorePages = false;
            m_mthPrintTitleInfo(e);
            Font fntNormal = new Font("SimSun", 12);

            if (m_intPages == 1)
            {
                m_intYPos += (int)enmRectangleInfo.RowStep + 5;
                e.Graphics.DrawLine(m_LinePen, (int)enmRectangleInfo.LeftX, 206, (int)enmRectangleInfo.RightX, 206);
                e.Graphics.DrawLine(m_LinePen, (int)enmRectangleInfo.LeftX, 235, (int)enmRectangleInfo.RightX, 235);
            }

            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY);


            while (m_objPrintContext.m_BlnHaveMoreLine)
            {
                m_objPrintContext.m_mthPrintNextLine(ref m_intYPos, e.Graphics, fntNormal);

                if (m_intYPos >= (int)enmRectangleInfo.BottomY &&
                    m_objPrintContext.m_BlnHaveMoreLine)
                {
                    #region 换页处理
                    e.HasMorePages = true;

                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.LeftX, m_intYPos);
                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.RightX, m_intYPos);
                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, m_intYPos, (int)enmRectangleInfo.RightX, m_intYPos);

                    m_intPages++;
                    m_intYPos = (int)enmRectangleInfo.TopY + 30;
                    return;

                    #endregion 换页处理
                }
            }

            #region 最后一页处理
            m_intYPos += 30;
            e.Graphics.DrawString("医师签名:", new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 460, m_intYPos);
            if (m_objRecordContent != null)
            {
                com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                clsEmrEmployeeBase_VO objEmpVO = null;
                objEmployeeSign.m_lngGetEmpByNO(m_objRecordContent.m_strDoctorID, out objEmpVO);
                if (objEmpVO != null)
                {
                    Image imgEmpSig = ImageSignature.GetEmpSigImage(objEmpVO.m_strLASTNAME_VCHR);
                    if (imgEmpSig != null)
                    {
                        //imgEmpSig = ImageSignature.pictureProcess(imgEmpSig, 579, 268);
                        e.Graphics.DrawString(objEmpVO.m_strTechnicalRank, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 540, m_intYPos);
                        e.Graphics.DrawImage(imgEmpSig, (int)enmRectangleInfo.LeftX + 620, m_intYPos - 2, 70, 30);
                    }
                    else
                    {
                        e.Graphics.DrawString(m_objRecordContent.m_strDoctorName, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 460 + (int)(5f * 17.5f), m_intYPos);
                    }
                }
            }

            m_intYPos += 25;
            if (m_intYPos < (int)enmRectangleInfo.BottomY)
            {
                m_intYPos = (int)enmRectangleInfo.BottomY;
            }
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.LeftX, m_intYPos);
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY, (int)enmRectangleInfo.RightX, m_intYPos);
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, m_intYPos, (int)enmRectangleInfo.RightX, m_intYPos);

            #endregion 最后一页处理

            m_intYPos += (int)enmRectangleInfo.RowStep + 15;
            Font fntSign = new Font("", 6);
            while (m_objPrintContext.m_BlnHaveMoreSign)
            {
                m_objPrintContext.m_mthPrintNextSign((int)enmRectangleInfo.LeftX, m_intYPos, e.Graphics, fntSign);

                m_intYPos += (int)enmRectangleInfo.RowStep - 10;
            }

            //全部打完
            m_objPrintContext.m_mthReset();
            m_intPages = 1;
            m_intYPos  = (int)enmRectangleInfo.TopY;
        }
        // 打印页
        private void m_mthPrintPageSub(PrintPageEventArgs e)
        {
            e.HasMorePages = false;
            m_mthPrintTitleInfo(e);
            Font fntNormal = new Font("SimSun", 12);

            if (m_intPages == 1)
            {
                m_intYPos = 240;
                // e.Graphics.DrawLine(m_LinePen, (int)enmRectangleInfo.LeftX, 206, (int)enmRectangleInfo.RightX, 206);
                //  e.Graphics.DrawLine(m_LinePen, (int)enmRectangleInfo.LeftX, 235, (int)enmRectangleInfo.RightX, 235);
                m_mthPrintBasicInfo(e);
            }



            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, 115, (int)enmRectangleInfo.RightX, 115);


            while (m_objPrintContext.m_BlnHaveMoreLine)
            {
                m_objPrintContext.m_mthPrintNextLine(ref m_intYPos, e.Graphics, fntNormal);

                if (m_intYPos >= (int)enmRectangleInfo.BottomY &&
                    m_objPrintContext.m_BlnHaveMoreLine)
                {
                    #region 换页处理
                    e.HasMorePages = true;

                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, 115, (int)enmRectangleInfo.LeftX, m_intYPos);
                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.RightX, 115, (int)enmRectangleInfo.RightX, m_intYPos);
                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, m_intYPos, (int)enmRectangleInfo.RightX, m_intYPos);

                    m_intPages++;
                    m_intYPos = (int)enmRectangleInfo.TopY + 20;
                    return;

                    #endregion 换页处理
                }
            }

            #region 最后一页处理
            m_intYPos += 30;
            e.Graphics.DrawString("医师签名:", new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 440, m_intYPos);

            if (m_objRecordContentOutIn24 != null)
            {
                com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                clsEmrEmployeeBase_VO objEmpVO = null;
                objEmployeeSign.m_lngGetEmpByNO(m_objRecordContentOutIn24.m_strDOCTORSIGN, out objEmpVO);
                if (objEmpVO != null)
                {
                    if (!(string.IsNullOrEmpty(objEmpVO.m_strGetTechnicalRankAndName)))
                    {
                        e.Graphics.DrawString(objEmpVO.m_strGetTechnicalRankAndName, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 440 + (int)(5f * 17.5f), m_intYPos);
                    }
                }
            }

            m_intYPos += 30;
            e.Graphics.DrawString("记录日期:", new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 440, m_intYPos);
            if (m_objRecordContentOutIn24 != null)
            {
                e.Graphics.DrawString(m_objRecordContentOutIn24.m_dtmRECORDDATE.ToString("yyyy年MM月dd日HH时mm分"), new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 440 + (int)(5f * 17.5f), m_intYPos);
            }

            m_intYPos += 25;
            if (m_intYPos < (int)enmRectangleInfo.BottomY)
            {
                m_intYPos = (int)enmRectangleInfo.BottomY;
            }
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, 115, (int)enmRectangleInfo.LeftX, m_intYPos);
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.RightX, 115, (int)enmRectangleInfo.RightX, m_intYPos);
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, m_intYPos, (int)enmRectangleInfo.RightX, m_intYPos);

            #endregion 最后一页处理

            m_intYPos += (int)enmRectangleInfo.RowStep + 15;
            Font fntSign = new Font("", 6);
            while (m_objPrintContext.m_BlnHaveMoreSign)
            {
                m_objPrintContext.m_mthPrintNextSign((int)enmRectangleInfo.LeftX, m_intYPos, e.Graphics, fntSign);

                m_intYPos += (int)enmRectangleInfo.RowStep - 10;
            }

            //全部打完
            m_objPrintContext.m_mthReset();
            m_intPages = 1;
            m_intYPos  = (int)enmRectangleInfo.TopY;
        }
Exemple #9
0
        /// <summary>
        /// 标题文字部分
        /// </summary>
        /// <param name="e"></param>
        private void m_mthPrintTitleInfo(System.Drawing.Printing.PrintPageEventArgs e)
        {
            e.Graphics.DrawString(clsSystemContext.s_ObjCurrentContext.m_ObjHospitalInfo.m_StrHospitalTitle, m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Page_HospitalName));

            e.Graphics.DrawString("死 亡 病 例 讨 论 记 录", m_fotTitleFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Page_Name_Title));

            e.Graphics.DrawString("姓名:", m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Name_Title));

            e.Graphics.DrawString(m_objPrintInfo.m_strPatientName, m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Name));

            e.Graphics.DrawString("性别:", m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Sex_Title));

            e.Graphics.DrawString(m_objPrintInfo.m_strSex, m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Sex));

            e.Graphics.DrawString("年龄:", m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Age_Title));

            e.Graphics.DrawString(m_objPrintInfo.m_strAge, m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Age));

            e.Graphics.DrawString("病区:", m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Area_Title));

            e.Graphics.DrawString(m_objPrintInfo.m_strAreaName, m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Area));

            e.Graphics.DrawString("床号:", m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Bed_Title));

            e.Graphics.DrawString(m_objPrintInfo.m_strBedName, m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Bed));

            e.Graphics.DrawString("住院号:", m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.InPatientID_Title));

            e.Graphics.DrawString(m_objPrintInfo.m_strHISInPatientID, m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.InPatientID));

            if (m_intPages == 1)
            {
                e.Graphics.DrawString("姓名:", m_fotSmallFont, m_slbBrush, 120, 145);

                e.Graphics.DrawString(m_objPrintInfo.m_strPatientName, m_fotSmallFont, m_slbBrush, 170, 145);

                e.Graphics.DrawString("性别:", m_fotSmallFont, m_slbBrush, 120, 165);

                e.Graphics.DrawString(m_objPrintInfo.m_strSex, m_fotSmallFont, m_slbBrush, 170, 165);

                e.Graphics.DrawString("年龄:", m_fotSmallFont, m_slbBrush, 120, 185);

                e.Graphics.DrawString(m_objPrintInfo.m_strAge, m_fotSmallFont, m_slbBrush, 170, 185);

                e.Graphics.DrawString("入院时间:", m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.InpatientDate_Title));

                e.Graphics.DrawString((m_objPrintInfo.m_strHISInPatientID == "" ? "" : m_objPrintInfo.m_dtmHISInDate.ToString("yyyy年MM月dd日 HH:mm")), m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.InpatientDate));

                e.Graphics.DrawString("死亡时间:", m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.DeathTime_Title));
                if (m_objRecordContent != null)
                {
                    e.Graphics.DrawString(m_objRecordContent.m_dtmDeadDate.ToString("yyyy年MM月dd日 HH时mm分ss秒"), m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.DeathTime));
                }

                e.Graphics.DrawString("讨论时间:", m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.DiscussTime_Title));
                if (m_objRecordContent != null)
                {
                    e.Graphics.DrawString(m_objRecordContent.m_dtmDiscussDate.ToString("yyyy年MM月dd日 HH:mm"), m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.DiscussTime));
                }


                e.Graphics.DrawString("讨论地点:", m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.DiscussAddress_Title));
                if (m_objRecordContent != null)
                {
                    e.Graphics.DrawString(m_objRecordContent.m_strDiscussAddress, m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.DiscussAddress));
                }

                e.Graphics.DrawString("主持人:", m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Comperetor_Title));
                if (m_objRecordContent != null)
                {
                    // e.Graphics.DrawString(m_objRecordContent.m_strCompereName, m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Comperetor));
                    com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                    clsEmrEmployeeBase_VO objEmpVO = null;
                    objEmployeeSign.m_lngGetEmpByNO(m_objRecordContent.m_strCompereID, out objEmpVO);
                    if (objEmpVO != null)
                    {
                        if (!(string.IsNullOrEmpty(objEmpVO.m_strGetTechnicalRankAndName)))
                        {
                            // e.Graphics.DrawString(objEmpVO.m_strGetTechnicalRankAndName, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 500 + (int)(5f * 15.5f), m_intYPos);
                            e.Graphics.DrawString(objEmpVO.m_strGetTechnicalRankAndName, m_fotSmallFont, m_slbBrush, m_objPageSetting.m_getCoordinatePoint((int)enmItemDefination.Comperetor));
                        }
                    }
                }
                m_intYPos += 60;
            }
        }
Exemple #10
0
        /// <summary>
        /// 给每一打印行的元素赋值
        /// </summary>
        private void m_mthSetPrintValue()
        {
            #region  第一次打印时间赋值
            dtmFirstPrintTime = DateTime.Now;
            if (m_objRecordContent != null && m_objRecordContent.m_dtmFirstPrintDate != DateTime.MinValue)
            {
                dtmFirstPrintTime = m_objRecordContent.m_dtmFirstPrintDate;
            }
            #endregion  第一次打印时间赋值

            #region 打印行初始化
            m_objLine1Arr = new clsPrintLine1[6];
            m_objLine2Arr = new clsPrintLine2[6];
            for (int i = 0; i < m_objLine1Arr.Length; i++)
            {
                m_objLine1Arr[i] = new clsPrintLine1();
            }


            m_objLine2Arr[0] = new clsPrintLine2(270);
            m_objLine2Arr[1] = new clsPrintLine2(340);
            m_objLine2Arr[2] = new clsPrintLine2(500);
            m_objLine2Arr[3] = new clsPrintLine2(750);
            m_objLine2Arr[4] = new clsPrintLine2(860);
            m_objLine2Arr[5] = new clsPrintLine2(900);

            m_objPrintContext = new com.digitalwave.Utility.Controls.clsPrintContext(
                new com.digitalwave.Utility.Controls.clsPrintLineBase[] {
                m_objLine1Arr[0], m_objLine1Arr[1], m_objLine1Arr[2], m_objLine1Arr[3], m_objLine1Arr[4],
                m_objLine1Arr[5],                          //,m_objLine1Arr[6]
                m_objLine2Arr[0], m_objLine2Arr[1], m_objLine2Arr[2], m_objLine2Arr[3], m_objLine2Arr[4],
                m_objLine2Arr[5]
            });
            m_objPrintContext.m_ObjPrintSign = new com.digitalwave.Utility.Controls.clsPrintRecordSign();
            #endregion

            #region 给每一行的元素赋值
            string strBlanks = "                   ";
            if (m_objRecordContent != null)
            {
                ///////////////1行/////////////////
                Object[] objData1 = new object[4];
                objData1[0] = "    ";
                foreach (string str in m_objRecordContent.m_strAttendeeIDArr)
                {
                    com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                    clsEmrEmployeeBase_VO objEmpVO = null;
                    objEmployeeSign.m_lngGetEmpByNO(str, out objEmpVO);
                    //if (objEmpVO != null)
                    //    if (!(string.IsNullOrEmpty(objEmpVO.m_strGetTechnicalRankAndName)))
                    //        e.Graphics.DrawString(objEmpVO.m_strGetTechnicalRankAndName, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 500 + (int)(5f * 15.5f), m_intYPos);

                    objData1[0] += objEmpVO.m_strGetTechnicalRankAndName + " ";
                }
                objData1[1] = "";
                objData1[2] = dtmFirstPrintTime;
                objData1[3] = "参加人员:";
                m_objLine2Arr[0].m_ObjPrintLineInfo = objData1;


                ///////////////3行/////////////////
                objData1[0] = m_objRecordContent.m_strInHospitalDiagnose;
                objData1[1] = m_objRecordContent.m_strInHospitalDiagnoseXML;
                objData1[3] = "入院诊断:";
                m_objLine2Arr[1].m_ObjPrintLineInfo = objData1;

                ///////////////4行/////////////////
                objData1[0] = m_objRecordContent.m_strSpeakRecord;
                objData1[1] = m_objRecordContent.m_strSpeakRecordXML;
                objData1[2] = dtmFirstPrintTime;
                objData1[3] = "发言记录";
                m_objLine2Arr[2].m_ObjPrintLineInfo = objData1;

                ///////////////5行/////////////////
                objData1[0] = m_objRecordContent.m_strVerdict;
                objData1[1] = m_objRecordContent.m_strVerdictXML;
                objData1[3] = "结论:";
                m_objLine2Arr[3].m_ObjPrintLineInfo = objData1;

                ///////////////6行/////////////////
                objData1[0] = m_objRecordContent.m_strDeadDiagnose;
                objData1[1] = m_objRecordContent.m_strDeadDiagnoseXML;
                objData1[3] = "死亡诊断:";
                m_objLine2Arr[4].m_ObjPrintLineInfo = objData1;

                ///////////////7行/////////////////
                objData1[0] = m_objRecordContent.m_strDeadReason;
                objData1[1] = m_objRecordContent.m_strDeadDiagnoseXML;
                objData1[3] = "死亡原因:";
                m_objLine2Arr[5].m_ObjPrintLineInfo = objData1;

                ///////////////2行/////////////////
                //objData1[0] = m_objRecordContent.m_strExperience;
                //objData1[1] = m_objRecordContent.m_strExperienceXML;
                //objData1[2] = dtmFirstPrintTime;
                //objData1[3] = "经验教训:";
                //m_objLine1Arr[6].m_ObjPrintLineInfo = objData1;
            }
            else
            {
                ///////////////1行/////////////////
                Object[] objData1 = new object[4];
                objData1[0] = "";
                objData1[1] = "";
                objData1[2] = dtmFirstPrintTime;
                objData1[3] = "参加人员:";
                m_objLine2Arr[0].m_ObjPrintLineInfo = objData1;

                ///////////////2行/////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[2] = dtmFirstPrintTime;
                objData1[3] = "入院诊断:";
                m_objLine2Arr[1].m_ObjPrintLineInfo = objData1;

                ///////////////3行/////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[3] = "发言记录";
                m_objLine2Arr[2].m_ObjPrintLineInfo = objData1;
                ///////////////4行/////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[2] = dtmFirstPrintTime;
                objData1[3] = "结论:";
                m_objLine2Arr[3].m_ObjPrintLineInfo = objData1;
                ///////////////5行/////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[3] = "死亡诊断:";
                m_objLine2Arr[4].m_ObjPrintLineInfo = objData1;
                ///////////////6行/////////////////
                objData1[0] = "";
                objData1[1] = "";
                objData1[3] = "死亡原因:";
                m_objLine2Arr[5].m_ObjPrintLineInfo = objData1;
                ///////////////7行/////////////////
                //objData1[0] = "";
                //objData1[1] = "";
                //objData1[3] = "经验教训:";
                //m_objLine1Arr[6].m_ObjPrintLineInfo = objData1;
            }

            #endregion
        }
Exemple #11
0
        // 打印页
        private void m_mthPrintPageSub(PrintPageEventArgs e)
        {
            e.HasMorePages = false;
            m_mthPrintTitleInfo(e);
            Font fntNormal = new Font("SimSun", 12);

            if (m_intPages == 1)
            {
                m_intYPos += (int)enmRectangleInfo.RowStep - 20;
            }

            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY - 30, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY - 30);


            while (m_objPrintContext.m_BlnHaveMoreLine)
            {
                m_objPrintContext.m_mthPrintNextLine(ref m_intYPos, e.Graphics, fntNormal);

                if (m_intYPos >= (int)enmRectangleInfo.BottomY &&
                    m_objPrintContext.m_BlnHaveMoreLine)
                {
                    #region 换页处理
                    e.HasMorePages = true;

                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY - 30, (int)enmRectangleInfo.LeftX, m_intYPos);
                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY - 30, (int)enmRectangleInfo.RightX, m_intYPos);
                    e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, m_intYPos, (int)enmRectangleInfo.RightX, m_intYPos);
                    //					e.Graphics.DrawString("(第"+m_intPages.ToString()+"页)",m_fotSmallFont ,m_slbBrush,(int)enmRectangleInfo.LeftX+500 ,m_intYPos+20);
                    m_intPages++;
                    m_intYPos = (int)enmRectangleInfo.TopY - 20;
                    clsPrintLine2.m_blnSinglePage = false;
                    return;

                    #endregion 换页处理
                }
            }

            #region 最后一页处理
            m_intYPos += 30;
            e.Graphics.DrawString("记录者:", new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 498, m_intYPos);
            if (m_objRecordContent != null)
            {
                //    e.Graphics.DrawString(m_objRecordContent.m_strRecorderName, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 560 + (int)(5f * 17.5f), m_intYPos);

                com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                clsEmrEmployeeBase_VO objEmpVO = null;
                objEmployeeSign.m_lngGetEmpByNO(m_objRecordContent.m_strRecorderID, out objEmpVO);
                if (objEmpVO != null)
                {
                    Image imgEmpSig = ImageSignature.GetEmpSigImage(objEmpVO.m_strLASTNAME_VCHR);
                    if (imgEmpSig != null)
                    {
                        //imgEmpSig = ImageSignature.pictureProcess(imgEmpSig, 579, 268);
                        e.Graphics.DrawString(objEmpVO.m_strTechnicalRank, new Font("SimSun", 12, FontStyle.Bold), Brushes.Black, (int)enmRectangleInfo.LeftX + 560, m_intYPos);
                        e.Graphics.DrawImage(imgEmpSig, (int)enmRectangleInfo.LeftX + 650, m_intYPos - 5, 70, 30);
                    }
                    else
                    {
                        if (!(string.IsNullOrEmpty(objEmpVO.m_strGetTechnicalRankAndName)))
                        {
                            e.Graphics.DrawString(objEmpVO.m_strGetTechnicalRankAndName, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 498 + (int)(5f * 17.5f), m_intYPos);
                        }
                    }
                }
            }

            m_intYPos += 30;

            e.Graphics.DrawString("主持人审阅签名:", new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 430, m_intYPos);
            if (m_objRecordContent != null)
            {
                //e.Graphics.DrawString(m_objRecordContent.m_strCompereSignName, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 560 + (int)(5f * 17.5f), m_intYPos);
                com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain objEmployeeSign = new com.digitalwave.emr.BEDExplorer.clsHospitalManagerDomain();
                clsEmrEmployeeBase_VO objEmpVO = null;
                objEmployeeSign.m_lngGetEmpByNO(m_objRecordContent.m_strCompereSignID, out objEmpVO);
                if (objEmpVO != null)
                {
                    Image imgEmpSig = ImageSignature.GetEmpSigImage(objEmpVO.m_strLASTNAME_VCHR);
                    if (imgEmpSig != null)
                    {
                        //imgEmpSig = ImageSignature.pictureProcess(imgEmpSig, 579, 268);
                        e.Graphics.DrawString(objEmpVO.m_strTechnicalRank, new Font("SimSun", 12, FontStyle.Bold), Brushes.Black, (int)enmRectangleInfo.LeftX + 560, m_intYPos);
                        e.Graphics.DrawImage(imgEmpSig, (int)enmRectangleInfo.LeftX + 650, m_intYPos - 5, 70, 30);
                    }
                    else
                    {
                        if (!(string.IsNullOrEmpty(objEmpVO.m_strGetTechnicalRankAndName)))
                        {
                            e.Graphics.DrawString(objEmpVO.m_strGetTechnicalRankAndName, new Font("SimSun", 12), Brushes.Black, (int)enmRectangleInfo.LeftX + 500 + (int)(5f * 15.5f), m_intYPos);
                        }
                    }
                }
            }

            m_intYPos += 25;
            if (m_intYPos < (int)enmRectangleInfo.BottomY)
            {
                m_intYPos = (int)enmRectangleInfo.BottomY;
            }
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, (int)enmRectangleInfo.TopY - 30, (int)enmRectangleInfo.LeftX, m_intYPos);
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.RightX, (int)enmRectangleInfo.TopY - 30, (int)enmRectangleInfo.RightX, m_intYPos);
            e.Graphics.DrawLine(m_GridPen, (int)enmRectangleInfo.LeftX, m_intYPos, (int)enmRectangleInfo.RightX, m_intYPos);

            //			e.Graphics.DrawString("(第"+m_intPages.ToString()+"页)",m_fotSmallFont ,m_slbBrush,(int)enmRectangleInfo.LeftX+350 ,m_intYPos+20);
            #endregion 最后一页处理

            m_intYPos += (int)enmRectangleInfo.RowStep + 15;
            Font fntSign = new Font("", 6);
            while (m_objPrintContext.m_BlnHaveMoreSign)
            {
                m_objPrintContext.m_mthPrintNextSign((int)enmRectangleInfo.LeftX, m_intYPos, e.Graphics, fntSign);

                m_intYPos += (int)enmRectangleInfo.RowStep - 10;
            }

            //全部打完
            m_objPrintContext.m_mthReset();
            m_intPages = 1;
            m_intYPos  = (int)enmRectangleInfo.TopY;
        }