Example #1
0
 public clsCreatFile()
 {
     //
     // TODO: 在此处添加构造函数逻辑
     //
     objSvc = new clsDcl_ShowReports();
 }
Example #2
0
 public clsCtl_ShowCaseHistory()
 {
     objSvc = new clsDcl_ShowReports();
     //
     // TODO: 在此处添加构造函数逻辑
     //
 }
Example #3
0
 public clsCtl_ShowReports()
 {
     objSvc              = new clsDcl_ShowReports();
     m_objAge            = new clsBrithdayToAge();
     objCalPatientCharge = new clsCalcPatientCharge(string.Empty, "0001", 100, this.m_objComInfo.m_strGetHospitalTitle(), 1, 100);
     //
     // TODO: 在此处添加构造函数逻辑
     //
 }
Example #4
0
        public static void m_mthGetRecipeInfoByCaseHistoryID(string strID, out ArrayList a1, out ArrayList a2)
        {
            DataTable          dt;
            clsDcl_ShowReports objSvc = new clsDcl_ShowReports();
            long ret = objSvc.m_mthGetRecipeInfoByCaseHistoryID(strID, out dt);

            a1 = new ArrayList();
            a2 = new ArrayList();
            if (ret > 0 && dt.Rows.Count > 0)
            {
                string strTempID = dt.Rows[0]["OUTPATRECIPEID_CHR"].ToString().Trim();
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    if (dt.Rows[i]["SEQID_CHR"].ToString().Trim() == "1")
                    {
                        continue;
                    }
                    if (strTempID != dt.Rows[i]["OUTPATRECIPEID_CHR"].ToString().Trim())
                    {
                        clsOutpatientPrintRecipeDetail_VO objSpilt = null;

                        if (a1.Count > 0)
                        {
                            a1.Add(objSpilt);
                        }
                        if (a2.Count > 0)
                        {
                            a2.Add(objSpilt);
                        }
                        strTempID = dt.Rows[i]["OUTPATRECIPEID_CHR"].ToString().Trim();
                    }

                    clsOutpatientPrintRecipeDetail_VO objtemp = new clsOutpatientPrintRecipeDetail_VO();
                    objtemp.m_strChargeName = dt.Rows[i]["ITEMNAME"].ToString().Trim();
                    objtemp.m_strCount      = dt.Rows[i]["QUANTITY"].ToString().Trim() + dt.Rows[i]["UNIT"].ToString().Trim();
                    objtemp.m_strPrice      = "";
                    objtemp.m_strSumPrice   = "";
                    objtemp.m_strUnit       = dt.Rows[i]["UNIT"].ToString().Trim();
                    objtemp.m_strFrequency  = dt.Rows[i]["FREQNAME_CHR"].ToString().Trim();
                    objtemp.m_strDosage     = dt.Rows[i]["QTY_DEC"].ToString().Trim() + dt.Rows[i]["DOSAGEUNIT_CHR"].ToString().Trim();
                    objtemp.m_strDays       = dt.Rows[i]["DAYS_INT"].ToString().Trim() + "天";
                    objtemp.m_strSpec       = dt.Rows[i]["DEC"].ToString().Trim();
                    objtemp.m_strUsage      = dt.Rows[i]["USAGENAME_VCHR"].ToString().Trim();
                    objtemp.m_strRowNo      = dt.Rows[i]["ROWNO_CHR"].ToString().Trim();
                    objtemp.m_strInvoiceCat = dt.Rows[i]["invtype"].ToString().Trim();
                    if (dt.Rows[i]["SEQID_CHR"].ToString().Trim() == "2")
                    {
                        a2.Add(objtemp);
                    }
                    else
                    {
                        a1.Add(objtemp);
                    }
                }
            }
        }
Example #5
0
        private clsOutpatientPrintRecipe_VO m_mthGetPrintVo(string strID)
        {
            clsOutpatientPrintRecipe_VO obj_VO = new clsOutpatientPrintRecipe_VO();

            objSvc = new clsDcl_ShowReports();
            DataTable dt;
            long      ret = objSvc.m_mthGetRecipeInfo(strID, out dt);

            if (ret > 0 && dt.Rows.Count > 0)
            {
                obj_VO.m_strDiagDeptID  = dt.Rows[0]["DEPTNAME_CHR"].ToString().Trim();
                obj_VO.m_strDiagDrName  = dt.Rows[0]["DOCTORNAME_CHR"].ToString().Trim();
                obj_VO.m_strRegisterID  = "";
                obj_VO.m_strSelfPay     = dt.Rows[0]["SBSUM_MNY"].ToString().Trim();
                obj_VO.m_strChargeUp    = dt.Rows[0]["ACCTSUM_MNY"].ToString().Trim();
                obj_VO.m_strRecipePrice = dt.Rows[0]["TOTALSUM_MNY"].ToString().Trim();
                obj_VO.m_strPrintDate   = dt.Rows[0]["INVDATE_DAT"].ToString().Trim().Substring(0, 10);
                obj_VO.m_strAddress     = dt.Rows[0]["HOMEADDRESS_VCHR"].ToString().Trim();
                obj_VO.m_strGOVCARD     = dt.Rows[0]["GOVCARD_CHR"].ToString().Trim();
                obj_VO.m_strINSURANCEID = dt.Rows[0]["INSURANCEID_VCHR"].ToString().Trim();
                DateTime dteBirth = Convert.ToDateTime(dt.Rows[0]["BIRTH_DAT"].ToString());
                obj_VO.m_strAge                 = clsCreatFile.s_strCalAge(dteBirth);
                obj_VO.m_strCardID              = dt.Rows[0]["PATIENTCARDID_CHR"].ToString().Trim();
                obj_VO.m_strHospitalName        = strHospitalName;
                obj_VO.m_strPatientName         = dt.Rows[0]["LASTNAME_VCHR"].ToString().Trim();
                obj_VO.m_strSex                 = dt.Rows[0]["SEX_CHR"].ToString().Trim();
                obj_VO.m_strRecipeType          = dt.Rows[0]["RECIPEFLAG_INT"].ToString().Trim();
                obj_VO.m_strHerbalmedicineUsage = "";
                obj_VO.strInvoiceNO             = dt.Rows[0]["INVOICENO_VCHR"].ToString().Trim();
                obj_VO.m_strRecordEmpID         = dt.Rows[0]["TYPENAME_VCHR"].ToString().Trim();
                obj_VO.m_strPatientType         = dt.Rows[0]["PAYTYPENAME_VCHR"].ToString().Trim();
                obj_VO.m_strdiagnose            = dt.Rows[0]["DIAG_VCHR"].ToString().Trim();
            }



            obj_VO.m_strTimes = "1";

            obj_VO.m_strRecipeID = strID;

            clsDcl_DoctorWorkstation objDKSvc = new clsDcl_DoctorWorkstation();

            dt = null;
            decimal decWMedicineCost  = 0;
            decimal decZCMedicineCost = 0;
            decimal decCureCost       = 0;

            System.Collections.ArrayList objPRDArr = new System.Collections.ArrayList();
            string[] IDarr = null;
            objSvc.m_mthGetRecipeGroup(strID, out IDarr);
            foreach (string TempID in IDarr)
            {
                ret = objDKSvc.m_mthFindRecipeDetail1(TempID, out dt, true);             //西药
                if (ret > 0 && dt.Rows.Count > 0)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        clsOutpatientPrintRecipeDetail_VO objtemp = new clsOutpatientPrintRecipeDetail_VO();
                        objtemp.m_strChargeName = dt.Rows[i]["ITEMNAME_VCHR"].ToString().Trim();
                        objtemp.m_strCount      = dt.Rows[i]["TOLQTY_DEC"].ToString().Trim() + dt.Rows[i]["UNITID_CHR"].ToString();
                        objtemp.m_strPrice      = clsConvertToDecimal.m_mthConvertObjToDecimal(dt.Rows[i]["UNITPRICE_MNY"]).ToString("0.00");
                        objtemp.m_strSumPrice   = dt.Rows[i]["TOLPRICE_MNY"].ToString().Trim();
                        objtemp.m_strUnit       = dt.Rows[i]["DOSAGEUNIT_CHR"].ToString().Trim();
                        objtemp.m_strFrequency  = dt.Rows[i]["FREQNAME_CHR"].ToString().Trim();
                        objtemp.m_strDosage     = dt.Rows[i]["QTY_DEC"].ToString().Trim() + dt.Rows[i]["DOSAGEUNIT_CHR"].ToString().Trim();
                        objtemp.m_strDays       = dt.Rows[i]["DAYS_INT"].ToString().Trim();
                        objtemp.m_strSpec       = dt.Rows[i]["ITEMSPEC_VCHR"].ToString().Trim();
                        objtemp.m_strUsage      = dt.Rows[i]["USAGENAME_VCHR"].ToString().Trim();
                        objtemp.m_strRowNo      = dt.Rows[i]["ROWNO_CHR"].ToString().Trim();
                        objtemp.m_strInvoiceCat = dt.Rows[i]["ITEMOPINVTYPE_CHR"].ToString().Trim();
                        decWMedicineCost       += clsConvertToDecimal.m_mthConvertObjToDecimal(dt.Rows[i]["TOLPRICE_MNY"]);
                        objPRDArr.Add(objtemp);
                    }
                }
            }

            System.Collections.ArrayList objPRDArr2 = new   System.Collections.ArrayList();
            foreach (string TempID in IDarr)
            {
                ret = objDKSvc.m_mthFindRecipeDetail2(TempID, out dt, true);             //中药
                if (ret > 0 && dt.Rows.Count > 0)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        clsOutpatientPrintRecipeDetail_VO objtemp = new clsOutpatientPrintRecipeDetail_VO();
                        objtemp.m_strChargeName = dt.Rows[i]["ITEMNAME"].ToString().Trim();
                        objtemp.m_strDosage     = dt.Rows[i]["MIN_QTY_DEC"].ToString().Trim() + dt.Rows[i]["UNIT"].ToString();
                        objtemp.m_strPrice      = dt.Rows[i]["price"].ToString().Trim();
                        objtemp.m_strSumPrice   = dt.Rows[i]["SUMMONEY"].ToString().Trim();
                        objtemp.m_strUsage      = dt.Rows[i]["USAGENAME_VCHR"].ToString();
                        objtemp.m_strRowNo      = dt.Rows[i]["ROWNO_CHR"].ToString();
                        objtemp.m_strInvoiceCat = dt.Rows[i]["ITEMOPINVTYPE_CHR"].ToString().Trim();
                        decZCMedicineCost      += clsConvertToDecimal.m_mthConvertObjToDecimal(dt.Rows[i]["SUMMONEY"]);
                        objPRDArr2.Add(objtemp);
                    }
                }
            }


            obj_VO.objinjectArr = new System.Collections.ArrayList();
            foreach (string TempID in IDarr)
            {
                ret = objDKSvc.m_mthFindRecipeDetail3(TempID, out dt, true);
                if (ret > 0 && dt.Rows.Count > 0)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        clsOutpatientPrintRecipeDetail_VO objtemp = new clsOutpatientPrintRecipeDetail_VO();
                        objtemp.m_strChargeName = dt.Rows[i]["ITEMNAME"].ToString();;
                        objtemp.m_strCount      = dt.Rows[i]["quantity"].ToString().Trim();
                        objtemp.m_strPrice      = dt.Rows[i]["PRICE"].ToString();
                        objtemp.m_strSumPrice   = dt.Rows[i]["SUMMONEY"].ToString().Trim();
                        objtemp.m_strUnit       = dt.Rows[i]["UNIT"].ToString().Trim();
                        objtemp.m_strInvoiceCat = dt.Rows[i]["ITEMOPINVTYPE_CHR"].ToString().Trim();
                        objtemp.m_strFrequency  = "";
                        objtemp.m_strDosage     = "";
                        objtemp.m_strDays       = "";
                        objtemp.m_strUsage      = "";
                        objtemp.m_strRowNo      = "";
                        decCureCost            += clsConvertToDecimal.m_mthConvertObjToDecimal(dt.Rows[i]["SUMMONEY"]);
                        obj_VO.objinjectArr.Add(objtemp);
                    }
                }
                ret = objDKSvc.m_mthFindRecipeDetail4(TempID, out dt, true);
                if (ret > 0 && dt.Rows.Count > 0)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        clsOutpatientPrintRecipeDetail_VO objtemp = new clsOutpatientPrintRecipeDetail_VO();
                        objtemp.m_strChargeName = dt.Rows[i]["ITEMNAME"].ToString();;
                        objtemp.m_strCount      = dt.Rows[i]["quantity"].ToString().Trim();
                        objtemp.m_strPrice      = dt.Rows[i]["PRICE"].ToString();
                        objtemp.m_strSumPrice   = dt.Rows[i]["SUMMONEY"].ToString().Trim();
                        objtemp.m_strUnit       = dt.Rows[i]["UNIT"].ToString().Trim();
                        objtemp.m_strInvoiceCat = dt.Rows[i]["ITEMOPINVTYPE_CHR"].ToString().Trim();
                        objtemp.m_strFrequency  = "";
                        objtemp.m_strDosage     = "";
                        objtemp.m_strDays       = "";
                        objtemp.m_strUsage      = "";
                        objtemp.m_strRowNo      = "";
                        decCureCost            += clsConvertToDecimal.m_mthConvertObjToDecimal(dt.Rows[i]["SUMMONEY"]);
                        obj_VO.objinjectArr.Add(objtemp);
                    }
                }
                ret = objDKSvc.m_mthFindRecipeDetail5(TempID, out dt, true);
                if (ret > 0 && dt.Rows.Count > 0)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        clsOutpatientPrintRecipeDetail_VO objtemp = new clsOutpatientPrintRecipeDetail_VO();
                        objtemp.m_strChargeName = dt.Rows[i]["ITEMNAME"].ToString();;
                        objtemp.m_strCount      = dt.Rows[i]["quantity"].ToString().Trim();
                        objtemp.m_strPrice      = dt.Rows[i]["PRICE"].ToString();
                        objtemp.m_strSumPrice   = dt.Rows[i]["SUMMONEY"].ToString().Trim();
                        objtemp.m_strUnit       = dt.Rows[i]["UNIT"].ToString().Trim();
                        objtemp.m_strInvoiceCat = dt.Rows[i]["ITEMOPINVTYPE_CHR"].ToString().Trim();
                        objtemp.m_strFrequency  = "";
                        objtemp.m_strDosage     = "";
                        objtemp.m_strDays       = "";
                        objtemp.m_strUsage      = "";
                        objtemp.m_strRowNo      = "";
                        decCureCost            += clsConvertToDecimal.m_mthConvertObjToDecimal(dt.Rows[i]["SUMMONEY"]);
                        obj_VO.objinjectArr.Add(objtemp);
                    }
                }
                ret = objDKSvc.m_mthFindRecipeDetail6(TempID, out dt, true);
                if (ret > 0 && dt.Rows.Count > 0)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        clsOutpatientPrintRecipeDetail_VO objtemp = new clsOutpatientPrintRecipeDetail_VO();
                        objtemp.m_strChargeName = dt.Rows[i]["ITEMNAME"].ToString();;
                        objtemp.m_strCount      = dt.Rows[i]["quantity"].ToString().Trim();
                        objtemp.m_strPrice      = dt.Rows[i]["PRICE"].ToString();
                        objtemp.m_strSumPrice   = dt.Rows[i]["SUMMONEY"].ToString().Trim();
                        objtemp.m_strUnit       = dt.Rows[i]["UNIT"].ToString().Trim();
                        objtemp.m_strInvoiceCat = dt.Rows[i]["ITEMOPINVTYPE_CHR"].ToString().Trim();
                        objtemp.m_strFrequency  = "";
                        objtemp.m_strDosage     = "";
                        objtemp.m_strDays       = "";
                        objtemp.m_strUsage      = "";
                        objtemp.m_strRowNo      = "";
                        decCureCost            += clsConvertToDecimal.m_mthConvertObjToDecimal(dt.Rows[i]["SUMMONEY"]);
                        obj_VO.objinjectArr.Add(objtemp);
                    }
                }
            }
            obj_VO.m_strWMedicineCost  = decWMedicineCost.ToString("0.00");         //最后在这里添加数据
            obj_VO.m_strZCMedicineCost = decZCMedicineCost.ToString("0.00");
            obj_VO.m_strCureCost       = decCureCost.ToString("0.00");
            objPRDArr.Sort(0, objPRDArr.Count, null);
            objPRDArr2.Sort(0, objPRDArr2.Count, null);
            obj_VO.objPRDArr  = objPRDArr;
            obj_VO.objPRDArr2 = objPRDArr2;
            return(obj_VO);
        }
Example #6
0
        public void m_mthLoadNodes(string ID)
        {
            try
            {
                this.m_objViewer.Cursor = Cursors.WaitCursor;
                this.m_objViewer.treeView1.Nodes.Clear();
                ArrayList objclsArr = new ArrayList();
                string    cardNo    = this.m_objViewer.txtCardID.Text.Trim();
                if (cardNo == string.Empty)
                {
                    return;
                }
                //挂号
                clsParameter_VO objPV = new clsParameter_VO();
                objPV.strPatientID = ID;
                objPV.strCardID    = cardNo;
                clsLIS        objLis        = new clsLIS();
                clsCARDIOGRAM objCARDIOGRAM = new clsCARDIOGRAM();    //心电图
                objLis.SubClassOBJ = objCARDIOGRAM;
                clsDCARDIOGRAM objDCARDIOGRAM = new clsDCARDIOGRAM(); //动态心电图
                objCARDIOGRAM.SubClassOBJ = objDCARDIOGRAM;
                clsTCD objTCD = new clsTCD();
                objDCARDIOGRAM.SubClassOBJ = objTCD;
                clsEEG objEEG = new clsEEG();
                objTCD.SubClassOBJ = objEEG;
                //clsPacssReport objPacs = new clsPacssReport();
                //objEEG.SubClassOBJ = objPacs;
                clsSeeDoctor objSeeDoc = new clsSeeDoctor();
                objEEG.SubClassOBJ = objSeeDoc;
                //objPacs.SubClassOBJ = objSeeDoc;
                clsCaseHistory objCH = new clsCaseHistory();
                objSeeDoc.SubClassOBJ = objCH;
                //增加入数组
                objclsArr.Add(objLis);
                objclsArr.Add(objCARDIOGRAM);
                objclsArr.Add(objDCARDIOGRAM);
                objclsArr.Add(objTCD);
                objclsArr.Add(objEEG);
                //objclsArr.Add(objPacs);
                objclsArr.Add(objSeeDoc);
                objclsArr.Add(objCH);

                DataTable dtPacs = null;
                DataTable dtBL   = null;
                if (GlobalParm.IsChaShan)
                {
                    #region  添加电子病历
                    clsInitEMRModule objEmrModule = new clsInitEMRModule();
                    objEmrModule.ObjParam = objPV;
                    objEmrModule.m_mthAddToNodes(ref objclsArr, objCH, objCH.UseFlag);
                    #endregion 添加电子病历

                    #region 添加新pacs
                    // 数据源
                    clsDcl_ShowReports dcl = new clsDcl_ShowReports();
                    dtPacs = dcl.GetNewPacsView(cardNo);
                    #endregion

                    #region 添加新病理
                    if (this.IsUseBLReport)
                    {
                        string appId = dcl.GetNewBLAppId(cardNo);
                        if (!string.IsNullOrEmpty(appId))
                        {
                            dtBL = dcl.GetNewBLView(appId);
                        }
                    }
                    dcl = null;
                    #endregion
                }
                objLis.m_mthGetMainData(objPV);
                foreach (clsDataBase objTemp in objclsArr)
                {
                    TreeNode tn = new TreeNode(objTemp.ToString());
                    tn.Tag = objTemp;
                    clsMainData_VO[] objDMArr = objTemp.MainData;
                    if (objDMArr != null)
                    {
                        for (int i = 0; i < objDMArr.Length; i++)
                        {
                            TreeNode subTN = new TreeNode(objDMArr[i].strCreatDate);
                            subTN.Tag = objDMArr[i];
                            if (objDMArr[i].strRemark == "2" || objDMArr[i].strRemark == "3" || objDMArr[i].strRemark == "5")
                            {
                                subTN.ForeColor = System.Drawing.Color.Red;
                            }
                            else if (objDMArr[i].strRemark == "6")
                            {
                                subTN.ForeColor = System.Drawing.Color.Orange;
                            }
                            tn.Nodes.Add(subTN);
                        }
                    }
                    else
                    {
                        if ((dtPacs == null || dtPacs.Rows.Count == 0) && (dtBL == null || dtBL.Rows.Count == 0))
                        {
                            TreeNode subTN = new TreeNode("无记录");
                            subTN.ForeColor = System.Drawing.Color.Gray;
                            tn.Nodes.Add(subTN);
                        }
                    }
                    if (m_mthGetParentNode(tn))
                    {
                        this.m_objViewer.treeView1.Nodes.Add(tn);
                    }
                }

                #region 新PACS节点
                string         groupName = string.Empty;
                TreeNode       tnParent  = null;
                TreeNode       tnChild   = null;
                clsMainData_VO dataVo    = null;
                Dictionary <string, List <DataRow> > dicGroupName = new Dictionary <string, List <DataRow> >();
                if (dtPacs != null && dtPacs.Rows.Count > 0)
                {
                    foreach (DataRow dr in dtPacs.Rows)
                    {
                        groupName = dr["jclx"].ToString();
                        if (groupName == null)
                        {
                            groupName = string.Empty;
                        }
                        if (dicGroupName.ContainsKey(groupName))
                        {
                            dicGroupName[groupName].Add(dr);
                        }
                        else
                        {
                            dicGroupName.Add(groupName, new List <DataRow>()
                            {
                                dr
                            });
                        }
                    }
                    foreach (string key in dicGroupName.Keys)
                    {
                        tnParent = new TreeNode(key == string.Empty ? "PACS" : key);
                        foreach (DataRow dr1 in dicGroupName[key])
                        {
                            if (dr1["bgsj"] == DBNull.Value)
                            {
                                tnChild = new TreeNode(dr1["jczt"].ToString());
                            }
                            else
                            {
                                tnChild = new TreeNode(Convert.ToDateTime(dr1["bgsj"]).ToString("yyyy-MM-dd HH:mm:ss"));
                            }
                            dataVo           = new clsMainData_VO();
                            dataVo.strRemark = "pacs";
                            dataVo.strID     = dr1["exid"].ToString();
                            dataVo.strName   = dr1["bgdz"].ToString();
                            tnChild.Tag      = dataVo;
                            tnParent.Nodes.Add(tnChild);
                        }
                        this.m_objViewer.treeView1.Nodes.Add(tnParent);
                    }
                }
                #endregion

                #region 新病理节点
                dicGroupName.Clear();
                dicBL = null;
                dicBL = new Dictionary <string, Image>();
                if (this.IsUseBLReport && dtBL != null && dtBL.Rows.Count > 0)
                {
                    groupName = "病理";
                    foreach (DataRow dr in dtBL.Rows)
                    {
                        dicGroupName.Add(groupName, new List <DataRow>()
                        {
                            dr
                        });
                    }
                    tnParent = new TreeNode("病理报告");
                    foreach (DataRow dr1 in dicGroupName[groupName])
                    {
                        tnChild          = new TreeNode(Convert.ToDateTime(dr1["ExamTime"]).ToString("yyyy-MM-dd HH:mm:ss"));
                        dataVo           = new clsMainData_VO();
                        dataVo.strRemark = "病理";
                        dataVo.strID     = dr1["Applyid"].ToString();
                        if (dr1["ReportImage"] != DBNull.Value)
                        {
                            if (!dicBL.ContainsKey(dataVo.strID))
                            {
                                System.IO.MemoryStream objTempStream = new System.IO.MemoryStream((byte[])dr1["ReportImage"]);
                                dicBL.Add(dataVo.strID, System.Drawing.Image.FromStream(objTempStream));
                            }
                        }
                        tnChild.Tag = dataVo;
                        tnParent.Nodes.Add(tnChild);
                    }
                    this.m_objViewer.treeView1.Nodes.Add(tnParent);
                }
                #endregion
            }
            finally
            {
                this.m_objViewer.Cursor = Cursors.Default;
            }
        }