Ejemplo n.º 1
0
 private void PayResult(TransResult retPay)
 {
     if (retPay == TransResult.E_SUCC)
     {
         //缴费成功,发起确认销账
         CPetroPayBillConfirm billConfirm = new CPetroPayBillConfirm();
         TransResult          retConfirm  = SyncTransaction(billConfirm);
         if (retConfirm != TransResult.E_SUCC)
         {
             CReverse_PetroChinaPay rev = new CReverse_PetroChinaPay(PetroPayBeingPay);
             rev.Reason  = "06";
             rev.Field55 = emv.EMVInfo.AutoField55;
             SyncTransaction(rev);
             ShowMessageAndGotoMain("交易超时,请重试");
         }
         else
         {
             if (ReceiptPrinter.ExistError())
             {
                 StartActivity("中石油支付交易完成");
             }
             else
             {
                 StartActivity("中石油支付交易成功是否打印");
             }
         }
     }
     else if (retPay == TransResult.E_HOST_FAIL)
     {
         if (PetroPayBeingPay.ReturnCode == "51")
         {
             ShowMessageAndGotoMain("温馨提示:抱歉!交易失败!" + "\n" +
                                    "您卡内余额不足!");
         }
         else if (PetroPayBeingPay.ReturnCode == "55")
         {
             StartActivity("中石油支付密码错误");
         }
         else
         {
             ShowMessageAndGotoMain(PetroPayBeingPay.ReturnCode + "-" + PetroPayBeingPay.ReturnMessage);
         }
     }
     else if (retPay == TransResult.E_RECV_FAIL)
     {
         CReverse_PetroChinaPay rev = new CReverse_PetroChinaPay(PetroPayBeingPay);
         rev.Reason  = "98";
         rev.Field55 = emv.EMVInfo.AutoField55;
         SyncTransaction(rev);
         ShowMessageAndGotoMain("交易超时,请重试");
     }
     else
     {
         ShowMessageAndGotoMain("交易失败,请重试");
     }
 }
Ejemplo n.º 2
0
        public void DoReverseFile()
        {
            CReverse_PetroChinaPay rev = Restore("Reverse") as CReverse_PetroChinaPay;

            if (rev != null)
            {
                rev.Communicate();
                ClearReverseFile();
            }
        }
Ejemplo n.º 3
0
        public void CreateReverseFile()
        {
            CReverse_PetroChinaPay rev = new CReverse_PetroChinaPay(PetroPayBeingPay);

            rev.Reason = "06";
            if (emv.EMVInfo.AutoField55 != null && emv.EMVInfo.AutoField55.Length != 0)
            {
                rev.Field55 = emv.EMVInfo.AutoField55;
            }
            Save("Reverse", rev);
        }