Class: Eco::API::UseCases::DefaultCases::HrisCase
- Inherits:
-
Common::Loaders::UseCase
- Object
- Common::Loaders::Base
- Common::Loaders::CaseBase
- Common::Loaders::UseCase
- Eco::API::UseCases::DefaultCases::HrisCase
- Defined in:
- lib/eco/api/usecases/default_cases/hris_case.rb
Instance Attribute Summary collapse
-
#creation ⇒ Object
readonly
Returns the value of attribute creation.
-
#leavers ⇒ Object
readonly
Returns the value of attribute leavers.
-
#supers ⇒ Object
readonly
Returns the value of attribute supers.
-
#update ⇒ Object
readonly
Returns the value of attribute update.
Attributes included from Language::AuxiliarLogger
Instance Method Summary collapse
Methods inherited from Common::Loaders::UseCase
Methods included from Common::Loaders::UseCase::CliIdentify
Methods included from Common::Loaders::UseCase::TargetModel
Methods included from Common::Loaders::UseCase::Type
Methods inherited from Common::Loaders::CaseBase
#name, name_only_once!, original_name
Methods inherited from Common::Loaders::Base
<=>, created_at, #initialize, set_created_at!
Methods included from Language::Klass::InheritableClassVars
#inheritable_attrs, #inheritable_class_vars, #inherited
Methods included from Language::Klass::Naming
#instance_variable_name, #to_constant
Methods included from Language::Klass::Hierarchy
Methods included from Language::Klass::Builder
Methods included from Language::Klass::Uid
Methods included from Language::Klass::Resolver
#class_resolver, #resolve_class
Methods included from Language::Klass::Const
#if_const, #redef_without_warning
Methods included from Language::AuxiliarLogger
Constructor Details
This class inherits a constructor from Eco::API::Common::Loaders::UseCase
Instance Attribute Details
#creation ⇒ Object (readonly)
Returns the value of attribute creation.
5 6 7 |
# File 'lib/eco/api/usecases/default_cases/hris_case.rb', line 5 def creation @creation end |
#leavers ⇒ Object (readonly)
Returns the value of attribute leavers.
5 6 7 |
# File 'lib/eco/api/usecases/default_cases/hris_case.rb', line 5 def leavers @leavers end |
#supers ⇒ Object (readonly)
Returns the value of attribute supers.
5 6 7 |
# File 'lib/eco/api/usecases/default_cases/hris_case.rb', line 5 def supers @supers end |
#update ⇒ Object (readonly)
Returns the value of attribute update.
5 6 7 |
# File 'lib/eco/api/usecases/default_cases/hris_case.rb', line 5 def update @update end |
Instance Method Details
#main(entries, people, session, options, usecase) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/eco/api/usecases/default_cases/hris_case.rb', line 7 def main(entries, people, session, , usecase) require_only_one_schema! micro = session.micro @leavers = session.new_job('pre', 'leavers', :update, usecase, :account) @creation = session.new_job('main', 'create', :create, usecase) @update = session.new_job('main', 'update', :update, usecase) @supers = session.new_job('post', 'supers', :update, usecase, :core) micro.with_each_leaver(entries, people, ) do |person| leavers.add(person, &method(:leavers_callback)) end micro.with_each(entries, people, , append_created: append_created) do |entry, person| person.new? ? creation.add(person) : update.add(person) micro.set_core_with_supervisor(entry, person, people, supers, ) entry.set_details(person) unless .dig(:exclude, :details) micro.set_account(entry, person, ) end end |