Spaces:
Sleeping
Sleeping
Update app.py
Browse files
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 |
-
|
| 71 |
-
|
| 72 |
-
|
| 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']
|
| 94 |
-
workDetails=
|
| 95 |
-
qualityReport=
|
| 96 |
incidentLog=record['Incident_Severity__c'] or "None",
|
| 97 |
-
workCompletionDate=
|
| 98 |
-
actualCompletionDate=
|
| 99 |
vendorLogName=record['Name'] or "Unknown",
|
| 100 |
-
delayDays=
|
| 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)
|