feat: 添加分时段电量统计功能(尖/峰/平/谷)

Coze-Commit-Type: user
Coze-User-ID: 3722323274763196
Coze-Conversation-ID: 9894087
This commit is contained in:
user9994793890
2026-07-10 15:00:18 +08:00
parent d756ecd044
commit 619e628501
4 changed files with 461 additions and 6 deletions

11
app.py
View File

@@ -46,6 +46,7 @@ def get_configs():
for config in configs:
config['selected_fields'] = json.loads(config['selected_fields'])
config['sum_fields'] = json.loads(config['sum_fields']) if config['sum_fields'] else []
config['time_periods'] = json.loads(config['time_periods']) if config.get('time_periods') else {}
return jsonify({'success': True, 'data': configs})
except Exception as e:
@@ -63,6 +64,7 @@ def create_config():
split_name = data.get('split_name', '')
selected_fields = data.get('selected_fields', [])
sum_fields = data.get('sum_fields', [])
time_periods = data.get('time_periods', {})
if not config_name or not split_type or not split_value:
return jsonify({'success': False, 'message': '缺少必填字段'}), 400
@@ -80,8 +82,8 @@ def create_config():
sql = """
INSERT INTO t_daily_report_config
(id, config_name, split_type, split_value, split_name, selected_fields,
sum_fields, is_active, sort_order, create_time, update_time)
VALUES (%s, %s, %s, %s, %s, %s, %s, 1, %s, NOW(), NOW())
sum_fields, time_periods, is_active, sort_order, create_time, update_time)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, 1, %s, NOW(), NOW())
"""
params = (
@@ -92,6 +94,7 @@ def create_config():
split_name,
json.dumps(selected_fields, ensure_ascii=False),
json.dumps(sum_fields, ensure_ascii=False),
json.dumps(time_periods, ensure_ascii=False),
sort_order
)
@@ -117,11 +120,12 @@ def update_config(config_id):
split_name = data.get('split_name', '')
selected_fields = data.get('selected_fields', [])
sum_fields = data.get('sum_fields', [])
time_periods = data.get('time_periods', {})
sql = """
UPDATE t_daily_report_config
SET config_name = %s, split_type = %s, split_value = %s, split_name = %s,
selected_fields = %s, sum_fields = %s, update_time = NOW()
selected_fields = %s, sum_fields = %s, time_periods = %s, update_time = NOW()
WHERE id = %s
"""
@@ -132,6 +136,7 @@ def update_config(config_id):
split_name,
json.dumps(selected_fields, ensure_ascii=False),
json.dumps(sum_fields, ensure_ascii=False),
json.dumps(time_periods, ensure_ascii=False),
config_id
)