AIdeaText commited on
Commit
cba69cb
1 Parent(s): 5dc0420

Update modules/database.py

Browse files
Files changed (1) hide show
  1. 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
- "username": username,
117
- "entries": [
118
- {
119
- "timestamp": entry["timestamp"].isoformat(),
 
 
 
 
 
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
- for entry in cursor
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 entry.get("word_count", {}).items():
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 if formatted_data["entries_count"] > 0 else None
 
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):