Esempio n. 1
0
        public void InNetworkPreSettle(InPayParameter para)
        {
            InPayPara = para;


            //在 住院预结算 和 住院结算的时候 在函数最开始   加入一下判断
            if (InPayPara.SettleInfo != null && InPayPara.SettleInfo.MedAmountTotal != 0)
            {
                PayType _payType = new PayType();
                _payType.PayTypeId    = 4;
                _payType.PayTypeName  = "医保";
                _payType.PayAmount    = InPayPara.SettleInfo.MedAmountTotal;
                InPayPara.PayTypeList = new List <PayType>();
                InPayPara.PayTypeList.Add(_payType);
                return;
            }



            if (InPayPara.RegInfo.MemberNo == null)
            {
                throw new Exception("没有找到联网登记信息,请确认是否联网登记!");
            }

            InterfaceInit();
            InReimUpItems();
            dicSettleInfo = handelModel.SettleZY();

            SaveInSettleMain();


            isInit = false;
        }
        /// <summary>
        /// 住院预结算
        /// </summary>
        /// <param name="inPara">住院接口入参</param>
        /// <returns></returns>
        public void InNetworkPreSettle(InPayParameter para)
        {
            inReimPara = para;

            if (inReimPara.SettleInfo != null && inReimPara.SettleInfo.MedAmountTotal != 0)
            {
                PayAPIInterface.Model.Comm.PayType payType;
                inReimPara.PayTypeList = new List <PayType>();
                payType             = new PayAPIInterface.Model.Comm.PayType();
                payType.PayTypeId   = 4;
                payType.PayTypeName = "医保";
                payType.PayAmount   = inReimPara.SettleInfo.MedAmountTotal;
                inReimPara.PayTypeList.Add(payType);

                //payType = new PayAPIInterface.Model.Comm.PayType();
                //payType.PayTypeId = 5;
                //payType.PayTypeName = "医保卡";
                //payType.PayAmount = inReimPara.SettleInfo.MedAmountZhzf;
                //inReimPara.PayTypeList.Add(payType);

                return;
            }

            //StringBuilder str = new StringBuilder();
            //str.Append("SELECT MEMBER_NO FROM ZY.[IN].IN_NETWORK_REGISTERS WHERE PAT_IN_HOS_ID='"+para.PatInfo.PatInHosId.ToString("f0")+"'");
            //DataSet ds = JNDWInterfaceModel.handelModel.sqlHelperHis.ExecSqlReDs(str.ToString());
            //DataTable dt = ds.Tables[0];
            ////string MEMBERNO = dt.Rows[0]["MEMBER_NO"].ToString();
            ////if (inReimPara.RegInfo.MemberNo == null)
            //if (dt.Rows.Count>0)
            //{
            //    //throw new Exception("没有找到联网登记信息,请确认是否联网登记!");
            //}
            //else
            //{
            //    throw new Exception("没有找到联网登记信息,请确认是否联网登记!");
            //}

            if (inReimPara.RegInfo.MemberNo == null)
            {
                //throw new Exception("没有找到联网登记信息,请确认是否联网登记!");
            }

            InterfaceInit();
            handelModel.InitZY(inReimPara.RegInfo.PatInHosSerial);
            InReimUpItems();

            //----------------------------------------------------------------------
            #region
            //StringBuilder str = new StringBuilder();
            //str.Append("SELECT  ");
            ////str.Append("--TOP 1 ");
            //str.Append("IN_PAT_NAME AS 姓名,");
            //str.Append("SEX_NAME AS 性别,");
            //str.Append("d.ID_NO AS 身份证号,");
            //str.Append("d.PAT_IN_HOS_SERIAL AS 住院号,");
            //str.Append("PAT_AGAIN_IN_TIMES AS 住院次数, ");
            //str.Append("PAT_MAIN_DIAGNOSE_ID AS 诊断编码, ");
            //str.Append("MAIN_DIAG_NAME AS 诊断名称, ");
            //str.Append("b.DIAGNOSIS_CODE  as ICD疾病编码, ");
            //str.Append("PAT_IN_CHARGE_DOC_ID AS 经治医生编号, ");
            //str.Append("c.UESR_NAME AS 经治医生姓名, ");
            //str.Append("PAT_IN_TIME AS 入院时间, ");
            //str.Append("PAT_LEAVE_ORDER_LEAVE_TIME AS 出院时间, ");
            //str.Append("DATEDIFF(DAY, PAT_IN_TIME, PAT_LEAVE_ORDER_LEAVE_TIME) AS 天数, ");
            //str.Append("PAT_IN_TIME AS 确诊日期, ");
            //str.Append("DATEDIFF(DAY, PAT_IN_TIME, PAT_IN_TIME + 1) AS 确诊天数 ");
            //str.Append("FROM  ZY.[IN].PAT_ALL_INFO_VIEW a ");
            //str.Append("LEFT JOIN COMM.DICT.DIAGNOSIS b ON a.PAT_MAIN_DIAGNOSE_ID = b.DIAGNOSIS_ID ");
            //str.Append("LEFT JOIN COMM.COMM.USERINFO_VIEW c ON a.PAT_IN_CHARGE_DOC_ID = c.USER_SYS_ID ");
            //str.Append("LEFT JOIN ZY.[IN].IN_NETWORK_REGISTERS d ON a.PAT_IN_HOS_ID = d.PAT_IN_HOS_ID ");
            //str.Append("WHERE  a.PAT_IN_HOS_ID = '" + para.PatInfo.PatInHosId.ToString("f0") + "' ");

            //DataSet ds = JNDWInterfaceModel.handelModel.sqlHelperHis.ExecSqlReDs(str.ToString());
            //DataTable dt = ds.Tables[0];
            ////病历首页初始化
            //handelModel.BlsyCsh(para.PatInfo.PatInHosCode);
            ////比例首页上传参数保存
            //handelModel.BlsySc(dt);

            #endregion
            //----------------------------------------------------------------------------------------------------
            //if (MessageBox.Show("是否有医保卡?", "提示", MessageBoxButtons.YesNo) == DialogResult.Yes)
            if (inReimPara.RegInfo.Memo2 == "1")
            {
                dicSettleInfo = handelModel.SettleZY("");
            }
            else
            {
                dicSettleInfo = handelModel.SettleZY("wkzy");
            }

            SaveInSettleMain();
        }