Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
db_gpt
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linyangyang
db_gpt
Commits
93229785
Commit
93229785
authored
Aug 13, 2024
by
于飞
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
铭感词
parent
789d86ac
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
152 additions
and
2 deletions
+152
-2
crud.py
dbgpt/app/apps/vadmin/word/crud.py
+25
-0
sensitive.py
dbgpt/app/apps/vadmin/word/models/sensitive.py
+19
-0
sensitive.py
dbgpt/app/apps/vadmin/word/params/sensitive.py
+26
-0
__init__.py
dbgpt/app/apps/vadmin/word/schemas/__init__.py
+2
-0
sensitive.py
dbgpt/app/apps/vadmin/word/schemas/sensitive.py
+47
-0
views.py
dbgpt/app/apps/vadmin/word/views.py
+33
-2
No files found.
dbgpt/app/apps/vadmin/word/crud.py
View file @
93229785
...
@@ -28,6 +28,8 @@ from dbgpt.app.apps.utils.tools import test_password
...
@@ -28,6 +28,8 @@ from dbgpt.app.apps.utils.tools import test_password
from
.
import
models
,
schemas
from
.
import
models
,
schemas
from
.params.similar
import
SimilarParams
from
.params.similar
import
SimilarParams
from
.schemas.similar
import
SimilarIn
from
.schemas.similar
import
SimilarIn
from
.schemas.sensitive
import
SensitiveIn
from
.models
import
sensitive
from
dbgpt.app.apps.config
import
settings
from
dbgpt.app.apps.config
import
settings
from
dbgpt.app.apps.utils.excel.excel_manage
import
ExcelManage
from
dbgpt.app.apps.utils.excel.excel_manage
import
ExcelManage
...
@@ -56,6 +58,9 @@ class SimilarDal(DalBase):
...
@@ -56,6 +58,9 @@ class SimilarDal(DalBase):
return
list
(
queryset
.
all
())
return
list
(
queryset
.
all
())
async
def
get_similar_byid
(
self
,
qid
):
async
def
get_similar_byid
(
self
,
qid
):
"""
根据ID查询,近义词
"""
sql1
=
select
(
models
.
similar
.
VadminWordSimilar
)
.
where
(
models
.
similar
.
VadminWordSimilar
.
id
==
qid
)
sql1
=
select
(
models
.
similar
.
VadminWordSimilar
)
.
where
(
models
.
similar
.
VadminWordSimilar
.
id
==
qid
)
queryset1
=
await
self
.
db
.
scalars
(
sql1
)
queryset1
=
await
self
.
db
.
scalars
(
sql1
)
similar1
=
queryset1
.
unique
()
.
first
()
similar1
=
queryset1
.
unique
()
.
first
()
...
@@ -64,6 +69,18 @@ class SimilarDal(DalBase):
...
@@ -64,6 +69,18 @@ class SimilarDal(DalBase):
else
:
else
:
print
(
f
"编号:{similar1.id} 词条:{similar1.word_name} 近义词:{similar1.similar_name} "
)
print
(
f
"编号:{similar1.id} 词条:{similar1.word_name} 近义词:{similar1.similar_name} "
)
async
def
delete_similar_byid
(
self
,
qid
):
"""
根据ID删除一个近义词
"""
sql1
=
self
.
delete_datas
(
qid
)
queryset1
=
await
self
.
db
.
scalars
(
sql1
)
similar1
=
queryset1
.
unique
()
.
first
()
if
similar1
is
None
:
print
(
'similar1 is None'
)
else
:
print
(
f
"编号:{similar1.id} 词条:{similar1.word_name} 近义词:{similar1.similar_name} "
)
async
def
create_similar_data
(
async
def
create_similar_data
(
self
,
self
,
data
:
SimilarIn
,
data
:
SimilarIn
,
...
@@ -96,4 +113,12 @@ class SimilarDal(DalBase):
...
@@ -96,4 +113,12 @@ class SimilarDal(DalBase):
await
self
.
db
.
commit
()
await
self
.
db
.
commit
()
return
None
return
None
class
SensitiveDal
(
DalBase
):
def
__init__
(
self
,
db
:
AsyncSession
):
super
(
SensitiveDal
,
self
)
.
__init__
()
self
.
db
=
db
self
.
model
=
models
.
sensitive
.
VadminWordSensitive
self
.
schema
=
schemas
.
sensitive
.
SensitiveSchemas
dbgpt/app/apps/vadmin/word/models/sensitive.py
0 → 100644
View file @
93229785
#!/usr/bin/python
# -*- coding: utf-8 -*-
# @version : 1.0
# @Create Time : 2022/7/7 13:41
# @File : user.py
# @IDE : PyCharm
# @desc : 敏感词模型
from
datetime
import
datetime
from
sqlalchemy.orm
import
relationship
,
Mapped
,
mapped_column
from
sqlalchemy
import
Column
,
DateTime
,
Integer
,
String
,
Text
,
func
from
dbgpt.app.apps.db.db_base
import
BaseModel
class
VadminWordSensitive
(
BaseModel
):
__tablename__
=
"vadmin_word_sensitive"
__table_args__
=
({
'comment'
:
'敏感词表'
})
word_name
:
Mapped
[
str
]
=
mapped_column
(
String
(
100
),
index
=
True
,
nullable
=
False
,
comment
=
"词条"
)
\ No newline at end of file
dbgpt/app/apps/vadmin/word/params/sensitive.py
0 → 100644
View file @
93229785
#!/usr/bin/python
# -*- coding: utf-8 -*-
# @version : 1.0
# @Create Time : 2021/10/18 22:19
# @File : user.py
# @IDE : PyCharm
# @desc : 查询参数-类依赖项
"""
类依赖项-官方文档:https://fastapi.tiangolo.com/zh/tutorial/dependencies/classes-as-dependencies/
"""
from
fastapi
import
Depends
,
Query
from
dbgpt.app.apps.core.dependencies
import
Paging
,
QueryParams
class
SensitiveParams
(
QueryParams
):
"""
列表分页
"""
def
__init__
(
self
,
word_name
:
str
|
None
=
Query
(
None
,
title
=
"词条"
),
):
self
.
word_name
=
(
"like"
,
word_name
)
dbgpt/app/apps/vadmin/word/schemas/__init__.py
View file @
93229785
from
.sensitive
import
SensitiveIn
from
.similar
import
SimilarIn
\ No newline at end of file
dbgpt/app/apps/vadmin/word/schemas/sensitive.py
0 → 100644
View file @
93229785
#!/usr/bin/python
# -*- coding: utf-8 -*-
# @version : 1.0
# @Create Time : 2021/10/18 22:19
# @File : user.py
# @IDE : PyCharm
# @desc : pydantic 模型,用于数据库序列化操作
from
datetime
import
datetime
from
pydantic
import
BaseModel
,
ConfigDict
,
field_validator
from
pydantic_core.core_schema
import
FieldValidationInfo
class
SensitiveSchemas
(
BaseModel
):
word_name
:
str
|
None
=
""
is_delete
:
int
|
None
=
0
create_datetime
:
datetime
|
None
=
None
update_datetime
:
datetime
|
None
=
None
delete_datetime
:
datetime
|
None
=
None
class
SensitiveIn
(
SensitiveSchemas
):
"""
创建近义词
"""
word_name
:
str
|
None
=
""
is_delete
:
int
|
None
=
0
create_datetime
:
datetime
|
None
=
None
update_datetime
:
datetime
|
None
=
None
delete_datetime
:
datetime
|
None
=
None
class
SensitiveOut
(
SensitiveSchemas
):
word_name
:
str
|
None
=
""
is_delete
:
int
|
None
=
0
create_datetime
:
datetime
|
None
=
None
update_datetime
:
datetime
|
None
=
None
delete_datetime
:
datetime
|
None
=
None
class
SensitiveUpdate
(
BaseModel
):
"""
更新近义词信息
"""
word_name
:
str
|
None
=
""
is_delete
:
int
|
None
=
0
create_datetime
:
datetime
|
None
=
None
update_datetime
:
datetime
|
None
=
None
delete_datetime
:
datetime
|
None
=
None
dbgpt/app/apps/vadmin/word/views.py
View file @
93229785
from
redis.asyncio
import
Redis
from
redis.asyncio
import
Redis
from
fastapi
import
APIRouter
,
Depends
,
Body
,
UploadFile
,
Request
from
fastapi
import
APIRouter
,
Depends
,
Body
,
UploadFile
,
Request
from
dbgpt.app.apps.utils.response
import
SuccessResponse
from
dbgpt.app.apps.utils.response
import
SuccessResponse
,
ErrorResponse
from
dbgpt.app.apps.vadmin.auth.utils.current
import
AllUserAuth
,
FullAdminAuth
,
OpenAuth
from
dbgpt.app.apps.vadmin.auth.utils.current
import
AllUserAuth
,
FullAdminAuth
,
OpenAuth
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
,
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.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
from
dbgpt.app.apps.vadmin.word.schemas.similar
import
SimilarSchemas
,
SimilarIn
...
@@ -50,4 +51,34 @@ async def create_similar(data: Request, auth: Auth = Depends(OpenAuth())):
...
@@ -50,4 +51,34 @@ async def create_similar(data: Request, auth: Auth = Depends(OpenAuth())):
await
crud
.
SimilarDal
(
auth
.
db
)
.
create_similar_data
(
data
=
data
)
await
crud
.
SimilarDal
(
auth
.
db
)
.
create_similar_data
(
data
=
data
)
datas
=
[]
datas
=
[]
return
SuccessResponse
(
datas
,
count
=
1
)
return
SuccessResponse
(
datas
,
count
=
1
)
\ No newline at end of file
@
router
.
post
(
"/delete_similars"
,
summary
=
"根据id删除同义词"
)
async
def
delete_similars
(
data
:
Request
,
auth
:
Auth
=
Depends
(
OpenAuth
())):
if
data
is
None
:
print
(
'SimilarIn is None'
)
return
ErrorResponse
(
"不能删除当前近义词"
)
"""
else:
print(f"req词条:{data.query_params['word_name']} req近义词:{data.query_params['similar_name']} ")
"""
similarids
=
[
7
]
await
crud
.
SimilarDal
(
auth
.
db
)
.
delete_datas
(
ids
=
similarids
,
v_soft
=
True
)
return
SuccessResponse
(
"删除成功"
)
@
router
.
get
(
"/update_similar_byid"
,
summary
=
"根据id修改同义词"
)
async
def
update_similar_byid
(
auth
:
Auth
=
Depends
(
OpenAuth
())):
model
=
VadminWordSimilar
print
(
f
"编号:{model.id} 近义词:{model.word_name}"
)
datas
=
await
crud
.
SimilarDal
(
auth
.
db
)
.
get_similars
()
jsondatas
=
jsonable_encoder
(
datas
)
for
row
in
datas
:
print
(
f
"编号:{row.id} 词条:{row.word_name} 近义词:{row.similar_name} "
)
return
SuccessResponse
(
jsondatas
,
count
=
1
)
@
router
.
post
(
"/create_sensitive"
,
summary
=
"创建敏感词"
)
async
def
create_user
(
data
:
schemas
.
SensitiveIn
,
auth
:
Auth
=
Depends
(
OpenAuth
())):
return
SuccessResponse
(
await
crud
.
SensitiveDal
(
auth
.
db
)
.
create_data
(
data
=
data
))
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment