spree_order_reporting 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (362) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +26 -0
  3. data/README.md +100 -0
  4. data/Rakefile +38 -0
  5. data/app/assets/javascripts/spree/backend/order_reporting.js +2 -0
  6. data/app/assets/javascripts/spree/frontend/order_reporting.js +2 -0
  7. data/app/assets/stylesheets/spree/backend/order_reporting.css +4 -0
  8. data/app/assets/stylesheets/spree/frontend/order_reporting.css +4 -0
  9. data/app/jobs/order_reporting/recurring_report_delayed_job.rb +11 -0
  10. data/config/locales/en.yml +5 -0
  11. data/config/routes.rb +3 -0
  12. data/lib/generators/order_reporting/install/install_generator.rb +30 -0
  13. data/lib/order_reporting.rb +27 -0
  14. data/lib/order_reporting/engine.rb +20 -0
  15. data/lib/order_reporting/factories.rb +6 -0
  16. data/lib/order_reporting/queries/latest_orders_query.rb +7 -0
  17. data/lib/order_reporting/report.rb +25 -0
  18. data/lib/order_reporting/schedulers/delayed_job_scheduler.rb +8 -0
  19. data/lib/order_reporting/version.rb +3 -0
  20. data/lib/solidus_order_reporting.rb +2 -0
  21. data/lib/spree_order_reporting.rb +2 -0
  22. data/spec/dummy/README.rdoc +28 -0
  23. data/spec/dummy/Rakefile +6 -0
  24. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  25. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  26. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  27. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  28. data/spec/dummy/bin/bundle +3 -0
  29. data/spec/dummy/bin/delayed_job +5 -0
  30. data/spec/dummy/bin/rails +4 -0
  31. data/spec/dummy/bin/rake +4 -0
  32. data/spec/dummy/bin/setup +29 -0
  33. data/spec/dummy/config.ru +4 -0
  34. data/spec/dummy/config/application.rb +59 -0
  35. data/spec/dummy/config/boot.rb +6 -0
  36. data/spec/dummy/config/database.yml +12 -0
  37. data/spec/dummy/config/environment.rb +5 -0
  38. data/spec/dummy/config/environments/development.rb +41 -0
  39. data/spec/dummy/config/environments/production.rb +79 -0
  40. data/spec/dummy/config/environments/test.rb +34 -0
  41. data/spec/dummy/config/initializers/assets.rb +11 -0
  42. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  43. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  44. data/spec/dummy/config/initializers/custom_user.rb +1 -0
  45. data/spec/dummy/config/initializers/devise.rb +3 -0
  46. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  47. data/spec/dummy/config/initializers/inflections.rb +16 -0
  48. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  49. data/spec/dummy/config/initializers/session_store.rb +3 -0
  50. data/spec/dummy/config/initializers/spree.rb +57 -0
  51. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  52. data/spec/dummy/config/locales/en.yml +23 -0
  53. data/spec/dummy/config/routes.rb +9 -0
  54. data/spec/dummy/config/secrets.yml +22 -0
  55. data/spec/dummy/db/migrate/20160706112305_spree_one_two.spree.rb +482 -0
  56. data/spec/dummy/db/migrate/20160706112306_spree_promo_one_two.spree.rb +46 -0
  57. data/spec/dummy/db/migrate/20160706112307_add_tax_rate_label.spree.rb +6 -0
  58. data/spec/dummy/db/migrate/20160706112308_add_toggle_tax_rate_display.spree.rb +6 -0
  59. data/spec/dummy/db/migrate/20160706112309_remove_unused_preference_columns.spree.rb +9 -0
  60. data/spec/dummy/db/migrate/20160706112310_add_lock_version_to_variant.spree.rb +6 -0
  61. data/spec/dummy/db/migrate/20160706112311_add_states_required_to_countries.spree.rb +6 -0
  62. data/spec/dummy/db/migrate/20160706112312_add_on_demand_to_product_and_variant.spree.rb +7 -0
  63. data/spec/dummy/db/migrate/20160706112313_remove_not_null_constraint_from_products_on_hand.spree.rb +12 -0
  64. data/spec/dummy/db/migrate/20160706112314_split_prices_from_variants.spree.rb +32 -0
  65. data/spec/dummy/db/migrate/20160706112315_remove_not_null_from_spree_prices_amount.spree.rb +10 -0
  66. data/spec/dummy/db/migrate/20160706112316_add_currency_to_line_items.spree.rb +6 -0
  67. data/spec/dummy/db/migrate/20160706112317_add_currency_to_orders.spree.rb +6 -0
  68. data/spec/dummy/db/migrate/20160706112318_add_cost_currency_to_variants.spree.rb +6 -0
  69. data/spec/dummy/db/migrate/20160706112319_remove_display_on_from_payment_methods.spree.rb +6 -0
  70. data/spec/dummy/db/migrate/20160706112320_add_position_to_taxonomies.spree.rb +6 -0
  71. data/spec/dummy/db/migrate/20160706112321_add_last_ip_to_spree_orders.spree.rb +6 -0
  72. data/spec/dummy/db/migrate/20160706112322_add_state_to_spree_adjustments.spree.rb +7 -0
  73. data/spec/dummy/db/migrate/20160706112323_add_display_on_to_spree_payment_methods.spree.rb +10 -0
  74. data/spec/dummy/db/migrate/20160706112324_add_position_to_product_properties.spree.rb +7 -0
  75. data/spec/dummy/db/migrate/20160706112325_add_identifier_to_spree_payments.spree.rb +6 -0
  76. data/spec/dummy/db/migrate/20160706112326_add_order_id_index_to_payments.spree.rb +10 -0
  77. data/spec/dummy/db/migrate/20160706112327_add_primary_to_spree_products_taxons.spree.rb +6 -0
  78. data/spec/dummy/db/migrate/20160706112328_create_spree_stock_items.spree.rb +15 -0
  79. data/spec/dummy/db/migrate/20160706112329_create_spree_stock_locations.spree.rb +12 -0
  80. data/spec/dummy/db/migrate/20160706112330_create_default_stock.spree.rb +35 -0
  81. data/spec/dummy/db/migrate/20160706112331_add_order_id_index_to_shipments.spree.rb +6 -0
  82. data/spec/dummy/db/migrate/20160706112332_change_meta_description_on_spree_products_to_text.spree.rb +6 -0
  83. data/spec/dummy/db/migrate/20160706112333_add_stock_location_id_to_spree_shipments.spree.rb +6 -0
  84. data/spec/dummy/db/migrate/20160706112334_add_pending_to_inventory_unit.spree.rb +7 -0
  85. data/spec/dummy/db/migrate/20160706112335_remove_on_demand_from_product_and_variant.spree.rb +7 -0
  86. data/spec/dummy/db/migrate/20160706112336_create_shipping_method_zone.spree.rb +22 -0
  87. data/spec/dummy/db/migrate/20160706112337_remove_shipping_category_id_from_shipping_method.spree.rb +6 -0
  88. data/spec/dummy/db/migrate/20160706112338_create_shipping_method_categories.spree.rb +14 -0
  89. data/spec/dummy/db/migrate/20160706112339_add_tracking_url_to_spree_shipping_methods.spree.rb +6 -0
  90. data/spec/dummy/db/migrate/20160706112340_create_spree_shipping_rates.spree.rb +25 -0
  91. data/spec/dummy/db/migrate/20160706112341_remove_category_match_attributes_from_shipping_method.spree.rb +8 -0
  92. data/spec/dummy/db/migrate/20160706112342_create_stock_movements.spree.rb +13 -0
  93. data/spec/dummy/db/migrate/20160706112343_add_address_fields_to_stock_location.spree.rb +23 -0
  94. data/spec/dummy/db/migrate/20160706112344_add_active_field_to_stock_locations.spree.rb +6 -0
  95. data/spec/dummy/db/migrate/20160706112345_add_backorderable_to_stock_item.spree.rb +6 -0
  96. data/spec/dummy/db/migrate/20160706112346_add_default_quantity_to_stock_movement.spree.rb +6 -0
  97. data/spec/dummy/db/migrate/20160706112347_add_source_and_destination_to_stock_movements.spree.rb +9 -0
  98. data/spec/dummy/db/migrate/20160706112348_change_orders_total_precision.spree.rb +9 -0
  99. data/spec/dummy/db/migrate/20160706112349_change_spree_payments_amount_precision.spree.rb +8 -0
  100. data/spec/dummy/db/migrate/20160706112350_change_spree_return_authorization_amount_precision.spree.rb +8 -0
  101. data/spec/dummy/db/migrate/20160706112351_change_adjustments_amount_precision.spree.rb +8 -0
  102. data/spec/dummy/db/migrate/20160706112352_add_originator_to_stock_movement.spree.rb +8 -0
  103. data/spec/dummy/db/migrate/20160706112353_drop_source_and_destination_from_stock_movement.spree.rb +16 -0
  104. data/spec/dummy/db/migrate/20160706112354_migrate_inventory_unit_sold_to_on_hand.spree.rb +10 -0
  105. data/spec/dummy/db/migrate/20160706112355_add_stock_location_to_rma.spree.rb +6 -0
  106. data/spec/dummy/db/migrate/20160706112356_update_shipment_state_for_canceled_orders.spree.rb +16 -0
  107. data/spec/dummy/db/migrate/20160706112357_add_seo_metas_to_taxons.spree.rb +10 -0
  108. data/spec/dummy/db/migrate/20160706112358_remove_stock_item_and_variant_lock.spree.rb +15 -0
  109. data/spec/dummy/db/migrate/20160706112359_add_name_to_spree_credit_cards.spree.rb +6 -0
  110. data/spec/dummy/db/migrate/20160706112360_update_name_fields_on_spree_credit_cards.spree.rb +14 -0
  111. data/spec/dummy/db/migrate/20160706112361_add_index_to_source_columns_on_adjustments.spree.rb +6 -0
  112. data/spec/dummy/db/migrate/20160706112362_update_adjustment_states.spree.rb +17 -0
  113. data/spec/dummy/db/migrate/20160706112363_add_shipping_rates_to_shipments.spree.rb +16 -0
  114. data/spec/dummy/db/migrate/20160706112364_create_spree_stock_transfers.spree.rb +15 -0
  115. data/spec/dummy/db/migrate/20160706112365_drop_products_count_on_hand.spree.rb +6 -0
  116. data/spec/dummy/db/migrate/20160706112366_set_default_shipping_rate_cost.spree.rb +6 -0
  117. data/spec/dummy/db/migrate/20160706112367_add_number_to_stock_transfer.spree.rb +24 -0
  118. data/spec/dummy/db/migrate/20160706112368_add_sku_index_to_spree_variants.spree.rb +6 -0
  119. data/spec/dummy/db/migrate/20160706112369_add_backorderable_default_to_spree_stock_location.spree.rb +6 -0
  120. data/spec/dummy/db/migrate/20160706112370_add_propage_all_variants_to_spree_stock_location.spree.rb +6 -0
  121. data/spec/dummy/db/migrate/20160706112371_rename_shipping_methods_zones_to_spree_shipping_methods_zones.spree.rb +6 -0
  122. data/spec/dummy/db/migrate/20160706112372_add_user_id_index_to_spree_orders.spree.rb +6 -0
  123. data/spec/dummy/db/migrate/20160706112373_add_updated_at_to_spree_countries.spree.rb +10 -0
  124. data/spec/dummy/db/migrate/20160706112374_add_updated_at_to_spree_states.spree.rb +10 -0
  125. data/spec/dummy/db/migrate/20160706112375_add_cvv_result_code_and_cvv_result_message_to_spree_payments.spree.rb +7 -0
  126. data/spec/dummy/db/migrate/20160706112376_add_unique_index_to_permalink_on_spree_products.spree.rb +6 -0
  127. data/spec/dummy/db/migrate/20160706112377_add_unique_index_to_orders_shipments_and_stock_transfers.spree.rb +8 -0
  128. data/spec/dummy/db/migrate/20160706112378_add_deleted_at_to_spree_tax_rates.spree.rb +6 -0
  129. data/spec/dummy/db/migrate/20160706112379_remove_lock_version_from_inventory_units.spree.rb +7 -0
  130. data/spec/dummy/db/migrate/20160706112380_add_cost_price_to_line_item.spree.rb +6 -0
  131. data/spec/dummy/db/migrate/20160706112381_set_backorderable_to_default_to_false.spree.rb +7 -0
  132. data/spec/dummy/db/migrate/20160706112382_add_created_by_id_to_spree_orders.spree.rb +6 -0
  133. data/spec/dummy/db/migrate/20160706112383_index_completed_at_on_spree_orders.spree.rb +6 -0
  134. data/spec/dummy/db/migrate/20160706112384_add_tax_category_id_to_spree_line_items.spree.rb +6 -0
  135. data/spec/dummy/db/migrate/20160706112385_migrate_tax_categories_to_line_items.spree.rb +11 -0
  136. data/spec/dummy/db/migrate/20160706112386_drop_spree_mail_methods.spree.rb +13 -0
  137. data/spec/dummy/db/migrate/20160706112387_set_default_stock_location_on_shipments.spree.rb +9 -0
  138. data/spec/dummy/db/migrate/20160706112388_upgrade_adjustments.spree.rb +41 -0
  139. data/spec/dummy/db/migrate/20160706112389_rename_adjustment_fields.spree.rb +15 -0
  140. data/spec/dummy/db/migrate/20160706112390_add_admin_name_column_to_spree_shipping_methods.spree.rb +6 -0
  141. data/spec/dummy/db/migrate/20160706112391_add_admin_name_column_to_spree_stock_locations.spree.rb +6 -0
  142. data/spec/dummy/db/migrate/20160706112392_add_shipment_total_to_spree_orders.spree.rb +6 -0
  143. data/spec/dummy/db/migrate/20160706112393_expand_order_number_size.spree.rb +10 -0
  144. data/spec/dummy/db/migrate/20160706112394_rename_activators_to_promotions.spree.rb +6 -0
  145. data/spec/dummy/db/migrate/20160706112395_add_adjustment_total_to_line_items.spree.rb +6 -0
  146. data/spec/dummy/db/migrate/20160706112396_add_adjustment_total_to_shipments.spree.rb +6 -0
  147. data/spec/dummy/db/migrate/20160706112397_add_depth_to_spree_taxons.spree.rb +17 -0
  148. data/spec/dummy/db/migrate/20160706112398_add_tax_total_to_line_items_shipments_and_orders.spree.rb +9 -0
  149. data/spec/dummy/db/migrate/20160706112399_add_shipping_category_to_shipping_methods_and_products.spree.rb +16 -0
  150. data/spec/dummy/db/migrate/20160706112400_migrate_old_shipping_calculators.spree.rb +20 -0
  151. data/spec/dummy/db/migrate/20160706112401_add_code_to_spree_promotion_rules.spree.rb +6 -0
  152. data/spec/dummy/db/migrate/20160706112402_change_states_required_for_countries.spree.rb +10 -0
  153. data/spec/dummy/db/migrate/20160706112403_add_deleted_at_to_spree_stock_items.spree.rb +6 -0
  154. data/spec/dummy/db/migrate/20160706112404_remove_promotions_event_name_field.spree.rb +6 -0
  155. data/spec/dummy/db/migrate/20160706112405_add_promo_total_to_line_items_and_shipments_and_orders.spree.rb +8 -0
  156. data/spec/dummy/db/migrate/20160706112406_remove_unused_credit_card_fields.spree.rb +17 -0
  157. data/spec/dummy/db/migrate/20160706112407_add_track_inventory_to_variant.spree.rb +6 -0
  158. data/spec/dummy/db/migrate/20160706112408_add_tax_category_to_variants.spree.rb +7 -0
  159. data/spec/dummy/db/migrate/20160706112409_add_channel_to_spree_orders.spree.rb +6 -0
  160. data/spec/dummy/db/migrate/20160706112410_add_included_to_adjustments.spree.rb +6 -0
  161. data/spec/dummy/db/migrate/20160706112411_rename_tax_total_fields.spree.rb +12 -0
  162. data/spec/dummy/db/migrate/20160706112412_add_line_item_id_to_spree_inventory_units.spree.rb +22 -0
  163. data/spec/dummy/db/migrate/20160706112413_add_updated_at_to_variants.spree.rb +6 -0
  164. data/spec/dummy/db/migrate/20160706112414_add_position_to_classifications.spree.rb +6 -0
  165. data/spec/dummy/db/migrate/20160706112415_create_spree_orders_promotions.spree.rb +9 -0
  166. data/spec/dummy/db/migrate/20160706112416_unique_shipping_method_categories.spree.rb +25 -0
  167. data/spec/dummy/db/migrate/20160706112417_add_item_count_to_spree_orders.spree.rb +6 -0
  168. data/spec/dummy/db/migrate/20160706112418_remove_value_type_from_spree_preferences.spree.rb +9 -0
  169. data/spec/dummy/db/migrate/20160706112419_rename_permalink_to_slug_for_products.spree.rb +6 -0
  170. data/spec/dummy/db/migrate/20160706112420_add_index_to_variant_id_and_currency_on_prices.spree.rb +6 -0
  171. data/spec/dummy/db/migrate/20160706112421_rename_activator_id_in_rules_and_actions_to_promotion_id.spree.rb +7 -0
  172. data/spec/dummy/db/migrate/20160706112422_add_deleted_at_to_spree_prices.spree.rb +6 -0
  173. data/spec/dummy/db/migrate/20160706112423_add_approver_id_and_approved_at_to_orders.spree.rb +7 -0
  174. data/spec/dummy/db/migrate/20160706112424_add_confirmation_delivered_to_spree_orders.spree.rb +6 -0
  175. data/spec/dummy/db/migrate/20160706112425_add_auto_capture_to_payment_methods.spree.rb +6 -0
  176. data/spec/dummy/db/migrate/20160706112426_create_spree_payment_capture_events.spree.rb +13 -0
  177. data/spec/dummy/db/migrate/20160706112427_add_uncaptured_amount_to_payments.spree.rb +6 -0
  178. data/spec/dummy/db/migrate/20160706112428_default_variant_weight_to_zero.spree.rb +12 -0
  179. data/spec/dummy/db/migrate/20160706112429_add_tax_category_id_to_shipping_methods.spree.rb +6 -0
  180. data/spec/dummy/db/migrate/20160706112430_add_tax_rate_id_to_shipping_rates.spree.rb +6 -0
  181. data/spec/dummy/db/migrate/20160706112431_add_pre_tax_amount_to_line_items_and_shipments.spree.rb +7 -0
  182. data/spec/dummy/db/migrate/20160706112432_add_more_indexes.spree.rb +14 -0
  183. data/spec/dummy/db/migrate/20160706112433_add_considered_risky_to_orders.spree.rb +6 -0
  184. data/spec/dummy/db/migrate/20160706112434_add_preference_store_to_everything.spree.rb +9 -0
  185. data/spec/dummy/db/migrate/20160706112435_add_user_id_to_spree_credit_cards.spree.rb +14 -0
  186. data/spec/dummy/db/migrate/20160706112436_migrate_old_preferences.spree.rb +52 -0
  187. data/spec/dummy/db/migrate/20160706112437_create_spree_stores.spree.rb +26 -0
  188. data/spec/dummy/db/migrate/20160706112438_create_store_from_preferences.spree.rb +34 -0
  189. data/spec/dummy/db/migrate/20160706112439_add_timestamps_to_spree_assets.spree.rb +7 -0
  190. data/spec/dummy/db/migrate/20160706112440_create_spree_taxons_promotion_rules.spree.rb +9 -0
  191. data/spec/dummy/db/migrate/20160706112441_add_additional_store_fields.spree.rb +9 -0
  192. data/spec/dummy/db/migrate/20160706112442_add_many_missing_indexes.spree.rb +20 -0
  193. data/spec/dummy/db/migrate/20160706112443_correct_some_polymorphic_index_and_add_more_missing.spree.rb +66 -0
  194. data/spec/dummy/db/migrate/20160706112444_add_user_id_created_by_id_index_to_order.spree.rb +6 -0
  195. data/spec/dummy/db/migrate/20160706112445_change_spree_price_amount_precision.spree.rb +9 -0
  196. data/spec/dummy/db/migrate/20160706112446_add_token_to_spree_orders.spree.rb +6 -0
  197. data/spec/dummy/db/migrate/20160706112447_move_order_token_from_tokenized_permission.spree.rb +30 -0
  198. data/spec/dummy/db/migrate/20160706112448_set_shipment_total_for_users_upgrading.spree.rb +11 -0
  199. data/spec/dummy/db/migrate/20160706112449_drop_credit_card_first_name_and_last_name.spree.rb +7 -0
  200. data/spec/dummy/db/migrate/20160706112450_add_deleted_at_to_spree_promotion_actions.spree.rb +7 -0
  201. data/spec/dummy/db/migrate/20160706112451_remove_uncaptured_amount_from_spree_payments.spree.rb +6 -0
  202. data/spec/dummy/db/migrate/20160706112452_create_spree_refunds.spree.rb +13 -0
  203. data/spec/dummy/db/migrate/20160706112453_create_spree_return_authorization_inventory_unit.spree.rb +13 -0
  204. data/spec/dummy/db/migrate/20160706112454_rename_return_authorization_inventory_unit_to_return_items.spree.rb +6 -0
  205. data/spec/dummy/db/migrate/20160706112455_create_order_mutex.spree.rb +12 -0
  206. data/spec/dummy/db/migrate/20160706112456_backfill_line_item_pre_tax_amount.spree.rb +11 -0
  207. data/spec/dummy/db/migrate/20160706112457_recreate_spree_return_authorizations.spree.rb +56 -0
  208. data/spec/dummy/db/migrate/20160706112458_add_amount_fields_to_return_items.spree.rb +8 -0
  209. data/spec/dummy/db/migrate/20160706112459_drop_return_authorization_amount.spree.rb +6 -0
  210. data/spec/dummy/db/migrate/20160706112460_create_spree_return_authorization_reasons.spree.rb +33 -0
  211. data/spec/dummy/db/migrate/20160706112461_create_spree_refund_reasons.spree.rb +15 -0
  212. data/spec/dummy/db/migrate/20160706112462_rename_return_authorization_reason.spree.rb +6 -0
  213. data/spec/dummy/db/migrate/20160706112463_create_spree_promotion_categories.spree.rb +12 -0
  214. data/spec/dummy/db/migrate/20160706112464_drop_received_at_on_return_items.spree.rb +10 -0
  215. data/spec/dummy/db/migrate/20160706112465_add_reception_and_acceptance_status_to_return_items.spree.rb +7 -0
  216. data/spec/dummy/db/migrate/20160706112466_create_default_refund_reason.spree.rb +10 -0
  217. data/spec/dummy/db/migrate/20160706112467_add_default_to_spree_stock_locations.spree.rb +8 -0
  218. data/spec/dummy/db/migrate/20160706112468_create_spree_customer_returns.spree.rb +10 -0
  219. data/spec/dummy/db/migrate/20160706112469_add_customer_return_id_to_return_item.spree.rb +7 -0
  220. data/spec/dummy/db/migrate/20160706112470_create_friendly_id_slugs.spree.rb +16 -0
  221. data/spec/dummy/db/migrate/20160706112471_rename_spree_refund_return_authorization_id.spree.rb +6 -0
  222. data/spec/dummy/db/migrate/20160706112472_increase_return_item_pre_tax_amount_precision.spree.rb +14 -0
  223. data/spec/dummy/db/migrate/20160706112473_copy_product_slugs_to_slug_history.spree.rb +16 -0
  224. data/spec/dummy/db/migrate/20160706112474_create_spree_reimbursements.spree.rb +22 -0
  225. data/spec/dummy/db/migrate/20160706112475_add_promotionable_to_spree_products.spree.rb +6 -0
  226. data/spec/dummy/db/migrate/20160706112476_add_exchange_inventory_unit_foreign_keys.spree.rb +8 -0
  227. data/spec/dummy/db/migrate/20160706112477_add_acceptance_status_errors_to_return_item.spree.rb +6 -0
  228. data/spec/dummy/db/migrate/20160706112478_create_spree_reimbursement_types.spree.rb +21 -0
  229. data/spec/dummy/db/migrate/20160706112479_add_default_to_shipment_cost.spree.rb +11 -0
  230. data/spec/dummy/db/migrate/20160706112480_add_default_to_spree_credit_cards.spree.rb +6 -0
  231. data/spec/dummy/db/migrate/20160706112481_make_existing_credit_cards_default.spree.rb +11 -0
  232. data/spec/dummy/db/migrate/20160706112482_add_type_to_reimbursement_type.spree.rb +10 -0
  233. data/spec/dummy/db/migrate/20160706112483_create_spree_reimbursement_credits.spree.rb +11 -0
  234. data/spec/dummy/db/migrate/20160706112484_add_meta_title_to_spree_products.spree.rb +8 -0
  235. data/spec/dummy/db/migrate/20160706112485_add_code_to_spree_tax_categories.spree.rb +6 -0
  236. data/spec/dummy/db/migrate/20160706112486_default_pre_tax_amount_should_be_zero.spree.rb +7 -0
  237. data/spec/dummy/db/migrate/20160706112487_add_code_to_spree_shipping_methods.spree.rb +6 -0
  238. data/spec/dummy/db/migrate/20160706112488_add_cancel_audit_fields_to_spree_orders.spree.rb +7 -0
  239. data/spec/dummy/db/migrate/20160706112489_add_store_id_to_orders.spree.rb +13 -0
  240. data/spec/dummy/db/migrate/20160706112490_create_spree_taxons_prototypes.spree.rb +9 -0
  241. data/spec/dummy/db/migrate/20160706112491_add_counter_cache_from_spree_variants_to_spree_stock_items.spree.rb +9 -0
  242. data/spec/dummy/db/migrate/20160706112492_fix_adjustment_order_presence.spree.rb +14 -0
  243. data/spec/dummy/db/migrate/20160706112493_update_classifications_positions.spree.rb +10 -0
  244. data/spec/dummy/db/migrate/20160706112494_add_guest_token_index_to_spree_orders.spree.rb +6 -0
  245. data/spec/dummy/db/migrate/20160706112495_remove_extra_products_slug_index.spree.rb +6 -0
  246. data/spec/dummy/db/migrate/20160706112496_update_product_slug_index.spree.rb +9 -0
  247. data/spec/dummy/db/migrate/20160706112497_add_default_column_to_price.spree.rb +6 -0
  248. data/spec/dummy/db/migrate/20160706112498_add_position_to_stock_location.spree.rb +6 -0
  249. data/spec/dummy/db/migrate/20160706112499_create_spree_promotion_codes.spree.rb +14 -0
  250. data/spec/dummy/db/migrate/20160706112500_create_adjustment_promotion_code_association.spree.rb +7 -0
  251. data/spec/dummy/db/migrate/20160706112501_remove_environment_from_payment_method.spree.rb +7 -0
  252. data/spec/dummy/db/migrate/20160706112502_add_restock_inventory_to_stock_location.spree.rb +6 -0
  253. data/spec/dummy/db/migrate/20160706112503_add_code_to_spree_promotion_categories.spree.rb +6 -0
  254. data/spec/dummy/db/migrate/20160706112504_create_order_stock_locations.spree.rb +13 -0
  255. data/spec/dummy/db/migrate/20160706112505_remove_environment_from_tracker.spree.rb +7 -0
  256. data/spec/dummy/db/migrate/20160706112506_add_fulfillable_to_stock_location.spree.rb +6 -0
  257. data/spec/dummy/db/migrate/20160706112507_add_code_to_refund_reason.spree.rb +6 -0
  258. data/spec/dummy/db/migrate/20160706112508_add_promotion_code_id_to_orders_promotions.spree.rb +8 -0
  259. data/spec/dummy/db/migrate/20160706112509_add_approver_name_to_spree_orders.spree.rb +6 -0
  260. data/spec/dummy/db/migrate/20160706112510_move_promotion_code_to_promotion_code_value.spree.rb +66 -0
  261. data/spec/dummy/db/migrate/20160706112511_downcase_promotion_codes_values.spree.rb +12 -0
  262. data/spec/dummy/db/migrate/20160706112512_add_order_ids_to_adjustments_where_missing.spree.rb +10 -0
  263. data/spec/dummy/db/migrate/20160706112513_add_per_code_usage_limit_to_promotions.spree.rb +6 -0
  264. data/spec/dummy/db/migrate/20160706112514_remove_usage_limit_from_promotion_codes.spree.rb +6 -0
  265. data/spec/dummy/db/migrate/20160706112515_add_timestamps_to_order_promotions.spree.rb +7 -0
  266. data/spec/dummy/db/migrate/20160706112516_create_spree_cartons.spree.rb +25 -0
  267. data/spec/dummy/db/migrate/20160706112517_add_timestamps_to_spree_roles_users.spree.rb +8 -0
  268. data/spec/dummy/db/migrate/20160706112518_remove_considered_risky_from_spree_orders.spree.rb +6 -0
  269. data/spec/dummy/db/migrate/20160706112519_add_index_to_inventory_units_carton_id.spree.rb +6 -0
  270. data/spec/dummy/db/migrate/20160706112520_add_imported_from_shipment_id_to_cartons.spree.rb +9 -0
  271. data/spec/dummy/db/migrate/20160706112521_copy_shipped_shipments_to_cartons.spree.rb +14 -0
  272. data/spec/dummy/db/migrate/20160706112522_create_spree_user_stock_locations.spree.rb +11 -0
  273. data/spec/dummy/db/migrate/20160706112523_add_stock_location_code.spree.rb +6 -0
  274. data/spec/dummy/db/migrate/20160706112524_create_unit_cancels.spree.rb +11 -0
  275. data/spec/dummy/db/migrate/20160706112525_add_fields_to_stock_transfer.spree.rb +13 -0
  276. data/spec/dummy/db/migrate/20160706112526_create_transfer_items.spree.rb +15 -0
  277. data/spec/dummy/db/migrate/20160706112527_drop_stock_transfer_type.spree.rb +11 -0
  278. data/spec/dummy/db/migrate/20160706112528_add_stock_transfer_finalized_at.spree.rb +9 -0
  279. data/spec/dummy/db/migrate/20160706112529_rename_stock_transfer_reference.spree.rb +6 -0
  280. data/spec/dummy/db/migrate/20160706112530_create_line_item_actions.spree.rb +11 -0
  281. data/spec/dummy/db/migrate/20160706112531_create_spree_store_credit_categories.spree.rb +11 -0
  282. data/spec/dummy/db/migrate/20160706112532_create_spree_store_credits.spree.rb +20 -0
  283. data/spec/dummy/db/migrate/20160706112533_create_spree_store_credit_events.spree.rb +18 -0
  284. data/spec/dummy/db/migrate/20160706112534_create_spree_store_credit_payment_method.spree.rb +22 -0
  285. data/spec/dummy/db/migrate/20160706112535_create_store_credit_types.spree.rb +18 -0
  286. data/spec/dummy/db/migrate/20160706112536_create_store_credit_reimbursement_type.spree.rb +6 -0
  287. data/spec/dummy/db/migrate/20160706112537_add_resellable_to_return_items.spree.rb +6 -0
  288. data/spec/dummy/db/migrate/20160706112538_add_invalidated_at_to_spree_store_credits.spree.rb +6 -0
  289. data/spec/dummy/db/migrate/20160706112539_migrate_deleted_store_credits_to_invalidated.spree.rb +14 -0
  290. data/spec/dummy/db/migrate/20160706112540_add_check_stock_on_transfer.spree.rb +6 -0
  291. data/spec/dummy/db/migrate/20160706112541_fix_adjustment_order_id.spree.rb +81 -0
  292. data/spec/dummy/db/migrate/20160706112542_delete_inventory_units_without_shipment.spree.rb +26 -0
  293. data/spec/dummy/db/migrate/20160706112543_add_deleted_at_to_stock_transfers.spree.rb +6 -0
  294. data/spec/dummy/db/migrate/20160706112544_add_deleted_at_to_transfer_items.spree.rb +6 -0
  295. data/spec/dummy/db/migrate/20160706112545_increase_scale_on_pre_tax_amounts.spree.rb +27 -0
  296. data/spec/dummy/db/migrate/20160706112546_add_preferences_to_promotion_actions.spree.rb +6 -0
  297. data/spec/dummy/db/migrate/20160706112547_add_id_to_spree_option_values_variants.spree.rb +6 -0
  298. data/spec/dummy/db/migrate/20160706112548_add_frontend_viewable_to_spree_orders.spree.rb +6 -0
  299. data/spec/dummy/db/migrate/20160706112549_remove_spree_configurations.spree.rb +16 -0
  300. data/spec/dummy/db/migrate/20160706112550_add_preference_source_to_spree_payment_methods.spree.rb +6 -0
  301. data/spec/dummy/db/migrate/20160706112551_remove_credit_card_address_id.spree.rb +8 -0
  302. data/spec/dummy/db/migrate/20160706112552_create_spree_store_credit_update_reasons.spree.rb +9 -0
  303. data/spec/dummy/db/migrate/20160706112553_create_adjustment_reason.spree.rb +19 -0
  304. data/spec/dummy/db/migrate/20160706112554_add_update_reason_to_store_credit_events.spree.rb +6 -0
  305. data/spec/dummy/db/migrate/20160706112555_add_return_authorization_reason_id_to_return_items.spree.rb +8 -0
  306. data/spec/dummy/db/migrate/20160706112556_seed_store_credit_update_reasons.spree.rb +10 -0
  307. data/spec/dummy/db/migrate/20160706112557_remove_shipping_method_id_from_spree_orders.spree.rb +10 -0
  308. data/spec/dummy/db/migrate/20160706112558_remove_counter_cache_from_spree_variants_to_spree_stock_items.spree.rb +11 -0
  309. data/spec/dummy/db/migrate/20160706112559_add_address_id_to_credit_card.spree.rb +6 -0
  310. data/spec/dummy/db/migrate/20160706112560_copy_order_bill_address_to_credit_card.spree.rb +13 -0
  311. data/spec/dummy/db/migrate/20160706112561_remove_unnecessary_indexes.spree.rb +65 -0
  312. data/spec/dummy/db/migrate/20160706112562_remove_state_lock_version_from_order.spree.rb +12 -0
  313. data/spec/dummy/db/migrate/20160706112563_add_spree_user_addresses.spree.rb +17 -0
  314. data/spec/dummy/db/migrate/20160706112564_add_id_and_timestamp_to_promotion_rule_user.spree.rb +14 -0
  315. data/spec/dummy/db/migrate/20160706112565_remove_mandatory_from_adjustments.spree.rb +6 -0
  316. data/spec/dummy/db/migrate/20160706112566_add_finalized_to_spree_adjustments.spree.rb +12 -0
  317. data/spec/dummy/db/migrate/20160706112567_add_store_payment_methods.spree.rb +11 -0
  318. data/spec/dummy/db/migrate/20160706112568_convert_habtm_to_hmt_for_shipping_methods_zones.spree.rb +18 -0
  319. data/spec/dummy/db/migrate/20160706112569_convert_habtm_to_hmt_for_products_promotion_rules.spree.rb +18 -0
  320. data/spec/dummy/db/migrate/20160706112570_drop_spree_gateways.spree.rb +21 -0
  321. data/spec/dummy/db/migrate/20160706112571_convert_habtm_to_hmt_for_taxon_prototypes.spree.rb +16 -0
  322. data/spec/dummy/db/migrate/20160706112572_create_variant_properties_and_rules.spree.rb +29 -0
  323. data/spec/dummy/db/migrate/20160706112573_add_foreign_keys_for_taxons_prototypes.spree.rb +7 -0
  324. data/spec/dummy/db/migrate/20160706112574_remove_token_permissions_table.spree.rb +17 -0
  325. data/spec/dummy/db/migrate/20160706112575_rename_identifier_to_number_for_payment.spree.rb +8 -0
  326. data/spec/dummy/db/migrate/20160706112576_add_foreign_keys_for_product_promotion_rules.spree.rb +10 -0
  327. data/spec/dummy/db/migrate/20160706112577_add_sale_to_spree_promotions.spree.rb +7 -0
  328. data/spec/dummy/db/migrate/20160706112578_convert_sale_promotions.spree.rb +29 -0
  329. data/spec/dummy/db/migrate/20160706112579_convert_habtm_to_hmt_for_properties_prototypes.spree.rb +18 -0
  330. data/spec/dummy/db/migrate/20160706112580_convert_habtm_to_hmt_for_option_type_prototypes.spree.rb +18 -0
  331. data/spec/dummy/db/migrate/20160706112581_convert_habtm_to_hmt_for_taxons_promotion_rules.spree.rb +16 -0
  332. data/spec/dummy/db/migrate/20160706112582_add_stock_item_unique_index.spree.rb +10 -0
  333. data/spec/dummy/db/migrate/20160706112583_add_api_key_to_spree_users.spree_api.rb +8 -0
  334. data/spec/dummy/db/migrate/20160706112584_resize_api_key_field.spree_api.rb +8 -0
  335. data/spec/dummy/db/migrate/20160706112585_rename_api_key_to_spree_api_key.spree_api.rb +8 -0
  336. data/spec/dummy/db/migrate/20160706112586_add_index_to_user_spree_api_key.spree_api.rb +8 -0
  337. data/spec/dummy/db/migrate/20160706112587_create_users.solidus_auth.rb +30 -0
  338. data/spec/dummy/db/migrate/20160706112588_rename_columns_for_devise.solidus_auth.rb +38 -0
  339. data/spec/dummy/db/migrate/20160706112589_convert_user_remember_field.solidus_auth.rb +12 -0
  340. data/spec/dummy/db/migrate/20160706112590_add_reset_password_sent_at_to_spree_users.solidus_auth.rb +9 -0
  341. data/spec/dummy/db/migrate/20160706112591_make_users_email_index_unique.solidus_auth.rb +10 -0
  342. data/spec/dummy/db/migrate/20160706112592_add_deleted_at_to_users.solidus_auth.rb +7 -0
  343. data/spec/dummy/db/migrate/20160706112593_add_confirmable_to_users.solidus_auth.rb +8 -0
  344. data/spec/dummy/db/migrate/20160706112594_create_delayed_jobs.rb +22 -0
  345. data/spec/dummy/db/schema.rb +1206 -0
  346. data/spec/dummy/db/seeds.rb +11 -0
  347. data/spec/dummy/db/spree_test.sqlite3 +0 -0
  348. data/spec/dummy/log/test.log +15214 -0
  349. data/spec/dummy/public/404.html +67 -0
  350. data/spec/dummy/public/422.html +67 -0
  351. data/spec/dummy/public/500.html +66 -0
  352. data/spec/dummy/public/favicon.ico +0 -0
  353. data/spec/dummy/tmp/cache/F65/550/spree%2Fauth_configuration%2Fconfirmable +1 -0
  354. data/spec/dummy/vendor/assets/javascripts/spree/backend/all.js +10 -0
  355. data/spec/dummy/vendor/assets/javascripts/spree/frontend/all.js +10 -0
  356. data/spec/dummy/vendor/assets/stylesheets/spree/backend/all.css +9 -0
  357. data/spec/dummy/vendor/assets/stylesheets/spree/frontend/all.css +9 -0
  358. data/spec/features/recurring_reports_spec.rb +23 -0
  359. data/spec/features/specifying_criteria_spec.rb +21 -0
  360. data/spec/spec_helper.rb +88 -0
  361. data/spec/unit/lib/order_reporting/delayed_job_scheduler_spec.rb +18 -0
  362. metadata +925 -0
@@ -0,0 +1,9 @@
1
+ # This migration comes from spree (originally 20131211112807)
2
+ class CreateSpreeOrdersPromotions < ActiveRecord::Migration
3
+ def change
4
+ create_table :spree_orders_promotions, :id => false do |t|
5
+ t.references :order
6
+ t.references :promotion
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,25 @@
1
+ # This migration comes from spree (originally 20131211192741)
2
+ class UniqueShippingMethodCategories < ActiveRecord::Migration
3
+ def change
4
+ klass = Spree::ShippingMethodCategory
5
+ columns = %w[shipping_category_id shipping_method_id]
6
+
7
+ say "Find duplicate #{klass} records"
8
+ duplicates = klass.
9
+ select((columns + %w[COUNT(*)]).join(',')).
10
+ group(columns.join(',')).
11
+ having('COUNT(*) > 1').
12
+ map { |row| row.attributes.slice(*columns) }
13
+
14
+ say "Delete all but the oldest duplicate #{klass} record"
15
+ duplicates.each do |conditions|
16
+ klass.where(conditions).order(:created_at).drop(1).each(&:destroy)
17
+ end
18
+
19
+ say "Add unique index to #{klass.table_name} for #{columns.inspect}"
20
+ add_index klass.table_name, columns, unique: true, name: 'unique_spree_shipping_method_categories'
21
+
22
+ say "Remove redundant simple index on #{klass.table_name}"
23
+ remove_index klass.table_name, name: 'index_spree_shipping_method_categories_on_shipping_category_id'
24
+ end
25
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from spree (originally 20131218054603)
2
+ class AddItemCountToSpreeOrders < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_orders, :item_count, :integer, :default => 0
5
+ end
6
+ end
@@ -0,0 +1,9 @@
1
+ # This migration comes from spree (originally 20140106065820)
2
+ class RemoveValueTypeFromSpreePreferences < ActiveRecord::Migration
3
+ def up
4
+ remove_column :spree_preferences, :value_type
5
+ end
6
+ def down
7
+ raise ActiveRecord::IrreversableMigration
8
+ end
9
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from spree (originally 20140106224208)
2
+ class RenamePermalinkToSlugForProducts < ActiveRecord::Migration
3
+ def change
4
+ rename_column :spree_products, :permalink, :slug
5
+ end
6
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from spree (originally 20140120160805)
2
+ class AddIndexToVariantIdAndCurrencyOnPrices < ActiveRecord::Migration
3
+ def change
4
+ add_index :spree_prices, [:variant_id, :currency]
5
+ end
6
+ end
@@ -0,0 +1,7 @@
1
+ # This migration comes from spree (originally 20140124023232)
2
+ class RenameActivatorIdInRulesAndActionsToPromotionId < ActiveRecord::Migration
3
+ def change
4
+ rename_column :spree_promotion_rules, :activator_id, :promotion_id
5
+ rename_column :spree_promotion_actions, :activator_id, :promotion_id
6
+ end
7
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from spree (originally 20140129024326)
2
+ class AddDeletedAtToSpreePrices < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_prices, :deleted_at, :datetime
5
+ end
6
+ end
@@ -0,0 +1,7 @@
1
+ # This migration comes from spree (originally 20140203161722)
2
+ class AddApproverIdAndApprovedAtToOrders < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_orders, :approver_id, :integer
5
+ add_column :spree_orders, :approved_at, :datetime
6
+ end
7
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from spree (originally 20140204115338)
2
+ class AddConfirmationDeliveredToSpreeOrders < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_orders, :confirmation_delivered, :boolean, default: false
5
+ end
6
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from spree (originally 20140204192230)
2
+ class AddAutoCaptureToPaymentMethods < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_payment_methods, :auto_capture, :boolean
5
+ end
6
+ end
@@ -0,0 +1,13 @@
1
+ # This migration comes from spree (originally 20140205120320)
2
+ class CreateSpreePaymentCaptureEvents < ActiveRecord::Migration
3
+ def change
4
+ create_table :spree_payment_capture_events do |t|
5
+ t.decimal :amount, precision: 10, scale: 2, default: 0.0
6
+ t.integer :payment_id
7
+
8
+ t.timestamps null: true
9
+ end
10
+
11
+ add_index :spree_payment_capture_events, :payment_id
12
+ end
13
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from spree (originally 20140205144710)
2
+ class AddUncapturedAmountToPayments < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_payments, :uncaptured_amount, :decimal, precision: 10, scale: 2, default: 0.0
5
+ end
6
+ end
@@ -0,0 +1,12 @@
1
+ # This migration comes from spree (originally 20140205181631)
2
+ class DefaultVariantWeightToZero < ActiveRecord::Migration
3
+ def up
4
+ Spree::Variant.unscoped.where(weight: nil).update_all("weight = 0.0")
5
+
6
+ change_column :spree_variants, :weight, :decimal, precision: 8, scale: 2, default: 0.0
7
+ end
8
+
9
+ def down
10
+ change_column :spree_variants, :weight, :decimal, precision: 8, scale: 2
11
+ end
12
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from spree (originally 20140207085910)
2
+ class AddTaxCategoryIdToShippingMethods < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_shipping_methods, :tax_category_id, :integer
5
+ end
6
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from spree (originally 20140207093021)
2
+ class AddTaxRateIdToShippingRates < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_shipping_rates, :tax_rate_id, :integer
5
+ end
6
+ end
@@ -0,0 +1,7 @@
1
+ # This migration comes from spree (originally 20140211040159)
2
+ class AddPreTaxAmountToLineItemsAndShipments < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_line_items, :pre_tax_amount, :decimal, precision: 8, scale: 2
5
+ add_column :spree_shipments, :pre_tax_amount, :decimal, precision: 8, scale: 2
6
+ end
7
+ end
@@ -0,0 +1,14 @@
1
+ # This migration comes from spree (originally 20140213184916)
2
+ class AddMoreIndexes < ActiveRecord::Migration
3
+ def change
4
+ add_index :spree_payment_methods, [:id, :type]
5
+ add_index :spree_calculators, [:id, :type]
6
+ add_index :spree_calculators, [:calculable_id, :calculable_type]
7
+ add_index :spree_payments, :payment_method_id
8
+ add_index :spree_promotion_actions, [:id, :type]
9
+ add_index :spree_promotion_actions, :promotion_id
10
+ add_index :spree_promotions, [:id, :type]
11
+ add_index :spree_option_values, :option_type_id
12
+ add_index :spree_shipments, :stock_location_id
13
+ end
14
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from spree (originally 20140219060952)
2
+ class AddConsideredRiskyToOrders < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_orders, :considered_risky, :boolean, :default => false
5
+ end
6
+ end
@@ -0,0 +1,9 @@
1
+ # This migration comes from spree (originally 20140227112348)
2
+ class AddPreferenceStoreToEverything < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_calculators, :preferences, :text
5
+ add_column :spree_gateways, :preferences, :text
6
+ add_column :spree_payment_methods, :preferences, :text
7
+ add_column :spree_promotion_rules, :preferences, :text
8
+ end
9
+ end
@@ -0,0 +1,14 @@
1
+ # This migration comes from spree (originally 20140307235515)
2
+ class AddUserIdToSpreeCreditCards < ActiveRecord::Migration
3
+ def change
4
+ unless Spree::CreditCard.column_names.include? "user_id"
5
+ add_column :spree_credit_cards, :user_id, :integer
6
+ add_index :spree_credit_cards, :user_id
7
+ end
8
+
9
+ unless Spree::CreditCard.column_names.include? "payment_method_id"
10
+ add_column :spree_credit_cards, :payment_method_id, :integer
11
+ add_index :spree_credit_cards, :payment_method_id
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,52 @@
1
+ # This migration comes from spree (originally 20140309023735)
2
+ class MigrateOldPreferences < ActiveRecord::Migration
3
+ disable_ddl_transaction!
4
+
5
+ def up
6
+ migrate_preferences(Spree::Calculator)
7
+ migrate_preferences(Spree::PromotionRule)
8
+ migrate_preferences(Spree::PaymentMethod)
9
+ end
10
+
11
+ def down
12
+ end
13
+
14
+ private
15
+ def migrate_preferences klass
16
+ klass.reset_column_information
17
+ klass.find_in_batches do |batch|
18
+ ActiveRecord::Base.transaction do
19
+ batch.each do |record|
20
+ keys = record.class.defined_preferences
21
+
22
+ # Batch load preferences for this record.
23
+ preferences = Hash[Spree::Preference.where(
24
+ key: keys.map{ |k| cache_key(record, k) }
25
+ ).pluck(:key, :value)]
26
+
27
+ # Copy preferences to the record.
28
+ keys.each do |key|
29
+ value = preferences[cache_key(record, key)]
30
+ record.preferences[key] = value unless value.nil?
31
+ end
32
+
33
+ # Persist the preferences.
34
+ record.update_column(:preferences, record.preferences)
35
+ end
36
+ end
37
+ end
38
+ end
39
+
40
+ def cache_key model, key
41
+ [
42
+ ENV["RAILS_CACHE_ID"],
43
+ class_underscore_cache[model.type],
44
+ key,
45
+ model.id
46
+ ].compact.join("/")
47
+ end
48
+
49
+ def class_underscore_cache
50
+ @class_underscore_cache ||= Hash.new{ |h,k| h[k] = k.underscore }
51
+ end
52
+ end
@@ -0,0 +1,26 @@
1
+ # This migration comes from spree (originally 20140309024355)
2
+ class CreateSpreeStores < ActiveRecord::Migration
3
+ def change
4
+ if table_exists?(:spree_stores)
5
+ rename_column :spree_stores, :domains, :url
6
+ rename_column :spree_stores, :email, :mail_from_address
7
+ add_column :spree_stores, :meta_description, :text
8
+ add_column :spree_stores, :meta_keywords, :text
9
+ add_column :spree_stores, :seo_title, :string
10
+ else
11
+ create_table :spree_stores do |t|
12
+ t.string :name
13
+ t.string :url
14
+ t.text :meta_description
15
+ t.text :meta_keywords
16
+ t.string :seo_title
17
+ t.string :mail_from_address
18
+ t.string :default_currency
19
+ t.string :code
20
+ t.boolean :default, default: false, null: false
21
+
22
+ t.timestamps null: true
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,34 @@
1
+ # This migration comes from spree (originally 20140309033438)
2
+ class CreateStoreFromPreferences < ActiveRecord::Migration
3
+ class Store < ActiveRecord::Base
4
+ self.table_name = 'spree_stores'
5
+ end
6
+ def change
7
+ preference_store = Spree::Preferences::Store.instance
8
+ if store = Store.where(default: true).first
9
+ store.meta_description = preference_store.get('spree/app_configuration/default_meta_description') {}
10
+ store.meta_keywords = preference_store.get('spree/app_configuration/default_meta_keywords') {}
11
+ store.seo_title = preference_store.get('spree/app_configuration/default_seo_title') {}
12
+ store.save!
13
+ else
14
+ # we set defaults for the things we now require
15
+ Store.new do |s|
16
+ s.name = preference_store.get 'spree/app_configuration/site_name' do
17
+ 'Sample Store'
18
+ end
19
+ s.url = preference_store.get 'spree/app_configuration/site_url' do
20
+ 'example.com'
21
+ end
22
+ s.mail_from_address = preference_store.get 'spree/app_configuration/mails_from' do
23
+ 'store@example.com'
24
+ end
25
+
26
+ s.meta_description = preference_store.get('spree/app_configuration/default_meta_description') {}
27
+ s.meta_keywords = preference_store.get('spree/app_configuration/default_meta_keywords') {}
28
+ s.seo_title = preference_store.get('spree/app_configuration/default_seo_title') {}
29
+ s.default_currency = preference_store.get('spree/app_configuration/currency') {}
30
+ s.code = 'spree'
31
+ end.save!
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,7 @@
1
+ # This migration comes from spree (originally 20140315053743)
2
+ class AddTimestampsToSpreeAssets < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_assets, :created_at, :datetime
5
+ add_column :spree_assets, :updated_at, :datetime
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ # This migration comes from spree (originally 20140318191500)
2
+ class CreateSpreeTaxonsPromotionRules < ActiveRecord::Migration
3
+ def change
4
+ create_table :spree_taxons_promotion_rules do |t|
5
+ t.references :taxon, index: true
6
+ t.references :promotion_rule, index: true
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ # This migration comes from spree (originally 20140331100557)
2
+ class AddAdditionalStoreFields < ActiveRecord::Migration
3
+ def change
4
+ add_column :spree_stores, :code, :string unless column_exists?(:spree_stores, :code)
5
+ add_column :spree_stores, :default, :boolean, default: false, null: false unless column_exists?(:spree_stores, :default)
6
+ add_index :spree_stores, :code
7
+ add_index :spree_stores, :default
8
+ end
9
+ end
@@ -0,0 +1,20 @@
1
+ # This migration comes from spree (originally 20140410141842)
2
+ class AddManyMissingIndexes < ActiveRecord::Migration
3
+ include Spree::MigrationHelpers
4
+
5
+ def change
6
+ safe_add_index :spree_adjustments, [:adjustable_id, :adjustable_type]
7
+ safe_add_index :spree_adjustments, :eligible
8
+ safe_add_index :spree_adjustments, :order_id
9
+ safe_add_index :spree_promotions, :code
10
+ safe_add_index :spree_promotions, :expires_at
11
+ safe_add_index :spree_states, :country_id
12
+ safe_add_index :spree_stock_items, :deleted_at
13
+ safe_add_index :spree_option_types, :position
14
+ safe_add_index :spree_option_values, :position
15
+ safe_add_index :spree_product_option_types, :option_type_id
16
+ safe_add_index :spree_product_option_types, :product_id
17
+ safe_add_index :spree_products_taxons, :position
18
+ safe_add_index :spree_promotions, :starts_at
19
+ end
20
+ end
@@ -0,0 +1,66 @@
1
+ # This migration comes from spree (originally 20140410150358)
2
+ class CorrectSomePolymorphicIndexAndAddMoreMissing < ActiveRecord::Migration
3
+ include Spree::MigrationHelpers
4
+
5
+ def change
6
+ safe_add_index :spree_addresses, :country_id
7
+ safe_add_index :spree_addresses, :state_id
8
+
9
+ safe_remove_index :spree_adjustments, [:source_type, :source_id]
10
+ safe_add_index :spree_adjustments, [:source_id, :source_type]
11
+
12
+ safe_add_index :spree_inventory_units, :return_authorization_id
13
+
14
+ safe_add_index :spree_log_entries, [:source_id, :source_type]
15
+
16
+ safe_add_index :spree_orders, :approver_id
17
+ safe_add_index :spree_orders, :created_by_id
18
+ safe_add_index :spree_orders, :ship_address_id
19
+ safe_add_index :spree_orders, :bill_address_id
20
+ safe_add_index :spree_orders, :considered_risky
21
+
22
+ safe_add_index :spree_orders_promotions, [:order_id, :promotion_id]
23
+
24
+ safe_add_index :spree_payments, [:source_id, :source_type]
25
+
26
+ safe_add_index :spree_product_option_types, :position
27
+
28
+ safe_add_index :spree_product_properties, :position
29
+ safe_add_index :spree_product_properties, :property_id
30
+
31
+ safe_add_index :spree_promotion_action_line_items, :promotion_action_id
32
+ safe_add_index :spree_promotion_action_line_items, :variant_id
33
+
34
+ safe_add_index :spree_promotion_rules, :promotion_id
35
+
36
+ safe_add_index :spree_promotions, :advertise
37
+
38
+ safe_add_index :spree_return_authorizations, :number
39
+ safe_add_index :spree_return_authorizations, :order_id
40
+ safe_add_index :spree_return_authorizations, :stock_location_id
41
+
42
+ safe_add_index :spree_shipments, :address_id
43
+
44
+ safe_add_index :spree_shipping_methods, :tax_category_id
45
+
46
+ safe_add_index :spree_state_changes, [:stateful_id, :stateful_type]
47
+ safe_add_index :spree_state_changes, :user_id
48
+
49
+ safe_add_index :spree_stock_locations, :country_id
50
+ safe_add_index :spree_stock_locations, :state_id
51
+
52
+ safe_add_index :spree_tax_rates, :deleted_at
53
+ safe_add_index :spree_tax_rates, :tax_category_id
54
+ safe_add_index :spree_tax_rates, :zone_id
55
+
56
+ safe_add_index :spree_taxonomies, :position
57
+
58
+ safe_add_index :spree_taxons, :position
59
+
60
+ safe_add_index :spree_variants, :position
61
+ safe_add_index :spree_variants, :track_inventory
62
+
63
+ safe_add_index :spree_zone_members, :zone_id
64
+ safe_add_index :spree_zone_members, [:zoneable_id, :zoneable_type]
65
+ end
66
+ end