skv_report 0.3.0 → 0.3.1

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: c31bd0550e519a43a66dd68769bc31ff1fe7b0b31bcbedb00ceb347c2f0aa85c
4
- data.tar.gz: b207e0835e2775c0715ac331a8e76ca9f3eb7418af1ecd1f06addb6ea90f4e2b
3
+ metadata.gz: 256f62be78009098636a7a70508bdead8d7b6bf8ca42446de579b06fc754a29f
4
+ data.tar.gz: 064b150c1c4cb7ad01afe76f09a49fb21d1273be15ffc1f769a8ef53c6224af4
5
5
  SHA512:
6
- metadata.gz: 8ff058a181aacd7bd378aa29b92671b9f1899a6d9839d8818621c682f217066fea9f439efbdc9258d2fc923a1b9af76762cee6774a0b1524ae80e2c5c88dc800
7
- data.tar.gz: c3b3244deca7946db8709cdca43b1b15dfa732837b3c900d49591dc378848c522569977fc20fa15d71e69ca46aa120593a3390d85ecfa1f5b1cb11f3ea3689cf
6
+ metadata.gz: 5bbf13c9b1b83e368c8b983429ebd6b0b3f6ec794c7eccd8822c0779062f89a02626a16fa50e295b320f5b4740a6cdd8be2ca6665f973e413d4435266a5fa12b
7
+ data.tar.gz: 5fb0719b5815e59230ab3e8b9b19c5bc38e8b959489c165ffc443971e8a5537376b795f818487051a9f91f93ce80a2fc2ba21649fee7e8e2e7e626c365c9d85b
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- skv_report (0.3.0)
4
+ skv_report (0.3.1)
5
5
  money (~> 6.14)
6
6
  valvat (~> 1.1)
7
7
 
@@ -6,8 +6,6 @@ require 'skv_report/stripe_charge_row'
6
6
  module SKVReport
7
7
  # Generate SKV CSV string from Stripe charge
8
8
  class Stripe
9
- class NoTurnoverCountryError < StandardError; end
10
-
11
9
  class UndefinedTypeOfSalesError < StandardError; end
12
10
 
13
11
  attr_reader :charges, :period, :year, :company_information, :rates
@@ -19,7 +19,7 @@ module SKVReport
19
19
  #
20
20
  def initialize(charge, exchange_rates)
21
21
  @charge = charge
22
- @buyer_vat_number = charge.dig('customer', 'tax_info', 'tax_id') || ''
22
+ @buyer_vat_number = vat_number
23
23
  @exchange_rates = exchange_rates
24
24
  end
25
25
 
@@ -28,11 +28,23 @@ module SKVReport
28
28
  end
29
29
 
30
30
  def skippable?
31
- swedish_buyer? || !valid_vat_number? || not_completed? || refunded?
31
+ buyer_vat_number.nil? ||
32
+ swedish_buyer? ||
33
+ !valid_vat_number? ||
34
+ not_completed? ||
35
+ refunded?
32
36
  end
33
37
 
34
38
  private
35
39
 
40
+ def vat_number
41
+ tax_object = charge.dig('customer', 'tax_ids', 'data').find do |tax_data|
42
+ tax_data['type'].casecmp?('eu_vat')
43
+ end
44
+
45
+ tax_object&.fetch('value', '')
46
+ end
47
+
36
48
  def swedish_buyer?
37
49
  buyer_vat_number[0...2].casecmp?('SE')
38
50
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SKVReport
4
- VERSION = '0.3.0'
4
+ VERSION = '0.3.1'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: skv_report
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - frdrkolsson