返回 AiToEarn
tracing.ts
根目录 / project / aitoearn-electron / src / api / tracing.ts
1 /*
2 * @Author: nevin
3 * @Date: 2025-02-22 12:02:55
4 * @LastEditTime: 2025-03-02 22:21:01
5 * @LastEditors: nevin
6 * @Description: 跟踪
7 */
8 import http from './request';
9
10 export enum TracingType {
11 EVENT = 'event', // 事件
12 }
13
14 export enum TracingTag {
15 AccountAdd = 'AccountAdd', // 账号添加
16 VideoPul = 'VideoPul', // 视频发布
17 OpenProjectUse = 'OpenProjectUse', // 开源项目调用
18 }
19
20 export interface Tracing {
21 id: string;
22 userId: string;
23 type: TracingType;
24 tag: TracingTag;
25 accountId?: number; // 平台账号ID
26 desc?: string;
27 dataId?: string; // 关联数据id
28 createTime: string;
29 updateTime: string;
30 }
31
32 export const TracingApi = {
33 /**
34 * 创建跟踪
35 * @param data
36 */
37 apiCreateTracing(data: {
38 type: TracingType;
39 tag: string;
40 accountId?: number; // 平台账号ID
41 desc?: string;
42 dataId?: string; // 关联数据id
43 }) {
44 return http.post<string>(`/tracing`, data);
45 },
46
47 /**
48 * 创建跟踪-账号添加
49 * @param data
50 */
51 apiCreateTracingAccountAdd(account: { id: number; desc?: string }) {
52 const data: {
53 type: TracingType;
54 tag: string;
55 accountId?: number; // 平台账号ID
56 desc?: string;
57 dataId?: string; // 关联数据id
58 } = {
59 type: TracingType.EVENT,
60 tag: TracingTag.AccountAdd,
61 accountId: account.id,
62 desc: account.desc,
63 dataId: account.id + '',
64 };
65 return http.post<string>(`/tracing`, data);
66 },
67
68 /**
69 * 创建跟踪-视频发布
70 * @param inData
71 */
72 apiCreateTracingVideoPul(inData: {
73 accountId: number;
74 dataId: string; // 视频发布数据ID
75 desc?: string;
76 }) {
77 const data: {
78 type: TracingType;
79 tag: string;
80 accountId?: number; // 平台账号ID
81 desc?: string;
82 dataId?: string; // 关联数据id
83 } = {
84 type: TracingType.EVENT,
85 tag: TracingTag.VideoPul,
86 accountId: inData.accountId,
87 desc: inData.desc,
88 dataId: inData.dataId + '',
89 };
90 return http.post<string>(`/tracing`, data);
91 },
92
93 /**
94 * 创建跟踪-开源项目调用
95 * @param inData
96 */
97 apiCreateTracingOpenProjectUse(inData: { desc?: string }) {
98 const data: {
99 type: TracingType;
100 tag: string;
101 accountId?: number; // 平台账号ID
102 desc?: string;
103 dataId?: string; // 关联数据id
104 } = {
105 type: TracingType.EVENT,
106 tag: TracingTag.OpenProjectUse,
107 desc: inData.desc,
108 };
109 return http.post<string>(`/tracing`, data);
110 },
111 };
112
112 lines TYPESCRIPT