Finaly fix auto update school time table and fix API for school time table!

This commit is contained in:
Stefano Assenzo 2022-12-27 17:19:04 +00:00
parent f9b9de9a3d
commit 74d1ef52c6
2 changed files with 130 additions and 47 deletions

View File

@ -13,6 +13,9 @@ mongo_url = "mongodb+srv://elci:" + urllib.parse.quote_plus(PASSWORD_MONGODB) +
client = pymongo.MongoClient(mongo_url) #Connect to MongoDB
database = client["website-class"] #Database name
collection = database["school-time-table"]
collection_archive = database["archive-school-time-table"]
x = collection.delete_many({})
#using read_excel() method to read our excel file and storing the same in the variable named "df "
workbook = xl.load_workbook(filename="test.xlsx")
@ -25,14 +28,14 @@ month = str(current_time.month)
year = str(current_time.year)
hour = str(current_time.hour)
minute = str(current_time.minute)
second = str(current_time.second)
long_date = day + "-" + month + "-" + year + " " + hour + ":" + minute + ":" + second
long_date = day + "-" + month + "-" + year + " " + hour + ":" + minute
mydict = {
"Date": long_date,
"School Subject": [],
"Teacher": [],
}
x = collection.insert_one(mydict)
x = collection_archive.insert_one(mydict)
for row in range (1, 100):
# column B ~ column F
@ -48,30 +51,64 @@ for row in range (1, 100):
array_username = find_document_username[0]["_id"]
collection.update_one(
{ "_id": ObjectId(array_username)},
{
"$push": { "School Subject": "null" }
})
{
"$push": { "School Subject": "null" }
}
)
collection_archive.update_one(
{ "_id": ObjectId(array_username)},
{
"$push": { "School Subject": str(remove_things_in_front) }
}
)
else:
remove_things_in_front = school_subject.split(' ', 1)[1]
find_document_username = list(collection.find({}, {"Date": long_date}))
array_username = find_document_username[0]["_id"]
collection.update_one(
{ "_id": ObjectId(array_username)},
{
"$push": { "School Subject": str(remove_things_in_front) }
})
{
"$push": { "School Subject": str(remove_things_in_front) }
}
)
collection_archive.update_one(
{ "_id": ObjectId(array_username)},
{
"$push": { "School Subject": str(remove_things_in_front) }
}
)
#Search teacher
for i in range(4, 80):
teacher = ws.cell(row=i, column=column+1).value
column = column
if teacher == 0:
pass
find_document_username = list(collection.find({}, {"Date": long_date}))
array_username = find_document_username[0]["_id"]
collection.update_one(
{ "_id": ObjectId(array_username)},
{
"$push": { "Teacher": "null" }
}
)
collection_archive.update_one(
{ "_id": ObjectId(array_username)},
{
"$push": { "Teacher": teacher }
}
)
else:
find_document_username = list(collection.find({}, {"Date": long_date}))
array_username = find_document_username[0]["_id"]
collection.update_one(
{ "_id": ObjectId(array_username)},
{
"$push": { "Teacher": teacher }
})
{
"$push": { "Teacher": teacher }
}
)
collection_archive.update_one(
{ "_id": ObjectId(array_username)},
{
"$push": { "Teacher": teacher }
}
)

View File

@ -26,53 +26,99 @@ def api():
year = str(current_time.year)
hour = str(current_time.hour)
minute = str(current_time.minute)
long_date = day + "-" + month + "-" + year + hour + ":" + minute
collection_find_username = list(collection.find({}, {"Date": long_date ,"School Subject": 1,}))
array_username = collection_find_username[0]['School Subject']
long_date = day + "-" + month + "-" + year + " " + hour + ":" + minute
#Search school subject
collection_find_schoolsubject = list(collection.find({}, {"Date": long_date ,"School Subject": 1,}))
array_schoolsubject = collection_find_schoolsubject[0]['School Subject']
#Search teacher
collection_find_teacher = list(collection.find({}, {"Date": long_date ,"Teacher": 1,}))
array_teacher = collection_find_teacher[0]['Teacher']
test = {
"subject" : {
"monday": {
"Subject 1": array_username[0],
"Subject 2": array_username[1],
"Subject 3": array_username[2],
"Subject 4": array_username[3],
"Subject 5": array_username[4],
"Subject 6": array_username[5],
"Subject 1": array_schoolsubject[0],
"Subject 2": array_schoolsubject[1],
"Subject 3": array_schoolsubject[2],
"Subject 4": array_schoolsubject[3],
"Subject 5": array_schoolsubject[4],
"Subject 6": array_schoolsubject[5],
},
"tuesday": {
"Subject 1": array_username[14],
"Subject 2": array_username[15],
"Subject 3": array_username[16],
"Subject 4": array_username[17],
"Subject 5": array_username[18],
"Subject 6": array_username[19],
"Subject 1": array_schoolsubject[14],
"Subject 2": array_schoolsubject[15],
"Subject 3": array_schoolsubject[16],
"Subject 4": array_schoolsubject[17],
"Subject 5": array_schoolsubject[18],
"Subject 6": array_schoolsubject[19],
},
"wednesday": {
"Subject 1": array_username[12],
"Subject 2": array_username[13],
"Subject 3": array_username[14],
"Subject 4": array_username[15],
"Subject 5": array_username[16],
"Subject 6": array_username[17],
"Subject 1": array_schoolsubject[12],
"Subject 2": array_schoolsubject[13],
"Subject 3": array_schoolsubject[14],
"Subject 4": array_schoolsubject[15],
"Subject 5": array_schoolsubject[16],
"Subject 6": array_schoolsubject[17],
},
"thursday": {
"Subject 1": array_username[28],
"Subject 2": array_username[29],
"Subject 3": array_username[30],
"Subject 4": array_username[31],
"Subject 5": array_username[32],
"Subject 6": array_username[33],
"Subject 1": array_schoolsubject[28],
"Subject 2": array_schoolsubject[29],
"Subject 3": array_schoolsubject[30],
"Subject 4": array_schoolsubject[31],
"Subject 5": array_schoolsubject[32],
"Subject 6": array_schoolsubject[33],
},
"friday": {
"Subject 1": array_username[42],
"Subject 2": array_username[43],
"Subject 3": array_username[44],
"Subject 4": array_username[45],
"Subject 5": array_username[46],
"Subject 6": array_username[47],
}
}
"Subject 1": array_schoolsubject[42],
"Subject 2": array_schoolsubject[43],
"Subject 3": array_schoolsubject[44],
"Subject 4": array_schoolsubject[45],
"Subject 5": array_schoolsubject[46],
"Subject 6": array_schoolsubject[47],
},
},
"teacher": {
"monday": {
"Teacher 1": array_teacher[0],
"Teacher 2": array_teacher[1],
"Teacher 3": array_teacher[2],
"Teacher 4": array_teacher[3],
"Teacher 5": array_teacher[4],
"Teacher 6": array_teacher[5],
},
"tuesday": {
"Teacher 1": array_teacher[14],
"Teacher 2": array_teacher[15],
"Teacher 3": array_teacher[16],
"Teacher 4": array_teacher[17],
"Teacher 5": array_teacher[18],
"Teacher 6": array_teacher[19],
},
"wednesday": {
"Teacher 1": array_teacher[28],
"Teacher 2": array_teacher[29],
"Teacher 3": array_teacher[30],
"Teacher 4": array_teacher[31],
"Teacher 5": array_teacher[32],
"Teacher 6": array_teacher[33],
},
"thursday": {
"Teacher 1": array_teacher[42],
"Teacher 2": array_teacher[43],
"Teacher 3": array_teacher[44],
"Teacher 4": array_teacher[45],
"Teacher 5": array_teacher[46],
"Teacher 6": array_teacher[47],
},
"friday": {
"Teacher 1": array_teacher[56],
"Teacher 2": array_teacher[57],
"Teacher 3": array_teacher[58],
"Teacher 4": array_teacher[59],
"Teacher 5": array_teacher[60],
"Teacher 6": array_teacher[61],
},
},
}
return jsonify(test)