moss_generator 0.1.3 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/moss_generator/stripe.rb +5 -2
- data/lib/moss_generator/stripe_charge_row.rb +30 -3
- data/lib/moss_generator/version.rb +1 -1
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ad1ddceb7b906a75ee7db040f6f02daa81743a0740ee9f3c060d6ec91b4fdf29
|
4
|
+
data.tar.gz: 94c9ba93ab8d08a7db9829cadd1c9e2cc5770777d09015e6bbbfa085aa207cd5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2c550595f24be6127e4555c58320e6e48c331cd17a8e74000ea57fbf7939d53c73c31bb390b3d7f71d84f7b0768f7c823e519a93b2b90bc226f30b6945bbb8af
|
7
|
+
data.tar.gz: d803e9ec37eceb859a5d726d0a5376659a979039add06b84a2d8ce47dc2cb19a55adbc2be9f7cad0f4f88a7ed00095b430a3dbe641811996f7fbe87fded1f378
|
data/Gemfile.lock
CHANGED
@@ -45,8 +45,11 @@ module MossGenerator
|
|
45
45
|
|
46
46
|
def group_charges_rows
|
47
47
|
charges_rows = charges.map do |charge|
|
48
|
-
MossGenerator::StripeChargeRow.new(charge)
|
49
|
-
|
48
|
+
charge_row = MossGenerator::StripeChargeRow.new(charge)
|
49
|
+
next if charge_row.skippable?
|
50
|
+
|
51
|
+
charge_row
|
52
|
+
end.compact
|
50
53
|
charges_rows.group_by(&:country_code)
|
51
54
|
end
|
52
55
|
|
@@ -22,7 +22,7 @@ module MossGenerator
|
|
22
22
|
end
|
23
23
|
|
24
24
|
def amount
|
25
|
-
|
25
|
+
amount_without_vat
|
26
26
|
end
|
27
27
|
|
28
28
|
def vat_rate
|
@@ -33,15 +33,42 @@ module MossGenerator
|
|
33
33
|
amount * vat_rate_calculatable_percent
|
34
34
|
end
|
35
35
|
|
36
|
+
def skippable?
|
37
|
+
company? || not_completed? || refunded?
|
38
|
+
end
|
39
|
+
|
36
40
|
private
|
37
41
|
|
42
|
+
def company?
|
43
|
+
charge.dig('metadata', 'vat_number').nil? ? false : true
|
44
|
+
end
|
45
|
+
|
46
|
+
def not_completed?
|
47
|
+
charge['status'] != 'succeeded'
|
48
|
+
end
|
49
|
+
|
50
|
+
def refunded?
|
51
|
+
charge['refunded']
|
52
|
+
end
|
53
|
+
|
54
|
+
def amount_without_vat
|
55
|
+
amount_with_vat * percent_without_vat
|
56
|
+
end
|
57
|
+
|
58
|
+
def amount_with_vat
|
59
|
+
charge.dig('balance_transaction', 'amount')
|
60
|
+
end
|
61
|
+
|
62
|
+
def percent_without_vat
|
63
|
+
1 / (vat_rate_calculatable_percent + 1)
|
64
|
+
end
|
65
|
+
|
38
66
|
def vat_rate_calculatable_percent
|
39
67
|
(vat_rate.to_f / 100)
|
40
68
|
end
|
41
69
|
|
42
70
|
def fetch_country_code
|
43
|
-
charge.dig('payment_method_details', 'card', 'country')
|
44
|
-
charge.dig('billing_details', 'address', 'country')
|
71
|
+
charge.dig('payment_method_details', 'card', 'country')
|
45
72
|
end
|
46
73
|
end
|
47
74
|
end
|
metadata
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: moss_generator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- frdrkolsson
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
11
|
date: 2021-01-15 00:00:00.000000000 Z
|
@@ -43,7 +43,7 @@ metadata:
|
|
43
43
|
homepage_uri: https://github.com/standout/moss_generator
|
44
44
|
source_code_uri: https://github.com/standout/moss_generator
|
45
45
|
changelog_uri: https://github.com/standout/moss_generator
|
46
|
-
post_install_message:
|
46
|
+
post_install_message:
|
47
47
|
rdoc_options: []
|
48
48
|
require_paths:
|
49
49
|
- lib
|
@@ -58,8 +58,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
58
58
|
- !ruby/object:Gem::Version
|
59
59
|
version: '0'
|
60
60
|
requirements: []
|
61
|
-
rubygems_version: 3.
|
62
|
-
signing_key:
|
61
|
+
rubygems_version: 3.2.3
|
62
|
+
signing_key:
|
63
63
|
specification_version: 4
|
64
64
|
summary: Skatteverket Mini One Stop Shop(MOSS) generator.
|
65
65
|
test_files: []
|