[IMP] stock: create warehouse on existing companies
If companies are created before the installation of module stock, the warehouses of those companes won't be created when stock module is installed. So we've created a post init hook to create the warehouses for the existing companies. TASK-ID: 58645
This commit is contained in:
@@ -17,3 +17,20 @@ def pre_init_hook(cr):
|
||||
('model', 'like', '%stock%'),
|
||||
('module', '=', 'stock')
|
||||
]).unlink()
|
||||
|
||||
def _create_warehouse(cr, registry):
|
||||
""" This hook is used to add a warehouse on existing companies
|
||||
when module stock is installed.
|
||||
"""
|
||||
env = api.Environment(cr, SUPERUSER_ID, {})
|
||||
company_ids = env['res.company'].search([])
|
||||
company_with_warehouse = env['stock.warehouse'].search([]).mapped('company_id')
|
||||
company_without_warehouse = company_ids - company_with_warehouse
|
||||
for company in company_without_warehouse:
|
||||
company.create_transit_location()
|
||||
env['stock.warehouse'].create({
|
||||
'name': company.name,
|
||||
'code': company.name[:5],
|
||||
'company_id': company.id,
|
||||
'partner_id': company.partner_id.id
|
||||
})
|
||||
|
||||
@@ -78,4 +78,5 @@
|
||||
'application': True,
|
||||
'auto_install': False,
|
||||
'pre_init_hook': 'pre_init_hook',
|
||||
'post_init_hook': '_create_warehouse',
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user