增加尖峰平谷找平功能,修改消息提示

This commit is contained in:
2026-08-02 10:50:38 +08:00
parent 17b7cd27b9
commit c5fcda3511
10 changed files with 433 additions and 95 deletions

View File

@@ -60,6 +60,13 @@ def create_config():
show_custom_service_fee = 1 if data.get('show_custom_service_fee') else 0
show_total_amount = 1 if data.get('show_total_amount') else 0
total_amount_name = data.get('total_amount_name')
# 找平电量开关默认开启1=开启0=关闭)
# 当数据中的'未在前端传递时默认为1开启保持与历史配置的兼容性
balance_electricity = data.get('balance_electricity')
if balance_electricity is None:
balance_electricity = 1
else:
balance_electricity = 1 if balance_electricity else 0
if not config_name or not split_type or not split_value:
log_warning('[配置API] 创建配置失败:缺少必填字段', 'api')
@@ -81,9 +88,9 @@ def create_config():
(id, config_name, split_type, split_value, split_name, selected_fields,
sum_fields, time_periods, merge_telecom, telecom_vehicle_no, field_custom_names,
show_monthly_total, custom_service_fee_price, custom_service_fee_name,
show_custom_service_fee, show_total_amount, total_amount_name,
show_custom_service_fee, show_total_amount, total_amount_name, balance_electricity,
is_active, sort_order, create_time, update_time)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, 1, %s, NOW(), NOW())
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, 1, %s, NOW(), NOW())
"""
params = (
@@ -104,6 +111,7 @@ def create_config():
show_custom_service_fee,
show_total_amount,
total_amount_name if total_amount_name else None,
balance_electricity,
sort_order
)
@@ -148,6 +156,12 @@ def update_config(config_id):
show_custom_service_fee = 1 if data.get('show_custom_service_fee') else 0
show_total_amount = 1 if data.get('show_total_amount') else 0
total_amount_name = data.get('total_amount_name')
# 找平电量开关默认开启1=开启0=关闭)
balance_electricity = data.get('balance_electricity')
if balance_electricity is None:
balance_electricity = 1
else:
balance_electricity = 1 if balance_electricity else 0
# 查询原配置,检查拆分是否变化
old_configs = execute_query('SELECT * FROM t_daily_report_config WHERE id = %s', (config_id,))
@@ -162,6 +176,7 @@ def update_config(config_id):
merge_telecom = %s, telecom_vehicle_no = %s, field_custom_names = %s,
show_monthly_total = %s, custom_service_fee_price = %s, custom_service_fee_name = %s,
show_custom_service_fee = %s, show_total_amount = %s, total_amount_name = %s,
balance_electricity = %s,
update_time = NOW()
WHERE id = %s
"""
@@ -183,6 +198,7 @@ def update_config(config_id):
show_custom_service_fee,
show_total_amount,
total_amount_name if total_amount_name else None,
balance_electricity,
config_id
)
@@ -257,8 +273,8 @@ def copy_config(config_id):
# 插入新配置
execute_insert(
'''INSERT INTO t_daily_report_config
(id, config_name, split_type, split_value, split_name, selected_fields, sum_fields, time_periods, merge_telecom, telecom_vehicle_no, field_custom_names, show_monthly_total, custom_service_fee_price, custom_service_fee_name, show_custom_service_fee, show_total_amount, total_amount_name, is_active, sort_order, create_time, update_time)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, NOW(), NOW())''',
(id, config_name, split_type, split_value, split_name, selected_fields, sum_fields, time_periods, merge_telecom, telecom_vehicle_no, field_custom_names, show_monthly_total, custom_service_fee_price, custom_service_fee_name, show_custom_service_fee, show_total_amount, total_amount_name, balance_electricity, is_active, sort_order, create_time, update_time)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, NOW(), NOW())''',
(
new_id,
new_name,
@@ -277,6 +293,8 @@ def copy_config(config_id):
original.get('show_custom_service_fee', 0),
original.get('show_total_amount', 0),
original.get('total_amount_name'),
# 找平电量复制原配置的设置若原配置无此字段NULL则默认开启(1)
original.get('balance_electricity') if original.get('balance_electricity') is not None else 1,
original['is_active'],
sort_order
)