import request from '@/utils/request' export interface StudentStatisticsBo { startTime: string endTime: string collegeId?: number majorId?: number classId?: number } export interface StatisticsChartData { name: string dormDeductionCount: number dormViolationCount: number dormViolationDeduction: number teachingViolationCount: number teachingViolationDeduction: number } export interface StatisticsDetailData { id: number name: string parentName: string dormDeductionCount: number dormViolationCount: number dormViolationDeduction: number teachingViolationCount: number teachingViolationDeduction: number totalDeduction: number } export interface StudentStatisticsVo { dimension: string chartData: StatisticsChartData[] detailData: StatisticsDetailData[] } export interface CascadeOptionVo { id: number label: string value: string sort: number } // 获取统计数据 export function getStatistics(data: StudentStatisticsBo) { return request({ url: '/xg/studentStatistics/statistics', method: 'post', data: data }) } // 导出统计数据 export function exportStatistics(data: StudentStatisticsBo) { return request({ url: '/xg/studentStatistics/export', method: 'post', data: data, responseType: 'blob' }) } // 获取二级学院列表 export function getColleges() { return request({ url: '/xg/studentStatistics/colleges', method: 'get' }) } // 根据学院ID获取专业列表 export function getMajorsByCollegeId(collegeId: number) { return request({ url: `/xg/studentStatistics/majors/${collegeId}`, method: 'get' }) } // 根据专业ID获取班级列表 export function getClassesByMajorId(majorId: number) { return request({ url: `/xg/studentStatistics/classes/${majorId}`, method: 'get' }) }