/// <summary> /// Apply Loyalty Tender /// </summary> /// <param name="tenderId"></param> /// <param name="applyBalance"></param> private void ApplyLoyaltyTender(int tenderId, decimal applyBalance) { try { _paymentEngine = new PaymentEngineConnector(_conFigHelper.LOGIN_DOMAIN, _conFigHelper.ACCESS_KEY, string.Empty, string.Empty, null); _transactionCode = _paymentEngine.CardRedeem(string.Empty, _conFigHelper.LOYALTY_TENDER_CODE, _cartExternalId, applyBalance, _customer.Uid); if (!string.IsNullOrWhiteSpace(_transactionCode)) { _applyAmount = applyBalance; var response = _dwProvider.AddTransactionToTicket(_currentUserId, _currentOpenTicketId, new wsTransaction { PaymentAmount = applyBalance, TenderType = Constants.BLOYALLOYALTYTENDER, TenderTypeID = tenderId, RefNumber = _transactionCode }); if (response.Result == TicketChangeResult.Success) { this.Close(); } } lblApplyBalanceError.Text = Messages.SERVICE_UNAVAILBLE_WARNING; } catch (Exception ex) { _logger.WriteLogError(ex, "ApplyLoyaltyTender"); } }
/// <summary> /// Add Payment Transaction to Ticket /// </summary> /// <param name="tenderId"></param> /// <param name="applyBalanceAmt"></param> private bool AddTransactionToTicket(int tenderId, decimal applyBalanceAmt) { bool result = false; try { _transactionCode = _paymentEngine.CardRedeem(txtGiftCardNumber.Text, _conFigHelper.GIFTCARD_TENDER_CODE, _cartExternalId, applyBalanceAmt); if (!string.IsNullOrWhiteSpace(_transactionCode)) { var changeResult = _dinerwareProvider.AddTransactionToTicket(_currentUserId, _currentOpenTicketId, new wsTransaction { PaymentAmount = applyBalanceAmt, TenderType = Constants.BLOYALGIFTCARDTENDER, TenderTypeID = tenderId, RefNumber = _transactionCode }); if (changeResult.Result == TicketChangeResult.Success) { _giftCardNumber = txtGiftCardNumber.Text; decimal.TryParse(textApplyBalance.Text, out _applyAmount); result = true; } } } catch (Exception ex) { _logger.WriteLogError(ex, "bLoyal Gift Card ApplyAllAvailableBalance"); } return(result); }
/// <summary> /// Credit Load GiftCard Item /// </summary> /// <param name="calculatedCart"></param> /// <param name="amount"></param> /// <param name="giftCardNumber"></param> /// <param name="ticketId"></param> /// <returns></returns> public bool CreditLoadGiftCardItem(CalculatedCart calculatedCart, decimal amount, string giftCardNumber, string ticketId, CartLine line) { bool result = false; try { _paymentEngine = new PaymentEngineConnector(_configurationHelper.LOGIN_DOMAIN, _configurationHelper.ACCESS_KEY, string.Empty, string.Empty, null); string transCode = _paymentEngine.CardRedeem(giftCardNumber, _configurationHelper.GIFTCARD_TENDER_CODE, ticketId, amount); result = !string.IsNullOrWhiteSpace(transCode); } catch (Exception ex) { _logger.WriteLogError(ex, "CalculateTransaction CreditLoadGiftCardItem"); } return(result); }