增加求和采集和细节修改
This commit is contained in:
130
lib/api/sum_data_api.py
Normal file
130
lib/api/sum_data_api.py
Normal file
@@ -0,0 +1,130 @@
|
||||
"""
|
||||
求和数据管理 API
|
||||
"""
|
||||
from flask import request, jsonify
|
||||
from lib.sum_data_collector import (
|
||||
collect_sum_data_from_history,
|
||||
get_sum_data_list,
|
||||
add_sum_data,
|
||||
update_sum_data,
|
||||
delete_sum_data,
|
||||
batch_delete_sum_data
|
||||
)
|
||||
from . import sum_data_bp
|
||||
|
||||
|
||||
@sum_data_bp.route('/sum-data/collect', methods=['POST'])
|
||||
def collect_sum_data():
|
||||
"""从历史记录采集求和数据"""
|
||||
try:
|
||||
data = request.json or {}
|
||||
history_id = data.get('history_id')
|
||||
|
||||
result = collect_sum_data_from_history(history_id)
|
||||
if result['success']:
|
||||
return jsonify(result)
|
||||
else:
|
||||
return jsonify(result), 400
|
||||
except Exception as e:
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
return jsonify({'success': False, 'message': str(e)}), 500
|
||||
|
||||
|
||||
@sum_data_bp.route('/sum-data', methods=['GET'])
|
||||
def list_sum_data():
|
||||
"""查询求和数据列表"""
|
||||
try:
|
||||
page = int(request.args.get('page', 1))
|
||||
page_size = int(request.args.get('page_size', 20))
|
||||
report_date = request.args.get('report_date')
|
||||
config_id = request.args.get('config_id')
|
||||
config_name = request.args.get('config_name')
|
||||
sum_field_key = request.args.get('sum_field_key')
|
||||
data_source = request.args.get('data_source')
|
||||
|
||||
result = get_sum_data_list(
|
||||
page=page,
|
||||
page_size=page_size,
|
||||
report_date=report_date,
|
||||
config_id=config_id,
|
||||
config_name=config_name,
|
||||
sum_field_key=sum_field_key,
|
||||
data_source=data_source
|
||||
)
|
||||
|
||||
if result['success']:
|
||||
return jsonify(result)
|
||||
else:
|
||||
return jsonify(result), 400
|
||||
except Exception as e:
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
return jsonify({'success': False, 'message': str(e)}), 500
|
||||
|
||||
|
||||
@sum_data_bp.route('/sum-data', methods=['POST'])
|
||||
def create_sum_data():
|
||||
"""手动添加求和数据"""
|
||||
try:
|
||||
data = request.json
|
||||
result = add_sum_data(data)
|
||||
if result['success']:
|
||||
return jsonify(result)
|
||||
else:
|
||||
return jsonify(result), 400
|
||||
except Exception as e:
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
return jsonify({'success': False, 'message': str(e)}), 500
|
||||
|
||||
|
||||
@sum_data_bp.route('/sum-data/<int:sum_data_id>', methods=['PUT'])
|
||||
def update_sum_data_api(sum_data_id):
|
||||
"""更新求和数据"""
|
||||
try:
|
||||
data = request.json
|
||||
result = update_sum_data(sum_data_id, data)
|
||||
if result['success']:
|
||||
return jsonify(result)
|
||||
else:
|
||||
return jsonify(result), 400
|
||||
except Exception as e:
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
return jsonify({'success': False, 'message': str(e)}), 500
|
||||
|
||||
|
||||
@sum_data_bp.route('/sum-data/<int:sum_data_id>', methods=['DELETE'])
|
||||
def delete_sum_data_api(sum_data_id):
|
||||
"""删除求和数据"""
|
||||
try:
|
||||
result = delete_sum_data(sum_data_id)
|
||||
if result['success']:
|
||||
return jsonify(result)
|
||||
else:
|
||||
return jsonify(result), 400
|
||||
except Exception as e:
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
return jsonify({'success': False, 'message': str(e)}), 500
|
||||
|
||||
|
||||
@sum_data_bp.route('/sum-data/batch-delete', methods=['POST'])
|
||||
def batch_delete_sum_data_api():
|
||||
"""批量删除求和数据"""
|
||||
try:
|
||||
data = request.json
|
||||
ids = data.get('ids', [])
|
||||
if not ids:
|
||||
return jsonify({'success': False, 'message': '请选择要删除的记录'}), 400
|
||||
|
||||
result = batch_delete_sum_data(ids)
|
||||
if result['success']:
|
||||
return jsonify(result)
|
||||
else:
|
||||
return jsonify(result), 400
|
||||
except Exception as e:
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
return jsonify({'success': False, 'message': str(e)}), 500
|
||||
Reference in New Issue
Block a user