wuzhen update2
This commit is contained in:
commit
2272bb7eb1
155 files changed
+30832
-4551
No files matched your search
@@ -8,6 +8,9 @@ import {
|
||||
ScholarshipAttachmentVO
|
||||
} from './types';
|
||||
|
||||
// 导出贫困申请审核相关API
|
||||
export * from './povertyApplicationReview';
|
||||
|
||||
/**
|
||||
* 查询奖学金申请记录列表
|
||||
* @param query 查询参数
|
||||
|
||||
@@ -1,34 +1,34 @@
|
||||
import request from '@/utils/request'
|
||||
import { AxiosPromise } from 'axios'
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
|
||||
/**
|
||||
* 贫困生认定申请查询对象类型
|
||||
*/
|
||||
export interface JcbtPovertyApplicationQuery extends PageQuery {
|
||||
/** 申请编号 */
|
||||
applicationNo?: string
|
||||
applicationNo?: string;
|
||||
/** 学生姓名 */
|
||||
studentName?: string
|
||||
studentName?: string;
|
||||
/** 学号 */
|
||||
studentNo?: string
|
||||
studentNo?: string;
|
||||
/** 班级名称 */
|
||||
className?: string
|
||||
className?: string;
|
||||
/** 认定类型ID */
|
||||
recognitionTypeId?: number
|
||||
recognitionTypeId?: number;
|
||||
/** 认定类型名称 */
|
||||
recognitionTypeName?: string
|
||||
recognitionTypeName?: string;
|
||||
/** 学年 */
|
||||
academicYear?: string
|
||||
academicYear?: string;
|
||||
/** 申请状态 */
|
||||
status?: string
|
||||
status?: string;
|
||||
/** 家庭经济情况 */
|
||||
familyEconomyStatus?: string
|
||||
familyEconomyStatus?: string;
|
||||
/** 申请自助类型ID数组 */
|
||||
assistanceTypeIds?: string
|
||||
assistanceTypeIds?: string;
|
||||
/** 创建时间范围 */
|
||||
createTime?: [string, string]
|
||||
createTime?: [string, string];
|
||||
/** 申请时间范围 */
|
||||
applicationTime?: [string, string]
|
||||
applicationTime?: [string, string];
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -36,73 +36,77 @@ export interface JcbtPovertyApplicationQuery extends PageQuery {
|
||||
*/
|
||||
export interface JcbtPovertyApplicationForm {
|
||||
/** 主键 */
|
||||
id?: string | number
|
||||
id?: string | number;
|
||||
/** 申请编号 */
|
||||
applicationNo?: string
|
||||
applicationNo?: string;
|
||||
/** 学年 */
|
||||
academicYear?: string
|
||||
academicYear?: string;
|
||||
/** 学期 */
|
||||
term?: number
|
||||
term?: number;
|
||||
/** 学生ID */
|
||||
studentId?: number
|
||||
studentId?: number;
|
||||
/** 学号 */
|
||||
studentNo?: string
|
||||
studentNo?: string;
|
||||
/** 学生姓名 */
|
||||
studentName?: string
|
||||
studentName?: string;
|
||||
/** 性别 */
|
||||
gender?: string
|
||||
gender?: string;
|
||||
/** 学院ID */
|
||||
collegeId?: number
|
||||
collegeId?: number;
|
||||
/** 学院名称 */
|
||||
collegeName?: string
|
||||
collegeName?: string;
|
||||
/** 专业ID */
|
||||
majorId?: number
|
||||
majorId?: number;
|
||||
/** 专业名称 */
|
||||
majorName?: string
|
||||
majorName?: string;
|
||||
/** 班级ID */
|
||||
classId?: number
|
||||
classId?: number;
|
||||
/** 班级名称 */
|
||||
className?: string
|
||||
className?: string;
|
||||
/** 班主任教师ID */
|
||||
teacherId?: number;
|
||||
/** 班主任教师姓名 */
|
||||
teacherName?: string;
|
||||
/** 认定群体 */
|
||||
recognitionGroup?: string
|
||||
recognitionGroup?: string;
|
||||
/** 认定类型ID */
|
||||
recognitionTypeId?: number
|
||||
recognitionTypeId?: number;
|
||||
/** 认定类型编码 */
|
||||
recognitionTypeCode?: string
|
||||
recognitionTypeCode?: string;
|
||||
/** 认定类型名称 */
|
||||
recognitionTypeName?: string
|
||||
recognitionTypeName?: string;
|
||||
/** 申请状态 */
|
||||
status?: string
|
||||
status?: string;
|
||||
/** 家庭经济情况 */
|
||||
familyEconomyStatus?: string
|
||||
familyEconomyStatus?: string;
|
||||
/** 家庭经济情况摘要 */
|
||||
familyEconomySummary?: string
|
||||
familyEconomySummary?: string;
|
||||
/** 申请理由 */
|
||||
applicationReason?: string
|
||||
applicationReason?: string;
|
||||
/** 申请时间 */
|
||||
applicationTime?: string
|
||||
applicationTime?: string;
|
||||
/** 审核时间 */
|
||||
auditTime?: string
|
||||
auditTime?: string;
|
||||
/** 审核人ID */
|
||||
auditUserId?: number
|
||||
auditUserId?: number;
|
||||
/** 审核人姓名 */
|
||||
auditUserName?: string
|
||||
auditUserName?: string;
|
||||
/** 审核意见 */
|
||||
auditOpinion?: string
|
||||
auditOpinion?: string;
|
||||
/** 申请自助类型ID数组 */
|
||||
assistanceTypeIds?: string
|
||||
assistanceTypeIds?: string;
|
||||
/** 申请自助类型名称 */
|
||||
assistanceTypeNames?: string
|
||||
assistanceTypeNames?: string;
|
||||
/** 备注 */
|
||||
remark?: string
|
||||
remark?: string;
|
||||
/** 申请表附件URL */
|
||||
attachApplicationFormUrl?: string
|
||||
attachApplicationFormUrl?: string;
|
||||
/** 申请表附件ID */
|
||||
attachApplicationFormId?: number
|
||||
attachApplicationFormId?: number;
|
||||
/** 调查表附件URL */
|
||||
attachSurveyFormUrl?: string
|
||||
attachSurveyFormUrl?: string;
|
||||
/** 调查表附件ID */
|
||||
attachSurveyFormId?: number
|
||||
attachSurveyFormId?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -110,81 +114,85 @@ export interface JcbtPovertyApplicationForm {
|
||||
*/
|
||||
export interface JcbtPovertyApplicationVo {
|
||||
/** 主键 */
|
||||
id: string | number
|
||||
id: string | number;
|
||||
/** 申请编号 */
|
||||
applicationNo: string
|
||||
applicationNo: string;
|
||||
/** 学年 */
|
||||
academicYear: string
|
||||
academicYear: string;
|
||||
/** 学期 */
|
||||
term: number
|
||||
term: number;
|
||||
/** 学生ID */
|
||||
studentId: number
|
||||
studentId: number;
|
||||
/** 学号 */
|
||||
studentNo: string
|
||||
studentNo: string;
|
||||
/** 学生姓名 */
|
||||
studentName: string
|
||||
studentName: string;
|
||||
/** 性别 */
|
||||
gender: string
|
||||
gender: string;
|
||||
/** 学院ID */
|
||||
collegeId: number
|
||||
collegeId: number;
|
||||
/** 学院名称 */
|
||||
collegeName: string
|
||||
collegeName: string;
|
||||
/** 专业ID */
|
||||
majorId: number
|
||||
majorId: number;
|
||||
/** 专业名称 */
|
||||
majorName: string
|
||||
majorName: string;
|
||||
/** 班级ID */
|
||||
classId: number
|
||||
classId: number;
|
||||
/** 班级名称 */
|
||||
className: string
|
||||
className: string;
|
||||
/** 班主任教师ID */
|
||||
teacherId: number;
|
||||
/** 班主任教师姓名 */
|
||||
teacherName: string;
|
||||
/** 认定群体 */
|
||||
recognitionGroup: string
|
||||
recognitionGroup: string;
|
||||
/** 认定类型ID */
|
||||
recognitionTypeId: number
|
||||
recognitionTypeId: number;
|
||||
/** 认定类型编码 */
|
||||
recognitionTypeCode: string
|
||||
recognitionTypeCode: string;
|
||||
/** 认定类型名称 */
|
||||
recognitionTypeName: string
|
||||
recognitionTypeName: string;
|
||||
/** 申请状态 */
|
||||
status: string
|
||||
status: string;
|
||||
/** 家庭经济情况 */
|
||||
familyEconomyStatus: string
|
||||
familyEconomyStatus: string;
|
||||
/** 申请自助类型ID数组 */
|
||||
assistanceTypeIds: string
|
||||
assistanceTypeIds: string;
|
||||
/** 申请自助类型名称 */
|
||||
assistanceTypeNames: string
|
||||
assistanceTypeNames: string;
|
||||
/** 家庭经济情况摘要 */
|
||||
familyEconomySummary: string
|
||||
familyEconomySummary: string;
|
||||
/** 申请理由 */
|
||||
applicationReason: string
|
||||
applicationReason: string;
|
||||
/** 申请时间 */
|
||||
applicationTime: string
|
||||
applicationTime: string;
|
||||
/** 审核时间 */
|
||||
auditTime: string
|
||||
auditTime: string;
|
||||
/** 审核人ID */
|
||||
auditUserId: number
|
||||
auditUserId: number;
|
||||
/** 审核人姓名 */
|
||||
auditUserName: string
|
||||
auditUserName: string;
|
||||
/** 审核意见 */
|
||||
auditOpinion: string
|
||||
auditOpinion: string;
|
||||
/** 备注 */
|
||||
remark: string
|
||||
remark: string;
|
||||
/** 创建者 */
|
||||
createBy: number
|
||||
createBy: number;
|
||||
/** 创建时间 */
|
||||
createTime: string
|
||||
createTime: string;
|
||||
/** 更新者 */
|
||||
updateBy: number
|
||||
updateBy: number;
|
||||
/** 更新时间 */
|
||||
updateTime: string
|
||||
updateTime: string;
|
||||
/** 申请表附件URL */
|
||||
attachApplicationFormUrl: string
|
||||
attachApplicationFormUrl: string;
|
||||
/** 申请表附件ID */
|
||||
attachApplicationFormId: number
|
||||
attachApplicationFormId: number;
|
||||
/** 调查表附件URL */
|
||||
attachSurveyFormUrl: string
|
||||
attachSurveyFormUrl: string;
|
||||
/** 调查表附件ID */
|
||||
attachSurveyFormId: number
|
||||
attachSurveyFormId: number;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -192,9 +200,9 @@ export interface JcbtPovertyApplicationVo {
|
||||
*/
|
||||
export interface AuditRequestForm {
|
||||
/** 申请ID */
|
||||
id: string | number
|
||||
id: string | number;
|
||||
/** 审核意见 */
|
||||
auditOpinion: string
|
||||
auditOpinion: string;
|
||||
}
|
||||
|
||||
// ========== 基础管理接口(6个) ==========
|
||||
@@ -208,7 +216,7 @@ export function listPovertyApplication(query: JcbtPovertyApplicationQuery): Axio
|
||||
url: '/jcbt/povertyApplication/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -219,19 +227,19 @@ export function getPovertyApplication(id: string | number): AxiosPromise<JcbtPov
|
||||
return request({
|
||||
url: '/jcbt/povertyApplication/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增贫困生认定申请
|
||||
* @param data 申请表单数据
|
||||
*/
|
||||
export function addPovertyApplication(data: JcbtPovertyApplicationForm): AxiosPromise<void> {
|
||||
export function addPovertyApplication(data: JcbtPovertyApplicationForm): AxiosPromise<number> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplication',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -243,7 +251,7 @@ export function updatePovertyApplication(data: JcbtPovertyApplicationForm): Axio
|
||||
url: '/jcbt/povertyApplication',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -254,7 +262,7 @@ export function delPovertyApplication(ids: (string | number)[]): AxiosPromise<vo
|
||||
return request({
|
||||
url: '/jcbt/povertyApplication/' + ids.join(','),
|
||||
method: 'delete'
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -267,7 +275,20 @@ export function exportPovertyApplication(query: JcbtPovertyApplicationQuery): Ax
|
||||
method: 'post',
|
||||
data: query,
|
||||
responseType: 'blob'
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出我的申请列表(班主任导出自己提交的申请)
|
||||
* @param query 查询参数
|
||||
*/
|
||||
export function exportMyPovertyApplication(query: JcbtPovertyApplicationQuery): AxiosPromise<any> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplication/myExport',
|
||||
method: 'post',
|
||||
data: query,
|
||||
responseType: 'blob'
|
||||
});
|
||||
}
|
||||
|
||||
// ========== 业务功能接口(4个) ==========
|
||||
@@ -281,7 +302,7 @@ export function listMyPovertyApplication(query: JcbtPovertyApplicationQuery): Ax
|
||||
url: '/jcbt/povertyApplication/myList',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -293,7 +314,7 @@ export function listPendingPovertyApplication(query: JcbtPovertyApplicationQuery
|
||||
url: '/jcbt/povertyApplication/pendingList',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -304,7 +325,7 @@ export function submitPovertyApplication(id: string | number): AxiosPromise<void
|
||||
return request({
|
||||
url: '/jcbt/povertyApplication/submit/' + id,
|
||||
method: 'put'
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -315,7 +336,7 @@ export function cancelPovertyApplication(id: string | number): AxiosPromise<void
|
||||
return request({
|
||||
url: '/jcbt/povertyApplication/cancel/' + id,
|
||||
method: 'put'
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
// ========== 辅助功能接口(6个) ==========
|
||||
@@ -328,7 +349,7 @@ export function getPovertyApplicationByNo(applicationNo: string): AxiosPromise<J
|
||||
return request({
|
||||
url: '/jcbt/povertyApplication/byApplicationNo/' + applicationNo,
|
||||
method: 'get'
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -340,7 +361,7 @@ export function saveDraftPovertyApplication(data: JcbtPovertyApplicationForm): A
|
||||
url: '/jcbt/povertyApplication/saveDraft',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -352,7 +373,7 @@ export function approvePovertyApplication(data: AuditRequestForm): AxiosPromise<
|
||||
url: '/jcbt/povertyApplication/approve',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -364,7 +385,7 @@ export function rejectPovertyApplication(data: AuditRequestForm): AxiosPromise<v
|
||||
url: '/jcbt/povertyApplication/reject',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -374,7 +395,7 @@ export function generateApplicationNo(): AxiosPromise<string> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplication/generateApplicationNo',
|
||||
method: 'get'
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -382,16 +403,16 @@ export function generateApplicationNo(): AxiosPromise<string> {
|
||||
* @param params 检查参数
|
||||
*/
|
||||
export function checkDuplicate(params: {
|
||||
studentId: number
|
||||
academicYear: string
|
||||
recognitionTypeId: number
|
||||
excludeId?: number
|
||||
studentId: number;
|
||||
academicYear: string;
|
||||
recognitionTypeId: number;
|
||||
excludeId?: number;
|
||||
}): AxiosPromise<boolean> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplication/checkDuplicate',
|
||||
method: 'get',
|
||||
params: params
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
// ========== 统计分析接口(2个) ==========
|
||||
@@ -405,7 +426,7 @@ export function getPovertyApplicationStatistics(teacherId?: number): AxiosPromis
|
||||
url: '/jcbt/povertyApplication/statistics',
|
||||
method: 'get',
|
||||
params: teacherId ? { teacherId } : {}
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -415,7 +436,7 @@ export function getMyPovertyApplicationStatistics(): AxiosPromise<any> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplication/myStatistics',
|
||||
method: 'get'
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
// ========== 班级和学生相关接口(2个) ==========
|
||||
@@ -427,7 +448,7 @@ export function getCurrentUserClasses(): AxiosPromise<any[]> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplication/user/classes',
|
||||
method: 'get'
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -438,5 +459,5 @@ export function getClassStudents(classId: number | string): AxiosPromise<any[]>
|
||||
return request({
|
||||
url: `/jcbt/povertyApplication/class/${classId}/students`,
|
||||
method: 'get'
|
||||
})
|
||||
});
|
||||
}
|
||||
@@ -0,0 +1,235 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
|
||||
// 审核查询参数
|
||||
export interface PovertyApplicationReviewQuery {
|
||||
pageNum?: number;
|
||||
pageSize?: number;
|
||||
applicationNo?: string;
|
||||
studentName?: string;
|
||||
studentNo?: string;
|
||||
className?: string;
|
||||
recognitionGroup?: string;
|
||||
academicYear?: string;
|
||||
status?: string;
|
||||
auditOpinion?: string;
|
||||
auditorName?: string;
|
||||
createTime?: string;
|
||||
auditTime?: string;
|
||||
params?: any;
|
||||
}
|
||||
|
||||
// 审核VO
|
||||
export interface PovertyApplicationReviewVo {
|
||||
id: number;
|
||||
applicationNo: string;
|
||||
academicYear: string;
|
||||
term: number;
|
||||
studentId: number;
|
||||
studentNo: string;
|
||||
studentName: string;
|
||||
gender: string;
|
||||
collegeId: number;
|
||||
collegeName: string;
|
||||
majorId: number;
|
||||
majorName: string;
|
||||
classId: number;
|
||||
className: string;
|
||||
teacherId: number;
|
||||
teacherName: string;
|
||||
recognitionGroup: string;
|
||||
recognitionTypeId: number;
|
||||
recognitionTypeCode: string;
|
||||
recognitionTypeName: string;
|
||||
assistanceTypeIds: string;
|
||||
assistanceTypeNames: string;
|
||||
familyEconomyStatus: string;
|
||||
familyEconomySummary: string;
|
||||
applicationReason: string;
|
||||
attachApplicationFormUrl: string;
|
||||
attachApplicationFormId: number;
|
||||
attachSurveyFormUrl: string;
|
||||
attachSurveyFormId: number;
|
||||
status: string;
|
||||
submitTime: string;
|
||||
auditorId: number;
|
||||
auditorName: string;
|
||||
auditTime: string;
|
||||
auditOpinion: string;
|
||||
remark: string;
|
||||
createBy: number;
|
||||
createTime: string;
|
||||
updateBy: number;
|
||||
updateTime: string;
|
||||
}
|
||||
|
||||
// 审核表单
|
||||
export interface PovertyApplicationReviewForm {
|
||||
id: number;
|
||||
auditOpinion: string;
|
||||
}
|
||||
|
||||
// 批量审核表单
|
||||
export interface BatchReviewForm {
|
||||
ids: number[];
|
||||
auditOpinion: string;
|
||||
}
|
||||
|
||||
// 审核统计响应
|
||||
export interface ReviewStatistics {
|
||||
totalCount: number;
|
||||
statusCount: {
|
||||
SUBMITTED?: number;
|
||||
APPROVED?: number;
|
||||
REJECTED?: number;
|
||||
[key: string]: number | undefined;
|
||||
};
|
||||
}
|
||||
|
||||
// 审核人员工作量统计
|
||||
export interface AuditorWorkloadStatistics {
|
||||
auditorName: string;
|
||||
totalCount: number;
|
||||
approvedCount: number;
|
||||
rejectedCount: number;
|
||||
}
|
||||
|
||||
// 审核历史记录
|
||||
export interface AuditHistoryRecord {
|
||||
action: string;
|
||||
operator: string;
|
||||
operateTime: string;
|
||||
status: string;
|
||||
remark: string;
|
||||
}
|
||||
|
||||
// 附件预览信息
|
||||
export interface AttachmentPreview {
|
||||
applicationFormUrl?: string;
|
||||
surveyFormUrl?: string;
|
||||
hasApplicationForm: boolean;
|
||||
hasSurveyForm: boolean;
|
||||
}
|
||||
|
||||
// 查询待审核申请列表
|
||||
export function listPendingReview(query: PovertyApplicationReviewQuery): AxiosPromise<PovertyApplicationReviewVo[]> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/pendingList',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
// 查询所有申请列表(支持多状态筛选)
|
||||
export function listAllReview(query: PovertyApplicationReviewQuery): AxiosPromise<PovertyApplicationReviewVo[]> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
// 查询申请详情
|
||||
export function getReviewDetail(id: string | number): AxiosPromise<PovertyApplicationReviewVo> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
// 审核通过
|
||||
export function approveApplication(data: PovertyApplicationReviewForm): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/approve',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
// 审核驳回
|
||||
export function rejectApplication(data: PovertyApplicationReviewForm): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/reject',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
// 打回修改
|
||||
export function returnToDraft(data: PovertyApplicationReviewForm): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/returnToDraft',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
// 批量审核通过
|
||||
export function batchApproveApplications(data: BatchReviewForm): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/batchApprove',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
// 批量审核驳回
|
||||
export function batchRejectApplications(data: BatchReviewForm): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/batchReject',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
// 获取审核统计信息
|
||||
export function getReviewStatistics(academicYear?: string, collegeId?: number): AxiosPromise<ReviewStatistics> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/statistics',
|
||||
method: 'get',
|
||||
params: { academicYear, collegeId }
|
||||
});
|
||||
}
|
||||
|
||||
// 获取审核人员工作量统计
|
||||
export function getAuditorWorkloadStatistics(startTime?: string, endTime?: string): AxiosPromise<AuditorWorkloadStatistics[]> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/workloadStatistics',
|
||||
method: 'get',
|
||||
params: { startTime, endTime }
|
||||
});
|
||||
}
|
||||
|
||||
// 获取申请附件预览信息
|
||||
export function getAttachmentPreview(id: string | number): AxiosPromise<AttachmentPreview> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/' + id + '/attachments',
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
// 获取申请审核历史记录
|
||||
export function getAuditHistory(id: string | number): AxiosPromise<AuditHistoryRecord[]> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/' + id + '/history',
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
// 导出申请数据
|
||||
export function exportReviewData(query: PovertyApplicationReviewQuery): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/export',
|
||||
method: 'post',
|
||||
data: query
|
||||
});
|
||||
}
|
||||
|
||||
// 导出待审核申请数据
|
||||
export function exportPendingReviewData(query: PovertyApplicationReviewQuery): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/povertyApplicationReview/exportPending',
|
||||
method: 'post',
|
||||
data: query
|
||||
});
|
||||
}
|
||||
@@ -17,7 +17,7 @@ export {
|
||||
getAvailableReviewers,
|
||||
// 为了与页面中的函数名保持一致,添加别名
|
||||
performReviewAction as approveScholarshipReview
|
||||
} from '../scholarshipReview'
|
||||
} from '../scholarshipReview';
|
||||
|
||||
// 重新导出类型定义
|
||||
export type {
|
||||
@@ -27,4 +27,4 @@ export type {
|
||||
ReviewActionForm,
|
||||
ReviewHistoryQuery,
|
||||
ReviewStatistics
|
||||
} from '../scholarshipReview'
|
||||
} from '../scholarshipReview';
|
||||
@@ -6,7 +6,6 @@ export interface ScholarshipApplicationVO {
|
||||
id?: string | number;
|
||||
/** 批次ID */
|
||||
batchId?: string | number;
|
||||
<<<<<<< HEAD
|
||||
/** 批次名称 */
|
||||
batchName?: string;
|
||||
/** 奖学金类型ID */
|
||||
@@ -17,12 +16,6 @@ export interface ScholarshipApplicationVO {
|
||||
applicationNo?: string;
|
||||
/** 学生学号 */
|
||||
studentNo?: string;
|
||||
=======
|
||||
/** 奖学金类型ID */
|
||||
scholarshipTypeId?: string | number;
|
||||
/** 学生学号 */
|
||||
studentCode?: string;
|
||||
>>>>>>> 4b9dbe40fb94a83d379f7d16211dec6d78c23755
|
||||
/** 学生姓名 */
|
||||
studentName?: string;
|
||||
/** 学生ID */
|
||||
@@ -31,11 +24,10 @@ export interface ScholarshipApplicationVO {
|
||||
deptId?: string | number;
|
||||
/** 学院名称 */
|
||||
deptName?: string;
|
||||
<<<<<<< HEAD
|
||||
/** 专业ID */
|
||||
majorId?: string | number;
|
||||
=======
|
||||
>>>>>>> 4b9dbe40fb94a83d379f7d16211dec6d78c23755
|
||||
/** 专业名称 */
|
||||
majorName?: string;
|
||||
/** 班级ID */
|
||||
classId?: string | number;
|
||||
/** 班级名称 */
|
||||
@@ -52,7 +44,6 @@ export interface ScholarshipApplicationVO {
|
||||
applicationReason?: string;
|
||||
/** 申请说明 */
|
||||
applicationDescription?: string;
|
||||
<<<<<<< HEAD
|
||||
/** 系统计算分数 */
|
||||
calculatedScore?: number;
|
||||
/** 最终评定分数 */
|
||||
@@ -73,12 +64,6 @@ export interface ScholarshipApplicationVO {
|
||||
updateBy?: string | number;
|
||||
/** 更新时间 */
|
||||
updateTime?: string;
|
||||
=======
|
||||
/** 状态 */
|
||||
status?: string;
|
||||
/** 创建时间 */
|
||||
createTime?: string;
|
||||
>>>>>>> 4b9dbe40fb94a83d379f7d16211dec6d78c23755
|
||||
}
|
||||
|
||||
export interface ScholarshipApplicationForm {
|
||||
@@ -110,11 +95,7 @@ export interface ScholarshipApplicationQuery extends PageQuery {
|
||||
/** 奖学金类型ID */
|
||||
scholarshipTypeId?: string | number;
|
||||
/** 学生学号 */
|
||||
<<<<<<< HEAD
|
||||
studentNo?: string;
|
||||
=======
|
||||
studentCode?: string;
|
||||
>>>>>>> 4b9dbe40fb94a83d379f7d16211dec6d78c23755
|
||||
/** 学生姓名 */
|
||||
studentName?: string;
|
||||
/** 申请人ID */
|
||||
@@ -223,16 +204,12 @@ export function confirmClassSelection(teacherId: string | number, classId: strin
|
||||
}
|
||||
|
||||
// 班主任批量申请提交
|
||||
<<<<<<< HEAD
|
||||
export function batchSubmitByTeacher(
|
||||
batchId: string | number,
|
||||
scholarshipTypeId: string | number,
|
||||
classId: string | number,
|
||||
studentApplications: any[]
|
||||
) {
|
||||
=======
|
||||
export function batchSubmitByTeacher(batchId: string | number, scholarshipTypeId: string | number, classId: string | number, studentApplications: any[]) {
|
||||
>>>>>>> 4b9dbe40fb94a83d379f7d16211dec6d78c23755
|
||||
return request({
|
||||
url: '/jcbt/scholarshipApplication/batch',
|
||||
method: 'post',
|
||||
|
||||
@@ -220,4 +220,3 @@ export function getAvailableReviewers(auditLevel: string): AxiosPromise<any[]> {
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
@@ -0,0 +1,116 @@
|
||||
import request from '@/utils/request';
|
||||
|
||||
// 查询勤工俭学申请信息列表
|
||||
export function listWorkStudyApplication(query) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
// 查询勤工俭学申请信息详细
|
||||
export function getWorkStudyApplication(id) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
// 新增勤工俭学申请信息
|
||||
export function addWorkStudyApplication(data) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
// 修改勤工俭学申请信息
|
||||
export function updateWorkStudyApplication(data) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
// 删除勤工俭学申请信息
|
||||
export function delWorkStudyApplication(id) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/' + id,
|
||||
method: 'delete'
|
||||
});
|
||||
}
|
||||
|
||||
// 检查学生是否已申请该岗位
|
||||
export function checkDuplicateApplication(studentId, positionId) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/hasApplied',
|
||||
method: 'get',
|
||||
params: {
|
||||
studentId: studentId,
|
||||
positionId: positionId
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 提交申请
|
||||
export function submitApplication(id) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/submit/' + id,
|
||||
method: 'post'
|
||||
});
|
||||
}
|
||||
|
||||
// 撤销申请
|
||||
export function cancelApplication(id) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/cancel/' + id,
|
||||
method: 'post'
|
||||
});
|
||||
}
|
||||
|
||||
// 学院审核
|
||||
export function collegeReview(data) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/collegeReview',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
// 学生处审核
|
||||
export function finalReview(data) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/finalReview',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
// 获取当前用户学生信息
|
||||
export function getCurrentStudentInfo() {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/currentStudentInfo',
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
// 导出勤工俭学申请信息
|
||||
export function exportWorkStudyApplication(query) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/export',
|
||||
method: 'get',
|
||||
params: query,
|
||||
responseType: 'blob'
|
||||
});
|
||||
}
|
||||
|
||||
// 获取岗位申请统计信息
|
||||
export function getApplicationStatistics(positionId) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/statistics/' + positionId,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
@@ -0,0 +1,453 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
|
||||
/**
|
||||
* 勤工俭学申请查询对象类型
|
||||
*/
|
||||
export interface WorkStudyApplicationQuery extends PageQuery {
|
||||
/** 学生姓名 */
|
||||
studentName?: string;
|
||||
/** 学号 */
|
||||
studentNumber?: string;
|
||||
/** 身份证号 */
|
||||
idCard?: string;
|
||||
/** 联系电话 */
|
||||
contactPhone?: string;
|
||||
/** 学院名称 */
|
||||
collegeName?: string;
|
||||
/** 专业名称 */
|
||||
majorName?: string;
|
||||
/** 班级名称 */
|
||||
className?: string;
|
||||
/** 年级 */
|
||||
grade?: string;
|
||||
/** 岗位ID */
|
||||
positionId?: number;
|
||||
/** 岗位名称 */
|
||||
positionName?: string;
|
||||
/** 岗位类型 */
|
||||
positionType?: string;
|
||||
/** 工作地点 */
|
||||
workLocation?: string;
|
||||
/** 申请状态 */
|
||||
applicationStatus?: string;
|
||||
/** 学院审核状态 */
|
||||
collegeReviewStatus?: string;
|
||||
/** 学生处审核状态 */
|
||||
finalReviewStatus?: string;
|
||||
/** 家庭经济情况 */
|
||||
familyFinancialStatus?: string;
|
||||
/** 申请时间范围 */
|
||||
params?: {
|
||||
beginCreateTime?: string;
|
||||
endCreateTime?: string;
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* 勤工俭学申请对象类型
|
||||
*/
|
||||
export interface WorkStudyApplicationForm {
|
||||
/** 主键ID */
|
||||
id?: number;
|
||||
/** 学生ID */
|
||||
studentId?: number;
|
||||
/** 学生姓名 */
|
||||
studentName: string;
|
||||
/** 学生所在学院ID */
|
||||
collegeId?: number;
|
||||
/** 学号 */
|
||||
studentNumber: string;
|
||||
/** 身份证号 */
|
||||
idCard: string;
|
||||
/** 联系电话 */
|
||||
contactPhone: string;
|
||||
/** 学院名称 */
|
||||
collegeName: string;
|
||||
/** 专业名称 */
|
||||
majorName: string;
|
||||
/** 班级名称 */
|
||||
className: string;
|
||||
/** 年级 */
|
||||
grade?: string;
|
||||
/** 岗位ID */
|
||||
positionId?: number;
|
||||
/** 岗位名称 */
|
||||
positionName: string;
|
||||
/** 岗位类型 */
|
||||
positionType: string;
|
||||
/** 工作地点 */
|
||||
workLocation: string;
|
||||
/** 计划工作时长 */
|
||||
plannedWorkHours?: number;
|
||||
/** 家庭经济情况 */
|
||||
familyFinancialStatus: string;
|
||||
/** 申请理由 */
|
||||
applicationReason: string;
|
||||
/** 个人能力及经验 */
|
||||
personalAbility: string;
|
||||
/** 时间安排 */
|
||||
timeArrangement: string;
|
||||
/** 备注 */
|
||||
remark?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 勤工俭学申请展示对象类型
|
||||
*/
|
||||
export interface WorkStudyApplicationVO {
|
||||
/** 主键ID */
|
||||
id: number;
|
||||
/** 学生姓名 */
|
||||
studentName: string;
|
||||
/** 学号 */
|
||||
studentNumber: string;
|
||||
/** 身份证号 */
|
||||
idCard: string;
|
||||
/** 联系电话 */
|
||||
contactPhone: string;
|
||||
/** 学院名称 */
|
||||
collegeName: string;
|
||||
/** 专业名称 */
|
||||
majorName: string;
|
||||
/** 班级名称 */
|
||||
className: string;
|
||||
/** 年级 */
|
||||
grade: string;
|
||||
/** 岗位ID */
|
||||
positionId?: number;
|
||||
/** 岗位名称 */
|
||||
positionName: string;
|
||||
/** 岗位类型 */
|
||||
positionType: string;
|
||||
/** 工作地点 */
|
||||
workLocation: string;
|
||||
/** 计划工作时长 */
|
||||
plannedWorkHours: number;
|
||||
/** 家庭经济情况 */
|
||||
familyFinancialStatus: string;
|
||||
/** 申请理由 */
|
||||
applicationReason: string;
|
||||
/** 个人能力及经验 */
|
||||
personalAbility: string;
|
||||
/** 时间安排 */
|
||||
timeArrangement: string;
|
||||
/** 备注 */
|
||||
remark?: string;
|
||||
/** 申请状态 */
|
||||
applicationStatus: string;
|
||||
/** 学院审核状态 */
|
||||
collegeReviewStatus?: string;
|
||||
/** 学院审核时间 */
|
||||
collegeReviewTime?: string;
|
||||
/** 学院审核人姓名 */
|
||||
collegeReviewerName?: string;
|
||||
/** 学院审核意见 */
|
||||
collegeReviewComment?: string;
|
||||
/** 学生处审核状态 */
|
||||
finalReviewStatus?: string;
|
||||
/** 学生处审核时间 */
|
||||
finalReviewTime?: string;
|
||||
/** 学生处审核人姓名 */
|
||||
finalReviewerName?: string;
|
||||
/** 学生处审核意见 */
|
||||
finalReviewComment?: string;
|
||||
/** 创建时间 */
|
||||
createTime: string;
|
||||
/** 更新时间 */
|
||||
updateTime: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 审核请求对象类型
|
||||
*/
|
||||
export interface ReviewRequestForm {
|
||||
/** 申请ID */
|
||||
applicationId: number;
|
||||
/** 审核结果 */
|
||||
reviewStatus: string;
|
||||
/** 审核意见 */
|
||||
reviewComment: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 申请选项对象类型
|
||||
*/
|
||||
export interface ApplicationOptions {
|
||||
/** 年级选项 */
|
||||
gradeOptions: Array<{ label: string; value: string }>;
|
||||
/** 岗位类型选项 */
|
||||
positionTypeOptions: Array<{ label: string; value: string }>;
|
||||
/** 家庭经济情况选项 */
|
||||
familyFinancialStatusOptions: Array<{ label: string; value: string }>;
|
||||
/** 申请状态选项 */
|
||||
applicationStatusOptions: Array<{ label: string; value: string }>;
|
||||
/** 审核状态选项 */
|
||||
reviewStatusOptions: Array<{ label: string; value: string }>;
|
||||
}
|
||||
|
||||
// ========== 基础管理接口(6个) ==========
|
||||
|
||||
/**
|
||||
* 查询学生可申请的岗位列表(替代原申请列表)
|
||||
* @param query 查询参数
|
||||
*/
|
||||
export function listWorkStudyApplication(query: any): AxiosPromise<any[]> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询勤工俭学申请详细
|
||||
* @param id 申请ID
|
||||
*/
|
||||
export function getWorkStudyApplication(id: string | number): AxiosPromise<WorkStudyApplicationVO> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/detail/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增勤工俭学申请
|
||||
* @param data 申请数据
|
||||
*/
|
||||
export function addWorkStudyApplication(data: WorkStudyApplicationForm): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改勤工俭学申请
|
||||
* @param data 申请数据
|
||||
*/
|
||||
export function updateWorkStudyApplication(data: WorkStudyApplicationForm): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除勤工俭学申请
|
||||
* @param ids 申请ID数组
|
||||
*/
|
||||
export function delWorkStudyApplication(ids: string | number | Array<string | number>): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/' + ids,
|
||||
method: 'delete'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出勤工俭学申请数据
|
||||
* @param query 查询参数
|
||||
*/
|
||||
export function exportWorkStudyApplication(query: WorkStudyApplicationQuery): AxiosPromise<any> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/export',
|
||||
method: 'post',
|
||||
data: query,
|
||||
responseType: 'blob'
|
||||
});
|
||||
}
|
||||
|
||||
// ========== 业务功能接口(4个) ==========
|
||||
|
||||
/**
|
||||
* 查询我的申请列表
|
||||
* @param query 查询参数
|
||||
*/
|
||||
export function listMyWorkStudyApplication(query: WorkStudyApplicationQuery): AxiosPromise<WorkStudyApplicationVO[]> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/myList',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询待学院审核列表
|
||||
* @param query 查询参数
|
||||
*/
|
||||
export function listPendingCollegeReview(query: WorkStudyApplicationQuery): AxiosPromise<WorkStudyApplicationVO[]> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/pendingCollegeReview',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询待学生处审核列表
|
||||
* @param query 查询参数
|
||||
*/
|
||||
export function listPendingFinalReview(query: WorkStudyApplicationQuery): AxiosPromise<WorkStudyApplicationVO[]> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/pendingFinalReview',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取岗位申请统计信息
|
||||
* @param positionId 岗位ID
|
||||
*/
|
||||
export function getApplicationStatistics(positionId: string | number): AxiosPromise<{ [key: string]: any }> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/statistics/' + positionId,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
// ========== 申请流程接口(6个) ==========
|
||||
|
||||
/**
|
||||
* 提交申请
|
||||
* @param id 申请ID
|
||||
*/
|
||||
export function submitApplication(id: string | number): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/submit/' + id,
|
||||
method: 'post'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 撤销申请
|
||||
* @param id 申请ID
|
||||
*/
|
||||
export function cancelApplication(id: string | number): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/cancel/' + id,
|
||||
method: 'post'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 学院审核
|
||||
* @param data 审核数据
|
||||
*/
|
||||
export function collegeReview(data: ReviewRequestForm): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/collegeReview',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 学生处审核
|
||||
* @param data 审核数据
|
||||
*/
|
||||
export function finalReview(data: ReviewRequestForm): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/finalReview',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量学院审核
|
||||
* @param ids 申请ID数组
|
||||
* @param reviewResult 审核结果
|
||||
* @param reviewComment 审核意见
|
||||
*/
|
||||
export function batchCollegeReview(ids: Array<string | number>, reviewResult: string, reviewComment?: string): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/batchCollegeReview',
|
||||
method: 'post',
|
||||
params: {
|
||||
ids: ids,
|
||||
reviewResult: reviewResult,
|
||||
reviewComment: reviewComment
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量学生处审核
|
||||
* @param ids 申请ID数组
|
||||
* @param reviewResult 审核结果
|
||||
* @param reviewComment 审核意见
|
||||
*/
|
||||
export function batchFinalReview(ids: Array<string | number>, reviewResult: string, reviewComment?: string): AxiosPromise<void> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/batchFinalReview',
|
||||
method: 'post',
|
||||
params: {
|
||||
ids: ids,
|
||||
reviewResult: reviewResult,
|
||||
reviewComment: reviewComment
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// ========== 辅助功能接口(4个) ==========
|
||||
|
||||
/**
|
||||
* 获取申请选项数据
|
||||
*/
|
||||
export function getApplicationOptions(): AxiosPromise<ApplicationOptions> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/options',
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查重复申请
|
||||
* @param studentNumber 学号
|
||||
* @param positionId 岗位ID
|
||||
*/
|
||||
export function checkDuplicateApplication(studentNumber: string, positionId: number): AxiosPromise<{ isDuplicate: boolean }> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/checkDuplicate',
|
||||
method: 'get',
|
||||
params: {
|
||||
studentNumber: studentNumber,
|
||||
positionId: positionId
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取申请详情(用于审核展示)
|
||||
* @param id 申请ID
|
||||
*/
|
||||
export function getApplicationForReview(id: string | number): AxiosPromise<WorkStudyApplicationVO> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/review/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 导入申请数据模板下载
|
||||
*/
|
||||
export function downloadTemplate(): AxiosPromise<any> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/importTemplate',
|
||||
method: 'get',
|
||||
responseType: 'blob'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前用户学生信息
|
||||
*/
|
||||
export function getCurrentStudentInfo(): AxiosPromise<any> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyApplication/currentStudentInfo',
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
@@ -0,0 +1,183 @@
|
||||
import request from '@/utils/request';
|
||||
import { TableDataInfo, R } from '@/api/types';
|
||||
|
||||
// 勤工俭学申请VO类型
|
||||
export interface WorkStudyApplicationVO {
|
||||
id?: string | number;
|
||||
positionId?: string | number;
|
||||
positionName?: string;
|
||||
studentId?: string | number;
|
||||
studentName?: string;
|
||||
studentNo?: string;
|
||||
collegeId?: string | number;
|
||||
collegeName?: string;
|
||||
majorName?: string;
|
||||
grade?: string;
|
||||
className?: string;
|
||||
contactPhone?: string;
|
||||
email?: string;
|
||||
workExperience?: string;
|
||||
applicationReason?: string;
|
||||
status?: string;
|
||||
statusName?: string;
|
||||
applicationDate?: string;
|
||||
collegeReviewBy?: string | number;
|
||||
collegeReviewByName?: string;
|
||||
collegeReviewTime?: string;
|
||||
collegeReviewComment?: string;
|
||||
finalReviewBy?: string | number;
|
||||
finalReviewByName?: string;
|
||||
finalReviewTime?: string;
|
||||
finalReviewComment?: string;
|
||||
createBy?: string | number;
|
||||
createTime?: string;
|
||||
updateBy?: string | number;
|
||||
updateTime?: string;
|
||||
}
|
||||
|
||||
// 查询参数
|
||||
export interface WorkStudyApplicationQuery {
|
||||
pageNum?: number;
|
||||
pageSize?: number;
|
||||
positionName?: string;
|
||||
studentName?: string;
|
||||
studentNo?: string;
|
||||
collegeName?: string;
|
||||
status?: string;
|
||||
applicationDate?: string;
|
||||
params?: any;
|
||||
}
|
||||
|
||||
// 审核表单
|
||||
export interface ReviewForm {
|
||||
applicationId: string | number;
|
||||
reviewResult: string;
|
||||
reviewComment?: string;
|
||||
}
|
||||
|
||||
// 统计数据
|
||||
export interface StatisticsVO {
|
||||
pendingCount?: number;
|
||||
approvedCount?: number;
|
||||
rejectedCount?: number;
|
||||
finalApprovedCount?: number;
|
||||
totalCount?: number;
|
||||
}
|
||||
|
||||
// 选项数据
|
||||
export interface OptionsVO {
|
||||
statusOptions?: Array<{ label: string; value: string }>;
|
||||
reviewStatusOptions?: Array<{ label: string; value: string }>;
|
||||
}
|
||||
|
||||
// 查询本学院待审核申请列表
|
||||
export function listPendingApplications(query: WorkStudyApplicationQuery) {
|
||||
return request<TableDataInfo<WorkStudyApplicationVO>>({
|
||||
url: '/jcbt/workStudyApplicationCollegeReview/pendingList',
|
||||
method: 'get',
|
||||
params: query,
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 查询本学院所有申请列表
|
||||
export function listCollegeApplications(query: WorkStudyApplicationQuery) {
|
||||
return request<TableDataInfo<WorkStudyApplicationVO>>({
|
||||
url: '/jcbt/workStudyApplicationCollegeReview/list',
|
||||
method: 'get',
|
||||
params: query,
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 获取本学院申请详情
|
||||
export function getCollegeApplication(id: string | number) {
|
||||
return request<R<WorkStudyApplicationVO>>({
|
||||
url: '/jcbt/workStudyApplicationCollegeReview/' + id,
|
||||
method: 'get',
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 学院审核
|
||||
export function reviewApplication(data: ReviewForm) {
|
||||
return request<R<any>>({
|
||||
url: '/jcbt/workStudyApplicationCollegeReview/review',
|
||||
method: 'post',
|
||||
data: data,
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 批量学院审核
|
||||
export function batchReviewApplications(ids: Array<string | number>, reviewResult: string, reviewComment?: string) {
|
||||
return request<R<any>>({
|
||||
url: '/jcbt/workStudyApplicationCollegeReview/batchReview',
|
||||
method: 'post',
|
||||
params: {
|
||||
reviewResult,
|
||||
reviewComment
|
||||
},
|
||||
data: ids,
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 获取本学院申请统计信息
|
||||
export function getCollegeStatistics() {
|
||||
return request<R<StatisticsVO>>({
|
||||
url: '/jcbt/workStudyApplicationCollegeReview/statistics',
|
||||
method: 'get',
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 获取本学院申请统计信息(调试版本)
|
||||
export function getCollegeStatisticsDebug() {
|
||||
return request<R<any>>({
|
||||
url: '/jcbt/workStudyApplicationCollegeReview/debug/statistics',
|
||||
method: 'get',
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 通过列表API获取统计信息(作为备用方案)
|
||||
export function getCollegeStatisticsByList() {
|
||||
return request<TableDataInfo<WorkStudyApplicationVO>>({
|
||||
url: '/jcbt/workStudyApplicationCollegeReview/list',
|
||||
method: 'get',
|
||||
params: {
|
||||
pageNum: 1,
|
||||
pageSize: 1,
|
||||
status: 'SUBMITTED'
|
||||
},
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 获取可用选项
|
||||
export function getApplicationOptions() {
|
||||
return request<R<OptionsVO>>({
|
||||
url: '/jcbt/workStudyApplicationCollegeReview/options',
|
||||
method: 'get',
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -0,0 +1,306 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
|
||||
/**
|
||||
* 勤工俭学岗位查询对象类型
|
||||
*/
|
||||
export interface WorkStudyPositionQuery extends PageQuery {
|
||||
/** 岗位名称 */
|
||||
positionName?: string;
|
||||
/** 发布范围 */
|
||||
positionScope?: string;
|
||||
/** 联系老师 */
|
||||
contactTeacher?: string;
|
||||
/** 学院ID */
|
||||
collegeId?: number | string;
|
||||
/** 岗位状态 */
|
||||
status?: string;
|
||||
/** 创建时间范围 */
|
||||
createTime?: [string, string];
|
||||
/** 有效期范围 */
|
||||
validPeriod?: [string, string];
|
||||
}
|
||||
|
||||
/**
|
||||
* 勤工俭学岗位表单类型
|
||||
*/
|
||||
export interface WorkStudyPositionForm {
|
||||
/** 主键 */
|
||||
id?: string | number;
|
||||
/** 岗位名称 */
|
||||
positionName?: string;
|
||||
/** 发布范围 */
|
||||
positionScope?: string;
|
||||
/** 需求人数 */
|
||||
requiredCount?: number;
|
||||
/** 工作时间 */
|
||||
workTime?: string;
|
||||
/** 开始日期 */
|
||||
startDate?: string;
|
||||
/** 结束日期 */
|
||||
endDate?: string;
|
||||
/** 岗位要求 */
|
||||
positionRequirements?: string;
|
||||
/** 薪资情况 */
|
||||
salaryInfo?: string;
|
||||
/** 联系老师 */
|
||||
contactTeacher?: string;
|
||||
/** 联系电话 */
|
||||
contactPhone?: string;
|
||||
/** 学院ID */
|
||||
collegeId?: number | string;
|
||||
/** 学院名称 */
|
||||
collegeName?: string;
|
||||
/** 岗位状态 */
|
||||
status?: string;
|
||||
/** 当前申请通过人数 */
|
||||
currentCount?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* 勤工俭学岗位视图对象类型
|
||||
*/
|
||||
export interface WorkStudyPositionVO {
|
||||
/** 主键 */
|
||||
id?: string | number;
|
||||
/** 岗位名称 */
|
||||
positionName?: string;
|
||||
/** 发布范围 */
|
||||
positionScope?: string;
|
||||
/** 发布范围名称 */
|
||||
positionScopeName?: string;
|
||||
/** 需求人数 */
|
||||
requiredCount?: number;
|
||||
/** 工作时间 */
|
||||
workTime?: string;
|
||||
/** 开始日期 */
|
||||
startDate?: string;
|
||||
/** 结束日期 */
|
||||
endDate?: string;
|
||||
/** 岗位要求 */
|
||||
positionRequirements?: string;
|
||||
/** 薪资情况 */
|
||||
salaryInfo?: string;
|
||||
/** 联系老师 */
|
||||
contactTeacher?: string;
|
||||
/** 联系电话 */
|
||||
contactPhone?: string;
|
||||
/** 学院ID */
|
||||
collegeId?: number | string;
|
||||
/** 学院名称 */
|
||||
collegeName?: string;
|
||||
/** 岗位状态 */
|
||||
status?: string;
|
||||
/** 岗位状态名称 */
|
||||
statusName?: string;
|
||||
/** 当前申请通过人数 */
|
||||
currentCount?: number;
|
||||
/** 创建者 */
|
||||
createBy?: number;
|
||||
/** 创建时间 */
|
||||
createTime?: string;
|
||||
/** 更新者 */
|
||||
updateBy?: number;
|
||||
/** 更新时间 */
|
||||
updateTime?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 岗位统计数据类型
|
||||
*/
|
||||
export interface PositionStatisticsVO {
|
||||
/** 岗位总数 */
|
||||
totalCount?: number;
|
||||
/** 按状态统计 */
|
||||
statusCount?: {
|
||||
DRAFT?: number;
|
||||
PUBLISHED?: number;
|
||||
RECRUITING?: number;
|
||||
FULL?: number;
|
||||
EXPIRED?: number;
|
||||
SUSPENDED?: number;
|
||||
CANCELLED?: number;
|
||||
};
|
||||
/** 按发布范围统计 */
|
||||
scopeCount?: {
|
||||
COLLEGE?: number;
|
||||
UNIVERSITY?: number;
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询勤工俭学岗位列表
|
||||
*/
|
||||
export function listWorkStudyPosition(query: WorkStudyPositionQuery): AxiosPromise<TableDataInfo<WorkStudyPositionVO>> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyPosition/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询勤工俭学岗位信息详细
|
||||
* @param id 岗位ID
|
||||
*/
|
||||
export function getWorkStudyPosition(id: string | number): AxiosPromise<WorkStudyPositionVO> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyPosition/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取岗位详情及当前用户申请状态
|
||||
* @param id 岗位ID
|
||||
*/
|
||||
export function getWorkStudyPositionWithApplicationStatus(id: string | number): AxiosPromise<{
|
||||
position: WorkStudyPositionVO;
|
||||
applicationStatus: {
|
||||
applicationStatusText: string;
|
||||
applicationStatus: string;
|
||||
hasApplication: number;
|
||||
canCancel: number;
|
||||
canEdit: number;
|
||||
applicationId?: number;
|
||||
lastApplicationTime?: string;
|
||||
};
|
||||
}> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyPosition/' + id + '/withApplicationStatus',
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增勤工俭学岗位
|
||||
*/
|
||||
export function addWorkStudyPosition(data: WorkStudyPositionForm) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyPosition',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改勤工俭学岗位
|
||||
*/
|
||||
export function updateWorkStudyPosition(data: WorkStudyPositionForm) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyPosition',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除勤工俭学岗位
|
||||
*/
|
||||
export function delWorkStudyPosition(id: string | number | Array<string | number>) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyPosition/' + id,
|
||||
method: 'delete'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取岗位统计数据
|
||||
*/
|
||||
export function getPositionStatistics(): AxiosPromise<PositionStatisticsVO> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyPosition/statistics',
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 发布岗位
|
||||
*/
|
||||
export function publishPosition(id: string | number) {
|
||||
return request({
|
||||
url: `/jcbt/workStudyPosition/publish/${id}`,
|
||||
method: 'put'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 暂停岗位招录
|
||||
*/
|
||||
export function suspendPosition(id: string | number) {
|
||||
return request({
|
||||
url: `/jcbt/workStudyPosition/suspend/${id}`,
|
||||
method: 'put'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 恢复岗位招录
|
||||
*/
|
||||
export function resumePosition(id: string | number) {
|
||||
return request({
|
||||
url: `/jcbt/workStudyPosition/resume/${id}`,
|
||||
method: 'put'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 取消岗位
|
||||
*/
|
||||
export function cancelPosition(id: string | number) {
|
||||
return request({
|
||||
url: `/jcbt/workStudyPosition/cancel/${id}`,
|
||||
method: 'put'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出勤工俭学岗位
|
||||
*/
|
||||
export function exportWorkStudyPosition(query: WorkStudyPositionQuery) {
|
||||
return request({
|
||||
url: '/jcbt/workStudyPosition/export',
|
||||
method: 'post',
|
||||
data: query
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可用的学院选项
|
||||
*/
|
||||
export function getCollegeOptions(): AxiosPromise<any[]> {
|
||||
return request({
|
||||
url: '/system/dict/data/type/college_list',
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询可见岗位列表(学院可见的岗位:本学院岗位 + 全校范围岗位)
|
||||
* @param query 查询参数
|
||||
* @param excludeApplied 是否排除已申请岗位
|
||||
*/
|
||||
export function listVisiblePositions(
|
||||
query: WorkStudyPositionQuery,
|
||||
excludeApplied: boolean = false
|
||||
): AxiosPromise<TableDataInfo<WorkStudyPositionVO>> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyPosition/visibleList',
|
||||
method: 'get',
|
||||
params: {
|
||||
...query,
|
||||
excludeApplied
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 学生查看可申请的岗位列表(公开接口,无需权限)
|
||||
*/
|
||||
export function listAvailablePositionsForStudent(query: WorkStudyPositionQuery): AxiosPromise<WorkStudyPositionVO[]> {
|
||||
return request({
|
||||
url: '/jcbt/workStudyPosition/student/available',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
@@ -57,3 +57,20 @@ export interface TenantInfo {
|
||||
tenantEnabled: boolean;
|
||||
voList: TenantVO[];
|
||||
}
|
||||
|
||||
/**
|
||||
* 通用响应结构
|
||||
*/
|
||||
export interface R<T = any> {
|
||||
code: number;
|
||||
msg: string;
|
||||
data: T;
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页数据信息
|
||||
*/
|
||||
export interface TableDataInfo<T = any> {
|
||||
total: number;
|
||||
rows: T;
|
||||
}
|
||||
@@ -168,7 +168,6 @@ export interface StudentCancelLeaveVO {
|
||||
* 学生请假表id
|
||||
*/
|
||||
leaveId: string | number;
|
||||
|
||||
}
|
||||
|
||||
export interface StudentCancelLeaveForm extends BaseEntity {
|
||||
@@ -341,11 +340,9 @@ export interface StudentCancelLeaveForm extends BaseEntity {
|
||||
* 学生请假表id
|
||||
*/
|
||||
leaveId?: string | number;
|
||||
|
||||
}
|
||||
|
||||
export interface StudentCancelLeaveQuery extends PageQuery {
|
||||
|
||||
/**
|
||||
* 删除标志(0代表存在 1代表删除)
|
||||
*/
|
||||
@@ -511,11 +508,8 @@ export interface StudentCancelLeaveQuery extends PageQuery {
|
||||
*/
|
||||
leaveId?: string | number;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user