- 删除多个不再使用的脚本和配置文件,包括 `auto_push.bat`, `check_and_fix_users.py`, `init.sql` 等。 - 新增 `git_push.bat` 和 `git_push.sh` 脚本以简化 Git 推送流程。 - 更新 `README.md` 以反映最新的功能和结构变化。 - 优化前端代码,添加新的页面和组件,提升用户体验。 此提交旨在清理项目结构并增强代码可维护性。
53 lines
1.5 KiB
Python
53 lines
1.5 KiB
Python
# -*- coding: utf-8 -*-
|
||
"""
|
||
分析相关API蓝图
|
||
处理数据分析、报告生成等功能
|
||
"""
|
||
|
||
from flask import Blueprint, request, jsonify, send_file
|
||
import os
|
||
|
||
analytics_bp = Blueprint('analytics', __name__, url_prefix='/api/analytics')
|
||
|
||
|
||
@analytics_bp.route('/export')
|
||
def export_analytics():
|
||
"""导出分析报告"""
|
||
try:
|
||
from src.web.service_manager import service_manager
|
||
from src.core.query_optimizer import query_optimizer
|
||
from openpyxl import Workbook
|
||
from openpyxl.styles import Font
|
||
|
||
# 生成Excel报告(使用数据库真实数据)
|
||
analytics = query_optimizer.get_analytics_optimized(30)
|
||
|
||
# 创建工作簿
|
||
wb = Workbook()
|
||
ws = wb.active
|
||
ws.title = "分析报告"
|
||
|
||
# 添加标题
|
||
ws['A1'] = 'TSP智能助手分析报告'
|
||
ws['A1'].font = Font(size=16, bold=True)
|
||
|
||
# 添加工单统计
|
||
ws['A3'] = '工单统计'
|
||
ws['A3'].font = Font(bold=True)
|
||
ws['A4'] = '总工单数'
|
||
ws['B4'] = analytics['workorders']['total']
|
||
ws['A5'] = '待处理'
|
||
ws['B5'] = analytics['workorders']['open']
|
||
ws['A6'] = '已解决'
|
||
ws['B6'] = analytics['workorders']['resolved']
|
||
|
||
# 保存文件
|
||
report_path = 'uploads/analytics_report.xlsx'
|
||
os.makedirs('uploads', exist_ok=True)
|
||
wb.save(report_path)
|
||
|
||
return send_file(report_path, as_attachment=True, download_name='analytics_report.xlsx')
|
||
|
||
except Exception as e:
|
||
return jsonify({"error": str(e)}), 500
|