Spaces:
Sleeping
Sleeping
Commit
·
ab44078
1
Parent(s):
3801c91
Add system
Browse files
app.py
CHANGED
@@ -240,6 +240,11 @@ def receive_feedback():
|
|
240 |
file_path = os.path.join(TMP_DIR, filename)
|
241 |
pledge_date = data.get("pledge_date", "")
|
242 |
pledge_author = data.get("pledge_author", "")
|
|
|
|
|
|
|
|
|
|
|
243 |
|
244 |
if not os.path.exists(file_path):
|
245 |
return jsonify({"error": "Event file not found"}), 400
|
@@ -247,29 +252,36 @@ def receive_feedback():
|
|
247 |
with open(file_path, "r") as f:
|
248 |
events = json.load(f)
|
249 |
|
250 |
-
|
251 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
252 |
|
|
|
253 |
for idx, event in enumerate(events):
|
254 |
event["user_feedback"] = feedback_dict.get(idx)
|
255 |
|
256 |
log_entry = {
|
257 |
-
"requested_time":
|
258 |
-
"user_id":
|
259 |
"pledge": pledge,
|
|
|
|
|
|
|
260 |
"pledge_author": pledge_author,
|
261 |
"pledge_date": pledge_date,
|
262 |
"events": events
|
263 |
}
|
264 |
|
265 |
-
timestamp = data.get("timestamp")
|
266 |
-
user_id = data.get("user_id")
|
267 |
-
|
268 |
-
if not user_id or not timestamp:
|
269 |
-
return jsonify({'status': 'error', 'detail': 'Missing user_id or timestamp'}), 400
|
270 |
-
|
271 |
local_filename = f"{FEEDBACK_DIR}/feedback_{timestamp}_{user_id}.jsonl"
|
272 |
-
|
273 |
with open(local_filename, "w") as f:
|
274 |
f.write(json.dumps(log_entry, indent=1))
|
275 |
|
@@ -287,6 +299,7 @@ def receive_feedback():
|
|
287 |
|
288 |
return jsonify({'status': 'success'})
|
289 |
|
|
|
290 |
@app.route("/download-feedback/<filename>")
|
291 |
def download_feedback_file(filename):
|
292 |
return send_from_directory(FEEDBACK_DIR, filename, as_attachment=True)
|
|
|
240 |
file_path = os.path.join(TMP_DIR, filename)
|
241 |
pledge_date = data.get("pledge_date", "")
|
242 |
pledge_author = data.get("pledge_author", "")
|
243 |
+
timestamp = data.get("timestamp")
|
244 |
+
user_id = data.get("user_id")
|
245 |
+
|
246 |
+
if not user_id or not timestamp:
|
247 |
+
return jsonify({'status': 'error', 'detail': 'Missing user_id or timestamp'}), 400
|
248 |
|
249 |
if not os.path.exists(file_path):
|
250 |
return jsonify({"error": "Event file not found"}), 400
|
|
|
252 |
with open(file_path, "r") as f:
|
253 |
events = json.load(f)
|
254 |
|
255 |
+
suggestion_meta = None
|
256 |
+
time_start = None
|
257 |
+
time_end = None
|
258 |
+
try:
|
259 |
+
prev_log_path = f"{FEEDBACK_DIR}/feedback_{timestamp}_{user_id}.jsonl"
|
260 |
+
with open(prev_log_path, "r") as f:
|
261 |
+
previous_log = json.load(f)
|
262 |
+
suggestion_meta = previous_log.get("suggestion_meta")
|
263 |
+
time_start = previous_log.get("time_start")
|
264 |
+
time_end = previous_log.get("time_end")
|
265 |
+
except Exception:
|
266 |
+
pass
|
267 |
|
268 |
+
feedback_dict = {int(item['eventIndex']): item['answer'] for item in feedback_list}
|
269 |
for idx, event in enumerate(events):
|
270 |
event["user_feedback"] = feedback_dict.get(idx)
|
271 |
|
272 |
log_entry = {
|
273 |
+
"requested_time": timestamp,
|
274 |
+
"user_id": user_id,
|
275 |
"pledge": pledge,
|
276 |
+
"suggestion_meta": suggestion_meta,
|
277 |
+
"time_start": time_start,
|
278 |
+
"time_end": time_end,
|
279 |
"pledge_author": pledge_author,
|
280 |
"pledge_date": pledge_date,
|
281 |
"events": events
|
282 |
}
|
283 |
|
|
|
|
|
|
|
|
|
|
|
|
|
284 |
local_filename = f"{FEEDBACK_DIR}/feedback_{timestamp}_{user_id}.jsonl"
|
|
|
285 |
with open(local_filename, "w") as f:
|
286 |
f.write(json.dumps(log_entry, indent=1))
|
287 |
|
|
|
299 |
|
300 |
return jsonify({'status': 'success'})
|
301 |
|
302 |
+
|
303 |
@app.route("/download-feedback/<filename>")
|
304 |
def download_feedback_file(filename):
|
305 |
return send_from_directory(FEEDBACK_DIR, filename, as_attachment=True)
|