Commit b1203c9f by zhaopanyu

zpy 12.18

parent 31d79280
import request from "@/utils/request";
// 查询高考成绩列表
export function listAchievement(query) {
return request({
url: "/achievement/list",
method: "get",
params: query,
});
}
// 查询高考成绩列表(个人)
export function listAchievementgr(query) {
return request({
url: "/achievement/teacher/list",
method: "get",
params: query,
});
}
//审核
export function audit(data) {
return request({
url: "/achievement",
method: "put",
data: data,
});
}
// 查询高考成绩详细
export function getAchievement(id) {
return request({
url: "/achievement/" + id,
method: "get",
});
}
// 新增高考成绩
export function addAchievement(data) {
return request({
url: "/achievement",
method: "post",
data: data,
});
}
// 修改高考成绩
export function updateAchievement(data) {
return request({
url: "/achievement",
method: "put",
data: data,
});
}
// 删除高考成绩
export function delAchievement(id) {
return request({
url: "/achievement/" + id,
method: "delete",
});
}
import request from "@/utils/request";
// 综合查询接口
export function listAward(query) {
return request({
url: "/teacher/basiclnformation/comprehensive",
method: "get",
params: query,
});
}
import request from "@/utils/request";
// 查看辅导学生获奖列表
export function listAward(query) {
return request({
url: "/school/fudaos/studentlist",
method: "get",
params: query,
});
}
//查看辅导教师列表(个人)
export function listAwardgr(query) {
return request({
url: "/school/fudaos/studentlistGr",
method: "get",
params: query,
});
}
// 查询辅导教师获奖详细
export function getAward(id) {
return request({
url: "/school/fudaos/" + id,
method: "get",
});
}
// 新增辅导教师获奖
export function addAward(data) {
return request({
url: "/school/fudaos/addgl",
method: "post",
data: data,
});
}
// 新增辅导教师获奖(个人)
export function addAwardgr(data) {
return request({
url: "/school/fudaos/add",
method: "post",
data: data,
});
}
// 修改辅导教师获奖
export function updateAward(data) {
return request({
url: "/school/fudaos/edit",
method: "put",
data: data,
});
}
// 删除辅导教师获奖
export function delAward(id) {
return request({
url: "/school/fudaos/delete/" + id,
method: "delete",
});
}
//审核
export function audit(data) {
return request({
url: "/school/fudaos/submit",
method: "put",
data: data,
});
}
...@@ -8,6 +8,14 @@ export function listWorks(query) { ...@@ -8,6 +8,14 @@ export function listWorks(query) {
params: query, params: query,
}); });
} }
// 查询论文著作列表个人
export function listWorksgr(query) {
return request({
url: "/system/works/listGr",
method: "get",
params: query,
});
}
// 查询论文著作详细 // 查询论文著作详细
export function getWorks(id) { export function getWorks(id) {
......
...@@ -9,6 +9,14 @@ export function listAwards(query) { ...@@ -9,6 +9,14 @@ export function listAwards(query) {
}); });
} }
// 查询讲课获奖列表
export function listAwardsgr(query) {
return request({
url: "/system/awards/listGr",
method: "get",
params: query,
});
}
// 查询讲课获奖详细 // 查询讲课获奖详细
export function getAwards(id) { export function getAwards(id) {
return request({ return request({
......
import request from "@/utils/request";
// 查询课题研究列表
export function listResearch(query) {
return request({
url: "/system/research/list",
method: "get",
params: query,
});
}
// 查询课题研究列表个人
export function listResearchgr(query) {
return request({
url: "/system/research/listGr",
method: "get",
params: query,
});
}
// 查询课题研究详细
export function getResearch(id) {
return request({
url: "/system/research/" + id,
method: "get",
});
}
// 新增课题研究
export function addResearch(data) {
return request({
url: "/system/research",
method: "post",
data: data,
});
}
// 修改课题研究
export function updateResearch(data) {
return request({
url: "/system/research",
method: "put",
data: data,
});
}
// 删除课题研究
export function delResearch(id) {
return request({
url: "/system/research/" + id,
method: "delete",
});
}
//审核
export function audit(data) {
return request({
url: "/system/research/audit",
method: "post",
data: data,
});
}
...@@ -8,7 +8,14 @@ export function listAwards(query) { ...@@ -8,7 +8,14 @@ export function listAwards(query) {
params: query, params: query,
}); });
} }
// 查询教师获奖列表个人
export function listAwardsgr(query) {
return request({
url: "/school/teacherAwards/listGr",
method: "get",
params: query,
});
}
// 查询教师获奖详细 // 查询教师获奖详细
export function getAwards(id) { export function getAwards(id) {
return request({ return request({
......
import request from "@/utils/request";
// 查询辅导教师获奖列表
export function listAward(query) {
return request({
url: "/school/fudaot/teacher",
method: "get",
params: query,
});
}
//查看辅导教师列表(个人)
export function listAwardgr(query) {
return request({
url: "/school/fudaot/teacherGr",
method: "get",
params: query,
});
}
// 查询辅导教师获奖详细
export function getAward(id) {
return request({
url: "/school/fudaot/" + id,
method: "get",
});
}
// 新增辅导教师获奖
export function addAward(data) {
return request({
url: "/school/fudaot/addgl",
method: "post",
data: data,
});
}
// 新增辅导教师获奖(个人)
export function addAwardgr(data) {
return request({
url: "/school/fudaot/add",
method: "post",
data: data,
});
}
// 修改辅导教师获奖
export function updateAward(data) {
return request({
url: "/school/fudaot/edit",
method: "put",
data: data,
});
}
// 删除辅导教师获奖
export function delAward(id) {
return request({
url: "/school/fudaot/delete/" + id,
method: "delete",
});
}
//审核
export function audit(data) {
return request({
url: "/school/fudaot/submit",
method: "put",
data: data,
});
}
import request from "@/utils/request";
// 查询团队获奖列表
export function listAward(query) {
return request({
url: "/school/award/list",
method: "get",
params: query,
});
}
// 查询团队获奖详细
export function getAward(id) {
return request({
url: "/school/award/" + id,
method: "get",
});
}
// 新增团队获奖
export function addAward(data) {
return request({
url: "/school/award",
method: "post",
data: data,
});
}
// 修改团队获奖
export function updateAward(data) {
return request({
url: "/school/award",
method: "put",
data: data,
});
}
// 审核
export function audit(data) {
return request({
url: "/school/award",
method: "put",
data: data,
});
}
// 删除团队获奖
export function delAward(id) {
return request({
url: "/school/award/" + id,
method: "delete",
});
}
<template>
<div>
<h2></h2>
</div>
</template>
<script>
export default {
}
</script>
<style lang="scss" scoped></style>
\ No newline at end of file
...@@ -2,7 +2,10 @@ ...@@ -2,7 +2,10 @@
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="年度" prop="year"> <el-form-item label="年度" prop="year">
<el-input v-model="queryParams.year" placeholder="请输入姓名" clearable @keyup.enter.native="handleQuery" /> <el-select v-model="queryParams.year" placeholder="请选择" style="width: 100%;">
<el-option v-for="dict in dict.type.rankda" :key="dict.value" :label="dict.label" :value="dict.value">
</el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item label="考核结果" prop="checkResult"> <el-form-item label="考核结果" prop="checkResult">
<el-select v-model="queryParams.checkResult" placeholder="请选择" style="width: 100%;"> <el-select v-model="queryParams.checkResult" placeholder="请选择" style="width: 100%;">
...@@ -94,7 +97,11 @@ ...@@ -94,7 +97,11 @@
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="年度" prop="year"> <el-form-item label="年度" prop="year">
<el-input v-model="form.year" placeholder="请输入年度" /> <el-select v-model="form.year" placeholder="请选择" style="width: 100%;">
<el-option v-for="dict in dict.type.rankda" :key="dict.value" :label="dict.label"
:value="dict.value">
</el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item label="姓名" prop="name"> <el-form-item label="姓名" prop="name">
<el-input v-model="form.name" placeholder="请输入姓名" /> <el-input v-model="form.name" placeholder="请输入姓名" />
...@@ -129,7 +136,7 @@ import { uploadImage as commonUpload } from '@/api/common' ...@@ -129,7 +136,7 @@ import { uploadImage as commonUpload } from '@/api/common'
import { checkIdcard } from '@/utils/utilLibrary/validate' import { checkIdcard } from '@/utils/utilLibrary/validate'
export default { export default {
name: "Assessment", name: "Assessment",
dicts: ["check_result"], dicts: ["check_result", 'rankda'],
data() { data() {
return { return {
uploadOpen: false, uploadOpen: false,
......
<template>
<el-dialog :visible.sync="openDialog" :title="title" :width="width" @close="dialogClose">
<!-- 模糊查询-->
<el-form :model="form" ref="form" size="small" inline>
<el-form-item prop="userName" label="姓名">
<el-input v-model.trim="form.userName" placeholder="请输入姓名" clearable
@keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item prop="phone" label="联系电话">
<el-input v-model.trim="form.phone" placeholder="请输入联系电话" clearable @keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item>
<el-button @click="search" type="primary" icon="el-icon-search" size="mini">搜索</el-button>
<el-button @click="reset" icon="el-icon-refresh" size="mini">重置</el-button>
</el-form-item>
</el-form>
<!-- 列表数据-->
<el-table ref="tableList" v-loading="loading" :data="userList" @selection-change="selectionChange"
@row-click="rowClick">
<el-table-column type="selection" align="center"></el-table-column>
<el-table-column key="userName" prop="userName" label="姓名" align="center"></el-table-column>
<el-table-column key="phone" prop="phone" label="联系电话" align="center"></el-table-column>
</el-table>
<!-- 分页-->
<pagination v-show="total > 0" :total="total" :limit.sync="form.pageSize" :page.sync="form.pageNum"
@pagination="search"></pagination>
<!-- 底部-->
<div slot="footer">
<el-button :disabled="!selectUser" @click="submit" type="primary" size="small">确 定</el-button>
<el-button @click="quit" size="small">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import { getUserList } from "@/api/smartSchool/electronicArchives/professionalDevelopment/comprehensiveHonors";
export default {
name: "SelectUser",
dicts: ['sys_user_sex'],
props: {
open: {
type: Boolean,
require: true
},
title: {
type: String,
default: ''
},
width: {
type: [Number, String],
default: '50%'
},
execute: {
type: [String]
},
// 选择级部、处室主任
id: {
type: [Number, String]
}
},
data() {
return {
baseURL: process.env.VUE_APP_BASE_API,
form: {
userName: '',
phone: '',
pageNum: 1,
pageSize: 10
},
total: 0,
loading: false,
userList: [],
selectUser: null
}
},
computed: {
openDialog: {
get() {
return this.open;
},
set(value) {
this.$emit('update:open', value);
}
}
},
watch: {
open(value) {
if (value) {
this.$nextTick(() => {
this.reset();
})
}
}
},
methods: {
/** 搜索(交给子组件维护,当然也可以把接口交给父组件处理) */
async search() {
if (isNaN(Number(this.id))) {
console.error('Invalid ID');
return;
}
try {
this.loading = true;
const response = await this[this.execute]({ applyOrgid: this.id, ...this.form });
this.userList = response.rows || [];
this.total = response.total;
this.loading = false;
} catch (exception) {
this.loading = false;
throw new Error(exception);
}
},
/** 重置表单 */
reset() {
this.form = {
teacherName: '',
teacherTel: '',
pageNum: 1,
pageSize: 10
};
this.resetForm('form');
this.search();
},
/** 选项选中发生变化 */
selectionChange(selections) {
this.selectUser = selections[0];
},
/** 点击选中、取消 */
rowClick(row, column) {
console.log('row', row);
this.$refs['tableList'].clearSelection();
this.$refs['tableList'].toggleRowSelection(row, true);
},
/** 提交选中 */
submit() {
this.$emit('select', {
id: this.selectUser.userId,
name: this.selectUser.userName,
tel: this.selectUser.phone
});
this.quit();
},
/** 取消 */
quit() {
this.openDialog = false;
},
/** 分管领导、主要领导 */
leaderList(form) {
return getUserList(form);
},
dialogClose() {
this.userList = []
}
}
}
</script>
<style scoped>
.footer {
display: flex;
justify-content: center;
margin-top: 30px;
}
.radius-image {
border-radius: 40px;
}
</style>
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="获奖类别" prop="awardType"> <el-form-item label="获奖类别" prop="awardType">
<el-input v-model="queryParams.awardType" placeholder="请输入获奖类别" clearable @keyup.enter.native="handleQuery" <el-input v-model="queryParams.awardType" placeholder="请输入" clearable @keyup.enter.native="handleQuery"
style="width: 220px;" /> style="width: 220px;" />
</el-form-item> </el-form-item>
<el-form-item label="获奖级别" prop="awardRank"> <el-form-item label="获奖级别" prop="awardRank">
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="获奖人" prop="userName"> <el-form-item label="获奖人" prop="userName">
<el-input v-model="queryParams.userName" placeholder="请输入获奖人" clearable @keyup.enter.native="handleQuery" /> <el-input v-model="queryParams.userName" placeholder="请输入" clearable @keyup.enter.native="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item label="获奖开始时间" prop="startTime"> <el-form-item label="获奖开始时间" prop="startTime">
<el-date-picker clearable v-model="queryParams.startTime" type="date" value-format="yyyy-MM-dd" <el-date-picker clearable v-model="queryParams.startTime" type="date" value-format="yyyy-MM-dd"
...@@ -65,33 +65,35 @@ ...@@ -65,33 +65,35 @@
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table :data="honorsList" @selection-change="handleSelectionChange"> <el-table :data="honorsList" @selection-change="handleSelectionChange"
:default-sort="{ prop: 'awardTime', order: 'descending' }">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="成长类型" align="center" prop="type"> <el-table-column type="index" label="序号" width="55" align="center" sortable />
<el-table-column label="成长类型" align="center" prop="type" sortable>
<template> <template>
<span>综合荣誉</span> <span>综合荣誉</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="学科" align="center" prop="sub"> <el-table-column label="学科" align="center" prop="sub" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.teaching_subjects" :value="scope.row.sub" /> <dict-tag :options="dict.type.teaching_subjects" :value="scope.row.sub" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="获奖类别" align="center" prop="awardType" /> <el-table-column label="获奖类别" align="center" prop="awardType" sortable />
<el-table-column label="获奖等级" align="center" prop="awardLevel"> <el-table-column label="获奖等级" align="center" prop="awardLevel" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.award_rank" :value="scope.row.awardLevel" /> <dict-tag :options="dict.type.award_rank" :value="scope.row.awardLevel" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="获奖级别" align="center" prop="awardType"> <el-table-column label="获奖级别" align="center" prop="awardType" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.awards_level" :value="scope.row.awardType" /> <dict-tag :options="dict.type.awards_level" :value="scope.row.awardType" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="综合荣誉-成果名称" align="center" prop="resultName" /> <el-table-column label="综合荣誉-成果名称" align="center" prop="resultName" sortable />
<el-table-column label="获奖人" align="center" prop="userName" /> <el-table-column label="获奖人" align="center" prop="userName" sortable />
<el-table-column label="主办单位" align="center" prop="org" /> <el-table-column label="主办单位" align="center" prop="org" sortable />
<el-table-column label="获奖时间" align="center" prop="awardTime" width="180"> <el-table-column label="获奖时间" align="center" prop="awardTime" width="180" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.awardTime, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.awardTime, '{y}-{m}-{d}') }}</span>
</template> </template>
...@@ -128,7 +130,7 @@ ...@@ -128,7 +130,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖类别" prop="awardType"> <el-form-item label="获奖类别" prop="awardType">
<el-input v-model="form.awardType" placeholder="请输入获奖类别" clearable <el-input v-model="form.awardType" placeholder="请输入" clearable
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery" />
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -156,12 +158,12 @@ ...@@ -156,12 +158,12 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="成果名称" prop="resultName"> <el-form-item label="成果名称" prop="resultName">
<el-input v-model="form.resultName" placeholder="请输入成果名称" /> <el-input v-model="form.resultName" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖人" prop="userName"> <el-form-item label="获奖人" prop="userName">
<el-input v-model="form.userName" placeholder="请选择分管领导" <el-input v-model="form.userName" placeholder="请选择"
@input="openSelect('选择分管领导', 'leaderList', 2)" @input="openSelect('选择分管领导', 'leaderList', 2)"
@focus="openSelect('选择分管领导', 'leaderList', 2)"></el-input> @focus="openSelect('选择分管领导', 'leaderList', 2)"></el-input>
</el-form-item> </el-form-item>
...@@ -170,13 +172,13 @@ ...@@ -170,13 +172,13 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="主办单位" prop="org"> <el-form-item label="主办单位" prop="org">
<el-input v-model="form.org" placeholder="请输入主办单位" /> <el-input v-model="form.org" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖时间" prop="awardTime"> <el-form-item label="获奖时间" prop="awardTime">
<el-date-picker clearable v-model="form.awardTime" type="date" value-format="yyyy-MM-dd" <el-date-picker clearable v-model="form.awardTime" type="date" value-format="yyyy-MM-dd"
placeholder="请选择获奖时间" style="width: 100%;"> placeholder="请选择" style="width: 100%;">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -184,7 +186,7 @@ ...@@ -184,7 +186,7 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" /> <el-input v-model="form.remark" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -223,7 +225,7 @@ ...@@ -223,7 +225,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖类别" prop="awardType"> <el-form-item label="获奖类别" prop="awardType">
<el-input v-model="form.awardType" placeholder="请输入获奖类别" clearable <el-input v-model="form.awardType" placeholder="请输入" clearable
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery" />
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -256,7 +258,7 @@ ...@@ -256,7 +258,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖人" prop="userName"> <el-form-item label="获奖人" prop="userName">
<el-input v-model="form.userName" placeholder="请选择分管领导" <el-input v-model="form.userName" placeholder="请选择"
@input="openSelect('选择分管领导', 'leaderList', 2)" @input="openSelect('选择分管领导', 'leaderList', 2)"
@focus="openSelect('选择分管领导', 'leaderList', 2)"></el-input> @focus="openSelect('选择分管领导', 'leaderList', 2)"></el-input>
</el-form-item> </el-form-item>
...@@ -265,13 +267,13 @@ ...@@ -265,13 +267,13 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="主办单位" prop="org"> <el-form-item label="主办单位" prop="org">
<el-input v-model="form.org" placeholder="请输入主办单位" /> <el-input v-model="form.org" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖时间" prop="awardTime"> <el-form-item label="获奖时间" prop="awardTime">
<el-date-picker clearable v-model="form.awardTime" type="date" value-format="yyyy-MM-dd" <el-date-picker clearable v-model="form.awardTime" type="date" value-format="yyyy-MM-dd"
placeholder="请选择获奖时间" style="width: 100%;"> placeholder="请选择" style="width: 100%;">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -279,7 +281,7 @@ ...@@ -279,7 +281,7 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" /> <el-input v-model="form.remark" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -614,7 +616,7 @@ export default { ...@@ -614,7 +616,7 @@ export default {
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
this.form.auditState = '2'; this.form.auditState = '2';
this.$refs["form"].validate(valid => { this.$refs["form"].validate(valid => {
if (valid) { if (valid) {
if (this.form.id != null) { if (this.form.id != null) {
......
<template>
<el-dialog :visible.sync="openDialog" :title="title" :width="width" @close="dialogClose">
<!-- 模糊查询-->
<el-form :model="form" ref="form" size="small" inline>
<el-form-item prop="userName" label="姓名">
<el-input v-model.trim="form.userName" placeholder="请输入姓名" clearable
@keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item prop="phone" label="联系电话">
<el-input v-model.trim="form.phone" placeholder="请输入联系电话" clearable @keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item>
<el-button @click="search" type="primary" icon="el-icon-search" size="mini">搜索</el-button>
<el-button @click="reset" icon="el-icon-refresh" size="mini">重置</el-button>
</el-form-item>
</el-form>
<!-- 列表数据-->
<el-table ref="tableList" v-loading="loading" :data="userList" @selection-change="selectionChange"
@row-click="rowClick">
<el-table-column type="selection" align="center"></el-table-column>
<el-table-column key="userName" prop="userName" label="姓名" align="center"></el-table-column>
<el-table-column key="phone" prop="phone" label="联系电话" align="center"></el-table-column>
</el-table>
<!-- 分页-->
<pagination v-show="total > 0" :total="total" :limit.sync="form.pageSize" :page.sync="form.pageNum"
@pagination="search"></pagination>
<!-- 底部-->
<div slot="footer">
<el-button :disabled="!selectUser" @click="submit" type="primary" size="small">确 定</el-button>
<el-button @click="quit" size="small">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import { getUserList } from "@/api/smartSchool/electronicArchives/professionalDevelopment/comprehensiveHonors";
export default {
name: "SelectUser",
dicts: ['sys_user_sex'],
props: {
open: {
type: Boolean,
require: true
},
title: {
type: String,
default: ''
},
width: {
type: [Number, String],
default: '50%'
},
execute: {
type: [String]
},
// 选择级部、处室主任
id: {
type: [Number, String]
}
},
data() {
return {
baseURL: process.env.VUE_APP_BASE_API,
form: {
userName: '',
phone: '',
pageNum: 1,
pageSize: 10
},
total: 0,
loading: false,
userList: [],
selectUser: null
}
},
computed: {
openDialog: {
get() {
return this.open;
},
set(value) {
this.$emit('update:open', value);
}
}
},
watch: {
open(value) {
if (value) {
this.$nextTick(() => {
this.reset();
})
}
}
},
methods: {
/** 搜索(交给子组件维护,当然也可以把接口交给父组件处理) */
async search() {
if (isNaN(Number(this.id))) {
console.error('Invalid ID');
return;
}
try {
this.loading = true;
const response = await this[this.execute]({ applyOrgid: this.id, ...this.form });
this.userList = response.rows || [];
this.total = response.total;
this.loading = false;
} catch (exception) {
this.loading = false;
throw new Error(exception);
}
},
/** 重置表单 */
reset() {
this.form = {
teacherName: '',
teacherTel: '',
pageNum: 1,
pageSize: 10
};
this.resetForm('form');
this.search();
},
/** 选项选中发生变化 */
selectionChange(selections) {
this.selectUser = selections[0];
},
/** 点击选中、取消 */
rowClick(row, column) {
console.log('row', row);
this.$refs['tableList'].clearSelection();
this.$refs['tableList'].toggleRowSelection(row, true);
},
/** 提交选中 */
submit() {
this.$emit('select', {
id: this.selectUser.userId,
name: this.selectUser.userName,
tel: this.selectUser.phone
});
this.quit();
},
/** 取消 */
quit() {
this.openDialog = false;
},
/** 分管领导、主要领导 */
leaderList(form) {
return getUserList(form);
},
dialogClose() {
this.userList = []
}
}
}
</script>
<style scoped>
.footer {
display: flex;
justify-content: center;
margin-top: 30px;
}
.radius-image {
border-radius: 40px;
}
</style>
...@@ -70,37 +70,39 @@ ...@@ -70,37 +70,39 @@
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table :data="awardsList" @selection-change="handleSelectionChange"> <el-table :data="awardsList" @selection-change="handleSelectionChange"
:default-sort="{ prop: 'awardTime', order: 'descending' }">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column type="index" label="序号" width="55" align="center" sortable />
<el-table-column label="成长类型" align="center"> <el-table-column label="成长类型" align="center">
<template> <template>
<span>教学获奖</span> <span>教学获奖</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="学科" align="center" prop="sub"> <el-table-column label="学科" align="center" prop="sub" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.teaching_subjects" :value="scope.row.sub" /> <dict-tag :options="dict.type.teaching_subjects" :value="scope.row.sub" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="获奖类别" align="center" prop="awardType"> <el-table-column label="获奖类别" align="center" prop="awardType" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.award_categoriesjs" :value="scope.row.awardType" /> <dict-tag :options="dict.type.award_categoriesjs" :value="scope.row.awardType" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="获奖等级" align="center" prop="awardLevel"> <el-table-column label="获奖等级" align="center" prop="awardLevel" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.award_rank" :value="scope.row.awardLevel" /> <dict-tag :options="dict.type.award_rank" :value="scope.row.awardLevel" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="获奖级别" align="center" prop="awardRank"> <el-table-column label="获奖级别" align="center" prop="awardRank" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.awards_level" :value="scope.row.awardRank" /> <dict-tag :options="dict.type.awards_level" :value="scope.row.awardRank" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="教学获奖-成果名称" align="center" prop="resultName" /> <el-table-column label="教学获奖-成果名称" align="center" prop="resultName" sortable />
<el-table-column label="获奖人" align="center" prop="userName" /> <el-table-column label="获奖人" align="center" prop="userName" sortable />
<el-table-column label="主办单位" align="center" prop="org" /> <el-table-column label="主办单位" align="center" prop="org" sortable />
<el-table-column label="获奖时间" align="center" prop="awardTime" width="180"> <el-table-column label="获奖时间" align="center" prop="awardTime" width="180" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.awardTime, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.awardTime, '{y}-{m}-{d}') }}</span>
</template> </template>
...@@ -168,12 +170,12 @@ ...@@ -168,12 +170,12 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="成果名称" prop="resultName"> <el-form-item label="成果名称" prop="resultName">
<el-input v-model="form.resultName" placeholder="请输入成果名称" /> <el-input v-model="form.resultName" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖人" prop="userName"> <el-form-item label="获奖人" prop="userName">
<el-input v-model="form.userName" placeholder="请选择分管领导" <el-input v-model="form.userName" placeholder="请选择"
@input="openSelect('选择分管领导', 'leaderList', 2)" @input="openSelect('选择分管领导', 'leaderList', 2)"
@focus="openSelect('选择分管领导', 'leaderList', 2)"></el-input> @focus="openSelect('选择分管领导', 'leaderList', 2)"></el-input>
</el-form-item> </el-form-item>
...@@ -182,13 +184,13 @@ ...@@ -182,13 +184,13 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="主办单位" prop="org"> <el-form-item label="主办单位" prop="org">
<el-input v-model="form.org" placeholder="请输入主办单位" /> <el-input v-model="form.org" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖时间" prop="awardTime"> <el-form-item label="获奖时间" prop="awardTime">
<el-date-picker clearable v-model="form.awardTime" type="date" value-format="yyyy-MM-dd" <el-date-picker clearable v-model="form.awardTime" type="date" value-format="yyyy-MM-dd"
placeholder="请选择获奖时间" style="width: 100%;"> placeholder="请选择" style="width: 100%;">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -196,7 +198,7 @@ ...@@ -196,7 +198,7 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" /> <el-input v-model="form.remark" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -219,7 +221,8 @@ ...@@ -219,7 +221,8 @@
<el-button type="primary" @click="submitForm"> </el-button> <el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button> <el-button @click="cancel"> </el-button>
</div> </div>
</el-dialog><!-- 审核综合荣誉对话框 --> </el-dialog>
<!-- 审核综合荣誉对话框 -->
<el-dialog title="详细信息" :visible.sync="look" width="1000px" append-to-body> <el-dialog title="详细信息" :visible.sync="look" width="1000px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px" :disabled="isEdit"> <el-form ref="form" :model="form" :rules="rules" label-width="80px" :disabled="isEdit">
<el-row> <el-row>
...@@ -234,7 +237,7 @@ ...@@ -234,7 +237,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖类别" prop="awardType"> <el-form-item label="获奖类别" prop="awardType">
<el-input v-model="form.awardType" placeholder="请输入获奖类别" clearable <el-input v-model="form.awardType" placeholder="请输入" clearable
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery" />
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -262,12 +265,12 @@ ...@@ -262,12 +265,12 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="成果名称" prop="resultName"> <el-form-item label="成果名称" prop="resultName">
<el-input v-model="form.resultName" placeholder="请输入成果名称" /> <el-input v-model="form.resultName" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖人" prop="userName"> <el-form-item label="获奖人" prop="userName">
<el-input v-model="form.userName" placeholder="请选择分管领导" <el-input v-model="form.userName" placeholder="请选择"
@input="openSelect('选择分管领导', 'leaderList', 2)" @input="openSelect('选择分管领导', 'leaderList', 2)"
@focus="openSelect('选择分管领导', 'leaderList', 2)"></el-input> @focus="openSelect('选择分管领导', 'leaderList', 2)"></el-input>
</el-form-item> </el-form-item>
...@@ -276,13 +279,13 @@ ...@@ -276,13 +279,13 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="主办单位" prop="org"> <el-form-item label="主办单位" prop="org">
<el-input v-model="form.org" placeholder="请输入主办单位" /> <el-input v-model="form.org" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖时间" prop="awardTime"> <el-form-item label="获奖时间" prop="awardTime">
<el-date-picker clearable v-model="form.awardTime" type="date" value-format="yyyy-MM-dd" <el-date-picker clearable v-model="form.awardTime" type="date" value-format="yyyy-MM-dd"
placeholder="请选择获奖时间" style="width: 100%;"> placeholder="请选择" style="width: 100%;">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -290,7 +293,7 @@ ...@@ -290,7 +293,7 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" /> <el-input v-model="form.remark" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -361,6 +364,8 @@ export default { ...@@ -361,6 +364,8 @@ export default {
title: "", title: "",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
look: false,
isEdit: false,
// 查询参数 // 查询参数
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
...@@ -464,12 +469,12 @@ export default { ...@@ -464,12 +469,12 @@ export default {
//审核 //审核
handleExamine(row) { handleExamine(row) {
const id = row.id || this.ids; const id = row.id || this.ids;
getHonors(id).then(response => { getAwards(id).then(response => {
this.look = true; this.look = true;
this.isEdit = true, this.isEdit = true,
this.form = response.data; this.form = response.data;
this.pictureUrl = this.pev + this.form.pictureUrl this.pictureUrl = this.pev + this.form.pictureUrl
this.title = "修改综合荣誉"; this.title = "综合荣誉";
}); });
}, },
// 同意 // 同意
......
...@@ -98,39 +98,41 @@ ...@@ -98,39 +98,41 @@
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table :data="achievementsList" @selection-change="handleSelectionChange"> <el-table :data="achievementsList" @selection-change="handleSelectionChange"
:default-sort="{ prop: 'examTime', order: 'descending' }">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="学年" align="center" prop="schoolYear" /> <el-table-column type="index" label="序号" width="55" align="center" sortable />
<el-table-column label="学期" align="center" prop="semester"> <el-table-column label="学年" align="center" prop="schoolYear" sortable />
<el-table-column label="学期" align="center" prop="semester" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.semester_jsdzda" :value="scope.row.semester" /> <dict-tag :options="dict.type.semester_jsdzda" :value="scope.row.semester" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="考试时间" align="center" prop="examTime" width="180"> <el-table-column label="考试时间" align="center" prop="examTime" width="180" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.examTime, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.examTime, '{y}-{m}-{d}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="考试类型" align="center" prop="examType"> <el-table-column label="考试类型" align="center" prop="examType" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.exam_typeda" :value="scope.row.examType" /> <dict-tag :options="dict.type.exam_typeda" :value="scope.row.examType" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="届别" align="center" prop="year" /> <el-table-column label="届别" align="center" prop="year" sortable />
<el-table-column label="年级" align="center" prop="grade"> <el-table-column label="年级" align="center" prop="grade" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.grade_da" :value="scope.row.grade" /> <dict-tag :options="dict.type.grade_da" :value="scope.row.grade" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="姓名" align="center" prop="userName" /> <el-table-column label="姓名" align="center" prop="userName" sortable />
<el-table-column label="学科" align="center" prop="sub"> <el-table-column label="学科" align="center" prop="sub" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.teaching_subjects" :value="scope.row.sub" /> <dict-tag :options="dict.type.teaching_subjects" :value="scope.row.sub" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="班级" align="center" prop="className"> <el-table-column label="班级" align="center" prop="className" sortable>
</el-table-column> </el-table-column>
<el-table-column label="班级类型" align="center"> <el-table-column label="班级类型" align="center" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="getSelectedTypes(scope.row.classType).length > 0"> <span v-if="getSelectedTypes(scope.row.classType).length > 0">
<span v-for="(option, index) in getSelectedTypes(scope.row.classType)" :key="index"> <span v-for="(option, index) in getSelectedTypes(scope.row.classType)" :key="index">
...@@ -140,7 +142,7 @@ ...@@ -140,7 +142,7 @@
</span> </span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="考核分" align="center" prop="assessmentScore" /> <el-table-column label="考核分" align="center" prop="assessmentScore" sortable />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
...@@ -461,7 +463,8 @@ export default { ...@@ -461,7 +463,8 @@ export default {
this.getList(); this.getList();
}, },
getSelectedTypes(classType) { getSelectedTypes(classType) {
return this.dict.type.class_type.filter(option => classType.split(',').includes(option.value.toString())); const selectedTypes = classType.split(','); // 将逗号分隔的字符串转换为数组
return this.dict.type.class_type.filter(option => selectedTypes.includes(option.value.toString()));
}, },
/** 导入按钮操作 */ /** 导入按钮操作 */
handleImport(row) { handleImport(row) {
......
<template>
<el-dialog :visible.sync="openDialog" :title="title" :width="width" @close="dialogClose">
<!-- 模糊查询-->
<el-form :model="form" ref="form" size="small" inline>
<el-form-item prop="userName" label="姓名">
<el-input v-model.trim="form.userName" placeholder="请输入姓名" clearable
@keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item prop="phone" label="联系电话">
<el-input v-model.trim="form.phone" placeholder="请输入联系电话" clearable @keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item>
<el-button @click="search" type="primary" icon="el-icon-search" size="mini">搜索</el-button>
<el-button @click="reset" icon="el-icon-refresh" size="mini">重置</el-button>
</el-form-item>
</el-form>
<!-- 列表数据-->
<el-table ref="tableList" v-loading="loading" :data="userList" @selection-change="selectionChange"
@row-click="rowClick">
<el-table-column type="selection" align="center"></el-table-column>
<el-table-column key="userName" prop="userName" label="姓名" align="center"></el-table-column>
<el-table-column key="phone" prop="phone" label="联系电话" align="center"></el-table-column>
</el-table>
<!-- 分页-->
<pagination v-show="total > 0" :total="total" :limit.sync="form.pageSize" :page.sync="form.pageNum"
@pagination="search"></pagination>
<!-- 底部-->
<div slot="footer">
<el-button :disabled="!selectUser" @click="submit" type="primary" size="small">确 定</el-button>
<el-button @click="quit" size="small">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import { getUserList } from "@/api/smartSchool/electronicArchives/professionalDevelopment/comprehensiveHonors";
export default {
name: "SelectUser",
dicts: ['sys_user_sex'],
props: {
open: {
type: Boolean,
require: true
},
title: {
type: String,
default: ''
},
width: {
type: [Number, String],
default: '50%'
},
execute: {
type: [String]
},
// 选择级部、处室主任
id: {
type: [Number, String]
}
},
data() {
return {
baseURL: process.env.VUE_APP_BASE_API,
form: {
userName: '',
phone: '',
pageNum: 1,
pageSize: 10
},
total: 0,
loading: false,
userList: [],
selectUser: null
}
},
computed: {
openDialog: {
get() {
return this.open;
},
set(value) {
this.$emit('update:open', value);
}
}
},
watch: {
open(value) {
if (value) {
this.$nextTick(() => {
this.reset();
})
}
}
},
methods: {
/** 搜索(交给子组件维护,当然也可以把接口交给父组件处理) */
async search() {
if (isNaN(Number(this.id))) {
console.error('Invalid ID');
return;
}
try {
this.loading = true;
const response = await this[this.execute]({ applyOrgid: this.id, ...this.form });
this.userList = response.rows || [];
this.total = response.total;
this.loading = false;
} catch (exception) {
this.loading = false;
throw new Error(exception);
}
},
/** 重置表单 */
reset() {
this.form = {
teacherName: '',
teacherTel: '',
pageNum: 1,
pageSize: 10
};
this.resetForm('form');
this.search();
},
/** 选项选中发生变化 */
selectionChange(selections) {
this.selectUser = selections[0];
},
/** 点击选中、取消 */
rowClick(row, column) {
console.log('row', row);
this.$refs['tableList'].clearSelection();
this.$refs['tableList'].toggleRowSelection(row, true);
},
/** 提交选中 */
submit() {
this.$emit('select', {
id: this.selectUser.userId,
name: this.selectUser.userName,
tel: this.selectUser.phone
});
this.quit();
},
/** 取消 */
quit() {
this.openDialog = false;
},
/** 分管领导、主要领导 */
leaderList(form) {
return getUserList(form);
},
dialogClose() {
this.userList = []
}
}
}
</script>
<style scoped>
.footer {
display: flex;
justify-content: center;
margin-top: 30px;
}
.radius-image {
border-radius: 40px;
}
</style>
...@@ -83,22 +83,24 @@ ...@@ -83,22 +83,24 @@
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table :data="assessmentList" @selection-change="handleSelectionChange"> <el-table :data="assessmentList" @selection-change="handleSelectionChange"
:default-sort="{ prop: 'schoolYear', order: 'descending' }">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="学年" align="center" prop="schoolYear" /> <el-table-column type="index" label="序号" width="55" align="center" sortable fixed="left" />
<el-table-column label="学期" align="center" prop="semester"> <el-table-column label="学年" align="center" prop="schoolYear" sortable fixed="left" />
<el-table-column label="学期" align="center" prop="semester" sortable fixed="left">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.semester_jsdzda" :value="scope.row.semester" /> <dict-tag :options="dict.type.semester_jsdzda" :value="scope.row.semester" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="届别" align="center" prop="year" /> <el-table-column label="届别" align="center" prop="year" sortable fixed="left" />
<el-table-column label="年级" align="center" prop="grade"> <el-table-column label="年级" align="center" prop="grade" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.grade_da" :value="scope.row.grade" /> <dict-tag :options="dict.type.grade_da" :value="scope.row.grade" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="班级" align="center" prop="className" /> <el-table-column label="班级" align="center" prop="className" sortable />
<el-table-column label="班级类型" align="center" prop="classType"> <el-table-column label="班级类型" align="center" prop="classType" sortable width="180px">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="getSelectedTypes(scope.row.classType).length > 0"> <span v-if="getSelectedTypes(scope.row.classType).length > 0">
<span v-for="(option, index) in getSelectedTypes(scope.row.classType)" :key="index"> <span v-for="(option, index) in getSelectedTypes(scope.row.classType)" :key="index">
...@@ -108,17 +110,18 @@ ...@@ -108,17 +110,18 @@
</span> </span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="姓名" align="center" prop="teacherName" /> <el-table-column label="姓名" align="center" prop="teacherName" sortable />
<el-table-column label="学科" align="center" prop="sub"> <el-table-column label="学科" align="center" prop="sub" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.teaching_subjects" :value="scope.row.sub" /> <dict-tag :options="dict.type.teaching_subjects" :value="scope.row.sub" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="德育考核成绩" align="center" prop="moralEduCheckAchievement" /> <el-table-column label="德育考核成绩" align="center" prop="moralEduCheckAchievement" sortable fixed="right"
<el-table-column label="智育考核成绩" align="center" prop="intellEduCheckAchievement" /> width="130px" />
<el-table-column label="总考核成绩" align="center" prop="totalCheckAchievement" /> <el-table-column label="智育考核成绩" align="center" prop="intellEduCheckAchievement" sortable fixed="right"
<el-table-column label="备注" align="center" prop="remark" /> width="130px" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="备注" align="center" prop="remark" sortable fixed="right" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['system:assessment:edit']">修改</el-button> v-hasPermi="['system:assessment:edit']">修改</el-button>
...@@ -207,14 +210,6 @@ ...@@ -207,14 +210,6 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="总考核成绩" prop="totalCheckAchievement">
<el-input v-model="form.totalCheckAchievement" placeholder="请输入" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="班级类型" prop="classType"> <el-form-item label="班级类型" prop="classType">
<el-select v-model="form.classType" multiple placeholder="请选择" style="width: 100%"> <el-select v-model="form.classType" multiple placeholder="请选择" style="width: 100%">
<el-option v-for="dict in dict.type.class_type" :key="dict.value" :label="dict.label" <el-option v-for="dict in dict.type.class_type" :key="dict.value" :label="dict.label"
...@@ -223,6 +218,10 @@ ...@@ -223,6 +218,10 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="学科" prop="sub"> <el-form-item label="学科" prop="sub">
<el-select v-model="form.sub" placeholder="请选择" style="width: 100%"> <el-select v-model="form.sub" placeholder="请选择" style="width: 100%">
...@@ -232,11 +231,14 @@ ...@@ -232,11 +231,14 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入" />
</el-form-item>
</el-col>
</el-row> </el-row>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入" />
</el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button> <el-button type="primary" @click="submitForm">确 定</el-button>
......
...@@ -98,6 +98,7 @@ ...@@ -98,6 +98,7 @@
<el-table :data="aworkloadList" @selection-change="handleSelectionChange" <el-table :data="aworkloadList" @selection-change="handleSelectionChange"
:default-sort="{ prop: 'schoolYear', order: 'descending' }"> :default-sort="{ prop: 'schoolYear', order: 'descending' }">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column type="index" label="序号" width="55" align="center" sortable fixed="left" />
<el-table-column label="学年" align="center" prop="schoolYear" width="90px" fixed="left" sortable /> <el-table-column label="学年" align="center" prop="schoolYear" width="90px" fixed="left" sortable />
<el-table-column label="学期" align="center" prop="semester" fixed="left" sortable> <el-table-column label="学期" align="center" prop="semester" fixed="left" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
...@@ -124,7 +125,7 @@ ...@@ -124,7 +125,7 @@
<el-table-column label="聘任职务" align="center" prop="appointmentPosition" sortable width="120px" /> <el-table-column label="聘任职务" align="center" prop="appointmentPosition" sortable width="120px" />
<el-table-column label="聘任情况" align="center" prop="appointmentSituation" sortable width="120px" /> <el-table-column label="聘任情况" align="center" prop="appointmentSituation" sortable width="120px" />
<el-table-column label="班级" align="center" prop="className" sortable /> <el-table-column label="班级" align="center" prop="className" sortable />
<el-table-column label="班级类型" align="center" prop="classType" width="120px" sortable> <el-table-column label="班级类型" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="getSelectedTypes(scope.row.classType).length > 0"> <span v-if="getSelectedTypes(scope.row.classType).length > 0">
<span v-for="(option, index) in getSelectedTypes(scope.row.classType)" :key="index"> <span v-for="(option, index) in getSelectedTypes(scope.row.classType)" :key="index">
...@@ -748,7 +749,8 @@ export default { ...@@ -748,7 +749,8 @@ export default {
}); });
}, },
getSelectedTypes(classType) { getSelectedTypes(classType) {
return this.dict.type.class_type.filter(option => classType.split(',').includes(option.value.toString())); const selectedTypes = classType.split(','); // 将逗号分隔的字符串转换为数组
return this.dict.type.class_type.filter(option => selectedTypes.includes(option.value.toString()));
}, },
handleImport() { handleImport() {
this.reset(); this.reset();
......
<template>
<el-dialog :visible.sync="openDialog" :title="title" :width="width" @close="dialogClose">
<!-- 模糊查询-->
<el-form :model="form" ref="form" size="small" inline>
<el-form-item prop="userName" label="姓名">
<el-input v-model.trim="form.userName" placeholder="请输入姓名" clearable
@keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item prop="phone" label="联系电话">
<el-input v-model.trim="form.phone" placeholder="请输入联系电话" clearable @keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item>
<el-button @click="search" type="primary" icon="el-icon-search" size="mini">搜索</el-button>
<el-button @click="reset" icon="el-icon-refresh" size="mini">重置</el-button>
</el-form-item>
</el-form>
<!-- 列表数据-->
<el-table ref="tableList" v-loading="loading" :data="userList" @selection-change="selectionChange"
@row-click="rowClick">
<el-table-column type="selection" align="center"></el-table-column>
<el-table-column key="userName" prop="userName" label="姓名" align="center"></el-table-column>
<el-table-column key="phone" prop="phone" label="联系电话" align="center"></el-table-column>
</el-table>
<!-- 分页-->
<pagination v-show="total > 0" :total="total" :limit.sync="form.pageSize" :page.sync="form.pageNum"
@pagination="search"></pagination>
<!-- 底部-->
<div slot="footer">
<el-button :disabled="!selectUser" @click="submit" type="primary" size="small">确 定</el-button>
<el-button @click="quit" size="small">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import { getUserList } from "@/api/smartSchool/electronicArchives/professionalDevelopment/comprehensiveHonors";
export default {
name: "SelectUser",
dicts: ['sys_user_sex'],
props: {
open: {
type: Boolean,
require: true
},
title: {
type: String,
default: ''
},
width: {
type: [Number, String],
default: '50%'
},
execute: {
type: [String]
},
// 选择级部、处室主任
id: {
type: [Number, String]
}
},
data() {
return {
baseURL: process.env.VUE_APP_BASE_API,
form: {
userName: '',
phone: '',
pageNum: 1,
pageSize: 10
},
total: 0,
loading: false,
userList: [],
selectUser: null
}
},
computed: {
openDialog: {
get() {
return this.open;
},
set(value) {
this.$emit('update:open', value);
}
}
},
watch: {
open(value) {
if (value) {
this.$nextTick(() => {
this.reset();
})
}
}
},
methods: {
/** 搜索(交给子组件维护,当然也可以把接口交给父组件处理) */
async search() {
if (isNaN(Number(this.id))) {
console.error('Invalid ID');
return;
}
try {
this.loading = true;
const response = await this[this.execute]({ applyOrgid: this.id, ...this.form });
this.userList = response.rows || [];
this.total = response.total;
this.loading = false;
} catch (exception) {
this.loading = false;
throw new Error(exception);
}
},
/** 重置表单 */
reset() {
this.form = {
teacherName: '',
teacherTel: '',
pageNum: 1,
pageSize: 10
};
this.resetForm('form');
this.search();
},
/** 选项选中发生变化 */
selectionChange(selections) {
this.selectUser = selections[0];
},
/** 点击选中、取消 */
rowClick(row, column) {
console.log('row', row);
this.$refs['tableList'].clearSelection();
this.$refs['tableList'].toggleRowSelection(row, true);
},
/** 提交选中 */
submit() {
this.$emit('select', {
id: this.selectUser.userId,
name: this.selectUser.userName,
tel: this.selectUser.phone
});
this.quit();
},
/** 取消 */
quit() {
this.openDialog = false;
},
/** 分管领导、主要领导 */
leaderList(form) {
return getUserList(form);
},
dialogClose() {
this.userList = []
}
}
}
</script>
<style scoped>
.footer {
display: flex;
justify-content: center;
margin-top: 30px;
}
.radius-image {
border-radius: 40px;
}
</style>
...@@ -60,33 +60,35 @@ ...@@ -60,33 +60,35 @@
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table :data="honorsList" @selection-change="handleSelectionChange"> <el-table :data="honorsList" @selection-change="handleSelectionChange"
:default-sort="{ prop: 'awardTime', order: 'descending' }">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column type="index" label="序号" width="55" align="center" sortable />
<el-table-column label="成长类型" align="center" prop="type"> <el-table-column label="成长类型" align="center" prop="type">
<template> <template>
<span>综合荣誉</span> <span>综合荣誉</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="学科" align="center" prop="sub"> <el-table-column label="学科" align="center" prop="sub" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.teaching_subjects" :value="scope.row.sub" /> <dict-tag :options="dict.type.teaching_subjects" :value="scope.row.sub" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="获奖类别" align="center" prop="awardType" /> <el-table-column label="获奖类别" align="center" prop="awardType" sortable />
<el-table-column label="获奖等级" align="center" prop="awardLevel"> <el-table-column label="获奖等级" align="center" prop="awardLevel" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.award_rank" :value="scope.row.awardLevel" /> <dict-tag :options="dict.type.award_rank" :value="scope.row.awardLevel" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="获奖级别" align="center" prop="awardType"> <el-table-column label="获奖级别" align="center" prop="awardType" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.awards_level" :value="scope.row.awardType" /> <dict-tag :options="dict.type.awards_level" :value="scope.row.awardType" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="综合荣誉-成果名称" align="center" prop="resultName" /> <el-table-column label="综合荣誉-成果名称" align="center" prop="resultName" sortable />
<el-table-column label="获奖人" align="center" prop="userName" /> <el-table-column label="获奖人" align="center" prop="userName" sortable />
<el-table-column label="主办单位" align="center" prop="org" /> <el-table-column label="主办单位" align="center" prop="org" sortable />
<el-table-column label="获奖时间" align="center" prop="awardTime" width="180"> <el-table-column label="获奖时间" align="center" prop="awardTime" width="180" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.awardTime, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.awardTime, '{y}-{m}-{d}') }}</span>
</template> </template>
...@@ -125,7 +127,7 @@ ...@@ -125,7 +127,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖类别" prop="awardType"> <el-form-item label="获奖类别" prop="awardType">
<el-input v-model="form.awardType" placeholder="请输入获奖类别" clearable <el-input v-model="form.awardType" placeholder="请输入" clearable
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery" />
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -153,7 +155,7 @@ ...@@ -153,7 +155,7 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="成果名称" prop="resultName"> <el-form-item label="成果名称" prop="resultName">
<el-input v-model="form.resultName" placeholder="请输入成果名称" /> <el-input v-model="form.resultName" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
...@@ -165,13 +167,13 @@ ...@@ -165,13 +167,13 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="主办单位" prop="org"> <el-form-item label="主办单位" prop="org">
<el-input v-model="form.org" placeholder="请输入主办单位" /> <el-input v-model="form.org" placeholder="请输入" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="获奖时间" prop="awardTime"> <el-form-item label="获奖时间" prop="awardTime">
<el-date-picker clearable v-model="form.awardTime" type="date" value-format="yyyy-MM-dd" <el-date-picker clearable v-model="form.awardTime" type="date" value-format="yyyy-MM-dd"
placeholder="请选择获奖时间" style="width: 100%;"> placeholder="请选择" style="width: 100%;">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -427,7 +429,7 @@ export default { ...@@ -427,7 +429,7 @@ export default {
this.reset(); this.reset();
this.isEdit = false; this.isEdit = false;
this.form.userName = this.$store.state.user.name; this.form.userName = this.$store.state.user.name;
this.form.userId = this.$store.state.user.userId;
this.open = true; this.open = true;
this.title = "添加综合荣誉"; this.title = "添加综合荣誉";
}, },
......
<template>
<el-dialog :visible.sync="openDialog" :title="title" :width="width" @close="dialogClose">
<!-- 模糊查询-->
<el-form :model="form" ref="form" size="small" inline>
<el-form-item prop="userName" label="姓名">
<el-input v-model.trim="form.userName" placeholder="请输入姓名" clearable
@keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item prop="phone" label="联系电话">
<el-input v-model.trim="form.phone" placeholder="请输入联系电话" clearable @keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item>
<el-button @click="search" type="primary" icon="el-icon-search" size="mini">搜索</el-button>
<el-button @click="reset" icon="el-icon-refresh" size="mini">重置</el-button>
</el-form-item>
</el-form>
<!-- 列表数据-->
<el-table ref="tableList" v-loading="loading" :data="userList" @selection-change="selectionChange"
@row-click="rowClick">
<el-table-column type="selection" align="center"></el-table-column>
<el-table-column key="userName" prop="userName" label="姓名" align="center"></el-table-column>
<el-table-column key="phone" prop="phone" label="联系电话" align="center"></el-table-column>
</el-table>
<!-- 分页-->
<pagination v-show="total > 0" :total="total" :limit.sync="form.pageSize" :page.sync="form.pageNum"
@pagination="search"></pagination>
<!-- 底部-->
<div slot="footer">
<el-button :disabled="!selectUser" @click="submit" type="primary" size="small">确 定</el-button>
<el-button @click="quit" size="small">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import { getUserList } from "@/api/smartSchool/electronicArchives/professionalDevelopment/comprehensiveHonors";
export default {
name: "SelectUser",
dicts: ['sys_user_sex'],
props: {
open: {
type: Boolean,
require: true
},
title: {
type: String,
default: ''
},
width: {
type: [Number, String],
default: '50%'
},
execute: {
type: [String]
},
// 选择级部、处室主任
id: {
type: [Number, String]
}
},
data() {
return {
baseURL: process.env.VUE_APP_BASE_API,
form: {
userName: '',
phone: '',
pageNum: 1,
pageSize: 10
},
total: 0,
loading: false,
userList: [],
selectUser: null
}
},
computed: {
openDialog: {
get() {
return this.open;
},
set(value) {
this.$emit('update:open', value);
}
}
},
watch: {
open(value) {
if (value) {
this.$nextTick(() => {
this.reset();
})
}
}
},
methods: {
/** 搜索(交给子组件维护,当然也可以把接口交给父组件处理) */
async search() {
if (isNaN(Number(this.id))) {
console.error('Invalid ID');
return;
}
try {
this.loading = true;
const response = await this[this.execute]({ applyOrgid: this.id, ...this.form });
this.userList = response.rows || [];
this.total = response.total;
this.loading = false;
} catch (exception) {
this.loading = false;
throw new Error(exception);
}
},
/** 重置表单 */
reset() {
this.form = {
teacherName: '',
teacherTel: '',
pageNum: 1,
pageSize: 10
};
this.resetForm('form');
this.search();
},
/** 选项选中发生变化 */
selectionChange(selections) {
this.selectUser = selections[0];
},
/** 点击选中、取消 */
rowClick(row, column) {
console.log('row', row);
this.$refs['tableList'].clearSelection();
this.$refs['tableList'].toggleRowSelection(row, true);
},
/** 提交选中 */
submit() {
this.$emit('select', {
id: this.selectUser.userId,
name: this.selectUser.userName,
tel: this.selectUser.phone
});
this.quit();
},
/** 取消 */
quit() {
this.openDialog = false;
},
/** 分管领导、主要领导 */
leaderList(form) {
return getUserList(form);
},
dialogClose() {
this.userList = []
}
}
}
</script>
<style scoped>
.footer {
display: flex;
justify-content: center;
margin-top: 30px;
}
.radius-image {
border-radius: 40px;
}
</style>
<template>
<el-dialog :visible.sync="openDialog" :title="title" :width="width" @close="dialogClose">
<!-- 模糊查询-->
<el-form :model="form" ref="form" size="small" inline>
<el-form-item prop="userName" label="姓名">
<el-input v-model.trim="form.userName" placeholder="请输入姓名" clearable
@keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item prop="phone" label="联系电话">
<el-input v-model.trim="form.phone" placeholder="请输入联系电话" clearable @keyup.enter.native="search"></el-input>
</el-form-item>
<el-form-item>
<el-button @click="search" type="primary" icon="el-icon-search" size="mini">搜索</el-button>
<el-button @click="reset" icon="el-icon-refresh" size="mini">重置</el-button>
</el-form-item>
</el-form>
<!-- 列表数据-->
<el-table ref="tableList" v-loading="loading" :data="userList" @selection-change="selectionChange"
@row-click="rowClick">
<el-table-column type="selection" align="center"></el-table-column>
<el-table-column key="userName" prop="userName" label="姓名" align="center"></el-table-column>
<el-table-column key="phone" prop="phone" label="联系电话" align="center"></el-table-column>
</el-table>
<!-- 分页-->
<pagination v-show="total > 0" :total="total" :limit.sync="form.pageSize" :page.sync="form.pageNum"
@pagination="search"></pagination>
<!-- 底部-->
<div slot="footer">
<el-button :disabled="!selectUser" @click="submit" type="primary" size="small">确 定</el-button>
<el-button @click="quit" size="small">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import { getUserList } from "@/api/smartSchool/electronicArchives/professionalDevelopment/comprehensiveHonors";
export default {
name: "SelectUser",
dicts: ['sys_user_sex'],
props: {
open: {
type: Boolean,
require: true
},
title: {
type: String,
default: ''
},
width: {
type: [Number, String],
default: '50%'
},
execute: {
type: [String]
},
// 选择级部、处室主任
id: {
type: [Number, String]
}
},
data() {
return {
baseURL: process.env.VUE_APP_BASE_API,
form: {
userName: '',
phone: '',
pageNum: 1,
pageSize: 10
},
total: 0,
loading: false,
userList: [],
selectUser: null
}
},
computed: {
openDialog: {
get() {
return this.open;
},
set(value) {
this.$emit('update:open', value);
}
}
},
watch: {
open(value) {
if (value) {
this.$nextTick(() => {
this.reset();
})
}
}
},
methods: {
/** 搜索(交给子组件维护,当然也可以把接口交给父组件处理) */
async search() {
if (isNaN(Number(this.id))) {
console.error('Invalid ID');
return;
}
try {
this.loading = true;
const response = await this[this.execute]({ applyOrgid: this.id, ...this.form });
this.userList = response.rows || [];
this.total = response.total;
this.loading = false;
} catch (exception) {
this.loading = false;
throw new Error(exception);
}
},
/** 重置表单 */
reset() {
this.form = {
teacherName: '',
teacherTel: '',
pageNum: 1,
pageSize: 10
};
this.resetForm('form');
this.search();
},
/** 选项选中发生变化 */
selectionChange(selections) {
this.selectUser = selections[0];
},
/** 点击选中、取消 */
rowClick(row, column) {
console.log('row', row);
this.$refs['tableList'].clearSelection();
this.$refs['tableList'].toggleRowSelection(row, true);
},
/** 提交选中 */
submit() {
this.$emit('select', {
id: this.selectUser.userId,
name: this.selectUser.userName,
tel: this.selectUser.phone
});
this.quit();
},
/** 取消 */
quit() {
this.openDialog = false;
},
/** 分管领导、主要领导 */
leaderList(form) {
return getUserList(form);
},
dialogClose() {
this.userList = []
}
}
}
</script>
<style scoped>
.footer {
display: flex;
justify-content: center;
margin-top: 30px;
}
.radius-image {
border-radius: 40px;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment