mirror of
https://gitlab.com/flectra-community/server-ux.git
synced 2024-11-21 21:52:07 +00:00
Automatic Update form OCA2FC Migrator
This commit is contained in:
parent
db1cf1f456
commit
28171eb675
@ -22,7 +22,7 @@ addon | version | summary
|
||||
[multi_step_wizard](multi_step_wizard/) | 2.0.1.0.0| Multi-Steps Wizards
|
||||
[base_technical_features](base_technical_features/) | 2.0.1.1.0| Access to technical features without activating debug mode
|
||||
[base_tier_validation_formula](base_tier_validation_formula/) | 2.0.2.0.0| Formulas for Base tier validation
|
||||
[base_tier_validation](base_tier_validation/) | 2.0.2.4.0| Implement a validation process based on tiers.
|
||||
[base_tier_validation](base_tier_validation/) | 2.0.2.5.0| Implement a validation process based on tiers.
|
||||
[base_search_custom_field_filter](base_search_custom_field_filter/) | 2.0.1.0.0| Add custom filters for fields via UI
|
||||
[base_revision](base_revision/) | 2.0.1.0.1| Keep track of revised document
|
||||
[base_export_manager](base_export_manager/) | 2.0.1.0.1| Manage model export profiles
|
||||
|
@ -3,7 +3,7 @@
|
||||
{
|
||||
"name": "Base Tier Validation",
|
||||
"summary": "Implement a validation process based on tiers.",
|
||||
"version": "2.0.2.4.0",
|
||||
"version": "2.0.2.5.0",
|
||||
"development_status": "Mature",
|
||||
"maintainers": ["LoisRForgeFlow"],
|
||||
"category": "Tools",
|
||||
|
@ -106,7 +106,7 @@ msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields.selection,name:base_tier_validation.selection__tier_definition__review_type__group
|
||||
msgid "Any user in a specific group."
|
||||
msgid "Any user in a specific group"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
@ -237,6 +237,11 @@ msgstr ""
|
||||
msgid "Done by"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields.selection,name:base_tier_validation.selection__tier_definition__review_type__field
|
||||
msgid "Field in related record"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_review.py:0
|
||||
#, python-format
|
||||
@ -406,6 +411,12 @@ msgstr ""
|
||||
msgid "Reviewer"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__reviewer_field_id
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_review__reviewer_field_id
|
||||
msgid "Reviewer field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__reviewer_group_id
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_review__reviewer_group_id
|
||||
@ -461,6 +472,12 @@ msgstr ""
|
||||
msgid "The review has been reset by %s."
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_review.py:0
|
||||
#, python-format
|
||||
msgid "There are no res.users in the selected field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_validation.py:0
|
||||
#, python-format
|
||||
@ -531,6 +548,11 @@ msgstr ""
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__valid_reviewer_field_ids
|
||||
msgid "Valid Reviewer Field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model_terms:ir.ui.view,arch_db:base_tier_validation.tier_validation_label
|
||||
msgid "Validate"
|
||||
|
@ -120,8 +120,8 @@ msgstr "Todos"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields.selection,name:base_tier_validation.selection__tier_definition__review_type__group
|
||||
msgid "Any user in a specific group."
|
||||
msgstr "Cualquier usuario en el grupo especificado."
|
||||
msgid "Any user in a specific group"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model_terms:ir.ui.view,arch_db:base_tier_validation.tier_definition_view_form
|
||||
@ -253,6 +253,11 @@ msgstr "Hecho Por"
|
||||
msgid "Done by"
|
||||
msgstr "Hecho Por"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields.selection,name:base_tier_validation.selection__tier_definition__review_type__field
|
||||
msgid "Field in related record"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_review.py:0
|
||||
#, python-format
|
||||
@ -429,6 +434,12 @@ msgstr "Revisor"
|
||||
msgid "Reviewer"
|
||||
msgstr "Revisor"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__reviewer_field_id
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_review__reviewer_field_id
|
||||
msgid "Reviewer field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__reviewer_group_id
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_review__reviewer_group_id
|
||||
@ -484,6 +495,12 @@ msgstr "Esta operación está en proceso de validación."
|
||||
msgid "The review has been reset by %s."
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_review.py:0
|
||||
#, python-format
|
||||
msgid "There are no res.users in the selected field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_validation.py:0
|
||||
#, python-format
|
||||
@ -558,6 +575,11 @@ msgstr ""
|
||||
msgid "Users"
|
||||
msgstr "Usuarios"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__valid_reviewer_field_ids
|
||||
msgid "Valid Reviewer Field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model_terms:ir.ui.view,arch_db:base_tier_validation.tier_validation_label
|
||||
msgid "Validate"
|
||||
@ -598,6 +620,9 @@ msgstr "Validaciones"
|
||||
msgid "e.g. Tier Validation for..."
|
||||
msgstr "ej. Validación de Nivel por..."
|
||||
|
||||
#~ msgid "Any user in a specific group."
|
||||
#~ msgstr "Cualquier usuario en el grupo especificado."
|
||||
|
||||
#~ msgid "Tier"
|
||||
#~ msgstr "Nivel"
|
||||
|
||||
|
@ -122,8 +122,8 @@ msgstr "Tout"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields.selection,name:base_tier_validation.selection__tier_definition__review_type__group
|
||||
msgid "Any user in a specific group."
|
||||
msgstr "Tout utilisateur d'un groupe spécifique."
|
||||
msgid "Any user in a specific group"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model_terms:ir.ui.view,arch_db:base_tier_validation.tier_definition_view_form
|
||||
@ -253,6 +253,11 @@ msgstr "Fait par"
|
||||
msgid "Done by"
|
||||
msgstr "Fait par"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields.selection,name:base_tier_validation.selection__tier_definition__review_type__field
|
||||
msgid "Field in related record"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_review.py:0
|
||||
#, python-format
|
||||
@ -422,6 +427,12 @@ msgstr "Vérification"
|
||||
msgid "Reviewer"
|
||||
msgstr "Vérificateur"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__reviewer_field_id
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_review__reviewer_field_id
|
||||
msgid "Reviewer field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__reviewer_group_id
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_review__reviewer_group_id
|
||||
@ -477,6 +488,12 @@ msgstr ""
|
||||
msgid "The review has been reset by %s."
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_review.py:0
|
||||
#, python-format
|
||||
msgid "There are no res.users in the selected field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_validation.py:0
|
||||
#, python-format
|
||||
@ -547,6 +564,11 @@ msgstr "A faire par"
|
||||
msgid "Users"
|
||||
msgstr "Utilisateurs"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__valid_reviewer_field_ids
|
||||
msgid "Valid Reviewer Field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model_terms:ir.ui.view,arch_db:base_tier_validation.tier_validation_label
|
||||
msgid "Validate"
|
||||
@ -585,3 +607,6 @@ msgstr ""
|
||||
#: model_terms:ir.ui.view,arch_db:base_tier_validation.tier_definition_view_form
|
||||
msgid "e.g. Tier Validation for..."
|
||||
msgstr "ie Validation par un tiers pour..."
|
||||
|
||||
#~ msgid "Any user in a specific group."
|
||||
#~ msgstr "Tout utilisateur d'un groupe spécifique."
|
||||
|
@ -109,8 +109,8 @@ msgstr "Alle"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields.selection,name:base_tier_validation.selection__tier_definition__review_type__group
|
||||
msgid "Any user in a specific group."
|
||||
msgstr "Elke gebruiker in een specifieke groep."
|
||||
msgid "Any user in a specific group"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model_terms:ir.ui.view,arch_db:base_tier_validation.tier_definition_view_form
|
||||
@ -240,6 +240,11 @@ msgstr "Gedaan door"
|
||||
msgid "Done by"
|
||||
msgstr "Gedaan door"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields.selection,name:base_tier_validation.selection__tier_definition__review_type__field
|
||||
msgid "Field in related record"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_review.py:0
|
||||
#, python-format
|
||||
@ -411,6 +416,12 @@ msgstr "Beoordeling"
|
||||
msgid "Reviewer"
|
||||
msgstr "Beoordelaar"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__reviewer_field_id
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_review__reviewer_field_id
|
||||
msgid "Reviewer field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__reviewer_group_id
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_review__reviewer_group_id
|
||||
@ -466,6 +477,12 @@ msgstr "De bewerking is onder validatie."
|
||||
msgid "The review has been reset by %s."
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_review.py:0
|
||||
#, python-format
|
||||
msgid "There are no res.users in the selected field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_validation.py:0
|
||||
#, python-format
|
||||
@ -540,6 +557,11 @@ msgstr ""
|
||||
msgid "Users"
|
||||
msgstr "Gebruikers"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__valid_reviewer_field_ids
|
||||
msgid "Valid Reviewer Field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model_terms:ir.ui.view,arch_db:base_tier_validation.tier_validation_label
|
||||
msgid "Validate"
|
||||
@ -579,6 +601,9 @@ msgstr "Validaties"
|
||||
msgid "e.g. Tier Validation for..."
|
||||
msgstr "bijv. Tier validatie voor..."
|
||||
|
||||
#~ msgid "Any user in a specific group."
|
||||
#~ msgstr "Elke gebruiker in een specifieke groep."
|
||||
|
||||
#~ msgid "Tier"
|
||||
#~ msgstr "Tier"
|
||||
|
||||
|
@ -109,8 +109,8 @@ msgstr "所有"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields.selection,name:base_tier_validation.selection__tier_definition__review_type__group
|
||||
msgid "Any user in a specific group."
|
||||
msgstr "指定权限组"
|
||||
msgid "Any user in a specific group"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model_terms:ir.ui.view,arch_db:base_tier_validation.tier_definition_view_form
|
||||
@ -240,6 +240,11 @@ msgstr "审批人"
|
||||
msgid "Done by"
|
||||
msgstr "审批人"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields.selection,name:base_tier_validation.selection__tier_definition__review_type__field
|
||||
msgid "Field in related record"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_review.py:0
|
||||
#, python-format
|
||||
@ -409,6 +414,12 @@ msgstr "审批"
|
||||
msgid "Reviewer"
|
||||
msgstr "审批人"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__reviewer_field_id
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_review__reviewer_field_id
|
||||
msgid "Reviewer field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__reviewer_group_id
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_review__reviewer_group_id
|
||||
@ -464,6 +475,12 @@ msgstr "该操作正在审批中。"
|
||||
msgid "The review has been reset by %s."
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_review.py:0
|
||||
#, python-format
|
||||
msgid "There are no res.users in the selected field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: code:addons/base_tier_validation/models/tier_validation.py:0
|
||||
#, python-format
|
||||
@ -538,6 +555,11 @@ msgstr ""
|
||||
msgid "Users"
|
||||
msgstr "用户"
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__valid_reviewer_field_ids
|
||||
msgid "Valid Reviewer Field"
|
||||
msgstr ""
|
||||
|
||||
#. module: base_tier_validation
|
||||
#: model_terms:ir.ui.view,arch_db:base_tier_validation.tier_validation_label
|
||||
msgid "Validate"
|
||||
@ -577,6 +599,9 @@ msgstr "审批"
|
||||
msgid "e.g. Tier Validation for..."
|
||||
msgstr "例如:审批层级用于..."
|
||||
|
||||
#~ msgid "Any user in a specific group."
|
||||
#~ msgstr "指定权限组"
|
||||
|
||||
#~ msgid "Tier"
|
||||
#~ msgstr "层级"
|
||||
|
||||
|
@ -34,13 +34,23 @@ class TierDefinition(models.Model):
|
||||
default="individual",
|
||||
selection=[
|
||||
("individual", "Specific user"),
|
||||
("group", "Any user in a specific group."),
|
||||
("group", "Any user in a specific group"),
|
||||
("field", "Field in related record"),
|
||||
],
|
||||
)
|
||||
reviewer_id = fields.Many2one(comodel_name="res.users", string="Reviewer")
|
||||
reviewer_group_id = fields.Many2one(
|
||||
comodel_name="res.groups", string="Reviewer group"
|
||||
)
|
||||
reviewer_field_id = fields.Many2one(
|
||||
comodel_name="ir.model.fields",
|
||||
string="Reviewer field",
|
||||
domain="[('id', 'in', valid_reviewer_field_ids)]",
|
||||
)
|
||||
valid_reviewer_field_ids = fields.One2many(
|
||||
comodel_name="ir.model.fields",
|
||||
compute="_compute_domain_reviewer_field",
|
||||
)
|
||||
definition_type = fields.Selection(
|
||||
string="Definition", selection=[("domain", "Domain")], default="domain"
|
||||
)
|
||||
@ -68,3 +78,10 @@ class TierDefinition(models.Model):
|
||||
def onchange_review_type(self):
|
||||
self.reviewer_id = None
|
||||
self.reviewer_group_id = None
|
||||
|
||||
@api.depends("review_type", "model_id")
|
||||
def _compute_domain_reviewer_field(self):
|
||||
for rec in self:
|
||||
rec.valid_reviewer_field_ids = self.env["ir.model.fields"].search(
|
||||
[("model", "=", rec.model), ("relation", "=", "res.users")]
|
||||
)
|
||||
|
@ -2,6 +2,7 @@
|
||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||
|
||||
from flectra import _, api, fields, models
|
||||
from flectra.exceptions import ValidationError
|
||||
|
||||
|
||||
class TierReview(models.Model):
|
||||
@ -29,6 +30,9 @@ class TierReview(models.Model):
|
||||
reviewer_group_id = fields.Many2one(
|
||||
related="definition_id.reviewer_group_id", readonly=True
|
||||
)
|
||||
reviewer_field_id = fields.Many2one(
|
||||
related="definition_id.reviewer_field_id", readonly=True
|
||||
)
|
||||
reviewer_ids = fields.Many2many(
|
||||
string="Reviewers",
|
||||
comodel_name="res.users",
|
||||
@ -94,4 +98,12 @@ class TierReview(models.Model):
|
||||
rec.todo_by = todo_by
|
||||
|
||||
def _get_reviewers(self):
|
||||
return self.reviewer_id + self.reviewer_group_id.users
|
||||
if self.reviewer_id or self.reviewer_group_id.users:
|
||||
return self.reviewer_id + self.reviewer_group_id.users
|
||||
reviewer_field = self.env["res.users"]
|
||||
if self.reviewer_field_id:
|
||||
resource = self.env[self.model].browse(self.res_id)
|
||||
reviewer_field = getattr(resource, self.reviewer_field_id.name, False)
|
||||
if not reviewer_field or not reviewer_field._name == "res.users":
|
||||
raise ValidationError(_("There are no res.users in the selected field"))
|
||||
return reviewer_field
|
||||
|
@ -413,6 +413,29 @@ class TierTierValidation(CommonTierValidation):
|
||||
)
|
||||
self.assertEquals(len(records), 0)
|
||||
|
||||
def test_18_test_review_by_res_users_field(self):
|
||||
selected_field = self.env["ir.model.fields"].search(
|
||||
[("model", "=", self.test_model._name), ("name", "=", "user_id")]
|
||||
)
|
||||
test_record = self.test_model.create(
|
||||
{"test_field": 2.5, "user_id": self.test_user_2.id}
|
||||
)
|
||||
|
||||
definition = self.env["tier.definition"].create(
|
||||
{
|
||||
"model_id": self.tester_model.id,
|
||||
"review_type": "field",
|
||||
"reviewer_field_id": selected_field.id,
|
||||
"definition_domain": "[('test_field', '>', 1.0)]",
|
||||
"approve_sequence": True,
|
||||
}
|
||||
)
|
||||
|
||||
reviews = test_record.request_validation()
|
||||
review = reviews.filtered(lambda r: r.definition_id == definition)
|
||||
self.assertTrue(review)
|
||||
self.assertEqual(review.reviewer_ids, self.test_user_2)
|
||||
|
||||
|
||||
@tagged("at_install")
|
||||
class TierTierValidationView(CommonTierValidation):
|
||||
|
@ -12,6 +12,7 @@
|
||||
<field name="review_type" />
|
||||
<field name="reviewer_id" />
|
||||
<field name="reviewer_group_id" />
|
||||
<field name="reviewer_field_id" />
|
||||
<field name="sequence" />
|
||||
<field name="company_id" groups="base.group_multi_company" />
|
||||
<field name="active" />
|
||||
@ -55,6 +56,12 @@
|
||||
name="reviewer_group_id"
|
||||
attrs="{'invisible': [('review_type', '!=', 'group')]}"
|
||||
/>
|
||||
<field
|
||||
name="reviewer_field_id"
|
||||
attrs="{'invisible': [('review_type', '!=', 'field')]}"
|
||||
options="{'no_create': True}"
|
||||
/>
|
||||
<field name="valid_reviewer_field_ids" invisible="1" />
|
||||
</group>
|
||||
<group name="right">
|
||||
<field
|
||||
|
Loading…
Reference in New Issue
Block a user