mirror of
https://github.com/infiniflow/ragflow.git
synced 2025-12-08 20:42:30 +08:00
Fix: component list operation issue. (#11364)
### Type of change - [x] Bug Fix (non-breaking change which fixes an issue)
This commit is contained in:
@ -30,12 +30,12 @@ admin_bp = Blueprint('admin', __name__, url_prefix='/api/v1/admin')
|
|||||||
|
|
||||||
|
|
||||||
@admin_bp.route('/login', methods=['POST'])
|
@admin_bp.route('/login', methods=['POST'])
|
||||||
async def login():
|
def login():
|
||||||
if not await request.json:
|
if not request.json:
|
||||||
return error_response('Authorize admin failed.' ,400)
|
return error_response('Authorize admin failed.' ,400)
|
||||||
try:
|
try:
|
||||||
email = await request.json.get("email", "")
|
email = request.json.get("email", "")
|
||||||
password = await request.json.get("password", "")
|
password = request.json.get("password", "")
|
||||||
return login_admin(email, password)
|
return login_admin(email, password)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
return error_response(str(e), 500)
|
return error_response(str(e), 500)
|
||||||
@ -76,9 +76,9 @@ def list_users():
|
|||||||
@admin_bp.route('/users', methods=['POST'])
|
@admin_bp.route('/users', methods=['POST'])
|
||||||
@login_required
|
@login_required
|
||||||
@check_admin_auth
|
@check_admin_auth
|
||||||
async def create_user():
|
def create_user():
|
||||||
try:
|
try:
|
||||||
data = await request.get_json()
|
data = request.get_json()
|
||||||
if not data or 'username' not in data or 'password' not in data:
|
if not data or 'username' not in data or 'password' not in data:
|
||||||
return error_response("Username and password are required", 400)
|
return error_response("Username and password are required", 400)
|
||||||
|
|
||||||
@ -120,9 +120,9 @@ def delete_user(username):
|
|||||||
@admin_bp.route('/users/<username>/password', methods=['PUT'])
|
@admin_bp.route('/users/<username>/password', methods=['PUT'])
|
||||||
@login_required
|
@login_required
|
||||||
@check_admin_auth
|
@check_admin_auth
|
||||||
async def change_password(username):
|
def change_password(username):
|
||||||
try:
|
try:
|
||||||
data = await request.get_json()
|
data = request.get_json()
|
||||||
if not data or 'new_password' not in data:
|
if not data or 'new_password' not in data:
|
||||||
return error_response("New password is required", 400)
|
return error_response("New password is required", 400)
|
||||||
|
|
||||||
@ -139,9 +139,9 @@ async def change_password(username):
|
|||||||
@admin_bp.route('/users/<username>/activate', methods=['PUT'])
|
@admin_bp.route('/users/<username>/activate', methods=['PUT'])
|
||||||
@login_required
|
@login_required
|
||||||
@check_admin_auth
|
@check_admin_auth
|
||||||
async def alter_user_activate_status(username):
|
def alter_user_activate_status(username):
|
||||||
try:
|
try:
|
||||||
data = await request.get_json()
|
data = request.get_json()
|
||||||
if not data or 'activate_status' not in data:
|
if not data or 'activate_status' not in data:
|
||||||
return error_response("Activation status is required", 400)
|
return error_response("Activation status is required", 400)
|
||||||
activate_status = data['activate_status']
|
activate_status = data['activate_status']
|
||||||
@ -253,9 +253,9 @@ def restart_service(service_id):
|
|||||||
@admin_bp.route('/roles', methods=['POST'])
|
@admin_bp.route('/roles', methods=['POST'])
|
||||||
@login_required
|
@login_required
|
||||||
@check_admin_auth
|
@check_admin_auth
|
||||||
async def create_role():
|
def create_role():
|
||||||
try:
|
try:
|
||||||
data = await request.get_json()
|
data = request.get_json()
|
||||||
if not data or 'role_name' not in data:
|
if not data or 'role_name' not in data:
|
||||||
return error_response("Role name is required", 400)
|
return error_response("Role name is required", 400)
|
||||||
role_name: str = data['role_name']
|
role_name: str = data['role_name']
|
||||||
@ -269,9 +269,9 @@ async def create_role():
|
|||||||
@admin_bp.route('/roles/<role_name>', methods=['PUT'])
|
@admin_bp.route('/roles/<role_name>', methods=['PUT'])
|
||||||
@login_required
|
@login_required
|
||||||
@check_admin_auth
|
@check_admin_auth
|
||||||
async def update_role(role_name: str):
|
def update_role(role_name: str):
|
||||||
try:
|
try:
|
||||||
data = await request.get_json()
|
data = request.get_json()
|
||||||
if not data or 'description' not in data:
|
if not data or 'description' not in data:
|
||||||
return error_response("Role description is required", 400)
|
return error_response("Role description is required", 400)
|
||||||
description: str = data['description']
|
description: str = data['description']
|
||||||
@ -317,9 +317,9 @@ def get_role_permission(role_name: str):
|
|||||||
@admin_bp.route('/roles/<role_name>/permission', methods=['POST'])
|
@admin_bp.route('/roles/<role_name>/permission', methods=['POST'])
|
||||||
@login_required
|
@login_required
|
||||||
@check_admin_auth
|
@check_admin_auth
|
||||||
async def grant_role_permission(role_name: str):
|
def grant_role_permission(role_name: str):
|
||||||
try:
|
try:
|
||||||
data = await request.get_json()
|
data = request.get_json()
|
||||||
if not data or 'actions' not in data or 'resource' not in data:
|
if not data or 'actions' not in data or 'resource' not in data:
|
||||||
return error_response("Permission is required", 400)
|
return error_response("Permission is required", 400)
|
||||||
actions: list = data['actions']
|
actions: list = data['actions']
|
||||||
@ -333,9 +333,9 @@ async def grant_role_permission(role_name: str):
|
|||||||
@admin_bp.route('/roles/<role_name>/permission', methods=['DELETE'])
|
@admin_bp.route('/roles/<role_name>/permission', methods=['DELETE'])
|
||||||
@login_required
|
@login_required
|
||||||
@check_admin_auth
|
@check_admin_auth
|
||||||
async def revoke_role_permission(role_name: str):
|
def revoke_role_permission(role_name: str):
|
||||||
try:
|
try:
|
||||||
data = await request.get_json()
|
data = request.get_json()
|
||||||
if not data or 'actions' not in data or 'resource' not in data:
|
if not data or 'actions' not in data or 'resource' not in data:
|
||||||
return error_response("Permission is required", 400)
|
return error_response("Permission is required", 400)
|
||||||
actions: list = data['actions']
|
actions: list = data['actions']
|
||||||
@ -349,9 +349,9 @@ async def revoke_role_permission(role_name: str):
|
|||||||
@admin_bp.route('/users/<user_name>/role', methods=['PUT'])
|
@admin_bp.route('/users/<user_name>/role', methods=['PUT'])
|
||||||
@login_required
|
@login_required
|
||||||
@check_admin_auth
|
@check_admin_auth
|
||||||
async def update_user_role(user_name: str):
|
def update_user_role(user_name: str):
|
||||||
try:
|
try:
|
||||||
data = await request.get_json()
|
data = request.get_json()
|
||||||
if not data or 'role_name' not in data:
|
if not data or 'role_name' not in data:
|
||||||
return error_response("Role name is required", 400)
|
return error_response("Role name is required", 400)
|
||||||
role_name: str = data['role_name']
|
role_name: str = data['role_name']
|
||||||
|
|||||||
@ -47,7 +47,9 @@ class ListOperations(ComponentBase,ABC):
|
|||||||
def _invoke(self, **kwargs):
|
def _invoke(self, **kwargs):
|
||||||
self.input_objects=[]
|
self.input_objects=[]
|
||||||
inputs = getattr(self._param, "query", None)
|
inputs = getattr(self._param, "query", None)
|
||||||
self.inputs=self._canvas.get_variable_value(inputs)
|
self.inputs = self._canvas.get_variable_value(inputs)
|
||||||
|
if not isinstance(self.inputs, list):
|
||||||
|
raise TypeError("The input of List Operations should be an array.")
|
||||||
self.set_input_value(inputs, self.inputs)
|
self.set_input_value(inputs, self.inputs)
|
||||||
if self._param.operations == "topN":
|
if self._param.operations == "topN":
|
||||||
self._topN()
|
self._topN()
|
||||||
|
|||||||
Reference in New Issue
Block a user