ecom_core 1.2.1 → 1.2.2

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: 9609bd123c55bdacd45126589991ad51231db85fc6b1a4ac30b5d39aee7fb625
4
- data.tar.gz: e5e453462da7dcc7596c8e7b0274bdf448affa2bc02b8b4de6d50289d4e9bb08
3
+ metadata.gz: 8102682bb3213f6817cdf22cbfea5518186482bcd83bb9619b4981a42b6e6c3e
4
+ data.tar.gz: ef9eedf363154f153d26dabd3f1724a25220aa2c2b995f2273d60d11893e5276
5
5
  SHA512:
6
- metadata.gz: 8a5662a484563182b4b34099708a316ddd05408d5e3a9f3c891697bd1f681f93e16b9a42bf3598176cb7d5b161e8aa0a09c4402fae3cd7582bcf9170268cc24f
7
- data.tar.gz: 61433c913b8c43962970806b9179c7b6ea9bb40626438cb5bf22e2e118ef45ed1f387489370802ff795b5b8fd2abb99b3b70e31cf0fdca740f72fda9a47f407e
6
+ metadata.gz: dc99f4ba8f8c7a3cfd35dba3bc74762306e05cd919edd0cfc4d8a4b76b6f331d4dd761ffcb5a09144eb453ce2e0a0debd8a27a8e4dec9c1965cb13fd593a0ad9
7
+ data.tar.gz: a08d94a0a4293a9a58aa7c80e30b1a14db61b2fa16667366082ac88eb5f1af3086e934864e2929ce9a15600398def095bc51f21eadef2532cc79aea2ddd1b917
@@ -20,9 +20,26 @@ module Ecom
20
20
  validates :checkin_time, presence: true, if: :checkout_time
21
21
 
22
22
  before_save :calculate_hours
23
+ after_save :calculate_total
23
24
 
24
25
  def calculate_hours
25
- self.hours = checkout_time.nil? || checkin_time.nil? ? 0 : compute_hours
26
+ self.hours = if checkout_time.nil? || checkin_time.nil?
27
+ 0
28
+ else
29
+ compute_hours
30
+ end
31
+ end
32
+
33
+ def calculate_total
34
+ compute_total_for_entry if saved_change_to_hours?
35
+ end
36
+
37
+ def compute_total_for_entry
38
+ attendance_sheet_entry.total_hours = Ecom::Core::CrewTime.where(
39
+ attendance_sheet_entry: attendance_sheet_entry,
40
+ revised: false
41
+ ).sum(:hours)
42
+ attendance_sheet_entry.save
26
43
  end
27
44
 
28
45
  # A method to check if checkin and checkout range falls in the morning,
@@ -7,7 +7,7 @@ module Ecom
7
7
  belongs_to :project_manager, class_name: 'Ecom::Core::Stakeholder'
8
8
  belongs_to :task_template
9
9
  belongs_to :currency
10
-
10
+
11
11
  validates :name, :location, :contract_number, :date_contract_signed, :commencement_date, :completion_date,
12
12
  :contract_amount, :advance_payment, :retention, presence: true
13
13
  end
@@ -1,5 +1,5 @@
1
1
  module Ecom
2
2
  module Core
3
- VERSION = '1.2.1'.freeze
3
+ VERSION = '1.2.2'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ecom_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henock L.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-02 00:00:00.000000000 Z
11
+ date: 2020-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aasm
@@ -86,14 +86,14 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 6.0.2
89
+ version: 6.0.3
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 6.0.2
96
+ version: 6.0.3
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: factory_bot_rails
99
99
  requirement: !ruby/object:Gem::Requirement