This commit is contained in:
weizhong committed 2025-09-22 22:40:17 +08:00
commit 74ab953c17
164 files changed
+25187 -1775

No files matched your search

+60
View File
@@ -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
*/
+140
View File
@@ -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'
})
}
+184
View File
@@ -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;
}
+276
View File
@@ -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'
});
};
+222
View File
@@ -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'
}
});
};
+323
View File
@@ -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: '不通过' }
];
+93
View File
@@ -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'
})
}
+4
View File
@@ -97,6 +97,10 @@ export interface MyActivityVO {
undertakerName?: string;
/** 关联类型(1-社团 2-志愿者队伍) */
relatedType?: number;
/** 关联部门名称 */
relatedDeptName?: string;
/** 关联部门名称列表 */
relatedDeptNames?: string;
/** 关联组织名称(社团名称或志愿者团队名称) */
organizationName?: string;
/** 指导老师 */
+15
View File
@@ -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
});
};
+586
View File
@@ -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;
}
+153 -2
View File
@@ -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'
})
}
+390 -9
View File
@@ -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;
}
/**