Update modules/database.py
Browse files- modules/database.py +15 -18
modules/database.py
CHANGED
|
@@ -113,34 +113,29 @@ def get_student_data(username):
|
|
| 113 |
|
| 114 |
# Formatear los datos
|
| 115 |
formatted_data = {
|
| 116 |
-
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 120 |
"text": entry["text"],
|
| 121 |
"word_count": entry.get("word_count", {}),
|
| 122 |
"arc_diagrams": entry.get("arc_diagrams", []),
|
| 123 |
"network_diagram": entry.get("network_diagram", "")
|
| 124 |
}
|
| 125 |
-
|
| 126 |
-
],
|
| 127 |
-
"entries_count": count,
|
| 128 |
-
"word_count": aggregated_word_count
|
| 129 |
-
}
|
| 130 |
-
|
| 131 |
-
return formatted_data
|
| 132 |
|
| 133 |
# Agregar conteo de palabras
|
| 134 |
-
for category, count in
|
| 135 |
if category in formatted_data["word_count"]:
|
| 136 |
formatted_data["word_count"][category] += count
|
| 137 |
else:
|
| 138 |
formatted_data["word_count"][category] = count
|
| 139 |
-
|
| 140 |
-
# Agregar diagramas
|
| 141 |
-
formatted_data["arc_diagrams"].extend(entry.get("arc_diagrams", []))
|
| 142 |
-
formatted_data["network_diagrams"].append(entry.get("network_diagram", ""))
|
| 143 |
-
|
| 144 |
# Ordenar las entradas por timestamp después de obtenerlas
|
| 145 |
formatted_data["entries"].sort(key=lambda x: x["timestamp"], reverse=True)
|
| 146 |
|
|
@@ -149,10 +144,12 @@ def get_student_data(username):
|
|
| 149 |
entry["timestamp"] = entry["timestamp"].isoformat()
|
| 150 |
|
| 151 |
logger.info(f"Datos formateados para {username}: {formatted_data}")
|
| 152 |
-
return formatted_data
|
|
|
|
| 153 |
except Exception as e:
|
| 154 |
logger.error(f"Error al obtener datos del estudiante {username}: {str(e)}")
|
| 155 |
return None
|
|
|
|
| 156 |
#######################################################################################################
|
| 157 |
|
| 158 |
def store_analysis_result(username, text, repeated_words, arc_diagrams, network_diagram):
|
|
|
|
| 113 |
|
| 114 |
# Formatear los datos
|
| 115 |
formatted_data = {
|
| 116 |
+
"username": username,
|
| 117 |
+
"entries": [],
|
| 118 |
+
"entries_count": count,
|
| 119 |
+
"word_count": {}
|
| 120 |
+
}
|
| 121 |
+
|
| 122 |
+
for entry in cursor:
|
| 123 |
+
formatted_entry = {
|
| 124 |
+
"timestamp": entry["timestamp"],
|
| 125 |
"text": entry["text"],
|
| 126 |
"word_count": entry.get("word_count", {}),
|
| 127 |
"arc_diagrams": entry.get("arc_diagrams", []),
|
| 128 |
"network_diagram": entry.get("network_diagram", "")
|
| 129 |
}
|
| 130 |
+
formatted_data["entries"].append(formatted_entry)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 131 |
|
| 132 |
# Agregar conteo de palabras
|
| 133 |
+
for category, count in formatted_entry["word_count"].items():
|
| 134 |
if category in formatted_data["word_count"]:
|
| 135 |
formatted_data["word_count"][category] += count
|
| 136 |
else:
|
| 137 |
formatted_data["word_count"][category] = count
|
| 138 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
| 139 |
# Ordenar las entradas por timestamp después de obtenerlas
|
| 140 |
formatted_data["entries"].sort(key=lambda x: x["timestamp"], reverse=True)
|
| 141 |
|
|
|
|
| 144 |
entry["timestamp"] = entry["timestamp"].isoformat()
|
| 145 |
|
| 146 |
logger.info(f"Datos formateados para {username}: {formatted_data}")
|
| 147 |
+
return formatted_data
|
| 148 |
+
|
| 149 |
except Exception as e:
|
| 150 |
logger.error(f"Error al obtener datos del estudiante {username}: {str(e)}")
|
| 151 |
return None
|
| 152 |
+
|
| 153 |
#######################################################################################################
|
| 154 |
|
| 155 |
def store_analysis_result(username, text, repeated_words, arc_diagrams, network_diagram):
|