Class: Organization
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Organization
- Defined in:
- app/models/organization.rb
Class Method Summary collapse
-
.date_format(date) ⇒ Object
Date change.
- .mt2w_access ⇒ Object
Instance Method Summary collapse
- #complete_address ⇒ Object
- #get_employees ⇒ Object
-
#get_idles(date, start_time, end_time) ⇒ Object
Functions for MT2W.
- #get_managers ⇒ Object
- #get_role(org_id) ⇒ Object
- #get_vendor_user ⇒ Object
- #manageable_users(manager) ⇒ manageable users list
-
#managers(exclude = nil) ⇒ Object
Functions for TMA.
- #push_notification_user(type, source, summary, notifier, org_users, organization) ⇒ Object
- #schedule_users(manager, org_id) ⇒ Object
- #vendor_search ⇒ Object
Class Method Details
.date_format(date) ⇒ Object
Date change
153 154 155 156 |
# File 'app/models/organization.rb', line 153 def self.date_format(date) change_date = date.strftime('%m/%d/%Y') return change_date end |
.mt2w_access ⇒ Object
121 122 123 |
# File 'app/models/organization.rb', line 121 def self.mt2w_access where(:myt2w_access => true) end |
Instance Method Details
#complete_address ⇒ Object
136 137 138 |
# File 'app/models/organization.rb', line 136 def complete_address "#{address}, #{city}, #{state}, #{country}" end |
#get_employees ⇒ Object
143 144 145 146 147 148 149 150 |
# File 'app/models/organization.rb', line 143 def get_employees employees = [] employee_roles = [:employee] employee_roles.each do |role| self.users.with_role(role).each{ |user| employees << user } end employees end |
#get_idles(date, start_time, end_time) ⇒ Object
Functions for MT2W
86 87 88 89 90 91 92 93 |
# File 'app/models/organization.rb', line 86 def get_idles(date, start_time, end_time) idles = [] users.each do |user| idles << user if user.idle?(date, start_time, end_time) end idles end |
#get_managers ⇒ Object
139 140 141 |
# File 'app/models/organization.rb', line 139 def get_managers self.users.with_role(:manager) end |
#get_role(org_id) ⇒ Object
181 182 183 184 185 186 187 |
# File 'app/models/organization.rb', line 181 def get_role(org_id) member = self.member.where(:organization_id => org_id).first if member.present? role = member.roles.first return member.roles.first end end |
#get_vendor_user ⇒ Object
158 159 160 161 162 163 164 165 166 167 |
# File 'app/models/organization.rb', line 158 def get_vendor_user vendors = [] self.member.each do |x| if (x.roles[0].name == 'vendor') vendors << x.user end end vendors.sort! end |
#manageable_users(manager) ⇒ manageable users list
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 |
# File 'app/models/organization.rb', line 96 def manageable_users(manager) result = [] users = [] unless self.show_disabled_users self.users.all.each do |user| if user.member.find_by_organization_id(self.id).disabled.nil? or user.member.find_by_organization_id(self.id).disabled === false users << user end end else users = self.users end unless manager.get_role_name(self.id) == 'employee' if self.show_owner users.each{|user| result << user} else users.each{|user| result << user if user.get_role_name(self.id) != 'owner'} end else users.each{|user| result << user if user.get_role_name(self.id) == 'employee'} end result end |
#managers(exclude = nil) ⇒ Object
Functions for TMA
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'app/models/organization.rb', line 53 def managers(exclude = nil) all_managers = Array.new self.users.each do |user| user.member.each do|mem| if mem.has_role? :manager, self or mem.has_role? :owner, self then if exclude then all_managers.push user if user.id != exclude.id else all_managers.push user end end end end return all_managers end |
#push_notification_user(type, source, summary, notifier, org_users, organization) ⇒ Object
74 75 76 77 78 79 80 81 82 83 |
# File 'app/models/organization.rb', line 74 def push_notification_user(type , source , summary, notifier, org_users , organization ) Notification.create_and_send_notification( :type => type, :source => source, :summary => summary, :notifier => notifier, :managers => org_users, :organizationID => organization.id ) end |
#schedule_users(manager, org_id) ⇒ Object
125 126 127 128 129 130 131 132 133 134 |
# File 'app/models/organization.rb', line 125 def schedule_users(manager, org_id) result = [] users = self.users.enable if !self.show_owner users.each{|user| result << user.id if user.get_role_name(org_id) != 'owner'} else users.each{|user| result << user.id} end User.where(id: result) end |
#vendor_search ⇒ Object
169 170 171 172 173 174 175 176 177 178 179 |
# File 'app/models/organization.rb', line 169 def vendor_search array = [] user = @organization.users user.each do |u| if u.get_role_name(@organization.id) == 'vendor' array << u end end @arrayobj = array.collect { |u| u.id } return @arrayobj end |