Class: LlmCostTracker::ProviderInvoiceImport

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/llm_cost_tracker/provider_invoice_import.rb

Constant Summary collapse

STATE_RUNNING =
"running"
STATE_COMPLETED =
"completed"
STATE_FAILED =
"failed"
STATES =
[STATE_RUNNING, STATE_COMPLETED, STATE_FAILED].freeze

Class Method Summary collapse

Class Method Details

.last_completed_window_for(source, provider: nil) ⇒ Object



23
24
25
26
27
# File 'app/models/llm_cost_tracker/provider_invoice_import.rb', line 23

def self.last_completed_window_for(source, provider: nil)
  scope = for_source(source)
  scope = scope.for_provider(provider) if provider
  scope.completed.latest.limit(1).pick(:window_start, :window_end)
end

.resume_cursor_for(source, provider: nil) ⇒ Object



17
18
19
20
21
# File 'app/models/llm_cost_tracker/provider_invoice_import.rb', line 17

def self.resume_cursor_for(source, provider: nil)
  scope = for_source(source)
  scope = scope.for_provider(provider) if provider
  scope.latest.limit(1).pick(:cursor)
end