public static string Serialize(this CardAcceptorDataFieldModel cardAcceptorDataField, string transactionCodeTypeModel = TransactionCodeTypeModel.PurchaseCardNotPresent) { string result = string.Empty; switch (transactionCodeTypeModel) { case TransactionCodeTypeModel.PurchaseCardNotPresent: case TransactionCodeTypeModel.PurchaseCardNotPresentRepeat: case TransactionCodeTypeModel.CreditAccountFundingOrPayment: case TransactionCodeTypeModel.CreditAccountFundingOrPaymentRepeat: case TransactionCodeTypeModel.CardholderFundsTransferCardNotPresent: case TransactionCodeTypeModel.CardholderFundsTransferCardNotPresentRepeat: result = FormatMerchantName(cardAcceptorDataField) + cardAcceptorDataField.CustomerServicePhoneNumber.FormatPhoneNumber() + FormatMerchantName(cardAcceptorDataField); break; default: result = FormatMerchantName(cardAcceptorDataField) + FormatMerchantCity(cardAcceptorDataField) + FormatMerchantName(cardAcceptorDataField); break; } return(result); }
public static CardAcceptorDataFieldModel Deserialize <T>(this string value, string transactionCodeTypeModel = TransactionCodeTypeModel.PurchaseCardNotPresent) where T : CardAcceptorDataFieldModel { var result = new CardAcceptorDataFieldModel { CustomerServicePhoneNumber = 0, MerchantCity = "", MerchantName = "", MerchantState = "", TicketNumber = "" }; if (40 > value.Length) { return(result); } result.MerchantName = value.Truncate(25); switch (transactionCodeTypeModel) { case TransactionCodeTypeModel.PurchaseCardNotPresent: case TransactionCodeTypeModel.PurchaseCardNotPresentRepeat: case TransactionCodeTypeModel.CreditAccountFundingOrPayment: case TransactionCodeTypeModel.CreditAccountFundingOrPaymentRepeat: case TransactionCodeTypeModel.CardholderFundsTransferCardNotPresent: case TransactionCodeTypeModel.CardholderFundsTransferCardNotPresentRepeat: result.CustomerServicePhoneNumber = long.Parse(value.Substring(25, 38).Trim().Replace("-", string.Empty)); break; default: result.MerchantCity = value.Substring(25, 38).Trim(); break; } result.MerchantState = value.Substring(38); return(result); }
public static string FormatMerchantCity(this CardAcceptorDataFieldModel message) { string value = message.MerchantCity; return(value.Truncate(13).Trim().PadRight(13, ' ')); }
public static string FormatMerchantName(this CardAcceptorDataFieldModel message) { string value = message.MerchantName.Truncate(25); return(value.PadRight(25, ' ')); }
public static string FormatMerchantState(this CardAcceptorDataFieldModel message) { string value = message.MerchantState; return($"{value}".Truncate(2).ToUpper()); }
public static void SetMarketAndCardAcceptorData(this Group1AuthorizationModel group1Authorization, MarketSpecificDataFieldModel marketSpecificData, CardAcceptorDataFieldModel cardAcceptorData) { group1Authorization.MarketSpecificData = marketSpecificData; group1Authorization.CardAcceptorData = cardAcceptorData; }
public static void SetCardAcceptorData(this Group1AuthorizationModel group1Authorization, string name, string city, string state, string ticket, long phone) { group1Authorization.CardAcceptorData = CardAcceptorDataFieldModel.NewCardAcceptorDataField(name, city, state, ticket, phone); }