Files changed (1) hide show
  1. app.py +9 -26
app.py CHANGED
@@ -67,37 +67,20 @@ def fetch_vendor_logs_from_salesforce():
67
  result = sf.query_all(query)
68
  logs = []
69
  for record in result['records']:
70
- # Format dates and handle potential future dates
71
- work_completion_date = record['Work_Completion_Date__c'] or "N/A"
72
- actual_completion_date = record['Actual_Completion_Date__c'] or "N/A"
73
- delay_days = int(record['Delay_Days__c'] or 0)
74
-
75
- # Validate dates relative to current date (May 17, 2025)
76
- current_date = datetime(2025, 5, 17).date()
77
- if work_completion_date != "N/A":
78
- work_date = datetime.strptime(work_completion_date, '%Y-%m-%d').date()
79
- if work_date > current_date:
80
- logger.warning(f"Work completion date {work_completion_date} is in the future for Vendor Log ID {record['Id']}")
81
- if actual_completion_date != "N/A":
82
- actual_date = datetime.strptime(actual_completion_date, '%Y-%m-%d').date()
83
- if actual_date > current_date:
84
- logger.warning(f"Actual completion date {actual_completion_date} is in the future for Vendor Log ID {record['Id']}")
85
-
86
- # Format workDetails and qualityReport
87
- work_details = f"{record['Work_Completion_Percentage__c'] or 0.0}% completed"
88
- quality_report = f"{record['Quality_Percentage__c'] or 0.0}% quality"
89
-
90
  log = VendorLog(
91
  vendorLogId=record['Id'] or "Unknown",
92
  vendorId=record['Name'] or "Unknown",
93
- vendorRecordId=record['Vendor__c'] or "Unknown",
94
- workDetails=work_details,
95
- qualityReport=quality_report,
96
  incidentLog=record['Incident_Severity__c'] or "None",
97
- workCompletionDate=work_completion_date,
98
- actualCompletionDate=actual_completion_date,
99
  vendorLogName=record['Name'] or "Unknown",
100
- delayDays=delay_days,
101
  project=record['Project__c'] or "Unknown"
102
  )
103
  logs.append(log)
 
67
  result = sf.query_all(query)
68
  logs = []
69
  for record in result['records']:
70
+ if not record['Vendor__c']:
71
+ logger.warning(f"Skipping Vendor_Log__c record with ID {record['Id']} due to missing Vendor__c")
72
+ continue
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
73
  log = VendorLog(
74
  vendorLogId=record['Id'] or "Unknown",
75
  vendorId=record['Name'] or "Unknown",
76
+ vendorRecordId=record['Vendor__c'],
77
+ workDetails=str(record['Work_Completion_Percentage__c'] or "0.0"),
78
+ qualityReport=str(record['Quality_Percentage__c'] or "0.0"),
79
  incidentLog=record['Incident_Severity__c'] or "None",
80
+ workCompletionDate=record['Work_Completion_Date__c'] or "N/A",
81
+ actualCompletionDate=record['Actual_Completion_Date__c'] or "N/A",
82
  vendorLogName=record['Name'] or "Unknown",
83
+ delayDays=int(record['Delay_Days__c'] or 0),
84
  project=record['Project__c'] or "Unknown"
85
  )
86
  logs.append(log)