浏览代码

Feat/add delete knowledge confirm (#5810)

tags/0.6.13
Jyong 1年前
父节点
当前提交
71bcf75d9a
没有帐户链接到提交者的电子邮件
共有 2 个文件被更改,包括 18 次插入4 次删除
  1. 10
    0
      api/controllers/console/datasets/datasets.py
  2. 8
    4
      api/services/dataset_service.py

+ 10
- 0
api/controllers/console/datasets/datasets.py 查看文件

except services.errors.dataset.DatasetInUseError: except services.errors.dataset.DatasetInUseError:
raise DatasetInUseError() raise DatasetInUseError()


class DatasetUseCheckApi(Resource):
@setup_required
@login_required
@account_initialization_required
def get(self, dataset_id):
dataset_id_str = str(dataset_id)

dataset_is_using = DatasetService.dataset_use_check(dataset_id_str)
return {'is_using': dataset_is_using}, 200


class DatasetQueryApi(Resource): class DatasetQueryApi(Resource):




api.add_resource(DatasetListApi, '/datasets') api.add_resource(DatasetListApi, '/datasets')
api.add_resource(DatasetApi, '/datasets/<uuid:dataset_id>') api.add_resource(DatasetApi, '/datasets/<uuid:dataset_id>')
api.add_resource(DatasetUseCheckApi, '/datasets/<uuid:dataset_id>/use-check')
api.add_resource(DatasetQueryApi, '/datasets/<uuid:dataset_id>/queries') api.add_resource(DatasetQueryApi, '/datasets/<uuid:dataset_id>/queries')
api.add_resource(DatasetErrorDocs, '/datasets/<uuid:dataset_id>/error-docs') api.add_resource(DatasetErrorDocs, '/datasets/<uuid:dataset_id>/error-docs')
api.add_resource(DatasetIndexingEstimateApi, '/datasets/indexing-estimate') api.add_resource(DatasetIndexingEstimateApi, '/datasets/indexing-estimate')

+ 8
- 4
api/services/dataset_service.py 查看文件

from models.model import UploadFile from models.model import UploadFile
from models.source import DataSourceOauthBinding from models.source import DataSourceOauthBinding
from services.errors.account import NoPermissionError from services.errors.account import NoPermissionError
from services.errors.dataset import DatasetInUseError, DatasetNameDuplicateError
from services.errors.dataset import DatasetNameDuplicateError
from services.errors.document import DocumentIndexingError from services.errors.document import DocumentIndexingError
from services.errors.file import FileNotExistsError from services.errors.file import FileNotExistsError
from services.feature_service import FeatureModel, FeatureService from services.feature_service import FeatureModel, FeatureService


@staticmethod @staticmethod
def delete_dataset(dataset_id, user): def delete_dataset(dataset_id, user):
count = AppDatasetJoin.query.filter_by(dataset_id=dataset_id).count()
if count > 0:
raise DatasetInUseError()


dataset = DatasetService.get_dataset(dataset_id) dataset = DatasetService.get_dataset(dataset_id)


db.session.commit() db.session.commit()
return True return True


@staticmethod
def dataset_use_check(dataset_id) -> bool:
count = AppDatasetJoin.query.filter_by(dataset_id=dataset_id).count()
if count > 0:
return True
return False

@staticmethod @staticmethod
def check_dataset_permission(dataset, user): def check_dataset_permission(dataset, user):
if dataset.tenant_id != user.current_tenant_id: if dataset.tenant_id != user.current_tenant_id:

正在加载...
取消
保存