Skip to content

Commit 6061723

Browse files
committed
[IMP]Showing related pattern for import wizard
1 parent cbc7bdb commit 6061723

File tree

2 files changed

+41
-11
lines changed

2 files changed

+41
-11
lines changed

pattern_import_export/wizard/import_pattern_wizard.py

+18-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Copyright 2020 ACSONE SA/NV (<http://acsone.eu>)
22
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
33

4-
from odoo import fields, models
4+
from odoo import fields, models, api
55

66

77
class ImportPatternWizard(models.TransientModel):
@@ -14,6 +14,15 @@ class ImportPatternWizard(models.TransientModel):
1414
_name = "import.pattern.wizard"
1515
_description = "Import pattern wizard"
1616

17+
def _get_model(self):
18+
model_name = self.env.context.get('active_model')
19+
active_id = self.env.context.get('active_id')
20+
if model_name == "pattern.config":
21+
pattern_config = self.env[model_name].browse(active_id)
22+
model_name = pattern_config.resource
23+
return model_name
24+
25+
1726
pattern_config_id = fields.Many2one(
1827
comodel_name="pattern.config",
1928
string="Import pattern",
@@ -23,7 +32,15 @@ class ImportPatternWizard(models.TransientModel):
2332
)
2433
import_file = fields.Binary(string="File to import", required=True)
2534
filename = fields.Char()
35+
model = fields.Char(default=_get_model)
36+
no_import_pattern = fields.Boolean(compute="_compute_no_import_pattern")
2637

38+
@api.depends("model")
39+
def _compute_no_import_pattern(self):
40+
for wiz in self:
41+
wiz.no_import_pattern = not wiz.env["pattern.config"].search_count(
42+
[("resource", "=", wiz.model)]
43+
)
2744
def action_launch_import(self):
2845
"""
2946

pattern_import_export/wizard/import_pattern_wizard.xml

+23-10
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,32 @@
99
<form>
1010
<group>
1111
<group>
12+
<field name="model" invisible="1" />
13+
<field name="no_import_pattern" invisible="1" />
1214
<field
1315
name="pattern_config_id"
14-
options="{'no_create_edit': True}"
15-
invisible="context.get('hide_pattern_config_id')"
16-
/>
17-
<field name="filename" invisible="1" />
18-
<field
19-
name="import_file"
20-
filename="filename"
21-
placeholder="Choose a file to import..."
16+
domain="[('resource', '=', model)]"
17+
options="{'no_create': True, 'no_edit': True}"
18+
attrs="{'invisible': [('no_import_pattern', '=', True)]}"
19+
20+
/>
21+
<span
22+
attrs="{'invisible': [('no_import_pattern', '=', False)]}"
23+
colspan="2"
24+
>
25+
There is no import pattern for this object !<br />
26+
Please go to the menu .... and create one.
27+
</span>
28+
<field name="filename" invisible="1" />
29+
<field
30+
name="import_file"
31+
filename="filename"
32+
placeholder="Choose a file to import..."
33+
attrs="{'invisible': [('no_import_pattern', '=', True)]}"
2234
/>
23-
</group>
24-
<group colspan="2">
35+
</group>
36+
<group colspan="2"
37+
attrs="{'invisible': [('no_import_pattern', '=', True)]}" >
2538
<div class="oe_form_box_danger oe_text_center">
2639
<p>
2740
<strong

0 commit comments

Comments
 (0)