ecom_core 1.2.1 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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