Advertisement
shadiff

views2

Apr 26th, 2023
22
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.34 KB | None | 0 0
  1. from requests.auth import HTTPBasicAuth
  2. from django.conf import settings
  3. from customers.models import Packages
  4. import datetime
  5. import string
  6. import random
  7. import requests
  8.  
  9. class Util:
  10. @staticmethod
  11. def getEventLog(trackingnumber):
  12. ItemCode = trackingnumber
  13. timestamp = datetime.datetime.now()
  14. letters = string.ascii_lowercase
  15. result_str = ''.join(random.choice(letters) for i in range(6))
  16. Nonce = f"{result_str}{timestamp}"
  17.  
  18. payload = {
  19. "Nonce": Nonce,
  20. "ItemCode": ItemCode
  21. }
  22. apiURL = 'http://192.168.202.136:1234/search-pg-item'
  23. data = requests.post(apiURL, data=payload)
  24. json_data = data.json()
  25.  
  26. return json_data
  27.  
  28.  
  29. @staticmethod
  30. def searchPG(trackingnumber):
  31. json_data = Util.getEventLog(trackingnumber)
  32. result_res = json_data['Result']
  33. if result_res == None:
  34. data = {
  35. "status": 404,
  36. "message": "Item no available"
  37. }
  38. return data
  39.  
  40. held = True
  41. lastest_res = result_res[0]
  42. if lastest_res['Event'] == "Delivered":
  43. data = {
  44. "status": 201,
  45. "branch": lastest_res['EventBranch'],
  46. "message": "Item Delivered",
  47. "customs": 0,
  48. }
  49. return data
  50. for result in result_res:
  51. if result['Event'] == 'Delivered':
  52. branch = result['EventBranch']
  53. data = {
  54. "status": 201,
  55. "branch": result['EventBranch'],
  56. "message": "Item is ready for pick-up",
  57. }
  58. return data
  59.  
  60. elif result['Event'] == 'With Customs':
  61. #get the EVENT BRANCH
  62. branch = result['EventBranch']
  63. message = f"You Item is held with the customs, Please come go {branch}, to clear your Item"
  64. data = {
  65. "status": 203,
  66. "customs": 1,
  67. "branch": result['EventBranch'],
  68. "message": message,
  69. }
  70. return data
  71.  
  72. elif result['Event'] == 'Received at office of delivery':
  73. branch = result['EventBranch']
  74. data = {
  75. "status": 200,
  76. "branch": result['EventBranch'],
  77. "customs": 0,
  78. "message": "Item is ready for pick-up",
  79. }
  80. return data
  81. elif result['Event'] == 'Generated second reminder':
  82. branch = result['EventBranch']
  83. data = {
  84. "status": 200,
  85. "branch": result['EventBranch'],
  86. "customs": 0,
  87. "message": "Item is ready for pick-up",
  88. }
  89. return data
  90.  
  91. @staticmethod
  92. def getPackages():
  93. packages_list = []
  94. packages = Packages.objects.all()
  95. for package in packages:
  96. package_obj = {
  97. "title": package.name,
  98. "id": package.id,
  99. "desc": package.description
  100. }
  101.  
  102. packages_list.append(package_obj)
  103. return packages_list
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement