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):
|