Commit Graph

417 Commits

Author SHA1 Message Date
Maikel
74aea76c4c Merge pull request #3609 from luisramos0/2-0-delete-acct-invoices-last-bit
[Spree Upgrade] Finish up deleting account invoices
2019-03-28 13:42:01 +11:00
luisramos0
c1d14686a6 Merge branch 'master' into 2-0-stable-Mar22 2019-03-22 10:55:17 +00:00
Luis Ramos
8d2d5a8708 Merge pull request #3579 from luisramos0/sanitize_data
Add sanitize and truncate data tasks
2019-03-22 10:29:57 +00:00
luisramos0
804375d1aa Delete obsolete pending delayed jobs related to the deleted account invoices feature 2019-03-20 11:24:57 +00:00
luisramos0
78d7222364 Drop account invoices and billable periods tables, the feature has been deleted 2019-03-20 11:19:48 +00:00
luisramos0
8965dedfd7 Add sanitize and truncate tasks to support loading live data into other environments safely 2019-03-13 16:08:07 +00:00
luisramos0
0bfeabbb3e Add migration to create default shipping category and set it in shipping methods and products that do not have a shipping category yet
This is a modified version of this spree migration: af16cf1d74
2019-03-13 15:36:21 +00:00
luisramos0
f914a6d869 Add migration to set default stock location on all shipments without stock location
This is a modified version of this spree migration: https://github.com/spree/spree/commit/219e09b
2019-03-13 14:38:56 +00:00
luisramos0
86f9b3d663 Delete product_distributions: drop table and remove models, controllers and BO edit page 2019-03-13 11:47:50 +00:00
Luis Ramos
72e9c1d002 Merge pull request #3321 from luisramos0/2-0-delete-acct-invoices
[Spree Upgrade] Delete Accounts and Billing dead feature code until we decide we want to start using it again
2019-03-04 15:54:09 +00:00
luisramos0
4411e1ed43 Fix create default stock migration by adding a version of the code that works with the DB at that point in time, i.e., stock_locations without active column 2019-02-26 16:05:33 +00:00
luisramos0
7b05eebc5b Fix rubocop issue in db migration 2019-02-26 14:54:24 +00:00
luisramos0
0501db1782 Remove changes related to enterprise trials as they dont make sense without business models and account invoices 2019-02-25 14:37:16 +00:00
luisramos0
a870299ced Delete preferences and adjustments related to account invoices 2019-02-25 14:37:16 +00:00
luisramos0
3595abc08a Fix seeds script for cases where default stock location already exists in the DB 2019-01-30 15:08:37 +00:00
Pau Perez
817bf4caa1 Explain why a index forbids more than a location 2019-01-11 16:39:06 +01:00
Pau Perez
730d5ff7d6 Include the default location in seed data
This ensures that new OFN instances will have the proper stock location
set up.
2019-01-11 15:52:25 +01:00
luisramos0
e28f9a7c84 Merge branch 'master' into 2-0-stable-jan-8th 2019-01-08 14:29:50 +00:00
albarnaz
5d515712ed Fix for instagram links (#2849)
* Add new attribute instagram_placeholder to local yml

* Add placeholder to instagram link input

* Add migration to fix wrong instagram links

* Add new attribute facebook_placeholder to local yml

* Add placeholder to facebook link input

* Add new attribute linkedin_placeholder to local yml

* Add placeholder to linkedin link input

* Change each for find_each in migration

* Add new attribute instagram_placeholder to local yml

* Add migration to fix wrong instagram links

* Add new attribute linkedin_placeholder to local yml

* Add placeholder to linkedin link input
2018-12-21 14:42:28 +11:00
Kristina Lim
77a6562762 Make DB migration generate summary by distributor 2018-12-14 13:02:43 +08:00
Kristina Lim
a6664d0ac6 Move report generated by migration to subdirectory
This is in preparation of an upcoming change to split the main CSV file
by distributor.
2018-12-14 13:00:42 +08:00
Kristina Lim
6458127892 Add undo logic for DB migration script 2018-12-14 10:09:09 +08:00
Kristina Lim
5a98acd101 Log changes from DB migration to CSV file 2018-12-14 10:09:09 +08:00
Kristina Lim
842a11b564 Refactor DB migration script 2018-12-14 10:09:08 +08:00
Kristina Lim
aa92dd8771 Declare VariantOverride in migration for safe use 2018-12-13 23:29:05 +08:00
Kristina Lim
9e3332ba2a Rename DB migration file 2018-12-13 23:25:48 +08:00
Kristina Lim
4c0c0bbfd0 Simplify stock configuration in existing variant overrides 2018-12-07 14:40:15 +08:00
luisramos0
3776b891ce Merge branch 'master' into 2-0-stable-dec-3rd 2018-12-03 15:30:16 +00:00
Maikel Linke
285346fcda Update schema for latest migration
I feel embarrased that this is the second follow up of my last
migration: https://github.com/openfoodfoundation/openfoodnetwork/pull/3126

The last migration didn't change any database structure, but the schema
still needs the latest migration version. Otherwise it will display
pending migrations when setting up the database.

This commit allows to run `bundle exec rake db:reset` in development
without the following message:

  Run `rake db:migrate` to update your database then try again.
  You have 1 pending migrations:
    20181123012635 AssociateCustomersToUsers

The next pull request with a migration would have solved this problem as
well.
2018-11-29 10:29:56 +11:00
Maikel Linke
9efa45663c Encode records with special chars as well
Using Marshal.dump on the French production database raised an error:

    Encoding::UndefinedConversionError: "\xC3" from ASCII-8BIT to UTF-8

Replacing Marshal with YAML solves the problem. It is also more reliable
and human readable.

This code was run against the French, Australian and UK production
data successfully.
2018-11-27 14:34:03 +11:00
Maikel Linke
f4d5727fb4 Associate customers with their user records
When we introduced the Customer model, we didn't associate any existing
customers with users that have the same email address.
Later we decided to create that association when users sign up. But we didn't
update all the existing customers. We do that now for data consistency and to
solve several bugs.
2018-11-23 15:38:35 +11:00
luisramos0
fcdb5cd7af Merge branch 'master' into 2-0-stable-nov-8th 2018-11-08 11:18:54 +00:00
luisramos0
b7ffde795a Add migration to update calculator class name of weight calculators 2018-11-07 09:54:53 +00:00
luisramos0
079d4e0bf5 Fix variant_overrides permissions for overrides that belong to the supplier herself 2018-10-31 11:26:15 +00:00
Pedro Costa
91e4f99c19 Fix new preferences migration
Why:

* In a clean environment, running the new preferences migration fails,
  due to a missing file from Spree core being manually required. This
  file has now been missing since ab707cf.

This change addresses the issue by:

* Copying the missing file from Spree Core 1.3.6.beta into the migration.
  This fixes the issue for now, but also means that a migration merge
  and/or rewrite might be in order for the future.
2018-10-29 14:53:01 +00:00
Maikel Linke
dc5302ca08 Speed up database queries and make them scale
This commit makes use of three ActiveRecord features:

1. Using `select` instead of `all.map` enables ActiveRecord to nest one
select into the other, resulting in one more efficient query instead of
two.

2. Using `find_each` saves memory by loading records in batches.
https://api.rubyonrails.org/classes/ActiveRecord/Batches.html#method-i-find_each

3. Using `pluck` creates only an array, avoiding loading all the other
columns of the records into objects.

Running this on the current Canadian database, fixes the following
variant overrides:

```
[]
[]
[]
[]
[]
[]
[925, 924, 966, 965]
[]
[]
[]
[]
[462,
 863,
 464,
 822,
 949,
 947,
 944,
 939,
 942,
 946,
 945,
 943,
 438,
 937,
 938,
 941,
 940,
 467,
 952,
 875,
 453,
 953,
 454,
 951,
 487,
 460,
 457,
 528,
 527,
 486,
 459,
 458,
 461,
 529,
 530,
 950,
 642,
 384,
 380,
 643,
 385,
 381,
 644,
 386,
 382,
 960,
 959,
 379,
 640,
 377,
 375,
 532,
 639,
 376,
 374,
 646,
 390,
 389,
 637,
 406,
 408,
 647,
 391,
 393,
 633,
 396,
 400,
 398,
 645,
 388,
 387,
 648,
 394,
 392,
 536,
 632,
 399,
 397,
 395,
 634,
 403,
 401,
 635,
 404,
 402,
 636,
 407,
 405,
 535,
 534,
 638,
 410,
 409,
 948,
 533,
 537,
 531,
 877,
 880,
 894,
 893,
 672,
 671,
 673,
 674,
 703,
 714,
 715,
 716,
 717,
 862,
 864,
 879,
 876,
 865,
 881,
 878,
 463,
 954,
 866,
 823,
 957,
 958,
 955,
 956,
 899,
 897]
[]
[969]
```
2018-10-25 11:33:14 +11:00
luisramos0
d375bb8c55 Migration: Revoke variant overrides without permissions 2018-10-20 12:32:55 +01:00
luisramos0
87cd73ddba Merge branch 'master' into 2-0-stable-oct 2018-10-15 17:09:26 +01:00
Pau Perez
60d05a941c Fix variants with 'weight' and missing unit_value
This adds a data migration to fix those cases. It defaults to showing
1 unit of the specified weight. That is, if the user chose Kg, it'll
display 1 as unit.

Note that migration logs the process in a log/migrate.log file separate
from the regular Rails log/production.log file.

When you run the migration you'll see something like:

  Fixing variants missing unit_value...

  Processing variant 12...
  Succesfully fixed variant 12

  Done!

This helps auditing the changes applied and debug any possible failure
scenarios. You can delete it once all is ok.
2018-10-11 15:52:40 +02:00
Maikel Linke
af1ac333df Create MailMethod before User when seeding 2018-09-27 13:33:09 +10:00
Pau Pérez Fabregat
99ba9d7d1b Merge branch '2-0-stable' into unit-test-variant-stock 2018-09-19 15:41:21 +02:00
luisramos0
524f9af148 Drop unused db column line_items.shipping_method_name 2018-09-19 11:38:19 +01:00
luisramos0
c00e6a5dc7 Added DB uniqueness constraint on order_id to shipments
By forbidding more than a row per order in the spree_shipments table we ensure all orders have no more than one shipment associated
2018-09-11 00:24:50 +01:00
luisramos0
44d81622ac CreateMailMethod is now MailConfiguration and it uses Spree Config instead of MailMethod. The call from db/seeds was updated accordingly 2018-09-10 10:21:23 +01:00
Pau Perez
cd53ec1a4f Replace exception with DB uniqueness constraint
By forbidding more than a row per variant in the spree_stock_items we
can ensure all variants have a single stock_item associated.
2018-09-06 13:21:22 +02:00
luisramos0
89d51d75ae Merge branch 'master' into 2-0-stable-sept 2018-09-04 17:43:20 +01:00
Maikel Linke
b158c92998 Configure mail TLS or SSL connection when seeding
This allows to seed the secure connection type of the default mail
method.
2018-08-24 14:03:21 +10:00
luisramos0
91e57cb893 Removed Cart table, its dependency on spree orders table and removed some more dead code related to this 2018-08-15 23:29:28 +01:00
Pau Perez
43bf7293bf Merge branch 'master' into 2-0-stable
* master: (125 commits)
  Fix syntax error in GETTING_STARTED.md
  Fix syntax error in README.md
  Fix link syntax errors in REAME.md and GETTING_STARTED.md
  Style recently merged code
  Update gem i18n-js to pick up locale changes
  Fix embedded shopfront menu responsiveness
  Add communications links to README
  Fix script/setup by making it less clever
  Change import and reset logic to work with first page
  Move options to first page
  Fix wrong sort predicates in customer index
  Reset reverse when clicking another column to sort
  Move logic for toggling by column into SortOptions
  Generalize sorting through SortOptions service
  Remove unused sorting preferences in ColumnsCtrl
  Fix frontend sorting in "Bulk Order Management"
  Fix frontend sorting in "Customers" index
  Change sorting to be done in ascending order first
  Wrap rows in customer index with TBODY tag
  Update .rubocop_todo.yml
  ...
2018-07-27 10:21:47 +02:00
Matt-Yorkley
23cbcda0c3 Allow preferred_mails_from and preferred_mail_bcc to be set from configs 2018-07-18 15:43:02 +01:00