VaneshDev commited on
Commit
1f6cdc7
·
verified ·
1 Parent(s): c1ab755

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -0
app.py CHANGED
@@ -59,6 +59,19 @@ project_choices = [
59
  ]
60
  ai_suggestion_choices = ["Move", "Repair", "Replace"] # Removed "Pause Rent"
61
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62
  def call_ai_model(usage, idle, freq, cost, last):
63
  try:
64
  usage = float(usage) if usage is not None and not np.isnan(usage) else 0.0
@@ -99,6 +112,9 @@ def process_equipment_utilization(equip, proj, use_h, idle_h, move_f, cost_h, la
99
  if not sf:
100
  raise ValueError("Salesforce connection is not initialized. Please check credentials and try again.")
101
 
 
 
 
102
  # Always run AI model to get suggestion, confidence, score
103
  ai_sug_generated, conf, score = call_ai_model(use_h, idle_h, move_f, cost_h, last_maint)
104
 
 
59
  ]
60
  ai_suggestion_choices = ["Move", "Repair", "Replace"] # Removed "Pause Rent"
61
 
62
+ def validate_date(last_maint):
63
+ try:
64
+ # Check if the provided date is in the future
65
+ if last_maint and last_maint != "N/A":
66
+ entered_date = datetime.datetime.strptime(last_maint, "%Y-%m-%d")
67
+ current_date = datetime.datetime.today()
68
+
69
+ if entered_date > current_date:
70
+ raise ValueError(f"Last Maintenance Date cannot be in the future. You entered: {last_maint}")
71
+ return last_maint
72
+ except ValueError as ve:
73
+ raise ValueError(f"Invalid date format for Last Maintenance. Please use YYYY-MM-DD. Error: {ve}")
74
+
75
  def call_ai_model(usage, idle, freq, cost, last):
76
  try:
77
  usage = float(usage) if usage is not None and not np.isnan(usage) else 0.0
 
112
  if not sf:
113
  raise ValueError("Salesforce connection is not initialized. Please check credentials and try again.")
114
 
115
+ # Validate the Last Maintenance date
116
+ last_maint = validate_date(last_maint)
117
+
118
  # Always run AI model to get suggestion, confidence, score
119
  ai_sug_generated, conf, score = call_ai_model(use_h, idle_h, move_f, cost_h, last_maint)
120