Added emails and project ids in config file

This commit is contained in:
ashutosh.nehete 2025-10-06 14:57:40 +05:30
parent a0c83caa14
commit cc2a168a47
2 changed files with 27 additions and 18 deletions

View File

@ -4,7 +4,7 @@
"PORT": 587, "PORT": 587,
"SENDER_EMAIL": "marcoioitsoft@gmail.com", "SENDER_EMAIL": "marcoioitsoft@gmail.com",
"SENDER_PASSWORD": "qrtq wfuj hwpp fhqr", "SENDER_PASSWORD": "qrtq wfuj hwpp fhqr",
"RECIPIENT_EMAILS": "ashutosh.nehete@marcoaiot.com,vikas@marcoaiot.com" "RECIPIENT_EMAILS": "ashutosh.nehete@marcoaiot.com,vikas@marcoaiot.com,amol@marcosolutions.co.in,vinod@marcofire.in,umesh@marcoaiot.com"
}, },
"API": { "API": {
"BASE_URL": "https://stageapi.marcoaiot.com/api", "BASE_URL": "https://stageapi.marcoaiot.com/api",
@ -21,6 +21,6 @@
"COLLECTION_NAME": "ProjectReportMail" "COLLECTION_NAME": "ProjectReportMail"
}, },
"UNIQUE_IDENTIFIER":{ "UNIQUE_IDENTIFIER":{
"PROJECT_IDS":"2618eb89-2823-11f0-9d9e-bc241163f504" "PROJECT_IDS":"2618eb89-2823-11f0-9d9e-bc241163f504,08dda31f-25c6-4ad7-8252-14a64ba96fce,08dda508-e7df-4e90-86a5-4c2d30e32069,08dda7db-1f08-4db4-863a-c494201a1156,08dda8cd-0522-47d8-82ef-407276490b68,08dda8cd-8dc2-4e0a-8638-f16f63e16afe,2618f2ef-2823-11f0-9d9e-bc241163f504"
} }
} }

View File

@ -49,7 +49,7 @@ def fetch_Project_report(project_id):
response = requests.get(f"{BASE_URL}/market/get/project/report/{project_id}", headers=headers) response = requests.get(f"{BASE_URL}/market/get/project/report/{project_id}", headers=headers)
response.raise_for_status() response.raise_for_status()
data = response.json()["data"] data = response.json()["data"]
print("Project report fetched successfully.") print(f"Project report for project \"{data["projectName"]}\" fetched successfully.")
return data return data
except Exception as e: except Exception as e:
print(f"Select tenant error: {e}") print(f"Select tenant error: {e}")
@ -69,26 +69,39 @@ if __name__ == "__main__":
for project_id in project_ids: for project_id in project_ids:
data = fetch_Project_report(project_id) data = fetch_Project_report(project_id)
attendance_percentage = get_percentage(data["todaysAttendances"], data["totalEmployees"], 2) if data["attendancePercentage"]:
task_percentage = get_percentage(data["totalCompletedTask"], data["totalPlannedTask"], 2) attendance_percentage = data["attendancePercentage"]
print("from API")
else:
attendance_percentage = get_percentage(data["todaysAttendances"], data["totalEmployees"], 2)
if data["taskPercentage"]:
task_percentage = data["taskPercentage"]
print("from API")
else:
task_percentage = get_percentage(data["totalCompletedTask"], data["totalPlannedTask"], 2)
web_url = f"{WEB_BASE_URL}/auth/login" web_url = f"{WEB_BASE_URL}/auth/login"
dt = datetime.datetime.strptime(data["date"], "%Y-%m-%dT%H:%M:%SZ")
api_formatted_date = dt.strftime("%d-%b-%Y")
context = { context = {
"webUrl":web_url, "webUrl":web_url,
"date": data["date"], "date": api_formatted_date,
"projectName": data["projectName"], "projectName": data["projectName"],
"timeStamp": data["timeStamp"], "timeStamp": data["timeStamp"],
"todaysAttendances": data["todaysAttendances"], "todaysAttendances": data["todaysAttendances"],
"totalEmployees": data["totalEmployees"], "totalEmployees": data["totalEmployees"],
"attendancePercentage":data["attendancePercentage"], "attendancePercentage":attendance_percentage,
"taskPercentage":data["taskPercentage"], "taskPercentage":task_percentage,
"regularizationPending": data["regularizationPending"], "regularizationPending": data["regularizationPending"],
"checkoutPending": data["checkoutPending"], "checkoutPending": data["checkoutPending"],
"totalPlannedWork": data["totalPlannedWork"], "totalPlannedWork": round(data["totalPlannedWork"],2),
"totalCompletedWork": data["totalCompletedWork"], "totalCompletedWork": round(data["totalCompletedWork"],2),
"totalPlannedTask": data["totalPlannedTask"], "totalPlannedTask": round(data["totalPlannedTask"],2),
"totalCompletedTask": data["totalCompletedTask"], "totalCompletedTask": round(data["totalCompletedTask"],2),
"completionStatus": data["completionStatus"], "completionStatus": round(data["completionStatus"],2),
"reportPending": data["reportPending"], "reportPending": data["reportPending"],
"todaysAssignTasks": data["todaysAssignTasks"], "todaysAssignTasks": data["todaysAssignTasks"],
"teamOnSite": data["teamOnSite"], "teamOnSite": data["teamOnSite"],
@ -100,12 +113,8 @@ if __name__ == "__main__":
project_name = data["projectName"] project_name = data["projectName"]
html = render_template_from_file(template_name,context) html = render_template_from_file(template_name,context)
# print(html)
today = datetime.datetime.now()
formatted = today.strftime("%d-%b-%Y")
msg = EmailMessage() msg = EmailMessage()
msg["Subject"] = f"DPR - {formatted} - {project_name}" msg["Subject"] = f"DPR - {api_formatted_date} - {project_name}"
msg["From"] = SENDER_EMAIL msg["From"] = SENDER_EMAIL
msg["To"] = RECIPIENT_EMAILS msg["To"] = RECIPIENT_EMAILS
msg.set_content("HTML version attached as alternative.") msg.set_content("HTML version attached as alternative.")