Exemplo n.º 1
0
        /// <summary>
        /// 将数据对象转诊打印对象 用于绑定到控件进行打印预览
        /// </summary>
        /// <returns></returns>
        private PrintInCommonView ConvertPrintEntity()
        {
            //inCommonNoteBiz.GetDetaliInCommonNote(ref m_inCommonNote);
            PrintInCommonView printInCommonView = new CommonNoteUse.PrintInCommonView();

            printInCommonView.PrintFileName    = m_inCommonNote.PrinteModelName;
            printInCommonView.IncommonNoteflow = m_inCommonNote.InCommonNoteFlow;
            printInCommonView.RecordName       = m_commonNoteEntity.CommonNoteName;
            //病人的基本信息构造
            if (inCommonNoteBiz == null)
            {
                inCommonNoteBiz = new InCommonNoteBiz(m_app);
            }
            DataTable          inpatientDt        = inCommonNoteBiz.GetInpatient(m_inCommonNote.NoofInpatient);
            PrintInpatientView printInpatientView = new CommonNoteUse.PrintInpatientView();

            printInpatientView.HospitalName    = m_app.CurrentHospitalInfo.Name;
            printInpatientView.SubHospitalName = m_app.CurrentHospitalInfo.Subname;
            printInpatientView.AdmitDiagnosis  = inpatientDt.Rows[0]["DIAGNOSISNAME"].ToString();
            printInpatientView.Depart          = m_inCommonNote.CurrDepartName;
            printInpatientView.InBedNo         = inpatientDt.Rows[0]["OUTBED"].ToString();
            printInpatientView.RecordName      = m_inCommonNote.InCommonNoteName;
            if (inpatientDt.Rows[0]["INWARDDATE"].ToString().Length >= 10)
            {
                printInpatientView.InDateTime = inpatientDt.Rows[0]["INWARDDATE"].ToString().Substring(0, 10);
            }
            printInpatientView.InNo              = inpatientDt.Rows[0]["PATID"].ToString();
            printInpatientView.OutNo             = inpatientDt.Rows[0]["NOOFCLINIC"].ToString();
            printInpatientView.PatId             = inpatientDt.Rows[0]["PATNOOFHIS"].ToString();
            printInpatientView.InpatientAge      = inpatientDt.Rows[0]["AGESTR"].ToString();
            printInpatientView.InpatientName     = inpatientDt.Rows[0]["NAME"].ToString();
            printInpatientView.Sex               = inpatientDt.Rows[0]["SEX"].ToString();
            printInpatientView.Ward              = m_inCommonNote.CurrWardName;
            printInCommonView.PrintInpatientView = printInpatientView;

            if (m_inCommonNote.InCommonNoteTabList == null)
            {
                return(printInCommonView);
            }
            for (int i = 0; i < m_inCommonNote.InCommonNoteTabList.Count; i++)
            {
                CommonNote_TabEntity commonNote_TabEntity = null;
                foreach (var itemTab in m_commonNoteEntity.CommonNote_TabList)
                {
                    if (itemTab.CommonNote_Tab_Flow == m_inCommonNote.InCommonNoteTabList[i].CommonNote_Tab_Flow)
                    {
                        commonNote_TabEntity = itemTab;
                        break;
                    }
                }
                PrintInCommonTabView printInCommonTabView = new CommonNoteUse.PrintInCommonTabView();  //主要目的是给这个对象复制
                Dictionary <string, List <InCommonNoteItemEntity> > dicitemList;
                List <string> strNames = InCommonNoteBiz.ConvertInCommonTabToPrint(m_inCommonNote.InCommonNoteTabList[i], printInCommonTabView, out dicitemList, commonNote_TabEntity, m_app, m_inCommonNote);

                string proName = "PrintInCommonTabViewList";
                proName = proName + (i + 1);
                PropertyInfo property = printInCommonView.GetType().GetProperty(proName);
                if (property != null)
                {
                    property.SetValue(printInCommonView, printInCommonTabView, null);
                }

                if (i == 0 && m_inCommonNote.InCommonNoteTabList[i] != null)
                {
                    ConverToDuoRow(printInCommonView);
                    //ConvertForDuoLie(printInCommonView);


                    IPrintNurse iPrintNurse = AbstractorFactry.GetNurseRecord(printInCommonView.PrintFileName);
                    if (iPrintNurse != null)
                    {
                        iPrintNurse.commonNoteCountEntity = CommonNoteBiz.GetCommonNoteCount(m_commonNoteEntity.CommonNoteFlow);

                        printInCommonView.PrintInCommonTabViewList1.PrintInCommonItemViewList = iPrintNurse.JiSuanZongLiang(printInCommonView);
                    }
                    else
                    {
                        if (printInCommonView != null &&
                            printInCommonView.PrintInCommonTabViewList1 != null &&
                            printInCommonView.PrintInCommonTabViewList1.PrintInCommonItemViewList != null)
                        {
                            InCommonNoteBiz.ConvertForDateTime(printInCommonView.PrintInCommonTabViewList1.PrintInCommonItemViewList);
                            InCommonNoteBiz.SetRowEnd(printInCommonView.PrintInCommonTabViewList1.PrintInCommonItemViewList, printInCommonView.PrintFileName);
                        }
                    }



                    //xll 2013-01-12 处理相同时间数据
                    //ConvertForDateTime(printInCommonView);
                }
            }
            return(printInCommonView);
        }