Sha256: 476f2aee71414587d1b40cc3c24cc7d85ed69f0b767652e7ccc0592d190b354c
Contents?: true
Size: 1 KB
Versions: 52
Compression:
Stored size: 1 KB
Contents
class Spree::ReimbursementType::StoreCredit < Spree::ReimbursementType extend Spree::ReimbursementType::ReimbursementHelpers class << self def reimburse(reimbursement, return_items, simulate) unpaid_amount = return_items.sum(&:total).to_d.round(2, :down) payments = store_credit_payments(reimbursement) reimbursement_list = [] # Credit each store credit that was used on the order reimbursement_list, unpaid_amount = create_refunds(reimbursement, payments, unpaid_amount, simulate, reimbursement_list) # If there is any amount left to pay out to the customer, then create credit with that amount if unpaid_amount > 0.0 reimbursement_list, _unpaid_amount = create_credits(reimbursement, unpaid_amount, simulate, reimbursement_list) end reimbursement_list end private def store_credit_payments(reimbursement) reimbursement.order.payments.completed.store_credits end end end
Version data entries
52 entries across 52 versions & 1 rubygems