Sha256: ef46628bf1e4b47caf4864ea1d818588625b8347e6602c200e9a9c1915cd2205
Contents?: true
Size: 1.28 KB
Versions: 4
Compression:
Stored size: 1.28 KB
Contents
module RockRMS class Client module Person def list_people(options = {}) res = get(people_path, options) Response::Person.format(res) end def find_person(id) res = get(people_path(id)) Response::Person.format(res) end def find_person_by_email(email) res = get("People/GetByEmail/#{email}") Response::Person.format(res) end NAME_SEARCH_DEFAULTS = { includeHtml: false, includeDetails: true, includeBusinesses: false, includeDeceased: false }.freeze def find_person_by_name(full_name, options = {}) priority = options.merge(name: full_name) Response::Person.format( get('People/Search', NAME_SEARCH_DEFAULTS.merge(priority)) ) end def create_person(first_name:, last_name:, email:) options = { 'IsSystem' => false, 'FirstName' => first_name, 'LastName' => last_name, 'Email' => email, 'Gender' => 1 } post(people_path, options) end def update_person(id, options = {}) put(people_path(id), options) end private def people_path(id = nil) id ? "People/#{id}" : 'People' end end end end
Version data entries
4 entries across 4 versions & 1 rubygems