添加令牌验证和推荐系统接口
Change-Id: I2d318c167683a5106ced96047ab9f39b33b75bd1
diff --git a/Merge/back_rhj/app/services/__pycache__/lightgcn_scorer.cpython-312.pyc b/Merge/back_rhj/app/services/__pycache__/lightgcn_scorer.cpython-312.pyc
index 2c86f52..a8d871a 100644
--- a/Merge/back_rhj/app/services/__pycache__/lightgcn_scorer.cpython-312.pyc
+++ b/Merge/back_rhj/app/services/__pycache__/lightgcn_scorer.cpython-312.pyc
Binary files differ
diff --git a/Merge/back_rhj/app/services/__pycache__/recommendation_service.cpython-312.pyc b/Merge/back_rhj/app/services/__pycache__/recommendation_service.cpython-312.pyc
index da8389f..fd70a42 100644
--- a/Merge/back_rhj/app/services/__pycache__/recommendation_service.cpython-312.pyc
+++ b/Merge/back_rhj/app/services/__pycache__/recommendation_service.cpython-312.pyc
Binary files differ
diff --git a/Merge/back_rhj/app/services/recommendation_service.py b/Merge/back_rhj/app/services/recommendation_service.py
index 2f4de13..0547f7b 100644
--- a/Merge/back_rhj/app/services/recommendation_service.py
+++ b/Merge/back_rhj/app/services/recommendation_service.py
@@ -483,7 +483,7 @@
# 查询帖子基本信息
format_strings = ','.join(['%s'] * len(topk_post_ids))
cursor.execute(
- f"""SELECT p.id, p.user_id, p.title, p.content, p.type, p.heat, p.created_at, p.is_advertisement
+ f"""SELECT p.id, p.user_id, p.title, p.content, p.type, p.heat, p.created_at, p.updated_at, p.media_urls, p.status, p.is_advertisement
FROM posts p
WHERE p.id IN ({format_strings}) AND p.status = 'published'""",
tuple(topk_post_ids)
@@ -541,15 +541,20 @@
owner_user_id = row[1]
stats = behavior_stats.get(post_id, {})
post_info = {
- 'post_id': post_id,
+ 'id': post_id,
+ 'user_id': owner_user_id,
'title': row[2],
- 'content': row[3][:200] + '...' if len(row[3]) > 200 else row[3],
+ 'content': row[3], # 不再截断,保持完整内容
+ 'media_urls': row[8],
+ 'status': row[9],
+ 'heat': row[5],
+ 'created_at': row[6].isoformat() if row[6] else "",
+ 'updated_at': row[7].isoformat() if row[7] else "",
+ # 额外字段,可选保留
'type': row[4],
'username': user_map.get(owner_user_id, ""),
- 'heat': row[5],
'tags': tag_map.get(post_id, ""),
- 'created_at': str(row[6]) if row[6] else "",
- 'is_advertisement': bool(row[7]), # 添加广告标识
+ 'is_advertisement': bool(row[10]),
'like_count': stats.get('like', 0),
'comment_count': stats.get('comment', 0),
'favorite_count': stats.get('favorite', 0),
@@ -557,10 +562,6 @@
'share_count': stats.get('share', 0)
}
- # 如果有推荐打分,添加到结果中
- if topk_scores is not None and i < len(topk_scores):
- post_info['recommendation_score'] = float(topk_scores[i])
-
post_list.append(post_info)
return post_list
finally: