class SuperDeduper::Check

Public Class Methods

new(options) click to toggle source
# File lib/super_deduper/check.rb, line 4
def initialize(options)
  options = {
    delimiter: " "
  }.merge(options) and load_options(:enum, :class, :column, options)
end

Public Instance Methods

dupe_me_not() click to toggle source
# File lib/super_deduper/check.rb, line 27
def dupe_me_not
  !@ret.any? { |k,v| v.any? { |kay,vee| vee != [] } }
end
execute!() click to toggle source
# File lib/super_deduper/check.rb, line 10
def execute!
  @enum.each do |term|
    @ret ||= {}
    @ret.merge!({ term => {} }) # Top level hash keys

    term.split(@delimiter).each do |token|
      @ret[term][token] = @class.where(["#{@column} ilike ?", "%#{token}%"])
    end
  end

  if dupe_me_not
    return PayDirt::Result.new(success: true, data: "No matches found")
  else
    return PayDirt::Result.new(success: true, data: @ret)
  end
end