"""Fill pickup_day and pickup_date for existing group orders.""" from datetime import datetime, timedelta def migrate(cr, version): """ Fill pickup_day and pickup_date for existing group orders. This ensures that existing group orders show delivery information. """ from odoo import api, SUPERUSER_ID env = api.Environment(cr, SUPERUSER_ID, {}) # Get all group orders that don't have pickup_day set group_orders = env['group.order'].search([('pickup_day', '=', False)]) if not group_orders: return # Set default values: Friday (4) and one week from now today = datetime.now().date() # Find Friday of next week (day 4) days_until_friday = (4 - today.weekday()) % 7 # 4 = Friday if days_until_friday == 0: days_until_friday = 7 friday = today + timedelta(days=days_until_friday) for order in group_orders: order.write({ 'pickup_day': 4, # Friday 'pickup_date': friday, 'delivery_notice': 'Home delivery available.', })