diff --git a/intrastat_product/__init__.py b/intrastat_product/__init__.py index 21ff7c2..cde864b 100644 --- a/intrastat_product/__init__.py +++ b/intrastat_product/__init__.py @@ -1,3 +1,3 @@ -# -*- encoding: utf-8 -*- +# -*- coding: utf-8 -*- from . import models diff --git a/intrastat_product/__openerp__.py b/intrastat_product/__openerp__.py index b9576da..33c2510 100644 --- a/intrastat_product/__openerp__.py +++ b/intrastat_product/__openerp__.py @@ -1,4 +1,4 @@ -# -*- encoding: utf-8 -*- +# -*- coding: utf-8 -*- ############################################################################## # # Intrastat Product module for Odoo @@ -32,7 +32,8 @@ 'depends': [ 'intrastat_base', 'product_harmonized_system', - 'stock', + 'sale_stock', + 'purchase', ], 'conflicts': ['report_intrastat'], 'data': [ diff --git a/intrastat_product/models/intrastat_product_declaration.py b/intrastat_product/models/intrastat_product_declaration.py index aa1790e..1530fea 100644 --- a/intrastat_product/models/intrastat_product_declaration.py +++ b/intrastat_product/models/intrastat_product_declaration.py @@ -368,8 +368,7 @@ class IntrastatProductDeclaration(models.Model): [('invoice_lines', 'in', inv_line.id)]) if po_lines: po = po_lines.order_id - region = self.env['stock.warehouse'].get_region_from_location( - po.location_id) + region = po.location_id.get_intrastat_region() elif inv_line.invoice_id.type in ('out_invoice', 'out_refund'): so_lines = self.env['sale.order.line'].search( [('invoice_lines', 'in', inv_line.id)]) diff --git a/intrastat_product/models/intrastat_transaction.py b/intrastat_product/models/intrastat_transaction.py index 31c86f8..bf04d32 100644 --- a/intrastat_product/models/intrastat_transaction.py +++ b/intrastat_product/models/intrastat_transaction.py @@ -1,4 +1,4 @@ -# -*- encoding: utf-8 -*- +# -*- coding: utf-8 -*- ############################################################################## # # Intrastat Product module for Odoo diff --git a/intrastat_product/models/res_company.py b/intrastat_product/models/res_company.py index 2bc5b04..4ac4a79 100644 --- a/intrastat_product/models/res_company.py +++ b/intrastat_product/models/res_company.py @@ -1,4 +1,4 @@ -# -*- encoding: utf-8 -*- +# -*- coding: utf-8 -*- ############################################################################## # # Intrastat Product module for Odoo diff --git a/intrastat_product/models/stock_warehouse.py b/intrastat_product/models/stock_warehouse.py index d766b61..348b7c8 100644 --- a/intrastat_product/models/stock_warehouse.py +++ b/intrastat_product/models/stock_warehouse.py @@ -1,4 +1,4 @@ -# -*- encoding: utf-8 -*- +# -*- coding: utf-8 -*- ############################################################################## # # Odoo, Open Source Management Solution @@ -20,7 +20,7 @@ # ############################################################################## -from openerp import models, fields +from openerp import models, fields, api class StockWarehouse(models.Model): @@ -30,7 +30,13 @@ class StockWarehouse(models.Model): 'intrastat.region', string='Intrastat region') - def get_region_from_location(self, location): + +class StockLocation(models.Model): + _inherit = 'stock.location' + + @api.multi + def get_intrastat_region(self): + self.ensure_one() locations = location.search( [('parent_left', '<=', location.parent_left), ('parent_right', '>=', location.parent_right)])