综合素质评价
This commit is contained in:
64
src/api/stuCQS/teacher-evaluation-status.js
Normal file
64
src/api/stuCQS/teacher-evaluation-status.js
Normal file
@@ -0,0 +1,64 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询辅导员综合评价完成状态列表
|
||||
export function getTeacherEvaluationStatus(query) {
|
||||
return request({
|
||||
url: '/comprehensive/teacherEvaluationStatus/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 导出辅导员综合评价完成状态
|
||||
export function exportTeacherEvaluationStatus(query) {
|
||||
return request({
|
||||
url: '/comprehensive/teacherEvaluationStatus/export',
|
||||
method: 'get',
|
||||
params: query,
|
||||
responseType: 'blob'
|
||||
})
|
||||
}
|
||||
|
||||
// 查询辅导员待办事项数量
|
||||
export function getTeacherTodoCount(query) {
|
||||
return request({
|
||||
url: '/comprehensive/teacherEvaluationStatus/todoCount',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询综合评价成绩导入状态
|
||||
export function getScoreImportStatus(query) {
|
||||
return request({
|
||||
url: '/comprehensive/teacherEvaluationStatus/scoreImportStatus',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 获取辅导员详细信息
|
||||
export function getTeacherDetail(teacherId) {
|
||||
return request({
|
||||
url: '/comprehensive/teacherEvaluationStatus/' + teacherId,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 批量更新辅导员评价状态
|
||||
export function batchUpdateStatus(data) {
|
||||
return request({
|
||||
url: '/comprehensive/teacherEvaluationStatus/batchUpdate',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 获取学院列表
|
||||
export function getDeptNameList(query) {
|
||||
return request({
|
||||
url: '/comprehensive/teacherEvaluationStatus/deptList',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
183
src/views/stuCQS/teacher-evaluation-status/index.vue
Normal file
183
src/views/stuCQS/teacher-evaluation-status/index.vue
Normal file
@@ -0,0 +1,183 @@
|
||||
<template>
|
||||
<div class="app-container" v-loading.fullscreen.lock="fullLoading">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="120px">
|
||||
<el-form-item label="学院" prop="deptId">
|
||||
<el-select v-model="queryParams.deptId" placeholder="请选择学院" clearable @keyup.enter.native="handleQuery">
|
||||
<el-option v-for="(dept, index) in deptList" :key="index" :label="dept.label" :value="dept.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="辅导员姓名" prop="teacherName">
|
||||
<el-input v-model="queryParams.teacherName" placeholder="请输入辅导员姓名" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="工号" prop="employeeId">
|
||||
<el-input v-model="queryParams.employeeId" placeholder="请输入工号" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学年" prop="stuYearId">
|
||||
<el-select v-model="queryParams.stuYearId" placeholder="请选择学年" clearable @keyup.enter.native="handleQuery">
|
||||
<el-option v-for="year in yearList" :key="year.id" :label="year.stuYearName" :value="year.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport">导出</el-button>
|
||||
</el-col>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="teacherStatusList">
|
||||
<el-table-column label="学院" align="center" prop="deptName" width="150" />
|
||||
<el-table-column label="辅导员姓名" align="center" prop="teacherName" width="120" />
|
||||
<el-table-column label="工号" align="center" prop="employeeId" width="120" />
|
||||
<el-table-column label="学年" align="center" prop="stuYearName" width="120" />
|
||||
<el-table-column label="是否完成综合测评" align="center" prop="isCompleted" width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-tag :type="scope.row.isCompleted ? 'success' : 'danger'">
|
||||
{{ scope.row.isCompleted ? '已完成' : '未完成' }}
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="待办事项数量" align="center" prop="todoCount" width="120" />
|
||||
<el-table-column label="成绩导入状态" align="center" prop="scoreImported" width="120">
|
||||
<template slot-scope="scope">
|
||||
<el-tag :type="scope.row.scoreImported ? 'success' : 'warning'">
|
||||
{{ scope.row.scoreImported ? '已导入' : '未导入' }}
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="备注" align="center" prop="remarks" />
|
||||
</el-table>
|
||||
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@pagination="getList" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getTeacherEvaluationStatus, exportTeacherEvaluationStatus, getDeptNameList } from "@/api/stuCQS/teacher-evaluation-status";
|
||||
import { listAllYear } from "@/api/stuCQS/basedata/year";
|
||||
import { fullLoading } from "@/api/helpFunc";
|
||||
|
||||
export default {
|
||||
name: "TeacherEvaluationStatus",
|
||||
data() {
|
||||
return {
|
||||
fullLoading: false,
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 辅导员评价状态表格数据
|
||||
teacherStatusList: [],
|
||||
// 学院列表
|
||||
deptList: [],
|
||||
// 学年列表
|
||||
yearList: [],
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 50,
|
||||
deptId: null,
|
||||
teacherName: null,
|
||||
employeeId: null,
|
||||
stuYearId: null
|
||||
}
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
this.getDeptList();
|
||||
this.getYearList();
|
||||
},
|
||||
methods: {
|
||||
/** 查询辅导员评价状态列表 */
|
||||
async getList() {
|
||||
this.loading = true;
|
||||
try {
|
||||
const response = await getTeacherEvaluationStatus(this.queryParams);
|
||||
this.teacherStatusList = response.rows;
|
||||
this.total = response.total;
|
||||
} catch (error) {
|
||||
this.$modal.msgError("查询失败");
|
||||
} finally {
|
||||
this.loading = false;
|
||||
}
|
||||
},
|
||||
/** 获取学院列表 */
|
||||
async getDeptList() {
|
||||
try {
|
||||
const response = await getDeptNameList({});
|
||||
console.log("学院数据响应:", response);
|
||||
this.deptList = response.data;
|
||||
} catch (error) {
|
||||
console.error("获取学院列表失败", error);
|
||||
}
|
||||
},
|
||||
/** 获取学年列表 */
|
||||
async getYearList() {
|
||||
try {
|
||||
const response = await listAllYear();
|
||||
if (response.code === 200) {
|
||||
this.yearList = response.data;
|
||||
}
|
||||
} catch (error) {
|
||||
console.error("获取学年列表失败", error);
|
||||
}
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
async handleExport() {
|
||||
try {
|
||||
const loading = fullLoading(this);
|
||||
await exportTeacherEvaluationStatus(this.queryParams);
|
||||
this.$modal.msgSuccess("导出成功");
|
||||
} catch (error) {
|
||||
this.$modal.msgError("导出失败");
|
||||
} finally {
|
||||
this.fullLoading = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.app-container {
|
||||
padding: 20px;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.el-table {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.el-form-item label {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.el-input input {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.el-select .el-input input {
|
||||
color: #333;
|
||||
}
|
||||
</style>
|
Reference in New Issue
Block a user