feat: 1. 将大部分的请求从fetch改成axios方便管理。

2. 给文档类型添加入口模块和相关数据的渲染。并且给文档类型进行功能上的角色权限区分
3. 新增角色权限管理页面
This commit is contained in:
2025-11-20 20:34:31 +08:00
parent 2e604e8ede
commit 3850d05bdd
25 changed files with 2299 additions and 762 deletions
+35 -44
View File
@@ -1,5 +1,6 @@
import { API_BASE_URL } from '../../config/api-config';
import { postgrestPut } from '../postgrest-client';
import axios from 'axios';
// 交叉评查任务状态枚举
export enum CrossCheckingTaskStatus {
@@ -393,33 +394,28 @@ export async function getUserTaskDocuments(page: number = 1, pageSize: number =
// 拼接绝对路径,去除多余斜杠
const base = API_BASE_URL.endsWith('/') ? API_BASE_URL.slice(0, -1) : API_BASE_URL;
const url = `${base}/admin/cross_review/tasks/user_tasks`;
const response = await fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${jwtToken || ''}`
},
body: JSON.stringify({
page: page,
page_size: pageSize
})
const response = await axios.post(url, {
page: page,
page_size: pageSize
}, {
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${jwtToken || ''}`
}
});
if (!response.ok) {
return {
success: false,
error: `HTTP ${response.status}: ${response.statusText}`
};
}
const result = await response.json();
return {
success: true,
data: result
data: response.data
};
} catch (error) {
if (axios.isAxiosError(error)) {
return {
success: false,
error: `HTTP ${error.response?.status}: ${error.response?.statusText || error.message}`
};
}
return {
success: false,
error: error instanceof Error ? error.message : '获取用户任务列表失败'
@@ -441,33 +437,28 @@ export async function getTaskDocuments(taskId: number, page: number = 1, pageSiz
const base = API_BASE_URL.endsWith('/') ? API_BASE_URL.slice(0, -1) : API_BASE_URL;
const url = `${base}/admin/cross_review/tasks/${taskId}/documents`;
// console.log('最终请求URL:', url);
const response = await fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${jwtToken || ''}`
},
body: JSON.stringify({
page: page,
page_size: pageSize
})
const response = await axios.post(url, {
page: page,
page_size: pageSize
}, {
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${jwtToken || ''}`
}
});
if (!response.ok) {
return {
success: false,
error: `HTTP ${response.status}: ${response.statusText}`
};
}
const result = await response.json();
return {
success: true,
data: result
data: response.data
};
} catch (error) {
if (axios.isAxiosError(error)) {
return {
success: false,
error: `HTTP ${error.response?.status}: ${error.response?.statusText || error.message}`
};
}
return {
success: false,
error: error instanceof Error ? error.message : '获取任务文档列表失败'