school_file_web/src/api/system/oss/index.ts

153 lines
3.1 KiB
TypeScript
Raw Normal View History

2024-05-27 06:19:30 +00:00
import request from '@/utils/request';
import { OssQuery, OssVO } from './types';
import { AxiosPromise } from 'axios';
// 查询OSS对象存储列表
export function listOss(query: OssQuery): AxiosPromise<OssVO[]> {
return request({
url: '/resource/oss/list',
method: 'get',
params: query
});
}
2024-05-31 09:09:32 +00:00
export function preview(ossId: string | number): any {
return request({
url: '/file/preview/' + ossId,
method: 'post',
responseType: 'blob'
});
}
export function previewTxt(ossId: string | number): any {
return request({
url: '/file/preview/' + ossId,
method: 'post',
responseType: 'blob',
transformResponse: [
async function (data) {
return await transformData(data)
}
]
});
}
const transformData = (data: any) => {
return new Promise((resolve) => {
let reader = new FileReader()
reader.readAsText(data)
reader.onload = function () {
resolve(reader.result)
}
})
}
2024-05-27 06:19:30 +00:00
// 查询OSS对象基于id串
export function listByIds(ossId: string | number): AxiosPromise<OssVO[]> {
return request({
url: '/resource/oss/listByIds/' + ossId,
method: 'get'
});
}
2024-06-17 06:40:38 +00:00
export function getByMd5(md5: string): any {
return request({
url: '/resource/oss/identifier',
method: 'get',
params: { md5 }
});
}
2024-05-27 06:19:30 +00:00
// 删除OSS对象存储
export function delOss(ossId: string | number | Array<string | number>) {
return request({
url: '/resource/oss/' + ossId,
method: 'delete'
});
2024-06-17 06:40:38 +00:00
}
2024-06-18 07:11:02 +00:00
export function pageTextbook(query: any): AxiosPromise<any[]> {
return request({
url: '/file/textbook/pageList',
method: 'get',
params: query
});
}
export function awaitTexbookList(query: any): AxiosPromise<any[]> {
return request({
2024-06-18 07:30:22 +00:00
url: '/file/textbook/await/pageList',
2024-06-18 07:11:02 +00:00
method: 'get',
params: query
});
}
2024-06-18 07:38:52 +00:00
export function awaitResourceList(query: any): AxiosPromise<any[]> {
return request({
url: '/file/resource/await/pageList',
method: 'get',
params: query
});
}
2024-06-17 06:40:38 +00:00
export const addTextbook = (data: any) => {
return request({
url: '/file/textbook',
method: 'post',
data: data
});
2024-06-18 07:11:02 +00:00
}
2024-06-18 07:30:22 +00:00
export const addResource = (data: any) => {
return request({
url: '/file/resource',
method: 'post',
data: data
});
}
2024-06-18 07:11:02 +00:00
export function pageResource(query: any): AxiosPromise<any[]> {
return request({
url: '/file/resource/pageList',
method: 'get',
params: query
});
}
export const review = (data: any) => {
return request({
url: '/file/textbook/review',
method: 'put',
data: data
});
}
export const copy = (data: any) => {
return request({
url: '/file/textbook/copy',
method: 'put',
data: data
});
}
export const move = (data: any) => {
return request({
url: '/file/textbook/move',
method: 'put',
data: data
});
}
2024-06-18 07:30:22 +00:00
export function delTextbook(id: string | number | Array<string | number>) {
return request({
url: '/file/textbook/' + id,
method: 'delete'
});
}
export function delResource(id: string | number | Array<string | number>) {
2024-06-18 07:11:02 +00:00
return request({
2024-06-18 07:30:22 +00:00
url: '/file/resource/' + id,
2024-06-18 07:11:02 +00:00
method: 'delete'
});
}