Exemple #1
0
 public void OutNetworkPreSettle(OutPayParameter para)
 {
     OutPayPara = para;
     InterfaceInit();
     handelModel.InitMZ(p_sbjbm, OutPayPara.RegInfo.NetType, OutPayPara.RegInfo.MemberNo, OutPayPara.RegInfo.NetPatName,
                        patInfo["xb"], OutPayPara.CommPara.OutNetworkSettleId.ToString(), DateTime.Now.ToString("yyyy-MM-dd"),
                        getMzysbh(), strDiagnosCode, p_syzhlx, OutPayPara.RegInfo.CardNo, "C", "");   //4 门诊大病,5 意外伤害,6普通门诊
     handelModel.SaveOutItems(OutPayPara.Details);
 }
        /// <summary>
        /// 门诊联网结算
        /// </summary>
        /// <param name="inPara">门诊接口入参</param>
        /// <returns></returns>
        public void OutNetworkSettle(OutPayParameter para)
        {
            InterfaceInit();
            outReimPara = para;

            //当姓名不一致时提示
            if (outReimPara.PatInfo.PatName != dicPatInfo["xm"])
            {
                if (MessageBox.Show(" 医保卡姓名为:【" + dicPatInfo["xm"].ToString() + "】     HIS患者姓名为:【" + outReimPara.PatInfo.PatName + "】 是否继续 ", "询问", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) != DialogResult.Yes)
                {
                    throw new Exception("姓名不一致,操作员取消操作!");
                }
            }


            //门诊初始化
            handelModel.InitMZ();

            handelModel.SaveOutItemsMZ(outReimPara.Details);

            //门诊结算
            dicSettleInfo = handelModel.SettleMZ(dicPatInfo["sbjbm"], dicPatInfo["ylzbh"]);
            //---------------------------------------------低保结算

            if (Convert.ToDecimal(dicSettleInfo["xj"]) > 0)  //如果自负金额大于0弹出是否低保结算提示
            {
                if (outReimPara.RegInfo.Memo2 == "低保")
                {
                    dicSettleInfoDibao.Clear();
                    DiBaoJS_Confirm diBaoJS = new DiBaoJS_Confirm(outReimPara, dicSettleInfo, dicSettleInfoDibao);
                    diBaoJS.ShowDialog();
                }
            }
            //------------------------------------------------
            //保存门诊结算明细
            SaveOutSettleMain();
            GC.KeepAlive(handelModel);
            GC.Collect();
        }