Skip to content

Commit a7857f1

Browse files
committed
[18.0][MIG] currency_state_update
24839
1 parent 99cc858 commit a7857f1

File tree

8 files changed

+49
-71
lines changed

8 files changed

+49
-71
lines changed

currency_rate_update/README.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
Currency Rate Update
33
====================
44

5-
..
5+
..
66
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
77
!! This file is generated by oca-gen-addon-readme !!
88
!! changes will be overwritten. !!
@@ -124,6 +124,7 @@ Contributors
124124
- `Komit Company Limited <https://komit-consulting.com/>`__:
125125

126126
- Quoc Pham Ngoc <[email protected]>
127+
- Ugnė Sinkevičienė <[email protected]>
127128

128129
Maintainers
129130
-----------

currency_rate_update/__manifest__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
{
77
"name": "Currency Rate Update",
8-
"version": "17.0.1.0.1",
8+
"version": "18.0.1.0.0",
99
"author": "Camptocamp, CorporateHub, Odoo Community Association (OCA)",
1010
"website": "https://github.com/OCA/currency",
1111
"license": "AGPL-3",
@@ -16,10 +16,10 @@
1616
"data/cron.xml",
1717
"security/ir.model.access.csv",
1818
"security/res_currency_rate_provider.xml",
19+
"wizards/res_currency_rate_update_wizard.xml",
1920
"views/res_currency_rate.xml",
2021
"views/res_currency_rate_provider.xml",
2122
"views/res_config_settings.xml",
22-
"wizards/res_currency_rate_update_wizard.xml",
2323
],
2424
"installable": True,
2525
}

currency_rate_update/data/cron.xml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,8 @@
88
<field name="name">Currency Rates Update (OCA) daily</field>
99
<field name="interval_number">1</field>
1010
<field name="interval_type">days</field>
11-
<field name="numbercall">-1</field>
1211
<field name="state">code</field>
1312
<field name="nextcall">2019-01-01 00:01:00</field>
14-
<field name="doall" eval="False" />
1513
<field
1614
name="model_id"
1715
ref="currency_rate_update.model_res_currency_rate_provider"

currency_rate_update/models/res_currency_rate_provider.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -140,12 +140,8 @@ def _update(self, date_from, date_to, newest_only=False):
140140
except BaseException as e:
141141
_logger.warning(
142142
(
143-
'Currency Rate Provider "{name}" failed to obtain data since'
144-
" {date_from} until {date_to}"
145-
).format(
146-
name=provider.name,
147-
date_from=date_from,
148-
date_to=date_to,
143+
f'Currency Rate Provider "{provider.name}" failed to '
144+
f"obtain data since {date_from} until {date_to}"
149145
),
150146
exc_info=True,
151147
)
@@ -284,10 +280,8 @@ def _scheduled_update(self):
284280
]
285281
)
286282
if providers:
287-
_logger.info(
288-
"Scheduled currency rates update of: %s"
289-
% ", ".join(providers.mapped("name"))
290-
)
283+
provider_names = ", ".join(providers.mapped("name"))
284+
_logger.info(f"Scheduled currency rates update of: {provider_names}")
291285
for provider in providers.with_context(**{"scheduled": True}):
292286
date_from = (
293287
(provider.last_successful_run + relativedelta(days=1))

currency_rate_update/views/res_currency_rate.xml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,7 @@
1010
<field name="inherit_id" ref="base.view_currency_rate_form" />
1111
<field name="arch" type="xml">
1212
<form position="inside">
13-
<div class="oe_chatter">
14-
<field name="message_follower_ids" widget="mail_followers" />
15-
<field name="message_ids" widget="mail_thread" />
16-
</div>
13+
<chatter/>
1714
</form>
1815
<field name="rate" position="after">
1916
<field name="provider_id" readonly="1" />

currency_rate_update/views/res_currency_rate_provider.xml

Lines changed: 15 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<field name="name">res.currency.rate.provider.filter</field>
99
<field name="model">res.currency.rate.provider</field>
1010
<field name="arch" type="xml">
11-
<search string="Currency Rates Providers">
11+
<search>
1212
<field name="service" />
1313
<field name="company_id" groups="base.group_multi_company" />
1414
<filter
@@ -20,25 +20,32 @@
2020
</field>
2121
</record>
2222
<record model="ir.ui.view" id="res_currency_rate_provider_tree_view">
23-
<field name="name">res.currency.rate.provider.tree</field>
23+
<field name="name">res.currency.rate.provider.list</field>
2424
<field name="model">res.currency.rate.provider</field>
2525
<field name="arch" type="xml">
26-
<tree>
26+
<list>
2727
<field name="service" />
2828
<field name="company_id" groups="base.group_multi_company" />
2929
<field name="update_schedule" />
3030
<field name="available_currency_ids" column_invisible="True" />
3131
<field name="currency_ids" widget="many2many_tags" />
3232
<field name="daily" column_invisible="True" />
33-
<field name="next_run" invisible="daily" />
34-
</tree>
33+
<field name="next_run" invisible="True" />
34+
</list>
3535
</field>
3636
</record>
3737
<record model="ir.ui.view" id="res_currency_rate_provider_form_view">
3838
<field name="name">res.currency.rate.provider.form</field>
3939
<field name="model">res.currency.rate.provider</field>
4040
<field name="arch" type="xml">
41-
<form string="Currency Rates Provider">
41+
<form>
42+
<header>
43+
<button
44+
name="%(res_currency_rate_update_wizard_action)d"
45+
type="action"
46+
string="Update Rates Now"
47+
/>
48+
</header>
4249
<sheet>
4350
<widget
4451
name="web_ribbon"
@@ -94,45 +101,14 @@
94101
</group>
95102
</group>
96103
</sheet>
97-
<div class="oe_chatter">
98-
<field name="message_follower_ids" widget="mail_followers" />
99-
<field name="message_ids" widget="mail_thread" />
100-
</div>
104+
<chatter/>
101105
</form>
102106
</field>
103107
</record>
104-
<record
105-
id="action_res_currency_rate_provider_update_wizard"
106-
model="ir.actions.server"
107-
>
108-
<field name="name">Update Rates Wizard</field>
109-
<field name="type">ir.actions.server</field>
110-
<field
111-
name="model_id"
112-
ref="currency_rate_update.model_res_currency_rate_provider"
113-
/>
114-
<field
115-
name="binding_model_id"
116-
ref="currency_rate_update.model_res_currency_rate_provider"
117-
/>
118-
<field name="state">code</field>
119-
<field name="code">
120-
if records:
121-
action = {
122-
'type': 'ir.actions.act_window',
123-
'res_model': 'res.currency.rate.update.wizard',
124-
'views': [[False, 'form']],
125-
'target': 'new',
126-
'context': {
127-
'default_provider_ids': [(6, False, records.ids)],
128-
},
129-
}
130-
</field>
131-
</record>
132108
<record model="ir.actions.act_window" id="action_res_currency_rate_provider">
133109
<field name="name">Currency Rates Providers</field>
134110
<field name="res_model">res.currency.rate.provider</field>
135-
<field name="view_mode">tree,form</field>
111+
<field name="view_mode">list,form</field>
136112
</record>
137113
<menuitem
138114
id="menu_res_currency_rate_provider"

currency_rate_update/wizards/res_currency_rate_update_wizard.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Copyright 2019 Brainbean Apps (https://brainbeanapps.com)
22
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
33

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

66

77
class ResCurrencyRateUpdateWizard(models.TransientModel):
@@ -21,9 +21,15 @@ class ResCurrencyRateUpdateWizard(models.TransientModel):
2121
column2="provider_id",
2222
)
2323

24+
@api.model
25+
def default_get(self, fields_list):
26+
res = super().default_get(fields_list)
27+
if self._context.get(
28+
"active_model"
29+
) == "res.currency.rate.provider" and self._context.get("active_ids"):
30+
res["provider_ids"] = [Command.set(self._context["active_ids"])]
31+
return res
32+
2433
def action_update(self):
2534
self.ensure_one()
26-
2735
self.provider_ids._update(self.date_from, self.date_to)
28-
29-
return {"type": "ir.actions.act_window_close"}

currency_rate_update/wizards/res_currency_rate_update_wizard.xml

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,10 @@
99
<field name="model">res.currency.rate.update.wizard</field>
1010
<field name="arch" type="xml">
1111
<form>
12-
<group name="filter">
13-
<group name="date_range" colspan="2">
14-
<group>
15-
<field name="date_from" />
16-
</group>
17-
<group>
18-
<field name="date_to" />
19-
</group>
20-
</group>
12+
<group name="main">
13+
<field name="provider_ids" widget="many2many_tags"/>
14+
<field name="date_from"/>
15+
<field name="date_to"/>
2116
</group>
2217
<footer>
2318
<button
@@ -32,4 +27,15 @@
3227
</form>
3328
</field>
3429
</record>
30+
<record id="res_currency_rate_update_wizard_action" model="ir.actions.act_window">
31+
<field name="name">Update Currency Rates</field>
32+
<field name="res_model">res.currency.rate.update.wizard</field>
33+
<field name="view_mode">form</field>
34+
<field name="target">new</field>
35+
<field
36+
name="binding_model_id"
37+
ref="currency_rate_update.model_res_currency_rate_provider"
38+
/>
39+
<field name="binding_view_types">list</field>
40+
</record>
3541
</odoo>

0 commit comments

Comments
 (0)