Sha256: 8ecdbd9cabe9380a35e5a169668fc890ac70340169fdef5c6f217191c23cca74

Contents?: true

Size: 1.01 KB

Versions: 2

Compression:

Stored size: 1.01 KB

Contents

# frozen_string_literal: true

module MyTankInfo
  class TankReconciliationRecordsResource < Resource
    def list(site_id:, reconciliation_period:, **params)
      response = get_request("api/recon/sites/#{site_id}", params: params)
      TankReconciliationRecordCollection.from_response(
        response,
        reconciliation_period: reconciliation_period
      )
    end

    def retrieve(site_id:, reconciliation_period:, started_at:)
      date =
        if started_at.instance_of?(DateTime) ||
            started_at.instance_of?(Date) ||
            started_at.instance_of?(Time)
          started_at.strftime(MYTI_DATE_TIME_FORMAT)
        else
          started_at
        end

      response = get_request("api/recon/sites/#{site_id}/#{date}")
      TankReconciliationRecordCollection.from_response(
        response,
        reconciliation_period: reconciliation_period
      )
    end

    def update(site_id:, started_at:, **attributes)
      put("api/recon/sites/#{site_id}/#{date}", body: attributes)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
my_tank_info-1.0.1 lib/my_tank_info/resources/tank_reconciliation_records.rb
my_tank_info-1.0.0 lib/my_tank_info/resources/tank_reconciliation_records.rb