/// <summary>
        /// 撤销门诊结算
        /// </summary>
        /// <param name="inPara">门诊接口入参</param>
        /// <returns></returns>
        public void CancelOutNetworkSettle(OutPayParameter para)
        {
            InterfaceInit();
            outReimPara = para;
            //OutNetWorkReadCard(inPara);
            if (outReimPara.SettleInfo == null)
            {
                throw new Exception("本地结算信息不存在");
            }
            string settleNo = outReimPara.SettleInfo.SettleNo.ToString();


            //撤销低保结算
            #region 撤销低保结算
            if (outReimPara.SettleInfo.NetworkPatType.ToString() == "低保")
            {
                while (true)
                {
                    try
                    {
                        //修改连接字符串
                        PayAPIInstance.Dareway.JiNan.Dialog.DiBaoQXJS frmqxjs = new PayAPIInstance.Dareway.JiNan.Dialog.DiBaoQXJS(outReimPara.SettleInfo.RelationId);
                        frmqxjs.TopMost = true;
                        frmqxjs.ShowDialog();
                        break;
                    }
                    catch (Exception ex)
                    {
                        if (MessageBox.Show("撤销门诊结算失败 错误提示" + ex.Message + "  是否重新撤销", "提示", MessageBoxButtons.YesNo) == DialogResult.No)
                        {
                            throw new Exception("操作员取消撤销结算");
                        }
                    }
                }
            }
            #endregion


            //撤销门诊大病结算
            #region 撤销门诊大病结算
            while (true)
            {
                try
                {
                    handelModel.CancelMGSettle(settleNo);
                    break;
                }
                catch (Exception ex)
                {
                    if (MessageBox.Show("撤销门诊结算失败 错误提示" + ex.Message + "  是否重新撤销", "提示", MessageBoxButtons.YesNo) == DialogResult.No)
                    {
                        throw new Exception("操作员取消撤销结算");
                    }
                }
            }
            #endregion

            GC.KeepAlive(handelModel);
            GC.Collect();
        }
Esempio n. 2
0
        /// <summary>
        /// 撤销门诊结算
        /// </summary>
        /// <param name="inPara">门诊接口入参</param>
        /// <returns></returns>
        public void CancelOutNetworkSettle(OutPayParameter para)
        {
            InterfaceInit();
            outReimPara = para;
            //OutNetWorkReadCard(inPara);
            //撤销医保结算
            if (para.SettleInfo == null)
            {
                throw new Exception("本地结算信息不存在");
            }
            string settleNo = outReimPara.SettleInfo.SettleNo.ToString();

            //撤销低保结算
            #region 撤销低保结算
            if (outReimPara.SettleInfo.NetworkPatType.ToString() == "低保")
            {
                while (true)
                {
                    try
                    {
                        //修改连接字符串
                        PayAPIInstance.Dareway.JiNan.Dialog.DiBaoQXJS frmqxjs = new PayAPIInstance.Dareway.JiNan.Dialog.DiBaoQXJS(outReimPara.SettleInfo.RelationId);
                        frmqxjs.TopMost = true;
                        frmqxjs.ShowDialog();
                        break;
                    }
                    catch (Exception ex)
                    {
                        if (MessageBox.Show("撤销门诊结算失败 错误提示" + ex.Message + "  是否重新撤销", "提示", MessageBoxButtons.YesNo) == DialogResult.No)
                        {
                            throw new Exception("操作员取消撤销结算");
                        }
                    }
                }
            }
            #endregion


            //撤销门诊大病结算
            while (true)
            {
                try
                {
                    //         NetworkReadCard();
                    //         //门诊初始化
                    //         //handelModel.InitMZMG(outReimPara.RegInfo.CantonCode, outReimPara.CommPara.OutNetworkSettleId.ToString(), outReimPara.PatInfo.PatName, dicPatInfo["xb"],
                    //         //                     outReimPara.RegInfo.MemberNo, outReimPara.CommPara.OutNetworkSettleId.ToString(),
                    //         //                     DateTime.Now.ToString("yyyy-MM-dd"), PayAPIConfig.Operator.UserSysId, strDiagnosCode, P_syzhlx);

                    //         handelModel.InitMZMG(outReimPara.RegInfo.CantonCode, outReimPara.CommPara.OutNetworkSettleId.ToString(), outReimPara.PatInfo.PatName, dicPatInfo["xb"],
                    //outReimPara.RegInfo.MemberNo, para.RegInfo.CardNo,//outReimPara.CommPara.OutNetworkSettleId.ToString(),
                    //DateTime.Now.ToString("yyyy-MM-dd"), PayAPIConfig.Operator.UserSysId, strDiagnosCode, P_syzhlx);
                    handelModel.CancelMGSettle(settleNo);
                    break;
                }
                catch (Exception ex)
                {
                    if (MessageBox.Show("撤销门诊结算失败 错误提示" + ex.Message + "  是否重新撤销", "提示", MessageBoxButtons.YesNo) == DialogResult.No)
                    {
                        throw new Exception("操作员取消撤销结算");
                    }
                }
            }

            GC.KeepAlive(handelModel);
            GC.Collect();
        }