diff --git a/sf_warehouse/migrations/1.2/post-migrate.py b/sf_warehouse/migrations/1.2/post-migrate.py index f4a0d9a4..b681f796 100644 --- a/sf_warehouse/migrations/1.2/post-migrate.py +++ b/sf_warehouse/migrations/1.2/post-migrate.py @@ -1,5 +1,8 @@ +import logging from odoo import api, SUPERUSER_ID +_logger = logging.getLogger(__name__) + def migrate(cr, version): env = api.Environment(cr, SUPERUSER_ID, {}) sf_shelf_model = env["sf.shelf"] @@ -9,7 +12,10 @@ def migrate(cr, version): shelf_barcode = shelf.barcode or "" if not shelf_barcode: continue - locations = sf_shelf_location_model.search([("shelf_id", "=", shelf.id)], order="id asc") + # locations = sf_shelf_location_model.search([("shelf_id", "=", shelf.id)], order="id asc") + locations = shelf.location_ids.sorted('id') for index, location in enumerate(locations, start=1): new_barcode = f"{shelf_barcode}-{index:03d}" - location.barcode = new_barcode \ No newline at end of file + location.barcode = new_barcode + cr.commit() + _logger.info('货架【%s】的%d个货位被更新' % (shelf.name, len(locations))) \ No newline at end of file