class MedicalSupplierApi::Connection::Besse

Constants

BASE_URL
LIST_PATH
ORDER_PATH

Public Class Methods

build_account_info(customer_number: , generics: , items: ) click to toggle source
# File lib/medical_supplier_api/connection/besse.rb, line 23
def self.build_account_info(customer_number: , generics: , items: )
  MedicalSupplierApi::Models::Besse::AccountInfo.new(
    customer_number: customer_number,
    generics: generics,
    items: items.map(&:to_h)
  ).as_json
end
new(username: , password: , customer_number: , generics: false) click to toggle source
# File lib/medical_supplier_api/connection/besse.rb, line 8
def initialize(username: , password: , customer_number: , generics: false)
  @username = username
  @password = password
  @customer_number = customer_number
  @generics = (true == generics)
end

Public Instance Methods

check_inventory(items: , url: " click to toggle source
# File lib/medical_supplier_api/connection/besse.rb, line 15
def check_inventory(items: , url: "#{BASE_URL}#{LIST_PATH}")
  data = self.class.build_account_info(customer_number: @customer_number, generics: @generics, items: items)

  response = HTTParty.post(url, body: data.to_json, basic_auth: auth)

  MedicalSupplierApi::Models::Besse::AtpResponse.new(response: response)
end

Private Instance Methods

auth() click to toggle source
# File lib/medical_supplier_api/connection/besse.rb, line 32
def auth
  {
    username: @username,
    password: @password
  }
end