添加获取图片url等信息
This commit is contained in:
@@ -2,15 +2,15 @@ from models.connect_db import connect_db
|
||||
from models.logger import setup_logger
|
||||
|
||||
logger = setup_logger()
|
||||
connection = connect_db()
|
||||
|
||||
def update_description(emoji_uuid: str, description: str) -> bool:
|
||||
def update_description(emoji_uuid: str, description: str, connection = connect_db()) -> bool:
|
||||
"""
|
||||
更新表情包描述词
|
||||
|
||||
Args:
|
||||
emoji_uuid: 表情包UUID
|
||||
description: 新的描述词
|
||||
connection: 数据库socket
|
||||
|
||||
Returns:
|
||||
成功返回True,失败返回False
|
||||
@@ -40,12 +40,13 @@ def update_description(emoji_uuid: str, description: str) -> bool:
|
||||
return False
|
||||
|
||||
|
||||
def check_emoji(uuid: str) -> bool:
|
||||
def check_emoji(uuid: str, connection = connect_db()) -> bool:
|
||||
"""
|
||||
检查UUID是否存在于emoji表中
|
||||
|
||||
Args:
|
||||
uuid: 要检查的UUID字符串
|
||||
connection: 数据库socket
|
||||
|
||||
Returns:
|
||||
uuid 在数据库中存在则为 True,否则 False
|
||||
@@ -58,10 +59,10 @@ def check_emoji(uuid: str) -> bool:
|
||||
try:
|
||||
with connection.cursor() as cursor:
|
||||
# 执行查询
|
||||
sql = "SELECT 1 FROM emoji WHERE uuid = %s LIMIT 1"
|
||||
sql = "SELECT approved FROM approved WHERE uuid = %s LIMIT 1"
|
||||
cursor.execute(sql, (uuid,))
|
||||
|
||||
# 如果查询到结果则返回True
|
||||
# 如果查询到结果为1
|
||||
result = cursor.fetchone()
|
||||
return result is not None
|
||||
|
||||
@@ -69,6 +70,41 @@ def check_emoji(uuid: str) -> bool:
|
||||
logger.error(f"检查UUID失败: {uuid}, 错误: {e}")
|
||||
return False
|
||||
|
||||
def get_emoji_content(uuid: str, content_index: str = 'url', connection = connect_db()) -> tuple | None:
|
||||
"""
|
||||
获取图片信息,检查图片在 approved 库中检索 approved 是否为 1,为 1 则返回获取到的索引内容
|
||||
|
||||
Args:
|
||||
uuid: emoji的UUID
|
||||
content_index: 内容检索索引
|
||||
connection: 数据库socket
|
||||
|
||||
Returns:
|
||||
content: 获取到的内容,比如 url
|
||||
"""
|
||||
# 参数验证
|
||||
if not uuid or not isinstance(uuid, str):
|
||||
logger.warning(f"无效的UUID参数: {uuid}")
|
||||
return None
|
||||
|
||||
try:
|
||||
with connection.cursor() as cursor:
|
||||
sql1 = "SELECT approved FROM approved WHERE uuid = %s LIMIT 1"
|
||||
cursor.execute(sql1, (uuid,))
|
||||
|
||||
result = cursor.fetchone()
|
||||
if result['approved'] == 1:
|
||||
sql2 = f"SELECT {content_index} FROM emoji WHERE uuid = %s LIMIT 1"
|
||||
cursor.execute(sql2, (uuid,))
|
||||
contents = cursor.fetchone()
|
||||
return contents[content_index]
|
||||
|
||||
return None
|
||||
|
||||
except Exception as e:
|
||||
logger.error(f"获取失败: {uuid}, 错误: {e}")
|
||||
return None
|
||||
|
||||
if __name__ == "__main__":
|
||||
record = check_emoji("ffe1663c-44e1-4719-a5ba-01485f70a87e")
|
||||
print(record)
|
||||
Reference in New Issue
Block a user