c80_shared 0.1.6 → 0.1.7
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 +4 -4
- data/lib/c80_shared/aasm/handle_event.rb +19 -0
- data/lib/c80_shared/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c2b4dfa33343a45cca8c8d1d52990d1d82c1cce11cf6a09ac98bf60d0a744955
|
4
|
+
data.tar.gz: 5ea8c249a86cf053ddd00aa5e023c42a7d3aa72d8f2e4673adbbe7943d51be21
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1799be6ad06c90ea5f62cde9350ce4affa7c7e47bbf3c54461f6c61d54b976381b45938f6f7d7cfe9873ae4763b5836aebe7fc303c15edb126d13089843e0cc0
|
7
|
+
data.tar.gz: 7599f414641c647a7b1e1747a3ad3c18e573a2e6b62d0196b4032bc1b2a53a178912969ef3b136cd4d99c2f60c185a3b7eb47e69ee9ccad90042db7fd0757b1a
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module AASM
|
2
|
+
module HandleEvent
|
3
|
+
# Конечный автомат принимает событие и AASM переводит модель в нужное состояние.
|
4
|
+
#
|
5
|
+
# Метод создан с целью изоляции зависимости всего остального кода
|
6
|
+
# от исключительных ситуаций, генерируемых gem AASM
|
7
|
+
def handle_event(event)
|
8
|
+
if send('may_%s?' % event) # сначала проверим, можем ли перейти в такое состояние
|
9
|
+
send event # шлём event (меняется состояние Предложения)
|
10
|
+
return true
|
11
|
+
end
|
12
|
+
false
|
13
|
+
rescue NoMethodError, AASM::InvalidTransition
|
14
|
+
errors.add :not_updated, I18n.t('activerecord.errors.not_updated')
|
15
|
+
Rails.logger.warn '[InquiryStates.handle_event] Unknown event %s.' % event
|
16
|
+
false
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/lib/c80_shared/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: c80_shared
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- C80609A
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-11-
|
11
|
+
date: 2018-11-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -72,6 +72,7 @@ files:
|
|
72
72
|
- config/locales/rent_skip_type/en.yml
|
73
73
|
- config/locales/rent_skip_type/ru.yml
|
74
74
|
- lib/c80_shared.rb
|
75
|
+
- lib/c80_shared/aasm/handle_event.rb
|
75
76
|
- lib/c80_shared/abstract_serializer.rb
|
76
77
|
- lib/c80_shared/dict.rb
|
77
78
|
- lib/c80_shared/engine.rb
|