Files
workspace/code/app/app-rn4/src/request/api.ts
T
2026-04-19 21:30:51 +08:00

68 lines
1.7 KiB
TypeScript

import type { LoginQqParams, LoginResult, LoginWxParams } from "@/types/auth";
import alovaInstance from "./index";
export function loginQqApi(params: LoginQqParams) {
return alovaInstance.Post<ResponseData<LoginResult>>(`/auth/login/qq`, params);
}
export function loginWxApi(params: LoginWxParams) {
return alovaInstance.Post<ResponseData<LoginResult>>(`/auth/login/wechat`, params);
}
export function getUniqueIdApi(count = 1) {
return alovaInstance.Post<ResponseData<number[]>>(`/data/getUniqueId`, {
count: count,
});
}
interface LoadDataBySqlParams {
sql: string;
args: any[];
}
export function loadDataBySqlApi(params: LoadDataBySqlParams) {
return alovaInstance.Post<ResponseData<any[]>>(`/data/loadDataBySql`, params);
}
interface LoadDataParams {
view_name: string;
search_condition: string;
order_by: string;
search_columns: string[];
args: any[];
}
export function loadDataApi(params: LoadDataParams) {
return alovaInstance.Post<ResponseData<any[]>>(`/data/loadData`, params);
}
interface SaveDataParams {
table_name: string;
key_field: string;
inserts: any[];
updates: any[];
deletes: any[];
}
export function saveDataApi(params: SaveDataParams[]) {
return alovaInstance.Post<ResponseData<null>>(`/data/saveData`, params);
}
export function s3ListBucketsApi() {
return alovaInstance.Post<ResponseData<string[]>>(`/s3/listBuckets`);
}
export function s3UploadFileApi(files: { uri: string; name: string; type: string }[]) {
const form = new FormData();
files.forEach((file) => {
form.append("files", file as any);
});
return alovaInstance.Post<ResponseData<string[]>>("/s3/upload", form, {
headers: {
"Content-Type": "multipart/form-data",
},
});
}