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()); }
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); }