public async static Task <CustomerECode> ReissueAsync(CancellationToken cancellationToken, int?customerId, int?programECodeId = null, int?customerECodeId = null, Connection connection = null, object userDefinedObjectForLogging = null)
        {
            var ec = new CustomerECode();

            ec.CustomerId      = customerId;
            ec.ProgramECodeId  = programECodeId;
            ec.CustomerECodeId = customerECodeId;
            return(await ec.PurchaseAsync(cancellationToken, connection, userDefinedObjectForLogging));
        }
        public static CustomerECode Reissue(int?customerId, int?programECodeId = null, int?customerECodeId = null, Connection connection = null, object userDefinedObjectForLogging = null)
        {
            var ec = new CustomerECode();

            ec.CustomerId      = customerId;
            ec.ProgramECodeId  = programECodeId;
            ec.CustomerECodeId = customerECodeId;
            return(ec.Purchase(connection, userDefinedObjectForLogging));
        }
        public async static Task <CustomerECode> PurchaseAsync(CancellationToken cancellationToken, int?customerId, int?programECodeId = null, decimal?amount = null, int?fromAccountId = null, int?cashBoostAccountId = null, Connection connection = null, object userDefinedObjectForLogging = null)
        {
            var ec = new CustomerECode();

            ec.CustomerId         = customerId;
            ec.ProgramECodeId     = programECodeId;
            ec.PurchaseAmount     = amount;
            ec.FromAccountId      = fromAccountId;
            ec.CashBoostAccountId = cashBoostAccountId;
            return(await ec.PurchaseAsync(cancellationToken, connection, userDefinedObjectForLogging));
        }
        public static CustomerECode Purchase(int?customerId, int?programECodeId = null, decimal?amount = null, int?fromAccountId = null, int?cashBoostAccountId = null, Connection connection = null, object userDefinedObjectForLogging = null)
        {
            var ec = new CustomerECode();

            ec.CustomerId         = customerId;
            ec.ProgramECodeId     = programECodeId;
            ec.PurchaseAmount     = amount;
            ec.FromAccountId      = fromAccountId;
            ec.CashBoostAccountId = cashBoostAccountId;
            return(ec.Purchase(connection, userDefinedObjectForLogging));
        }