Beispiel #1
0
        /// <summary>
        /// GetXR
        /// </summary>
        /// <returns></returns>
        XtraReport GetXR(decimal rptId)
        {
            EntityRptContagion contagionVo = null;

            using (ProxyContagion proxy = new ProxyContagion())
            {
                contagionVo = proxy.Service.GetContagion(rptId);
            }
            EntityFormDesign       formVo  = null;
            EntityEmrPrintTemplate printVo = null;

            using (ProxyFormDesign proxy = new ProxyFormDesign())
            {
                proxy.Service.GetForm((int)contagionVo.formId, out formVo);
                if (formVo == null)
                {
                    return(null);
                }
                printVo = proxy.Service.GetFormPrintTemplate(1, formVo.Printtemplateid.ToString());
            }
            DataTable printDataSource = FormTool.GetPrintDataTable(formVo.Layout, contagionVo.xmlData);

            if (printVo.templateFile != null && printVo.templateFile.Length > 0)
            {
                XtraReport   xr     = new XtraReport();
                MemoryStream stream = new MemoryStream(printVo.templateFile);
                xr.LoadLayout(stream);
                xr.DataSource = printDataSource;
                return(xr);
            }
            else
            {
                return(null);
            }
        }
Beispiel #2
0
        /// <summary>
        /// Init
        /// </summary>
        internal void Init()
        {
            try
            {
                Viewer.Location = new Point(Viewer.Location.X, 0);
                Viewer.Height   = Screen.PrimaryScreen.WorkingArea.Height;
                uiHelper.BeginLoading(Viewer);

                #region 参数
                using (ProxyEntityFactory proxy = new ProxyEntityFactory())
                {
                    ContagionParmData = EntityTools.ConvertToEntityList <EntityRptContagionParm>(proxy.Service.SelectFullTable(new EntityRptContagionParm()));
                }
                #endregion

                // 传染病报表
                if (ContagionParmData != null)
                {
                    if (ContagionParmData.Any(t => t.reportId == this.ContagionDisplayVo.reportId && t.keyId == "templateId"))
                    {
                        this.formId = Function.Dec(ContagionParmData.FirstOrDefault(t => t.reportId == this.ContagionDisplayVo.reportId && t.keyId == "templateId").keyValue);
                    }
                }
                if (this.formId > 0)
                {
                    using (ProxyFormDesign proxy = new ProxyFormDesign())
                    {
                        proxy.Service.GetForm((int)this.formId, out FormDesignVo);
                    }
                }
                if (FormDesignVo == null)
                {
                    FormDesignVo = new EntityFormDesign();
                }
                if (Function.Dec(this.ContagionDisplayVo.rptId) > 0)
                {
                    using (ProxyContagion proxy = new ProxyContagion())
                    {
                        EntityRptContagion vo = proxy.Service.GetContagion(Function.Dec(this.ContagionDisplayVo.rptId));

                        #region patientInfo
                        Viewer.rdoFlag.SelectedIndex       = vo.patType - 1;
                        Viewer.rdoFlag.Properties.ReadOnly = true;
                        Viewer.txtCardNo.Text = vo.patNo;
                        #endregion

                        LoadForm(FormDesignVo.Layout, vo.xmlData);
                        GetPatient();
                    }
                }
                else
                {
                    LoadForm(FormDesignVo.Layout, null);
                }
            }
            finally
            {
                uiHelper.CloseLoading(Viewer);
            }
        }
Beispiel #3
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="rptId"></param>
        /// <returns></returns>
        internal int DelContagion(decimal rptId)
        {
            int       affectRows = 0;
            SqlHelper svc        = null;

            try
            {
                svc = new SqlHelper(EnumBiz.onlineDB);
                EntityRptContagion vo = new EntityRptContagion();
                vo.rptId   = rptId;
                vo.status  = 0;
                affectRows = svc.Commit(svc.GetUpdateParm(vo, new List <string>()
                {
                    EntityRptContagion.Columns.status
                }, new List <string>()
                {
                    EntityRptContagion.Columns.rptId
                }));
            }
            catch (Exception e)
            {
                ExceptionLog.OutPutException(e);
                affectRows = -1;
            }
            finally
            {
                svc = null;
            }
            return(affectRows);
        }
Beispiel #4
0
        /// <summary>
        /// 获取传染病实例(vo)
        /// </summary>
        /// <param name="rptId"></param>
        /// <returns></returns>
        internal EntityRptContagion GetContagion(decimal rptId)
        {
            EntityRptContagion vo  = new EntityRptContagion();
            SqlHelper          svc = null;

            try
            {
                svc      = new SqlHelper(EnumBiz.onlineDB);
                vo.rptId = rptId;
                vo       = EntityTools.ConvertToEntity <EntityRptContagion>(svc.SelectPk(vo));

                EntityRptContagionData dataVo = new EntityRptContagionData();
                dataVo.rptId = rptId;
                dataVo       = EntityTools.ConvertToEntity <EntityRptContagionData>(svc.SelectPk(dataVo));
                vo.xmlData   = dataVo.xmlData;
            }
            catch (Exception e)
            {
                ExceptionLog.OutPutException(e);
            }
            finally
            {
                svc = null;
            }
            return(vo);
        }
Beispiel #5
0
 /// <summary>
 /// 保存传染病
 /// </summary>
 /// <param name="eventVo"></param>
 /// <param name="rptId"></param>
 /// <returns></returns>
 public int SaveContagion(EntityRptContagion eventVo, string reqNo, out decimal rptId)
 {
     using (bizContagion biz = new bizContagion())
     {
         return(biz.SaveContagion(eventVo, reqNo, out rptId));
     }
 }
Beispiel #6
0
        /// <summary>
        /// Save
        /// </summary>
        internal void Save()
        {
            if (Viewer.txtPatName.Tag == null)
            {
                DialogBox.Msg("请先调出患者信息。");
                return;
            }
            EntityPatientInfo patVo = Viewer.txtPatName.Tag as EntityPatientInfo;

            try
            {
                uiHelper.BeginLoading(Viewer);
                string             fieldName = string.Empty;
                DateTime           dtmNow    = Utils.ServerTime();
                EntityRptContagion vo        = new EntityRptContagion();

                vo.xmlData = Viewer.showPanelForm.XmlData();
                if (Viewer.showPanelForm.IsAllowSave == false)
                {
                    DialogBox.Msg("存在必填项目没有处理,请检查。项目:" + Viewer.showPanelForm.HintInfo);
                    return;
                }
                vo.rptId    = Function.Dec(this.ContagionDisplayVo.rptId);
                vo.reportId = this.ContagionDisplayVo.reportId;

                // 报告时间
                if (ContagionParmData.Any(t => t.reportId == vo.reportId && t.keyId == "reportTime"))
                {
                    fieldName     = ContagionParmData.FirstOrDefault(t => t.reportId == vo.reportId && t.keyId == "reportTime").keyValue;
                    vo.reportTime = Viewer.showPanelForm.GetItemInfo(fieldName);
                    if (vo.reportTime.Trim() == string.Empty)
                    {
                        vo.reportTime = dtmNow.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                }
                else
                {
                    vo.reportTime = dtmNow.ToString("yyyy-MM-dd HH:mm:ss");
                }
                // 上报科室
                if (ContagionParmData.Any(t => t.reportId == vo.reportId && t.keyId == "deptCode"))
                {
                    fieldName = ContagionParmData.FirstOrDefault(t => t.reportId == vo.reportId && t.keyId == "deptCode").keyValue;
                    string deptName = Viewer.showPanelForm.GetItemInfo(fieldName);
                }
                else
                {
                    string deptName = GlobalLogin.objLogin.DeptName;
                }
                // 报告人
                if (ContagionParmData.Any(t => t.reportId == vo.reportId && t.keyId == "operCode"))
                {
                    fieldName         = ContagionParmData.FirstOrDefault(t => t.reportId == vo.reportId && t.keyId == "operCode").keyValue;
                    vo.reportOperName = Viewer.showPanelForm.GetItemInfo(fieldName);
                    if (GlobalDic.DataSourceEmployee.Any(t => t.operName == vo.reportOperName))
                    {
                        vo.reportOperCode = GlobalDic.DataSourceEmployee.FirstOrDefault(t => t.operName == vo.reportOperName).operCode;
                    }
                }
                else
                {
                    vo.reportOperCode = GlobalLogin.objLogin.EmpNo;
                    vo.reportOperName = GlobalLogin.objLogin.EmpName;
                }
                // 报告编号
                if (ContagionParmData.Any(t => t.reportId == vo.reportId && t.keyId == "regCode"))
                {
                    EntityRptContagionParm parm = ContagionParmData.FirstOrDefault(t => t.reportId == vo.reportId && t.keyId == "regCode");
                    // 计算类
                    if (parm.flag == 1)
                    {
                        string[] fieldNames = parm.keyValue.Split('+');
                        foreach (string fieldSub in fieldNames)
                        {
                            vo.registerCode += Viewer.showPanelForm.GetItemInfo(fieldSub);
                        }
                    }
                    else
                    {
                        fieldName       = parm.keyValue;
                        vo.registerCode = Viewer.showPanelForm.GetItemInfo(fieldName);
                    }
                }
                if (!string.IsNullOrEmpty(patVo.ipNo) && patVo.ipTimes > 0)
                {
                    vo.patNo = patVo.ipNo;
                }
                else
                {
                    vo.patNo = patVo.cardNo;
                }
                vo.patName = patVo.name;
                vo.patSex  = patVo.sex;
                if (!string.IsNullOrEmpty(patVo.birth))
                {
                    vo.birthday = Function.Datetime(patVo.birth);
                }
                vo.contactTel = patVo.contTel;
                vo.deptCode   = patVo.deptCode;
                vo.xmlData    = Viewer.showPanelForm.XmlData();
                vo.formId     = this.formId;
                vo.operCode   = GlobalLogin.objLogin.EmpNo;
                vo.recordDate = dtmNow;
                vo.status     = 1;
                vo.patType    = Viewer.rdoFlag.SelectedIndex + 1;
                string reqNo = patVo.clNo;

                using (ProxyContagion proxy = new ProxyContagion())
                {
                    decimal rptId = 0;
                    if (proxy.Service.SaveContagion(vo, reqNo, out rptId) > 0)
                    {
                        Viewer.IsSave = true;
                        if (this.ContagionDisplayVo.isNew)
                        {
                            this.ContagionDisplayVo.rptId = rptId.ToString();
                        }
                        Viewer.txtCardNo.Properties.ReadOnly = true;
                        DialogBox.Msg("数据保存成功!");
                    }
                    else
                    {
                        DialogBox.Msg("数据保存失败。");
                    }
                }
            }
            finally
            {
                uiHelper.CloseLoading(Viewer);
            }
        }
Beispiel #7
0
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="vo"></param>
        /// <param name="rptId"></param>
        /// <returns></returns>
        internal int SaveContagion(EntityRptContagion vo, string reqNo, out decimal rptId)
        {
            int affectRows = 0;

            rptId = 0;
            string Sql = string.Empty;

            IDataParameter[] parm = null;
            SqlHelper        svc  = null;

            try
            {
                List <DacParm> lstParm = new List <DacParm>();
                svc = new SqlHelper(EnumBiz.onlineDB);
                EntityRptContagionData voData = new EntityRptContagionData();
                if (vo.rptId <= 0)  // new
                {
                    rptId    = svc.GetNextID(EntityTools.GetTableName(vo), EntityTools.GetFieldName(vo, EntityRptContagion.Columns.rptId));
                    vo.rptId = rptId;
                    lstParm.Add(svc.GetInsertParm(vo));

                    voData.rptId   = rptId;
                    voData.xmlData = vo.xmlData;

                    lstParm.Add(svc.GetInsertParm(voData));

                    if (!string.IsNullOrEmpty(reqNo))
                    {
                        Sql           = @"update  rptContagion set reques_no = ? where rptId = ?";
                        parm          = svc.CreateParm(2);
                        parm[0].Value = reqNo;
                        parm[1].Value = rptId;
                        lstParm.Add(svc.GetDacParm(EnumExecType.ExecSql, Sql, parm));
                    }
                }
                else                // edit
                {
                    lstParm.Add(svc.GetUpdateParm(vo, new List <string>()
                    {
                        EntityRptContagion.Columns.reportTime, EntityRptContagion.Columns.reportOperCode, EntityRptContagion.Columns.reportOperName, EntityRptContagion.Columns.reportId,
                        EntityRptContagion.Columns.registerCode, EntityRptContagion.Columns.patType, EntityRptContagion.Columns.patNo, EntityRptContagion.Columns.patName,
                        EntityRptContagion.Columns.patSex, EntityRptContagion.Columns.birthday, EntityRptContagion.Columns.idCard, EntityRptContagion.Columns.contactAddr,
                        EntityRptContagion.Columns.contactTel, EntityRptContagion.Columns.deptCode, EntityRptContagion.Columns.formId, EntityRptContagion.Columns.operCode,
                        EntityRptContagion.Columns.recordDate, EntityRptContagion.Columns.status
                    },
                                                  new List <string>()
                    {
                        EntityRptContagion.Columns.rptId
                    }));

                    voData.rptId   = vo.rptId;
                    voData.xmlData = vo.xmlData;
                    lstParm.Add(svc.GetUpdateParm(voData, new List <string>()
                    {
                        EntityRptEventData.Columns.xmlData
                    }, new List <string>()
                    {
                        EntityRptEventData.Columns.rptId
                    }));

                    rptId = vo.rptId;
                }
                affectRows = svc.Commit(lstParm);
            }
            catch (Exception e)
            {
                ExceptionLog.OutPutException(e);
                affectRows = -1;
            }
            finally
            {
                svc = null;
            }
            return(affectRows);
        }