Class: ListingIssues::WalmartAdapter

Inherits:
BaseAdapter show all
Defined in:
app/services/listing_issues/walmart_adapter.rb

Overview

Walmart listing issues, sourced from the marketplace item data the Walmart
EDI pull stores under CatalogItem#retailer_information['walmart']
(publish/lifecycle status + unpublished reasons; see
Edi::Walmart::CatalogItemInformationProcessor). Dormant until that data
flows — the interface matches AmazonAdapter, so the report and dashboard
cover Walmart the moment items are populated, no further wiring.

Constant Summary collapse

PROVIDER =
'walmart'

Instance Method Summary collapse

Instance Method Details

#candidate_item_idsArray<Integer>

Returns:

  • (Array<Integer>)


17
18
19
# File 'app/services/listing_issues/walmart_adapter.rb', line 17

def candidate_item_ids
  (walmart_item_ids + open_issue_item_ids).uniq
end

#issues_for(catalog_item) ⇒ Array<ListingIssues::Issue>

Parameters:

Returns:



23
24
25
26
27
28
# File 'app/services/listing_issues/walmart_adapter.rb', line 23

def issues_for(catalog_item)
  data = catalog_item.retailer_information&.dig('walmart')
  return [] if data.blank?

  [publish_status_issue(data), *unpublished_reason_issues(data)].compact
end

#providerString

Returns:

  • (String)


14
# File 'app/services/listing_issues/walmart_adapter.rb', line 14

def provider = PROVIDER