dcidev_approval 0.0.2 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/dcidev_approval.rb +11 -11
  3. metadata +7 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b89d5bed50149b2067004980c70e15f4a4dd63eb4af17c18bbcb1f9a40fe592e
4
- data.tar.gz: 4fd39a2c3f38e2635c40035d4d2dcd07f524e74a742f3ca4018153edab7cb4cb
3
+ metadata.gz: dccc3da34c00aa8f2981d62d7ebe9bfe06a504cd4a641931e06ea77cc704bbde
4
+ data.tar.gz: 1434f3cb37dba0c6777654d3fac368d04954acb3d490aa72fdedde00a9222c38
5
5
  SHA512:
6
- metadata.gz: a4f1bf7253a23ed2b65a839d3f572f148430fc561c1eec01496cf83ec05d0f2056310c470bbd56fdd044faefe8c263b8704377ffc9be84c431140f7be24abf0c
7
- data.tar.gz: f9d5add77f39eb625a564eddf8c33a6a9977ed2ec3f913fa7712527fe9f051c74bafbbaa5b76e266850b076fb6f95e1a98e50bcedb3d1ff8042553f11b573d7a
6
+ metadata.gz: ccc058f85395914fe3e224e6779e53fdc6574e044e51187a401d1c77828aa99792cca8d7d20e7bcf697827390489025537c5dd91c1a6839553381152cac1b1c9
7
+ data.tar.gz: a6acf538b14fc54816eb0c0a33e7f0ca177e6395625757cc23a4623dc43603ee874bf32635ed9c41ba11ff36d5d4c854c79290ff6139fa0458712cf0b9636e14
@@ -44,7 +44,7 @@ module DcidevApproval
44
44
  log = self.activity_logs.where("activity LIKE '%edit%'").limit(1).order(created_at: :desc).try(:first)
45
45
  end
46
46
  {
47
- modified_by: log.present? ? log.try(:agent).try(:name).to_s + " (#{log.try(:agent).try(:username).to_s}[#{log.try(:agent).try(:roles).try(:first).try(:name)}])" : nil,
47
+ modified_by: log.present? ? log.try(:agent).try(:name).to_s + " (#{log.try(:agent).try(:username).to_s} | #{log.try(:agent).try(:roles).try(:first).try(:name)})" : "System",
48
48
  modified_at: log.present? ? log.try(:created_at) || self.try(:updated_at) || self.try(:created_at) : nil
49
49
  }
50
50
  end
@@ -52,7 +52,7 @@ module DcidevApproval
52
52
  def created_by
53
53
  log = self.activity_logs.try(:first)
54
54
  {
55
- created_by: log.present? && log.try(:agent).try(:name).present? ? log.try(:agent).try(:name).to_s + " (#{log.try(:agent).try(:username).to_s}[#{log.try(:agent).try(:roles).try(:first).try(:name)}])" : "System",
55
+ created_by: log.present? && log.try(:agent).try(:name).present? ? log.try(:agent).try(:name).to_s + " (#{log.try(:agent).try(:username).to_s} | #{log.try(:agent).try(:roles).try(:first).try(:name)})" : "System",
56
56
  created_at: self.try(:created_at) || log.try(:created_at)
57
57
  }
58
58
  end
@@ -61,12 +61,12 @@ module DcidevApproval
61
61
  last_approve = self.activity_logs.where("activity LIKE '%approv%'").limit(1).order(created_at: :desc).try(:first)
62
62
  last_entry = self.activity_logs.last
63
63
  {
64
- approved_by: last_approve.try(:id) == last_entry.try(:id) ? last_approve.try(:agent).try(:name) : nil,
64
+ approved_by: last_approve.try(:id) == last_entry.try(:id) ? last_approve.try(:agent).try(:name).to_s + " (#{last_approve.try(:agent).try(:username).to_s} | #{last_approve.try(:agent).try(:roles).try(:first).try(:name)})" : nil,
65
65
  approved_at: last_approve.try(:id) == last_entry.try(:id) ? last_approve.try(:created_at) : nil
66
66
  }
67
67
  end
68
68
 
69
- def approve_changes(params, agent, request)
69
+ def approve_changes
70
70
 
71
71
  if self.change_status.nil? && %w[waiting rejected].include?(self.status)
72
72
  raise self.errors.full_messages.join(", ") unless self.update(status: :approved, data_changes: nil, change_status: nil)
@@ -89,13 +89,13 @@ module DcidevApproval
89
89
  end
90
90
  end
91
91
 
92
- def delete_changes(params, agent, request)
92
+ def delete_changes
93
93
  # return unless %w[pending_update pending_delete].include? self.change_status
94
94
  raise self.errors.full_messages.join(", ") unless self.update(data_changes: nil, change_status: nil, status: self.status == "waiting" ? :rejected : :approved)
95
95
  # ActivityLog.write("Reject changes to #{self.class.to_s}", request, agent, menu, self) if params.log
96
96
  end
97
97
 
98
- def edit_data(params, agent, request, bypass = true, &block)
98
+ def edit_data(params, agent, bypass = true)
99
99
  raise "data still waiting for approval" if self.waiting_approval?
100
100
  if bypass
101
101
  raise self.errors.full_messages.join(", ") unless self.update_by_params(params, false)
@@ -112,16 +112,16 @@ module DcidevApproval
112
112
  yield true
113
113
  end
114
114
 
115
- def approval(params, agent, request)
115
+ def approval(params)
116
116
  if params.status == "approved"
117
- self.approve_changes(params, agent, request)
117
+ self.approve_changes
118
118
  elsif params.status == "rejected"
119
- self.delete_changes(params, agent, request)
119
+ self.delete_changes
120
120
  end
121
121
  yield true
122
122
  end
123
123
 
124
- def delete_data(params, agent, request, bypass = true)
124
+ def delete_data(agent, bypass = true)
125
125
  raise "data still waiting for approval" if self.waiting_approval?
126
126
  if bypass || agent.is_admin?
127
127
  ActiveRecord::Base.transaction do
@@ -137,7 +137,7 @@ module DcidevApproval
137
137
  end
138
138
 
139
139
  module ClassMethods
140
- def create_data(params, agent, request, bypass = true)
140
+ def create_data(params, agent, bypass = true)
141
141
  if bypass
142
142
  ActiveRecord::Base.transaction do
143
143
  data = params.merge!({ status: :approved })
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dcidev_approval
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Punto Damar P
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-24 00:00:00.000000000 Z
11
+ date: 2022-01-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dcidev_active_record
@@ -33,10 +33,10 @@ extra_rdoc_files: []
33
33
  files:
34
34
  - README.md
35
35
  - lib/dcidev_approval.rb
36
- homepage:
36
+ homepage:
37
37
  licenses: []
38
38
  metadata: {}
39
- post_install_message:
39
+ post_install_message:
40
40
  rdoc_options: []
41
41
  require_paths:
42
42
  - lib
@@ -51,8 +51,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
51
51
  - !ruby/object:Gem::Version
52
52
  version: '0'
53
53
  requirements: []
54
- rubygems_version: 3.0.6
55
- signing_key:
54
+ rubygems_version: 3.0.3.1
55
+ signing_key:
56
56
  specification_version: 4
57
57
  summary: Logic for implementing record changes approval
58
58
  test_files: []