新增后台通知中心和产品审核发布功能

This commit is contained in:
2026-07-11 01:55:01 +08:00
parent e03e514b70
commit 836acf1aa8
18 changed files with 703 additions and 18 deletions
+25
View File
@@ -11,6 +11,14 @@ from utils import load_data, save_data, parse_date_to_timestamp
cpus_bp = Blueprint('api_cpus', __name__)
def is_review_required():
try:
import app as app_module
return getattr(app_module, 'REQUIRE_REVIEW', False)
except:
return False
def _safe_sort_key(x, key):
val = x.get(key)
if val is None:
@@ -54,6 +62,23 @@ def api_cpu_detail(cpu_id):
@cpus_bp.route('/api/cpus', methods=['POST'])
def api_create_cpu():
data = request.get_json()
# 审核模式
if is_review_required():
from modules.routes.api_reviews import submit_for_review
from modules.routes.api_notifications import create_notification
review = submit_for_review('cpus', data, source='web')
product_name = data.get('name', '未知')
create_notification(
title='新产品待审核',
message=f'有新的CPU "{product_name}"待审核',
level='warning',
category='review',
data={'review_id': review['id'], 'category': 'cpus'}
)
return jsonify({'success': True, 'message': '已提交审核,请等待管理员确认', 'review_id': review['id']})
cpus = load_data(CPUS_FILE)
data['id'] = uuid.uuid4().hex[:12]
data['created_at'] = datetime.now().strftime('%Y-%m-%d %H:%M:%S')