增加公共下载进度、增加接收SKU、密钥分别存放
This commit is contained in:
@@ -78,6 +78,11 @@ ADMIN_MENU_ACCESS_CONFIG = {
|
||||
'route_path': 'product-categories',
|
||||
'error': '无权访问商品类目模块',
|
||||
},
|
||||
'invalid-asin-data': {
|
||||
'column_key': 'admin_invalid_asin_data',
|
||||
'route_path': 'invalid-asin-data',
|
||||
'error': '无权访问不符合ASIN数据模块',
|
||||
},
|
||||
}
|
||||
|
||||
ADMIN_MENU_ACCESS_CONFIG.update({
|
||||
@@ -1760,6 +1765,115 @@ def delete_dedupe_total_data(item_id):
|
||||
})
|
||||
|
||||
|
||||
# ---------- 不符合 ASIN 数据 ----------
|
||||
|
||||
|
||||
def _format_invalid_asin_data_item(item):
|
||||
return {
|
||||
'id': item.get('id'),
|
||||
'data_value': item.get('dataValue') or '',
|
||||
'brand': item.get('brand') or '',
|
||||
'created_at': (item.get('createdAt') or '').replace('T', ' ')[:16],
|
||||
}
|
||||
|
||||
|
||||
@admin_api.route('/invalid-asin-data')
|
||||
@admin_required
|
||||
def list_invalid_asin_data():
|
||||
_, _, denied = _ensure_admin_menu_access('invalid-asin-data')
|
||||
if denied:
|
||||
return denied
|
||||
page = max(1, int(request.args.get('page', 1)))
|
||||
page_size = min(100, max(1, int(request.args.get('page_size', 15))))
|
||||
keyword = (request.args.get('keyword') or '').strip()
|
||||
data, error_response, status = _proxy_backend_java(
|
||||
'GET',
|
||||
'/api/admin/invalid-asin-data',
|
||||
params={'page': page, 'pageSize': page_size, 'keyword': keyword},
|
||||
)
|
||||
if error_response is not None:
|
||||
return error_response, status
|
||||
payload = data.get('data') or {}
|
||||
items = [_format_invalid_asin_data_item(item) for item in (payload.get('items') or [])]
|
||||
return jsonify({
|
||||
'success': True,
|
||||
'items': items,
|
||||
'total': payload.get('total') or 0,
|
||||
'page': payload.get('page') or page,
|
||||
'page_size': payload.get('pageSize') or page_size,
|
||||
})
|
||||
|
||||
|
||||
@admin_api.route('/invalid-asin-data', methods=['POST'])
|
||||
@admin_required
|
||||
def create_invalid_asin_data():
|
||||
_, _, denied = _ensure_admin_menu_access('invalid-asin-data')
|
||||
if denied:
|
||||
return denied
|
||||
data = request.get_json() or {}
|
||||
payload = {
|
||||
'dataValue': (data.get('data_value') or '').strip(),
|
||||
'brand': (data.get('brand') or '').strip(),
|
||||
}
|
||||
result, error_response, status = _proxy_backend_java(
|
||||
'POST',
|
||||
'/api/admin/invalid-asin-data',
|
||||
json_data=payload,
|
||||
)
|
||||
if error_response is not None:
|
||||
return error_response, status
|
||||
item = result.get('data') or {}
|
||||
return jsonify({
|
||||
'success': True,
|
||||
'msg': result.get('message') or '创建成功',
|
||||
'item': _format_invalid_asin_data_item(item),
|
||||
})
|
||||
|
||||
|
||||
@admin_api.route('/invalid-asin-data/<int:item_id>', methods=['PUT'])
|
||||
@admin_required
|
||||
def update_invalid_asin_data(item_id):
|
||||
_, _, denied = _ensure_admin_menu_access('invalid-asin-data')
|
||||
if denied:
|
||||
return denied
|
||||
data = request.get_json() or {}
|
||||
payload = {
|
||||
'dataValue': (data.get('data_value') or '').strip(),
|
||||
'brand': (data.get('brand') or '').strip(),
|
||||
}
|
||||
result, error_response, status = _proxy_backend_java(
|
||||
'PUT',
|
||||
f'/api/admin/invalid-asin-data/{item_id}',
|
||||
json_data=payload,
|
||||
)
|
||||
if error_response is not None:
|
||||
return error_response, status
|
||||
item = result.get('data') or {}
|
||||
return jsonify({
|
||||
'success': True,
|
||||
'msg': result.get('message') or '更新成功',
|
||||
'item': _format_invalid_asin_data_item(item),
|
||||
})
|
||||
|
||||
|
||||
@admin_api.route('/invalid-asin-data/<int:item_id>', methods=['DELETE'])
|
||||
@admin_required
|
||||
def delete_invalid_asin_data(item_id):
|
||||
_, _, denied = _ensure_admin_menu_access('invalid-asin-data')
|
||||
if denied:
|
||||
return denied
|
||||
result, error_response, status = _proxy_backend_java(
|
||||
'DELETE',
|
||||
f'/api/admin/invalid-asin-data/{item_id}',
|
||||
)
|
||||
if error_response is not None:
|
||||
return error_response, status
|
||||
return jsonify({
|
||||
'success': True,
|
||||
'msg': result.get('message') or '删除成功',
|
||||
})
|
||||
|
||||
|
||||
# ---------- 店铺管理 ----------
|
||||
|
||||
def _format_shop_manage_item(item):
|
||||
|
||||
Reference in New Issue
Block a user