Class: Harvest::TimeEntry
- Inherits:
-
Hashie::Mash
- Object
- Hashie::Mash
- Harvest::TimeEntry
- Includes:
- Model
- Defined in:
- lib/harvest/time_entry.rb
Instance Method Summary collapse
- #as_json(args = {}) ⇒ Object
- #client=(client) ⇒ Object
-
#initialize(args = {}, _ = nil) ⇒ TimeEntry
constructor
A new instance of TimeEntry.
- #project=(project) ⇒ Object
- #spent_date=(date) ⇒ Object
- #task=(task) ⇒ Object
- #task_assignment=(task_assignment) ⇒ Object
- #user=(user) ⇒ Object
- #user_assignment=(user_assignment) ⇒ Object
Methods included from Model
Constructor Details
#initialize(args = {}, _ = nil) ⇒ TimeEntry
Returns a new instance of TimeEntry.
11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/harvest/time_entry.rb', line 11 def initialize(args = {}, _ = nil) args = args.stringify_keys self.user = args.delete('user') if args['user'] self.task = args.delete('task') if args['task'] self.client = args.delete('client') if args['client'] self.project = args.delete('project') if args['project'] self.spent_date = args.delete('spent_date') if args['spent_date'] self.user_assignment = args.delete('user_assignment') if args['user_assignment'] self.task_assignment = args.delete('task_assignment') if args['task_assignment'] super end |
Instance Method Details
#as_json(args = {}) ⇒ Object
51 52 53 54 55 |
# File 'lib/harvest/time_entry.rb', line 51 def as_json(args = {}) super(args).to_hash.stringify_keys.tap do |hash| hash.update('spent_date' => (spent_date.nil? ? nil : spent_date.xmlschema)) end end |
#client=(client) ⇒ Object
27 28 29 |
# File 'lib/harvest/time_entry.rb', line 27 def client=(client) self['client_id'] = client['id'] end |
#project=(project) ⇒ Object
31 32 33 |
# File 'lib/harvest/time_entry.rb', line 31 def project=(project) self['project_id'] = project['id'] end |
#spent_date=(date) ⇒ Object
47 48 49 |
# File 'lib/harvest/time_entry.rb', line 47 def spent_date=(date) self['spent_date'] = Date.parse(date.to_s) end |
#task=(task) ⇒ Object
35 36 37 |
# File 'lib/harvest/time_entry.rb', line 35 def task=(task) self['task_id'] = task['id'] end |
#task_assignment=(task_assignment) ⇒ Object
43 44 45 |
# File 'lib/harvest/time_entry.rb', line 43 def task_assignment=(task_assignment) self['task_assignment_id'] = task_assignment['id'] end |
#user=(user) ⇒ Object
23 24 25 |
# File 'lib/harvest/time_entry.rb', line 23 def user=(user) self['user_id'] = user['id'] end |
#user_assignment=(user_assignment) ⇒ Object
39 40 41 |
# File 'lib/harvest/time_entry.rb', line 39 def user_assignment=(user_assignment) self['user_assignment_id'] = user_assignment['id'] end |