增加t自定义服务费单价
This commit is contained in:
@@ -43,6 +43,13 @@ def create_config():
|
||||
telecom_vehicle_no = data.get('telecom_vehicle_no', '')
|
||||
field_custom_names = data.get('field_custom_names', {})
|
||||
show_monthly_total = 1 if data.get('show_monthly_total') else 0
|
||||
custom_service_fee_price = data.get('custom_service_fee_price')
|
||||
if custom_service_fee_price is not None and custom_service_fee_price != '':
|
||||
custom_service_fee_price = float(custom_service_fee_price)
|
||||
else:
|
||||
custom_service_fee_price = None
|
||||
|
||||
custom_service_fee_name = data.get('custom_service_fee_name')
|
||||
|
||||
if not config_name or not split_type or not split_value:
|
||||
return jsonify({'success': False, 'message': '缺少必填字段'}), 400
|
||||
@@ -61,8 +68,8 @@ def create_config():
|
||||
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, is_active, sort_order, create_time, update_time)
|
||||
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, 1, %s, NOW(), NOW())
|
||||
show_monthly_total, custom_service_fee_price, custom_service_fee_name, is_active, sort_order, create_time, update_time)
|
||||
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, 1, %s, NOW(), NOW())
|
||||
"""
|
||||
|
||||
params = (
|
||||
@@ -78,6 +85,8 @@ def create_config():
|
||||
telecom_vehicle_no,
|
||||
json.dumps(field_custom_names, ensure_ascii=False) if field_custom_names else None,
|
||||
show_monthly_total,
|
||||
custom_service_fee_price,
|
||||
custom_service_fee_name if custom_service_fee_name else None,
|
||||
sort_order
|
||||
)
|
||||
|
||||
@@ -108,13 +117,21 @@ def update_config(config_id):
|
||||
telecom_vehicle_no = data.get('telecom_vehicle_no', '')
|
||||
field_custom_names = data.get('field_custom_names', {})
|
||||
show_monthly_total = 1 if data.get('show_monthly_total') else 0
|
||||
custom_service_fee_price = data.get('custom_service_fee_price')
|
||||
if custom_service_fee_price is not None and custom_service_fee_price != '':
|
||||
custom_service_fee_price = float(custom_service_fee_price)
|
||||
else:
|
||||
custom_service_fee_price = None
|
||||
|
||||
custom_service_fee_name = data.get('custom_service_fee_name')
|
||||
|
||||
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, time_periods = %s,
|
||||
merge_telecom = %s, telecom_vehicle_no = %s, field_custom_names = %s,
|
||||
show_monthly_total = %s, update_time = NOW()
|
||||
show_monthly_total = %s, custom_service_fee_price = %s, custom_service_fee_name = %s,
|
||||
update_time = NOW()
|
||||
WHERE id = %s
|
||||
"""
|
||||
|
||||
@@ -130,6 +147,8 @@ def update_config(config_id):
|
||||
telecom_vehicle_no,
|
||||
json.dumps(field_custom_names, ensure_ascii=False) if field_custom_names else None,
|
||||
show_monthly_total,
|
||||
custom_service_fee_price,
|
||||
custom_service_fee_name if custom_service_fee_name else None,
|
||||
config_id
|
||||
)
|
||||
|
||||
@@ -172,8 +191,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, is_active, sort_order, create_time, update_time)
|
||||
VALUES (%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, 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, NOW(), NOW())''',
|
||||
(
|
||||
new_id,
|
||||
new_name,
|
||||
@@ -187,6 +206,8 @@ def copy_config(config_id):
|
||||
original.get('telecom_vehicle_no', ''),
|
||||
original.get('field_custom_names', None),
|
||||
original.get('show_monthly_total', 0),
|
||||
original.get('custom_service_fee_price'),
|
||||
original.get('custom_service_fee_name'),
|
||||
original['is_active'],
|
||||
sort_order
|
||||
)
|
||||
@@ -286,6 +307,8 @@ EXCEL_COLUMNS = [
|
||||
{'key': 'telecom_vehicle_no', 'name': '特来电自编号', 'required': False},
|
||||
{'key': 'field_custom_names', 'name': '字段自定义表头(JSON对象)', 'required': False, 'comment': '如: {"charge_degree":"充电量(kWh)"}'},
|
||||
{'key': 'show_monthly_total', 'name': '是否显示月度总计', 'required': False, 'comment': '0=否, 1=是'},
|
||||
{'key': 'custom_service_fee_price', 'name': '自定义服务费单价(元/kWh)', 'required': False, 'comment': '设置后按充电电量×单价计算自定义服务费'},
|
||||
{'key': 'custom_service_fee_name', 'name': '自定义服务费表头名称', 'required': False, 'comment': '报表中显示的列名,留空则使用默认名称'},
|
||||
{'key': 'is_active', 'name': '是否启用', 'required': False, 'comment': '0=禁用, 1=启用'},
|
||||
{'key': 'sort_order', 'name': '排序号', 'required': False, 'comment': '数字越小越靠前'},
|
||||
]
|
||||
@@ -432,6 +455,8 @@ def download_template():
|
||||
'telecom_vehicle_no': '',
|
||||
'field_custom_names': '{"charge_degree":"充电量(kWh)"}',
|
||||
'show_monthly_total': '1',
|
||||
'custom_service_fee_price': '0.8',
|
||||
'custom_service_fee_name': '服务费(自定义)',
|
||||
'is_active': '0',
|
||||
'sort_order': '1',
|
||||
}
|
||||
@@ -598,12 +623,25 @@ def import_configs():
|
||||
is_active = config_data.get('is_active', '0').strip()
|
||||
is_active = 1 if is_active in ('1', '是', 'true', 'True') else 0
|
||||
|
||||
custom_service_fee_price_str = config_data.get('custom_service_fee_price', '').strip()
|
||||
if custom_service_fee_price_str:
|
||||
try:
|
||||
custom_service_fee_price = float(custom_service_fee_price_str)
|
||||
except Exception:
|
||||
custom_service_fee_price = None
|
||||
else:
|
||||
custom_service_fee_price = None
|
||||
|
||||
custom_service_fee_name = config_data.get('custom_service_fee_name', '').strip()
|
||||
if not custom_service_fee_name:
|
||||
custom_service_fee_name = None
|
||||
|
||||
sql = """
|
||||
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, is_active, sort_order, create_time, update_time)
|
||||
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, NOW(), NOW())
|
||||
show_monthly_total, custom_service_fee_price, custom_service_fee_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, NOW(), NOW())
|
||||
"""
|
||||
|
||||
params = (
|
||||
@@ -619,6 +657,8 @@ def import_configs():
|
||||
config_data.get('telecom_vehicle_no', ''),
|
||||
json.dumps(field_custom_names, ensure_ascii=False) if field_custom_names else None,
|
||||
show_monthly_total,
|
||||
custom_service_fee_price,
|
||||
custom_service_fee_name,
|
||||
is_active,
|
||||
sort_order
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user