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 @@
-
+
{'invisible': [('type','!=','invoice')]}
-
+
-
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 @@
-