Skip to content

Commit bb51c82

Browse files
authored
Merge pull request #700 from Som-Energia/add_current_modcon_to_wizard_k_change
allow current modcon
2 parents 5f90703 + 199a083 commit bb51c82

File tree

3 files changed

+49
-8
lines changed

3 files changed

+49
-8
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# -*- coding: utf-8 -*-
2+
import logging
3+
from oopgrade.oopgrade import load_data_records
4+
5+
6+
def up(cursor, installed_version):
7+
if not installed_version:
8+
return
9+
10+
logger = logging.getLogger('openerp.migration')
11+
logger.info("Updating XML wizard/wizard_massive_k_change.xml view")
12+
13+
data_records = ['view_wizard_massive_k_change_form']
14+
load_data_records(
15+
cursor, 'som_indexada', 'wizard/wizard_massive_k_change.xml', data_records, mode="update"
16+
)
17+
logger.info("View succesfully updated")
18+
19+
20+
def down(cursor, installed_version):
21+
pass
22+
23+
24+
migrate = up

som_indexada/wizard/wizard_massive_k_change.py

+24-8
Original file line numberDiff line numberDiff line change
@@ -117,26 +117,40 @@ def change_k_from_csv(self, cursor, uid, ids, context=None): # noqa: C901
117117
polissa_obj.write(cursor, uid, polissa_id[0], vals_mod, context=context)
118118
wz_crear_mc_obj = self.pool.get("giscedata.polissa.crear.contracte")
119119
ctx = {"active_id": polissa_id[0]}
120-
params = {
121-
"duracio": "nou",
122-
"accio": "nou",
123-
}
120+
if wiz_og.modcon_actual:
121+
params = {
122+
"duracio": "actual",
123+
}
124+
else:
125+
params = {
126+
"duracio": "nou",
127+
"accio": "nou",
128+
}
124129
wiz_id = wz_crear_mc_obj.create(cursor, uid, params, context=ctx)
125130
wiz = wz_crear_mc_obj.browse(cursor, uid, [wiz_id])[0]
126131
res = wz_crear_mc_obj.onchange_duracio(
127132
cursor, uid, [wiz.id], str(data_activacio), wiz.duracio, context=ctx
128133
)
129-
if res.get("warning", False):
130-
polissa.send_signal("undo_modcontractual")
131-
raise osv.except_osv("Error", res["warning"])
132-
else:
134+
if wiz_og.modcon_actual:
133135
wiz.write(
134136
{
135137
"data_inici": str(data_activacio),
136138
"data_final": str(data_activacio + timedelta(days=364)),
137139
}
138140
)
139141
wiz.action_crear_contracte()
142+
else:
143+
if res.get("warning", False):
144+
polissa.send_signal("undo_modcontractual")
145+
raise osv.except_osv("Error", res["warning"])
146+
else:
147+
wiz.write(
148+
{
149+
"data_inici": str(data_activacio),
150+
"data_final": str(data_activacio + timedelta(days=364)),
151+
}
152+
)
153+
wiz.action_crear_contracte()
140154
except Exception:
141155
polissa.send_signal("undo_modcontractual")
142156
failed_polisses.append(polissa.name)
@@ -220,13 +234,15 @@ def import_k_from_csv(self, cursor, uid, ids, context=None):
220234
),
221235
"pending_modcon": fields.boolean("Modcon pendent"),
222236
"update_pricelist": fields.boolean("Actualitzar llista de preus"),
237+
"modcon_actual": fields.boolean("Utilitza la modcon Actual"),
223238
}
224239

225240
_defaults = {
226241
"state": lambda *a: "init",
227242
"process_type": _default_process_type,
228243
"pending_modcon": lambda *a: False,
229244
"update_pricelist": lambda *a: False,
245+
"modcon_actual": lambda *a: False,
230246
}
231247

232248

som_indexada/wizard/wizard_massive_k_change.xml

+1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
string="Format del CSV: a la primera columna hi ha d'haver els números dels contractes, un a cada fila. Les següents columnes que hi hagi han de correspondre al valors K, D i H"
1919
colspan="4" />
2020
<field name="pending_modcon" colspan="4" string="Modcon Pendent" attrs="{'readonly':[('state','!=', 'init')]}"/>
21+
<field name="modcon_actual" colspan="4" string="Modcon Actual" attrs="{'readonly':[('state','!=', 'init')]}"/>
2122
<field name="update_pricelist" colspan="4" string="Actualitzar la llista de preus" attrs="{'readonly':[('state','!=', 'init')]}"/>
2223
<button
2324
attrs="{'invisible': [('state','!=', 'init')]}"

0 commit comments

Comments
 (0)