Merge remote-tracking branch 'origin/dev'

# Conflicts:
#	.env.development
This commit is contained in:
纪寒 2022-09-19 10:20:14 +08:00
commit 974ea7c82d
15 changed files with 995 additions and 366 deletions

View File

@ -5,7 +5,7 @@ VUE_APP_TITLE = 幼儿园体质检测管理系统
ENV = 'development' ENV = 'development'
# 若依管理系统/开发环境 # 若依管理系统/开发环境
VUE_APP_BASE_API = 'http://192.168.16.81:8080' VUE_APP_BASE_API = 'http://192.168.16.81:8081'
#'/dev-api' #'/dev-api'
# 路由懒加载 # 路由懒加载

View File

@ -9,6 +9,13 @@ export function listArea(query) {
}) })
} }
export function listCityInfo() {
return request({
url: '/system/area/listCityInfo',
method: 'get'
})
}
// 查询区域管理详细 // 查询区域管理详细
export function getArea(id) { export function getArea(id) {
return request({ return request({

View File

@ -26,34 +26,70 @@
<el-button <el-button
@click="batchCodeshowclick" @click="batchCodeshowclick"
style="width: 250px; text-align: left; height: 32px; color: #c0c4cc" style="width: 250px; text-align: left; height: 32px; color: #c0c4cc"
v-if="batchCode == '请选择批次'" v-if="batchName == '请选择批次'"
>{{ batchCode }}</el-button >{{ batchName }}</el-button
> >
<el-button <el-button
@click="batchCodeshowclick" @click="batchCodeshowclick"
style="width: 250px; text-align: left; height: 32px" style="width: 250px; text-align: left; height: 32px"
v-else v-else
>{{ batchCode }}</el-button >{{ batchName }}</el-button
> >
</el-form-item> </el-form-item>
</el-form> </el-form>
<!-- // --> <!-- // -->
<el-dialog <el-dialog
width="590px" width="700px"
title="选择批次" title="选择批次"
:visible.sync="batchCodeshow" :visible.sync="batchCodeshow"
append-to-body append-to-body
style="margin-top: 20px" style="margin-top: 20px"
:before-close="batchCodecancel" :before-close="batchCodecancel"
> >
<el-form
:model="testqueryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="90px"
>
<el-form-item label="批次编号" prop="batchCode">
<el-input
v-model="testqueryParams.batchCode"
placeholder="请输入批次编号"
clearable
/>
</el-form-item>
<el-form-item label="批次名称" prop="batchCode">
<el-input
v-model="testqueryParams.batchName"
placeholder="请输入批次名称"
clearable
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="testScore"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="testresetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-table <el-table
:data="testScorelist" :data="testScorelist"
align="center" align="center"
style="margin-top: 0px" style="margin-top: 0px"
@cell-dblclick="batchCodeclick" @cell-dblclick="batchCodeclick"
> >
<el-table-column label="请选择" width="100" align="center"> <el-table-column label="请选择" width="200" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
type="primary" type="primary"
@ -73,13 +109,13 @@
<el-table-column <el-table-column
property="batchCode" property="batchCode"
label="批次编号" label="批次编号"
width="200" width="230"
align="center" align="center"
/> />
<el-table-column <el-table-column
property="batchName" property="batchName"
label="批次名称" label="批次名称"
width="200" width="230"
align="center" align="center"
/> />
</el-table> </el-table>
@ -100,6 +136,34 @@
append-to-body append-to-body
:before-close="kindergartencancel" :before-close="kindergartencancel"
> >
<el-form
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="110px"
>
<el-form-item label="幼儿园名称" prop="kindergartenName">
<el-input
style="width: 200px"
v-model="kqueryParams.kindergartenName"
placeholder="请输入幼儿园名称"
></el-input>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="kinhandleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="kinresetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-table :data="kindergartenList" @cell-dblclick="kindergartenNameclick"> <el-table :data="kindergartenList" @cell-dblclick="kindergartenNameclick">
<el-table-column label="请选择" width="70" align="center"> <el-table-column label="请选择" width="70" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
@ -205,7 +269,8 @@ export default {
//ID //ID
kindergartenId: "", kindergartenId: "",
// //
batchCode: "请选择批次", batchCode: "",
batchName: "请选择批次",
//list //list
testScorelist: [], testScorelist: [],
// //
@ -223,6 +288,7 @@ export default {
methods: { methods: {
onshow() { onshow() {
this.batchCode = localStorage.getItem("batchCode2"); this.batchCode = localStorage.getItem("batchCode2");
this.batchName = localStorage.getItem("batchName2");
this.kindergartenId = localStorage.getItem("kindergartenId"); this.kindergartenId = localStorage.getItem("kindergartenId");
if (localStorage.getItem("kindergartenName") == null) { if (localStorage.getItem("kindergartenName") == null) {
this.kindergartenName = "请选择幼儿园"; this.kindergartenName = "请选择幼儿园";
@ -251,8 +317,10 @@ export default {
// //
batchCodeclick(row) { batchCodeclick(row) {
this.batchCode = row.batchCode; this.batchCode = row.batchCode;
this.batchName = row.batchName;
this.batchCodeshow = false; this.batchCodeshow = false;
localStorage.setItem("batchCode2", this.batchCode); localStorage.setItem("batchCode2", this.batchCode);
localStorage.setItem("batchName2", this.batchName);
if (this.kindergartenId != "") { if (this.kindergartenId != "") {
this.$emit("kinbatlist", this.kindergartenId, this.batchCode, 2); this.$emit("kinbatlist", this.kindergartenId, this.batchCode, 2);
} }
@ -269,15 +337,46 @@ export default {
this.total4 = res.total; this.total4 = res.total;
}); });
}, },
testresetQuery() {
this.testqueryParams = {
pageNum: 1,
pageSize: 10,
batchCode:'',
batchName:'',
};
this.testScore();
},
// //
batchCodecancel() { batchCodecancel() {
this.batchCodeshow = false; this.batchCodeshow = false;
this.testresetQuery();
}, },
// //
kindergartencancel() { kindergartencancel() {
this.kindergartenshow = false; this.kindergartenshow = false;
this.kinresetQuery();
},
kinhandleQuery() {
//list
listKindergartenInfo(this.kqueryParams).then((response) => {
this.kindergartenList = response.rows;
this.total1 = response.total;
// console.log(this.kindergartenList);
});
},
kinresetQuery() {
this.kqueryParams = {
pageNum: 1,
pageSize: 10,
organizeId: null,
kindergartenName: null,
kindergartenAddress: null,
kindergartenType: null,
phone: null,
contacts: null,
};
this.kinhandleQuery();
}, },
getList() { getList() {
// //
getRoleInfo().then((res) => { getRoleInfo().then((res) => {

View File

@ -21,30 +21,31 @@
>{{ studentname }}</el-button >{{ studentname }}</el-button
> >
</el-form-item> </el-form-item>
<el-form-item label="批次成绩" prop="categoryName" label-width="70px"> <el-form-item label="所属批次" prop="categoryName" label-width="70px">
<el-button <el-button
@click="batchCodeshowclick" @click="batchCodeshowclick"
style="width: 250px; text-align: left; height: 32px; color: #c0c4cc" style="width: 250px; text-align: left; height: 32px; color: #c0c4cc"
v-if="batchCode == '请选择批次'" v-if="batchName == '请选择批次'"
>{{ batchCode }}</el-button >{{ batchName }}</el-button
> >
<el-button <el-button
@click="batchCodeshowclick" @click="batchCodeshowclick"
style="width: 250px; text-align: left; height: 32px" style="width: 250px; text-align: left; height: 32px"
v-else v-else
>{{ batchCode }}</el-button >{{ batchName }}</el-button
> >
</el-form-item> </el-form-item>
</el-form> </el-form>
<!-- // --> <!-- // -->
<el-dialog <el-dialog
width="880px" width="950px"
title="选择学生" title="选择学生"
:visible.sync="studentshow" :visible.sync="studentshow"
append-to-body append-to-body
:before-close="studentcancel" :before-close="studentcancel"
><el-form >
<el-form
ref="queryForm" ref="queryForm"
size="small" size="small"
:inline="true" :inline="true"
@ -55,32 +56,53 @@
<el-button <el-button
@click="kindergartenshow = true" @click="kindergartenshow = true"
v-if="kindergartenName == '请选择幼儿园'" v-if="kindergartenName == '请选择幼儿园'"
style="width: 250px; text-align: left; height: 32px; color: #c0c4cc" style="width: 200px; text-align: left; height: 32px; color: #c0c4cc"
>{{ kindergartenName }}</el-button >{{ kindergartenName }}</el-button
> >
<el-button <el-button
@click="kindergartenshow = true" @click="kindergartenshow = true"
style="width: 250px; text-align: left; height: 32px" style="width: 200px; text-align: left; height: 32px"
v-else v-else
>{{ kindergartenName }}</el-button >{{ kindergartenName }}</el-button
> >
</el-form-item> </el-form-item>
<el-form-item label="所属班级" prop="categoryName" label-width="70px"> <el-form-item label="所属班级" prop="categoryName" label-width="80px">
<el-button <el-button
@click="classshowclick" @click="classshowclick"
style="width: 250px; text-align: left; height: 32px; color: #c0c4cc" style="width: 200px; text-align: left; height: 32px; color: #c0c4cc"
v-if="className == '请选择班级'" v-if="className == '请选择班级'"
>{{ className }}</el-button >{{ className }}</el-button
> >
<el-button <el-button
@click="classshowclick" @click="classshowclick"
style="width: 250px; text-align: left; height: 32px" style="width: 200px; text-align: left; height: 32px"
v-else v-else
>{{ className }}</el-button >{{ className }}</el-button
> >
</el-form-item> </el-form-item>
<el-form-item label="学生姓名" prop="studentName" label-width="80px">
<el-input
style="width: 200px"
v-model="studentqueryParams.studentName"
placeholder="请输入学生姓名"
></el-input>
</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-form>
<el-table <el-table
:data="studentInfoList" :data="studentInfoList"
@ -151,7 +173,35 @@
append-to-body append-to-body
:before-close="kindergartencancel" :before-close="kindergartencancel"
> >
<el-table :data="kindergartenList" @cell-dblclick="kindergartenNameclick" > <el-form
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="110px"
>
<el-form-item label="幼儿园名称" prop="kindergartenName">
<el-input
style="width: 200px"
v-model="kqueryParams.kindergartenName"
placeholder="请输入幼儿园名称"
></el-input>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="kinhandleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="kinresetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-table :data="kindergartenList" @cell-dblclick="kindergartenNameclick">
<el-table-column label="请选择" width="70" align="center"> <el-table-column label="请选择" width="70" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -224,6 +274,34 @@
append-to-body append-to-body
:before-close="classcancel" :before-close="classcancel"
> >
<el-form
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="110px"
>
<el-form-item label="班级名称" prop="className">
<el-input
style="width: 200px"
v-model="classqueryParams.className"
placeholder="请输入班级名称"
></el-input>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="classhandleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="classresetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-table <el-table
:data="classinfoList" :data="classinfoList"
align="center" align="center"
@ -300,20 +378,56 @@
<!-- // --> <!-- // -->
<el-dialog <el-dialog
width="590px" width="700px"
title="选择批次" title="选择批次"
:visible.sync="batchCodeshow" :visible.sync="batchCodeshow"
append-to-body append-to-body
style="margin-top: 20px" style="margin-top: 20px"
:before-close="batchCodecancel" :before-close="batchCodecancel"
> >
<el-form
:model="testqueryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="90px"
>
<el-form-item label="批次编号" prop="batchCode">
<el-input
v-model="testqueryParams.batchCode"
placeholder="请输入批次编号"
clearable
/>
</el-form-item>
<el-form-item label="批次名称" prop="batchCode">
<el-input
v-model="testqueryParams.batchName"
placeholder="请输入批次名称"
clearable
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="testScore"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="testresetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-table <el-table
:data="testScorelist" :data="testScorelist"
align="center" align="center"
style="margin-top: 0px" style="margin-top: 0px"
@cell-dblclick="batchCodeclick" @cell-dblclick="batchCodeclick"
> >
<el-table-column label="请选择" width="100" align="center"> <el-table-column label="请选择" width="200" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
type="primary" type="primary"
@ -333,13 +447,13 @@
<el-table-column <el-table-column
property="batchCode" property="batchCode"
label="批次编号" label="批次编号"
width="200" width="230"
align="center" align="center"
/> />
<el-table-column <el-table-column
property="batchName" property="batchName"
label="批次名称" label="批次名称"
width="200" width="230"
align="center" align="center"
/> />
</el-table> </el-table>
@ -440,7 +554,8 @@ export default {
//ID //ID
studentId: "", studentId: "",
// //
batchCode: "请选择批次", batchCode: "",
batchName: "请选择批次",
//list //list
testScorelist: [], testScorelist: [],
// //
@ -458,13 +573,72 @@ export default {
this.onshow(); this.onshow();
}, },
methods: { methods: {
//
classresetQuery() {
this.classqueryParams.className = "";
this.classinfo();
},
classhandleQuery() {
this.classinfo();
},
//
kinresetQuery() {
this.kqueryParams = {
pageNum: 1,
pageSize: 10,
organizeId: null,
kindergartenName: null,
kindergartenAddress: null,
kindergartenType: null,
phone: null,
contacts: null,
};
this.kinhandleQuery();
},
kinhandleQuery() {
listKindergartenInfo(this.kqueryParams).then((response) => {
this.kindergartenList = response.rows;
this.total1 = response.total;
// console.log(this.kindergartenList);
});
},
//
resetQuery() {
this.kindergartenName = "请选择幼儿园";
this.kindergartenId = "";
this.className = "请选择班级";
this.classId = "";
this.studentname = "请选择学生";
this.studentId = "";
this.studentqueryParams = {
pageNum: 1,
pageSize: 10,
classId: "",
nationDictId: null,
studentName: null,
studentSex: null,
studentNumber: null,
birthDate: null,
cardNumber: null,
onceName: null,
homeAddress: null,
kindergartenId: null,
};
this.studentlist();
},
//
handleQuery() {
this.studentlist();
},
onshow() { onshow() {
this.batchCode = localStorage.getItem("batchCode"); this.batchCode = localStorage.getItem("batchCode");
this.studentId = localStorage.getItem("studentId"); this.studentId = localStorage.getItem("studentId");
this.batchName = localStorage.getItem("batchName");
console.log(localStorage.getItem("studentname")); console.log(localStorage.getItem("studentname"));
if (localStorage.getItem("batchCode") == null) { if (localStorage.getItem("batchCode") == null) {
this.batchCode = "请选择批次"; this.batchName = "请选择批次";
} else { } else {
this.batchCode = localStorage.getItem("batchCode"); this.batchCode = localStorage.getItem("batchCode");
} }
@ -491,8 +665,10 @@ export default {
batchCodeclick(row) { batchCodeclick(row) {
console.log(row); console.log(row);
this.batchCode = row.batchCode; this.batchCode = row.batchCode;
this.batchName = row.batchName;
this.batchCodeshow = false; this.batchCodeshow = false;
localStorage.setItem("batchCode", this.batchCode); localStorage.setItem("batchCode", this.batchCode);
localStorage.setItem("batchName", this.batchName);
if (this.studentId != "") { if (this.studentId != "") {
this.$emit("itemlist", this.studentId, this.batchCode); this.$emit("itemlist", this.studentId, this.batchCode);
} }
@ -504,6 +680,20 @@ export default {
this.total4 = res.total; this.total4 = res.total;
}); });
}, },
testresetQuery() {
this.testqueryParams = {
pageNum: 1,
pageSize: 10,
batchCode: "",
batchName: "",
};
this.testScore();
},
//
batchCodecancel() {
this.batchCodeshow = false;
this.testresetQuery();
},
// //
studentshowclick() { studentshowclick() {
this.studentshow = true; this.studentshow = true;
@ -542,10 +732,6 @@ export default {
} }
// console.log(this.classqueryParams); // console.log(this.classqueryParams);
}, },
//
batchCodecancel() {
this.batchCodeshow = false;
},
// //
studentcancel() { studentcancel() {
this.studentshow = false; this.studentshow = false;
@ -571,7 +757,6 @@ export default {
this.classshow = false; this.classshow = false;
this.studentname = "请选择学生"; this.studentname = "请选择学生";
this.studentId = ""; this.studentId = "";
this.studentlist();
}, },
// //
kindergartenNameclick(row) { kindergartenNameclick(row) {
@ -618,7 +803,6 @@ export default {
console.log(1, this.kindergartenName); console.log(1, this.kindergartenName);
return; return;
} else if (user.includes("parent")) { } else if (user.includes("parent")) {
return; return;
} }
}); });

View File

@ -28,85 +28,62 @@
@queryTable="getList" @queryTable="getList"
></right-toolbar> ></right-toolbar>
</el-row> </el-row>
<div v-if="itemshow" style="width:1361px;margin: 10px auto"> <el-row :gutter="24">
<el-table <div v-if="itemshow" style="margin: 10px auto; width: 100%">
:data="actionlist" <el-table
border :data="actionlist"
:span-method="arraySpanMethod" border
style="width:100%" :span-method="arraySpanMethod"
> style="width: 95%; margin: 0 auto"
<el-table-column
prop="categoryName"
label="测试分类"
width="140"
align="center"
> >
</el-table-column> <el-table-column prop="categoryName" label="测试分类" align="center">
<el-table-column </el-table-column>
prop="itemName" <el-table-column prop="itemName" label="测试项目" align="center">
label="测试项目" </el-table-column>
width="135" <el-table-column
align="center" prop="itemFraction"
> label="动作技能总分"
</el-table-column> align="center"
<el-table-column >
prop="itemFraction" </el-table-column>
label="动作技能总分" <el-table-column
width="115" prop="unifiedStandardScore"
align="center" label="统一最高得分"
> align="center"
</el-table-column> >
<el-table-column </el-table-column>
prop="unifiedStandardScore" <el-table-column
label="统一最高得分" prop="smallStandardScore"
width="115" label="小班最高得分"
align="center" align="center"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="smallStandardScore" prop="middleStandardScore"
label="小班最高得分" label="中班最高得分"
width="115" align="center"
align="center" >
> </el-table-column>
</el-table-column> <el-table-column
<el-table-column prop="largeStandardScore"
prop="middleStandardScore" label="大班最高得分"
label="中班最高得分" align="center"
width="115" >
align="center" </el-table-column>
> <el-table-column prop="itemScoreAll" label="综合得分" align="center">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="largeStandardScore" prop="syntheticalAssess"
label="大班最高得分" label="综合评价"
width="115" align="center"
align="center" >
> </el-table-column>
</el-table-column> <el-table-column prop="remark" label="测试目的" align="center">
<el-table-column </el-table-column>
prop="itemScoreAll" </el-table>
label="综合得分" </div>
width="160" </el-row>
align="center"
>
</el-table-column>
<el-table-column
prop="syntheticalAssess"
label="综合评价"
width="170"
align="center"
>
</el-table-column>
<el-table-column
prop="remark"
label="测试目的"
width="180"
align="center"
>
</el-table-column>
</el-table>
</div>
<el-row :gutter="20" v-if="itemshow2"> <el-row :gutter="20" v-if="itemshow2">
<el-col :span="24" :offset="0"> <el-col :span="24" :offset="0">
<el-card> <el-card>

View File

@ -127,21 +127,22 @@
<el-row v-show="itemshow"> <el-row v-show="itemshow">
<el-col :span="24" :offset="0"> <el-col :span="24" :offset="0">
<div style="margin: 0 auto"> <div style="margin: 0 autu; font-size: 14px">
<div <div
style=" style="
line-height: 60px;
display: flex; display: flex;
text-align: center; text-align: center;
justify-content: center; justify-content: center;
color: #fff; color: black;
font-weight:550;
" "
> >
<div <div
style=" style="
width: 120px; width: 120px;
line-height: 60px;
border: 1px solid #f0f0f0; border: 1px solid #f0f0f0;
background: #3c9299; background: #F5F7FA;
" "
> >
年龄 年龄
@ -149,9 +150,8 @@
<div <div
style=" style="
width: 120px; width: 120px;
line-height: 60px;
border: 1px solid #f0f0f0; border: 1px solid #f0f0f0;
background: #3c9299; background: #F5F7FA;
" "
> >
平均总分 平均总分
@ -162,7 +162,7 @@
text-align: center; text-align: center;
line-height: 30px; line-height: 30px;
border: 1px solid #f0f0f0; border: 1px solid #f0f0f0;
background: #3c9299; background: #F5F7FA;
" "
> >
{{ item.parentName }} {{ item.parentName }}
@ -172,8 +172,8 @@
display: flex; display: flex;
line-height: 30px; line-height: 30px;
border: 1px solid #f0f0f0; border: 1px solid #f0f0f0;
background: #3c9299; background: #F5F7FA;
font-size: 14px; font-size: 12px;
" "
> >
<div <div
@ -186,28 +186,26 @@
</div> </div>
</div> </div>
</div> </div>
<div style="font-size:15px"> <div style="font-size: 14px">
<div <div
style="text-align: center; display: flex; justify-content: center" style="
text-align: center;
display: flex;
justify-content: center;
line-height: 50px;
"
v-for="item in categoryScoreList" v-for="item in categoryScoreList"
:key="item.prentId" :key="item.prentId"
> >
<div <div
style=" style="
width: 120px; width: 120px;
line-height: 60px;
border: 1px solid #f0f0f0; border: 1px solid #f0f0f0;
" "
> >
{{ item.className }} {{ item.className }}
</div> </div>
<div <div style="width: 120px; border: 1px solid #f0f0f0">
style="
width: 120px;
line-height: 60px;
border: 1px solid #f0f0f0;
"
>
{{ item.totalAvScore }} {{ item.totalAvScore }}
</div> </div>
<div> <div>

View File

@ -195,7 +195,6 @@
v-model="form.parentId" v-model="form.parentId"
/> />
</el-form-item> </el-form-item>
<!-- <el-form-item label="所属上级" prop="parentId"> <!-- <el-form-item label="所属上级" prop="parentId">
<el-input v-model="form.parentId" placeholder="请输入父级id" /> <el-input v-model="form.parentId" placeholder="请输入父级id" />
</el-form-item> --> </el-form-item> -->
@ -213,7 +212,6 @@
maxlength="80" maxlength="80"
/> />
</el-form-item> </el-form-item>
<el-form-item label="测试分类得分" prop="testItemLevelList"> <el-form-item label="测试分类得分" prop="testItemLevelList">
<div <div
v-for="(item, index) in form.testItemLevelList" v-for="(item, index) in form.testItemLevelList"
@ -256,7 +254,6 @@
></el-button> ></el-button>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="分类排序" prop="sorting"> <el-form-item label="分类排序" prop="sorting">
<el-input <el-input
v-model="form.sorting" v-model="form.sorting"
@ -297,7 +294,6 @@ export default {
data() { data() {
var roleMoeny = (rule, value, callback) => { var roleMoeny = (rule, value, callback) => {
var str = this.form.sorting; var str = this.form.sorting;
if (Number.isNaN(Number.parseFloat(str))) { if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入分类排序")); callback(new Error("请输入分类排序"));
} else if (str.length == 0) { } else if (str.length == 0) {
@ -306,39 +302,36 @@ export default {
callback(); callback();
} }
}; };
let testItemLevelList = (rule, value, callback) => { let ItemLevelList = (rule, value, callback) => {
let min = value for (let i = 0; i < value.length; i++) {
.map((e) => { console.log(value[i].levelMinScore > value[i].levelMaxScore);
return e.levelMinScore; if (value[i].levelMinScore > value[i].levelMaxScore) {
})
.toString();
let max = value
.map((e) => {
return e.levelMaxScore;
})
.toString();
console.log(min, max);
if (Number(max) < Number(min)) {
if (max && min && max < min) {
callback(new Error("最高分必须大于最低分,请重新填写!")); callback(new Error("最高分必须大于最低分,请重新填写!"));
} else if (value[i].levelName == "") {
callback();
} else if (value[i].levelMinScore == "") {
callback();
} else if (value[i].levelMaxScore == "") {
callback();
} else { } else {
console.log(min, max); callback();
} }
} }
if ( // value.for((e) => {
value.map((e) => { // console.log(e.levelMinScore, e.levelMaxScore);
return e.levelName; // console.log(e.levelMinScore > e.levelMaxScore);
}) == "" // if (e.levelMinScore > e.levelMaxScore) {
) { // callback(new Error(","));
callback(); // } else if (e.levelName == "") {
} else if (min == "") { // callback();
callback(); // } else if (e.levelMinScore == "") {
} else if (max == "") { // callback();
callback(); // } else if (e.levelMaxScore == "") {
} else { // callback();
callback(); // } else {
} // callback();
// }
// });
}; };
return { return {
// //
@ -379,7 +372,7 @@ export default {
testItemLevelList: [ testItemLevelList: [
{ {
// required: true, // required: true,
validator: testItemLevelList, validator: ItemLevelList,
trigger: "blur", trigger: "blur",
}, },
], ],

View File

@ -1,4 +1,4 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form <el-form
ref="queryForm" ref="queryForm"
@ -109,22 +109,26 @@
<div <div
ref="chart" ref="chart"
id="chart" id="chart"
style="width: 1000px; height: 600px; margin: 0 auto" style="width: 600px; height: 600px; margin: 0 auto"
></div> ></div>
</div> </div>
</el-col> </el-col>
<el-col :span="24" :offset="0"> <el-col :span="24" :offset="0">
<div style="margin: 0 auto"> <div style="margin: 0 auto">
<div <div
style="display: flex; text-align: center; justify-content: center" style="
display: flex;
text-align: center;
justify-content: center;
color: black;
"
> >
<div <div
style=" style="
width: 120px; width: 120px;
line-height: 60px; line-height: 60px;
border: 1px solid #f0f0f0; border: 1px solid #f0f0f0;
background: #27848b; background: #f5f7fa;
color: #fff;
" "
> >
年龄 年龄
@ -134,8 +138,8 @@
width: 120px; width: 120px;
line-height: 60px; line-height: 60px;
border: 1px solid #f0f0f0; border: 1px solid #f0f0f0;
background: #27848b; background: #f5f7fa;
color: #fff; color: black;
" "
> >
平均总分 平均总分
@ -146,8 +150,8 @@
text-align: center; text-align: center;
line-height: 30px; line-height: 30px;
border: 1px solid #f0f0f0; border: 1px solid #f0f0f0;
background: #27848b; background: #f5f7fa;
color: #fff; color: black;
" "
> >
{{ item.parentName }} {{ item.parentName }}
@ -157,8 +161,8 @@
display: flex; display: flex;
line-height: 30px; line-height: 30px;
border: 1px solid #f0f0f0; border: 1px solid #f0f0f0;
background: #27848b; background: #f5f7fa;
color: #fff; color: black;
" "
> >
<div <div
@ -173,14 +177,19 @@
</div> </div>
<div> <div>
<div <div
style="text-align: center; display: flex; justify-content: center" style="
text-align: center;
display: flex;
justify-content: center;
font-size: 14px;
"
v-for="item in categoryAgeFractionList" v-for="item in categoryAgeFractionList"
:key="item.prentId" :key="item.prentId"
> >
<div <div
style=" style="
width: 120px; width: 120px;
line-height: 60px; line-height: 50px;
border: 1px solid #f0f0f0; border: 1px solid #f0f0f0;
" "
> >
@ -189,14 +198,14 @@
<div <div
style=" style="
width: 120px; width: 120px;
line-height: 60px; line-height: 50px;
border: 1px solid #f0f0f0; border: 1px solid #f0f0f0;
" "
> >
{{ item.totalAvgFraction }} {{ item.totalAvgFraction }}
</div> </div>
<div> <div>
<div style="display: flex; line-height: 60px"> <div style="display: flex; line-height: 50px">
<div <div
v-for="uitem in item.list" v-for="uitem in item.list"
:key="uitem.categoryId" :key="uitem.categoryId"
@ -280,10 +289,10 @@ export default {
kinbatlist(kin, batchCode) { kinbatlist(kin, batchCode) {
console.log(kin); console.log(kin);
var a = kin; var a = kin;
console.log(a) console.log(a);
this.analysisqueryParams.kindergartenId = a; this.analysisqueryParams.kindergartenId = a;
this.analysisqueryParams.batchCode = batchCode; this.analysisqueryParams.batchCode = batchCode;
console.log(this.analysisqueryParams) console.log(this.analysisqueryParams);
}, },
analysisinfo() { analysisinfo() {
@ -442,7 +451,7 @@ export default {
/* width: 70%; */ /* width: 70%; */
margin: 0 auto; margin: 0 auto;
/* background-color: #f0f0f0; */ /* background-color: #f0f0f0; */
color: #27848B; color: #27848b;
} }
::v-deep .el-form { ::v-deep .el-form {
display: inline; display: inline;

View File

@ -32,9 +32,7 @@
class="box-card" class="box-card"
style="width: 95%; margin: 0 auto" style="width: 95%; margin: 0 auto"
> >
<div slot="header" style="text-align: center; "> <div slot="header" style="text-align: center">身体素质测试</div>
身体素质测试
</div>
<el-row style="text-align: center"> <el-row style="text-align: center">
<el-col <el-col
:span="5" :span="5"
@ -141,10 +139,15 @@
left: 75%; left: 75%;
line-height: 20px; line-height: 20px;
overflow: hidden; overflow: hidden;
width: 32px; width: 40px;
" "
> >
{{ ((item.maxScore - item.minScore) / 5) * 4 + item.minScore }} {{
(
((item.maxScore - item.minScore) / 5) * 4 +
item.minScore
).toFixed(1)
}}
</div> </div>
<div <div
style=" style="
@ -163,10 +166,15 @@
left: 55%; left: 55%;
overflow: hidden; overflow: hidden;
line-height: 20px; line-height: 20px;
width: 32px; width: 40px;
" "
> >
{{ ((item.maxScore - item.minScore) / 5) * 3 + item.minScore }} {{
(
((item.maxScore - item.minScore) / 5) * 3 +
item.minScore
).toFixed(1)
}}
</div> </div>
<div <div
style=" style="
@ -185,10 +193,15 @@
left: 35%; left: 35%;
line-height: 20px; line-height: 20px;
overflow: hidden; overflow: hidden;
width: 32px; width: 40px;
" "
> >
{{ ((item.maxScore - item.minScore) / 5) * 2 + item.minScore }} {{
(
((item.maxScore - item.minScore) / 5) * 2 +
item.minScore
).toFixed(1)
}}
</div> </div>
<div <div
style=" style="
@ -208,10 +221,15 @@
left: 15%; left: 15%;
line-height: 20px; line-height: 20px;
overflow: hidden; overflow: hidden;
width: 32px; width: 40px;
" "
> >
{{ ((item.maxScore - item.minScore) / 5) * 1 + item.minScore }} {{
(
((item.maxScore - item.minScore) / 5) * 1 +
item.minScore
).toFixed(1)
}}
</div> </div>
<div <div
style=" style="
@ -355,7 +373,7 @@ export default {
// //
studentscore: { studentscore: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 999,
studentId: "", studentId: "",
batchCode: "", batchCode: "",
// studentId: "27", // studentId: "27",
@ -421,7 +439,7 @@ export default {
</script> </script>
<style scoped='scss'> <style scoped='scss'>
.text { .text {
font-size:14px font-size: 14px;
} }
.toptitle { .toptitle {
height: 50px; height: 50px;

View File

@ -58,6 +58,7 @@
<el-form-item label="身份证号" prop="cardNumber"> <el-form-item label="身份证号" prop="cardNumber">
<el-input <el-input
v-model="queryParams.cardNumber" v-model="queryParams.cardNumber"
maxlength="18"
placeholder="请输入身份证号" placeholder="请输入身份证号"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
@ -390,6 +391,7 @@
<el-form-item label="身份证号" prop="cardNumber"> <el-form-item label="身份证号" prop="cardNumber">
<el-input <el-input
style="width: 380px" style="width: 380px"
maxlength="18"
v-model="form.cardNumber" v-model="form.cardNumber"
placeholder="请输入身份证号" placeholder="请输入身份证号"
/> />
@ -1088,6 +1090,11 @@ export default {
message: "", message: "",
}, },
], ],
homeAddress:[
{
required: true, message: "请输入家庭住址", trigger: "blur"
}
],
birthDate: [ birthDate: [
{ required: true, message: "请选择日期", trigger: "change" }, { required: true, message: "请选择日期", trigger: "change" },
], ],
@ -1280,6 +1287,7 @@ export default {
this.parentInfoId = ""; this.parentInfoId = "";
this.classinfoName = "请选择所属班级"; this.classinfoName = "请选择所属班级";
this.classinfoId = ""; this.classinfoId = "";
this.kindergartenName="请选择所在幼儿园";
this.open = true; this.open = true;
this.title = "添加学生信息"; this.title = "添加学生信息";
}, },
@ -1369,6 +1377,7 @@ export default {
this.form2.nationDictId = this.form.nationDictId; this.form2.nationDictId = this.form.nationDictId;
this.form2.studentName = this.form.studentName; this.form2.studentName = this.form.studentName;
this.form2.kindergartenId = this.form.kindergartenId;
this.form2.studentSex = this.form.studentSex; this.form2.studentSex = this.form.studentSex;
this.form2.studentNumber = this.form.studentNumber; this.form2.studentNumber = this.form.studentNumber;
this.form2.birthDate = this.form.birthDate; this.form2.birthDate = this.form.birthDate;
@ -1565,7 +1574,7 @@ export default {
this.parent2 = ""; this.parent2 = "";
this.classinfoName = "请选择所属班级"; this.classinfoName = "请选择所属班级";
this.classinfoId = ""; this.classinfoId = "";
this.kindergartenid = ""; this.kindergartenName = "";
this.kindergartenName = "请选择所在幼儿园"; this.kindergartenName = "请选择所在幼儿园";
this.tags = []; this.tags = [];
console.log(this.tags); console.log(this.tags);
@ -1722,6 +1731,7 @@ export default {
this.parent2 = ""; this.parent2 = "";
this.parentlist = []; this.parentlist = [];
this.tags = []; this.tags = [];
}); });
} }
} }

View File

@ -390,7 +390,7 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="排序" prop="sorting"> <!-- <el-form-item label="排序" prop="sorting">
<el-input <el-input
style="width: 180px" style="width: 180px"
v-model="queryParams2.sorting" v-model="queryParams2.sorting"
@ -398,7 +398,7 @@
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item> -->
<el-form-item> <el-form-item>
<el-button <el-button
type="primary" type="primary"
@ -459,7 +459,7 @@
<el-table-column label="项目名称" align="center" prop="itemName" /> <el-table-column label="项目名称" align="center" prop="itemName" />
<el-table-column label="项目编号" align="center" prop="itemCode" /> <el-table-column label="项目编号" align="center" prop="itemCode" />
<el-table-column label="项目内容" align="center" prop="itemContent" /> <el-table-column label="项目内容" align="center" prop="itemContent" />
<el-table-column label="项目概述" align="center" prop="remark" /> <!-- <el-table-column label="项目概述" align="center" prop="remark" />
<el-table-column <el-table-column
label="项目度量单位" label="项目度量单位"
align="center" align="center"
@ -485,7 +485,7 @@
align="center" align="center"
prop="unifiedStandardScore" prop="unifiedStandardScore"
/> />
<el-table-column label="排序" align="center" prop="sorting" /> <el-table-column label="排序" align="center" prop="sorting" /> -->
</el-table> </el-table>
<pagination <pagination

View File

@ -362,6 +362,14 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="测试项目编号" prop="itemCode" label-width="90">
<el-input
v-model="queryParams2.itemCode"
placeholder="请输入测试项目编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button
type="primary" type="primary"

View File

@ -32,10 +32,10 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="批次编号" prop="batchCode"> <el-form-item label="批次名称" prop="batchCode">
<el-input <el-input
v-model="queryParams.batchCode" v-model="queryParams.batchName"
placeholder="请输入批次编号" placeholder="请输入批次名称"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@ -74,7 +74,7 @@
icon="el-icon-edit" icon="el-icon-edit"
size="mini" size="mini"
:disabled="single" :disabled="single"
@click="handleUpdate" @click="handleUpdate2"
v-hasPermi="['system:testItemScore:edit']" v-hasPermi="['system:testItemScore:edit']"
>修改</el-button >修改</el-button
> >
@ -112,7 +112,6 @@
v-loading="loading" v-loading="loading"
:data="testItemScoreList" :data="testItemScoreList"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
@row-dblclick="seepraent"
ref="table" ref="table"
> >
<el-table-column type="selection" width="50" align="center" /> <el-table-column type="selection" width="50" align="center" />
@ -176,7 +175,7 @@
<el-dialog <el-dialog
:title="title" :title="title"
:visible.sync="open" :visible.sync="open"
width="1000px" width="1300px"
append-to-body append-to-body
:before-close="cancel" :before-close="cancel"
> >
@ -184,7 +183,7 @@
ref="form" ref="form"
:model="form" :model="form"
:rules="rules" :rules="rules"
label-width="110px" label-width="105px"
:inline="true" :inline="true"
> >
<el-form-item label="所属幼儿园" prop="classId" v-if="form.id == ''"> <el-form-item label="所属幼儿园" prop="classId" v-if="form.id == ''">
@ -211,12 +210,20 @@
text-align: left; text-align: left;
height: 36px; height: 36px;
padding-left: -10px; padding-left: -10px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
" "
>{{ kindergartenName }}</el-button >{{ kindergartenName }}</el-button
> >
</el-form-item> </el-form-item>
<el-form-item label="所属班级" prop="classId" v-if="form.id == ''"> <el-form-item
label="所属班级"
prop="classId"
v-if="form.id == ''"
label-width="90px"
>
<el-button <el-button
type="" type=""
@click="handleQuery2" @click="handleQuery2"
@ -240,11 +247,19 @@
text-align: left; text-align: left;
height: 36px; height: 36px;
padding-left: -10px; padding-left: -10px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
" "
>{{ xmname }}</el-button >{{ xmname }}</el-button
> >
</el-form-item> </el-form-item>
<el-form-item label="学生姓名" prop="studentId" v-if="form.id == null"> <el-form-item
label="学生姓名"
prop="studentId"
v-if="form.id == null"
label-width="90px"
>
<el-button <el-button
disabled disabled
type="" type=""
@ -257,7 +272,12 @@
>{{ stname }}</el-button >{{ stname }}</el-button
> >
</el-form-item> </el-form-item>
<el-form-item label="学生姓名" prop="studentId" v-else> <el-form-item
label="学生姓名"
prop="studentId"
v-else
label-width="90px"
>
<el-button <el-button
this.stname="row.studentName;" this.stname="row.studentName;"
type="" type=""
@ -286,7 +306,12 @@
>{{ stname }}</el-button >{{ stname }}</el-button
> >
</el-form-item> </el-form-item>
<el-form-item label="批次编号" prop="batchCode" v-if="form.id == null"> <el-form-item
label="所属批次"
prop="batchCode"
v-if="form.id == null"
label-width="90px"
>
<el-button <el-button
type="" type=""
disabled disabled
@ -299,7 +324,12 @@
>{{ itemNumbername }}</el-button >{{ itemNumbername }}</el-button
> >
</el-form-item> </el-form-item>
<el-form-item label="批次编号" prop="batchCode" v-else> <el-form-item
label="所属批次"
prop="batchCode"
v-else
label-width="90px"
>
<el-button <el-button
this.itemNumbername="row.batchCode;" this.itemNumbername="row.batchCode;"
type="" type=""
@ -318,6 +348,146 @@
type="" type=""
@click="testclick" @click="testclick"
v-else v-else
style="
width: 200px;
text-align: left;
height: 36px;
padding-left: -10px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
"
>{{ itemNumbername }}</el-button
>
</el-form-item>
</el-form>
<el-table
ref="singleTable"
:data="form.itemScoreList"
style="width: 93%; margin: 20px auto"
>
<el-table-column
property="itemCode"
label="项目编号"
width="230"
align="center"
>
</el-table-column>
<el-table-column
property="itemName"
label="项目名称"
width="230"
align="center"
>
</el-table-column>
<!-- <el-table-column
property="scoreDictId"
label="字典类型"
align="center"
width="120"
>
<template slot-scope="scope">
{{
scope.row.scoreDictId == ResultType1.dictCode
? ResultType1.dictLabel
: ""
}}{{
scope.row.scoreDictId == ResultType2.dictCode
? ResultType2.dictLabel
: ""
}}</template
>
</el-table-column> -->
<el-table-column
property="itemScore"
label="个人成绩"
width="230"
align="center"
>
<template slot-scope="scope">
<el-input
type="number"
v-model="scope.row.itemScore"
v-if="
scope.row.itemScore != null ||
scope.row.scoreDictId == ResultType1.dictCode
"
></el-input>
<el-input
v-model="scope.row.scoreDictValue"
v-if="
scope.row.scoreDictValue != null ||
scope.row.scoreDictId == ResultType2.dictCode
"
></el-input>
</template>
</el-table-column>
<el-table-column
property="itemFraction"
label="个人成绩得分"
width="230"
align="center"
>
<template slot-scope="scope">
<el-input type="number" v-model="scope.row.itemFraction"></el-input>
</template>
</el-table-column>
<el-table-column
property="syntheticalAssess"
label="综合评价"
width="230"
align="center"
>
<template slot-scope="scope">
<el-input v-model="scope.row.syntheticalAssess"></el-input>
</template>
</el-table-column>
</el-table>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!-- // -->
<el-dialog
:title="title"
:visible.sync="open2"
width="1000px"
append-to-body
:before-close="cancel"
>
<el-form
ref="form"
:model="form"
:rules="rules"
label-width="105px"
:inline="true"
>
<el-form-item label="学生姓名" prop="studentId" label-width="90px">
<el-button
disabled
type=""
style="
width: 200px;
text-align: left;
height: 36px;
padding-left: -10px;
"
>{{ stname }}</el-button
>
</el-form-item>
<el-form-item
label="所属批次"
prop="batchCode"
v-if="form.id == null"
label-width="90px"
>
<el-button
type=""
disabled
style=" style="
width: 200px; width: 200px;
text-align: left; text-align: left;
@ -417,7 +587,6 @@
<el-button @click="cancel"> </el-button> <el-button @click="cancel"> </el-button>
</div> </div>
</el-dialog> </el-dialog>
<!-- // --> <!-- // -->
<el-dialog <el-dialog
width="850px" width="850px"
@ -426,8 +595,37 @@
append-to-body append-to-body
:before-close="kindergartencancel" :before-close="kindergartencancel"
> >
<el-table :data="kindergartenList" <el-form
@cell-dblclick="kindergartenNameclick"> :model="kqueryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="100px"
>
<el-form-item label="幼儿园名称" prop="className">
<el-input
v-model="kqueryParams.kindergartenName"
placeholder="请输入幼儿园名称"
clearable
@keyup.enter.native="kinhandleQuery"
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="kinhandleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="kinresetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-table :data="kindergartenList" @cell-dblclick="kindergartenNameclick">
<el-table-column label="请选择" width="70" align="center"> <el-table-column label="请选择" width="70" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -488,7 +686,7 @@
:total="total6" :total="total6"
:page.sync="kqueryParams.pageNum" :page.sync="kqueryParams.pageNum"
:limit.sync="kqueryParams.pageSize" :limit.sync="kqueryParams.pageSize"
@pagination="getList" @pagination="kininfo"
/> />
</el-dialog> </el-dialog>
@ -511,9 +709,9 @@
<el-form-item label="班级名称" prop="className"> <el-form-item label="班级名称" prop="className">
<el-input <el-input
v-model="queryParams2.className" v-model="queryParams2.className"
placeholder="请输入项目名称" placeholder="请输入班级名称"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery2"
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -524,12 +722,12 @@
@click="handleQuery2" @click="handleQuery2"
>搜索</el-button >搜索</el-button
> >
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery" <el-button icon="el-icon-refresh" size="mini" @click="classresetQuery"
>重置</el-button >重置</el-button
> >
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table :data="classInfos"> <el-table :data="classInfos" @cell-dblclick="xmclick">
<el-table-column label="请选择" width="70" align="center"> <el-table-column label="请选择" width="70" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -625,7 +823,7 @@
:total="total2" :total="total2"
:page.sync="queryParams2.pageNum" :page.sync="queryParams2.pageNum"
:limit.sync="queryParams2.pageSize" :limit.sync="queryParams2.pageSize"
@pagination="getList" @pagination="classinfo"
/> />
</el-dialog> </el-dialog>
@ -665,7 +863,7 @@
> >
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table :data="studentInfos"> <el-table :data="studentInfos" @cell-dblclick="studentclick">
<el-table-column label="请选择" width="70" align="center"> <el-table-column label="请选择" width="70" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -781,7 +979,7 @@
:total="total3" :total="total3"
:page.sync="queryParams3.pageNum" :page.sync="queryParams3.pageNum"
:limit.sync="queryParams3.pageSize" :limit.sync="queryParams3.pageSize"
@pagination="getList" @pagination="studentinfo"
/> />
</el-dialog> </el-dialog>
@ -789,7 +987,7 @@
<el-dialog <el-dialog
width="850px" width="850px"
title="选择批次编号" title="选择所属批次"
:visible.sync="innerVisible4" :visible.sync="innerVisible4"
append-to-body append-to-body
> >
@ -809,6 +1007,14 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="批次名称" prop="batchCode">
<el-input
v-model="queryParams5.batchName"
placeholder="请输入批次名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button
type="primary" type="primary"
@ -822,7 +1028,7 @@
> >
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table :data="testScoreBatchs"> <el-table :data="testScoreBatchs" @cell-dblclick="batchCodeclick">
<el-table-column label="请选择" width="70" align="center"> <el-table-column label="请选择" width="70" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -1086,6 +1292,7 @@ export default {
title: "", title: "",
// //
open: false, open: false,
open2: false,
itemId2: "", itemId2: "",
itemId3: "", itemId3: "",
// //
@ -1117,6 +1324,7 @@ export default {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
batchCode: null, batchCode: null,
batchName: "",
}, },
addqueryParams: { addqueryParams: {
studentId: "", studentId: "",
@ -1145,6 +1353,7 @@ export default {
], ],
}, },
testitems: [], testitems: [],
selection2: {},
}; };
}, },
created() { created() {
@ -1160,7 +1369,7 @@ export default {
seepraent(row) { seepraent(row) {
this.reset(); this.reset();
getAllTestItemScoreInfo(row).then((res) => { getAllTestItemScoreInfo(row).then((res) => {
console.log(res) console.log(res);
this.getAllTestItemScore = res.data; this.getAllTestItemScore = res.data;
console.log(this.getAllTestItemScore); console.log(this.getAllTestItemScore);
this.innerVisible5 = true; this.innerVisible5 = true;
@ -1198,6 +1407,9 @@ export default {
this.itemId2 = ""; this.itemId2 = "";
this.itemId3 = ""; this.itemId3 = "";
this.form.classId = null; this.form.classId = null;
this.queryParams3.classId = "";
this.addqueryParams.studentId = "";
console.log(this.queryParams3);
this.form.studentId = null; this.form.studentId = null;
}, },
// //
@ -1216,7 +1428,9 @@ export default {
this.queryParams3.classId = row.id; this.queryParams3.classId = row.id;
this.stname = "请选择学生姓名"; this.stname = "请选择学生姓名";
this.itemId3 = ""; this.itemId3 = "";
this.addqueryParams.studentId = "";
this.form.studentId = null; this.form.studentId = null;
console.log(this.addqueryParams);
}, },
// //
studentinfoclick() { studentinfoclick() {
@ -1290,6 +1504,7 @@ export default {
// //
cancel() { cancel() {
this.open = false; this.open = false;
this.open2 = false;
this.reset(); this.reset();
this.kindergartenName = "请选择幼儿园"; this.kindergartenName = "请选择幼儿园";
this.kindergartenId = ""; this.kindergartenId = "";
@ -1309,8 +1524,8 @@ export default {
studentId: null, studentId: null,
batchCode: null, batchCode: null,
itemScoreList: [], itemScoreList: [],
batchId:null, batchId: null,
batchCode:null, batchCode: null,
}; };
this.resetForm("form"); this.resetForm("form");
}, },
@ -1321,49 +1536,110 @@ export default {
if (this.queryParams2.kindergartenId == "") { if (this.queryParams2.kindergartenId == "") {
this.$message.error("请先选择幼儿园"); this.$message.error("请先选择幼儿园");
} else { } else {
classInfo(this.queryParams2).then((response) => { this.classinfo();
this.classInfos = response.rows; this.innerVisible = true;
this.total = response.total; this.loading = false;
this.loading = false;
this.innerVisible = true;
});
} }
}, },
// //
studentinfo() {
studentInfo(this.queryParams3).then((response) => {
this.studentInfos = response.rows;
this.total3 = response.total;
});
},
handleQuery3() { handleQuery3() {
this.queryParams3.pageNum = 1; this.queryParams3.pageNum = 1;
studentInfo(this.queryParams).then((response) => { this.studentinfo();
this.studentInfo = response.rows; this.loading = false;
this.total = response.total;
this.loading = false;
this.getList();
});
}, },
// //
handleQuery5() { handleQuery5() {
this.queryParams5.pageNum = 1; this.queryParams5.pageNum = 1;
testScoreBatch(this.queryParams).then((response) => { testScoreBatch(this.queryParams5).then((response) => {
this.testScoreBatch = response.rows; this.testScoreBatchs = response.rows;
this.total = response.total; this.total5 = response.total;
this.loading = false; this.loading = false;
this.getList();
}); });
}, },
kinhandleQuery() {
listKindergartenInfo(this.kqueryParams).then((response) => {
this.kindergartenList = response.rows;
this.total6 = response.total;
});
},
handleQuery() { handleQuery() {
this.queryParams.pageNum = 1; this.queryParams.pageNum = 1;
this.getList(); listTestItemScore(this.queryParams).then((response) => {
this.testItemScoreList = response.rows;
this.total = response.total;
this.loading = false;
});
}, },
/** 重置按钮操作 */ /** 重置按钮操作 */
classinfo() {
classInfo(this.queryParams2).then((response) => {
this.classInfos = response.rows;
this.total2 = response.total;
this.queryParams3.studentName = null;
});
},
classresetQuery() {
this.queryParams2.className = null;
this.queryParams3.classId == "";
this.classinfo();
},
kininfo() {
listKindergartenInfo(this.kqueryParams).then((response) => {
this.kindergartenList = response.rows;
this.total6 = response.total;
});
},
kinresetQuery() {
this.kqueryParams.kindergartenName = "";
this.queryParams2.kindergartenId = "";
},
resetQuery() { resetQuery() {
this.resetForm("queryForm"); this.resetForm("queryForm");
this.kqueryParams.kindergartenName = "";
//
this.queryParams2.className = null;
//
this.queryParams5 = {
pageNum: 1,
pageSize: 10,
batchCode: null,
batchName: "",
};
this.queryParams = {
pageNum: 1,
pageSize: 10,
className: null,
studentName: null,
itemName: null,
batchCode: null,
};
this.handleQuery(); this.handleQuery();
this.queryParams.className = "";
studentInfo(this.queryParams3).then((response) => {
this.studentInfos = response.rows;
this.total3 = response.total;
});
}, },
// //
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id); this.ids = selection.map((item) => item.id);
this.single = selection.length !== 1; this.single = selection.length !== 1;
this.multiple = !selection.length; this.multiple = !selection.length;
if (selection.length == 1) {
console.log(selection.studentId);
selection.forEach((e) => {
this.selection2.studentId = e.studentId;
this.selection2.batchCode = e.batchCode;
});
}
console.log(this.selection2);
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
handleAdd() { handleAdd() {
@ -1374,6 +1650,21 @@ export default {
this.title = "添加个人成绩录入管理"; this.title = "添加个人成绩录入管理";
}, },
/** 修改按钮操作 */ /** 修改按钮操作 */
handleUpdate2() {
this.reset();
getTestItemScore(this.selection2).then((response) => {
console.log();
this.form = response.data;
this.open2 = true;
this.queryParams3.classId = response.data.classId;
this.stname = response.data.studentName;
this.itemId3 = response.data.studentId;
this.addqueryParams.studentId = response.data.studentId;
this.itemNumbername = response.data.batchCode;
console.log(this.form);
});
},
handleUpdate(row) { handleUpdate(row) {
this.reset(); this.reset();
const id = row.id || this.ids; const id = row.id || this.ids;
@ -1382,10 +1673,11 @@ export default {
batchCode: row.batchCode, batchCode: row.batchCode,
}; };
this.form.itemScoreList = []; this.form.itemScoreList = [];
console.log(list);
getTestItemScore(list).then((response) => { getTestItemScore(list).then((response) => {
console.log(); console.log();
this.form = response.data; this.form = response.data;
this.open = true; this.open2 = true;
this.queryParams3.classId = response.data.classId; this.queryParams3.classId = response.data.classId;
this.stname = response.data.studentName; this.stname = response.data.studentName;
this.itemId3 = response.data.studentId; this.itemId3 = response.data.studentId;
@ -1401,7 +1693,7 @@ export default {
if (this.form.id == null) { if (this.form.id == null) {
updateTestItemScore(this.form).then((response) => { updateTestItemScore(this.form).then((response) => {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
this.open = false; this.open2 = false;
this.getList(); this.getList();
this.xmname = "请选择所属班级"; this.xmname = "请选择所属班级";
this.stname = "请选择学生姓名"; this.stname = "请选择学生姓名";

View File

@ -210,31 +210,77 @@
label-width="160px" label-width="160px"
:inline="true" :inline="true"
> >
<el-form-item label="所属分类" prop="itemCategoryId"> <div style="border-bottom: 1px solid #f1f1f1; margin-bottom: 20px">
<treeselect <el-form-item label="所属分类" prop="itemCategoryId">
:normalizer="normalizer" <treeselect
:options="itemCategoryList" :normalizer="normalizer"
placeholder="请选择所属项目分类" :options="itemCategoryList"
v-model="form.itemCategoryId" placeholder="请选择所属项目分类"
style="width: 300px" v-model="form.itemCategoryId"
/> style="width: 300px"
</el-form-item> />
<el-form-item label="项目名称" prop="itemName"> </el-form-item>
<el-input </div>
style="width: 300px" <div style="border-bottom: 1px solid #f1f1f1; margin-bottom: 20px">
v-model="form.itemName" <el-form-item label="项目名称" prop="itemName">
placeholder="请输入项目名称" <el-input
maxlength="40" style="width: 300px"
/> v-model="form.itemName"
</el-form-item> placeholder="请输入项目名称"
<el-form-item label="项目编号" prop="itemCode"> maxlength="40"
<el-input />
v-model="form.itemCode" </el-form-item>
maxlength="20" <el-form-item label="项目编号" prop="itemCode">
placeholder="请输入测试项目编号" <el-input
style="width: 300px" v-model="form.itemCode"
/> maxlength="20"
</el-form-item> placeholder="请输入测试项目编号"
style="width: 300px"
/>
</el-form-item>
<el-form-item label="测试项目成绩类型" prop="resultDictType">
<el-select
v-model="form.resultDictType"
clearable
placeholder="请选择字典类型"
style="width: 300px"
>
<el-option
v-for="item in itemResultTypelist"
:key="item.value"
:label="item.dictLabel"
:value="item.dictCode"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="项目概述" prop="remark">
<el-input
v-model="form.remark"
placeholder="请输入项目概述"
style="width: 300px"
maxlength="200"
/>
</el-form-item>
<el-form-item label="项目内容" prop="itemContent">
<el-input
type="textarea"
:autosize="{ minRows: 6, maxRows: 8 }"
v-model.number="form.itemContent"
placeholder="项目内容"
maxlength="200"
style="width: 500px"
/>
<!-- <editor
v-model="form.itemContent"
:min-height="190"
style="margin-left: 80px"
maxlength="200"
/> -->
</el-form-item>
</div>
<el-form-item label="排序" prop="sorting"> <el-form-item label="排序" prop="sorting">
<el-input <el-input
v-model="form.sorting" v-model="form.sorting"
@ -243,22 +289,7 @@
style="width: 300px" style="width: 300px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="测试项目成绩类型" prop="resultDictType">
<el-select
v-model="form.resultDictType"
clearable
placeholder="请选择字典类型"
style="width: 300px"
>
<el-option
v-for="item in itemResultTypelist"
:key="item.value"
:label="item.dictLabel"
:value="item.dictCode"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="度量单位" prop="measureUnit"> <el-form-item label="度量单位" prop="measureUnit">
<el-select <el-select
v-model="form.measureUnit" v-model="form.measureUnit"
@ -293,9 +324,12 @@
style="width: 300px" style="width: 300px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="标准最高得分类型" prop="standardType"> <el-form-item label="标准最高得分类型" prop="standardType">
<el-select <el-radio-group v-model="form.standardType" style="width: 300px">
<el-radio :label="ty">统一指标</el-radio>
<el-radio :label="fty">非统一指标</el-radio>
</el-radio-group>
<!-- <el-select
v-model="form.standardType" v-model="form.standardType"
clearable clearable
placeholder="请选择指标类型" placeholder="请选择指标类型"
@ -308,7 +342,7 @@
:value="item.dictValue" :value="item.dictValue"
> >
</el-option> </el-option>
</el-select> </el-select> -->
</el-form-item> </el-form-item>
<el-form-item <el-form-item
label="大班标准最高得分" label="大班标准最高得分"
@ -371,15 +405,7 @@
maxlength="50" maxlength="50"
/> />
</el-form-item> </el-form-item>
<el-form-item label="测试目的" prop="remark"> <el-form-item label="成绩级别" prop="itemLevelList">
<el-input
v-model="form.remark"
placeholder="请输入项目概述"
style="width: 300px"
maxlength="200"
/>
</el-form-item>
<el-form-item label="项目成绩级别" prop="itemLevelList">
<div <div
v-for="(item, index) in form.itemLevelList" v-for="(item, index) in form.itemLevelList"
:key="item.id" :key="item.id"
@ -436,14 +462,6 @@
></el-button> ></el-button>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="项目内容" prop="itemContent">
<editor
v-model="form.itemContent"
:min-height="190"
style="margin-left: 80px"
maxlength="200"
/>
</el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer" style="margin-right: 80px"> <div slot="footer" class="dialog-footer" style="margin-right: 80px">
@ -681,43 +699,34 @@ export default {
} }
}; };
let itemLevelList = (rule, value, callback) => { let itemLevelList = (rule, value, callback) => {
let min = value let min = value.map((e) => {
.map((e) => { return e.levelMinScore;
return e.levelMinScore; });
}) let max = value.map((e) => {
.toString(); return e.levelMaxScore;
let max = value });
.map((e) => { console.log(value.length);
return e.levelMaxScore;
})
.toString();
console.log(min, max);
if (max && min && max < min) { for (var i = 0; i < value.length; i++) {
callback(new Error("最高分必须大于最低分,请重新填写!")); console.log(min[i], max[i]);
} else { if (max[i] < min[i]) {
console.log(min, max); callback(new Error("最高分必须大于最低分,请重新填写!"));
} } else {
if ( console.log(min, max);
value.map((e) => { }
return e.levelName; if (
}) == "" value.map((e) => {
) { return e.levelName;
callback(); })[i] == ""
} else if ( ) {
value.map((e) => { callback();
return e.levelMinScore; } else if (min[i] == "") {
}) == "" callback();
) { } else if (max[i] == "") {
callback(); callback();
} else if ( } else {
value.map((e) => { callback();
return e.levelMaxScore; }
}) == ""
) {
callback();
} else {
callback();
} }
}; };

View File

@ -99,7 +99,12 @@
<!-- <el-table-column label="主键id" align="center" prop="id" /> --> <!-- <el-table-column label="主键id" align="center" prop="id" /> -->
<el-table-column label="批次编号" align="center" prop="batchCode" /> <el-table-column label="批次编号" align="center" prop="batchCode" />
<el-table-column label="批次名称" align="center" prop="batchName" /> <el-table-column label="批次名称" align="center" prop="batchName" />
<el-table-column label="备注信息" align="center" prop="remark" :show-overflow-tooltip="true" /> <el-table-column
label="备注信息"
align="center"
prop="remark"
:show-overflow-tooltip="true"
/>
<el-table-column label="创建人" align="center" prop="createBy" /> <el-table-column label="创建人" align="center" prop="createBy" />
<el-table-column label="创建时间" align="center" prop="createTime" /> <el-table-column label="创建时间" align="center" prop="createTime" />
<!-- <el-table-column label="修改人" align="center" prop="updateBy" /> <!-- <el-table-column label="修改人" align="center" prop="updateBy" />
@ -244,6 +249,13 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination
v-show="total2 > 0"
:total="total2"
:page.sync="temqueryParams.pageNum"
:limit.sync="temqueryParams.pageSize"
@pagination="lookitem"
/>
</div> </div>
</el-dialog> </el-dialog>
@ -283,20 +295,20 @@
> >
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table :data="testItemss"> <el-table :data="testItemss" @cell-dblclick="addtestitem">
<el-table-column label="请选择" width="70" align="center"> <el-table-column label="请选择" width="70" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
type="primary" type="primary"
style="width: 15px; height: 15px" style="width: 20px; height: 20px; padding: 0px"
circle
v-if="items.find((e) => e.itemId == scope.row.id)" v-if="items.find((e) => e.itemId == scope.row.id)"
@click="deltestitem(scope.row)" @click="deltestitem(scope.row)"
></el-button> ></el-button>
<el-button <el-button
v-else v-else
style="width: 15px; height: 15px" style="width: 20px; height: 20px; padding: 0px"
circle
@click="addtestitem(scope.row)" @click="addtestitem(scope.row)"
></el-button> ></el-button>
</template> </template>
@ -420,20 +432,20 @@
:page.sync="queryParams4.pageNum" :page.sync="queryParams4.pageNum"
:limit.sync="queryParams4.pageSize" :limit.sync="queryParams4.pageSize"
@pagination="getList" @pagination="getList"
style="margin-top: 40px" style="margin-top: 40px"
/> />
<el-button <el-button
type="primary" type="primary"
size="mini" size="mini"
@click="itemclick" @click="itemclick"
style=" style="
margin-top: 30px; margin-top: 30px;
margin-left: 85%; margin-left: 85%;
width: 100px; width: 100px;
height: 50px; height: 40px;
font-size: 15px; font-size: 15px;
" "
>选择完成</el-button >选择完成</el-button
> >
</el-dialog> </el-dialog>
@ -481,6 +493,13 @@
> >
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination
v-show="total2 > 0"
:total="total2"
:page.sync="temqueryParams.pageNum"
:limit.sync="temqueryParams.pageSize"
@pagination="lookitem"
/>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
@ -526,6 +545,7 @@ export default {
showSearch: true, showSearch: true,
// //
total: 0, total: 0,
total2: 0,
testItemss: [], testItemss: [],
total4: 0, total4: 0,
// //
@ -541,6 +561,11 @@ export default {
batchCode: null, batchCode: null,
batchName: null, batchName: null,
}, },
temqueryParams: {
pageNum: 1,
pageSize: 10,
id: "",
},
// //
queryParams4: { queryParams4: {
pageNum: 1, pageNum: 1,
@ -603,13 +628,12 @@ export default {
lookitem(item) { lookitem(item) {
this.itemlist = []; this.itemlist = [];
this.items = []; this.items = [];
var id = { this.temqueryParams.id = item.id;
batchId: item.id, temBatchInfoList(this.temqueryParams).then((res) => {
};
temBatchInfoList(id).then((res) => {
console.log(res); console.log(res);
if (res.rows.length != 0) { if (res.rows.length != 0) {
this.itemlist = res.rows; this.itemlist = res.rows;
this.total2 = res.total;
this.items = res.rows; this.items = res.rows;
this.items.forEach((e) => { this.items.forEach((e) => {
e.itemType = e.resultDictType; e.itemType = e.resultDictType;
@ -703,6 +727,7 @@ export default {
this.reset(); this.reset();
this.open = true; this.open = true;
this.items = []; this.items = [];
this.total2 = 0;
this.title = "添加测试成绩批次"; this.title = "添加测试成绩批次";
}, },
/** 修改按钮操作 */ /** 修改按钮操作 */