medicafe 0.250725.5__tar.gz → 0.250725.7__tar.gz

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.
Files changed (59) hide show
  1. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/MediBot.py +4 -4
  2. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/MediBot_UI.py +49 -11
  3. {medicafe-0.250725.5 → medicafe-0.250725.7}/PKG-INFO +1 -1
  4. {medicafe-0.250725.5 → medicafe-0.250725.7}/medicafe.egg-info/PKG-INFO +1 -1
  5. {medicafe-0.250725.5 → medicafe-0.250725.7}/setup.py +1 -1
  6. {medicafe-0.250725.5 → medicafe-0.250725.7}/LICENSE +0 -0
  7. {medicafe-0.250725.5 → medicafe-0.250725.7}/MANIFEST.in +0 -0
  8. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/MediBot.bat +0 -0
  9. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/MediBot_Charges.py +0 -0
  10. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/MediBot_Crosswalk_Library.py +0 -0
  11. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/MediBot_Post.py +0 -0
  12. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/MediBot_Preprocessor.py +0 -0
  13. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/MediBot_Preprocessor_lib.py +0 -0
  14. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/MediBot_dataformat_library.py +0 -0
  15. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/MediBot_docx_decoder.py +0 -0
  16. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/PDF_to_CSV_Cleaner.py +0 -0
  17. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/__init__.py +0 -0
  18. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/update_json.py +0 -0
  19. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediBot/update_medicafe.py +0 -0
  20. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink.py +0 -0
  21. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_837p_cob_library.py +0 -0
  22. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_837p_encoder.py +0 -0
  23. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_837p_encoder_library.py +0 -0
  24. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_837p_utilities.py +0 -0
  25. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_API_Generator.py +0 -0
  26. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_API_v2.py +0 -0
  27. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_API_v3.py +0 -0
  28. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_APIs.py +0 -0
  29. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_Azure.py +0 -0
  30. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_ClaimStatus.py +0 -0
  31. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_ConfigLoader.py +0 -0
  32. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_DataMgmt.py +0 -0
  33. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_Decoder.py +0 -0
  34. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_Deductible.py +0 -0
  35. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_Deductible_Validator.py +0 -0
  36. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_Down.py +0 -0
  37. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_Gmail.py +0 -0
  38. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_GraphQL.py +0 -0
  39. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_Mailer.py +0 -0
  40. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_Parser.py +0 -0
  41. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_Scan.py +0 -0
  42. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_Scheduler.py +0 -0
  43. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_UI.py +0 -0
  44. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_Up.py +0 -0
  45. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/MediLink_batch.bat +0 -0
  46. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/Soumit_api.py +0 -0
  47. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/__init__.py +0 -0
  48. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/openssl.cnf +0 -0
  49. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/test.py +0 -0
  50. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/test_cob_library.py +0 -0
  51. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/test_validation.py +0 -0
  52. {medicafe-0.250725.5 → medicafe-0.250725.7}/MediLink/webapp.html +0 -0
  53. {medicafe-0.250725.5 → medicafe-0.250725.7}/README.md +0 -0
  54. {medicafe-0.250725.5 → medicafe-0.250725.7}/medicafe.egg-info/SOURCES.txt +0 -0
  55. {medicafe-0.250725.5 → medicafe-0.250725.7}/medicafe.egg-info/dependency_links.txt +0 -0
  56. {medicafe-0.250725.5 → medicafe-0.250725.7}/medicafe.egg-info/not-zip-safe +0 -0
  57. {medicafe-0.250725.5 → medicafe-0.250725.7}/medicafe.egg-info/requires.txt +0 -0
  58. {medicafe-0.250725.5 → medicafe-0.250725.7}/medicafe.egg-info/top_level.txt +0 -0
  59. {medicafe-0.250725.5 → medicafe-0.250725.7}/setup.cfg +0 -0
@@ -433,8 +433,8 @@ if __name__ == "__main__":
433
433
  # Flush console input buffer to remove any stray CR/LF
434
434
  flush_console_input_buffer()
435
435
 
436
- # Use sys.stdin.readline() for more reliable input on Windows XP
437
- proceed = sys.stdin.readline().lower().strip() in ['yes', 'y']
436
+ # Use input() for more reliable input on Windows XP
437
+ proceed = input().lower().strip() in ['yes', 'y']
438
438
  else:
439
439
  print("\nDo you want to proceed with the {} remaining patient(s)? (yes/no): ".format(len(patients_to_process)), end='', flush=True)
440
440
  # Force flush and wait for Windows XP console buffer synchronization
@@ -444,8 +444,8 @@ if __name__ == "__main__":
444
444
  # Flush console input buffer to remove any stray CR/LF
445
445
  flush_console_input_buffer()
446
446
 
447
- # Use sys.stdin.readline() for more reliable input on Windows XP
448
- proceed = sys.stdin.readline().lower().strip() in ['yes', 'y']
447
+ # Use input() for more reliable input on Windows XP
448
+ proceed = input().lower().strip() in ['yes', 'y']
449
449
 
450
450
  # TODO: Here is where we need to add the step where we move to MediBot_Charges.
451
451
  # The return is an enriched dataset to be picked up by MediBot which means we need to return:
@@ -27,15 +27,38 @@ def flush_console_input_buffer():
27
27
  if sys.platform != "win32":
28
28
  return # no-op on non-Windows
29
29
 
30
+ print("DEBUG: Starting flush_console_input_buffer()")
31
+
32
+ # Check what's in the buffer before flushing
33
+ chars_in_buffer = []
34
+ while msvcrt.kbhit():
35
+ ch = msvcrt.getch()
36
+ chars_in_buffer.append(ch)
37
+
38
+ if chars_in_buffer:
39
+ print("DEBUG: Found {} chars in buffer before flush: {}".format(len(chars_in_buffer), chars_in_buffer))
40
+ else:
41
+ print("DEBUG: No chars found in buffer before flush")
42
+
30
43
  try:
31
44
  kernel32 = ctypes.WinDLL('kernel32', use_last_error=True)
32
45
  STD_INPUT_HANDLE = -10
33
46
  h_stdin = kernel32.GetStdHandle(STD_INPUT_HANDLE)
34
- kernel32.FlushConsoleInputBuffer(h_stdin)
35
- except Exception:
47
+ result = kernel32.FlushConsoleInputBuffer(h_stdin)
48
+ print("DEBUG: FlushConsoleInputBuffer API call result: {}".format(result))
49
+ except Exception as e:
50
+ print("DEBUG: FlushConsoleInputBuffer API failed: {}".format(e))
36
51
  # Fallback: drain any leading newlines manually
52
+ fallback_chars = []
37
53
  while msvcrt.kbhit():
38
- msvcrt.getch()
54
+ ch = msvcrt.getch()
55
+ fallback_chars.append(ch)
56
+ if fallback_chars:
57
+ print("DEBUG: Fallback removed {} chars: {}".format(len(fallback_chars), fallback_chars))
58
+ else:
59
+ print("DEBUG: Fallback found no chars to remove")
60
+
61
+ print("DEBUG: flush_console_input_buffer() completed")
39
62
 
40
63
  def discard_leading_blank():
41
64
  """
@@ -185,8 +208,8 @@ def display_patient_selection_menu(csv_data, reverse_mapping, proceed_as_medicar
185
208
  # Flush console input buffer to remove any stray CR/LF
186
209
  flush_console_input_buffer()
187
210
 
188
- # Use sys.stdin.readline() for more reliable input on Windows XP
189
- proceed = sys.stdin.readline().lower().strip() in ['yes', 'y']
211
+ # Use input() for more reliable input on Windows XP
212
+ proceed = input().lower().strip() in ['yes', 'y']
190
213
 
191
214
  if not proceed:
192
215
  display_menu_header("Patient Selection for Today's Data Entry")
@@ -203,8 +226,8 @@ def display_patient_selection_menu(csv_data, reverse_mapping, proceed_as_medicar
203
226
  # Flush console input buffer to remove any stray CR/LF
204
227
  flush_console_input_buffer()
205
228
 
206
- # Use sys.stdin.readline() for more reliable input on Windows XP
207
- selection = sys.stdin.readline().strip()
229
+ # Use input() for more reliable input on Windows XP
230
+ selection = input().strip()
208
231
  if not selection:
209
232
  print("Invalid entry. Please provide at least one number.")
210
233
  continue
@@ -286,8 +309,8 @@ def handle_user_interaction(interaction_mode, error_message):
286
309
  # Flush console input buffer to remove any stray CR/LF
287
310
  flush_console_input_buffer()
288
311
 
289
- # Use sys.stdin.readline() for more reliable input on Windows XP
290
- choice = sys.stdin.readline().strip()
312
+ # Use input() for more reliable input on Windows XP
313
+ choice = input().strip()
291
314
 
292
315
  if choice == '1':
293
316
  print("Selected: 'Retry last entry'. Please press 'F12' to continue.")
@@ -328,8 +351,23 @@ def user_interaction(csv_data, interaction_mode, error_message, reverse_mapping)
328
351
  sys.stdout.flush()
329
352
  time.sleep(0.2) # Increased delay for Windows XP
330
353
 
331
- # Use sys.stdin.readline() for more reliable input on Windows XP
332
- response = sys.stdin.readline().lower().strip()
354
+ print("DEBUG: About to call input() - waiting for user...")
355
+ # Use input() for more reliable input on Windows XP
356
+ response = input().lower().strip()
357
+
358
+ # Debug: Print what we actually got
359
+ print("DEBUG: Got response: '{}' (length: {})".format(response, len(response)))
360
+ print("DEBUG: Response type: {}, repr: {}".format(type(response), repr(response)))
361
+
362
+ # If we got an empty response, it means there was a stray newline
363
+ # Let's try one more time after clearing the buffer again
364
+ if not response:
365
+ print("Empty response detected - clearing buffer and trying again...")
366
+ print("DEBUG: About to flush buffer again...")
367
+ flush_console_input_buffer()
368
+ print("DEBUG: About to call input() for second attempt...")
369
+ response = input().lower().strip()
370
+ print("DEBUG: Second attempt got: '{}' (length: {})".format(response, len(response)))
333
371
 
334
372
  if response:
335
373
  if response in ['yes', 'y']:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: medicafe
3
- Version: 0.250725.5
3
+ Version: 0.250725.7
4
4
  Summary: MediCafe
5
5
  Home-page: https://github.com/katanada2
6
6
  Author: Daniel Vidaud
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: medicafe
3
- Version: 0.250725.5
3
+ Version: 0.250725.7
4
4
  Summary: MediCafe
5
5
  Home-page: https://github.com/katanada2
6
6
  Author: Daniel Vidaud
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name='medicafe',
5
- version="0.250725.5",
5
+ version="0.250725.7",
6
6
  description='MediCafe',
7
7
  long_description="""
8
8
  # Project Overview: MediCafe
File without changes
File without changes
File without changes
File without changes