Module: Models::EmployeeSelectOptions
- Extended by:
- ActiveSupport::Concern
- Included in:
- Employee
- Defined in:
- app/concerns/models/employee_select_options.rb
Overview
Select-option builders for Employee dropdowns.
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
-
#manager_select_options ⇒ Array<Array(String, Integer)>
Builds select options of active employees this employee could manage: everyone except self and current descendants.
-
#manages_and_self_select_options ⇒ Array<Array(String, Integer)>
Builds select options of this employee plus everyone they manage.
Instance Method Details
#manager_select_options ⇒ Array<Array(String, Integer)>
Builds select options of active employees this employee could manage:
everyone except self and current descendants.
178 179 180 181 182 183 184 |
# File 'app/concerns/models/employee_select_options.rb', line 178 def Employee.active_employees .where('parties.id NOT IN (?) ', [id.to_i] + descendants.map(&:id)) .select('parties.id, parties.full_name') .sorted .map { |e| [e.full_name, e.id] } end |
#manages_and_self_select_options ⇒ Array<Array(String, Integer)>
Builds select options of this employee plus everyone they manage.
189 190 191 |
# File 'app/concerns/models/employee_select_options.rb', line 189 def manages_and_self.select('parties.id, parties.full_name').sorted.map { |e| [e.full_name, e.id] } end |