[ADD] domain to create only not linked orders

This commit is contained in:
Stepan Savelyev 2019-12-19 10:55:25 +05:00
parent f5961820cc
commit da869db151
3 changed files with 18 additions and 11 deletions

View File

@ -8,7 +8,12 @@ class ContractOrderAnnex(models.Model):
_description = "Contract Order Annex"
name = fields.Char(string="Name", help="The Number of Annex")
order_id = fields.Many2one("sale.order", string="Order", required=True)
order_id = fields.Many2one(
"sale.order",
string="Order",
domain=[("contract_annex_id", "=", False)],
required=True,
)
contract_id = fields.Many2one(
"res.partner.contract", string="Contract", readonly=True
)
@ -25,6 +30,7 @@ class ContractOrderAnnex(models.Model):
record.name = "{contract}--{annex}".format(
contract=contract_number, annex=annex_number
)
record.order_id.contract_annex_id = record.id
return record

View File

@ -2,25 +2,25 @@ from odoo import api, fields, models
class SaleOrder(models.Model):
_inherit = 'sale.order'
_inherit = "sale.order"
delivery_time = fields.Integer(
string='Delivery Time',
default=45,
delivery_time = fields.Integer(string="Delivery Time", default=45,)
contract_annex_id = fields.Many2one(
"res.partner.contract.annex", string="Contract Annex", readonly=True,
)
# Extend default field
payment_term_id = fields.Many2one(
'account.payment.term',
domain=lambda self: [('id', 'in', self._get_payment_terms())]
"account.payment.term",
domain=lambda self: [("id", "in", self._get_payment_terms())],
)
@api.multi
def _get_payment_terms(self):
ref = self.env.ref
terms = (
ref('client_contracts.payment_term_prepaid').id,
ref('client_contracts.payment_term_postpayment').id,
ref('client_contracts.payment_term_partial_2').id,
ref('client_contracts.payment_term_partial_3').id,
ref("client_contracts.payment_term_prepaid").id,
ref("client_contracts.payment_term_postpayment").id,
ref("client_contracts.payment_term_partial_2").id,
ref("client_contracts.payment_term_partial_3").id,
)
return terms

View File

@ -10,6 +10,7 @@
<xpath expr="//field[@name='payment_term_id']" position="after">
<field name="delivery_time"/>
<field name="contract_annex_id"/>
</xpath>
</field>