Sha256: 910f48a8404fd91804192ba41c5b9f037366fb81f6897083d03e0ef17dbe9d5f

Contents?: true

Size: 588 Bytes

Versions: 3

Compression:

Stored size: 588 Bytes

Contents

require 'active_attr'

module Dovico
  class Employee
    URL_PATH = 'Employees'

    include ActiveAttr::Model

    attribute :id
    attribute :first_name
    attribute :last_name

    def self.parse(hash)
      Employee.new(
        id:         hash["ID"],
        first_name: hash["FirstName"],
        last_name:  hash["LastName"],
      )
    end

    def self.myself
      employees = ApiClient.get("#{URL_PATH}/Me")

      parse(employees["Employees"].first)
    end

    def to_s
%{ - ID:         #{id}
 - First Name: #{first_name}
 - Last Name:  #{last_name}}
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
dovico-1.4.0 lib/dovico/model/employee.rb
dovico-1.3.0 lib/dovico/model/employee.rb
dovico-1.2.0 lib/dovico/model/employee.rb