Files
QueryCarInfo2/api.py
T
2025-09-19 08:21:03 +08:00

75 lines
2.2 KiB
Python

from flask import Flask, jsonify
import sqlite3
from datetime import datetime
# 创建Flask蓝图
api_bp = Flask(__name__)
# 连接数据库的辅助函数
def get_db_connection():
conn = sqlite3.connect('car_info.db')
conn.row_factory = sqlite3.Row # 使返回的数据可以通过列名访问
return conn
# API函数1: 返回所有的参数信息
@api_bp.route('/api/parameters', methods=['GET'])
def get_all_parameters():
try:
# 连接数据库
conn = get_db_connection()
cursor = conn.cursor()
# 查询所有参数配置记录
cursor.execute("""
SELECT id, param1, param2, param3, param4, param5, update_time
FROM parameter_config
ORDER BY update_time DESC
""")
# 获取所有查询结果
rows = cursor.fetchall()
# 关闭数据库连接
conn.close()
# 如果没有查询到数据
if not rows:
return jsonify({
'success': False,
'error': '未找到参数配置记录',
'data': []
}), 404
# 格式化查询结果
parameters_list = []
for row in rows:
parameters_list.append({
'id': row['id'],
'param1': row['param1'],
'param2': row['param2'],
'param3': row['param3'],
'param4': row['param4'],
'param5': row['param5'],
'update_time': row['update_time']
})
# 返回JSON格式的参数信息
return jsonify({
'success': True,
'message': '参数信息获取成功',
'data': parameters_list,
'total': len(parameters_list)
}), 200
except Exception as e:
# 处理异常情况
return jsonify({
'success': False,
'error': f'获取参数信息失败: {str(e)}',
'data': []
}), 500
# 如果直接运行此文件(用于测试)
if __name__ == '__main__':
# 在生产环境中不应使用debug=True
api_bp.run(debug=True)