diff --git a/contract_sale_generation/__manifest__.py b/contract_sale_generation/__manifest__.py index 053a25239..9a492577c 100644 --- a/contract_sale_generation/__manifest__.py +++ b/contract_sale_generation/__manifest__.py @@ -10,7 +10,7 @@ "license": "AGPL-3", "author": "PESOL, " "Odoo Community Association (OCA)", "website": "https://github.com/OCA/contract", - "depends": ["contract", "sale"], + "depends": ["contract_sale"], "data": [ "data/contract_cron.xml", "views/contract.xml", diff --git a/contract_sale_generation/models/contract.py b/contract_sale_generation/models/contract.py index d8d966e5d..ed048091c 100644 --- a/contract_sale_generation/models/contract.py +++ b/contract_sale_generation/models/contract.py @@ -16,7 +16,6 @@ class ContractContract(models.Model): sale_count = fields.Integer(compute="_compute_sale_count") - @api.multi def _prepare_sale(self, date_ref): self.ensure_one() sale = self.env["sale.order"].new( @@ -36,7 +35,6 @@ class ContractContract(models.Model): sale.onchange_partner_id() return sale._convert_to_write(sale._cache) - @api.multi def _get_related_sales(self): self.ensure_one() sales = ( @@ -46,12 +44,10 @@ class ContractContract(models.Model): ) return sales - @api.multi def _compute_sale_count(self): for rec in self: rec.sale_count = len(rec._get_related_sales()) - @api.multi def action_show_sales(self): self.ensure_one() tree_view = self.env.ref("sale.view_order_tree", raise_if_not_found=False) @@ -68,7 +64,6 @@ class ContractContract(models.Model): action["views"] = [(tree_view.id, "tree"), (form_view.id, "form")] return action - @api.multi def recurring_create_sale(self): """ This method triggers the creation of the next sale order of the @@ -87,7 +82,6 @@ class ContractContract(models.Model): ) return sales - @api.multi def _prepare_recurring_sales_values(self, date_ref=False): """ This method builds the list of sales values to create, based on @@ -118,7 +112,6 @@ class ContractContract(models.Model): contract_lines._update_recurring_next_date() return sales_values - @api.multi def _recurring_create_sale(self, date_ref=False): sales_values = self._prepare_recurring_sales_values(date_ref) so_rec = self.env["sale.order"].create(sales_values) @@ -148,7 +141,7 @@ class ContractContract(models.Model): date_ref = fields.Date.context_today(self) domain = self._get_contracts_to_invoice_domain(date_ref) domain.extend([("type", "=", "invoice")]) - invoices = self.env["account.invoice"] + invoices = self.env["account.move"] # Invoice by companies, so assignation emails get correct context companies_to_invoice = self.read_group(domain, ["company_id"], ["company_id"]) for row in companies_to_invoice: diff --git a/contract_sale_generation/models/contract_line.py b/contract_sale_generation/models/contract_line.py index bc9df45af..98b3cb352 100644 --- a/contract_sale_generation/models/contract_line.py +++ b/contract_sale_generation/models/contract_line.py @@ -1,13 +1,12 @@ # Copyright (C) 2020 Open Source Integrators # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -from odoo import api, models +from odoo import models class ContractLine(models.Model): _inherit = "contract.line" - @api.multi def _prepare_sale_line(self, order_id=False, sale_values=False): self.ensure_one() dates = self._get_period_to_invoice( @@ -16,7 +15,7 @@ class ContractLine(models.Model): sale_line_vals = { "product_id": self.product_id.id, "product_uom_qty": self._get_quantity_to_invoice(*dates), - "uom_id": self.uom_id.id, + "product_uom": self.uom_id.id, "discount": self.discount, "contract_line_id": self.id, "display_type": self.display_type, @@ -25,17 +24,13 @@ class ContractLine(models.Model): sale_line_vals["order_id"] = order_id.id order_line = ( self.env["sale.order.line"] - .with_context( - force_company=self.contract_id.company_id.id, - ) + .with_company(self.contract_id.company_id.id) .new(sale_line_vals) ) if sale_values and not order_id: sale = ( self.env["sale.order"] - .with_context( - force_company=self.contract_id.company_id.id, - ) + .with_company(self.contract_id.company_id.id) .new(sale_values) ) order_line.order_id = sale diff --git a/contract_sale_generation/views/contract.xml b/contract_sale_generation/views/contract.xml index a22babd61..7b4454162 100644 --- a/contract_sale_generation/views/contract.xml +++ b/contract_sale_generation/views/contract.xml @@ -1,5 +1,4 @@ - contract.contract.form.recurring.sale.form contract.contract @@ -7,18 +6,18 @@ - @@ -28,34 +27,30 @@ - diff --git a/contract_sale_generation/views/contract_template.xml b/contract_sale_generation/views/contract_template.xml index 129da21c7..cf821dcde 100644 --- a/contract_sale_generation/views/contract_template.xml +++ b/contract_sale_generation/views/contract_template.xml @@ -1,5 +1,4 @@ - contract.template form view (in contract) contract.template @@ -10,5 +9,4 @@ -