[FIX] agreement_legal: Copy

This commit is contained in:
Maxime Chambreuil
2019-05-13 10:59:33 -05:00
committed by Patrick Wilson
parent c83727d755
commit b02592e09e
2 changed files with 12 additions and 18 deletions

View File

@@ -339,6 +339,7 @@ class Agreement(models.Model):
"agreement.stage", "agreement.stage",
string="Stage", string="Stage",
group_expand="_read_group_stage_ids", group_expand="_read_group_stage_ids",
default=lambda self: self._default_stage_id(),
help="Select the current stage of the agreement.", help="Select the current stage of the agreement.",
track_visibility="onchange", track_visibility="onchange",
index=True) index=True)
@@ -370,8 +371,10 @@ class Agreement(models.Model):
"version": 1, "version": 1,
"revision": 0, "revision": 0,
"state": "draft", "state": "draft",
"stage_id": self.env.ref("agreement_legal.agreement_stage_new").id,
} }
res = self.copy(default=default_vals) res = self.copy(default=default_vals)
res.sections_ids.clauses_ids.write({'agreement_id': res.id})
return { return {
"res_model": "agreement", "res_model": "agreement",
"type": "ir.actions.act_window", "type": "ir.actions.act_window",

View File

@@ -12,8 +12,7 @@ class AgreementClause(models.Model):
name = fields.Char(string="Name", required=True) name = fields.Char(string="Name", required=True)
title = fields.Char( title = fields.Char(
string="Title", string="Title",
help="The title is displayed on the PDF." "The name is not." help="The title is displayed on the PDF." "The name is not.")
)
sequence = fields.Integer(string="Sequence") sequence = fields.Integer(string="Sequence")
agreement_id = fields.Many2one( agreement_id = fields.Many2one(
"agreement", "agreement",
@@ -22,20 +21,17 @@ class AgreementClause(models.Model):
section_id = fields.Many2one( section_id = fields.Many2one(
"agreement.section", "agreement.section",
string="Section", string="Section",
ondelete="cascade" ondelete="cascade")
)
content = fields.Html(string="Clause Content") content = fields.Html(string="Clause Content")
dynamic_content = fields.Html( dynamic_content = fields.Html(
compute="_compute_dynamic_content", compute="_compute_dynamic_content",
string="Dynamic Content", string="Dynamic Content",
help="compute dynamic Content", help="compute dynamic Content")
)
active = fields.Boolean( active = fields.Boolean(
string="Active", string="Active",
default=True, default=True,
help="If unchecked, it will allow you to hide the agreement without " help="If unchecked, it will allow you to hide the agreement without "
"removing it.", "removing it.")
)
# Dynamic field editor # Dynamic field editor
field_id = fields.Many2one( field_id = fields.Many2one(
@@ -43,30 +39,25 @@ class AgreementClause(models.Model):
string="Field", string="Field",
help="""Select target field from the related document model. If it is a help="""Select target field from the related document model. If it is a
relationship field you will be able to select a target field at the relationship field you will be able to select a target field at the
destination of the relationship.""", destination of the relationship.""")
)
sub_object_id = fields.Many2one( sub_object_id = fields.Many2one(
"ir.model", "ir.model",
string="Sub-model", string="Sub-model",
help="""When a relationship field is selected as first field, this help="""When a relationship field is selected as first field, this
field shows the document model the relationship goes to.""", field shows the document model the relationship goes to.""")
)
sub_model_object_field_id = fields.Many2one( sub_model_object_field_id = fields.Many2one(
"ir.model.fields", "ir.model.fields",
string="Sub-field", string="Sub-field",
help="""When a relationship field is selected as first field, this help="""When a relationship field is selected as first field, this
field lets you select the target field within the destination document field lets you select the target field within the destination document
model (sub-model).""", model (sub-model).""")
)
default_value = fields.Char( default_value = fields.Char(
string="Default Value", string="Default Value",
help="Optional value to use if the target field is empty.", help="Optional value to use if the target field is empty.")
)
copyvalue = fields.Char( copyvalue = fields.Char(
string="Placeholder Expression", string="Placeholder Expression",
help="""Final placeholder expression, to be copy-pasted in the desired help="""Final placeholder expression, to be copy-pasted in the desired
template field.""", template field.""")
)
@api.onchange('field_id', 'sub_model_object_field_id', 'default_value') @api.onchange('field_id', 'sub_model_object_field_id', 'default_value')
def onchange_copyvalue(self): def onchange_copyvalue(self):