Skip to content

Commit d8fa037

Browse files
committed
[ENH] connection to pabiweb
1 parent eab238e commit d8fa037

File tree

4 files changed

+26
-21
lines changed

4 files changed

+26
-21
lines changed

pabi_hr_expense_interface/__openerp__.py

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
"depends": [
1616
"pabi_hr_expense",
1717
"pabi_attachment_helper",
18+
"pabi_web_config",
1819
],
1920
"data": [
2021
],

pabi_hr_expense_interface/models/expense_web_interface.py

+15-13
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ def test_generate_hr_expense_advance(self): # For Advance Only
8181
},
8282
]
8383
}
84-
return self.generate_hr_expense(data_dict)
84+
return self.generate_hr_expense(data_dict, test=True)
8585

8686
@api.model
8787
def test_generate_hr_expense_expense(self): # Expense / Advance
@@ -186,7 +186,7 @@ def test_generate_hr_expense_expense(self): # Expense / Advance
186186
},
187187
]
188188
}
189-
return self.generate_hr_expense(data_dict)
189+
return self.generate_hr_expense(data_dict, test=True)
190190

191191
@api.model
192192
def _pre_process_hr_expense(self, data_dict):
@@ -257,7 +257,9 @@ def _post_process_hr_expense(self, expense):
257257
expense.signal_workflow('confirm')
258258

259259
@api.model
260-
def generate_hr_expense(self, data_dict):
260+
def generate_hr_expense(self, data_dict, test=False):
261+
if not test and not self.env.user.company_id.pabiweb_active:
262+
raise UserError(_('Odoo/PABIWeb Disconnected!'))
261263
try:
262264
prepare_code = data_dict.get('preparer_code')
263265
data_dict = self._pre_process_hr_expense(data_dict)
@@ -316,29 +318,29 @@ def _finalize_data_to_load(self, data_dict):
316318
data_array = {}
317319
for table in _table_fields:
318320
data_array[table] = False
319-
data_array[table+'_fields'] = False
321+
data_array[table + '_fields'] = False
320322
if table in fields:
321323
i = fields.index(table)
322324
data_array[table] = data[i] or () # ({'x': 1, 'y': 2}, {})
323325
del fields[i]
324326
del data[i]
325327
line_count = max(line_count, len(data_array[table]))
326328
if data_array[table]:
327-
data_array[table+'_fields'] = \
328-
[table+'/'+key for key in data_array[table][0].keys()]
329-
fields += data_array[table+'_fields'] or []
329+
data_array[table + '_fields'] = \
330+
[table + '/' + key for key in data_array[table][0].keys()]
331+
fields += data_array[table + '_fields'] or []
330332
# Data
331333
datas = []
332334
for i in range(0, line_count, 1):
333335
record = []
334336
for table in _table_fields:
335-
data_array[table+'_data'] = False
336-
if data_array[table+'_fields']:
337-
data_array[table+'_data'] = \
337+
data_array[table + '_data'] = False
338+
if data_array[table + '_fields']:
339+
data_array[table + '_data'] = \
338340
(len(data_array[table]) > i and data_array[table][i] or
339-
{key: False for key in data_array[table+'_fields']})
340-
record += data_array[table+'_data'] and \
341-
data_array[table+'_data'].values() or []
341+
{key: False for key in data_array[table + '_fields']})
342+
record += data_array[table + '_data'] and \
343+
data_array[table + '_data'].values() or []
342344
if i == 0:
343345
datas += [tuple(data + record)]
344346
else:

pabi_procurement/models/purchase_web_interface.py

+4-2
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,9 @@ def rewrite_create_uid(self, request):
6060
self.env.cr.execute(request_sql)
6161

6262
@api.model
63-
def generate_purchase_request(self, data_dict):
63+
def generate_purchase_request(self, data_dict, test=False):
64+
if not test and not self.env.user.company_id.pabiweb_active:
65+
raise UserError(_('Odoo/PABIWeb Disconnected!'))
6466
ret = {}
6567
data_dict = self.sudo()._get_request_info(data_dict)
6668
fields = data_dict.keys()
@@ -210,7 +212,7 @@ class PurchaseWebInterface(models.Model):
210212
def encode_base64(self, filename):
211213
current_path = inspect.getfile(inspect.currentframe())
212214
directory_path = os.path.dirname(os.path.abspath(current_path))
213-
path = os.path.expanduser(directory_path+'/../data/'+filename)
215+
path = os.path.expanduser(directory_path + '/../data/' + filename)
214216
with open(path) as f:
215217
encoded = base64.b64encode(f.read())
216218
return encoded

pabi_web_config/views/pabi_web_config.xml

+6-6
Original file line numberDiff line numberDiff line change
@@ -21,24 +21,24 @@
2121
<label for="pabiweb_active"/>
2222
<field name="pabiweb_active" class="oe_inline"/>
2323
</div>
24-
<div attrs="{'invisible': [('pabiweb_active', '=', False)], 'required': [('pabiweb_active', '=', True)]}" >
24+
<div attrs="{'invisible': [('pabiweb_active', '=', False)]}" >
2525
<br/>
2626
<label for="pabiweb_exp_url"/>
27-
<field name="pabiweb_exp_url" class="oe_inline"/>
27+
<field name="pabiweb_exp_url" attrs="{'required': [('pabiweb_active', '=', True)]}" class="oe_inline"/>
2828
</div>
2929
<div attrs="{'invisible': [('pabiweb_active', '=', False)], 'required': [('pabiweb_active', '=', True)]}" >
3030
<p class="oe_gray">e.g., http://%s:%[email protected]/alfresco/s/pb/exp/inf</p>
3131
</div>
32-
<div attrs="{'invisible': [('pabiweb_active', '=', False)], 'required': [('pabiweb_active', '=', True)]}" >
32+
<div attrs="{'invisible': [('pabiweb_active', '=', False)]}" >
3333
<label for="pabiweb_pcm_url"/>
34-
<field name="pabiweb_pcm_url" class="oe_inline"/>
34+
<field name="pabiweb_pcm_url" attrs="{'required': [('pabiweb_active', '=', True)]}" class="oe_inline"/>
3535
</div>
3636
<div attrs="{'invisible': [('pabiweb_active', '=', False)], 'required': [('pabiweb_active', '=', True)]}" >
3737
<p class="oe_gray">e.g., http://%s:%[email protected]/alfresco/s/pb/pcm/inf</p>
3838
</div>
39-
<div attrs="{'invisible': [('pabiweb_active', '=', False)], 'required': [('pabiweb_active', '=', True)]}" >
39+
<div attrs="{'invisible': [('pabiweb_active', '=', False)]}" >
4040
<label for="pabiweb_file_prefix"/>
41-
<field name="pabiweb_file_prefix" class="oe_inline"/>
41+
<field name="pabiweb_file_prefix" attrs="{'required': [('pabiweb_active', '=', True)]}" class="oe_inline"/>
4242
</div>
4343
<div attrs="{'invisible': [('pabiweb_active', '=', False)], 'required': [('pabiweb_active', '=', True)]}" >
4444
<p class="oe_gray">e.g., http://10.226.202.134/share/proxy/alfresco/api/node/content/workspace/SpacesStore/</p>

0 commit comments

Comments
 (0)