68 lines
1.7 KiB
TypeScript
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",
|
|
},
|
|
});
|
|
}
|