1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-11-29 10:24:20 +01:00
fab-manager/app/services/price_service.rb
Sylvain a55880a0ad (feat) OpenAPI endpoint for accounting
Also: (bug) filter by array in openAPI = error
2022-12-21 14:12:14 +01:00

21 lines
680 B
Ruby

# frozen_string_literal: true
# Provides methods for Prices
class PriceService
extend ApplicationHelper
def self.list(filters)
prices = Price.where(nil)
prices = prices.where(priceable_type: filters[:priceable_type]) if filters[:priceable_type].present?
prices = prices.where(priceable_id: may_array(filters[:priceable_id])) if filters[:priceable_id].present?
prices = prices.where(group_id: may_array(filters[:group_id])) if filters[:group_id].present?
if filters[:plan_id].present?
plan_id = /no|nil|null|undefined/i.match?(filters[:plan_id]) ? nil : filters[:plan_id]
prices = prices.where(plan_id: plan_id)
end
prices
end
end