unleashed 0.1.10 → 0.1.11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bf3ba61a8bff2e77aa0ace253add4da5afbda0061714a9c88845ece3ae649dd4
4
- data.tar.gz: ba46eed20ad77d7b8d26f299067e54be7e374380803aaf13a84c759e6b2511e7
3
+ metadata.gz: 4cdea89c1db61c6f9af7c6c076d44b61c8c8b544700eaab32b2f0b7adba4f71e
4
+ data.tar.gz: a7f23ff31284340aab544858de1a1421bf46a060a550c0b5ff943644b09fcf21
5
5
  SHA512:
6
- metadata.gz: ac418597461705c6773100bba898c13f9b26736da7d6a629124d4fcbfb6c9616b3ff74c5e221f91499d467b06ef116a8e5e5d01ad966129c655f2a52450ad946
7
- data.tar.gz: db6da8431dd8462425306858a923d8709304aa1abd6c7252550fb8b16ba249deb5e75d85f9f9ef7b70d34108506cd01753ff4c2ef4f935aee8d70a474af4118b
6
+ metadata.gz: 9acacc13ac8da33f97fb58da6df5ea72a1f4a7d2b80d663e03e42d34db7542cc0b567c015f794597468aef3a36545bd1c769c04f374b1bb99aa9c85718d7e0f9
7
+ data.tar.gz: f9dcd61b442996136c02b2019c52d2d5f6d5eac5e83422e37becee4910aed7c25acb9278a1fac455ebc103fe4f742738c26cabedc4f18e6968bd275feb0198b8
data/CHANGELOG.md CHANGED
@@ -2,6 +2,18 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [0.1.11] - 2019-12-04
6
+
7
+ - Add `Payment Term`
8
+ - Update `Currency`
9
+ - Update README.md and CHANGELOG.md
10
+
11
+ ## [0.1.10] - 2019-12-02
12
+
13
+ - Add creating `customer`.
14
+ - Add new model `Currency`
15
+ - Custom encoding of `Faraday`.
16
+
5
17
  ## [0.1.9] - 2019-11-29
6
18
 
7
19
  - Add `attr_reader` attributes applying for all models.
data/README.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Unleashed
2
2
 
3
+ [![Join the chat at https://gitter.im/unleashed-ruby/community](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/unleashed-ruby/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
4
+
5
+ [![Gem Version](https://badge.fury.io/rb/unleashed.svg)](https://badge.fury.io/rb/unleashed)
6
+ [![Build Status](https://travis-ci.org/nnhansg/unleashed-ruby.svg?branch=master)](https://travis-ci.org/nnhansg/unleashed-ruby)
7
+ [![Coverage Status](https://coveralls.io/repos/github/nnhansg/unleashed-ruby/badge.svg)](https://coveralls.io/github/nnhansg/unleashed-ruby)
8
+ [![Maintainability](https://api.codeclimate.com/v1/badges/e41f32cc2a422dcecbf7/maintainability)](https://codeclimate.com/github/nnhansg/unleashed-ruby/maintainability)
9
+ [![Test Coverage](https://api.codeclimate.com/v1/badges/e41f32cc2a422dcecbf7/test_coverage)](https://codeclimate.com/github/nnhansg/unleashed-ruby/test_coverage)
10
+
3
11
  Ruby gem for invoking Unleashedsoftware RESTful API [https://apidocs.unleashedsoftware.com](https://apidocs.unleashedsoftware.com)
4
12
 
5
13
  ## 1. Installation
@@ -234,6 +242,46 @@ client.invoices.first
234
242
  client.invoices.last
235
243
  ```
236
244
 
245
+ ### Currencies
246
+
247
+ #### Get all currencies
248
+
249
+ ```ruby
250
+ client.currencies.all
251
+ ```
252
+
253
+ #### Get the first currency
254
+
255
+ ```ruby
256
+ client.currencies.first
257
+ ```
258
+
259
+ #### Get the last currency
260
+
261
+ ```ruby
262
+ client.currencies.last
263
+ ```
264
+
265
+ ### Payment Terms
266
+
267
+ #### Get all payment terms
268
+
269
+ ```ruby
270
+ client.payment_terms.all
271
+ ```
272
+
273
+ #### Get the first payment term
274
+
275
+ ```ruby
276
+ client.payment_terms.first
277
+ ```
278
+
279
+ #### Get the last payment term
280
+
281
+ ```ruby
282
+ client.payment_terms.last
283
+ ```
284
+
237
285
  ## 4. Contributing
238
286
 
239
287
  1. Fork it [https://github.com/nnhansg/unleashed-ruby](https://github.com/nnhansg/unleashed-ruby)
@@ -3,9 +3,13 @@ require_relative 'error'
3
3
  require_relative 'models/base_model'
4
4
  require_relative 'models/customer'
5
5
  require_relative 'models/invoice'
6
+ require_relative 'models/currency'
7
+ require_relative 'models/payment_term'
6
8
  require_relative 'resources/base_resource'
7
9
  require_relative 'resources/customer_resource'
8
10
  require_relative 'resources/invoice_resource'
11
+ require_relative 'resources/currency_resource'
12
+ require_relative 'resources/payment_term_resource'
9
13
  require 'json'
10
14
  require 'faraday'
11
15
 
@@ -111,7 +115,9 @@ module Unleashed
111
115
  def self.resources
112
116
  {
113
117
  customers: CustomerResource,
114
- invoices: InvoiceResource
118
+ invoices: InvoiceResource,
119
+ currencies: CurrencyResource,
120
+ payment_terms: PaymentTermResource
115
121
  }
116
122
  end
117
123
 
@@ -0,0 +1,5 @@
1
+ module Unleashed
2
+ # Manage PaymentTerms
3
+ class PaymentTerm < BaseModel
4
+ end
5
+ end
@@ -49,7 +49,7 @@ module Unleashed
49
49
  all.last
50
50
  end
51
51
 
52
- # Create a new customer for a marketplace
52
+ # Create a new customer
53
53
  #
54
54
  # @param attributes [Hash] Customer's attributes.
55
55
  #
@@ -0,0 +1,50 @@
1
+ module Unleashed
2
+ # Resource for the PaymentTerms API
3
+ # The PaymentTerms resource allows PaymentTerms to be listed.
4
+ #
5
+ # @see https://apidocs.unleashedsoftware.com/PaymentTerms
6
+ class PaymentTermResource < BaseResource
7
+ def model
8
+ Unleashed::PaymentTerm
9
+ end
10
+
11
+ # List all payment_terms
12
+ # /PaymentTerms - also returns the first 200 payment_terms because page number 1 is the default.
13
+ #
14
+ # @param options [Hash] Optional options.
15
+ # @option options [Integer] :page_size Can ask for up to 200 payment_terms. default: 10
16
+ # @option options [Integer] :page Page index. default: 1
17
+ #
18
+ # @return [Array<Unleashed::PaymentTerm>] List all payment_terms.
19
+ def all(options = { page: 1, page_size: 10 })
20
+ response = JSON.parse(@client.get('PaymentTerms', options).body)
21
+ payment_terms = response.key?('Items') ? response['Items'] : []
22
+ payment_terms.map { |attributes| Unleashed::PaymentTerm.new(@client, attributes) }
23
+ end
24
+
25
+ # Get a first payment_term in all
26
+ #
27
+ # @return [Unleashed::PaymentTerm]
28
+ def first
29
+ all.first
30
+ end
31
+
32
+ # Get a last payment_term in all
33
+ #
34
+ # @return [Unleashed::PaymentTerm]
35
+ def last
36
+ all.last
37
+ end
38
+
39
+ # Create a new payment_term
40
+ #
41
+ # @param attributes [Hash] PaymentTerm's attributes.
42
+ #
43
+ # @return [Unleashed::PaymentTerm]
44
+ def create(attributes)
45
+ id = attributes[:Guid].present? ? attributes[:Guid] : ''
46
+ response = JSON.parse(@client.post("PaymentTerms/#{id}", attributes).body)
47
+ Unleashed::PaymentTerm.new(@client, response)
48
+ end
49
+ end
50
+ end
@@ -2,7 +2,7 @@ module Unleashed
2
2
  module Version
3
3
  MAJOR = 0
4
4
  MINOR = 1
5
- TINY = 10
5
+ TINY = 11
6
6
 
7
7
  STRING = "#{MAJOR}.#{MINOR}.#{TINY}".freeze
8
8
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unleashed
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.10
4
+ version: 0.1.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nhan Nguyen
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-12-02 00:00:00.000000000 Z
11
+ date: 2019-12-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -117,10 +117,12 @@ files:
117
117
  - lib/unleashed/models/currency.rb
118
118
  - lib/unleashed/models/customer.rb
119
119
  - lib/unleashed/models/invoice.rb
120
+ - lib/unleashed/models/payment_term.rb
120
121
  - lib/unleashed/resources/base_resource.rb
121
122
  - lib/unleashed/resources/currency_resource.rb
122
123
  - lib/unleashed/resources/customer_resource.rb
123
124
  - lib/unleashed/resources/invoice_resource.rb
125
+ - lib/unleashed/resources/payment_term_resource.rb
124
126
  - lib/unleashed/version.rb
125
127
  - unleashed.gemspec
126
128
  homepage: https://github.com/nnhansg/unleashed-ruby