vesr 0.13.1 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 3450d3a9a5cc6153eb7f5a327971bd3895d6147b
4
+ data.tar.gz: cb623ffa96b02ec15ace1c46247be069ec64d2ca
5
+ SHA512:
6
+ metadata.gz: 7f9fe0c6f727d99c6484475e42b382b1cbab3730767a417e1364fc85e59ddf5846f4c27467dae96fc71aa76cc76dcb98e89faea64b5f81ae18166640064585e4
7
+ data.tar.gz: 7ee38e929b480680b258f60ca3690fe06fdefc6013001c6ac2c6bc24b2d8e14fa0b35f79ef8f44e7279c7b32a5ae3b6f92a5778f11868c60b1760b5b29937aae
@@ -11,28 +11,29 @@ class EsrRecord < ActiveRecord::Base
11
11
 
12
12
  # State Machine
13
13
  include AASM
14
- aasm_column :state
15
- validates_presence_of :state
16
14
 
17
- aasm_initial_state :ready
18
- aasm_state :ready
19
- aasm_state :paid
20
- aasm_state :missing
21
- aasm_state :overpaid
22
- aasm_state :underpaid
23
- aasm_state :resolved
24
- aasm_state :duplicate
15
+ validates_presence_of :state
25
16
 
26
- aasm_event :write_off do
27
- transitions :from => :underpaid, :to => :resolved
28
- end
17
+ aasm :column => :state do
18
+ state :ready, :initial => true
19
+ state :paid
20
+ state :missing
21
+ state :overpaid
22
+ state :underpaid
23
+ state :resolved
24
+ state :duplicate
25
+
26
+ event :write_off do
27
+ transitions :from => :underpaid, :to => :resolved
28
+ end
29
29
 
30
- aasm_event :resolve do
31
- transitions :from => :underpaid, :to => :resolved
32
- end
30
+ event :resolve do
31
+ transitions :from => :underpaid, :to => :resolved
32
+ end
33
33
 
34
- aasm_event :book_extra_earning do
35
- transitions :from => [:overpaid, :missing], :to => :resolved
34
+ event :book_extra_earning do
35
+ transitions :from => [:overpaid, :missing], :to => :resolved
36
+ end
36
37
  end
37
38
 
38
39
  scope :invalid, where(:state => ['overpaid', 'underpaid', 'resolved'])
@@ -100,6 +101,11 @@ class EsrRecord < ActiveRecord::Base
100
101
  end
101
102
 
102
103
  def update_remarks
104
+ # Duplicate
105
+ if self.state == 'duplicate'
106
+ return
107
+ end
108
+
103
109
  # Invoice not found
104
110
  if self.state == 'missing'
105
111
  self.remarks += ", Rechnung ##{invoice_id} nicht gefunden"
@@ -116,7 +122,7 @@ class EsrRecord < ActiveRecord::Base
116
122
  return if invoice.balance == 0
117
123
 
118
124
  # Paid more than once
119
- if (self.state == 'overpaid') and (invoice.amount == self.amount)
125
+ if (self.state == 'overpaid') && (invoice.amount == self.amount)
120
126
  self.remarks += ", mehrfach bezahlt"
121
127
  return
122
128
  end
@@ -182,7 +188,7 @@ class EsrRecord < ActiveRecord::Base
182
188
 
183
189
  # Tries to find a record this would duplicate
184
190
  def duplicate_of
185
- EsrRecord.where(:reference => reference, :bank_pc_id => bank_pc_id, :amount => amount, :payment_date => payment_date, :transaction_date => transaction_date).first
191
+ EsrRecord.where(:reference => reference, :bank_pc_id => bank_pc_id, :amount => amount, :payment_date => payment_date, :transaction_date => transaction_date).where("id != ?", id).first
186
192
  end
187
193
 
188
194
  def create_esr_booking
@@ -193,13 +199,13 @@ class EsrRecord < ActiveRecord::Base
193
199
  debit_account = invoice.balance_account
194
200
  else
195
201
  esr_booking = Booking.new
196
- debit_account = Invoice.direct_account
202
+ debit_account = DebitInvoice.balance_account
197
203
  end
198
204
 
199
205
  esr_booking.update_attributes(
200
206
  :amount => amount,
201
- :credit_account => vesr_account,
202
207
  :debit_account => debit_account,
208
+ :credit_account => vesr_account,
203
209
  :value_date => value_date,
204
210
  :title => "VESR Zahlung",
205
211
  :comments => remarks
@@ -6,5 +6,5 @@
6
6
  %td.currency= currency_fmt(esr_record.amount.currency_round)
7
7
  %td.currency= currency_fmt(esr_record.invoice.balance.currency_round) if esr_record.invoice
8
8
  %td.action-links
9
- - esr_record.aasm_events_for_current_state.each do |event|
9
+ - esr_record.aasm.events.each do |event|
10
10
  = link_to image_tag("16x16/#{event}.png"), polymorphic_url([event, esr_record]), :remote => true, :method => :post, :title => t_action(event)
@@ -7,8 +7,10 @@ module Prawn
7
7
  include ActionView::Helpers::TranslationHelper
8
8
 
9
9
  def draw_account_detail(bank, sender, print_payment_for)
10
- text bank.vcard.full_name
11
- text bank.vcard.postal_code + " " + bank.vcard.locality
10
+ if bank
11
+ text bank.vcard.full_name
12
+ text bank.vcard.postal_code + " " + bank.vcard.locality
13
+ end
12
14
 
13
15
  text " "
14
16
  if print_payment_for
@@ -1,3 +1,3 @@
1
1
  module Vesr
2
- VERSION = "0.13.1"
2
+ VERSION = "1.0.0"
3
3
  end
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vesr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.1
5
- prerelease:
4
+ version: 1.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Roman Simecek
@@ -10,8 +9,22 @@ authors:
10
9
  autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2014-06-04 00:00:00.000000000 Z
14
- dependencies: []
12
+ date: 2015-09-10 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: aasm
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: '4.1'
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - "~>"
26
+ - !ruby/object:Gem::Version
27
+ version: '4.1'
15
28
  description: VESR provides support for ESR number calculations and gives ready to
16
29
  use Rails components.
17
30
  email:
@@ -23,6 +36,8 @@ extra_rdoc_files:
23
36
  - README.rdoc
24
37
  - LICENSE.txt
25
38
  files:
39
+ - LICENSE.txt
40
+ - README.rdoc
26
41
  - app/assets/images/16x16/book_extra_earning.png
27
42
  - app/assets/images/16x16/reactivate.png
28
43
  - app/assets/images/16x16/resolve.png
@@ -55,32 +70,29 @@ files:
55
70
  - lib/vesr/prawn/esr_recipe.rb
56
71
  - lib/vesr/railtie.rb
57
72
  - lib/vesr/version.rb
58
- - README.rdoc
59
- - LICENSE.txt
60
73
  homepage: https://github.com/raskhadafi/vesr
61
74
  licenses:
62
75
  - MIT
76
+ metadata: {}
63
77
  post_install_message:
64
78
  rdoc_options: []
65
79
  require_paths:
66
80
  - lib
67
81
  required_ruby_version: !ruby/object:Gem::Requirement
68
- none: false
69
82
  requirements:
70
- - - ! '>='
83
+ - - ">="
71
84
  - !ruby/object:Gem::Version
72
85
  version: '0'
73
86
  required_rubygems_version: !ruby/object:Gem::Requirement
74
- none: false
75
87
  requirements:
76
- - - ! '>='
88
+ - - ">="
77
89
  - !ruby/object:Gem::Version
78
90
  version: '0'
79
91
  requirements: []
80
92
  rubyforge_project:
81
- rubygems_version: 1.8.23
93
+ rubygems_version: 2.4.5
82
94
  signing_key:
83
- specification_version: 3
95
+ specification_version: 4
84
96
  summary: VESR invoice support library.
85
97
  test_files: []
86
98
  has_rdoc: