mirror of
https://github.com/OCA/contract.git
synced 2025-02-13 17:57:24 +02:00
Re-introduce module agreement_account
Update agreement and agreement_sale to restore the behavior of v10
This commit is contained in:
committed by
newtratip
parent
ea167e6376
commit
6b16543a84
@@ -10,11 +10,11 @@ class Agreement(models.Model):
|
|||||||
_description = 'Agreement'
|
_description = 'Agreement'
|
||||||
_inherit = ["mail.thread", "mail.activity.mixin"]
|
_inherit = ["mail.thread", "mail.activity.mixin"]
|
||||||
|
|
||||||
code = fields.Char(required=True)
|
code = fields.Char(required=True, track_visibility='onchange')
|
||||||
name = fields.Char(required=True)
|
name = fields.Char(required=True, track_visibility='onchange')
|
||||||
partner_id = fields.Many2one(
|
partner_id = fields.Many2one(
|
||||||
'res.partner', string='Partner', ondelete='restrict',
|
'res.partner', string='Partner', ondelete='restrict',
|
||||||
domain=[('parent_id', '=', False)])
|
domain=[('parent_id', '=', False)], track_visibility='onchange')
|
||||||
company_id = fields.Many2one(
|
company_id = fields.Many2one(
|
||||||
'res.company', string='Company',
|
'res.company', string='Company',
|
||||||
default=lambda self: self.env['res.company']._company_default_get())
|
default=lambda self: self.env['res.company']._company_default_get())
|
||||||
@@ -30,10 +30,25 @@ class Agreement(models.Model):
|
|||||||
string="Agreement Type",
|
string="Agreement Type",
|
||||||
help="Select the type of agreement",
|
help="Select the type of agreement",
|
||||||
)
|
)
|
||||||
|
domain = fields.Selection(
|
||||||
|
'_domain_selection', string='Domain', default='sale',
|
||||||
|
track_visibility='onchange')
|
||||||
active = fields.Boolean(default=True)
|
active = fields.Boolean(default=True)
|
||||||
signature_date = fields.Date()
|
signature_date = fields.Date(track_visibility='onchange')
|
||||||
start_date = fields.Date()
|
start_date = fields.Date(track_visibility='onchange')
|
||||||
end_date = fields.Date()
|
end_date = fields.Date(track_visibility='onchange')
|
||||||
|
|
||||||
|
@api.model
|
||||||
|
def _domain_selection(self):
|
||||||
|
return [
|
||||||
|
('sale', _('Sale')),
|
||||||
|
('purchase', _('Purchase')),
|
||||||
|
]
|
||||||
|
|
||||||
|
@api.onchange('agreement_type_id')
|
||||||
|
def agreement_type_change(self):
|
||||||
|
if self.agreement_type_id and self.agreement_type_id.domain:
|
||||||
|
self.domain = self.agreement_type_id.domain
|
||||||
|
|
||||||
def name_get(self):
|
def name_get(self):
|
||||||
res = []
|
res = []
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Copyright (C) 2018 - TODAY, Pavlov Media
|
# Copyright (C) 2018 - TODAY, Pavlov Media
|
||||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
from odoo import fields, models
|
from odoo import api, fields, models
|
||||||
|
|
||||||
|
|
||||||
class AgreementType(models.Model):
|
class AgreementType(models.Model):
|
||||||
@@ -10,3 +10,9 @@ class AgreementType(models.Model):
|
|||||||
|
|
||||||
name = fields.Char(string="Name", required=True)
|
name = fields.Char(string="Name", required=True)
|
||||||
active = fields.Boolean(default=True)
|
active = fields.Boolean(default=True)
|
||||||
|
domain = fields.Selection(
|
||||||
|
'_domain_selection', string='Domain', default='sale')
|
||||||
|
|
||||||
|
@api.model
|
||||||
|
def _domain_selection(self):
|
||||||
|
return self.env['agreement']._domain_selection()
|
||||||
|
|||||||
@@ -20,20 +20,26 @@
|
|||||||
options='{"terminology": "archive"}'/>
|
options='{"terminology": "archive"}'/>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="oe_title">
|
||||||
|
<label for="name" class="oe_edit_only" string="Agreement Name"/>
|
||||||
|
<h1>
|
||||||
|
<field name="name"/>
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
<group name="main">
|
<group name="main">
|
||||||
<group name="left">
|
<group name="left">
|
||||||
<field name="agreement_type_id"
|
<field name="code"/>
|
||||||
groups="agreement.group_use_agreement_type"/>
|
|
||||||
<field name="is_template" groups="agreement.group_use_agreement_template"/>
|
|
||||||
<field name="partner_id"
|
<field name="partner_id"
|
||||||
attrs="{'required': [('is_template', '=', False)]}"/>
|
attrs="{'required': [('is_template', '=', False)]}"/>
|
||||||
<field name="name"/>
|
<field name="agreement_type_id"
|
||||||
<field name="signature_date"/>
|
groups="agreement.group_use_agreement_type"/>
|
||||||
|
<field name="domain" widget="radio"/>
|
||||||
|
<field name="is_template" groups="agreement.group_use_agreement_template"/>
|
||||||
</group>
|
</group>
|
||||||
<group name="right">
|
<group name="right">
|
||||||
|
<field name="signature_date"/>
|
||||||
<field name="start_date"/>
|
<field name="start_date"/>
|
||||||
<field name="end_date"/>
|
<field name="end_date"/>
|
||||||
<field name="code"/>
|
|
||||||
<field name="company_id" groups="base.group_multi_company"/>
|
<field name="company_id" groups="base.group_multi_company"/>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
@@ -61,6 +67,7 @@
|
|||||||
<field name="signature_date"/>
|
<field name="signature_date"/>
|
||||||
<field name="start_date"/>
|
<field name="start_date"/>
|
||||||
<field name="end_date"/>
|
<field name="end_date"/>
|
||||||
|
<field name="domain"/>
|
||||||
<field name="company_id" groups="base.group_multi_company"/>
|
<field name="company_id" groups="base.group_multi_company"/>
|
||||||
</tree>
|
</tree>
|
||||||
</field>
|
</field>
|
||||||
@@ -74,12 +81,17 @@
|
|||||||
<field name="name" filter_domain="['|', ('name', 'ilike', self), ('code', 'ilike', self)]" string="Name or Number"/>
|
<field name="name" filter_domain="['|', ('name', 'ilike', self), ('code', 'ilike', self)]" string="Name or Number"/>
|
||||||
<field name="partner_id"/>
|
<field name="partner_id"/>
|
||||||
<separator/>
|
<separator/>
|
||||||
|
<filter name="sale" string="Sale" domain="[('domain', '=', 'sale')]"/>
|
||||||
|
<filter name="purchase" string="Purchase" domain="[('domain', '=', 'purchase')]"/>
|
||||||
|
<separator/>
|
||||||
<filter name="inactive" string="Archived" domain="[('active', '=', False)]"/>
|
<filter name="inactive" string="Archived" domain="[('active', '=', False)]"/>
|
||||||
<group name="groupby">
|
<group name="groupby">
|
||||||
<filter name="partner_groupby" string="Partner"
|
<filter name="partner_groupby" string="Partner"
|
||||||
context="{'group_by': 'partner_id'}"/>
|
context="{'group_by': 'partner_id'}"/>
|
||||||
<filter name="signature_date_groupby" string="Signature Date"
|
<filter name="signature_date_groupby" string="Signature Date"
|
||||||
context="{'group_by': 'signature_date'}"/>
|
context="{'group_by': 'signature_date'}"/>
|
||||||
|
<filter name="domain_groupby" string="Domain"
|
||||||
|
context="{'group_by': 'domain'}"/>
|
||||||
</group>
|
</group>
|
||||||
</search>
|
</search>
|
||||||
</field>
|
</field>
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree string="Agreement Types" default_order="name">
|
<tree string="Agreement Types" default_order="name">
|
||||||
<field name="name" string="Type Name"/>
|
<field name="name" string="Type Name"/>
|
||||||
|
<field name="domain"/>
|
||||||
</tree>
|
</tree>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
@@ -29,6 +30,9 @@
|
|||||||
<label for="name" class="oe_edit_only"/>
|
<label for="name" class="oe_edit_only"/>
|
||||||
<h1><field name="name"/></h1>
|
<h1><field name="name"/></h1>
|
||||||
</div>
|
</div>
|
||||||
|
<group name="main">
|
||||||
|
<field name="domain" widget="radio"/>
|
||||||
|
</group>
|
||||||
</sheet>
|
</sheet>
|
||||||
</form>
|
</form>
|
||||||
</field>
|
</field>
|
||||||
@@ -40,7 +44,14 @@
|
|||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<search string="Agreement Type">
|
<search string="Agreement Type">
|
||||||
<field name="name"/>
|
<field name="name"/>
|
||||||
|
<separator/>
|
||||||
|
<filter name="sale" string="Sale" domain="[('domain', '=', 'sale')]"/>
|
||||||
|
<filter name="purchase" string="Purchase" domain="[('domain', '=', 'purchase')]"/>
|
||||||
|
<separator/>
|
||||||
<filter name="archived" string="Archived" domain="[('active', '=', False)]"/>
|
<filter name="archived" string="Archived" domain="[('active', '=', False)]"/>
|
||||||
|
<group name="groupby">
|
||||||
|
<filter name="domain_groupby" string="Domain" context="{'group_by': 'domain'}"/>
|
||||||
|
</group>
|
||||||
</search>
|
</search>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|||||||
Reference in New Issue
Block a user