money_s3 2.3.0 → 2.4.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: e684ed7fab904743bc20497e24eb0d5912ce2e324cc33f7c2682207dbd9e4a69
4
- data.tar.gz: 5527507f024ac22534bd24fa722007674098218f7e3e5d0f2c8a3bf59139269f
3
+ metadata.gz: a72756a4604182bf1371e7bd7e2338a202d69e80bbd810354bda95c184556a99
4
+ data.tar.gz: ef02ea8aade32a07fbd5011b5753305425675b897f431fd89d25bb6842670783
5
5
  SHA512:
6
- metadata.gz: 5736e0747765260d14c700a5e1bc783709e8218d50ff250e23f56ec64bf92f6da78b0767d879fe237be7a9c26f4c794f9786d7933c781d85f73a708c9379bb2c
7
- data.tar.gz: a35800cb1a25166b5f31906d30aa88512decd57563212df27bc23d41e290f40ce0946a4dfe444330c838d3f37a0d4701a0f9d097b282b73825bf0b4719be0b6e
6
+ metadata.gz: be309a7a67b95f2b2075ecdaa000de3b7a666d97b8dd24bdce2d05dda67f4a9d40af4b987baeb96f8af1ac122e2e010bc03d49d7309740126978629580d09d1f
7
+ data.tar.gz: ff05c410b6173f8d45ef8b2327696b455b6179f0f5da36073f8d062a0b77df2362b1a7639d4bd2e57e72b0331f5d6259b670b2c7334628347136873b91b736e3
@@ -37,6 +37,14 @@ module MoneyS3
37
37
  ad_kod: item[:counterparty_bank_code].to_s
38
38
  }
39
39
 
40
+ if item[:rule]
41
+ data.merge!({ pr_kont: item[:rule] })
42
+ end
43
+
44
+ if item[:vat_rule]
45
+ data.merge!({ cleneni: item[:vat_rule] })
46
+ end
47
+
40
48
  if item[:foreign_currency_code]
41
49
  data.merge!({
42
50
  valuty: {
@@ -55,19 +63,23 @@ module MoneyS3
55
63
  fail "Unknown transaction type: #{transaction_type}" unless TRANSACTION_TYPES.include? transaction_type
56
64
 
57
65
  if transaction_type == :credit
58
- data.merge!({
66
+ defaults = {
59
67
  vydej: '0',
60
68
  pr_kont: @credit_transactions_rule,
61
69
  cleneni: @credit_transactions_vat_rule,
62
70
  d_rada: @credit_transactions_series
63
- })
71
+ }
72
+
73
+ data = defaults.merge(data)
64
74
  else
65
- data.merge!({
75
+ defaults = {
66
76
  vydej: '1',
67
77
  pr_kont: @debit_transactions_rule,
68
78
  cleneni: @debit_transactions_vat_rule,
69
79
  d_rada: @debit_transactions_series
70
- })
80
+ }
81
+
82
+ data = defaults.merge(data)
71
83
  end
72
84
 
73
85
  data.delete_if { |_, v| v.nil? || v == '' }
@@ -0,0 +1,37 @@
1
+ module MoneyS3
2
+ module Utils
3
+ class Receipts
4
+ TRANSACTION_TYPES = [:credit, :debit]
5
+
6
+ def to_xml(raw)
7
+ receipts = raw.map do |item|
8
+ data = {
9
+ dat_uc_pr: item[:date].to_s,
10
+ dat_vyst: item[:date].to_s,
11
+ dat_plat: item[:date].to_s,
12
+ dat_upl_dph: item[:date].to_s,
13
+ popis: item[:description],
14
+ dat_pln: item[:date].to_s,
15
+ celkem: item[:amount].abs.to_s,
16
+ pokl: item[:my_petty_cash_id],
17
+ souhrn_dph: {
18
+ zaklad0: item[:amount].abs.to_s
19
+ },
20
+ pr_kont: item[:transaction_rule],
21
+ cleneni: item[:transaction_vat_rule],
22
+ d_rada: item[:series]
23
+ }
24
+
25
+ if item[:amount].negative?
26
+ data.merge({ vydej: '1' })
27
+ else
28
+ data.merge({ vydej: '0' })
29
+ end
30
+ end
31
+
32
+ money_data = { seznam_pok_dokl: receipts }
33
+ MoneyS3.build(money_data)
34
+ end
35
+ end
36
+ end
37
+ end
data/lib/money_s3.rb CHANGED
@@ -6,6 +6,7 @@ require 'money_s3/parsers/money_data'
6
6
  require 'money_s3/builders/money_data'
7
7
 
8
8
  require 'money_s3/utils/bank_statements'
9
+ require 'money_s3/utils/receipts'
9
10
 
10
11
  module MoneyS3
11
12
  def self.parse(raw)
data/money_s3.gemspec CHANGED
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
 
4
4
  Gem::Specification.new do |spec|
5
5
  spec.name = 'money_s3'
6
- spec.version = '2.3.0'
6
+ spec.version = '2.4.1'
7
7
  spec.authors = ['Premysl Donat']
8
8
  spec.email = ['pdonat@seznam.cz']
9
9
 
@@ -20,6 +20,7 @@ Gem::Specification.new do |spec|
20
20
  spec.add_dependency 'ox'
21
21
  spec.add_dependency 'damedata_parser_core'
22
22
 
23
+ spec.add_development_dependency 'json'
23
24
  spec.add_development_dependency 'bundler'
24
25
  spec.add_development_dependency 'rspec'
25
26
  spec.add_development_dependency 'rspec-its'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: money_s3
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0
4
+ version: 2.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Premysl Donat
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-08 00:00:00.000000000 Z
11
+ date: 2024-02-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ox
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: json
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: bundler
43
57
  requirement: !ruby/object:Gem::Requirement
@@ -558,6 +572,7 @@ files:
558
572
  - lib/money_s3/parsers/zavazek_type.rb
559
573
  - lib/money_s3/requires.rb
560
574
  - lib/money_s3/utils/bank_statements.rb
575
+ - lib/money_s3/utils/receipts.rb
561
576
  - money_s3.gemspec
562
577
  - xsd/Dochazka/Dochazka.xsd
563
578
  - xsd/Dochazka/Zamestnanci.xsd
@@ -586,7 +601,7 @@ homepage: https://github.com/Masa331/moneys3
586
601
  licenses:
587
602
  - MIT
588
603
  metadata: {}
589
- post_install_message:
604
+ post_install_message:
590
605
  rdoc_options: []
591
606
  require_paths:
592
607
  - lib
@@ -601,8 +616,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
601
616
  - !ruby/object:Gem::Version
602
617
  version: '0'
603
618
  requirements: []
604
- rubygems_version: 3.1.2
605
- signing_key:
619
+ rubygems_version: 3.3.25
620
+ signing_key:
606
621
  specification_version: 4
607
622
  summary: MoneyS3 XML parser and builder
608
623
  test_files: []