mirror of
https://github.com/suyiiyii/nonebot-bison.git
synced 2025-06-05 19:36:43 +08:00
update api
This commit is contained in:
parent
ee01773e64
commit
b8af6d0024
@ -1,8 +1,18 @@
|
||||
import React from 'react';
|
||||
import { useGetSubsQuery, useDeleteSubMutation } from './subscribeConfigSlice';
|
||||
|
||||
export default function SubscribeManager() {
|
||||
const { data: subs } = useGetSubsQuery();
|
||||
const [patchSub] = useDeleteSubMutation();
|
||||
|
||||
const createNewSub = () => {
|
||||
patchSub({ target: '2773976700', platformName: 'weibo', groupNumber: 868610060 }).unwrap();
|
||||
};
|
||||
return (
|
||||
<>
|
||||
<div>{ subs && JSON.stringify(subs) }</div>
|
||||
<div>1</div>
|
||||
<button onClick={() => createNewSub()} type="button">new</button>
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
import { createApi } from '@reduxjs/toolkit/query/react';
|
||||
import { StatusResp, SubscribeConfig, SubscribeResp } from '../../utils/type';
|
||||
import {
|
||||
StatusResp, SubmitParam, SubscribeResp,
|
||||
} from '../../utils/type';
|
||||
import { baseQueryWithAuth } from '../auth/authQuery';
|
||||
|
||||
export const subscribeApi = createApi({
|
||||
@ -11,23 +13,33 @@ export const subscribeApi = createApi({
|
||||
query: () => '/subs',
|
||||
providesTags: ['Subscribe'],
|
||||
}),
|
||||
newSub: builder.mutation<StatusResp, SubscribeConfig>({
|
||||
query: (config) => ({
|
||||
newSub: builder.mutation<StatusResp, SubmitParam>({
|
||||
query: ({ groupNumber, sub }) => ({
|
||||
method: 'POST',
|
||||
url: '/subs',
|
||||
body: config,
|
||||
url: `/subs?groupNumber=${groupNumber}`,
|
||||
body: sub,
|
||||
}),
|
||||
invalidatesTags: ['Subscribe'],
|
||||
}),
|
||||
updateSub: builder.mutation<StatusResp, SubscribeResp>({
|
||||
query: (config) => ({
|
||||
updateSub: builder.mutation<StatusResp, SubmitParam>({
|
||||
query: ({ groupNumber, sub }) => ({
|
||||
method: 'PATCH',
|
||||
url: '/subs',
|
||||
body: config,
|
||||
url: `/subs?groupNumber=${groupNumber}`,
|
||||
body: sub,
|
||||
}),
|
||||
invalidatesTags: ['Subscribe'],
|
||||
}),
|
||||
deleteSub: builder.mutation<StatusResp,
|
||||
{ groupNumber: number; target: string; platformName: string }>({
|
||||
query: ({ groupNumber, target, platformName }) => ({
|
||||
method: 'DELETE',
|
||||
url: `/subs?groupNumber=${groupNumber}&target=${target}&platformName=${platformName}`,
|
||||
}),
|
||||
invalidatesTags: ['Subscribe'],
|
||||
}),
|
||||
}),
|
||||
});
|
||||
|
||||
export const { useGetSubsQuery } = subscribeApi;
|
||||
export const {
|
||||
useGetSubsQuery, useNewSubMutation, useDeleteSubMutation, useUpdateSubMutation,
|
||||
} = subscribeApi;
|
||||
|
@ -47,3 +47,8 @@ export interface StatusResp {
|
||||
status: number;
|
||||
msg: string;
|
||||
}
|
||||
|
||||
export interface SubmitParam {
|
||||
groupNumber: number;
|
||||
sub: SubscribeConfig;
|
||||
}
|
||||
|
@ -66,7 +66,7 @@ def register_router_fastapi(driver: Driver, socketio):
|
||||
return obj
|
||||
|
||||
async def check_group_permission(
|
||||
groupNumber: str, token_obj: dict = Depends(get_jwt_obj)
|
||||
groupNumber: int, token_obj: dict = Depends(get_jwt_obj)
|
||||
):
|
||||
groups = token_obj["groups"]
|
||||
for group in groups:
|
||||
@ -99,7 +99,7 @@ def register_router_fastapi(driver: Driver, socketio):
|
||||
return await get_target_name(platformName, target, jwt_obj)
|
||||
|
||||
@app.post(SUBSCRIBE_URL, dependencies=[Depends(check_group_permission)])
|
||||
async def _add_group_subs(groupNumber: str, req: AddSubscribeReq):
|
||||
async def _add_group_subs(groupNumber: int, req: AddSubscribeReq):
|
||||
return await add_group_sub(
|
||||
group_number=groupNumber,
|
||||
platform_name=req.platformName,
|
||||
@ -110,7 +110,7 @@ def register_router_fastapi(driver: Driver, socketio):
|
||||
)
|
||||
|
||||
@app.patch(SUBSCRIBE_URL, dependencies=[Depends(check_group_permission)])
|
||||
async def _update_group_subs(groupNumber: str, req: AddSubscribeReq):
|
||||
async def _update_group_subs(groupNumber: int, req: AddSubscribeReq):
|
||||
return await update_group_sub(
|
||||
group_number=groupNumber,
|
||||
platform_name=req.platformName,
|
||||
@ -121,7 +121,7 @@ def register_router_fastapi(driver: Driver, socketio):
|
||||
)
|
||||
|
||||
@app.delete(SUBSCRIBE_URL, dependencies=[Depends(check_group_permission)])
|
||||
async def _del_group_subs(groupNumber: str, target: str, platformName: str):
|
||||
async def _del_group_subs(groupNumber: int, target: str, platformName: str):
|
||||
return await del_group_sub(groupNumber, platformName, target)
|
||||
|
||||
app.mount(URL_BASE, SinglePageApplication(directory=static_path), name="bison")
|
||||
|
@ -89,7 +89,7 @@ async def get_subs_info(jwt_obj: dict):
|
||||
map(
|
||||
lambda sub: {
|
||||
"platformName": sub.target.platform_name,
|
||||
"targetName": sub.target.name,
|
||||
"targetName": sub.target.target_name,
|
||||
"cats": sub.categories,
|
||||
"tags": sub.tags,
|
||||
},
|
||||
@ -105,7 +105,7 @@ async def get_target_name(platform_name: str, target: str, jwt_obj: dict):
|
||||
|
||||
|
||||
async def add_group_sub(
|
||||
group_number: str,
|
||||
group_number: int,
|
||||
platform_name: str,
|
||||
target: str,
|
||||
target_name: str,
|
||||
@ -124,7 +124,7 @@ async def add_group_sub(
|
||||
return {"status": 200, "msg": ""}
|
||||
|
||||
|
||||
async def del_group_sub(group_number: str, platform_name: str, target: str):
|
||||
async def del_group_sub(group_number: int, platform_name: str, target: str):
|
||||
try:
|
||||
await config.del_subscribe(int(group_number), "group", target, platform_name)
|
||||
except (NoSuchUserException, NoSuchSubscribeException):
|
||||
@ -133,7 +133,7 @@ async def del_group_sub(group_number: str, platform_name: str, target: str):
|
||||
|
||||
|
||||
async def update_group_sub(
|
||||
group_number: str,
|
||||
group_number: int,
|
||||
platform_name: str,
|
||||
target: str,
|
||||
target_name: str,
|
||||
|
Loading…
x
Reference in New Issue
Block a user