mirror of
https://github.com/open-webui/open-webui
synced 2025-03-16 18:38:44 +00:00
refac: chat tags
This commit is contained in:
parent
e8085f80a7
commit
facb6edfdc
@ -321,19 +321,28 @@ async def get_all_tags(user=Depends(get_current_user)):
|
|||||||
############################
|
############################
|
||||||
|
|
||||||
|
|
||||||
@router.get("/tags/tag/{tag_name}", response_model=List[ChatTitleIdResponse])
|
class TagNameForm(BaseModel):
|
||||||
|
name: str
|
||||||
|
|
||||||
|
|
||||||
|
@router.post("/tags", response_model=List[ChatTitleIdResponse])
|
||||||
async def get_user_chat_list_by_tag_name(
|
async def get_user_chat_list_by_tag_name(
|
||||||
tag_name: str, user=Depends(get_current_user), skip: int = 0, limit: int = 50
|
form_data: TagNameForm,
|
||||||
|
user=Depends(get_current_user),
|
||||||
|
skip: int = 0,
|
||||||
|
limit: int = 50,
|
||||||
):
|
):
|
||||||
chat_ids = [
|
chat_ids = [
|
||||||
chat_id_tag.chat_id
|
chat_id_tag.chat_id
|
||||||
for chat_id_tag in Tags.get_chat_ids_by_tag_name_and_user_id(tag_name, user.id)
|
for chat_id_tag in Tags.get_chat_ids_by_tag_name_and_user_id(
|
||||||
|
form_data.name, user.id
|
||||||
|
)
|
||||||
]
|
]
|
||||||
|
|
||||||
chats = Chats.get_chat_list_by_chat_ids(chat_ids, skip, limit)
|
chats = Chats.get_chat_list_by_chat_ids(chat_ids, skip, limit)
|
||||||
|
|
||||||
if len(chats) == 0:
|
if len(chats) == 0:
|
||||||
Tags.delete_tag_by_tag_name_and_user_id(tag_name, user.id)
|
Tags.delete_tag_by_tag_name_and_user_id(form_data.name, user.id)
|
||||||
|
|
||||||
return chats
|
return chats
|
||||||
|
|
||||||
|
@ -220,13 +220,16 @@ export const getAllChatTags = async (token: string) => {
|
|||||||
export const getChatListByTagName = async (token: string = '', tagName: string) => {
|
export const getChatListByTagName = async (token: string = '', tagName: string) => {
|
||||||
let error = null;
|
let error = null;
|
||||||
|
|
||||||
const res = await fetch(`${WEBUI_API_BASE_URL}/chats/tags/tag/${tagName}`, {
|
const res = await fetch(`${WEBUI_API_BASE_URL}/chats/tags`, {
|
||||||
method: 'GET',
|
method: 'POST',
|
||||||
headers: {
|
headers: {
|
||||||
Accept: 'application/json',
|
Accept: 'application/json',
|
||||||
'Content-Type': 'application/json',
|
'Content-Type': 'application/json',
|
||||||
...(token && { authorization: `Bearer ${token}` })
|
...(token && { authorization: `Bearer ${token}` })
|
||||||
}
|
},
|
||||||
|
body: JSON.stringify({
|
||||||
|
name: tagName
|
||||||
|
})
|
||||||
})
|
})
|
||||||
.then(async (res) => {
|
.then(async (res) => {
|
||||||
if (!res.ok) throw await res.json();
|
if (!res.ok) throw await res.json();
|
||||||
|
Loading…
Reference in New Issue
Block a user