Sha256: e0494aa83b92ecc2689fd69ea13d0d69bb28226d167b9a5c23e336938dd20b93
Contents?: true
Size: 707 Bytes
Versions: 15
Compression:
Stored size: 707 Bytes
Contents
class Dorsale::BillingMachine::SmallData::FilterStrategyByPaymentStatus < ::Agilibox::SmallData::FilterStrategy def apply(query, value) table_name = query.model.table_name if value == "paid" return query.where("#{table_name}.paid = ?", true) elsif value == "unpaid" return query.where("#{table_name}.paid = ?", false) elsif value == "pending" return query.where("#{table_name}.paid = ? and #{table_name}.due_date >= ?", false, Time.zone.now.to_date) elsif value == "late" return query.where("#{table_name}.paid = ? and (#{table_name}.due_date < ? or #{table_name}.due_date is null)", false, Time.zone.now.to_date) else return query end end end
Version data entries
15 entries across 15 versions & 1 rubygems