ソースを参照

feat: 传参方式调整

zhangjie 3 日 前
コミット
1e9081a66a

+ 1 - 5
src/api/admin.ts

@@ -34,11 +34,7 @@ export function updateSchoolAdmin(
 export function getSchoolAdminInfo(
   schoolId: number
 ): Promise<SchoolUpdateAdminParam> {
-  return axios.post(
-    '/api/admin/sys/school/admin/info',
-    {},
-    { params: { schoolId } }
-  );
+  return axios.post('/api/admin/sys/school/admin/info', { schoolId });
 }
 
 // 机构同步

+ 31 - 47
src/api/analysis.ts

@@ -26,130 +26,114 @@ import {
 export function getTotalAnalysisList(
   params: AnalysisListPageParam
 ): Promise<TotalAnalysisListRes> {
-  return axios.post('/api/admin/report/subject', {}, { params });
+  return axios.post('/api/admin/report/subject', params);
 }
 // 总量分析导出
 export function exportTotalAnalysisList(
   params: AnalysisListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/report/subject/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/report/subject/export', params, {
+    responseType: 'blob',
+  });
 }
 // TODO:总量分析总结表导出
 export function exportTotalAnalysisSummaryList(
   params: AnalysisListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/report/subject/export/summary',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/report/subject/export/summary', params, {
+    responseType: 'blob',
+  });
 }
 
 // 分段统计列表
 export function getSegmentAnalysisList(
   params: ScoreSegmentListParam
 ): Promise<ScoreSegmentListRes> {
-  return axios.post('/api/admin/report/range', {}, { params });
+  return axios.post('/api/admin/report/range', params);
 }
 
 // 分段统计导出
 export function exportSegmentAnalysisList(
   params: ScoreSegmentFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/report/range/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/report/range/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 学院分析列表
 export function getCollegeAnalysisList(
   params: CollegeAnalysisListParam
 ): Promise<CollegeAnalysisListRes> {
-  return axios.post('/api/admin/report/college', {}, { params });
+  return axios.post('/api/admin/report/college', params);
 }
 // 学院分析导出
 export function exportCollegeAnalysisList(
   params: CollegeAnalysisFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/report/college/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/report/college/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 任课老师分析列表
 export function getTeacherAnalysisList(
   params: TeacherAnalysisListParam
 ): Promise<TeacherAnalysisListRes> {
-  return axios.post('/api/admin/report/teacher', {}, { params });
+  return axios.post('/api/admin/report/teacher', params);
 }
 // 任课老师分析导出
 export function exportTeacherAnalysisList(
   params: TeacherAnalysisFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/report/teacher/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/report/teacher/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 班级分析列表
 export function getClassAnalysisList(
   params: ClassAnalysisListParam
 ): Promise<ClassAnalysisListRes> {
-  return axios.post('/api/admin/report/teacher/class', {}, { params });
+  return axios.post('/api/admin/report/teacher/class', params);
 }
 // 班级分析导出
 export function exportClassAnalysisList(
   params: ClassAnalysisFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/report/teacher/class/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/report/teacher/class/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 主客观题分析列表
 export function getQuestionAnalysisList(
   params: QuestionAnalysisListParam
 ): Promise<QuestionAnalysisListRes> {
-  return axios.post('/api/admin/report/question', {}, { params });
+  return axios.post('/api/admin/report/question', params);
 }
 
 // 主客观题分析导出
 export function exportQuestionAnalysisList(
   params: QuestionAnalysisFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/report/question/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/report/question/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 大题分析列表
 export function getBigQuestionAnalysisList(
   params: AnalysisListPageParam
 ): Promise<BigQuestionAnalysisListRes> {
-  return axios.post('/api/admin/report/group', {}, { params });
+  return axios.post('/api/admin/report/group', params);
 }
 
 // 大题分析导出
 export function exportBigQuestionAnalysisList(
   params: AnalysisListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/report/group/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/report/group/export', params, {
+    responseType: 'blob',
+  });
 }

+ 1 - 1
src/api/base.ts

@@ -9,7 +9,7 @@ export function examQuery(): Promise<ExamQueryItem[]> {
 }
 // 通用查询-科目
 export function subjectQuery(examId: number): Promise<SubjectItem[]> {
-  return axios.post('/api/admin/subject/list', {}, { params: { examId } });
+  return axios.post('/api/admin/subject/list', { examId });
 }
 // 通用查询-学院
 export function collegeQuery(): Promise<string[]> {

+ 6 - 8
src/api/check.ts

@@ -13,25 +13,23 @@ import {
 export function getManualConfirmDataList(
   params: ManualConfirmDataListFilter
 ): Promise<ManualConfirmPageRes> {
-  return axios.post('/api/admin/exam/check/student/list', {}, { params });
+  return axios.post('/api/admin/exam/check/student/list', params);
 }
 
 // 图片检查查询
 export function getImageCheckDataList(
   params: ImageCheckPageParams
 ): Promise<ImageCheckPageRes> {
-  return axios.post('/api/admin/exam/check/image/list', {}, { params });
+  return axios.post('/api/admin/exam/check/image/list', params);
 }
 
 // 导出图片检查数据
 export function exportImageCheckData(
   params: ImageCheckDataListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/exam/check/image/export',
-    {},
-    { responseType: 'blob', params }
-  );
+  return axios.post('/api/admin/exam/check/image/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 开始图片检查
@@ -47,5 +45,5 @@ export function getImageCheckStatus(): Promise<boolean> {
 export function getResultCheckDataList(
   params: ResultCheckDataListFilter
 ): Promise<number> {
-  return axios.post('/api/admin/exam/check/answer/count', {}, { params });
+  return axios.post('/api/admin/exam/check/answer/count', params);
 }

+ 5 - 4
src/api/exam.ts

@@ -1,4 +1,5 @@
 import axios from 'axios';
+import { paramsSerializer } from '@/utils/utils';
 import {
   ExamListPageParam,
   ExamListPageRes,
@@ -12,11 +13,11 @@ import {
 export function getExamList(
   params: ExamListPageParam
 ): Promise<ExamListPageRes> {
-  return axios.post('/api/admin/exam/listt', {}, { params });
+  return axios.post('/api/admin/exam/list', params);
 }
 // 考试详情
 export function getExamDetail(examId: number): Promise<ExamItem> {
-  return axios.post('/api/admin/exam/find', {}, { examId });
+  return axios.post('/api/admin/exam/find', { examId });
 }
 
 // 新增或编辑考试
@@ -35,12 +36,12 @@ export function updateExam(data: ExamUpdateParam): Promise<ExamItem> {
 export function getExamStatisticInfo(
   examId: number
 ): Promise<ExamStatDetailInfo> {
-  return axios.post('/api/admin/exam/detail', {}, { params: { examId } });
+  return axios.post('/api/admin/exam/detail', { examId });
 }
 
 // 结束考试
 export function finishExam(ids: number[]): Promise<boolean> {
-  return axios.post('/api/admin/exam/finish', {}, { params: { ids } });
+  return axios.post('/api/admin/exam/finish', paramsSerializer(ids));
 }
 
 // 获取考试导览信息

+ 11 - 19
src/api/issue-paper.ts

@@ -1,4 +1,5 @@
 import axios, { AxiosResponse } from 'axios';
+import { paramsSerializer } from '@/utils/utils';
 import {
   IssuePaperListPageRes,
   IssuePaperListFilter,
@@ -11,25 +12,24 @@ import {
 export function getIssuePaperList(
   params: IssuePaperListPageParam
 ): Promise<IssuePaperListPageRes> {
-  return axios.post('/api/admin/exam/problem/history/query', {}, { params });
+  return axios.post('/api/admin/exam/problem/history/query', params);
 }
 
 // 重置问题卷
 export function resetIssuePaper(libraryIds: number[]): Promise<any> {
-  return axios.post('/api/admin/exam/problem/history/restBatch', {
-    libraryIds,
-  });
+  return axios.post(
+    '/api/admin/exam/problem/history/restBatch',
+    paramsSerializer(libraryIds)
+  );
 }
 
 // 导出问题卷
 export function exportIssuePaper(
   params: IssuePaperListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/exam/problem/history/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/exam/problem/history/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 问题卷类型 ------------->
@@ -37,11 +37,7 @@ export function exportIssuePaper(
 export function getIssuePaperTypeList(
   examId: number
 ): Promise<IssuePaperTypeItem[]> {
-  return axios.post(
-    '/api/admin/exam/problem/type/list',
-    {},
-    { params: { examId } }
-  );
+  return axios.post('/api/admin/exam/problem/type/list', { examId });
 }
 
 // 新增/修改问题卷类型
@@ -55,9 +51,5 @@ export function updateIssuePaperType(
 }
 // 删除问题卷类型
 export function deleteIssuePaperType(id: number): Promise<any> {
-  return axios.post(
-    '/api/admin/exam/problem/type/delete',
-    {},
-    { params: { id } }
-  );
+  return axios.post('/api/admin/exam/problem/type/delete', { id });
 }

+ 4 - 6
src/api/log.ts

@@ -3,14 +3,12 @@ import { LogListPageParam, LogListFilter, LogListPageRes } from './types/log';
 
 // 日志管理列表
 export function getLogList(params: LogListPageParam): Promise<LogListPageRes> {
-  return axios.post('/api/admin/operation/log/query', {}, { params });
+  return axios.post('/api/admin/operation/log/query', params);
 }
 
 // 导出日志
 export function exportLog(params: LogListFilter): Promise<Blob> {
-  return axios.post(
-    '/api/admin/operation/log/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/operation/log/export', params, {
+    responseType: 'blob',
+  });
 }

+ 52 - 76
src/api/mark.ts

@@ -28,24 +28,23 @@ import {
   GroupArbitrateStatListRes,
   GroupArbitrateStatListParam,
 } from './types/mark';
+import { paramsSerializer } from '../utils/utils';
 
 // 质量监控
 // 获取质量监控列表
 export function getQualityMonitorList(
   params: MarkQualityMonitorListPageParam
 ): Promise<MarkQualityMonitorListPageRes> {
-  return axios.post('/api/admin/exam/quality/list/marker', {}, { params });
+  return axios.post('/api/admin/exam/quality/list/marker', params);
 }
 
 // 导出质量监控列表
 export function exportQualityMonitorList(
   params: MarkQualityMonitorListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/exam/quality/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/exam/quality/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 分组统计仲裁列表
@@ -55,7 +54,7 @@ export function getGroupArbitrateStatList(
   const url = params.group
     ? '/api/admin/exam/quality/list/group'
     : '/api/admin/exam/quality/list/subject';
-  return axios.post(url, {}, { params });
+  return axios.post(url, params);
 }
 // 分组统计仲裁导出
 export function exportGroupArbitrateStatList(
@@ -64,20 +63,20 @@ export function exportGroupArbitrateStatList(
   const url = params.group
     ? '/api/admin/exam/quality/list/group/export'
     : '/api/admin/exam/quality/list/subject/export';
-  return axios.post(url, {}, { params, responseType: 'blob' });
+  return axios.post(url, params, { responseType: 'blob' });
 }
 
 // 重新计算
 export function qualityMonitorCalculate(
   params: MarkQualityMonitorListFilter
 ): Promise<boolean> {
-  return axios.post('/api/admin/exam/quality/update', {}, { params });
+  return axios.post('/api/admin/exam/quality/update', params);
 }
 // 给分曲线
 export function qualityMonitorScoreList(
   params: MarkQualityMonitorListFilter
 ): Promise<QMScoreItem[]> {
-  return axios.post('/api/admin/exam/quality/chart', {}, { params });
+  return axios.post('/api/admin/exam/quality/chart', params);
 }
 
 // 仲裁管理
@@ -85,18 +84,16 @@ export function qualityMonitorScoreList(
 export function getArbitrationList(
   params: MarkArbitrationListPageParam
 ): Promise<MarkArbitrationListPageRes> {
-  return axios.post('/api/admin/exam/arbitrate/list', {}, { params });
+  return axios.post('/api/admin/exam/arbitrate/list', params);
 }
 
 // 仲裁导出
 export function exportArbitrationList(
   params: MarkArbitrationListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/exam/arbitrate/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/exam/arbitrate/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 任务管理
@@ -104,14 +101,14 @@ export function exportArbitrationList(
 export function getMarkTaskList(
   params: MarkTaskListPageParam
 ): Promise<MarkTaskListPageRes> {
-  return axios.post('/api/admin/exam/library/list', {}, { params });
+  return axios.post('/api/admin/exam/library/list', params);
 }
 
 // 获取待复核任务数
 export function getMarkInspectedTaskCount(
   params: MarkTaskListFilter
 ): Promise<number> {
-  return axios.post('/api/admin/exam/library/inspected/count', {}, { params });
+  return axios.post('/api/admin/exam/library/inspected/count', params);
 }
 
 // 评卷员任务指定
@@ -122,29 +119,23 @@ export function markTaskAssign({
   libraryId: number;
   marker: string;
 }): Promise<boolean> {
-  return axios.post(
-    '/api/admin/exam/library/assigned',
-    {},
-    { params: { libraryId, marker } }
-  );
+  return axios.post('/api/admin/exam/library/assigned', { libraryId, marker });
 }
 
 // 任务导出
 export function exportMarkTaskList(
   params: MarkTaskListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/exam/library/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/exam/library/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 任务打回or重置
 export function markTaskRejectOrReset(
   params: MarkRejectResetTaskParam
 ): Promise<boolean> {
-  return axios.post('/api/admin/exam/library/reject', {}, { params });
+  return axios.post('/api/admin/exam/library/reject', params);
 }
 
 // 试评管理
@@ -152,7 +143,7 @@ export function markTaskRejectOrReset(
 export function getMarkTrialList(
   params: MarkTrialListPageParam
 ): Promise<MarkTrialListPageRes> {
-  return axios.post('/api/mark/task/list', {}, { params });
+  return axios.post('/api/mark/task/list', params);
 }
 
 // 评卷员管理
@@ -160,7 +151,7 @@ export function getMarkTrialList(
 export function getMarkMarkerList(
   params: MarkMarkerListPageParam
 ): Promise<MarkMarkerListPageRes> {
-  return axios.post('/api/admin/exam/marker/list', {}, { params });
+  return axios.post('/api/admin/exam/marker/list', params);
 }
 
 // 启用、禁用评卷员
@@ -173,22 +164,20 @@ export function markMarkerEnable({
 }): Promise<boolean> {
   return axios.post(
     '/api/admin/exam/marker/toggle',
-    {},
-    { params: { ids, enable } }
+    paramsSerializer({ ids, enable })
   );
 }
 // 解绑评卷员
 export function markMarkerUnbind(markerId: number): Promise<boolean> {
-  return axios.post(
-    '/api/admin/exam/marker/delete',
-    {},
-    { params: { markerId } }
-  );
+  return axios.post('/api/admin/exam/marker/delete', { markerId });
 }
 
 // 回收任务
 export function markMarkerTaskRecycle(ids: number[]): Promise<boolean> {
-  return axios.post('/api/admin/exam/marker/release', {}, { params: { ids } });
+  return axios.post(
+    '/api/admin/exam/marker/release',
+    paramsSerializer({ ids })
+  );
 }
 
 // 设置评卷数量
@@ -201,8 +190,7 @@ export function markMarkerSetTaskCount({
 }): Promise<boolean> {
   return axios.post(
     '/api/admin/exam/marker/set-task-count',
-    {},
-    { params: { ids, taskCount } }
+    paramsSerializer({ ids, taskCount })
   );
 }
 
@@ -213,8 +201,7 @@ export function markMarkerResetPassword(
 ): Promise<boolean> {
   return axios.post(
     '/api/admin/exam/marker/reset-password',
-    {},
-    { params: { ids, password } }
+    paramsSerializer({ ids, password })
   );
 }
 // 重置已评数量
@@ -222,11 +209,7 @@ export function markMarkerResetFinishCount(
   id: number,
   deleteCode: string
 ): Promise<boolean> {
-  return axios.post(
-    '/api/admin/exam/marker/reset',
-    {},
-    { params: { id, deleteCode } }
-  );
+  return axios.post('/api/admin/exam/marker/reset', { id, deleteCode });
 }
 // 重置是否弹窗确认
 export function checkResetNeedConfirm(): Promise<boolean> {
@@ -247,7 +230,7 @@ export function markerImportTemplate(): Promise<AxiosResponse<Blob>> {
 export function getMarkGroupList(
   params: MarkGroupListPageParam
 ): Promise<MarkGroupListPageRes> {
-  return axios.post('/api/admin/exam/group/list', {}, { params });
+  return axios.post('/api/admin/exam/group/list', params);
 }
 
 // 获取分组信息
@@ -258,11 +241,7 @@ export function getMarkGroupInfo({
   subjectCode: string;
   groupNumber: number;
 }): Promise<MarkGroupItem> {
-  return axios.post(
-    '/api/mark/group/info',
-    {},
-    { params: { subjectCode, groupNumber } }
-  );
+  return axios.post('/api/mark/group/info', { subjectCode, groupNumber });
 }
 
 function transformGroupUpdateData(data: MarkGroupUpdateParams) {
@@ -297,24 +276,24 @@ export function markGroupUpdate(
 export function markGroupUpdateStatus(
   params: MarkGroupUpdateStatusParams
 ): Promise<boolean> {
-  return axios.post('/api/admin/exam/group/changeStatus', {}, { params });
+  return axios.post('/api/admin/exam/group/changeStatus', params);
 }
 
 // 删除分组
 export function markGroupDelete(
   params: MarkGroupResetParams
 ): Promise<boolean> {
-  return axios.post('/api/admin/exam/group/delete', {}, { params });
+  return axios.post('/api/admin/exam/group/delete', params);
 }
 // 重置分组
 export function markGroupReset(params: MarkGroupResetParams): Promise<boolean> {
-  return axios.post('/api/admin/exam/group/reset', {}, { params });
+  return axios.post('/api/admin/exam/group/reset', params);
 }
 // 回收分组任务
 export function markGroupTaskRecycle(
   params: MarkGroupResetParams
 ): Promise<boolean> {
-  return axios.post('/api/admin/exam/group/release', {}, { params });
+  return axios.post('/api/admin/exam/group/release', params);
 }
 
 // 设置试评数量
@@ -325,47 +304,44 @@ export function markGroupSetTrialCount({
   subjectCode: string;
   trialCount: number;
 }): Promise<boolean> {
-  return axios.post(
-    '/api/admin/exam/group/updateTrialCount',
-    {},
-    { params: { subjectCode, trialCount } }
-  );
+  return axios.post('/api/admin/exam/group/updateTrialCount', {
+    subjectCode,
+    trialCount,
+  });
 }
 
 // 数据校对
 export function markGroupDataCheck(subjectCode: string) {
-  return axios.post(
-    '/api/admin/exam/group/checkCount',
-    {},
-    { params: { subjectCode } }
-  );
+  return axios.post('/api/admin/exam/group/checkCount', { subjectCode });
 }
 
 // 关闭分组
 export function markGroupClose(subjectCode: string, groupNumbers: number[]) {
-  return axios.post(
-    '/api/admin/exam/group/close',
-    {},
-    { params: { subjectCode, groupNumbers } }
-  );
+  return axios.post('/api/admin/exam/group/close', {
+    subjectCode,
+    groupNumbers,
+  });
 }
 
 // 评卷进度统计
 // 获取评卷进度统计信息
 export function getMarkStatInfo(examId: number): Promise<MarkStatInfo> {
-  return axios.post('/api/mark/stat/info', {}, { params: { examId } });
+  return axios.post('/api/mark/stat/info', { examId });
 }
 
 // 获取评卷进度统计列表
 export function getMarkStatList(
   params: MarkStatListPageParam
 ): Promise<MarkStatListPageRes> {
-  return axios.post('/api/mark/stat/list', {}, { params });
+  return axios.post('/api/mark/stat/list', params);
 }
 
 // 关闭科目
 export function markSubjectClose(subjectIds: number[]): Promise<boolean> {
-  return axios.post('/api/mark/subject/close', {}, { params: { subjectIds } });
+  return axios.post(
+    '/api/mark/subject/close',
+    paramsSerializer({ subjectIds })
+  );
 }
 
 // 导出评卷进度

+ 9 - 19
src/api/reject.ts

@@ -14,24 +14,22 @@ import {
 export function getRejectList(
   params: RejectListPageParams
 ): Promise<RejectListPageRes> {
-  return axios.post('/api/admin/exam/reject/list/history', {}, { params });
+  return axios.post('/api/admin/exam/reject/list/history', params);
 }
 // 获取打回记录列表
 export function getRejectRecordList(
   params: RejectListPageParams
 ): Promise<RejectListPageRes> {
-  return axios.post('/api/admin/exam/reject/list/history', {}, { params });
+  return axios.post('/api/admin/exam/reject/list/history', params);
 }
 
 // 导出打回记录列表
 export function exportRejectRecord(
   params: RejectListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/exam/reject/list/history/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/exam/reject/list/history/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 获取打回统计列表
@@ -41,7 +39,7 @@ export function getRejectStatisticsList(
   const url = params.showGroupNumber
     ? '/api/admin/exam/reject/list/group'
     : '/api/admin/exam/reject/list/subject';
-  return axios.post(url, {}, { params });
+  return axios.post(url, params);
 }
 
 // 打回统计列表导出
@@ -51,17 +49,13 @@ export function exportRejectStat(
   const url = params.showGroupNumber
     ? '/api/admin/exam/reject/list/group/export'
     : '/api/admin/exam/reject/list/subject/export';
-  return axios.post(url, {}, { params, responseType: 'blob' });
+  return axios.post(url, params, { responseType: 'blob' });
 }
 
 // 打回类型 ------------->
 // 查询打回类型
 export function getRejectTypeList(examId: number): Promise<RejectTypeItem[]> {
-  return axios.post(
-    '/api/admin/exam/reject/type/list',
-    {},
-    { params: { examId } }
-  );
+  return axios.post('/api/admin/exam/reject/type/list', { examId });
 }
 // 新增/修改打回类型
 export function updateRejectType(params: RejectTypeUpdateParam): Promise<any> {
@@ -72,9 +66,5 @@ export function updateRejectType(params: RejectTypeUpdateParam): Promise<any> {
 }
 // 删除打回类型
 export function deleteRejectType(id: number): Promise<any> {
-  return axios.post(
-    '/api/admin/exam/reject/type/delete',
-    {},
-    { params: { id } }
-  );
+  return axios.post('/api/admin/exam/reject/type/delete', { id });
 }

+ 24 - 48
src/api/review.ts

@@ -10,6 +10,7 @@ import {
   CheckReviewRes,
   SubjectStatusInfo,
 } from './types/review';
+import { paramsSerializer } from '../utils/utils';
 
 // 复核进度 -------->
 // 获取复核进度统计信息
@@ -21,18 +22,16 @@ export function getReviewStatInfo(): Promise<ReviewStatInfo> {
 export function getReviewStatList(
   params: ReviewStatListPageParams
 ): Promise<ReviewStatListPageRes> {
-  return axios.post('/api/admin/exam/inspected/info', {}, { params });
+  return axios.post('/api/admin/exam/inspected/info', params);
 }
 
 // 导出复核进度
 export function exportReviewStatList(
   params: ReviewStatListPageParams
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/exam/inspected/info/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/exam/inspected/info/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 全卷复核 ------->
@@ -40,48 +39,33 @@ export function exportReviewStatList(
 export function getFullReviewList(
   params: FullReviewListPageParams
 ): Promise<FullReviewListPageRes> {
-  return axios.post('/api/admin/exam/inspected/list', {}, { params });
+  return axios.post('/api/admin/exam/inspected/list', params);
 }
 // 导出全卷复核列表
 export function exportFullReviewList(
   params: FullReviewListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/exam/inspected/list/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/exam/inspected/list/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 再次复核
 export function reReview(subjectCode: string): Promise<boolean> {
-  return axios.post(
-    '/api/admin/exam/inspected/nextround',
-    {},
-    {
-      params: { subjectCode },
-    }
-  );
+  return axios.post('/api/admin/exam/inspected/nextround', { subjectCode });
 }
 // 校验是否可以开启再次复核
 export function checkReReview(subjectCode: string): Promise<CheckReviewRes> {
-  return axios.post(
-    '/api/admin/exam/inspected/nextround/check',
-    {},
-    {
-      params: { subjectCode },
-    }
-  );
+  return axios.post('/api/admin/exam/inspected/nextround/check', {
+    subjectCode,
+  });
 }
 
 // 取消复核
 export function cancelReview(studentIds: number[]): Promise<CancelReviewRes> {
   return axios.post(
     '/api/admin/exam/inspected/batch-cancel',
-    {},
-    {
-      params: { studentIds },
-    }
+    paramsSerializer({ studentIds })
   );
 }
 
@@ -91,10 +75,8 @@ export function getReviewRoundList(
 ): Promise<number[]> {
   return axios.post(
     '/api/admin/exam/inspected/round/list',
-    {},
-    {
-      params,
-    }
+
+    params
   );
 }
 
@@ -104,29 +86,23 @@ export function getSubjectStatusInfo(
 ): Promise<SubjectStatusInfo> {
   return axios.post(
     '/api/admin/exam/inspected/subject/status',
-    {},
-    {
-      params,
-    }
+
+    params
   );
 }
 
 // 复核工作量导出
 export function exportReviewWorkload(): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/exam/inspected/work/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/exam/inspected/work/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 复核导入模板下载
 export function reviewImportTemplate(): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/exam/inspected/import/template',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/exam/inspected/import/template', params, {
+    responseType: 'blob',
+  });
 }
 
 // 成绩校验 -------------->

+ 9 - 13
src/api/scan.ts

@@ -14,40 +14,36 @@ import {
 export function getScanCourseList(
   params: ScanCousreListPageParam
 ): Promise<ScanListPageRes> {
-  return axios.post('/api/admin/scan/subject', {}, { params });
+  return axios.post('/api/admin/scan/subject', params);
 }
 
 // 按考点统计列表
 export function getScanPointList(
   params: ScanPointListPageParam
 ): Promise<ScanListPageRes> {
-  return axios.post('/api/admin/scan/examSite', {}, { params });
+  return axios.post('/api/admin/scan/examSite', params);
 }
 
 // 签到表统计列表
 export function getSignPaperStatList(
   params: SignPaperStatListPageParam
 ): Promise<SignPaperStatListPageRes> {
-  return axios.post('/api/admin/scan/package', {}, { params });
+  return axios.post('/api/admin/scan/package', params);
 }
 
 // 按考点导出
 export function exportScanStatByPoint(
   params: ScanPointListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/scan/examSite/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/scan/examSite/export', params, {
+    responseType: 'blob',
+  });
 }
 // 按科目导出
 export function exportScanStatByCourse(
   params: ScanCourseListFilter
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/scan/subject/export',
-    {},
-    { params, responseType: 'blob' }
-  );
+  return axios.post('/api/admin/scan/subject/export', params, {
+    responseType: 'blob',
+  });
 }

+ 1 - 1
src/api/score.ts

@@ -5,5 +5,5 @@ import { ScoreListPageParam, ScoreListPageRes } from './types/score';
 export function getScoreList(
   params: ScoreListPageParam
 ): Promise<ScoreListPageRes> {
-  return axios.post('/api/score/list', {}, { params });
+  return axios.post('/api/score/list', params);
 }

+ 6 - 11
src/api/student.ts

@@ -11,7 +11,7 @@ import {
 export function getStudentList(
   params: StudentListPageParam
 ): Promise<StudentListPageRes> {
-  return axios.post('/api/admin/student/list', {}, { params });
+  return axios.post('/api/admin/student/list', params);
 }
 // 新增或编辑考生
 export function updateStudent(data: StudentUpdateParam): Promise<StudentItem> {
@@ -23,26 +23,21 @@ export function updateStudent(data: StudentUpdateParam): Promise<StudentItem> {
 
 // 删除考生
 export function deleteStudent(id: number): Promise<StudentItem> {
-  return axios.post('/api/admin/student/delete', {}, { params: { id } });
+  return axios.post('/api/admin/student/delete', { id });
 }
 
 // 重置违纪
 export function resetBreach(id: number): Promise<StudentItem> {
-  return axios.post('/api/admin/student/updateBreach', {}, { params: { id } });
+  return axios.post('/api/admin/student/updateBreach', { id });
 }
 
 // 导出考生
 export function exportStudent(
   params: Record<string, any>
 ): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/student/export',
-    {},
-    {
-      responseType: 'blob',
-      params,
-    }
-  );
+  return axios.post('/api/admin/student/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 下载考生导入模板

+ 26 - 75
src/api/subject.ts

@@ -11,6 +11,7 @@ import {
   OptionalRuleUpdateParam,
   OptionalRuleItem,
 } from './types/subject';
+import { paramsSerializer } from '../utils/utils';
 
 // 科目管理
 // 获取科目总分统计列表
@@ -24,35 +25,23 @@ export function getSubjectTotalScoreStatList(): Promise<
 export function getSubjectList(
   params: SubjectListPageParam
 ): Promise<SubjectListPageRes> {
-  return axios.post('/api/admin/subject/query', {}, { params });
+  return axios.post('/api/admin/subject/query', params);
 }
 // 获取科目详情
 export function getSubjectDetail(subjectCode: string): Promise<SubjectItem> {
-  return axios.post(
-    '/api/admin/subject/find',
-    {},
-    { params: { code: subjectCode } }
-  );
+  return axios.post('/api/admin/subject/find', { code: subjectCode });
 }
 
 // 科目分析计算
 export function subjectAnalysis(subjectCode?: string): Promise<boolean> {
-  return axios.post('/api/admin/subject/report', {
-    params: { subjectCode },
-  });
+  return axios.post('/api/admin/subject/report', { subjectCode });
 }
 
 // 客观题统分
 export function subjectObjectiveMarkScore(
   subjectCode?: string
 ): Promise<boolean> {
-  return axios.post(
-    '/api/admin/subject/calculate',
-    {},
-    {
-      params: { subjectCode },
-    }
-  );
+  return axios.post('/api/admin/subject/calculate', { subjectCode });
 }
 
 // 保存科目设置信息
@@ -63,31 +52,21 @@ export function saveSubjectSetting(
 }
 
 // 导出主客观题
-export function exportSubjectMainObjective(
-  objective: boolean
-): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/subject/export',
-    {},
-    {
-      responseType: 'blob',
-      params: { objective },
-    }
-  );
+export function exportSubjectMainObjective(params: {
+  objective: boolean;
+}): Promise<AxiosResponse<Blob>> {
+  return axios.post('/api/admin/subject/export', params, {
+    responseType: 'blob',
+  });
 }
 
 // 下载主客观题导入模版
 export function downloadSubjectObjectiveImportTemplate(params: {
   objective: boolean;
 }): Promise<AxiosResponse<Blob>> {
-  return axios.post(
-    '/api/admin/subject/template',
-    {},
-    {
-      responseType: 'blob',
-      params,
-    }
-  );
+  return axios.post('/api/admin/subject/template', params, {
+    responseType: 'blob',
+  });
 }
 
 // 试卷结构 -------------->
@@ -95,11 +74,7 @@ export function downloadSubjectObjectiveImportTemplate(params: {
 export function getPaperStructureList(
   subjectCode: string
 ): Promise<PaperStructureListPageRes> {
-  return axios.post(
-    `/api/admin/question/list`,
-    {},
-    { params: { subjectCode } }
-  );
+  return axios.post(`/api/admin/question/list`, { subjectCode });
 }
 
 // 新增/编辑试卷结构
@@ -114,13 +89,7 @@ export function savePaperStructure(
 
 // 批量删除试卷结构
 export function deletePaperStructures(ids: number[]): Promise<boolean> {
-  return axios.post(
-    '/api/admin/question/delete',
-    {},
-    {
-      params: { ids },
-    }
-  );
+  return axios.post('/api/admin/question/delete', paramsSerializer({ ids }));
 }
 
 // 选做题设置  ---------------->
@@ -128,26 +97,14 @@ export function deletePaperStructures(ids: number[]): Promise<boolean> {
 export function getOptionalQuestionList(
   subjectCode: string
 ): Promise<OptionalQuestionItem[]> {
-  return axios.post(
-    '/api/admin/selective/question',
-    {},
-    {
-      params: { subjectCode },
-    }
-  );
+  return axios.post('/api/admin/selective/question', { subjectCode });
 }
 
 // 获取选做题规则列表
 export function getOptionalQuestionRuleList(
   subjectCode: string
 ): Promise<OptionalRuleItem[]> {
-  return axios.post(
-    '/api/admin/selective/group',
-    {},
-    {
-      params: { subjectCode },
-    }
-  );
+  return axios.post('/api/admin/selective/group', { subjectCode });
 }
 
 // 保存选做题设置
@@ -164,13 +121,10 @@ export function deleteOptionalQuestionRule(
   subjectCode: string,
   selectiveIndex: number
 ): Promise<boolean> {
-  return axios.post(
-    '/api/admin/selective/group/delete',
-    {},
-    {
-      params: { subjectCode, selectiveIndex },
-    }
-  );
+  return axios.post('/api/admin/selective/group/delete', {
+    subjectCode,
+    selectiveIndex,
+  });
 }
 
 // 设置一键未选做
@@ -178,11 +132,8 @@ export function setSubjectUnselectiveConfig(
   subjectCode: string,
   enableOneKeyUnselective: boolean
 ): Promise<boolean> {
-  return axios.post(
-    '/api/admin/selective/group/unselective',
-    {},
-    {
-      params: { subjectCode, enableOneKeyUnselective },
-    }
-  );
+  return axios.post('/api/admin/selective/group/unselective', {
+    subjectCode,
+    enableOneKeyUnselective,
+  });
 }

+ 3 - 3
src/api/user.ts

@@ -152,11 +152,11 @@ export function headerInspectorTemplate(params: {
 export function getRoleList(
   params: RoleListPageParam
 ): Promise<RoleListPageRes> {
-  return axios.post('/api/admin/role/page', {}, { params });
+  return axios.post('/api/admin/role/page', params);
 }
 // 获取所有角色
 export function getAllRoleList(schoolId: number): Promise<RoleItem[]> {
-  return axios.post('/api/admin/role/list/all', {}, { params: { schoolId } });
+  return axios.post('/api/admin/role/list/all', { schoolId });
 }
 
 // 获取权限列表
@@ -164,7 +164,7 @@ export function getRolePrivilegeList(params: {
   schoolId: number;
   role: string;
 }): Promise<RolePrivilegeItem[]> {
-  return axios.post('/api/admin/role/privilege/all', {}, { params });
+  return axios.post('/api/admin/role/privilege/all', params);
 }
 // 保存角色权限
 export function updateRolePrivilege(

+ 1 - 1
src/components/select-data/search.ts

@@ -50,7 +50,7 @@ export default function useSearch(type: SelectType) {
 
     try {
       setLoading(true);
-      const res = await axios.post(config.url, {}, { params });
+      const res = await axios.post(config.url, params);
       if (config.transform) {
         optionList.value = config.transform(res as Array<Record<string, any>>);
       } else {

+ 1 - 1
src/components/select-option/search.ts

@@ -69,7 +69,7 @@ export default function useSearch(type: SelectType) {
 
     try {
       setLoading(true);
-      const res = await axios.post(config.url, {}, { params });
+      const res = await axios.post(config.url, params);
 
       if (config.transform) {
         optionList.value = config.transform(