Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -43,7 +43,7 @@ def get_gsheet_client():
|
|
| 43 |
return client
|
| 44 |
|
| 45 |
# ===== Save to Google Sheets =====
|
| 46 |
-
def save_to_gsheet(name, student_id, major, prediction, sheet_name="Trang tính1"):
|
| 47 |
# Get the current date and time
|
| 48 |
now = datetime.now()
|
| 49 |
current_time = now.strftime("%Y-%m-%d %H:%M:%S")
|
|
@@ -55,8 +55,11 @@ def save_to_gsheet(name, student_id, major, prediction, sheet_name="Trang tính1
|
|
| 55 |
elif isinstance(prediction, np.int64):
|
| 56 |
prediction = int(prediction) # Convert np.int64 to int
|
| 57 |
|
|
|
|
|
|
|
|
|
|
| 58 |
# Create a data row to insert into the sheet
|
| 59 |
-
data_row = [name, student_id, major, prediction, current_time]
|
| 60 |
|
| 61 |
# Connect to Google Sheets
|
| 62 |
client = get_gsheet_client()
|
|
@@ -69,8 +72,20 @@ def save_to_gsheet(name, student_id, major, prediction, sheet_name="Trang tính1
|
|
| 69 |
all_values = sheet.get_all_values()
|
| 70 |
|
| 71 |
# If the sheet is empty or if headers are missing, insert headers
|
| 72 |
-
if not all_values or len(all_values[0]) !=
|
| 73 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 74 |
|
| 75 |
# Append data to the sheet
|
| 76 |
sheet.append_row(data_row)
|
|
@@ -248,4 +263,4 @@ if st.button("🎯 DỰ BÁO"):
|
|
| 248 |
# st.write("Available sheet names:", sheet_names)
|
| 249 |
|
| 250 |
# Ghi log lên Google Sheets
|
| 251 |
-
save_to_gsheet(name, student_id, major, prediction)
|
|
|
|
| 43 |
return client
|
| 44 |
|
| 45 |
# ===== Save to Google Sheets =====
|
| 46 |
+
def save_to_gsheet(name, student_id, major, prediction, semester_data, sheet_name="Trang tính1"):
|
| 47 |
# Get the current date and time
|
| 48 |
now = datetime.now()
|
| 49 |
current_time = now.strftime("%Y-%m-%d %H:%M:%S")
|
|
|
|
| 55 |
elif isinstance(prediction, np.int64):
|
| 56 |
prediction = int(prediction) # Convert np.int64 to int
|
| 57 |
|
| 58 |
+
# Flatten semester data to individual columns for each semester
|
| 59 |
+
semester_data_flat = [str(val) for val in semester_data] # Convert all semester data values to strings
|
| 60 |
+
|
| 61 |
# Create a data row to insert into the sheet
|
| 62 |
+
data_row = [name, student_id, major, prediction, current_time] + semester_data_flat
|
| 63 |
|
| 64 |
# Connect to Google Sheets
|
| 65 |
client = get_gsheet_client()
|
|
|
|
| 72 |
all_values = sheet.get_all_values()
|
| 73 |
|
| 74 |
# If the sheet is empty or if headers are missing, insert headers
|
| 75 |
+
if not all_values or len(all_values[0]) != (len(semester_data_flat) + 5): # Ensure number of columns matches
|
| 76 |
+
headers = ["Họ và tên", "MSV", "Khoa", "Dự báo", "Thời gian"] + [
|
| 77 |
+
f"Số môn không thi - HK{i+1}" for i in range(6)] + [
|
| 78 |
+
f"Số tín chỉ không thi - HK{i+1}" for i in range(6)] + [
|
| 79 |
+
f"Số tín chỉ nợ - HK{i+1}" for i in range(6)] + [
|
| 80 |
+
f"Số môn không đạt - HK{i+1}" for i in range(6)] + [
|
| 81 |
+
f"Số tín chỉ qua môn - HK{i+1}" for i in range(6)] + [
|
| 82 |
+
f"Tổng tín chỉ học kỳ - HK{i+1}" for i in range(6)] + [
|
| 83 |
+
f"Số môn học kỳ - HK{i+1}" for i in range(6)] + [
|
| 84 |
+
f"Số môn đạt - HK{i+1}" for i in range(6)] + [
|
| 85 |
+
f"GPA - HK{i+1}" for i in range(6)] + [
|
| 86 |
+
f"Xếp loại - HK{i+1}" for i in range(6)]
|
| 87 |
+
|
| 88 |
+
sheet.append_row(headers) # Create headers if missing
|
| 89 |
|
| 90 |
# Append data to the sheet
|
| 91 |
sheet.append_row(data_row)
|
|
|
|
| 263 |
# st.write("Available sheet names:", sheet_names)
|
| 264 |
|
| 265 |
# Ghi log lên Google Sheets
|
| 266 |
+
save_to_gsheet(name, student_id, major, prediction, data) # Pass data to save function
|