Files
live-hub-py/web/frontend/src/api/yyb.ts
T

18 lines
1.0 KiB
TypeScript

import api from './client';
import type { YybTask, YybSelectionOptions } from './types';
export const yybApi = {
createTask: () => api.post<YybTask, YybTask>('/yyb/tasks', {}),
login: (id: number, provider: 'qq' | 'wechat') =>
api.post<YybTask, YybTask>(`/yyb/tasks/${id}/login`, { provider, timeout: 600 }),
getTask: (id: number) => api.get<YybTask, YybTask>(`/yyb/tasks/${id}`),
listTasks: () => api.get<YybTask[], YybTask[]>('/yyb/tasks'),
options: (id: number, platform: 'android' | 'ios', points?: number, zone_id?: string) =>
api.get<YybSelectionOptions, YybSelectionOptions>(`/yyb/tasks/${id}/selection-options`, {
params: { platform, ...(points ? { points } : {}), ...(zone_id ? { zone_id } : {}) },
}),
select: (id: number, data: { platform: 'android' | 'ios'; points: number; product_id: string; zone_id: string; zone_name: string; role_id: string; role_name: string }) =>
api.post<YybTask, YybTask>(`/yyb/tasks/${id}/selection`, data),
payment: (id: number) => api.post<YybTask, YybTask>(`/yyb/tasks/${id}/payment`),
};