Beispiel #1
0
        public ActionResult PayReturn_Charge(string id)
        {
            string empty = string.Empty;

            try
            {
                id = DecodePaymentId(id);
                Plugin <IPaymentPlugin> plugin = PluginsManagement.GetPlugin <IPaymentPlugin>(id);
                if (plugin != null)
                {
                    PaymentInfo           paymentInfo          = plugin.Biz.ProcessReturn(base.Request);
                    IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
                    ChargeDetailInfo      chargeDetail         = memberCapitalService.GetChargeDetail(paymentInfo.OrderIds.FirstOrDefault());
                    if (chargeDetail != null && chargeDetail.ChargeStatus != ChargeDetailInfo.ChargeDetailStatus.ChargeSuccess)
                    {
                        chargeDetail.ChargeWay    = plugin.PluginInfo.DisplayName;
                        chargeDetail.ChargeStatus = ChargeDetailInfo.ChargeDetailStatus.ChargeSuccess;
                        chargeDetail.ChargeTime   = new DateTime?((paymentInfo.TradeTime.HasValue ? paymentInfo.TradeTime.Value : DateTime.Now));
                        memberCapitalService.UpdateChargeDetail(chargeDetail);
                        plugin.Biz.ConfirmPayResult();
                        string str = CacheKeyCollection.PaymentState(chargeDetail.Id.ToString());
                        Cache.Insert(str, true, 15);
                    }
                }
            }
            catch (Exception exception)
            {
                Log.Error(string.Concat("预付款充值回调出错:", exception.Message));
            }
            return(View());
        }
Beispiel #2
0
 public ActionResult CapitalChargeReturn(string orderIds)
 {
     try
     {
         IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
         ChargeDetailInfo      chargeDetail         = memberCapitalService.GetChargeDetail(long.Parse(orderIds));
         if (chargeDetail != null && chargeDetail.ChargeStatus != ChargeDetailInfo.ChargeDetailStatus.ChargeSuccess)
         {
             chargeDetail.ChargeWay    = "PayPal";
             chargeDetail.ChargeStatus = ChargeDetailInfo.ChargeDetailStatus.ChargeSuccess;
             chargeDetail.ChargeTime   = DateTime.Now;
             memberCapitalService.UpdateChargeDetail(chargeDetail);
             //plugin.Biz.ConfirmPayResult();
             string str = CacheKeyCollection.PaymentState(chargeDetail.Id.ToString());
             Cache.Insert(str, true, 15);
         }
     }
     catch (Exception exception)
     {
         Log.Error(string.Concat("Recharge Failed:", exception.Message));
     }
     return(View());
 }
 public static void UpdateChargeDetail(ChargeDetailInfo model)
 {
     _iMemberCapitalService.UpdateChargeDetail(model);
 }