Merge branch 'master' of http://47.99.164.66:3000/hzdyjs-xg/all-project
This commit is contained in:
commit
74ab953c17
164 files changed
+25187
-1775
No files matched your search
@@ -44,6 +44,26 @@ export interface StglActivityVO {
|
||||
*/
|
||||
posterUrl?: string;
|
||||
|
||||
/**
|
||||
* 关联部门ID(多个部门时用逗号分隔)
|
||||
*/
|
||||
relatedDeptId?: string | number;
|
||||
|
||||
/**
|
||||
* 关联部门ID列表
|
||||
*/
|
||||
relatedDeptIds?: (string | number)[];
|
||||
|
||||
/**
|
||||
* 关联部门名称(多个部门时用逗号分隔)
|
||||
*/
|
||||
relatedDeptName?: string;
|
||||
|
||||
/**
|
||||
* 关联部门名称列表
|
||||
*/
|
||||
relatedDeptNames?: string[];
|
||||
|
||||
/**
|
||||
* 关联社团ID
|
||||
*/
|
||||
@@ -272,6 +292,26 @@ export interface StglActivityForm {
|
||||
*/
|
||||
posterUrl?: string;
|
||||
|
||||
/**
|
||||
* 关联部门ID(多个部门时用逗号分隔)
|
||||
*/
|
||||
relatedDeptId?: string | number;
|
||||
|
||||
/**
|
||||
* 关联部门ID列表
|
||||
*/
|
||||
relatedDeptIds?: (string | number)[];
|
||||
|
||||
/**
|
||||
* 关联部门对象(用于选择器绑定)
|
||||
*/
|
||||
relatedDept?: DeptOption | null;
|
||||
|
||||
/**
|
||||
* 关联部门对象列表(多选时使用)
|
||||
*/
|
||||
relatedDepts?: DeptOption[] | null;
|
||||
|
||||
/**
|
||||
* 关联社团ID
|
||||
*/
|
||||
@@ -454,6 +494,11 @@ export interface StglActivityQuery extends PageQuery {
|
||||
*/
|
||||
location?: string;
|
||||
|
||||
/**
|
||||
* 关联部门ID
|
||||
*/
|
||||
relatedDeptId?: string | number;
|
||||
|
||||
/**
|
||||
* 关联社团ID
|
||||
*/
|
||||
@@ -505,6 +550,21 @@ export interface StglActivityQuery extends PageQuery {
|
||||
params?: any;
|
||||
}
|
||||
|
||||
/**
|
||||
* 部门选择器选项
|
||||
*/
|
||||
export interface DeptOption {
|
||||
/**
|
||||
* 部门ID
|
||||
*/
|
||||
deptId: string | number;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
deptName: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 社团/志愿者队伍选择器选项
|
||||
*/
|
||||
|
||||
@@ -45,6 +45,26 @@ export interface StglActivityVo {
|
||||
*/
|
||||
posterUrl: string;
|
||||
|
||||
/**
|
||||
* 关联部门ID(多个部门时用逗号分隔)
|
||||
*/
|
||||
relatedDeptId?: string | number;
|
||||
|
||||
/**
|
||||
* 关联部门ID列表
|
||||
*/
|
||||
relatedDeptIds?: (string | number)[];
|
||||
|
||||
/**
|
||||
* 关联部门名称(多个部门时用逗号分隔)
|
||||
*/
|
||||
relatedDeptName?: string;
|
||||
|
||||
/**
|
||||
* 关联部门名称列表
|
||||
*/
|
||||
relatedDeptNames?: string[];
|
||||
|
||||
/**
|
||||
* 关联社团ID
|
||||
*/
|
||||
|
||||
@@ -0,0 +1,140 @@
|
||||
import request from '@/utils/request'
|
||||
import { AxiosPromise } from 'axios'
|
||||
import { StglAuditorVO, StglAuditorForm, StglAuditorQuery } from './types'
|
||||
|
||||
/**
|
||||
* 查询社团管理审核人配置列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listStglAuditor = (query?: StglAuditorQuery): AxiosPromise<StglAuditorVO[]> => {
|
||||
return request({
|
||||
url: '/stgl/auditor/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询社团管理审核人配置详细
|
||||
* @param id
|
||||
*/
|
||||
export const getStglAuditor = (id: string | number): AxiosPromise<StglAuditorVO> => {
|
||||
return request({
|
||||
url: '/stgl/auditor/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增社团管理审核人配置
|
||||
* @param data
|
||||
*/
|
||||
export const addStglAuditor = (data: StglAuditorForm) => {
|
||||
return request({
|
||||
url: '/stgl/auditor',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改社团管理审核人配置
|
||||
* @param data
|
||||
*/
|
||||
export const updateStglAuditor = (data: StglAuditorForm) => {
|
||||
return request({
|
||||
url: '/stgl/auditor',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除社团管理审核人配置
|
||||
* @param id
|
||||
*/
|
||||
export const delStglAuditor = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: '/stgl/auditor/' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出社团管理审核人配置
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
export const exportStglAuditor = (query?: StglAuditorQuery) => {
|
||||
return request({
|
||||
url: '/stgl/auditor/export',
|
||||
method: 'post',
|
||||
data: query,
|
||||
responseType: 'blob'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量添加审核人
|
||||
* @param userIds 用户ID列表
|
||||
* @param remark 备注
|
||||
*/
|
||||
export const batchAddAuditors = (userIds: number[], remark?: string) => {
|
||||
return request({
|
||||
url: '/stgl/auditor/batchAdd',
|
||||
method: 'post',
|
||||
data: {
|
||||
userIds,
|
||||
remark
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询我配置的审核人列表
|
||||
* @param query
|
||||
*/
|
||||
export const listMyConfigAuditors = (query?: StglAuditorQuery): AxiosPromise<StglAuditorVO[]> => {
|
||||
return request({
|
||||
url: '/stgl/auditor/myConfig',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量启用审核人
|
||||
* @param ids
|
||||
*/
|
||||
export const enableAuditors = (ids: number[]) => {
|
||||
return request({
|
||||
url: '/stgl/auditor/enable',
|
||||
method: 'post',
|
||||
data: ids
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量停用审核人
|
||||
* @param ids
|
||||
*/
|
||||
export const disableAuditors = (ids: number[]) => {
|
||||
return request({
|
||||
url: '/stgl/auditor/disable',
|
||||
method: 'post',
|
||||
data: ids
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据部门ID获取用户列表
|
||||
* @param deptId
|
||||
*/
|
||||
export const listUserByDeptId = (deptId: string | number) => {
|
||||
return request({
|
||||
url: '/stgl/auditor/users/' + deptId,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
@@ -0,0 +1,184 @@
|
||||
import { PageQuery } from '@/api/types'
|
||||
|
||||
export interface StglAuditorVO {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
userId: number;
|
||||
|
||||
/**
|
||||
* 用户账号
|
||||
*/
|
||||
userName: string;
|
||||
|
||||
/**
|
||||
* 用户昵称
|
||||
*/
|
||||
nickName: string;
|
||||
|
||||
/**
|
||||
* 部门ID
|
||||
*/
|
||||
deptId: number;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
deptName: string;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
phoneNumber: string;
|
||||
|
||||
/**
|
||||
* 邮箱地址
|
||||
*/
|
||||
email: string;
|
||||
|
||||
/**
|
||||
* 状态(1正常 0停用)
|
||||
*/
|
||||
status: string;
|
||||
|
||||
/**
|
||||
* 备注说明
|
||||
*/
|
||||
remark: string;
|
||||
|
||||
/**
|
||||
* 配置人ID
|
||||
*/
|
||||
configBy: number;
|
||||
|
||||
/**
|
||||
* 配置人姓名
|
||||
*/
|
||||
configByName: string;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
createBy: number;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
createTime: string;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
updateBy: number;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
updateTime: string;
|
||||
}
|
||||
|
||||
export interface StglAuditorForm {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
userId?: number;
|
||||
|
||||
/**
|
||||
* 用户账号
|
||||
*/
|
||||
userName?: string;
|
||||
|
||||
/**
|
||||
* 用户昵称
|
||||
*/
|
||||
nickName?: string;
|
||||
|
||||
/**
|
||||
* 部门ID
|
||||
*/
|
||||
deptId?: number;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
deptName?: string;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
phoneNumber?: string;
|
||||
|
||||
/**
|
||||
* 邮箱地址
|
||||
*/
|
||||
email?: string;
|
||||
|
||||
/**
|
||||
* 状态(1正常 0停用)
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
/**
|
||||
* 备注说明
|
||||
*/
|
||||
remark?: string;
|
||||
|
||||
/**
|
||||
* 配置人ID
|
||||
*/
|
||||
configBy?: number;
|
||||
|
||||
/**
|
||||
* 配置人姓名
|
||||
*/
|
||||
configByName?: string;
|
||||
}
|
||||
|
||||
export interface StglAuditorQuery extends PageQuery {
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
userId?: number;
|
||||
|
||||
/**
|
||||
* 用户账号
|
||||
*/
|
||||
userName?: string;
|
||||
|
||||
/**
|
||||
* 用户昵称
|
||||
*/
|
||||
nickName?: string;
|
||||
|
||||
/**
|
||||
* 部门ID
|
||||
*/
|
||||
deptId?: number;
|
||||
|
||||
/**
|
||||
* 状态(1正常 0停用)
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
/**
|
||||
* 配置人ID
|
||||
*/
|
||||
configBy?: number;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
'params[beginCreateTime]'?: string;
|
||||
'params[endCreateTime]'?: string;
|
||||
}
|
||||
@@ -0,0 +1,276 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
|
||||
export interface StglClubAdvisorHistoryVO {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 社团ID
|
||||
*/
|
||||
clubId?: string | number;
|
||||
|
||||
/**
|
||||
* 社团名称
|
||||
*/
|
||||
clubName?: string;
|
||||
|
||||
/**
|
||||
* 指导老师姓名
|
||||
*/
|
||||
advisorName?: string;
|
||||
|
||||
/**
|
||||
* 指导老师部门
|
||||
*/
|
||||
advisorDept?: string;
|
||||
|
||||
/**
|
||||
* 指导老师电话
|
||||
*/
|
||||
advisorPhone?: string;
|
||||
|
||||
/**
|
||||
* 指导老师邮箱
|
||||
*/
|
||||
advisorEmail?: string;
|
||||
|
||||
/**
|
||||
* 指导老师用户ID
|
||||
*/
|
||||
advisorUserId?: string | number;
|
||||
|
||||
/**
|
||||
* 在任状态:1-当前在任,0-历史(已离任)
|
||||
*/
|
||||
status?: number;
|
||||
|
||||
/**
|
||||
* 上任时间
|
||||
*/
|
||||
startTime?: string;
|
||||
|
||||
/**
|
||||
* 离任时间
|
||||
*/
|
||||
endTime?: string;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
createBy?: string | number;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
createTime?: string;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
updateBy?: string | number;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
updateTime?: string;
|
||||
}
|
||||
|
||||
export interface StglClubAdvisorHistoryForm extends BaseEntity {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 社团ID
|
||||
*/
|
||||
clubId?: string | number;
|
||||
|
||||
/**
|
||||
* 指导老师姓名
|
||||
*/
|
||||
advisorName?: string;
|
||||
|
||||
/**
|
||||
* 指导老师部门
|
||||
*/
|
||||
advisorDept?: string;
|
||||
|
||||
/**
|
||||
* 指导老师电话
|
||||
*/
|
||||
advisorPhone?: string;
|
||||
|
||||
/**
|
||||
* 指导老师邮箱
|
||||
*/
|
||||
advisorEmail?: string;
|
||||
|
||||
/**
|
||||
* 指导老师用户ID
|
||||
*/
|
||||
advisorUserId?: string | number;
|
||||
|
||||
/**
|
||||
* 在任状态:1-当前在任,0-历史(已离任)
|
||||
*/
|
||||
status?: number;
|
||||
|
||||
/**
|
||||
* 上任时间
|
||||
*/
|
||||
startTime?: string;
|
||||
|
||||
/**
|
||||
* 离任时间
|
||||
*/
|
||||
endTime?: string;
|
||||
}
|
||||
|
||||
export interface StglClubAdvisorHistoryQuery extends PageQuery {
|
||||
/**
|
||||
* 社团ID
|
||||
*/
|
||||
clubId?: string | number;
|
||||
|
||||
/**
|
||||
* 指导老师姓名
|
||||
*/
|
||||
advisorName?: string;
|
||||
|
||||
/**
|
||||
* 指导老师部门
|
||||
*/
|
||||
advisorDept?: string;
|
||||
|
||||
/**
|
||||
* 指导老师电话
|
||||
*/
|
||||
advisorPhone?: string;
|
||||
|
||||
/**
|
||||
* 指导老师邮箱
|
||||
*/
|
||||
advisorEmail?: string;
|
||||
|
||||
/**
|
||||
* 指导老师用户ID
|
||||
*/
|
||||
advisorUserId?: string | number;
|
||||
|
||||
/**
|
||||
* 在任状态:1-当前在任,0-历史(已离任)
|
||||
*/
|
||||
status?: number;
|
||||
|
||||
/**
|
||||
* 上任时间
|
||||
*/
|
||||
startTime?: string;
|
||||
|
||||
/**
|
||||
* 离任时间
|
||||
*/
|
||||
endTime?: string;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询社团指导老师任职历史列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listStglClubAdvisorHistory = (query?: StglClubAdvisorHistoryQuery): AxiosPromise<StglClubAdvisorHistoryVO[]> => {
|
||||
return request({
|
||||
url: '/stgl/club/advisor/history/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询社团指导老师任职历史详细
|
||||
* @param id
|
||||
*/
|
||||
export const getStglClubAdvisorHistory = (id: string | number): AxiosPromise<StglClubAdvisorHistoryVO> => {
|
||||
return request({
|
||||
url: '/stgl/club/advisor/history/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询指定社团的当前在任指导老师
|
||||
* @param clubId
|
||||
*/
|
||||
export const getCurrentAdvisors = (clubId: string | number): AxiosPromise<StglClubAdvisorHistoryVO[]> => {
|
||||
return request({
|
||||
url: '/stgl/club/advisor/history/current/' + clubId,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询指定社团的历史指导老师(已离任)
|
||||
* @param clubId
|
||||
*/
|
||||
export const getHistoryAdvisors = (clubId: string | number): AxiosPromise<StglClubAdvisorHistoryVO[]> => {
|
||||
return request({
|
||||
url: '/stgl/club/advisor/history/history/' + clubId,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询指定社团的所有指导老师(包含当前和历史)
|
||||
* @param clubId
|
||||
*/
|
||||
export const getAllAdvisors = (clubId: string | number): AxiosPromise<StglClubAdvisorHistoryVO[]> => {
|
||||
return request({
|
||||
url: '/stgl/club/advisor/history/all/' + clubId,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增社团指导老师任职历史
|
||||
* @param data
|
||||
*/
|
||||
export const addStglClubAdvisorHistory = (data: StglClubAdvisorHistoryForm) => {
|
||||
return request({
|
||||
url: '/stgl/club/advisor/history',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改社团指导老师任职历史
|
||||
* @param data
|
||||
*/
|
||||
export const updateStglClubAdvisorHistory = (data: StglClubAdvisorHistoryForm) => {
|
||||
return request({
|
||||
url: '/stgl/club/advisor/history',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 删除社团指导老师任职历史
|
||||
* @param id
|
||||
*/
|
||||
export const delStglClubAdvisorHistory = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: '/stgl/club/advisor/history/' + id,
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
||||
@@ -0,0 +1,222 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { StglClubAnnualReviewVO, StglClubAnnualReviewForm, StglClubAnnualReviewQuery } from './type';
|
||||
|
||||
/**
|
||||
* 查询社团年审记录列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
export const listStglClubAnnualReview = (query?: StglClubAnnualReviewQuery): AxiosPromise<StglClubAnnualReviewVO[]> => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/list',
|
||||
method: 'get',
|
||||
params: query,
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询我的社团年审记录列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
export const listMyStglClubAnnualReview = (query?: StglClubAnnualReviewQuery): AxiosPromise<StglClubAnnualReviewVO[]> => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/myList',
|
||||
method: 'get',
|
||||
params: query,
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询社团年审记录详细
|
||||
* @param id
|
||||
*/
|
||||
export const getStglClubAnnualReview = (id: string | number): AxiosPromise<StglClubAnnualReviewVO> => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/' + id,
|
||||
method: 'get',
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增社团年审记录
|
||||
* @param data
|
||||
*/
|
||||
export const addStglClubAnnualReview = (data: StglClubAnnualReviewForm) => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview',
|
||||
method: 'post',
|
||||
data: data,
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改社团年审记录
|
||||
* @param data
|
||||
*/
|
||||
export const updateStglClubAnnualReview = (data: StglClubAnnualReviewForm) => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview',
|
||||
method: 'put',
|
||||
data: data,
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 删除社团年审记录
|
||||
* @param id
|
||||
*/
|
||||
export const delStglClubAnnualReview = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/' + id,
|
||||
method: 'delete',
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 提交年审记录
|
||||
* @param id
|
||||
*/
|
||||
export const submitStglClubAnnualReview = (id: string | number) => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/submit/' + id,
|
||||
method: 'post',
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 撤回年审记录
|
||||
* @param id
|
||||
*/
|
||||
export const withdrawStglClubAnnualReview = (id: string | number) => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/withdraw/' + id,
|
||||
method: 'post',
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 审核年审记录
|
||||
* @param params
|
||||
*/
|
||||
export const auditStglClubAnnualReview = (params: {
|
||||
id: string | number;
|
||||
auditResult: string;
|
||||
auditOpinion?: string;
|
||||
auditType: string;
|
||||
}) => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/audit',
|
||||
method: 'post',
|
||||
params: params,
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 检查是否可以创建年审记录
|
||||
* @param clubId
|
||||
* @param reviewYear
|
||||
*/
|
||||
export const checkCanCreateStglClubAnnualReview = (clubId: string | number, reviewYear: number): AxiosPromise<boolean> => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/check',
|
||||
method: 'get',
|
||||
params: {
|
||||
clubId,
|
||||
reviewYear
|
||||
},
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 获取年审状态选项
|
||||
*/
|
||||
export const getAnnualReviewStatusOptions = (): AxiosPromise<string[]> => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/statusOptions',
|
||||
method: 'get',
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 导出社团年审记录
|
||||
* @param query
|
||||
*/
|
||||
export const exportStglClubAnnualReview = (query?: StglClubAnnualReviewQuery) => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/export',
|
||||
method: 'post',
|
||||
data: query,
|
||||
responseType: 'blob',
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 根据社团ID和年审年度获取该年度的活动数据
|
||||
* @param clubId 社团ID
|
||||
* @param reviewYear 年审年度 (例如:2024)
|
||||
*/
|
||||
export const getClubActivitiesByReviewYear = (clubId: string | number, reviewYear: number) => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/clubActivities',
|
||||
method: 'get',
|
||||
params: {
|
||||
clubId,
|
||||
reviewYear
|
||||
},
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 获取年审记录的活动数据(从stgl_club_annual_review_activity表中获取)
|
||||
* @param annualReviewId 年审记录ID
|
||||
*/
|
||||
export const getAnnualReviewActivities = (annualReviewId: string | number) => {
|
||||
return request({
|
||||
url: '/stgl/club/annualReview/' + annualReviewId + '/activities',
|
||||
method: 'get',
|
||||
headers: {
|
||||
isEncrypt: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
@@ -0,0 +1,323 @@
|
||||
export interface StglClubAnnualReviewVO {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 社团ID
|
||||
*/
|
||||
clubId: string | number;
|
||||
|
||||
/**
|
||||
* 年审年度
|
||||
*/
|
||||
reviewYear: number;
|
||||
|
||||
/**
|
||||
* 年审开始日期
|
||||
*/
|
||||
reviewStartDate: string;
|
||||
|
||||
/**
|
||||
* 年审结束日期
|
||||
*/
|
||||
reviewEndDate: string;
|
||||
|
||||
/**
|
||||
* 年审时间
|
||||
*/
|
||||
reviewTime: string;
|
||||
|
||||
/**
|
||||
* 社团名称
|
||||
*/
|
||||
clubName: string;
|
||||
|
||||
/**
|
||||
* 成立日期
|
||||
*/
|
||||
establishDate: string;
|
||||
|
||||
/**
|
||||
* 社长姓名
|
||||
*/
|
||||
presidentName: string;
|
||||
|
||||
/**
|
||||
* 社团类型
|
||||
*/
|
||||
clubType: string;
|
||||
|
||||
/**
|
||||
* 指导老师姓名
|
||||
*/
|
||||
advisorName: string;
|
||||
|
||||
/**
|
||||
* 指导老师部门
|
||||
*/
|
||||
advisorDept: string;
|
||||
|
||||
/**
|
||||
* 是否有章程
|
||||
*/
|
||||
hasCharter: string;
|
||||
|
||||
/**
|
||||
* 章程文件URL
|
||||
*/
|
||||
charterUrl: string;
|
||||
|
||||
/**
|
||||
* 是否有资金
|
||||
*/
|
||||
hasFunds: string;
|
||||
|
||||
/**
|
||||
* 资金数额
|
||||
*/
|
||||
fundAmount: number;
|
||||
|
||||
/**
|
||||
* 成员数量
|
||||
*/
|
||||
memberCount: number;
|
||||
|
||||
/**
|
||||
* 状态(0-草稿 1-已提交 2-审核中 3-审核通过 4-审核不通过)
|
||||
*/
|
||||
status: string;
|
||||
|
||||
/**
|
||||
* 指导老师意见
|
||||
*/
|
||||
advisorOpinion: string;
|
||||
|
||||
/**
|
||||
* 学院意见
|
||||
*/
|
||||
collegeOpinion: string;
|
||||
|
||||
/**
|
||||
* 团委意见
|
||||
*/
|
||||
youthLeagueOpinion: string;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
createBy: string | number;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
createTime: string;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
updateBy: string | number;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
updateTime: string;
|
||||
}
|
||||
|
||||
export interface StglClubAnnualReviewForm {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 社团ID
|
||||
*/
|
||||
clubId: string | number;
|
||||
|
||||
/**
|
||||
* 年审年度
|
||||
*/
|
||||
reviewYear: number;
|
||||
|
||||
/**
|
||||
* 年审开始日期
|
||||
*/
|
||||
reviewStartDate: string;
|
||||
|
||||
/**
|
||||
* 年审结束日期
|
||||
*/
|
||||
reviewEndDate: string;
|
||||
|
||||
/**
|
||||
* 年审时间
|
||||
*/
|
||||
reviewTime: string;
|
||||
|
||||
/**
|
||||
* 社团名称
|
||||
*/
|
||||
clubName: string;
|
||||
|
||||
/**
|
||||
* 成立日期
|
||||
*/
|
||||
establishDate?: string;
|
||||
|
||||
/**
|
||||
* 社团类型
|
||||
*/
|
||||
clubType?: string;
|
||||
|
||||
/**
|
||||
* 指导老师姓名
|
||||
*/
|
||||
advisorName?: string;
|
||||
|
||||
/**
|
||||
* 指导老师部门
|
||||
*/
|
||||
advisorDept?: string;
|
||||
|
||||
/**
|
||||
* 是否有章程
|
||||
*/
|
||||
hasCharter?: string;
|
||||
|
||||
/**
|
||||
* 章程文件URL
|
||||
*/
|
||||
charterUrl?: string;
|
||||
|
||||
/**
|
||||
* 是否有资金
|
||||
*/
|
||||
hasFunds?: string;
|
||||
|
||||
/**
|
||||
* 资金数额
|
||||
*/
|
||||
fundAmount?: number;
|
||||
|
||||
/**
|
||||
* 成员数量
|
||||
*/
|
||||
memberCount?: number;
|
||||
|
||||
/**
|
||||
* 状态(0-草稿 1-已提交 2-审核中 3-审核通过 4-审核不通过)
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
/**
|
||||
* 指导老师意见
|
||||
*/
|
||||
advisorOpinion?: string;
|
||||
|
||||
/**
|
||||
* 学院意见
|
||||
*/
|
||||
collegeOpinion?: string;
|
||||
|
||||
/**
|
||||
* 团委意见
|
||||
*/
|
||||
youthLeagueOpinion?: string;
|
||||
|
||||
/**
|
||||
* 成员信息JSON
|
||||
*/
|
||||
membersJson?: string;
|
||||
|
||||
/**
|
||||
* 活动信息JSON
|
||||
*/
|
||||
activitiesJson?: string;
|
||||
}
|
||||
|
||||
export interface StglClubAnnualReviewQuery extends PageQuery {
|
||||
/**
|
||||
* 社团ID
|
||||
*/
|
||||
clubId?: string | number;
|
||||
|
||||
/**
|
||||
* 年审年度
|
||||
*/
|
||||
reviewYear?: number;
|
||||
|
||||
/**
|
||||
* 年审开始日期范围
|
||||
*/
|
||||
beginReviewStartDate?: string;
|
||||
endReviewStartDate?: string;
|
||||
|
||||
/**
|
||||
* 年审结束日期范围
|
||||
*/
|
||||
beginReviewEndDate?: string;
|
||||
endReviewEndDate?: string;
|
||||
|
||||
/**
|
||||
* 社团名称
|
||||
*/
|
||||
clubName?: string;
|
||||
|
||||
/**
|
||||
* 社团类型
|
||||
*/
|
||||
clubType?: string;
|
||||
|
||||
/**
|
||||
* 状态(0-草稿 1-已提交 2-审核中 3-审核通过 4-审核不通过)
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
/**
|
||||
* 其他查询参数
|
||||
*/
|
||||
params?: { [key: string]: any };
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询接口
|
||||
*/
|
||||
export interface PageQuery {
|
||||
/**
|
||||
* 分页大小
|
||||
*/
|
||||
pageSize?: number;
|
||||
/**
|
||||
* 当前页数
|
||||
*/
|
||||
pageNum?: number;
|
||||
/**
|
||||
* 排序列
|
||||
*/
|
||||
orderByColumn?: string;
|
||||
/**
|
||||
* 排序的方向desc或者asc
|
||||
*/
|
||||
isAsc?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 年审状态选项
|
||||
*/
|
||||
export const ANNUAL_REVIEW_STATUS_OPTIONS = [
|
||||
{ label: '草稿', value: '0' },
|
||||
{ label: '已提交', value: '1' },
|
||||
{ label: '审核中', value: '2' },
|
||||
{ label: '审核通过', value: '3' },
|
||||
{ label: '审核不通过', value: '4' }
|
||||
];
|
||||
|
||||
/**
|
||||
* 是否选项
|
||||
*/
|
||||
export const YES_NO_OPTIONS = [
|
||||
{ label: '是', value: 'Y' },
|
||||
{ label: '否', value: 'N' }
|
||||
];
|
||||
@@ -0,0 +1,109 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { StglAnnualReviewAuditVO, StglAnnualReviewAuditForm, StglAnnualReviewAuditQuery } from './type';
|
||||
|
||||
/**
|
||||
* 查询社团年审审批列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
export const listStglAnnualReviewAudit = (query?: StglAnnualReviewAuditQuery): AxiosPromise<StglAnnualReviewAuditVO[]> => {
|
||||
return request({
|
||||
url: '/stgl/annualReviewAudit/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询社团年审审批详细
|
||||
* @param id
|
||||
*/
|
||||
export const getStglAnnualReviewAudit = (id: string | number): AxiosPromise<StglAnnualReviewAuditVO> => {
|
||||
return request({
|
||||
url: '/stgl/annualReviewAudit/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 根据年审记录ID查询审批记录
|
||||
* @param annualReviewId
|
||||
*/
|
||||
export const getAnnualReviewAuditsByReviewId = (annualReviewId: string | number): AxiosPromise<StglAnnualReviewAuditVO[]> => {
|
||||
return request({
|
||||
url: '/stgl/annualReviewAudit/byAnnualReview/' + annualReviewId,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 根据审批人ID查询待审批记录
|
||||
* @param approverId
|
||||
*/
|
||||
export const getPendingAuditsByApproverId = (approverId: string | number): AxiosPromise<StglAnnualReviewAuditVO[]> => {
|
||||
return request({
|
||||
url: '/stgl/annualReviewAudit/pending/' + approverId,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增社团年审审批
|
||||
* @param data
|
||||
*/
|
||||
export const addStglAnnualReviewAudit = (data: StglAnnualReviewAuditForm) => {
|
||||
return request({
|
||||
url: '/stgl/annualReviewAudit',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改社团年审审批
|
||||
* @param data
|
||||
*/
|
||||
export const updateStglAnnualReviewAudit = (data: StglAnnualReviewAuditForm) => {
|
||||
return request({
|
||||
url: '/stgl/annualReviewAudit',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 删除社团年审审批
|
||||
* @param id
|
||||
*/
|
||||
export const delStglAnnualReviewAudit = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: '/stgl/annualReviewAudit/' + id,
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 审批年审记录
|
||||
* @param auditId 审批记录ID
|
||||
* @param approveResult 审批结果
|
||||
* @param approveOpinion 审批意见
|
||||
* @param nextAuditors 下一步审核人列表(可选)
|
||||
*/
|
||||
export const approveAnnualReview = (
|
||||
auditId: string | number,
|
||||
approveResult: string,
|
||||
approveOpinion: string,
|
||||
nextAuditors?: Array<{userId: string | number; userName: string; nickName: string}>
|
||||
) => {
|
||||
return request({
|
||||
url: '/stgl/annualReviewAudit/approve',
|
||||
method: 'post',
|
||||
data: {
|
||||
auditId,
|
||||
approveResult,
|
||||
approveOpinion,
|
||||
nextAuditors: nextAuditors || []
|
||||
}
|
||||
});
|
||||
};
|
||||
@@ -0,0 +1,182 @@
|
||||
export interface StglAnnualReviewAuditVO {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 年审记录ID
|
||||
*/
|
||||
annualReviewId: string | number;
|
||||
|
||||
/**
|
||||
* 节点代码(advisor_approve/college_approve/youth_league_approve)
|
||||
*/
|
||||
nodeCode: string;
|
||||
|
||||
/**
|
||||
* 节点名称(指导老师审批/学院审批/校团委审批)
|
||||
*/
|
||||
nodeName: string;
|
||||
|
||||
/**
|
||||
* 节点顺序(1.1,1.2,2,3)
|
||||
*/
|
||||
nodeOrder: number;
|
||||
|
||||
/**
|
||||
* 节点状态(pending/waiting/approved)
|
||||
*/
|
||||
nodeStatus: string;
|
||||
|
||||
/**
|
||||
* 审批人ID
|
||||
*/
|
||||
approverId: string | number;
|
||||
|
||||
/**
|
||||
* 审批人姓名
|
||||
*/
|
||||
approverName: string;
|
||||
|
||||
/**
|
||||
* 审批结果(通过/不通过)
|
||||
*/
|
||||
approveResult: string;
|
||||
|
||||
/**
|
||||
* 审批意见
|
||||
*/
|
||||
approveOpinion: string;
|
||||
|
||||
/**
|
||||
* 审批时间
|
||||
*/
|
||||
approveTime: string;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
createBy: string | number;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
createTime: string;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
updateBy: string | number;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
updateTime: string;
|
||||
}
|
||||
|
||||
export interface StglAnnualReviewAuditForm {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 年审记录ID
|
||||
*/
|
||||
annualReviewId?: string | number;
|
||||
|
||||
/**
|
||||
* 节点代码(advisor_approve/college_approve/youth_league_approve)
|
||||
*/
|
||||
nodeCode?: string;
|
||||
|
||||
/**
|
||||
* 节点名称(指导老师审批/学院审批/校团委审批)
|
||||
*/
|
||||
nodeName?: string;
|
||||
|
||||
/**
|
||||
* 节点顺序(1.1,1.2,2,3)
|
||||
*/
|
||||
nodeOrder?: number;
|
||||
|
||||
/**
|
||||
* 节点状态(pending/waiting/approved)
|
||||
*/
|
||||
nodeStatus?: string;
|
||||
|
||||
/**
|
||||
* 审批人ID
|
||||
*/
|
||||
approverId?: string | number;
|
||||
|
||||
/**
|
||||
* 审批人姓名
|
||||
*/
|
||||
approverName?: string;
|
||||
|
||||
/**
|
||||
* 审批结果(通过/不通过)
|
||||
*/
|
||||
approveResult?: string;
|
||||
|
||||
/**
|
||||
* 审批意见
|
||||
*/
|
||||
approveOpinion?: string;
|
||||
|
||||
/**
|
||||
* 审批时间
|
||||
*/
|
||||
approveTime?: string;
|
||||
}
|
||||
|
||||
export interface StglAnnualReviewAuditQuery extends PageQuery {
|
||||
/**
|
||||
* 年审记录ID
|
||||
*/
|
||||
annualReviewId?: string | number;
|
||||
|
||||
/**
|
||||
* 节点代码
|
||||
*/
|
||||
nodeCode?: string;
|
||||
|
||||
/**
|
||||
* 节点状态
|
||||
*/
|
||||
nodeStatus?: string;
|
||||
|
||||
/**
|
||||
* 审批人ID
|
||||
*/
|
||||
approverId?: string | number;
|
||||
|
||||
/**
|
||||
* 审批结果
|
||||
*/
|
||||
approveResult?: string;
|
||||
|
||||
/**
|
||||
* 审批时间范围
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
/**
|
||||
* 审批节点状态选项
|
||||
*/
|
||||
export const AUDIT_NODE_STATUS_OPTIONS = [
|
||||
{ label: '待审批', value: 'pending' },
|
||||
{ label: '等待中', value: 'waiting' },
|
||||
{ label: '已审批', value: 'approved' }
|
||||
];
|
||||
|
||||
/**
|
||||
* 审批结果选项
|
||||
*/
|
||||
export const APPROVE_RESULT_OPTIONS = [
|
||||
{ label: '通过', value: '通过' },
|
||||
{ label: '不通过', value: '不通过' }
|
||||
];
|
||||
@@ -0,0 +1,93 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 社团活动权限检查结果类型定义
|
||||
export interface ClubActivityPermissionResult {
|
||||
canCreateActivity: boolean
|
||||
status: 'NORMAL' | 'TEMPORARILY_LIMITED' | 'PERMANENTLY_LIMITED'
|
||||
message: string
|
||||
deadlineTime?: string
|
||||
remainingHours?: number
|
||||
remainingDays?: number
|
||||
annualReviewStartTime?: string
|
||||
}
|
||||
|
||||
// 权限详情类型定义
|
||||
export interface ClubPermissionDetails {
|
||||
permissionResult: ClubActivityPermissionResult
|
||||
isInAnnualReviewWindow: boolean
|
||||
daysUntilNextAnnualReview: number
|
||||
hasSubmittedCurrentYearAnnualReview: boolean
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查社团活动权限
|
||||
* @param clubId 社团ID (支持字符串和数字类型,避免大整数精度丢失)
|
||||
* @returns 权限检查结果
|
||||
*/
|
||||
export function checkClubActivityPermission(clubId: number | string) {
|
||||
return request<ClubActivityPermissionResult>({
|
||||
url: `/stgl/club/permission/checkActivityPermission/${clubId}`,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量检查多个社团的权限状态
|
||||
* @param clubIds 社团ID列表
|
||||
* @returns 权限检查结果映射
|
||||
*/
|
||||
export function batchCheckClubPermission(clubIds: number[]) {
|
||||
return request<Record<number, ClubActivityPermissionResult>>({
|
||||
url: '/stgl/club/permission/batchCheckPermission',
|
||||
method: 'post',
|
||||
data: clubIds
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查社团是否在年审窗口期内
|
||||
* @param clubId 社团ID
|
||||
* @returns 是否在年审窗口期
|
||||
*/
|
||||
export function isInAnnualReviewWindow(clubId: number) {
|
||||
return request<boolean>({
|
||||
url: `/stgl/club/permission/isInAnnualReviewWindow/${clubId}`,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取社团距离下次年审的天数
|
||||
* @param clubId 社团ID
|
||||
* @returns 距离年审的天数
|
||||
*/
|
||||
export function getDaysUntilNextAnnualReview(clubId: number) {
|
||||
return request<number>({
|
||||
url: `/stgl/club/permission/getDaysUntilNextAnnualReview/${clubId}`,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查社团是否已在当前年审期内提交年审
|
||||
* @param clubId 社团ID
|
||||
* @returns 是否已提交年审
|
||||
*/
|
||||
export function hasSubmittedCurrentYearAnnualReview(clubId: number) {
|
||||
return request<boolean>({
|
||||
url: `/stgl/club/permission/hasSubmittedCurrentYearAnnualReview/${clubId}`,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取社团权限详细信息(综合接口)
|
||||
* @param clubId 社团ID
|
||||
* @returns 权限详细信息
|
||||
*/
|
||||
export function getClubPermissionDetails(clubId: number) {
|
||||
return request<ClubPermissionDetails>({
|
||||
url: `/stgl/club/permission/getPermissionDetails/${clubId}`,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
@@ -97,6 +97,10 @@ export interface MyActivityVO {
|
||||
undertakerName?: string;
|
||||
/** 关联类型(1-社团 2-志愿者队伍) */
|
||||
relatedType?: number;
|
||||
/** 关联部门名称 */
|
||||
relatedDeptName?: string;
|
||||
/** 关联部门名称列表 */
|
||||
relatedDeptNames?: string;
|
||||
/** 关联组织名称(社团名称或志愿者团队名称) */
|
||||
organizationName?: string;
|
||||
/** 指导老师 */
|
||||
|
||||
@@ -74,6 +74,21 @@ export interface StglClassVO {
|
||||
* 参与活动数量
|
||||
*/
|
||||
activityCount: number;
|
||||
|
||||
/**
|
||||
* 今日活动名称(审核通过且时间为今天的活动)
|
||||
*/
|
||||
todayActivityName?: string;
|
||||
|
||||
/**
|
||||
* 今日活动开始时间
|
||||
*/
|
||||
todayActivityStartTime?: string;
|
||||
|
||||
/**
|
||||
* 今日活动结束时间
|
||||
*/
|
||||
todayActivityEndTime?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -83,12 +83,14 @@ export const getStudentOptions = (
|
||||
/**
|
||||
* 查询单人留宿有效数据
|
||||
* 获取所有有效的假期留宿数据,筛选出在同一时间段内该宿舍只有一个学生留宿的记录
|
||||
* @param query 查询参数,支持宿管员权限过滤
|
||||
* @returns 单人留宿有效数据列表
|
||||
*/
|
||||
export const getSinglePersonValidStay = (): AxiosPromise<HolidayStayVO[]> => {
|
||||
export const getSinglePersonValidStay = (query?: any): AxiosPromise<HolidayStayVO[]> => {
|
||||
return request({
|
||||
url: '/holidayStay/holidayStay/singlePersonValidStay',
|
||||
method: 'get'
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { DormApplicationVO, DormApplicationForm, DormApplicationQuery, StudentOptionVO, StudentOptionQuery } from './types';
|
||||
|
||||
/**
|
||||
* 查询学生宿舍申请单表(调宿+退宿)列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listDormApplication = (query?: DormApplicationQuery): AxiosPromise<DormApplicationVO[]> => {
|
||||
return request({
|
||||
url: '/dormApplication/dormApplication/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询学生宿舍申请单表(调宿+退宿)详细
|
||||
* @param id
|
||||
*/
|
||||
export const getDormApplication = (id: string | number): AxiosPromise<DormApplicationVO> => {
|
||||
return request({
|
||||
url: '/dormApplication/dormApplication/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增学生宿舍申请单表(调宿+退宿)
|
||||
* @param data
|
||||
*/
|
||||
export const addDormApplication = (data: DormApplicationForm) => {
|
||||
return request({
|
||||
url: '/dormApplication/dormApplication',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改学生宿舍申请单表(调宿+退宿)
|
||||
* @param data
|
||||
*/
|
||||
export const updateDormApplication = (data: DormApplicationForm) => {
|
||||
return request({
|
||||
url: '/dormApplication/dormApplication',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 删除学生宿舍申请单表(调宿+退宿)
|
||||
* @param id
|
||||
*/
|
||||
export const delDormApplication = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: '/dormApplication/dormApplication/' + id,
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 获取学生选择器选项列表(支持按学号、姓名检索)
|
||||
* @param query 查询参数
|
||||
* @returns 学生选项列表
|
||||
*/
|
||||
export const getStudentOptions = (
|
||||
query?: StudentOptionQuery
|
||||
): AxiosPromise<{
|
||||
total: number;
|
||||
rows: StudentOptionVO[];
|
||||
}> => {
|
||||
return request({
|
||||
url: '/holidayStay/holidayStay/studentOptions',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
@@ -0,0 +1,586 @@
|
||||
export interface PageQuery {
|
||||
pageNum?: number;
|
||||
pageSize?: number;
|
||||
}
|
||||
|
||||
export interface DormApplicationVO {
|
||||
/**
|
||||
* 主键ID(雪花ID)
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 申请名称
|
||||
*/
|
||||
applicationName: string;
|
||||
|
||||
/**
|
||||
* 申请类型(1:调宿申请 2:退宿申请)
|
||||
*/
|
||||
applicationType: string;
|
||||
|
||||
/**
|
||||
* 审批状态:cancel-已撤销 , draft-草稿, waiting-待审核, finish-已完成, invalid-已作废, back-已退回, termination-已终止
|
||||
*/
|
||||
applicationStatus: string;
|
||||
|
||||
/**
|
||||
* 申请学生ID
|
||||
*/
|
||||
studentId: string | number;
|
||||
|
||||
/**
|
||||
* 学号
|
||||
*/
|
||||
studentNo: string;
|
||||
|
||||
/**
|
||||
* 学生姓名
|
||||
*/
|
||||
studentName: string;
|
||||
|
||||
/**
|
||||
* 学生联系电话
|
||||
*/
|
||||
studentPhone: string;
|
||||
|
||||
/**
|
||||
* 学院ID
|
||||
*/
|
||||
collegeId: string | number;
|
||||
|
||||
/**
|
||||
* 学院名称
|
||||
*/
|
||||
collegeName: string;
|
||||
|
||||
/**
|
||||
* 专业ID
|
||||
*/
|
||||
majorId: string | number;
|
||||
|
||||
/**
|
||||
* 专业名称
|
||||
*/
|
||||
majorName: string;
|
||||
|
||||
/**
|
||||
* 班级ID
|
||||
*/
|
||||
classId: string | number;
|
||||
|
||||
/**
|
||||
* 班级名称
|
||||
*/
|
||||
className: string;
|
||||
|
||||
/**
|
||||
* 当前校区ID
|
||||
*/
|
||||
currentCampusId: string | number;
|
||||
|
||||
/**
|
||||
* 当前校区名称
|
||||
*/
|
||||
currentCampusName: string;
|
||||
|
||||
/**
|
||||
* 当前宿舍楼ID
|
||||
*/
|
||||
currentBuildingId: string | number;
|
||||
|
||||
/**
|
||||
* 当前宿舍楼名称
|
||||
*/
|
||||
currentBuildingName: string;
|
||||
|
||||
/**
|
||||
* 当前房间ID
|
||||
*/
|
||||
currentRoomId: string | number;
|
||||
|
||||
/**
|
||||
* 当前房间号
|
||||
*/
|
||||
currentRoomNo: string;
|
||||
|
||||
/**
|
||||
* 当前床位ID
|
||||
*/
|
||||
currentBedId: string | number;
|
||||
|
||||
/**
|
||||
* 当前床位号
|
||||
*/
|
||||
currentBedNo: string;
|
||||
|
||||
/**
|
||||
* 目标校区ID
|
||||
*/
|
||||
targetCampusId: string | number;
|
||||
|
||||
/**
|
||||
* 目标校区名称
|
||||
*/
|
||||
targetCampusName: string;
|
||||
|
||||
/**
|
||||
* 目标宿舍楼ID
|
||||
*/
|
||||
targetBuildingId: string | number;
|
||||
|
||||
/**
|
||||
* 目标宿舍楼名称
|
||||
*/
|
||||
targetBuildingName: string;
|
||||
|
||||
/**
|
||||
* 目标房间ID
|
||||
*/
|
||||
targetRoomId: string | number;
|
||||
|
||||
/**
|
||||
* 目标房间号
|
||||
*/
|
||||
targetRoomNo: string;
|
||||
|
||||
/**
|
||||
* 目标床位ID
|
||||
*/
|
||||
targetBedId: string | number;
|
||||
|
||||
/**
|
||||
* 目标床位号
|
||||
*/
|
||||
targetBedNo: string;
|
||||
|
||||
/**
|
||||
* 详细原因说明
|
||||
*/
|
||||
reasonDetail: string;
|
||||
|
||||
/**
|
||||
* 申请时间
|
||||
*/
|
||||
applyTime: string;
|
||||
|
||||
/**
|
||||
* 附件OSS文件ID,多个用逗号分隔
|
||||
*/
|
||||
attachmentOssIds: string;
|
||||
|
||||
/**
|
||||
* 备注信息
|
||||
*/
|
||||
remark: string;
|
||||
|
||||
/**
|
||||
* 扩展字段1
|
||||
*/
|
||||
extField1: string;
|
||||
|
||||
/**
|
||||
* 扩展字段2
|
||||
*/
|
||||
extField2: string;
|
||||
|
||||
/**
|
||||
* 扩展字段3
|
||||
*/
|
||||
extField3: string;
|
||||
|
||||
/**
|
||||
* 删除标志(0代表存在 1代表删除)
|
||||
*/
|
||||
deleted: string;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
createBy: string | number;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
createTime: string;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
updateBy: string | number;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
updateTime: string;
|
||||
}
|
||||
|
||||
export interface DormApplicationForm {
|
||||
/**
|
||||
* 主键ID(雪花ID)
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 申请名称
|
||||
*/
|
||||
applicationName?: string;
|
||||
|
||||
/**
|
||||
* 申请类型(1:调宿申请 2:退宿申请)
|
||||
*/
|
||||
applicationType?: string;
|
||||
|
||||
/**
|
||||
* 审批状态:cancel-已撤销 , draft-草稿, waiting-待审核, finish-已完成, invalid-已作废, back-已退回, termination-已终止
|
||||
*/
|
||||
applicationStatus?: string;
|
||||
|
||||
/**
|
||||
* 申请学生ID
|
||||
*/
|
||||
studentId?: string | number;
|
||||
|
||||
/**
|
||||
* 学号
|
||||
*/
|
||||
studentNo?: string;
|
||||
|
||||
/**
|
||||
* 学生姓名
|
||||
*/
|
||||
studentName?: string;
|
||||
|
||||
/**
|
||||
* 学生联系电话
|
||||
*/
|
||||
studentPhone?: string;
|
||||
|
||||
/**
|
||||
* 学院ID
|
||||
*/
|
||||
collegeId?: string | number;
|
||||
|
||||
/**
|
||||
* 学院名称
|
||||
*/
|
||||
collegeName?: string;
|
||||
|
||||
/**
|
||||
* 专业ID
|
||||
*/
|
||||
majorId?: string | number;
|
||||
|
||||
/**
|
||||
* 专业名称
|
||||
*/
|
||||
majorName?: string;
|
||||
|
||||
/**
|
||||
* 班级ID
|
||||
*/
|
||||
classId?: string | number;
|
||||
|
||||
/**
|
||||
* 班级名称
|
||||
*/
|
||||
className?: string;
|
||||
|
||||
/**
|
||||
* 当前校区ID
|
||||
*/
|
||||
currentCampusId?: string | number;
|
||||
|
||||
/**
|
||||
* 当前校区名称
|
||||
*/
|
||||
currentCampusName?: string;
|
||||
|
||||
/**
|
||||
* 当前宿舍楼ID
|
||||
*/
|
||||
currentBuildingId?: string | number;
|
||||
|
||||
/**
|
||||
* 当前宿舍楼名称
|
||||
*/
|
||||
currentBuildingName?: string;
|
||||
|
||||
/**
|
||||
* 当前房间ID
|
||||
*/
|
||||
currentRoomId?: string | number;
|
||||
|
||||
/**
|
||||
* 当前房间号
|
||||
*/
|
||||
currentRoomNo?: string;
|
||||
|
||||
/**
|
||||
* 当前床位ID
|
||||
*/
|
||||
currentBedId?: string | number;
|
||||
|
||||
/**
|
||||
* 当前床位号
|
||||
*/
|
||||
currentBedNo?: string;
|
||||
|
||||
/**
|
||||
* 目标校区ID
|
||||
*/
|
||||
targetCampusId?: string | number;
|
||||
|
||||
/**
|
||||
* 目标校区名称
|
||||
*/
|
||||
targetCampusName?: string;
|
||||
|
||||
/**
|
||||
* 目标宿舍楼ID
|
||||
*/
|
||||
targetBuildingId?: string | number;
|
||||
|
||||
/**
|
||||
* 目标宿舍楼名称
|
||||
*/
|
||||
targetBuildingName?: string;
|
||||
|
||||
/**
|
||||
* 目标房间ID
|
||||
*/
|
||||
targetRoomId?: string | number;
|
||||
|
||||
/**
|
||||
* 目标房间号
|
||||
*/
|
||||
targetRoomNo?: string;
|
||||
|
||||
/**
|
||||
* 目标床位ID
|
||||
*/
|
||||
targetBedId?: string | number;
|
||||
|
||||
/**
|
||||
* 目标床位号
|
||||
*/
|
||||
targetBedNo?: string;
|
||||
|
||||
/**
|
||||
* 详细原因说明
|
||||
*/
|
||||
reasonDetail?: string;
|
||||
|
||||
/**
|
||||
* 申请时间
|
||||
*/
|
||||
applyTime?: string;
|
||||
|
||||
/**
|
||||
* 附件OSS文件ID,多个用逗号分隔
|
||||
*/
|
||||
attachmentOssIds?: string;
|
||||
|
||||
/**
|
||||
* 紧急联系人姓名
|
||||
*/
|
||||
emergencyContact?: string;
|
||||
|
||||
/**
|
||||
* 紧急联系人电话
|
||||
*/
|
||||
emergencyPhone?: string;
|
||||
|
||||
/**
|
||||
* 备注信息
|
||||
*/
|
||||
remark?: string;
|
||||
|
||||
/**
|
||||
* 扩展字段1
|
||||
*/
|
||||
extField1?: string;
|
||||
|
||||
/**
|
||||
* 扩展字段2
|
||||
*/
|
||||
extField2?: string;
|
||||
|
||||
/**
|
||||
* 扩展字段3
|
||||
*/
|
||||
extField3?: string;
|
||||
}
|
||||
|
||||
export interface DormApplicationQuery extends PageQuery {
|
||||
/**
|
||||
* 申请名称
|
||||
*/
|
||||
applicationName?: string;
|
||||
|
||||
/**
|
||||
* 申请类型(1:调宿申请 2:退宿申请)
|
||||
*/
|
||||
applicationType?: string;
|
||||
|
||||
/**
|
||||
* 审批状态:cancel-已撤销 , draft-草稿, waiting-待审核, finish-已完成, invalid-已作废, back-已退回, termination-已终止
|
||||
*/
|
||||
applicationStatus?: string;
|
||||
|
||||
/**
|
||||
* 申请学生ID
|
||||
*/
|
||||
studentId?: string | number;
|
||||
|
||||
/**
|
||||
* 学号
|
||||
*/
|
||||
studentNo?: string;
|
||||
|
||||
/**
|
||||
* 学生姓名
|
||||
*/
|
||||
studentName?: string;
|
||||
|
||||
/**
|
||||
* 学生联系电话
|
||||
*/
|
||||
studentPhone?: string;
|
||||
|
||||
/**
|
||||
* 学院ID
|
||||
*/
|
||||
collegeId?: string | number;
|
||||
|
||||
/**
|
||||
* 学院名称
|
||||
*/
|
||||
collegeName?: string;
|
||||
|
||||
/**
|
||||
* 专业ID
|
||||
*/
|
||||
majorId?: string | number;
|
||||
|
||||
/**
|
||||
* 专业名称
|
||||
*/
|
||||
majorName?: string;
|
||||
|
||||
/**
|
||||
* 班级ID
|
||||
*/
|
||||
classId?: string | number;
|
||||
|
||||
/**
|
||||
* 班级名称
|
||||
*/
|
||||
className?: string;
|
||||
|
||||
/**
|
||||
* 申请时间
|
||||
*/
|
||||
applyTime?: string;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
/**
|
||||
* 学生选择器选项
|
||||
*/
|
||||
export interface StudentOptionVO {
|
||||
/**
|
||||
* 学生ID
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 学号
|
||||
*/
|
||||
studentNo: string;
|
||||
|
||||
/**
|
||||
* 学生姓名
|
||||
*/
|
||||
name: string;
|
||||
|
||||
/**
|
||||
* 性别:0-男,1-女
|
||||
*/
|
||||
gender: string;
|
||||
|
||||
/**
|
||||
* 学院ID
|
||||
*/
|
||||
collegeId?: string | number;
|
||||
|
||||
/**
|
||||
* 学院名称
|
||||
*/
|
||||
collegeName?: string;
|
||||
|
||||
/**
|
||||
* 专业ID
|
||||
*/
|
||||
majorId?: string | number;
|
||||
|
||||
/**
|
||||
* 专业名称
|
||||
*/
|
||||
majorName?: string;
|
||||
|
||||
/**
|
||||
* 班级ID
|
||||
*/
|
||||
classId?: string | number;
|
||||
|
||||
/**
|
||||
* 班级名称
|
||||
*/
|
||||
className?: string;
|
||||
|
||||
/**
|
||||
* 学生联系电话
|
||||
*/
|
||||
phone?: string;
|
||||
|
||||
/**
|
||||
* 宿舍信息
|
||||
*/
|
||||
dormInfo?: {
|
||||
campusId?: string | number;
|
||||
campusName?: string;
|
||||
areaId?: string | number;
|
||||
areaName?: string;
|
||||
buildingId?: string | number;
|
||||
buildingName?: string;
|
||||
roomId?: string | number;
|
||||
roomName?: string;
|
||||
bedId?: string | number;
|
||||
bedName?: string;
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* 学生选择器查询参数
|
||||
*/
|
||||
export interface StudentOptionQuery {
|
||||
/**
|
||||
* 搜索关键字(学号或姓名)
|
||||
*/
|
||||
keyword?: string;
|
||||
|
||||
/**
|
||||
* 页码
|
||||
*/
|
||||
pageNum?: number;
|
||||
|
||||
/**
|
||||
* 每页大小
|
||||
*/
|
||||
pageSize?: number;
|
||||
}
|
||||
@@ -4,18 +4,23 @@ import {
|
||||
XljkConsultationScheduleVO,
|
||||
XljkConsultationScheduleForm,
|
||||
XljkConsultationScheduleQuery,
|
||||
XljkConsultationScheduleSummaryVO,
|
||||
XljkConsultationAppointmentVO,
|
||||
XljkConsultationAppointmentForm,
|
||||
XljkConsultationAppointmentQuery,
|
||||
AvailableTimeSlot,
|
||||
TimeSlotDetail,
|
||||
CounselorOption
|
||||
CounselorOption,
|
||||
ScheduleWithStatus,
|
||||
XljkConsulterVO,
|
||||
XljkConsulterForm,
|
||||
XljkConsulterQuery
|
||||
} from './types';
|
||||
|
||||
// ===== 预约时段管理 API =====
|
||||
|
||||
// 查询预约时段列表
|
||||
export const listXljkSchedule = (query: XljkConsultationScheduleQuery): AxiosPromise<XljkConsultationScheduleVO[]> => {
|
||||
export const listXljkSchedule = (query: XljkConsultationScheduleQuery): AxiosPromise<XljkConsultationScheduleSummaryVO[]> => {
|
||||
return request({
|
||||
url: '/xljk/consultation/schedule/list',
|
||||
method: 'get',
|
||||
@@ -102,6 +107,15 @@ export const getXljkAvailableTimeSlots = (startDate: string, endDate: string): A
|
||||
});
|
||||
};
|
||||
|
||||
// 获取日历视图的排班数据(带预约状态)
|
||||
export const getXljkCalendarSchedules = (startDate: string, endDate: string): AxiosPromise<ScheduleWithStatus[]> => {
|
||||
return request({
|
||||
url: '/xljk/consultation/appointment/calendar-schedules',
|
||||
method: 'get',
|
||||
params: { startDate, endDate }
|
||||
});
|
||||
};
|
||||
|
||||
// 获取可用的详细时段列表(30分钟一个时段)
|
||||
export const getXljkAvailableDetailSlots = (date: string, timeSlot: string): AxiosPromise<TimeSlotDetail[]> => {
|
||||
return request({
|
||||
@@ -213,3 +227,140 @@ export const getXljkConsultationClassOptions = (collegeName?: string, majorName?
|
||||
params: { collegeName, majorName }
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询心理咨询师配置列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listXljkConsulter = (query?: XljkConsulterQuery): AxiosPromise<XljkConsulterVO[]> => {
|
||||
return request({
|
||||
url: '/xljk/consulter/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询心理咨询师配置详细
|
||||
* @param id
|
||||
*/
|
||||
export const getXljkConsulter = (id: string | number): AxiosPromise<XljkConsulterVO> => {
|
||||
return request({
|
||||
url: '/xljk/consulter/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增心理咨询师配置
|
||||
* @param data
|
||||
*/
|
||||
export const addXljkConsulter = (data: XljkConsulterForm) => {
|
||||
return request({
|
||||
url: '/xljk/consulter',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改心理咨询师配置
|
||||
* @param data
|
||||
*/
|
||||
export const updateXljkConsulter = (data: XljkConsulterForm) => {
|
||||
return request({
|
||||
url: '/xljk/consulter',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除心理咨询师配置
|
||||
* @param id
|
||||
*/
|
||||
export const delXljkConsulter = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: '/xljk/consulter/' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出心理咨询师配置
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
export const exportXljkConsulter = (query?: XljkConsulterQuery) => {
|
||||
return request({
|
||||
url: '/xljk/consulter/export',
|
||||
method: 'post',
|
||||
data: query,
|
||||
responseType: 'blob'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量添加咨询师
|
||||
* @param userIds 用户ID列表
|
||||
* @param remark 备注
|
||||
*/
|
||||
export const batchAddConsulters = (userIds: number[], remark?: string) => {
|
||||
return request({
|
||||
url: '/xljk/consulter/batchAdd',
|
||||
method: 'post',
|
||||
data: {
|
||||
userIds,
|
||||
remark
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询我配置的咨询师列表
|
||||
* @param query
|
||||
*/
|
||||
export const listMyConfigConsulters = (query?: XljkConsulterQuery): AxiosPromise<XljkConsulterVO[]> => {
|
||||
return request({
|
||||
url: '/xljk/consulter/myConfig',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量启用咨询师
|
||||
* @param ids
|
||||
*/
|
||||
export const enableConsulters = (ids: number[]) => {
|
||||
return request({
|
||||
url: '/xljk/consulter/enable',
|
||||
method: 'post',
|
||||
data: ids
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量停用咨询师
|
||||
* @param ids
|
||||
*/
|
||||
export const disableConsulters = (ids: number[]) => {
|
||||
return request({
|
||||
url: '/xljk/consulter/disable',
|
||||
method: 'post',
|
||||
data: ids
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据部门ID获取用户列表
|
||||
* @param deptId
|
||||
*/
|
||||
export const listUserByDeptId = (deptId: string | number) => {
|
||||
return request({
|
||||
url: '/xljk/consulter/users/' + deptId,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
@@ -1,3 +1,5 @@
|
||||
import { PageQuery } from '@/api/types'
|
||||
|
||||
export interface XljkConsultationScheduleVO {
|
||||
/**
|
||||
* 主键ID
|
||||
@@ -14,6 +16,11 @@ export interface XljkConsultationScheduleVO {
|
||||
*/
|
||||
counselorName?: string;
|
||||
|
||||
/**
|
||||
* 办公室
|
||||
*/
|
||||
office?: string;
|
||||
|
||||
/**
|
||||
* 排班日期
|
||||
*/
|
||||
@@ -71,6 +78,11 @@ export interface XljkConsultationScheduleForm extends BaseEntity {
|
||||
*/
|
||||
counselorId?: number;
|
||||
|
||||
/**
|
||||
* 办公室
|
||||
*/
|
||||
office?: string;
|
||||
|
||||
/**
|
||||
* 排班日期
|
||||
*/
|
||||
@@ -103,6 +115,11 @@ export interface XljkConsultationScheduleQuery extends PageQuery {
|
||||
*/
|
||||
counselorId?: number;
|
||||
|
||||
/**
|
||||
* 办公室
|
||||
*/
|
||||
office?: string;
|
||||
|
||||
/**
|
||||
* 排班日期开始
|
||||
*/
|
||||
@@ -130,6 +147,10 @@ export interface XljkConsultationScheduleQuery extends PageQuery {
|
||||
}
|
||||
|
||||
export interface XljkConsultationAppointmentVO extends BaseEntity {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id?: string | number;
|
||||
/**
|
||||
* 学生ID
|
||||
*/
|
||||
@@ -163,13 +184,13 @@ export interface XljkConsultationAppointmentVO extends BaseEntity {
|
||||
*/
|
||||
reason?: string;
|
||||
/**
|
||||
* 状态(0待咨询 1已完成 2已取消 3未到访)
|
||||
* 咨询主题
|
||||
*/
|
||||
status?: number;
|
||||
consultTheme?: string;
|
||||
/**
|
||||
* 实际到访时间
|
||||
* 状态(0待咨询 1已完成 2已取消 3未到访 4待审核 5已驳回)
|
||||
*/
|
||||
actualVisitTime?: any;
|
||||
status?: number | string;
|
||||
/**
|
||||
* 沟通时长(分钟)
|
||||
*/
|
||||
@@ -186,6 +207,26 @@ export interface XljkConsultationAppointmentVO extends BaseEntity {
|
||||
* 学生姓名
|
||||
*/
|
||||
studentName?: string;
|
||||
/**
|
||||
* 心理病史(0-是,1-否)
|
||||
*/
|
||||
psychologicalHistory?: number;
|
||||
/**
|
||||
* 心理病史详情
|
||||
*/
|
||||
psychologicalHistoryDetail?: string;
|
||||
/**
|
||||
* 基本情况
|
||||
*/
|
||||
basicSituation?: string;
|
||||
/**
|
||||
* 重大生活事件
|
||||
*/
|
||||
majorLifeEvents?: string;
|
||||
/**
|
||||
* 是否需要转介(0-是,1-否)
|
||||
*/
|
||||
needReferral?: number;
|
||||
/**
|
||||
* 班级
|
||||
*/
|
||||
@@ -194,6 +235,10 @@ export interface XljkConsultationAppointmentVO extends BaseEntity {
|
||||
* 咨询师姓名
|
||||
*/
|
||||
counselorName?: string;
|
||||
/**
|
||||
* 办公室
|
||||
*/
|
||||
office?: string;
|
||||
/**
|
||||
* 院系
|
||||
*/
|
||||
@@ -202,6 +247,10 @@ export interface XljkConsultationAppointmentVO extends BaseEntity {
|
||||
* 专业
|
||||
*/
|
||||
majorName?: string;
|
||||
/**
|
||||
* 本学期到访次数
|
||||
*/
|
||||
semesterVisitCount?: number;
|
||||
}
|
||||
|
||||
export interface XljkConsultationAppointmentForm {
|
||||
@@ -242,13 +291,13 @@ export interface XljkConsultationAppointmentForm {
|
||||
*/
|
||||
reason?: string;
|
||||
/**
|
||||
* 状态(0待咨询 1已完成 2已取消 3未到访)
|
||||
* 咨询主题
|
||||
*/
|
||||
status?: number;
|
||||
consultTheme?: string;
|
||||
/**
|
||||
* 实际到访时间
|
||||
* 状态(0待咨询 1已完成 2已取消 3未到访 4待审核 5已驳回)
|
||||
*/
|
||||
actualVisitTime?: any;
|
||||
status?: number | string;
|
||||
/**
|
||||
* 沟通时长(分钟)
|
||||
*/
|
||||
@@ -261,6 +310,30 @@ export interface XljkConsultationAppointmentForm {
|
||||
* 咨询师建议
|
||||
*/
|
||||
counselorSuggestion?: string;
|
||||
/**
|
||||
* 学生姓名
|
||||
*/
|
||||
studentName?: string;
|
||||
/**
|
||||
* 心理病史(0-是,1-否)
|
||||
*/
|
||||
psychologicalHistory?: number;
|
||||
/**
|
||||
* 心理病史详情
|
||||
*/
|
||||
psychologicalHistoryDetail?: string;
|
||||
/**
|
||||
* 基本情况
|
||||
*/
|
||||
basicSituation?: string;
|
||||
/**
|
||||
* 重大生活事件
|
||||
*/
|
||||
majorLifeEvents?: string;
|
||||
/**
|
||||
* 是否需要转介(0-是,1-否)
|
||||
*/
|
||||
needReferral?: number;
|
||||
}
|
||||
|
||||
export interface XljkConsultationAppointmentQuery extends PageQuery {
|
||||
@@ -289,6 +362,11 @@ export interface XljkConsultationAppointmentQuery extends PageQuery {
|
||||
*/
|
||||
majorName?: string;
|
||||
|
||||
/**
|
||||
* 班级
|
||||
*/
|
||||
className?: string;
|
||||
|
||||
/**
|
||||
* 咨询师ID
|
||||
*/
|
||||
@@ -312,7 +390,11 @@ export interface XljkConsultationAppointmentQuery extends PageQuery {
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
params?: {
|
||||
beginAppointmentDate?: string;
|
||||
endAppointmentDate?: string;
|
||||
[key: string]: any;
|
||||
};
|
||||
}
|
||||
|
||||
export interface AvailableTimeSlot {
|
||||
@@ -331,6 +413,11 @@ export interface AvailableTimeSlot {
|
||||
*/
|
||||
counselorName?: string;
|
||||
|
||||
/**
|
||||
* 办公室
|
||||
*/
|
||||
office?: string;
|
||||
|
||||
/**
|
||||
* 日期
|
||||
*/
|
||||
@@ -419,6 +506,11 @@ export interface CounselorOption {
|
||||
* 咨询师姓名
|
||||
*/
|
||||
name: string;
|
||||
|
||||
/**
|
||||
* 办公室
|
||||
*/
|
||||
office: string;
|
||||
}
|
||||
|
||||
// 预约时段汇总视图对象
|
||||
@@ -433,6 +525,7 @@ export interface XljkConsultationScheduleSummaryVO {
|
||||
deleted: number;
|
||||
counselorId: number;
|
||||
counselorName: string;
|
||||
office: string;
|
||||
dateRange: string;
|
||||
morningEnabled: boolean;
|
||||
morningTime: string;
|
||||
@@ -602,3 +695,291 @@ export interface NoShowVO {
|
||||
*/
|
||||
updateTime?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 带预约状态的排班数据
|
||||
*/
|
||||
export interface ScheduleWithStatus {
|
||||
/**
|
||||
* 排班ID
|
||||
*/
|
||||
scheduleId: number;
|
||||
|
||||
/**
|
||||
* 咨询师ID
|
||||
*/
|
||||
counselorId: number;
|
||||
|
||||
/**
|
||||
* 咨询师姓名
|
||||
*/
|
||||
counselorName?: string;
|
||||
|
||||
/**
|
||||
* 办公室
|
||||
*/
|
||||
office?: string;
|
||||
|
||||
/**
|
||||
* 排班日期
|
||||
*/
|
||||
date: string;
|
||||
|
||||
/**
|
||||
* 时段类型(0上午 1中午 2下午)
|
||||
*/
|
||||
timeSlot: string;
|
||||
|
||||
/**
|
||||
* 开始时间(HH:mm)
|
||||
*/
|
||||
startTime: string;
|
||||
|
||||
/**
|
||||
* 结束时间(HH:mm)
|
||||
*/
|
||||
endTime: string;
|
||||
|
||||
/**
|
||||
* 时段显示文本(如:上午 08:30-12:00)
|
||||
*/
|
||||
timeDisplay: string;
|
||||
|
||||
/**
|
||||
* 是否已预约满
|
||||
*/
|
||||
isFullyBooked: boolean;
|
||||
|
||||
/**
|
||||
* 是否已过期
|
||||
*/
|
||||
isExpired: boolean;
|
||||
|
||||
/**
|
||||
* 可预约数量
|
||||
*/
|
||||
availableSlots: number;
|
||||
|
||||
/**
|
||||
* 总预约数量
|
||||
*/
|
||||
totalSlots: number;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
createBy?: number;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
createTime?: string;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
updateBy?: number;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
updateTime?: string;
|
||||
}
|
||||
|
||||
export interface XljkConsulterVO {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
userId: number;
|
||||
|
||||
/**
|
||||
* 用户账号
|
||||
*/
|
||||
userName: string;
|
||||
|
||||
/**
|
||||
* 用户昵称
|
||||
*/
|
||||
nickName: string;
|
||||
|
||||
/**
|
||||
* 部门ID
|
||||
*/
|
||||
deptId: number;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
deptName: string;
|
||||
|
||||
/**
|
||||
* 办公室
|
||||
*/
|
||||
office?: string;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
phoneNumber: string;
|
||||
|
||||
/**
|
||||
* 邮箱地址
|
||||
*/
|
||||
email: string;
|
||||
|
||||
/**
|
||||
* 状态(1正常 0停用)
|
||||
*/
|
||||
status: string;
|
||||
|
||||
/**
|
||||
* 备注说明
|
||||
*/
|
||||
remark: string;
|
||||
|
||||
/**
|
||||
* 配置人ID
|
||||
*/
|
||||
configBy: number;
|
||||
|
||||
/**
|
||||
* 配置人姓名
|
||||
*/
|
||||
configByName: string;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
createBy: number;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
createTime: string;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
updateBy: number;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
updateTime: string;
|
||||
}
|
||||
|
||||
export interface XljkConsulterForm {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
userId?: number;
|
||||
|
||||
/**
|
||||
* 用户账号
|
||||
*/
|
||||
userName?: string;
|
||||
|
||||
/**
|
||||
* 用户昵称
|
||||
*/
|
||||
nickName?: string;
|
||||
|
||||
/**
|
||||
* 部门ID
|
||||
*/
|
||||
deptId?: number;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
deptName?: string;
|
||||
|
||||
/**
|
||||
* 办公室
|
||||
*/
|
||||
office?: string;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
phoneNumber?: string;
|
||||
|
||||
/**
|
||||
* 邮箱地址
|
||||
*/
|
||||
email?: string;
|
||||
|
||||
/**
|
||||
* 状态(1正常 0停用)
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
/**
|
||||
* 备注说明
|
||||
*/
|
||||
remark?: string;
|
||||
|
||||
/**
|
||||
* 配置人ID
|
||||
*/
|
||||
configBy?: number;
|
||||
|
||||
/**
|
||||
* 配置人姓名
|
||||
*/
|
||||
configByName?: string;
|
||||
}
|
||||
|
||||
export interface XljkConsulterQuery extends PageQuery {
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
userId?: number;
|
||||
|
||||
/**
|
||||
* 用户账号
|
||||
*/
|
||||
userName?: string;
|
||||
|
||||
/**
|
||||
* 用户昵称
|
||||
*/
|
||||
nickName?: string;
|
||||
|
||||
/**
|
||||
* 部门ID
|
||||
*/
|
||||
deptId?: number;
|
||||
|
||||
/**
|
||||
* 状态(1正常 0停用)
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
/**
|
||||
* 配置人ID
|
||||
*/
|
||||
configBy?: number;
|
||||
|
||||
/**
|
||||
* 办公室
|
||||
*/
|
||||
office?: string;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
'params[beginCreateTime]'?: string;
|
||||
'params[endCreateTime]'?: string;
|
||||
}
|
||||
@@ -80,6 +80,10 @@ export interface XskhAssessmentIndicatorVo extends BaseEntity {
|
||||
disciplineTypeIds?: string[];
|
||||
/** 关联的奖励类型ID列表 */
|
||||
rewardTypeIds?: string[];
|
||||
/** 关联的违纪处分类型ID(单个值,用于前端表单) */
|
||||
disciplineTypeId?: string | number;
|
||||
/** 关联的奖励类型ID(单个值,用于前端表单) */
|
||||
rewardTypeId?: string | number;
|
||||
/** 创建者 */
|
||||
createBy?: string | number;
|
||||
/** 创建时间 */
|
||||
@@ -110,10 +114,10 @@ export interface XskhAssessmentIndicatorForm extends BaseEntity {
|
||||
status?: string;
|
||||
/** 排序号 */
|
||||
sortOrder?: number;
|
||||
/** 关联的违纪处分类型ID列表 */
|
||||
disciplineTypeIds?: string[];
|
||||
/** 关联的奖励类型ID列表 */
|
||||
rewardTypeIds?: string[];
|
||||
/** 关联的违纪处分类型ID */
|
||||
disciplineTypeId?: string | number;
|
||||
/** 关联的奖励类型ID */
|
||||
rewardTypeId?: string | number;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in new issue
Block a user