后端优化,增加新需求

This commit is contained in:
super
2026-07-21 19:53:47 +08:00
parent ba48bbc6af
commit bca1335dc6
16 changed files with 529 additions and 61 deletions

View File

@@ -2202,6 +2202,7 @@ def list_shop_keys():
items = [
{
'id': item.get('id'),
'remark_name': item.get('remarkName') or '',
'ziniao_account_name': item.get('ziniaoAccountName') or '',
'ziniao_token': item.get('ziniaoToken') or '',
'created_at': (item.get('createdAt') or '').replace('T', ' ')[:16],
@@ -2226,6 +2227,7 @@ def create_shop_key():
return denied
data = request.get_json() or {}
payload = {
'remarkName': (data.get('remark_name') or '').strip(),
'ziniaoAccountName': (data.get('ziniao_account_name') or '').strip(),
'ziniaoToken': (data.get('ziniao_token') or '').strip(),
}
@@ -2242,6 +2244,7 @@ def create_shop_key():
'msg': result.get('message') or '创建成功',
'item': {
'id': item.get('id'),
'remark_name': item.get('remarkName') or '',
'ziniao_account_name': item.get('ziniaoAccountName') or '',
'ziniao_token': item.get('ziniaoToken') or '',
'created_at': (item.get('createdAt') or '').replace('T', ' ')[:16],
@@ -2258,6 +2261,7 @@ def update_shop_key(item_id):
return denied
data = request.get_json() or {}
payload = {
'remarkName': (data.get('remark_name') or '').strip(),
'ziniaoAccountName': (data.get('ziniao_account_name') or '').strip(),
'ziniaoToken': (data.get('ziniao_token') or '').strip(),
}
@@ -2274,6 +2278,7 @@ def update_shop_key(item_id):
'msg': result.get('message') or '更新成功',
'item': {
'id': item.get('id'),
'remark_name': item.get('remarkName') or '',
'ziniao_account_name': item.get('ziniaoAccountName') or '',
'ziniao_token': item.get('ziniaoToken') or '',
'created_at': (item.get('createdAt') or '').replace('T', ' ')[:16],
@@ -2345,6 +2350,51 @@ def list_dedupe_total_data():
})
@admin_api.route('/dedupe-total-data/export')
@login_required
def export_dedupe_total_data():
_, current_row, denied = _ensure_dedupe_total_data_access()
if denied:
return denied
params = {'operatorId': current_row.get('id')}
username = (request.args.get('username') or '').strip()
start_date = (request.args.get('start_date') or request.args.get('startDate') or '').strip()
end_date = (request.args.get('end_date') or request.args.get('endDate') or '').strip()
if username:
params['username'] = username
if start_date:
params['startDate'] = start_date
if end_date:
params['endDate'] = end_date
url = f"{backend_java_base_url}/api/admin/dedupe-total-data/export"
try:
resp = _get_backend_java_session().get(url, params=params, timeout=60)
except requests.RequestException:
return jsonify({'success': False, 'error': 'backend-java 服务不可用'}), 502
if resp.status_code >= 400:
try:
data = resp.json()
error = data.get('message') or data.get('error') or '导出失败'
except ValueError:
error = '导出失败'
return jsonify({'success': False, 'error': error}), resp.status_code
headers = {}
disposition = resp.headers.get('Content-Disposition')
if disposition:
headers['Content-Disposition'] = disposition
return Response(
resp.content,
status=resp.status_code,
headers=headers,
content_type=resp.headers.get(
'Content-Type',
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
),
)
@admin_api.route('/dedupe-total-data/import/<import_id>')
@login_required
def dedupe_total_data_import_progress(import_id):