Advertisement
Guest User

Untitled

a guest
Nov 18th, 2019
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.34 KB | None | 0 0
  1. ActiveRecord::StatementInvalid
  2. PG::SyntaxError: ERROR: syntax error at or near "DESC" LINE 5: ("suppliercode" = 'AXIUM') DESC, ^ : SELECT "id", row_number() OVER (ORDER BY "id") AS "ave_rank_val" FROM (SELECT "id", "suppliercode", "supplier_id", "pharmacy_price", row_number() OVER (PARTITION BY "product_id" ORDER BY( ("suppliercode" = 'AXIUM') DESC, ("preferred" IS TRUE) AND ("suppliercode" NOT IN ('UNIPHAR', 'UNITED', 'AXIUM'))) DESC, ("suppliercode" IN ('UNIPHAR', 'UNITED', 'AXIUM')) DESC, "pharmacy_price", "id") AS "position" FROM (SELECT DISTINCT "offers".*, suppliers.code AS suppliercode, (offers.preferred = true AND suppliers.code NOT IN ('UNIPHAR', 'UNITED', 'AXIUM')) AS offerpreferredflag, (suppliers.code IN ('UNIPHAR', 'UNITED', 'AXIUM')) AS supplierwhosalersflag, ROUND(CAST(COALESCE(bp.price, case_cost) / products.units_in_case AS NUMERIC), 2) AS pharmacy_price, (suppliers.code = 'AXIUM') AS axium_preferred FROM "offers" INNER JOIN "products" ON "products"."id" = "offers"."product_id" INNER JOIN "suppliers" ON "suppliers"."id" = "offers"."supplier_id" INNER JOIN "pharmacy_suppliers" ON "pharmacy_suppliers"."supplier_id" = "suppliers"."id" LEFT JOIN bonus_prices AS bp ON bp.offer_id = offers.id AND NOW() BETWEEN bp.start_date AND bp.end_date JOIN stock_infos base_stock ON base_stock.offer_id = offers.id AND base_stock.depot_id IS NULL LEFT JOIN stock_infos depot_stock ON depot_stock.offer_id = offers.id AND depot_stock.depot_id IN (8) AND suppliers.code NOT IN ('UNIPHAR', 'AXIUM') LEFT JOIN stock_infos distributed_stock ON distributed_stock.offer_id = offers.id AND distributed_stock.depot_id IN (8) AND suppliers.code IN ('UNIPHAR', 'AXIUM') WHERE "offers"."archived_at" IS NULL AND "suppliers"."archived_at" IS NULL AND "pharmacy_suppliers"."pharmacy_id" = 55 AND "offers"."archived_at" IS NULL AND "products"."archived_at" IS NULL AND "pharmacy_suppliers"."archived_at" IS NULL AND ("pharmacy_suppliers"."order_account_code" IS NOT NULL) AND ("pharmacy_suppliers"."service_type" IS NOT NULL) AND ((suppliers.code NOT IN ('UNIPHAR', 'AXIUM') AND COALESCE(depot_stock.in_stock, base_stock.in_stock) IS true) OR (suppliers.code IN ('UNIPHAR', 'AXIUM') AND distributed_stock.in_stock IS true) ) ORDER BY axium_preferred DESC, offerpreferredflag DESC, supplierwhosalersflag DESC, pharmacy_price ASC, id ASC) AS "t1") AS t1 WHERE ("position" = 1) ORDER BY id limit 25 offset 0
  3. Extracted source (around line #20):
  4. 18
  5. 19
  6. 20
  7. 21
  8. 22
  9. 23
  10.  
  11. final_query.concat(" ORDER BY id limit #{per_page} offset #{offset}")
  12.  
  13. ActiveRecord::Base.connection.exec_query(final_query)
  14. end
  15.  
  16. def best_ids_sql(query)
  17.  
  18. Rails.root: /usr/src/app
  19.  
  20. Application Trace | Framework Trace | Full Trace
  21. lib/offer_selector.rb:20:in `best_ids_from'
  22. app/finders/best_offers_finder.rb:61:in `finalize_collection'
  23. app/finders/best_offers_finder.rb:16:in `load_collection'
  24. app/finders/base_finder.rb:16:in `call'
  25. app/finders/base_finder.rb:7:in `call'
  26. app/finders/union_offers_collection_finder.rb:24:in `call'
  27. app/finders/base_finder.rb:7:in `call'
  28. app/controllers/api/v1/offer.rb:52:in `block (2 levels) in <class:Offer>'
  29. Request
  30. Parameters:
  31.  
  32. {"q"=>{"department_id"=>"", "sub_department_id"=>"", "brand_id"=>"", "supplier_id"=>"", "search_query"=>"", "with_bonuses"=>""}, "per_page"=>"25", "page"=>"1"}
  33. Toggle session dump
  34. Toggle env dump
  35. Response
  36. Headers:
  37.  
  38. None
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement