medicafe 0.251023.0__py3-none-any.whl → 0.251023.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of medicafe might be problematic. Click here for more details.

MediBot/__init__.py CHANGED
@@ -19,7 +19,7 @@ Smart Import Integration:
19
19
  medibot_main = get_components('medibot_main')
20
20
  """
21
21
 
22
- __version__ = "0.251023.0"
22
+ __version__ = "0.251023.1"
23
23
  __author__ = "Daniel Vidaud"
24
24
  __email__ = "daniel@personalizedtransformation.com"
25
25
 
MediCafe/__init__.py CHANGED
@@ -27,7 +27,7 @@ Smart Import System:
27
27
  api_suite = get_api_access()
28
28
  """
29
29
 
30
- __version__ = "0.251023.0"
30
+ __version__ = "0.251023.1"
31
31
  __author__ = "Daniel Vidaud"
32
32
  __email__ = "daniel@personalizedtransformation.com"
33
33
 
MediLink/MediLink_Up.py CHANGED
@@ -258,16 +258,22 @@ def submit_claims(detailed_patient_data_grouped_by_endpoint, config, crosswalk):
258
258
  local_claims_path = cfg.get('local_claims_path', '.')
259
259
  transmission_result = operate_winscp(operation_type, filtered_files, endpoint_cfg, local_claims_path, config)
260
260
  success_dict = handle_transmission_result(transmission_result, config, operation_type, method)
261
+ # If we attempted uploads but could not derive any status, emit explicit failures per file
262
+ if (not success_dict) and filtered_files:
263
+ success_dict = {fp: (False, "No transfer status found in WinSCP log") for fp in filtered_files}
261
264
  submission_results[endpoint] = success_dict
262
265
  except FileNotFoundError as e:
263
- print("Failed to transmit files to {}. Error: Log file not found - {}".format(endpoint, str(e)))
264
- submission_results[endpoint] = {"status": False, "error": "Log file not found - " + str(e)}
266
+ msg = "Log file not found - {}".format(str(e))
267
+ print("Failed to transmit files to {}. Error: {}".format(endpoint, msg))
268
+ submission_results[endpoint] = {fp: (False, msg) for fp in (filtered_files or [])}
265
269
  except IOError as e:
266
- print("Failed to transmit files to {}. Error: Input/output error - {}".format(endpoint, str(e)))
267
- submission_results[endpoint] = {"status": False, "error": "Input/output error - " + str(e)}
270
+ msg = "Input/output error - {}".format(str(e))
271
+ print("Failed to transmit files to {}. Error: {}".format(endpoint, msg))
272
+ submission_results[endpoint] = {fp: (False, msg) for fp in (filtered_files or [])}
268
273
  except Exception as e:
269
- print("Failed to transmit files to {}. Error: {}".format(endpoint, str(e)))
270
- submission_results[endpoint] = {"status": False, "error": str(e)}
274
+ msg = str(e)
275
+ print("Failed to transmit files to {}. Error: {}".format(endpoint, msg))
276
+ submission_results[endpoint] = {fp: (False, msg) for fp in (filtered_files or [])}
271
277
  elif method == 'api':
272
278
  # Transmit files via API
273
279
  try:
@@ -284,10 +290,14 @@ def submit_claims(detailed_patient_data_grouped_by_endpoint, config, crosswalk):
284
290
  response = {"error": "API module not available"}
285
291
  api_responses.append((file_path, response))
286
292
  success_dict = handle_transmission_result(api_responses, config, "api", method)
293
+ # If API call path yielded no status, emit explicit failures per file attempted
294
+ if (not success_dict) and filtered_files:
295
+ success_dict = {fp: (False, "No API response parsed") for fp in filtered_files}
287
296
  submission_results[endpoint] = success_dict
288
297
  except Exception as e:
289
- print("Failed to transmit files via API to {}. Error: {}".format(endpoint, str(e)))
290
- submission_results[endpoint] = {"status": False, "error": str(e)}
298
+ msg = str(e)
299
+ print("Failed to transmit files via API to {}. Error: {}".format(endpoint, msg))
300
+ submission_results[endpoint] = {fp: (False, msg) for fp in (filtered_files or [])}
291
301
  else:
292
302
  print("No files were converted for transmission to {}.".format(endpoint))
293
303
  else:
@@ -495,29 +505,25 @@ def prepare_receipt_data(submission_results):
495
505
  log("File path: {}".format(file_path), level="DEBUG")
496
506
  log("File result: {}".format(file_result), level="DEBUG")
497
507
 
498
- try:
499
- # Unpack the tuple to get status and message
500
- status, message = file_result
501
- except ValueError as e:
502
- file_result_length = len(file_result) if hasattr(file_result, '__len__') else 'Unknown'
503
- error_msg = 'Too many values to unpack.' if 'too many values to unpack' in str(e) else \
504
- 'Not enough values to unpack.' if 'not enough values to unpack' in str(e) else \
505
- 'Value unpacking error.'
506
- log("ValueError: {} for file_result: {} (Length: {})".format(error_msg, file_result, file_result_length), level="ERROR")
507
- continue
508
- except Exception as e:
509
- tb = traceback.format_exc()
510
- log("Unexpected error: {}. Traceback: {}".format(e, tb), level="ERROR")
511
- continue
512
-
513
- log("Status: {}, Message: {}".format(status, message), level="DEBUG")
514
-
508
+ # Ensure endpoint bucket exists even if result shape is unexpected
515
509
  if endpoint not in receipt_data:
516
510
  receipt_data[endpoint] = {
517
511
  "patients": [],
518
512
  "date_of_submission": datetime.now().strftime("%Y-%m-%d %H:%M:%S")
519
513
  }
520
514
 
515
+ # Normalize result tuple shape; on unexpected shape, degrade to (False, stringified)
516
+ try:
517
+ status, message = file_result
518
+ except Exception:
519
+ status = False
520
+ try:
521
+ message = str(file_result)
522
+ except Exception:
523
+ message = "Unknown result"
524
+
525
+ log("Status: {}, Message: {}".format(status, message), level="DEBUG")
526
+
521
527
  # Parse patient details and add the result status and message
522
528
  patient_data, _ = parse_837p_file(file_path)
523
529
  for patient in patient_data:
MediLink/__init__.py CHANGED
@@ -22,7 +22,7 @@ Smart Import Integration:
22
22
  datamgmt = get_components('medilink_datamgmt')
23
23
  """
24
24
 
25
- __version__ = "0.251023.0"
25
+ __version__ = "0.251023.1"
26
26
  __author__ = "Daniel Vidaud"
27
27
  __email__ = "daniel@personalizedtransformation.com"
28
28
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: medicafe
3
- Version: 0.251023.0
3
+ Version: 0.251023.1
4
4
  Summary: MediCafe
5
5
  Home-page: https://github.com/katanada2/MediCafe
6
6
  Author: Daniel Vidaud
@@ -12,7 +12,7 @@ MediBot/MediBot_dataformat_library.py,sha256=D46fdPtxcgfWTzaLBtSvjtozzZBNqNiODgu
12
12
  MediBot/MediBot_debug.bat,sha256=F5Lfi3nFEEo4Ddx9EbX94u3fNAMgzMp3wsn-ULyASTM,6017
13
13
  MediBot/MediBot_docx_decoder.py,sha256=9BSjV-kB90VHnqfL_5iX4zl5u0HcHvHuL7YNfx3gXpQ,33143
14
14
  MediBot/MediBot_smart_import.py,sha256=Emvz7NwemHGCHvG5kZcUyXMcCheidbGKaPfOTg-YCEs,6684
15
- MediBot/__init__.py,sha256=OA4iq1l1csk8UI4eVsZd898vRTMeErqvXDoXkAHrvE4,3192
15
+ MediBot/__init__.py,sha256=7lelp32bmS8KzVwTwqzyx51MJ8n_H2bwZzh5BunNq1I,3192
16
16
  MediBot/clear_cache.bat,sha256=F6-VhETWw6xDdGWG2wUqvtXjCl3lY4sSUFqF90bM8-8,1860
17
17
  MediBot/crash_diagnostic.bat,sha256=j8kUtyBg6NOWbXpeFuEqIRHOkVzgUrLOqO3FBMfNxTo,9268
18
18
  MediBot/f_drive_diagnostic.bat,sha256=4572hZaiwZ5wVAarPcZJQxkOSTwAdDuT_X914noARak,6878
@@ -22,7 +22,7 @@ MediBot/process_csvs.bat,sha256=3tI7h1z9eRj8rUUL4wJ7dy-Qrak20lRmpAPtGbUMbVQ,3489
22
22
  MediBot/update_json.py,sha256=vvUF4mKCuaVly8MmoadDO59M231fCIInc0KI1EtDtPA,3704
23
23
  MediBot/update_medicafe.py,sha256=G1lyvVOHYuho1d-TJQNN6qaB4HBWaJ2PpXqemBoPlRQ,17937
24
24
  MediCafe/MediLink_ConfigLoader.py,sha256=NoLb2YiJwlkrRYCt2PHvcFJ7yTIRWQCrsvkZIJWreM4,11141
25
- MediCafe/__init__.py,sha256=mNGfJnmP3CEIKZcHPJxjdvsXUodTUGR4eoKGOKdotlk,5721
25
+ MediCafe/__init__.py,sha256=-ViHo61nOxiFOpT0E-Scv2DUmAxY2zp9BJQA5eryfM8,5721
26
26
  MediCafe/__main__.py,sha256=mRNyk3D9Ilnu2XhgVI_rut7r5Ro7UIKtwV871giAHI8,12992
27
27
  MediCafe/api_core.py,sha256=pkRh8oT3x1wWfdw7on0J4QQo2Bnb2IjYTPX0ONiz4Wc,91530
28
28
  MediCafe/api_factory.py,sha256=I5AeJoyu6m7oCrjc2OvVvO_4KSBRutTsR1riiWhTZV0,12086
@@ -58,20 +58,20 @@ MediLink/MediLink_PatientProcessor.py,sha256=9r2w4p45d30Tn0kbXL3j5574MYOehP83tDi
58
58
  MediLink/MediLink_Scan.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
59
  MediLink/MediLink_Scheduler.py,sha256=UJvxhDvHraqra2_TlQVlGeh5jRFrrfK6nCVUHnKOEMY,38
60
60
  MediLink/MediLink_UI.py,sha256=ZEJ14EGh7pDu1XjAdORDFiay4UtTsLNWwNSJ0prHFWg,10381
61
- MediLink/MediLink_Up.py,sha256=uB6J63hWOn8Ot8iGtc2_OgcejNWVgnX7Se_e_UWBNho,38082
61
+ MediLink/MediLink_Up.py,sha256=rzhzmWa4F_el37bDlSauFl_08m-dWz2xiflf-vVRkwg,38453
62
62
  MediLink/MediLink_insurance_utils.py,sha256=g741Fj2K26cMy0JX5d_XavMw9LgkK6hjaUJYfysT7t8,9301
63
63
  MediLink/MediLink_main.py,sha256=jWxh1ydNwBi07T4Aw9CRalBporvxpd1Akjfk_vbDuWY,25548
64
64
  MediLink/MediLink_smart_import.py,sha256=ZUXvAkIA2Pk2uuyLZazKfKK8YGdkZt1VAeZo_ZSUyxk,9942
65
65
  MediLink/Soumit_api.py,sha256=5JfOecK98ZC6NpZklZW2AkOzkjvrbYxpJpZNH3rFxDw,497
66
- MediLink/__init__.py,sha256=81O-jPStZK-DliXuD5hVRTFnTRmEisCKhRyt624iY-w,3888
66
+ MediLink/__init__.py,sha256=qhMeErnGuFkRswJ7IS3FsN4lRL_iqoK58Rmd6acWPl0,3888
67
67
  MediLink/gmail_http_utils.py,sha256=mYChIhkbA1oJaAJA-nY3XgHQY-H7zvZJUZPhUagomsI,4047
68
68
  MediLink/gmail_oauth_utils.py,sha256=Ugr-DEqs4_RddRMSCJ_dbgA3TVeaxpbAor-dktcTIgY,3713
69
69
  MediLink/openssl.cnf,sha256=76VdcGCykf0Typyiv8Wd1mMVKixrQ5RraG6HnfKFqTo,887
70
70
  MediLink/test.py,sha256=DM_E8gEbhbVfTAm3wTMiNnK2GCD1e5eH6gwTk89QIc4,3116
71
71
  MediLink/webapp.html,sha256=DwDYjVvluGJ7eDdvEogfKN4t24ZJRoIUuSBfCYCL-3w,21252
72
- medicafe-0.251023.0.dist-info/LICENSE,sha256=65lb-vVujdQK7uMH3RRJSMwUW-WMrMEsc5sOaUn2xUk,1096
73
- medicafe-0.251023.0.dist-info/METADATA,sha256=c11fABULAMMKESxoarV2B2SKsuCzkAtOMiElbS7GLxg,3414
74
- medicafe-0.251023.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
75
- medicafe-0.251023.0.dist-info/entry_points.txt,sha256=m3RBUBjr-xRwEkKJ5W4a7NlqHZP_1rllGtjZnrRqKe8,52
76
- medicafe-0.251023.0.dist-info/top_level.txt,sha256=U6-WBJ9RCEjyIs0BlzbQq_PwedCp_IV9n1616NNV5zA,26
77
- medicafe-0.251023.0.dist-info/RECORD,,
72
+ medicafe-0.251023.1.dist-info/LICENSE,sha256=65lb-vVujdQK7uMH3RRJSMwUW-WMrMEsc5sOaUn2xUk,1096
73
+ medicafe-0.251023.1.dist-info/METADATA,sha256=uuwTHoA-bNy4nKZav8pP1lpdbxvlv59hCewgt_KpX0M,3414
74
+ medicafe-0.251023.1.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
75
+ medicafe-0.251023.1.dist-info/entry_points.txt,sha256=m3RBUBjr-xRwEkKJ5W4a7NlqHZP_1rllGtjZnrRqKe8,52
76
+ medicafe-0.251023.1.dist-info/top_level.txt,sha256=U6-WBJ9RCEjyIs0BlzbQq_PwedCp_IV9n1616NNV5zA,26
77
+ medicafe-0.251023.1.dist-info/RECORD,,