finapps 5.0.46 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/dependabot.yml +7 -0
- data/.github/workflows/ci.yaml +47 -0
- data/.github/workflows/release.yml +42 -42
- data/.rubocop.yml +1 -1
- data/.ruby-version +1 -1
- data/Guardfile +1 -1
- data/finapps.gemspec +8 -7
- data/lib/finapps.rb +1 -0
- data/lib/finapps/rest/client.rb +2 -1
- data/lib/finapps/rest/consumers.rb +6 -5
- data/lib/finapps/rest/documents_orders.rb +11 -12
- data/lib/finapps/rest/operators.rb +3 -3
- data/lib/finapps/rest/orders.rb +6 -6
- data/lib/finapps/rest/screenings.rb +71 -0
- data/lib/finapps/version.rb +1 -1
- data/spec/rest/api_request.rb +8 -0
- data/spec/rest/consumers_spec.rb +20 -12
- data/spec/rest/documents_orders_spec.rb +29 -40
- data/spec/rest/screenings_spec.rb +251 -0
- data/spec/support/fake_api.rb +9 -0
- data/spec/support/fixtures/screening.json +26 -0
- data/spec/support/fixtures/screening_invalid_update.json +5 -0
- data/spec/support/fixtures/screening_list.json +25 -0
- data/spec/support/fixtures/screenings/last_session.json +13 -0
- data/spec/support/fixtures/screenings/session_not_found_with_id.json +5 -0
- data/spec/support/fixtures/session_not_found.json +5 -0
- data/spec/support/screenings_routes.rb +72 -0
- metadata +109 -77
- data/.github/workflows/main.yaml +0 -38
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 7ba6fe462a4a44f6516aaec7bd31adb52ceffa7e7adabff632ec00d866e684f7
         | 
| 4 | 
            +
              data.tar.gz: 792139e441b48b337df42d97973dbf4529d01d7317eb4249c8f868aaffbb1680
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 6babd0b0fd8d3a567c9f5197673f2a3b7770128c2c688053777af68e02584a456de2f653b7df3eedf66b4f811a8a23da56e38fbe7f781c04bfcb1d22a8020624
         | 
| 7 | 
            +
              data.tar.gz: 17549ec59b21bf9f5a995d25ea87df1068d7067d7f8814dd214ef7521c7b1687d2ece6e78764d0df14a19e473fb8b3f6023f1e3546003aafbaf38d4ff1c35b23
         | 
| @@ -0,0 +1,47 @@ | |
| 1 | 
            +
            name: Continuous Integration
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            on: 
         | 
| 4 | 
            +
              push: 
         | 
| 5 | 
            +
                paths-ignore:
         | 
| 6 | 
            +
                  - ".github/**"
         | 
| 7 | 
            +
                  - ".VERSION"
         | 
| 8 | 
            +
              pull_request:
         | 
| 9 | 
            +
                paths-ignore:
         | 
| 10 | 
            +
                  - ".github/**"
         | 
| 11 | 
            +
                  - ".VERSION"
         | 
| 12 | 
            +
            jobs:
         | 
| 13 | 
            +
              tests:
         | 
| 14 | 
            +
                if: "!contains(github.event.head_commit.message, 'skip ci')"
         | 
| 15 | 
            +
                runs-on: ubuntu-latest
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                strategy:
         | 
| 18 | 
            +
                  fail-fast: true
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                steps:
         | 
| 21 | 
            +
                  - name: Checkout source code
         | 
| 22 | 
            +
                    uses: actions/checkout@v2
         | 
| 23 | 
            +
             | 
| 24 | 
            +
                  - name: Install required ruby
         | 
| 25 | 
            +
                    uses: ruby/setup-ruby@v1
         | 
| 26 | 
            +
             | 
| 27 | 
            +
                  - name: Setup cache key and directory for gems cache
         | 
| 28 | 
            +
                    uses: actions/cache@v2
         | 
| 29 | 
            +
                    with:
         | 
| 30 | 
            +
                      path: vendor/bundle
         | 
| 31 | 
            +
                      key: ${{ runner.os  }}-gems-${{ hashFiles('**/Gemfile.lock')  }}
         | 
| 32 | 
            +
                      restore-keys: |
         | 
| 33 | 
            +
                        ${{ runner.os  }}-gems-
         | 
| 34 | 
            +
             | 
| 35 | 
            +
                  - name: Bundle install
         | 
| 36 | 
            +
                    run: |
         | 
| 37 | 
            +
                      bundle config path vendor/bundle
         | 
| 38 | 
            +
                      bundle config set jobs 4
         | 
| 39 | 
            +
                      bundle config set retry 3
         | 
| 40 | 
            +
                      bundle install
         | 
| 41 | 
            +
             | 
| 42 | 
            +
                  - name: Run rubocop
         | 
| 43 | 
            +
                    run: | 
         | 
| 44 | 
            +
                      bundle exec rubocop --parallel
         | 
| 45 | 
            +
             | 
| 46 | 
            +
                  - name: Run tests
         | 
| 47 | 
            +
                    run: bundle exec rspec
         | 
| @@ -2,53 +2,53 @@ name: Bump version and Release | |
| 2 2 | 
             
            on:
         | 
| 3 3 | 
             
              release:
         | 
| 4 4 | 
             
                types: [published]
         | 
| 5 | 
            -
             | 
| 5 | 
            +
             | 
| 6 6 | 
             
            jobs:
         | 
| 7 7 | 
             
              release:
         | 
| 8 8 | 
             
                runs-on: ubuntu-latest
         | 
| 9 9 | 
             
                strategy:
         | 
| 10 10 | 
             
                  fail-fast: true
         | 
| 11 11 |  | 
| 12 | 
            -
                steps:
         | 
| 13 | 
            -
             | 
| 14 | 
            -
             | 
| 15 | 
            -
                     | 
| 16 | 
            -
             | 
| 12 | 
            +
                steps: 
         | 
| 13 | 
            +
                  - name: Checkout source code
         | 
| 14 | 
            +
                    uses: actions/checkout@v2
         | 
| 15 | 
            +
                    with:
         | 
| 16 | 
            +
                      persist-credentials: false
         | 
| 17 | 
            +
                      fetch-depth: 0 # otherwise, you will fail to push refs to dest repo
         | 
| 18 | 
            +
             | 
| 19 | 
            +
                  - name: Install required ruby version
         | 
| 20 | 
            +
                    uses: ruby/setup-ruby@v1 
         | 
| 21 | 
            +
             | 
| 22 | 
            +
                  - name: Get version from latest tag
         | 
| 23 | 
            +
                    id: get_version
         | 
| 24 | 
            +
                    uses: battila7/get-version-action@v2
         | 
| 25 | 
            +
             | 
| 26 | 
            +
                  - name: Bump version   
         | 
| 27 | 
            +
                    run: |
         | 
| 28 | 
            +
                      gem install -N gem-release
         | 
| 29 | 
            +
                      git config --local user.email "action@github.com"
         | 
| 30 | 
            +
                      git config --local user.name "GitHub Action"
         | 
| 31 | 
            +
                      gem bump --skip-ci --version ${{ steps.get_version.outputs.version-without-v }}
         | 
| 17 32 |  | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
| 20 | 
            -
                     | 
| 21 | 
            -
             | 
| 22 | 
            -
             | 
| 23 | 
            -
             | 
| 24 | 
            -
             | 
| 33 | 
            +
                  - name: Push changes
         | 
| 34 | 
            +
                    uses: ad-m/github-push-action@master
         | 
| 35 | 
            +
                    with:
         | 
| 36 | 
            +
                      # GitHub Actions token does not support pushing to protected branches.
         | 
| 37 | 
            +
                      # github_token: ${{ secrets.GITHUB_TOKEN }}
         | 
| 38 | 
            +
                      #        
         | 
| 39 | 
            +
                      # A manually populated`PERSONAL_ACCESS_TOKEN` environment variable 
         | 
| 40 | 
            +
                      # with permissions to push to a protected branch must be used.
         | 
| 41 | 
            +
                      # not ideal - keep eyes open for a better solution
         | 
| 42 | 
            +
                      github_token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
         | 
| 25 43 |  | 
| 26 | 
            -
             | 
| 27 | 
            -
             | 
| 28 | 
            -
             | 
| 29 | 
            -
             | 
| 30 | 
            -
             | 
| 31 | 
            -
             | 
| 32 | 
            -
             | 
| 33 | 
            -
             | 
| 34 | 
            -
             | 
| 35 | 
            -
             | 
| 36 | 
            -
             | 
| 37 | 
            -
                    # github_token: ${{ secrets.GITHUB_TOKEN }}
         | 
| 38 | 
            -
                    #        
         | 
| 39 | 
            -
                    # A manually populated`PERSONAL_ACCESS_TOKEN` environment variable 
         | 
| 40 | 
            -
                    # with permissions to push to a protected branch must be used.
         | 
| 41 | 
            -
                    # not ideal - keep eyes open for a better solution
         | 
| 42 | 
            -
                    github_token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
         | 
| 43 | 
            -
                    
         | 
| 44 | 
            -
                - name: Release gem to rubygems.org    
         | 
| 45 | 
            -
                  run: |
         | 
| 46 | 
            -
                    set +x
         | 
| 47 | 
            -
                    mkdir -p ~/.gem
         | 
| 48 | 
            -
                    cat << EOF > ~/.gem/credentials
         | 
| 49 | 
            -
                    ---
         | 
| 50 | 
            -
                    :rubygems_api_key: ${{ secrets.RUBYGEMS_API_KEY }}
         | 
| 51 | 
            -
                    EOF
         | 
| 52 | 
            -
                    chmod 0600 ~/.gem/credentials
         | 
| 53 | 
            -
                    set -x
         | 
| 54 | 
            -
                    gem release
         | 
| 44 | 
            +
                  - name: Release gem to rubygems.org    
         | 
| 45 | 
            +
                    run: |
         | 
| 46 | 
            +
                      set +x
         | 
| 47 | 
            +
                      mkdir -p ~/.gem
         | 
| 48 | 
            +
                      cat << EOF > ~/.gem/credentials
         | 
| 49 | 
            +
                      ---
         | 
| 50 | 
            +
                      :rubygems_api_key: ${{ secrets.RUBYGEMS_API_KEY }}
         | 
| 51 | 
            +
                      EOF
         | 
| 52 | 
            +
                      chmod 0600 ~/.gem/credentials
         | 
| 53 | 
            +
                      set -x
         | 
| 54 | 
            +
                      gem release
         | 
    
        data/.rubocop.yml
    CHANGED
    
    
    
        data/.ruby-version
    CHANGED
    
    | @@ -1 +1 @@ | |
| 1 | 
            -
            ruby-2. | 
| 1 | 
            +
            ruby-2.7.2
         | 
    
        data/Guardfile
    CHANGED
    
    | @@ -17,7 +17,7 @@ | |
| 17 17 | 
             
            #
         | 
| 18 18 | 
             
            # and, you'll have to watch "config/Guardfile" instead of "Guardfile"
         | 
| 19 19 |  | 
| 20 | 
            -
            #  | 
| 20 | 
            +
            # NOTE: The cmd option is now required due to the increasing number of ways
         | 
| 21 21 | 
             
            #       rspec may be run, below are examples of the most common uses.
         | 
| 22 22 | 
             
            #  * bundler: 'bundle exec rspec'
         | 
| 23 23 | 
             
            #  * bundler binstubs: 'bin/rspec'
         | 
    
        data/finapps.gemspec
    CHANGED
    
    | @@ -20,19 +20,20 @@ Gem::Specification.new do |spec| | |
| 20 20 | 
             
              spec.test_files = Dir['spec/**/*.rb']
         | 
| 21 21 | 
             
              spec.require_paths = ['lib']
         | 
| 22 22 |  | 
| 23 | 
            -
              spec.add_runtime_dependency     'finapps_core',               '~> 5.0',   '>= 5.0. | 
| 23 | 
            +
              spec.add_runtime_dependency     'finapps_core',               '~> 5.0',   '>= 5.0.15'
         | 
| 24 24 |  | 
| 25 25 | 
             
              spec.add_development_dependency 'bundler',                    '~> 2.0',   '>= 2.0.2'
         | 
| 26 26 | 
             
              spec.add_development_dependency 'codeclimate-test-reporter',  '~> 1.0',   '>= 1.0.9'
         | 
| 27 27 | 
             
              spec.add_development_dependency 'guard',                      '~> 2.16',  '>= 2.16.1'
         | 
| 28 28 | 
             
              spec.add_development_dependency 'guard-rspec',                '~> 4.7',   '>= 4.7.3'
         | 
| 29 29 | 
             
              spec.add_development_dependency 'rake',                       '~> 13.0',  '>= 13.0.1'
         | 
| 30 | 
            -
              spec.add_development_dependency 'rspec',                      '~> 3. | 
| 31 | 
            -
              spec.add_development_dependency 'rubocop',                    '~>  | 
| 32 | 
            -
              spec.add_development_dependency 'rubocop-performance',        '~> 1. | 
| 33 | 
            -
              spec.add_development_dependency 'rubocop- | 
| 34 | 
            -
              spec.add_development_dependency ' | 
| 35 | 
            -
              spec.add_development_dependency ' | 
| 30 | 
            +
              spec.add_development_dependency 'rspec',                      '~> 3.10',  '>= 3.10.0'
         | 
| 31 | 
            +
              spec.add_development_dependency 'rubocop',                    '~> 1.9',   '>= 1.9.1'
         | 
| 32 | 
            +
              spec.add_development_dependency 'rubocop-performance',        '~> 1.9',   '>= 1.9.2'
         | 
| 33 | 
            +
              spec.add_development_dependency 'rubocop-rake',               '~> 0.5',   '>= 0.5.1'
         | 
| 34 | 
            +
              spec.add_development_dependency 'rubocop-rspec',              '~> 2.2',   '>= 2.2.0'
         | 
| 35 | 
            +
              spec.add_development_dependency 'sinatra',                    '~> 2.1',   '>= 2.1.0'
         | 
| 36 | 
            +
              spec.add_development_dependency 'webmock',                    '~> 3.11',  '>= 3.11.2'
         | 
| 36 37 |  | 
| 37 38 | 
             
              spec.extra_rdoc_files = %w[README.md LICENSE.txt]
         | 
| 38 39 | 
             
              spec.rdoc_options = %w[--line-numbers --inline-source --title finapps-ruby --main README.md]
         | 
    
        data/lib/finapps.rb
    CHANGED
    
    | @@ -35,6 +35,7 @@ require 'finapps/rest/esign_templates' | |
| 35 35 | 
             
            require 'finapps/rest/documents_upload_types'
         | 
| 36 36 | 
             
            require 'finapps/rest/signed_documents_downloads'
         | 
| 37 37 | 
             
            require 'finapps/rest/documents_orders_notifications'
         | 
| 38 | 
            +
            require 'finapps/rest/screenings'
         | 
| 38 39 |  | 
| 39 40 | 
             
            require 'finapps/rest/plaid/plaid_resources'
         | 
| 40 41 | 
             
            require 'finapps/rest/plaid/plaid_webhooks'
         | 
    
        data/lib/finapps/rest/client.rb
    CHANGED
    
    | @@ -37,6 +37,7 @@ module FinApps | |
| 37 37 | 
             
                    portfolios_consumers
         | 
| 38 38 | 
             
                    portfolio_reports
         | 
| 39 39 | 
             
                    products
         | 
| 40 | 
            +
                    screenings
         | 
| 40 41 | 
             
                    sessions
         | 
| 41 42 | 
             
                    signed_documents_downloads
         | 
| 42 43 | 
             
                    tenant_settings
         | 
| @@ -82,7 +83,7 @@ module FinApps | |
| 82 83 |  | 
| 83 84 | 
             
                  def camelize(term)
         | 
| 84 85 | 
             
                    string = term.to_s
         | 
| 85 | 
            -
                    string = string.sub(/^[a-z\d]*/) {  | 
| 86 | 
            +
                    string = string.sub(/^[a-z\d]*/) { Regexp.last_match(0).capitalize }
         | 
| 86 87 | 
             
                    string.gsub(%r{(?:_|(/))([a-z\d]*)}) do
         | 
| 87 88 | 
             
                      Regexp.last_match(2).capitalize.to_s
         | 
| 88 89 | 
             
                    end
         | 
| @@ -62,9 +62,10 @@ module FinApps | |
| 62 62 |  | 
| 63 63 | 
             
                  def with_space_search(term)
         | 
| 64 64 | 
             
                    [
         | 
| 65 | 
            -
                      { | 
| 66 | 
            -
                      { | 
| 67 | 
            -
                      { | 
| 65 | 
            +
                      {external_id: term},
         | 
| 66 | 
            +
                      {email: term},
         | 
| 67 | 
            +
                      {first_name: term},
         | 
| 68 | 
            +
                      {last_name: term}
         | 
| 68 69 | 
             
                    ]
         | 
| 69 70 | 
             
                  end
         | 
| 70 71 |  | 
| @@ -72,8 +73,8 @@ module FinApps | |
| 72 73 | 
             
                    search_arr = []
         | 
| 73 74 | 
             
                    if /\s/.match?(term)
         | 
| 74 75 | 
             
                      term.split.each do |t|
         | 
| 75 | 
            -
                        search_arr.append( | 
| 76 | 
            -
                        search_arr.append( | 
| 76 | 
            +
                        search_arr.append(first_name: t)
         | 
| 77 | 
            +
                        search_arr.append(last_name: t)
         | 
| 77 78 | 
             
                      end
         | 
| 78 79 | 
             
                    end
         | 
| 79 80 | 
             
                    search_arr
         | 
| @@ -90,22 +90,21 @@ module FinApps | |
| 90 90 | 
             
                  end
         | 
| 91 91 |  | 
| 92 92 | 
             
                  def with_space_search(term)
         | 
| 93 | 
            -
                    [
         | 
| 94 | 
            -
             | 
| 95 | 
            -
             | 
| 96 | 
            -
             | 
| 97 | 
            -
             | 
| 98 | 
            -
             | 
| 99 | 
            -
             | 
| 100 | 
            -
             | 
| 101 | 
            -
             | 
| 102 | 
            -
                    ]
         | 
| 93 | 
            +
                    [{"applicant.email": term},
         | 
| 94 | 
            +
                     {"applicant.first_name": term},
         | 
| 95 | 
            +
                     {"applicant.last_name": term},
         | 
| 96 | 
            +
                     {"applicant.external_id": term},
         | 
| 97 | 
            +
                     {
         | 
| 98 | 
            +
                       reference_no: {
         | 
| 99 | 
            +
                         "$regex": "^#{term}", "$options": 'i'
         | 
| 100 | 
            +
                       }
         | 
| 101 | 
            +
                     }]
         | 
| 103 102 | 
             
                  end
         | 
| 104 103 |  | 
| 105 104 | 
             
                  def tag_query(tag)
         | 
| 106 105 | 
             
                    return {} unless tag
         | 
| 107 106 |  | 
| 108 | 
            -
                    { | 
| 107 | 
            +
                    {tag: tag.empty? ? nil : tag}
         | 
| 109 108 | 
             
                  end
         | 
| 110 109 |  | 
| 111 110 | 
             
                  def status_query(status)
         | 
| @@ -117,7 +116,7 @@ module FinApps | |
| 117 116 | 
             
                  def consumer_query(consumer)
         | 
| 118 117 | 
             
                    return {} unless consumer
         | 
| 119 118 |  | 
| 120 | 
            -
                    { | 
| 119 | 
            +
                    {consumer_id: consumer.empty? ? nil : consumer}
         | 
| 121 120 | 
             
                  end
         | 
| 122 121 | 
             
                end
         | 
| 123 122 | 
             
              end
         | 
| @@ -64,14 +64,14 @@ module FinApps | |
| 64 64 | 
             
                  end
         | 
| 65 65 |  | 
| 66 66 | 
             
                  def search_query(term)
         | 
| 67 | 
            -
                    { | 
| 67 | 
            +
                    {last_name: term}
         | 
| 68 68 | 
             
                  end
         | 
| 69 69 |  | 
| 70 70 | 
             
                  def role_query(role)
         | 
| 71 71 | 
             
                    if role.is_a?(Array)
         | 
| 72 | 
            -
                      { | 
| 72 | 
            +
                      {role: {"$in": role.map(&:to_i)}}
         | 
| 73 73 | 
             
                    else
         | 
| 74 | 
            -
                      { | 
| 74 | 
            +
                      {role: role.to_i}
         | 
| 75 75 | 
             
                    end
         | 
| 76 76 | 
             
                  end
         | 
| 77 77 | 
             
                end
         | 
    
        data/lib/finapps/rest/orders.rb
    CHANGED
    
    | @@ -81,7 +81,7 @@ module FinApps | |
| 81 81 | 
             
                  end
         | 
| 82 82 |  | 
| 83 83 | 
             
                  def search_query_object(term)
         | 
| 84 | 
            -
                    [{ | 
| 84 | 
            +
                    [{public_id: {"$regex": "^#{term}", "$options": 'i'}},
         | 
| 85 85 | 
             
                     {"assignment.last_name": term},
         | 
| 86 86 | 
             
                     {"applicant.first_name": term},
         | 
| 87 87 | 
             
                     {"applicant.last_name": term},
         | 
| @@ -95,9 +95,9 @@ module FinApps | |
| 95 95 | 
             
                  def status_query(status)
         | 
| 96 96 | 
             
                    if status
         | 
| 97 97 | 
             
                      if status.is_a?(Array)
         | 
| 98 | 
            -
                        { | 
| 98 | 
            +
                        {status: {"$in": status.map(&:to_i)}}
         | 
| 99 99 | 
             
                      else
         | 
| 100 | 
            -
                        { | 
| 100 | 
            +
                        {status: status.to_i}
         | 
| 101 101 | 
             
                      end
         | 
| 102 102 | 
             
                    else
         | 
| 103 103 | 
             
                      {}
         | 
| @@ -115,7 +115,7 @@ module FinApps | |
| 115 115 |  | 
| 116 116 | 
             
                  def consumer_query(consumer)
         | 
| 117 117 | 
             
                    if consumer
         | 
| 118 | 
            -
                      { | 
| 118 | 
            +
                      {consumer_id: consumer.empty? ? nil : consumer}
         | 
| 119 119 | 
             
                    else
         | 
| 120 120 | 
             
                      {}
         | 
| 121 121 | 
             
                    end
         | 
| @@ -125,8 +125,8 @@ module FinApps | |
| 125 125 | 
             
                    if !search_term && !nil_or_empty?(relation)
         | 
| 126 126 | 
             
                      {
         | 
| 127 127 | 
             
                        "$or": [
         | 
| 128 | 
            -
                          { | 
| 129 | 
            -
                          { | 
| 128 | 
            +
                          {public_id: {"$in": relation}},
         | 
| 129 | 
            +
                          {original_order_id: {"$in": relation}}
         | 
| 130 130 | 
             
                        ]
         | 
| 131 131 | 
             
                      }
         | 
| 132 132 | 
             
                    else
         | 
| @@ -0,0 +1,71 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            require_relative '../utils/query_builder'
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            module FinApps
         | 
| 6 | 
            +
              module REST
         | 
| 7 | 
            +
                class Screenings < FinAppsCore::REST::Resources # :nodoc:
         | 
| 8 | 
            +
                  include FinApps::Utils::QueryBuilder
         | 
| 9 | 
            +
             | 
| 10 | 
            +
                  def show(id)
         | 
| 11 | 
            +
                    not_blank(id, :session_id)
         | 
| 12 | 
            +
             | 
| 13 | 
            +
                    path = "#{end_point}/#{ERB::Util.url_encode(id)}/resume"
         | 
| 14 | 
            +
                    super(nil, path)
         | 
| 15 | 
            +
                  end
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                  def last(consumer_id)
         | 
| 18 | 
            +
                    not_blank(consumer_id, :consumer_id)
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                    path = "#{end_point}/#{ERB::Util.url_encode(consumer_id)}/consumer"
         | 
| 21 | 
            +
                    send_request_for_id path, :get, nil
         | 
| 22 | 
            +
                  end
         | 
| 23 | 
            +
             | 
| 24 | 
            +
                  def create(params)
         | 
| 25 | 
            +
                    not_blank(params, :params)
         | 
| 26 | 
            +
                    super params
         | 
| 27 | 
            +
                  end
         | 
| 28 | 
            +
             | 
| 29 | 
            +
                  def list(params = nil)
         | 
| 30 | 
            +
                    return super if params.nil?
         | 
| 31 | 
            +
                    fail FinAppsCore::InvalidArgumentsError, 'Invalid argument: params' unless params.is_a? Hash
         | 
| 32 | 
            +
             | 
| 33 | 
            +
                    super build_query_path(end_point, params)
         | 
| 34 | 
            +
                  end
         | 
| 35 | 
            +
             | 
| 36 | 
            +
                  def update(id, params)
         | 
| 37 | 
            +
                    not_blank(id, :session_id)
         | 
| 38 | 
            +
                    not_blank(params, :params)
         | 
| 39 | 
            +
             | 
| 40 | 
            +
                    path = "#{end_point}/#{ERB::Util.url_encode(id)}"
         | 
| 41 | 
            +
                    super params, path
         | 
| 42 | 
            +
                  end
         | 
| 43 | 
            +
             | 
| 44 | 
            +
                  def destroy(id)
         | 
| 45 | 
            +
                    not_blank(id, :session_id)
         | 
| 46 | 
            +
             | 
| 47 | 
            +
                    super
         | 
| 48 | 
            +
                  end
         | 
| 49 | 
            +
             | 
| 50 | 
            +
                  private
         | 
| 51 | 
            +
             | 
| 52 | 
            +
                  def build_filter(params)
         | 
| 53 | 
            +
                    search_query(params[:searchTerm])
         | 
| 54 | 
            +
                  end
         | 
| 55 | 
            +
             | 
| 56 | 
            +
                  def search_query(term)
         | 
| 57 | 
            +
                    return {} unless term
         | 
| 58 | 
            +
             | 
| 59 | 
            +
                    query = search_query_object(term)
         | 
| 60 | 
            +
                    {"$or": query}
         | 
| 61 | 
            +
                  end
         | 
| 62 | 
            +
             | 
| 63 | 
            +
                  def search_query_object(term)
         | 
| 64 | 
            +
                    [
         | 
| 65 | 
            +
                      {"consumer.public_id": term},
         | 
| 66 | 
            +
                      {"consumer.email": term}
         | 
| 67 | 
            +
                    ]
         | 
| 68 | 
            +
                  end
         | 
| 69 | 
            +
                end
         | 
| 70 | 
            +
              end
         | 
| 71 | 
            +
            end
         |