Skip to content

Commit 150640d

Browse files
authored
Merge pull request #204 from T0jan/tme_bugs
fix pricing requests for TME
2 parents bf96c94 + 296fd91 commit 150640d

File tree

2 files changed

+13
-6
lines changed

2 files changed

+13
-6
lines changed

kintree/gui/views/main.py

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -360,15 +360,20 @@ def run_search(self, e):
360360
self.push_data()
361361
self.page.splash.visible = False
362362

363-
if not self.data['manufacturer_part_number'] and not self.data['custom_part']:
363+
if not self.data['supplier_part_number'] and not self.data['custom_part']:
364364
self.show_dialog(
365365
d_type=DialogType.ERROR,
366366
message='Part not found',
367367
)
368+
elif not self.data['manufacturer_part_number']:
369+
self.show_dialog(
370+
d_type=DialogType.ERROR,
371+
message='Found part has no manufacturer part number',
372+
)
368373
elif self.data['searched_part_number'].lower() != self.data['manufacturer_part_number'].lower():
369374
self.show_dialog(
370375
d_type=DialogType.WARNING,
371-
message='Found part number does not match the requested part number',
376+
message='Found manufacturer part number does not match the requested part number',
372377
)
373378
self.page.update()
374379
return
@@ -915,7 +920,7 @@ def check_snapeda(self, e):
915920
if not data_from_views.get('Part Search', {}).get('manufacturer_part_number', ''):
916921
self.show_dialog(
917922
d_type=DialogType.ERROR,
918-
message='Missing Part Data',
923+
message='Missing Manufacturer Part Number',
919924
)
920925
return
921926

@@ -1203,7 +1208,7 @@ def create_part(self, e=None):
12031208
part_number = data_from_views['Part Search'].get('manufacturer_part_number', None)
12041209
if not custom:
12051210
if not part_number:
1206-
self.show_dialog(DialogType.ERROR, 'Missing Part Number')
1211+
self.show_dialog(DialogType.ERROR, 'Missing Manufacturer Part Number')
12071212
return
12081213
else:
12091214
# Update IPN (later overwritten)

kintree/search/tme_api.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,14 +53,16 @@ def setup_environment(force=False) -> bool:
5353

5454
# Based on TME API snippets mentioned in API documentation: https://developers.tme.eu/documentation/download
5555
# https://github.com/tme-dev/TME-API/blob/master/Python/call.py
56-
def tme_api_request(endpoint, tme_api_settings, part_number, api_host='https://api.tme.eu', format='json'):
56+
def tme_api_request(endpoint, tme_api_settings, part_number, api_host='https://api.tme.eu', format='json', **kwargs):
5757
TME_API_TOKEN = tme_api_settings.get('TME_API_TOKEN', None)
5858
TME_API_SECRET = tme_api_settings.get('TME_API_SECRET', None)
5959

6060
params = collections.OrderedDict()
6161
params['Country'] = tme_api_settings.get('TME_API_COUNTRY', 'US')
6262
params['Language'] = tme_api_settings.get('TME_API_LANGUAGE', 'EN')
6363
params['SymbolList[0]'] = part_number
64+
if kwargs.get('currency', None):
65+
params['Currency'] = kwargs.get('currency')
6466
if not TME_API_TOKEN and not TME_API_SECRET:
6567
TME_API_TOKEN = os.environ.get('TME_API_TOKEN', None)
6668
TME_API_SECRET = os.environ.get('TME_API_SECRET', None)
@@ -136,7 +138,7 @@ def search_product(response):
136138
part_info['parameters'][param['ParameterName']] = param['ParameterValue']
137139

138140
# query the prices
139-
response = download(tme_api_request('/Products/GetPrices', tme_api_settings, part_number))
141+
response = download(tme_api_request('/Products/GetPrices', tme_api_settings, part_number, currency='USD'))
140142
# check if accidentally no data returned
141143
if response is None or response['Status'] != 'OK':
142144
return part_info

0 commit comments

Comments
 (0)