302 lines
6.8 KiB
TypeScript
302 lines
6.8 KiB
TypeScript
import request from '@/utils/request';
|
|
import { AxiosPromise } from 'axios';
|
|
import {
|
|
StglMaterialTaskVO,
|
|
StglMaterialTaskForm,
|
|
StglMaterialTaskQuery,
|
|
StglMaterialSubmissionVO,
|
|
StglMaterialSubmissionForm,
|
|
StglMaterialSubmissionQuery
|
|
} from './types';
|
|
|
|
/**
|
|
* 查询材料收集任务列表
|
|
*/
|
|
export function listStglMaterialTask(query: StglMaterialTaskQuery): AxiosPromise<StglMaterialTaskVO[]> {
|
|
return request({
|
|
url: '/stgl/activitymaterial/list',
|
|
method: 'get',
|
|
params: query
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 查询材料收集任务详细
|
|
*/
|
|
export function getStglMaterialTask(id: string | number): AxiosPromise<StglMaterialTaskVO> {
|
|
return request({
|
|
url: '/stgl/activitymaterial/' + id,
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 新增材料收集任务
|
|
*/
|
|
export function addStglMaterialTask(data: StglMaterialTaskForm) {
|
|
return request({
|
|
url: '/stgl/activitymaterial',
|
|
method: 'post',
|
|
data: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 修改材料收集任务
|
|
*/
|
|
export function updateStglMaterialTask(data: StglMaterialTaskForm) {
|
|
return request({
|
|
url: '/stgl/activitymaterial',
|
|
method: 'put',
|
|
data: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 删除材料收集任务
|
|
*/
|
|
export function delStglMaterialTask(id: string | number | Array<string | number>) {
|
|
return request({
|
|
url: '/stgl/activitymaterial/' + id,
|
|
method: 'delete'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 导出材料收集任务
|
|
*/
|
|
export function exportStglMaterialTask(query: StglMaterialTaskQuery) {
|
|
return request({
|
|
url: '/stgl/activitymaterial/export',
|
|
method: 'post',
|
|
data: query,
|
|
responseType: 'blob'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 更新任务状态(开启/关闭)
|
|
*/
|
|
export function updateTaskStatus(id: string | number, taskStatus: number) {
|
|
return request({
|
|
url: '/stgl/activitymaterial/status',
|
|
method: 'put',
|
|
params: {
|
|
id: id,
|
|
taskStatus: taskStatus
|
|
}
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 查询用户可上传的材料收集任务
|
|
*/
|
|
export function getUploadableTasks(userId: string | number, activityId?: string | number): AxiosPromise<StglMaterialTaskVO[]> {
|
|
const params: any = { userId };
|
|
if (activityId) {
|
|
params.activityId = activityId;
|
|
}
|
|
return request({
|
|
url: '/stgl/activitymaterial/uploadable',
|
|
method: 'get',
|
|
params: params
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 验证用户上传权限
|
|
*/
|
|
export function validateUploadPermission(taskId: string | number, userId: string | number): AxiosPromise<boolean> {
|
|
return request({
|
|
url: '/stgl/activitymaterial/validate',
|
|
method: 'get',
|
|
params: {
|
|
taskId: taskId,
|
|
userId: userId
|
|
}
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 查询活动的材料收集任务
|
|
*/
|
|
export function getTasksByActivityId(activityId: string | number): AxiosPromise<StglMaterialTaskVO[]> {
|
|
return request({
|
|
url: '/stgl/activitymaterial/activity/' + activityId,
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 更新任务统计信息
|
|
*/
|
|
export function updateTaskStatistics(taskId: string | number) {
|
|
return request({
|
|
url: '/stgl/activitymaterial/statistics/' + taskId,
|
|
method: 'put'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 根据活动名称查询活动选项(用于选择器)
|
|
*/
|
|
export function getActivityOptions(activityName?: string): AxiosPromise<StglMaterialTaskVO[]> {
|
|
return request({
|
|
url: '/stgl/activitymaterial/activity/options',
|
|
method: 'get',
|
|
params: activityName ? { activityName } : {}
|
|
});
|
|
}
|
|
|
|
// ==================== 材料提交相关API ====================
|
|
|
|
/**
|
|
* 查询材料提交记录列表
|
|
*/
|
|
export function listStglMaterialSubmission(query: StglMaterialSubmissionQuery): AxiosPromise<StglMaterialSubmissionVO[]> {
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission/list',
|
|
method: 'get',
|
|
params: query
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 查询材料提交记录详细
|
|
*/
|
|
export function getStglMaterialSubmission(id: string | number): AxiosPromise<StglMaterialSubmissionVO> {
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission/' + id,
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 新增材料提交记录
|
|
*/
|
|
export function addStglMaterialSubmission(data: StglMaterialSubmissionForm) {
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission',
|
|
method: 'post',
|
|
data: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 修改材料提交记录
|
|
*/
|
|
export function updateStglMaterialSubmission(data: StglMaterialSubmissionForm) {
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission',
|
|
method: 'put',
|
|
data: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 删除材料提交记录
|
|
*/
|
|
export function delStglMaterialSubmission(id: string | number | Array<string | number>) {
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission/' + id,
|
|
method: 'delete'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 导出材料提交记录
|
|
*/
|
|
export function exportStglMaterialSubmission(query: StglMaterialSubmissionQuery) {
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission/export',
|
|
method: 'post',
|
|
data: query,
|
|
responseType: 'blob'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 材料上传
|
|
*/
|
|
export function uploadMaterial(data: StglMaterialSubmissionForm) {
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission/upload',
|
|
method: 'post',
|
|
data: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 根据任务ID查询提交记录
|
|
*/
|
|
export function getSubmissionsByTaskId(taskId: string | number): AxiosPromise<StglMaterialSubmissionVO[]> {
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission/task/' + taskId,
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 查询用户在指定任务的提交记录
|
|
*/
|
|
export function getSubmissionByTaskIdAndUserId(taskId: string | number, userId: string | number): AxiosPromise<StglMaterialSubmissionVO> {
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission/task/' + taskId + '/user/' + userId,
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 查询团队在指定任务的提交记录
|
|
*/
|
|
export function getSubmissionByTaskIdAndTeamId(taskId: string | number, teamId: string | number): AxiosPromise<StglMaterialSubmissionVO> {
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission/task/' + taskId + '/team/' + teamId,
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 获取任务的提交统计信息
|
|
*/
|
|
export function getSubmissionStatistics(taskId: string | number): AxiosPromise<any> {
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission/statistics/' + taskId,
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 审核材料
|
|
*/
|
|
export function reviewSubmission(id: string | number, reviewStatus: number, reviewRemark?: string) {
|
|
const params: any = {
|
|
reviewStatus: reviewStatus
|
|
};
|
|
if (reviewRemark) {
|
|
params.reviewRemark = reviewRemark;
|
|
}
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission/review/' + id,
|
|
method: 'put',
|
|
params: params
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 批量审核材料
|
|
*/
|
|
export function batchReviewSubmissions(ids: string, reviewStatus: number, reviewRemark?: string) {
|
|
const params: any = {
|
|
ids: ids,
|
|
reviewStatus: reviewStatus
|
|
};
|
|
if (reviewRemark) {
|
|
params.reviewRemark = reviewRemark;
|
|
}
|
|
return request({
|
|
url: '/stgl/activitymaterial/submission/review/batch',
|
|
method: 'put',
|
|
params: params
|
|
});
|
|
}
|