Browse Source

[FIX] agreement_legal: Copy

pull/324/head
Maxime Chambreuil 5 years ago
parent
commit
f1f11f42ea
  1. 3
      agreement_legal/models/agreement.py
  2. 27
      agreement_legal/models/agreement_clause.py

3
agreement_legal/models/agreement.py

@ -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",

27
agreement_legal/models/agreement_clause.py

@ -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):

Loading…
Cancel
Save