172 lines
3.8 KiB
TypeScript
172 lines
3.8 KiB
TypeScript
import request from '@/utils/request';
|
|
import { AxiosPromise } from 'axios';
|
|
import {
|
|
ScholarshipApplicationVO,
|
|
ScholarshipApplicationForm,
|
|
ScholarshipApplicationQuery,
|
|
ScholarshipClassQuotaVO,
|
|
ScholarshipAttachmentVO
|
|
} from './types';
|
|
|
|
/**
|
|
* 查询奖学金申请记录列表
|
|
* @param query 查询参数
|
|
*/
|
|
export const listScholarshipApplication = (query?: ScholarshipApplicationQuery): AxiosPromise<ScholarshipApplicationVO[]> => {
|
|
return request({
|
|
url: '/jcbt/scholarshipApplication/list',
|
|
method: 'get',
|
|
params: query
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 查询奖学金申请记录详细信息
|
|
* @param id 申请记录ID
|
|
*/
|
|
export const getScholarshipApplication = (id: string | number): AxiosPromise<ScholarshipApplicationVO> => {
|
|
return request({
|
|
url: `/jcbt/scholarshipApplication/${id}`,
|
|
method: 'get'
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 新增奖学金申请记录
|
|
* @param data 申请数据
|
|
*/
|
|
export const addScholarshipApplication = (data: ScholarshipApplicationForm) => {
|
|
return request({
|
|
url: '/jcbt/scholarshipApplication',
|
|
method: 'post',
|
|
data: data
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 修改奖学金申请记录
|
|
* @param data 申请数据
|
|
*/
|
|
export const updateScholarshipApplication = (data: ScholarshipApplicationForm) => {
|
|
return request({
|
|
url: '/jcbt/scholarshipApplication',
|
|
method: 'put',
|
|
data: data
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 删除奖学金申请记录
|
|
* @param id 申请记录ID
|
|
*/
|
|
export const delScholarshipApplication = (id: string | number | Array<string | number>) => {
|
|
return request({
|
|
url: `/jcbt/scholarshipApplication/${id}`,
|
|
method: 'delete'
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 导出奖学金申请记录
|
|
* @param query 查询参数
|
|
*/
|
|
export const exportScholarshipApplication = (query: ScholarshipApplicationQuery) => {
|
|
return request({
|
|
url: '/jcbt/scholarshipApplication/export',
|
|
method: 'post',
|
|
data: query,
|
|
responseType: 'blob'
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 下载导入模板
|
|
*/
|
|
export const importTemplate = () => {
|
|
return request({
|
|
url: '/jcbt/scholarshipApplication/importTemplate',
|
|
method: 'post',
|
|
responseType: 'blob'
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 批量导入奖学金申请记录
|
|
* @param file 导入文件
|
|
*/
|
|
export const importData = (file: File) => {
|
|
const formData = new FormData();
|
|
formData.append('file', file);
|
|
return request({
|
|
url: '/jcbt/scholarshipApplication/import',
|
|
method: 'post',
|
|
data: formData,
|
|
headers: {
|
|
'Content-Type': 'multipart/form-data'
|
|
}
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 查询班级奖学金名额
|
|
* @param query 查询参数
|
|
*/
|
|
export const listScholarshipClassQuota = (query?: any): AxiosPromise<ScholarshipClassQuotaVO[]> => {
|
|
return request({
|
|
url: '/jcbt/scholarshipClassQuota/list',
|
|
method: 'get',
|
|
params: query
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 查询奖学金附件信息
|
|
* @param applicationId 申请记录ID
|
|
*/
|
|
export const listScholarshipAttachment = (applicationId: string | number): AxiosPromise<ScholarshipAttachmentVO[]> => {
|
|
return request({
|
|
url: '/jcbt/scholarshipAttachment/list',
|
|
method: 'get',
|
|
params: { applicationId }
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 审核奖学金申请
|
|
* @param id 申请记录ID
|
|
* @param auditStatus 审核状态
|
|
* @param auditRemark 审核备注
|
|
*/
|
|
export const auditScholarshipApplication = (id: string | number, auditStatus: string, auditRemark?: string) => {
|
|
return request({
|
|
url: `/jcbt/scholarshipApplication/${id}/audit`,
|
|
method: 'put',
|
|
params: {
|
|
auditStatus,
|
|
auditRemark
|
|
}
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 提交奖学金申请
|
|
* @param id 申请记录ID
|
|
*/
|
|
export const submitScholarshipApplication = (id: string | number) => {
|
|
return request({
|
|
url: `/jcbt/scholarshipApplication/${id}/submit`,
|
|
method: 'put'
|
|
});
|
|
};
|
|
|
|
/**
|
|
* 撤销奖学金申请
|
|
* @param id 申请记录ID
|
|
*/
|
|
export const revokeScholarshipApplication = (id: string | number) => {
|
|
return request({
|
|
url: `/jcbt/scholarshipApplication/${id}/revoke`,
|
|
method: 'put'
|
|
});
|
|
};
|