Commit 63ad9bc1 authored by 于飞's avatar 于飞

批量删除关键词库

parent 865442e8
...@@ -6,10 +6,12 @@ from dbgpt.app.apps.utils.response import SuccessResponse,ErrorResponse ...@@ -6,10 +6,12 @@ from dbgpt.app.apps.utils.response import SuccessResponse,ErrorResponse
from dbgpt.app.apps.vadmin.auth.utils.current import FullAdminAuth from dbgpt.app.apps.vadmin.auth.utils.current import FullAdminAuth
from dbgpt.app.apps.vadmin.auth.utils.validation.auth import Auth from dbgpt.app.apps.vadmin.auth.utils.validation.auth import Auth
from . import schemas, crud from . import schemas, crud
from .models import VadminQuestion, VadminMedia
from .params.media_list import MediaListParams, GroupListParams, MediaEditParams, QuestionListParams, \ from .params.media_list import MediaListParams, GroupListParams, MediaEditParams, QuestionListParams, \
QuestionEditParams, CorrelationListParams QuestionEditParams, CorrelationListParams
from ...core.dependencies import IdList from ...core.dependencies import IdList
from dbgpt.app.apps.utils.filter import mydfafiter, mydfafiter_picture, mydfafiter_question, mydfafiter_video from dbgpt.app.apps.utils.filter import mydfafiter, mydfafiter_picture, mydfafiter_question, mydfafiter_video
from sqlalchemy import BinaryExpression
router = APIRouter() router = APIRouter()
...@@ -46,14 +48,14 @@ async def media_image_list(params: MediaListParams = Depends(), auth: Auth = Dep ...@@ -46,14 +48,14 @@ async def media_image_list(params: MediaListParams = Depends(), auth: Auth = Dep
@router.post("/media/del", summary="删除资源") @router.post("/media/del", summary="删除资源")
async def media_edit(ids: IdList = Depends(), auth: Auth = Depends(FullAdminAuth())): async def media_edit(ids: IdList = Depends(), auth: Auth = Depends(FullAdminAuth())):
media_dic = {'id': ids.ids[0]}
media_datas = await crud.MediaDal(auth.db).get_datas(**media_dic) id_filter: BinaryExpression = VadminMedia.id.in_(ids.ids)
if len(media_datas) > 0: media_datas, count = await crud.MediaDal(auth.db).get_datas(v_where=[id_filter], v_return_count=True)
print(f"------删除资源------>:{media_datas[0]}") for qdata in media_datas:
if media_datas[0].get('type') == 1: if qdata.get('type') == 1:
mydfafiter_picture.remove(media_datas[0].get('key_word')) mydfafiter_picture.remove(qdata.get('key_word'))
elif media_datas[0].get('type') == 2: elif qdata.get('type') == 2:
mydfafiter_video.remove(media_datas[0].get('key_word')) mydfafiter_video.remove(qdata.get('key_word'))
await crud.MediaDal(auth.db).delete_datas(ids.ids, v_soft=True) await crud.MediaDal(auth.db).delete_datas(ids.ids, v_soft=True)
return SuccessResponse("删除成功") return SuccessResponse("删除成功")
...@@ -113,14 +115,12 @@ async def question_list(params: QuestionListParams = Depends(), auth: Auth = Dep ...@@ -113,14 +115,12 @@ async def question_list(params: QuestionListParams = Depends(), auth: Auth = Dep
@router.post("/question/del", summary="删除问答对") @router.post("/question/del", summary="删除问答对")
async def question_add(ids: IdList = Depends(), auth: Auth = Depends(FullAdminAuth())): async def question_add(ids: IdList = Depends(), auth: Auth = Depends(FullAdminAuth())):
ret = await crud.QuestionDal(auth.db).delete_datas(ids.ids, v_soft=True) ret = await crud.QuestionDal(auth.db).delete_datas(ids.ids, v_soft=True)
#print(f"-------------------------delete->:{ret}")
question_dic = {'page': 1, 'limit': 0, 'v_order': None, 'v_order_field': None, 'id': ids.ids[0]}
question_datas, count = await crud.QuestionDal(auth.db).get_datas(**question_dic, v_return_count=True)
if len(question_datas) > 0: id_filter: BinaryExpression = VadminQuestion.id.in_(ids.ids)
print(f"------要删除问答对------>:{question_datas[0]}") question_datas, count = await crud.QuestionDal(auth.db).get_datas(v_where=[id_filter], v_return_count=True)
# 将关键词字典中删除一个新的问答对 for qdata in question_datas:
mydfafiter_question.remove(question_datas[0].get('key_word')) mydfafiter_question.remove(qdata.get('key_word'))
return SuccessResponse(ret) return SuccessResponse(ret)
......
...@@ -8,6 +8,7 @@ from dbgpt.app.apps.vadmin.auth.utils.validation.auth import Auth ...@@ -8,6 +8,7 @@ from dbgpt.app.apps.vadmin.auth.utils.validation.auth import Auth
from . import schemas, crud, models from . import schemas, crud, models
from dbgpt.app.apps.vadmin.word.models.similar import VadminWordSimilar from dbgpt.app.apps.vadmin.word.models.similar import VadminWordSimilar
from dbgpt.app.apps.vadmin.word.models.sensitive import VadminWordSensitive
from dbgpt.app.apps.vadmin.word.params.similar import SimilarParams from dbgpt.app.apps.vadmin.word.params.similar import SimilarParams
from dbgpt.app.apps.vadmin.word.schemas.similar import SimilarSchemas, SimilarIn,SimilarUpdate from dbgpt.app.apps.vadmin.word.schemas.similar import SimilarSchemas, SimilarIn,SimilarUpdate
from dbgpt.app.apps.vadmin.word.schemas.sensitive import SensitiveSchemas, SensitiveIn,SensitiveUpdate from dbgpt.app.apps.vadmin.word.schemas.sensitive import SensitiveSchemas, SensitiveIn,SensitiveUpdate
...@@ -16,6 +17,7 @@ from dbgpt.app.apps.vadmin.word import crud ...@@ -16,6 +17,7 @@ from dbgpt.app.apps.vadmin.word import crud
from fastapi.encoders import jsonable_encoder from fastapi.encoders import jsonable_encoder
from dbgpt.app.apps.utils.filter import mydfafiter, mydfafiter_picture, mydfafiter_question, mydfafiter_video from dbgpt.app.apps.utils.filter import mydfafiter, mydfafiter_picture, mydfafiter_question, mydfafiter_video
from ...core.dependencies import IdList from ...core.dependencies import IdList
from sqlalchemy import BinaryExpression
router = APIRouter() router = APIRouter()
...@@ -125,9 +127,10 @@ async def update_sensitive_byid(data: Request, auth: Auth = Depends(FullAdminAut ...@@ -125,9 +127,10 @@ async def update_sensitive_byid(data: Request, auth: Auth = Depends(FullAdminAut
@router.post("/delete_sensitives", summary="根据id删除敏感词") @router.post("/delete_sensitives", summary="根据id删除敏感词")
async def delete_sensitives(ids: IdList = Depends(), auth: Auth = Depends(FullAdminAuth())): async def delete_sensitives(ids: IdList = Depends(), auth: Auth = Depends(FullAdminAuth())):
id_filter: BinaryExpression = VadminWordSensitive.id.in_(ids.ids)
q_datas, count = await crud.SensitiveDal(auth.db).get_datas(v_where=[id_filter], v_return_count=True)
for qdata in q_datas:
mydfafiter.remove(qdata.get('key_word'))
await crud.SensitiveDal(auth.db).delete_datas(ids=ids.ids, v_soft=True) await crud.SensitiveDal(auth.db).delete_datas(ids=ids.ids, v_soft=True)
sensitive_datas = await crud.SensitiveDal(auth.db).get_sensitive_byid(ids.ids[0])
if sensitive_datas != None:
print(f"------要删除的敏感词------>:{sensitive_datas}")
mydfafiter.remove(sensitive_datas.word_name)
return SuccessResponse("删除成功") return SuccessResponse("删除成功")
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment