Class: AllscriptsUnityClient::Client
- Inherits:
-
Object
- Object
- AllscriptsUnityClient::Client
- Defined in:
- lib/allscripts_unity_client/client.rb
Overview
Providers an interface to access Unity endpoints.
Build using a dependency injection pattern. A Client instances takes an instance of ClientDriver and delegates Unity endpoint methods to the ClientDriver.
Instance Attribute Summary collapse
-
#client_driver ⇒ Object
Returns the value of attribute client_driver.
Instance Method Summary collapse
-
#client_type ⇒ Object
Return the client type, either :json or :soap.
- #commit_charges ⇒ Object
- #echo(echo_text) ⇒ Object
- #get_account ⇒ Object
- #get_changed_patients(since = nil) ⇒ Object
- #get_charge_info_by_username ⇒ Object
- #get_charges ⇒ Object
- #get_chart_item_details(userid, patientid, section) ⇒ Object
- #get_clinical_summary(userid, patientid, extra_med_data = false) ⇒ Object
- #get_delegates ⇒ Object
- #get_dictionary(dictionary_name, userid = nil, site = nil) ⇒ Object
- #get_dictionary_sets ⇒ Object
- #get_doc_template ⇒ Object
- #get_document_by_accession ⇒ Object
- #get_document_image ⇒ Object
- #get_document_type ⇒ Object
- #get_documents ⇒ Object
- #get_dur ⇒ Object
- #get_encounter ⇒ Object
- #get_encounter_date ⇒ Object
-
#get_encounter_list(userid, patientid, encounter_type = nil, when_param = nil, nostradamus = 0, show_past_flag = true, billing_provider_user_name = nil, show_all = false) ⇒ Array<Hash>
GetEncounterList helper method.
- #get_hie_document ⇒ Object
- #get_last_patient ⇒ Object
- #get_list_of_dictionaries ⇒ Object
- #get_medication_by_trans_id(userid, patientid, transaction_id) ⇒ Object
- #get_medication_info(userid, ddid, patientid = nil) ⇒ Object
- #get_order_history ⇒ Object
- #get_organization_id ⇒ Object
- #get_packages ⇒ Object
- #get_patient(userid, patientid, includepix = nil) ⇒ Object
- #get_patient_activity(userid, patientid) ⇒ Object
- #get_patient_by_mrn(userid, mrn) ⇒ Object
- #get_patient_cda ⇒ Object
- #get_patient_diagnosis(userid, patientid, encounter_date = nil, encounter_type = nil, encounter_date_range = nil, encounter_id = nil) ⇒ Object
- #get_patient_full ⇒ Object
- #get_patient_ids ⇒ Object
- #get_patient_list ⇒ Object
- #get_patient_locations ⇒ Object
- #get_patient_pharmacies ⇒ Object
- #get_patient_problems(patientid, show_by_encounter_flag = nil, assessed = nil, encounter_id = nil, medcin_id = nil) ⇒ Object
- #get_patient_sections ⇒ Object
- #get_patients_by_icd9(icd9, start = nil, end_param = nil) ⇒ Object
- #get_procedures ⇒ Object
- #get_provider(provider_id = nil, user_name = nil) ⇒ Object
- #get_providers(security_filter = nil, name_filter = nil) ⇒ Object
- #get_ref_providers_by_specialty ⇒ Object
- #get_rounding_list_entries ⇒ Object
- #get_rounding_lists ⇒ Object
- #get_rx_favs ⇒ Object
- #get_schedule ⇒ Object
-
#get_security_token!(parameters = {}) ⇒ Object
Implement Unity’s GetSecurityToken endpoint.
- #get_server_info ⇒ Object
- #get_sigs ⇒ Object
- #get_task(userid, transaction_id) ⇒ Object
-
#get_task_list(userid = nil, since = nil, delegated = nil, task_types = nil, task_statuses = nil) ⇒ Object
delegated is an undocumented parameter.
- #get_user_authentication ⇒ Object
- #get_user_id ⇒ Object
- #get_user_security ⇒ Object
- #get_vaccine_manufacturers ⇒ Object
- #get_vitals ⇒ Object
-
#initialize(client_driver) ⇒ Client
constructor
Constructor.
- #last_logs ⇒ Object
-
#magic(parameters = {}) ⇒ Object
Implement Unity’s Magic endpoint.
- #make_task ⇒ Object
-
#options ⇒ Object
Access client’s options.
-
#retire_security_token!(parameters = {}) ⇒ Object
Implement Unity’s RetireSecurityToken endpoint using Savon.
- #save_admin_task ⇒ Object
- #save_allergy ⇒ Object
- #save_ced ⇒ Object
- #save_charge ⇒ Object
- #save_chart_view_audit ⇒ Object
- #save_diagnosis ⇒ Object
- #save_document_image ⇒ Object
- #save_er_note ⇒ Object
- #save_hie_document ⇒ Object
- #save_history ⇒ Object
- #save_immunization ⇒ Object
- #save_note ⇒ Object
- #save_patient ⇒ Object
- #save_patient_location ⇒ Object
- #save_problem ⇒ Object
- #save_problems_data ⇒ Object
- #save_ref_provider ⇒ Object
- #save_result ⇒ Object
- #save_rx(userid, patientid, rxxml) ⇒ Object
- #save_simple_encounter ⇒ Object
- #save_simple_rx ⇒ Object
- #save_specialist ⇒ Object
- #save_task(userid, patientid, task_type = nil, target_user = nil, work_object_id = nil, comments = nil) ⇒ Object
- #save_task_status(userid, transaction_id = nil, status = nil, delegate_id = nil, comment = nil, taskchanges = nil, patient_id = nil) ⇒ Object
- #save_tiff ⇒ Object
- #save_unstructured_document ⇒ Object
- #save_v10_doc_signature ⇒ Object
- #save_v11_note ⇒ Object
- #save_vitals ⇒ Object
- #save_vitals_data ⇒ Object
- #search_charge_codes ⇒ Object
- #search_diagnosis_codes ⇒ Object
- #search_meds(userid, patientid, search = nil) ⇒ Object
- #search_patients(search) ⇒ Object
- #search_patients_rxhub5 ⇒ Object
- #search_pharmacies(search) ⇒ Object
- #search_problem_codes ⇒ Object
-
#security_token? ⇒ Boolean
Return true if a Unity security token has been fetched and saved.
- #update_encounter ⇒ Object
- #update_order ⇒ Object
- #update_referral_order_status ⇒ Object
Constructor Details
#initialize(client_driver) ⇒ Client
Constructor.
- client_driver
-
An instance of a ClientDriver. Currently only SoapClientDriver and JsonClientDriver
are supported.
16 17 18 19 20 |
# File 'lib/allscripts_unity_client/client.rb', line 16 def initialize(client_driver) raise ArgumentError, 'client_driver can not be nil' if client_driver.nil? @client_driver = client_driver end |
Instance Attribute Details
#client_driver ⇒ Object
Returns the value of attribute client_driver.
10 11 12 |
# File 'lib/allscripts_unity_client/client.rb', line 10 def client_driver @client_driver end |
Instance Method Details
#client_type ⇒ Object
Return the client type, either :json or :soap.
87 88 89 |
# File 'lib/allscripts_unity_client/client.rb', line 87 def client_type @client_driver.client_type end |
#commit_charges ⇒ Object
91 92 93 |
# File 'lib/allscripts_unity_client/client.rb', line 91 def commit_charges raise NotImplementedError, 'CommitCharges magic action not implemented' end |
#echo(echo_text) ⇒ Object
95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
# File 'lib/allscripts_unity_client/client.rb', line 95 def echo(echo_text) magic_parameters = { action: 'Echo', userid: echo_text, appname: echo_text, patientid: echo_text, parameter1: echo_text, parameter2: echo_text, parameter3: echo_text, parameter4: echo_text, parameter5: echo_text, parameter6: echo_text } response = magic(magic_parameters) response[:userid] end |
#get_account ⇒ Object
112 113 114 115 116 117 |
# File 'lib/allscripts_unity_client/client.rb', line 112 def get_account magic_parameters = { action: 'GetAccount' } magic(magic_parameters) end |
#get_changed_patients(since = nil) ⇒ Object
119 120 121 122 123 124 125 |
# File 'lib/allscripts_unity_client/client.rb', line 119 def get_changed_patients(since = nil) magic_parameters = { action: 'GetChangedPatients', parameter1: since } magic(magic_parameters) end |
#get_charge_info_by_username ⇒ Object
127 128 129 |
# File 'lib/allscripts_unity_client/client.rb', line 127 def get_charge_info_by_username raise NotImplementedError, 'GetChargeInfoByUsername magic action not implemented' end |
#get_charges ⇒ Object
131 132 133 |
# File 'lib/allscripts_unity_client/client.rb', line 131 def get_charges raise NotImplementedError, 'GetCharges magic action not implemented' end |
#get_chart_item_details(userid, patientid, section) ⇒ Object
135 136 137 138 139 140 141 142 143 |
# File 'lib/allscripts_unity_client/client.rb', line 135 def get_chart_item_details(userid, patientid, section) magic_parameters = { action: 'GetChartItemDetails', userid: userid, patientid: patientid, parameter1: section } magic(magic_parameters) end |
#get_clinical_summary(userid, patientid, extra_med_data = false) ⇒ Object
145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 |
# File 'lib/allscripts_unity_client/client.rb', line 145 def get_clinical_summary(userid, patientid, extra_med_data = false) magic_parameters = { action: 'GetClinicalSummary', userid: userid, patientid: patientid, parameter3: extra_med_data ? 'Y' : nil } response = magic(magic_parameters) unless response.is_a?(Array) response = [ response ] end response end |
#get_delegates ⇒ Object
161 162 163 |
# File 'lib/allscripts_unity_client/client.rb', line 161 def get_delegates raise NotImplementedError, 'GetDelegates magic action not implemented' end |
#get_dictionary(dictionary_name, userid = nil, site = nil) ⇒ Object
165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 |
# File 'lib/allscripts_unity_client/client.rb', line 165 def get_dictionary(dictionary_name, userid = nil, site = nil) magic_parameters = { action: 'GetDictionary', userid: userid, parameter1: dictionary_name, parameter2: site } response = magic(magic_parameters) unless response.is_a?(Array) response = [ response ] end response end |
#get_dictionary_sets ⇒ Object
181 182 183 |
# File 'lib/allscripts_unity_client/client.rb', line 181 def get_dictionary_sets raise NotImplementedError, 'GetDictionarySets magic action not implemented' end |
#get_doc_template ⇒ Object
185 186 187 |
# File 'lib/allscripts_unity_client/client.rb', line 185 def get_doc_template raise NotImplementedError, 'GetDocTemplate magic action not implemented' end |
#get_document_by_accession ⇒ Object
189 190 191 |
# File 'lib/allscripts_unity_client/client.rb', line 189 def get_document_by_accession raise NotImplementedError, 'GetDocumentByAccession magic action not implemented' end |
#get_document_image ⇒ Object
193 194 195 |
# File 'lib/allscripts_unity_client/client.rb', line 193 def get_document_image raise NotImplementedError, 'GetDocumentImage magic action not implemented' end |
#get_document_type ⇒ Object
201 202 203 |
# File 'lib/allscripts_unity_client/client.rb', line 201 def get_document_type raise NotImplementedError, 'GetDocumentType magic action not implemented' end |
#get_documents ⇒ Object
197 198 199 |
# File 'lib/allscripts_unity_client/client.rb', line 197 def get_documents raise NotImplementedError, 'GetDocuments magic action not implemented' end |
#get_dur ⇒ Object
205 206 207 |
# File 'lib/allscripts_unity_client/client.rb', line 205 def get_dur raise NotImplementedError, 'GetDUR magic action not implemented' end |
#get_encounter ⇒ Object
209 210 211 |
# File 'lib/allscripts_unity_client/client.rb', line 209 def get_encounter raise NotImplementedError, 'GetEncounter magic action not implemented' end |
#get_encounter_date ⇒ Object
213 214 215 |
# File 'lib/allscripts_unity_client/client.rb', line 213 def get_encounter_date raise NotImplementedError, 'GetEncounterDate magic action not implemented' end |
#get_encounter_list(userid, patientid, encounter_type = nil, when_param = nil, nostradamus = 0, show_past_flag = true, billing_provider_user_name = nil, show_all = false) ⇒ Array<Hash>
GetEncounterList helper method.
233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 |
# File 'lib/allscripts_unity_client/client.rb', line 233 def get_encounter_list( userid, patientid, encounter_type = nil, when_param = nil, nostradamus = 0, show_past_flag = true, billing_provider_user_name = nil, show_all = false) magic_parameters = { action: 'GetEncounterList', userid: userid, patientid: patientid, parameter1: encounter_type, parameter2: when_param, parameter3: nostradamus, parameter4: show_past_flag && show_past_flag != 'N' ? 'Y' : 'N', parameter5: billing_provider_user_name, # According to the developer guide this parameter is no longer # used. parameter6: show_all ? 'all' : nil } response = magic(magic_parameters) unless response.is_a?(Array) response = [ response ] end # Remove nil encounters response.delete_if do |value| value[:id] == '0' && value[:patientid] == '0' end end |
#get_hie_document ⇒ Object
268 269 270 |
# File 'lib/allscripts_unity_client/client.rb', line 268 def get_hie_document raise NotImplementedError, 'GetHIEDocument magic action not implemented' end |
#get_last_patient ⇒ Object
272 273 274 |
# File 'lib/allscripts_unity_client/client.rb', line 272 def get_last_patient raise NotImplementedError, 'GetLastPatient magic action not implemented' end |
#get_list_of_dictionaries ⇒ Object
276 277 278 |
# File 'lib/allscripts_unity_client/client.rb', line 276 def get_list_of_dictionaries raise NotImplementedError, 'GetListOfDictionaries magic action not implemented' end |
#get_medication_by_trans_id(userid, patientid, transaction_id) ⇒ Object
280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 |
# File 'lib/allscripts_unity_client/client.rb', line 280 def get_medication_by_trans_id(userid, patientid, transaction_id) magic_parameters = { action: 'GetMedicationByTransID', userid: userid, patientid: patientid, parameter1: transaction_id } result = magic(magic_parameters) if transaction_id == 0 || transaction_id == '0' # When transaction_id is 0 all medications should be # returned and the result should always be an array. if !result.is_a?(Array) && !result.empty? result = [ result ] elsif result.empty? result = [] end end result end |
#get_medication_info(userid, ddid, patientid = nil) ⇒ Object
302 303 304 305 306 307 308 309 310 |
# File 'lib/allscripts_unity_client/client.rb', line 302 def get_medication_info(userid, ddid, patientid = nil) magic_parameters = { action: 'GetMedicationInfo', userid: userid, patientid: patientid, parameter1: ddid } magic(magic_parameters) end |
#get_order_history ⇒ Object
312 313 314 |
# File 'lib/allscripts_unity_client/client.rb', line 312 def get_order_history raise NotImplementedError, 'GetOrderHistory magic action not implemented' end |
#get_organization_id ⇒ Object
316 317 318 |
# File 'lib/allscripts_unity_client/client.rb', line 316 def get_organization_id raise NotImplementedError, 'GetOrganizationID magic action not implemented' end |
#get_packages ⇒ Object
320 321 322 |
# File 'lib/allscripts_unity_client/client.rb', line 320 def get_packages raise NotImplementedError, 'GetPackages magic action not implemented' end |
#get_patient(userid, patientid, includepix = nil) ⇒ Object
324 325 326 327 328 329 330 331 332 |
# File 'lib/allscripts_unity_client/client.rb', line 324 def get_patient(userid, patientid, includepix = nil) magic_parameters = { action: 'GetPatient', userid: userid, patientid: patientid, parameter1: includepix } magic(magic_parameters) end |
#get_patient_activity(userid, patientid) ⇒ Object
334 335 336 337 338 339 340 341 |
# File 'lib/allscripts_unity_client/client.rb', line 334 def get_patient_activity(userid, patientid) magic_parameters = { action: 'GetPatientActivity', userid: userid, patientid: patientid } magic(magic_parameters) end |
#get_patient_by_mrn(userid, mrn) ⇒ Object
343 344 345 346 347 348 349 350 |
# File 'lib/allscripts_unity_client/client.rb', line 343 def get_patient_by_mrn(userid, mrn) magic_parameters = { action: 'GetPatientByMRN', userid: userid, parameter1: mrn } magic(magic_parameters) end |
#get_patient_cda ⇒ Object
352 353 354 |
# File 'lib/allscripts_unity_client/client.rb', line 352 def get_patient_cda raise NotImplementedError, 'GetPatientCDA magic action not implemented' end |
#get_patient_diagnosis(userid, patientid, encounter_date = nil, encounter_type = nil, encounter_date_range = nil, encounter_id = nil) ⇒ Object
356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 |
# File 'lib/allscripts_unity_client/client.rb', line 356 def get_patient_diagnosis(userid, patientid, encounter_date = nil, encounter_type = nil, encounter_date_range = nil, encounter_id = nil) magic_params = { action: 'GetPatientDiagnosis', userid: userid, patientid: patientid, parameter1: encounter_date, parameter2: encounter_type, parameter3: encounter_date_range, parameter4: encounter_id } results = magic(magic_params) if !results.is_a? Array if results.empty? results = [] else results = [results] end end results end |
#get_patient_full ⇒ Object
380 381 382 |
# File 'lib/allscripts_unity_client/client.rb', line 380 def get_patient_full raise NotImplementedError, 'GetPatientFull magic action not implemented' end |
#get_patient_ids ⇒ Object
384 385 386 |
# File 'lib/allscripts_unity_client/client.rb', line 384 def get_patient_ids raise NotImplementedError, 'GetPatientIDs magic action not implemented' end |
#get_patient_list ⇒ Object
388 389 390 |
# File 'lib/allscripts_unity_client/client.rb', line 388 def get_patient_list raise NotImplementedError, 'GetPatientList magic action not implemented' end |
#get_patient_locations ⇒ Object
392 393 394 |
# File 'lib/allscripts_unity_client/client.rb', line 392 def get_patient_locations raise NotImplementedError, 'GetPatientLocations magic action not implemented' end |
#get_patient_pharmacies ⇒ Object
396 397 398 |
# File 'lib/allscripts_unity_client/client.rb', line 396 def get_patient_pharmacies raise NotImplementedError, 'GetPatientPharmacies magic action not implemented' end |
#get_patient_problems(patientid, show_by_encounter_flag = nil, assessed = nil, encounter_id = nil, medcin_id = nil) ⇒ Object
400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 |
# File 'lib/allscripts_unity_client/client.rb', line 400 def get_patient_problems(patientid, show_by_encounter_flag = nil, assessed = nil, encounter_id = nil, medcin_id = nil) magic_parameters = { action: 'GetPatientProblems', patientid: patientid, parameter1: show_by_encounter_flag, parameter2: assessed, parameter3: encounter_id, parameter4: medcin_id } response = magic(magic_parameters) unless response.is_a?(Array) response = [ response ] end response end |
#get_patient_sections ⇒ Object
428 429 430 |
# File 'lib/allscripts_unity_client/client.rb', line 428 def get_patient_sections raise NotImplementedError, 'GetPatientSections magic action not implemented' end |
#get_patients_by_icd9(icd9, start = nil, end_param = nil) ⇒ Object
418 419 420 421 422 423 424 425 426 |
# File 'lib/allscripts_unity_client/client.rb', line 418 def get_patients_by_icd9(icd9, start = nil, end_param = nil) magic_parameters = { action: 'GetPatientsByICD9', parameter1: icd9, parameter2: start, parameter3: end_param } magic(magic_parameters) end |
#get_procedures ⇒ Object
432 433 434 |
# File 'lib/allscripts_unity_client/client.rb', line 432 def get_procedures raise NotImplementedError, 'GetProcedures magic action not implemented' end |
#get_provider(provider_id = nil, user_name = nil) ⇒ Object
436 437 438 439 440 441 442 443 444 445 446 447 |
# File 'lib/allscripts_unity_client/client.rb', line 436 def get_provider(provider_id = nil, user_name = nil) if provider_id.nil? && user_name.nil? raise ArgumentError, 'provider_id or user_name must be given' end magic_parameters = { action: 'GetProvider', parameter1: provider_id, parameter2: user_name } magic(magic_parameters) end |
#get_providers(security_filter = nil, name_filter = nil) ⇒ Object
449 450 451 452 453 454 455 456 457 458 459 460 461 462 |
# File 'lib/allscripts_unity_client/client.rb', line 449 def get_providers(security_filter = nil, name_filter = nil) magic_parameters = { action: 'GetProviders', parameter1: security_filter, parameter2: name_filter } response = magic(magic_parameters) unless response.is_a?(Array) response = [ response ] end response end |
#get_ref_providers_by_specialty ⇒ Object
464 465 466 |
# File 'lib/allscripts_unity_client/client.rb', line 464 def get_ref_providers_by_specialty raise NotImplementedError, 'GetRefProvidersBySpecialty magic action not implemented' end |
#get_rounding_list_entries ⇒ Object
468 469 470 |
# File 'lib/allscripts_unity_client/client.rb', line 468 def get_rounding_list_entries raise NotImplementedError, 'GetRoundingListEntries magic action not implemented' end |
#get_rounding_lists ⇒ Object
472 473 474 |
# File 'lib/allscripts_unity_client/client.rb', line 472 def get_rounding_lists raise NotImplementedError, 'GetRoundingLists magic action not implemented' end |
#get_rx_favs ⇒ Object
476 477 478 |
# File 'lib/allscripts_unity_client/client.rb', line 476 def get_rx_favs raise NotImplementedError, 'GetRXFavs magic action not implemented' end |
#get_schedule ⇒ Object
480 481 482 |
# File 'lib/allscripts_unity_client/client.rb', line 480 def get_schedule raise NotImplementedError, 'GetSchedule magic action not implemented' end |
#get_security_token!(parameters = {}) ⇒ Object
Implement Unity’s GetSecurityToken endpoint.
Stores the results in @security_token.
- parameters
-
A hash of Unity parameters for GetSecurityToken:
{
:username => ...,
:password => ...,
:appname => ...
}
Returns the security token.
64 65 66 |
# File 'lib/allscripts_unity_client/client.rb', line 64 def get_security_token!(parameters = {}) @client_driver.get_security_token!(parameters) end |
#get_server_info ⇒ Object
484 485 486 487 488 489 |
# File 'lib/allscripts_unity_client/client.rb', line 484 def get_server_info magic_parameters = { action: 'GetServerInfo' } magic(magic_parameters) end |
#get_sigs ⇒ Object
491 492 493 |
# File 'lib/allscripts_unity_client/client.rb', line 491 def get_sigs raise NotImplementedError, 'GetSigs magic action not implemented' end |
#get_task(userid, transaction_id) ⇒ Object
495 496 497 498 499 500 501 502 |
# File 'lib/allscripts_unity_client/client.rb', line 495 def get_task(userid, transaction_id) magic_parameters = { action: 'GetTask', userid: userid, parameter1: transaction_id } magic(magic_parameters) end |
#get_task_list(userid = nil, since = nil, delegated = nil, task_types = nil, task_statuses = nil) ⇒ Object
delegated is an undocumented parameter
505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 |
# File 'lib/allscripts_unity_client/client.rb', line 505 def get_task_list(userid = nil, since = nil, delegated = nil, task_types = nil, task_statuses = nil) magic_parameters = { action: 'GetTaskList', userid: userid, parameter1: since, parameter2: task_types, parameter3: task_statuses, parameter4: delegated } response = magic(magic_parameters) unless response.is_a?(Array) response = [ response ] end response end |
#get_user_authentication ⇒ Object
523 524 525 |
# File 'lib/allscripts_unity_client/client.rb', line 523 def get_user_authentication raise NotImplementedError, 'GetUserAuthentication magic action not implemented' end |
#get_user_id ⇒ Object
527 528 529 |
# File 'lib/allscripts_unity_client/client.rb', line 527 def get_user_id raise NotImplementedError, 'GetUserID magic action not implemented' end |
#get_user_security ⇒ Object
531 532 533 |
# File 'lib/allscripts_unity_client/client.rb', line 531 def get_user_security raise NotImplementedError, 'GetUserSecurity magic action not implemented' end |
#get_vaccine_manufacturers ⇒ Object
535 536 537 |
# File 'lib/allscripts_unity_client/client.rb', line 535 def get_vaccine_manufacturers raise NotImplementedError, 'GetVaccineManufacturers magic action not implemented' end |
#get_vitals ⇒ Object
539 540 541 |
# File 'lib/allscripts_unity_client/client.rb', line 539 def get_vitals raise NotImplementedError, 'GetVitals magic action not implemented' end |
#last_logs ⇒ Object
543 544 545 546 547 548 |
# File 'lib/allscripts_unity_client/client.rb', line 543 def last_logs magic_parameters = { action: 'LastLogs' } magic(magic_parameters) end |
#magic(parameters = {}) ⇒ Object
Implement Unity’s Magic endpoint
- parameters
-
A Hash of Unity parameters. Takes this form:
{
:action => ...,
:userid => ...,
:appname => ...,
:patientid => ...,
:token => ...,
:parameter1 => ...,
:parameter2 => ...,
:parameter3 => ...,
:parameter4 => ...,
:parameter5 => ...,
:parameter6 => ...,
:data => ...
}
Returns the result of the Magic endpoint as a Hash.
47 48 49 |
# File 'lib/allscripts_unity_client/client.rb', line 47 def magic(parameters = {}) @client_driver.magic(parameters) end |
#make_task ⇒ Object
550 551 552 |
# File 'lib/allscripts_unity_client/client.rb', line 550 def make_task raise NotImplementedError, 'MakeTask magic action not implemented' end |
#options ⇒ Object
Access client’s options. See ClientOptions.
23 24 25 |
# File 'lib/allscripts_unity_client/client.rb', line 23 def @client_driver. end |
#retire_security_token!(parameters = {}) ⇒ Object
Implement Unity’s RetireSecurityToken endpoint using Savon.
- parameters
-
A hash of Unity parameters for RetireSecurityToken. If not given then defaults to
@security_token:
{
:token => ...,
:appname => ...
}
77 78 79 |
# File 'lib/allscripts_unity_client/client.rb', line 77 def retire_security_token!(parameters = {}) @client_driver.retire_security_token!(parameters) end |
#save_admin_task ⇒ Object
554 555 556 |
# File 'lib/allscripts_unity_client/client.rb', line 554 def save_admin_task raise NotImplementedError, 'SaveAdminTask magic action not implemented' end |
#save_allergy ⇒ Object
558 559 560 |
# File 'lib/allscripts_unity_client/client.rb', line 558 def save_allergy raise NotImplementedError, 'SaveAllergy magic action not implemented' end |
#save_ced ⇒ Object
562 563 564 |
# File 'lib/allscripts_unity_client/client.rb', line 562 def save_ced raise NotImplementedError, 'SaveCED magic action not implemented' end |
#save_charge ⇒ Object
566 567 568 |
# File 'lib/allscripts_unity_client/client.rb', line 566 def save_charge raise NotImplementedError, 'SaveCharge magic action not implemented' end |
#save_chart_view_audit ⇒ Object
570 571 572 |
# File 'lib/allscripts_unity_client/client.rb', line 570 def save_chart_view_audit raise NotImplementedError, 'SaveChartViewAudit magic action not implemented' end |
#save_diagnosis ⇒ Object
574 575 576 |
# File 'lib/allscripts_unity_client/client.rb', line 574 def save_diagnosis raise NotImplementedError, 'SaveDiagnosis magic action not implemented' end |
#save_document_image ⇒ Object
578 579 580 |
# File 'lib/allscripts_unity_client/client.rb', line 578 def save_document_image raise NotImplementedError, 'SaveDocumentImage magic action not implemented' end |
#save_er_note ⇒ Object
582 583 584 |
# File 'lib/allscripts_unity_client/client.rb', line 582 def save_er_note raise NotImplementedError, 'SaveERNote magic action not implemented' end |
#save_hie_document ⇒ Object
586 587 588 |
# File 'lib/allscripts_unity_client/client.rb', line 586 def save_hie_document raise NotImplementedError, 'SaveHIEDocument magic action not implemented' end |
#save_history ⇒ Object
590 591 592 |
# File 'lib/allscripts_unity_client/client.rb', line 590 def save_history raise NotImplementedError, 'SaveHistory magic action not implemented' end |
#save_immunization ⇒ Object
594 595 596 |
# File 'lib/allscripts_unity_client/client.rb', line 594 def save_immunization raise NotImplementedError, 'SaveImmunization magic action not implemented' end |
#save_note ⇒ Object
598 599 600 |
# File 'lib/allscripts_unity_client/client.rb', line 598 def save_note raise NotImplementedError, 'SaveNote magic action not implemented' end |
#save_patient ⇒ Object
602 603 604 |
# File 'lib/allscripts_unity_client/client.rb', line 602 def save_patient raise NotImplementedError, 'SavePatient magic action not implemented' end |
#save_patient_location ⇒ Object
606 607 608 |
# File 'lib/allscripts_unity_client/client.rb', line 606 def save_patient_location raise NotImplementedError, 'SavePatientLocation magic action not implemented' end |
#save_problem ⇒ Object
610 611 612 |
# File 'lib/allscripts_unity_client/client.rb', line 610 def save_problem raise NotImplementedError, 'SaveProblem magic action not implemented' end |
#save_problems_data ⇒ Object
614 615 616 |
# File 'lib/allscripts_unity_client/client.rb', line 614 def save_problems_data raise NotImplementedError, 'SaveProblemsData magic action not implemented' end |
#save_ref_provider ⇒ Object
618 619 620 |
# File 'lib/allscripts_unity_client/client.rb', line 618 def save_ref_provider raise NotImplementedError, 'SaveRefProvider magic action not implemented' end |
#save_result ⇒ Object
622 623 624 |
# File 'lib/allscripts_unity_client/client.rb', line 622 def save_result raise NotImplementedError, 'SaveResult magic action not implemented' end |
#save_rx(userid, patientid, rxxml) ⇒ Object
626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 |
# File 'lib/allscripts_unity_client/client.rb', line 626 def save_rx(userid, patientid, rxxml) # Generate XML structure for rxxml builder = Nokogiri::XML::Builder.new do |xml| xml.saverx { xml.field('name' => 'transid', 'value' => rxxml[:transid]) unless rxxml[:transid] xml.field('name' => 'PharmID', 'value' => rxxml[:pharmid]) unless rxxml[:pharmid] xml.field('name' => 'DDI', 'value' => rxxml[:ddi]) unless rxxml[:ddi] xml.field('name' => 'GPPCCode', 'value' => rxxml[:gppccode]) unless rxxml[:gppccode] xml.field('name' => 'GPPCText', 'value' => rxxml[:gppctext]) unless rxxml[:gppctext] xml.field('name' => 'GPPCCustom', 'value' => rxxml[:gppccustom]) unless rxxml[:gppccustom] xml.field('name' => 'Sig', 'value' => rxxml[:sig]) unless rxxml[:sig] xml.field('name' => 'QuanPresc', 'value' => rxxml[:quanpresc]) unless rxxml[:quanpresc] xml.field('name' => 'Refills', 'value' => rxxml[:refills]) unless rxxml[:refills] xml.field('name' => 'DAW', 'value' => rxxml[:daw]) unless rxxml[:daw] xml.field('name' => 'DaysSupply', 'value' => rxxml[:dayssupply]) unless rxxml[:dayssupply] xml.field('name' => 'startdate', 'value' => utc_to_local(Date.parse(rxxml[:startdate].to_s))) unless rxxml[:startdate] xml.field('name' => 'historicalflag', 'value' => rxxml[:historicalflag]) unless rxxml[:historicalflag] xml.field('name' => 'rxaction', 'value' => rxxml[:rxaction]) unless rxxml[:rxaction] xml.field('name' => 'delivery', 'value' => rxxml[:delivery]) unless rxxml[:delivery] xml.field('name' => 'ignorepharmzero', 'value' => rxxml[:ignorepharmzero]) unless rxxml[:ignorepharmzero] xml.field('name' => 'orderedbyid', 'value' => rxxml[:orderedbyid]) unless rxxml[:orderedbyid] xml.field('name' => 'newqty', 'value' => rxxml[:newqty]) unless rxxml[:newqty] xml.field('name' => 'newrefills', 'value' => rxxml[:newrefills]) unless rxxml[:newrefills] xml.field('name' => 'comments', 'value' => rxxml[:comments]) unless rxxml[:comments] xml.field('name' => 'orderstatus', 'value' => rxxml[:order_status]) unless rxxml[:order_status] if rxxml[:problems] rxxml[:problems].each do |problem| xml.field('name' => 'Problem', 'value' => problem) end end } end magic_parameters = { action: 'SaveRX', userid: userid, patientid: patientid, parameter1: nokogiri_to_string(builder) } magic(magic_parameters) end |
#save_simple_encounter ⇒ Object
669 670 671 |
# File 'lib/allscripts_unity_client/client.rb', line 669 def save_simple_encounter raise NotImplementedError, 'SaveSimpleEncounter magic action not implemented' end |
#save_simple_rx ⇒ Object
673 674 675 |
# File 'lib/allscripts_unity_client/client.rb', line 673 def save_simple_rx raise NotImplementedError, 'SaveSimpleRX magic action not implemented' end |
#save_specialist ⇒ Object
677 678 679 |
# File 'lib/allscripts_unity_client/client.rb', line 677 def save_specialist raise NotImplementedError, 'SaveSpecialist magic action not implemented' end |
#save_task(userid, patientid, task_type = nil, target_user = nil, work_object_id = nil, comments = nil) ⇒ Object
681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 |
# File 'lib/allscripts_unity_client/client.rb', line 681 def save_task(userid, patientid, task_type = nil, target_user = nil, work_object_id = nil, comments = nil) if task_type.nil? && target_user.nil? && work_object_id.nil? && comments.nil? raise ArugmentError, 'task_type, target_user, work_object_id, and comments can not all be nil' end magic_parameters = { action: 'SaveTask', userid: userid, patientid: patientid, parameter1: task_type, parameter2: target_user, parameter3: work_object_id, parameter4: comments } magic(magic_parameters) end |
#save_task_status(userid, transaction_id = nil, status = nil, delegate_id = nil, comment = nil, taskchanges = nil, patient_id = nil) ⇒ Object
698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 |
# File 'lib/allscripts_unity_client/client.rb', line 698 def save_task_status(userid, transaction_id = nil, status = nil, delegate_id = nil, comment = nil, taskchanges = nil, patient_id = nil) if transaction_id.nil? && delegate_id.nil? && comment.nil? raise ArugmentError, 'transaction_id, delegate_id, and comment can not all be nil' end # Generate XML structure for rxxml builder = Nokogiri::XML::Builder.new do |xml| xml.taskchanges { xml.refills('value' => taskchanges[:refills]) unless taskchanges.nil? || taskchanges[:refills].nil? xml.days('value' => taskchanges[:days]) unless taskchanges.nil? || taskchanges[:days].nil? xml.qty('value' => taskchanges[:qty]) unless taskchanges.nil? || taskchanges[:qty].nil? xml.tasktype('value' => taskchanges[:tasktype]) unless taskchanges.nil? || taskchanges[:tasktype].nil? xml.delegated('value' => taskchanges[:delegated]) unless taskchanges.nil? || taskchanges[:delegated].nil? xml.taskstatus('value' => taskchanges[:taskstatus]) unless taskchanges.nil? || taskchanges[:taskstatus].nil? xml.removereason('value' => taskchanges[:removereason]) unless taskchanges.nil? || taskchanges[:removereason].nil? xml.denyreason('value' => taskchanges[:denyreason]) unless taskchanges.nil? || taskchanges[:denyreason].nil? } end magic_parameters = { action: 'SaveTaskStatus', userid: userid, parameter1: transaction_id, parameter2: status, parameter3: delegate_id, parameter4: comment, parameter6: nokogiri_to_string(builder) } if patient_id magic_parameters.update(patientid: patient_id) end magic(magic_parameters) end |
#save_tiff ⇒ Object
734 735 736 |
# File 'lib/allscripts_unity_client/client.rb', line 734 def save_tiff raise NotImplementedError, 'SaveTiff magic action not implemented' end |
#save_unstructured_document ⇒ Object
738 739 740 |
# File 'lib/allscripts_unity_client/client.rb', line 738 def save_unstructured_document raise NotImplementedError, 'SaveUnstructuredDocument magic action not implemented' end |
#save_v10_doc_signature ⇒ Object
742 743 744 |
# File 'lib/allscripts_unity_client/client.rb', line 742 def save_v10_doc_signature raise NotImplementedError, 'SaveV10DocSignature magic action not implemented' end |
#save_v11_note ⇒ Object
746 747 748 |
# File 'lib/allscripts_unity_client/client.rb', line 746 def save_v11_note raise NotImplementedError, 'SaveV11Note magic action not implemented' end |
#save_vitals ⇒ Object
750 751 752 |
# File 'lib/allscripts_unity_client/client.rb', line 750 def save_vitals raise NotImplementedError, 'SaveVitals magic action not implemented' end |
#save_vitals_data ⇒ Object
754 755 756 |
# File 'lib/allscripts_unity_client/client.rb', line 754 def save_vitals_data raise NotImplementedError, 'SaveVitalsData magic action not implemented' end |
#search_charge_codes ⇒ Object
758 759 760 |
# File 'lib/allscripts_unity_client/client.rb', line 758 def search_charge_codes raise NotImplementedError, 'SearchChargeCodes magic action not implemented' end |
#search_diagnosis_codes ⇒ Object
762 763 764 |
# File 'lib/allscripts_unity_client/client.rb', line 762 def search_diagnosis_codes raise NotImplementedError, 'SearchDiagnosisCodes magic action not implemented' end |
#search_meds(userid, patientid, search = nil) ⇒ Object
766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 |
# File 'lib/allscripts_unity_client/client.rb', line 766 def search_meds(userid, patientid, search = nil) magic_parameters = { action: 'SearchMeds', userid: userid, patientid: patientid, parameter1: search } response = magic(magic_parameters) unless response.is_a?(Array) response = [ response ] end response end |
#search_patients(search) ⇒ Object
783 784 785 786 787 788 789 |
# File 'lib/allscripts_unity_client/client.rb', line 783 def search_patients(search) magic_parameters = { action: 'SearchPatients', parameter1: search } magic(magic_parameters) end |
#search_patients_rxhub5 ⇒ Object
791 792 793 |
# File 'lib/allscripts_unity_client/client.rb', line 791 def search_patients_rxhub5 raise NotImplementedError, 'SearchPatientsRXHub5 magic action not implemented' end |
#search_pharmacies(search) ⇒ Object
795 796 797 798 799 800 801 |
# File 'lib/allscripts_unity_client/client.rb', line 795 def search_pharmacies(search) magic_parameters = { action: 'SearchPharmacies', parameter1: search } magic(magic_parameters) end |
#search_problem_codes ⇒ Object
803 804 805 |
# File 'lib/allscripts_unity_client/client.rb', line 803 def search_problem_codes raise NotImplementedError, 'SearchProblemCodes magic action not implemented' end |
#security_token? ⇒ Boolean
Return true if a Unity security token has been fetched and saved.
82 83 84 |
# File 'lib/allscripts_unity_client/client.rb', line 82 def security_token? @client_driver.security_token? end |
#update_encounter ⇒ Object
807 808 809 |
# File 'lib/allscripts_unity_client/client.rb', line 807 def update_encounter raise NotImplementedError, 'UpdateEncounter magic action not implemented' end |
#update_order ⇒ Object
811 812 813 |
# File 'lib/allscripts_unity_client/client.rb', line 811 def update_order raise NotImplementedError, 'UpdateOrder magic action not implemented' end |
#update_referral_order_status ⇒ Object
815 816 817 |
# File 'lib/allscripts_unity_client/client.rb', line 815 def update_referral_order_status raise NotImplementedError, 'UpdateReferralOrderStatus magic action not implemented' end |