app/models/c80_estate/area.rb in c80_estate-0.1.0.6 vs app/models/c80_estate/area.rb in c80_estate-0.1.0.7

- old
+ new

@@ -74,20 +74,22 @@ end end sum end - def self.where_price(v) + def self.where_price_range(range) self.joins(:item_props) .where(c80_estate_item_props: {prop_name_id: 1}) - .where(c80_estate_item_props: {value: v}) + .where('c80_estate_item_props.value > ?', range.split(',')[0].to_i-1) + .where('c80_estate_item_props.value < ?', range.split(',')[1].to_i+1) end - def self.where_square(v) + def self.where_square_range(range) C80Estate::Area.joins(:item_props) .where(c80_estate_item_props: {prop_name_id: 9}) - .where(c80_estate_item_props: {value: v}) + .where('c80_estate_item_props.value > ?', range.split(',')[0].to_i-1) + .where('c80_estate_item_props.value < ?', range.split(',')[1].to_i+1) end def self.where_oenter(v) # Rails.logger.debug "\t\t [2]: v = #{v}" r = C80Estate::Area.joins(:item_props) @@ -154,19 +156,19 @@ end res end ransacker :item_prop_price_val, - formatter: proc { |price| - results = C80Estate::Area.where_price(price).map(&:id) + formatter: proc { |price_range| # 10,156 + results = C80Estate::Area.where_price_range(price_range).map(&:id) results = results.present? ? results : nil }, splat_params: true do |parent| parent.table[:id] end ransacker :item_prop_square_val, - formatter: proc { |square| - results = C80Estate::Area.where_square(square).map(&:id) + formatter: proc { |square_range| + results = C80Estate::Area.where_square_range(square_range).map(&:id) results = results.present? ? results : nil }, splat_params: true do |parent| parent.table[:id] end \ No newline at end of file