// 勤工俭学API接口 import { request } from '@/common/request.js'; /** * 学生查看可申请的岗位列表 * @param {Object} params 查询参数 */ export const getAvailablePositions = (params = {}) => { return request({ url: '/jcbt/workStudyPosition/visibleList', method: 'GET', params: { ...params, excludeApplied: true // 排除已申请的岗位 } }); }; /** * 获取岗位详情及申请状态 * @param {String|Number} positionId 岗位ID */ export const getPositionWithApplicationStatus = (positionId) => { return request({ url: `/jcbt/workStudyPosition/${positionId}/withApplicationStatus`, method: 'GET' }); }; /** * 查看我的申请列表 * @param {Object} params 查询参数 */ export const getMyApplications = (params = {}) => { return request({ url: '/jcbt/workStudyApplication/myList', method: 'GET', params: params }); }; /** * 新增申请 * @param {Object} data 申请数据 */ export const addApplication = (data) => { return request({ url: '/jcbt/workStudyApplication', method: 'POST', data: data }); }; /** * 提交申请 * @param {String|Number} applicationId 申请ID */ export const submitApplication = (applicationId) => { return request({ url: `/jcbt/workStudyApplication/submit/${applicationId}`, method: 'POST' }); }; /** * 撤销申请 * @param {String|Number} applicationId 申请ID */ export const cancelApplication = (applicationId) => { return request({ url: `/jcbt/workStudyApplication/cancel/${applicationId}`, method: 'POST' }); }; /** * 获取当前学生信息 */ export const getCurrentStudentInfo = () => { return request({ url: '/jcbt/workStudyApplication/currentStudentInfo', method: 'GET' }); }; /** * 获取申请选项数据 */ export const getApplicationOptions = () => { return request({ url: '/jcbt/workStudyApplication/options', method: 'GET' }); }; /** * 检查重复申请 * @param {String} studentNumber 学号 * @param {Number} positionId 岗位ID */ export const checkDuplicateApplication = (studentNumber, positionId) => { return request({ url: '/jcbt/workStudyApplication/checkDuplicate', method: 'GET', params: { studentNumber: studentNumber, positionId: positionId } }); }; /** * 查询申请详情 * @param {String|Number} applicationId 申请ID */ export const getApplicationDetail = (applicationId) => { return request({ url: `/jcbt/workStudyApplication/detail/${applicationId}`, method: 'GET' }); }; /** * 修改申请 * @param {Object} data 申请数据 */ export const updateApplication = (data) => { return request({ url: '/jcbt/workStudyApplication', method: 'PUT', data: data }); }; /** * 获取学生已申请岗位状态列表 */ export const getStudentApplicationStatusList = () => { return request({ url: '/jcbt/workStudyApplication/student/applicationStatus', method: 'GET' }); };