Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
闫晓茹 2022-08-25 09:56:44 +08:00
commit 97636738c7
11 changed files with 690 additions and 424 deletions

View File

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

View File

@ -9,6 +9,15 @@ export function listTestItemCityScore(query) {
})
}
// 回显
export function getItemCityScoreInfo(query) {
return request({
url: '/system/testItemCityScore/getItemCityScoreInfo',
method: 'get',
params: query
})
}
// 查询全市平均成绩详细
export function getTestItemCityScore(id) {
return request({

View File

@ -11,6 +11,15 @@ export function listTestItemCountryScore(query) {
// 回显
export function getItemCountryScoreInfo(query) {
return request({
url: '/system/testItemCountryScore/getItemCountryScoreInfo',
method: 'get',
params: query
})
}
// 查询项目列表
export function testItemslist(query) {
return request({
@ -51,4 +60,4 @@ export function delTestItemCountryScore(id) {
url: '/system/testItemCountryScore/' + id,
method: 'delete'
})
}
}

View File

@ -77,3 +77,11 @@ export function delTestItemScore(id) {
method: 'delete'
})
}
// 反显
export function getAllTestItemScoreInfo(query) {
return request({
url: '/system/testItemScore/getAllTestItemScoreInfo',
method: 'get',
params: query
})
}

View File

@ -489,11 +489,17 @@ export default {
ClassListinfo() {
ClassList(this.ClassListlist).then((res) => {
console.log(res);
var yseries = [];
var name = "";
var names = [];
var ydata = [];
if (res.data == [] || !res.data) {
this.itemshow2 = true;
this.itemshow = false;
} else {
this.listname = [];
this.totalAvgFraction = res.data.totalAvgFraction;
this.categoryTableNameList = res.data.categoryTableNameList;
this.categoryAgeFractionList = res.data.categoryAgeFractionList;
@ -505,7 +511,6 @@ export default {
});
});
let yname = [];
this.categoryScoreList.forEach((el) => {
yname.push(el.className);
var listname = list.map((e) => {
@ -533,6 +538,28 @@ export default {
el.list = list1;
});
console.log(this.categoryScoreList);
console.log(this.listname);
for (var i = 0; i < this.listname.length; i++) {
name = this.categoryScoreList[0].categoryScoreList[i].categoryName;
ydata = [
this.categoryScoreList[0].list[i],
this.categoryScoreList[1].list[i],
this.categoryScoreList[2].list[i],
];
var obj = {
name: name,
type: "bar",
label: labelOption,
emphasis: {
focus: "series",
},
data: ydata,
};
console.log(ydata);
yseries.push(obj);
names.push(name);
}
console.log(yseries);
var myChart = echarts.init(document.getElementById("chart"));
@ -628,30 +655,6 @@ export default {
name: {},
},
};
var yseries = [];
var name = "";
var names = [];
for (var i = 0; i < this.listname.length; i++) {
name = this.categoryScoreList[0].categoryScoreList[i].categoryName;
var ydata = [
this.categoryScoreList[0].list[i],
this.categoryScoreList[1].list[i],
this.categoryScoreList[2].list[i],
];
var obj = {
name: name,
type: "bar",
label: labelOption,
emphasis: {
focus: "series",
},
data: ydata,
};
yseries.push(obj);
names.push(name);
}
console.log(yseries);
option = {
tooltip: {
@ -678,7 +681,7 @@ export default {
series: yseries,
};
option && myChart.setOption(option);
option && myChart.setOption(option,true);
this.itemshow2 = false;
this.itemshow = true;
}

View File

@ -758,8 +758,8 @@ export default {
pageSize: 10,
studentId: "",
batchCode: "",
studentId: "27",
batchCode: "PC202208230011",
// studentId: "27",
// batchCode: "PC202208230011",
// studentId: "14",
// batchCode: "PC202208030005",
// studentId: "9",
@ -776,7 +776,7 @@ export default {
created() {
this.getList();
this.class();
this.studenttext();
// this.studenttext();
},
methods: {
//

View File

@ -790,7 +790,12 @@
</el-card>
</el-col>
<el-col :span="11" class="card-box" style="height: 370px">
<el-col
:span="11"
class="card-box"
style="height: 370px"
v-show="itemshow3"
>
<el-card>
<div slot="header" style="text-align: center">
<span>BMI</span>
@ -956,6 +961,7 @@ export default {
return {
itemshow: false,
itemshow2: false,
itemshow3: false,
showyey: true,
showbj: true,
total1: 0,
@ -963,7 +969,7 @@ export default {
total3: 0,
total4: 0,
itemweight: "",
weightMax: 50,
weightMax: 70,
weightMin: 10,
itemheight: "",
heightMax: 150,
@ -1069,8 +1075,14 @@ export default {
studentanalysis() {
analysis(this.analysisstudent).then((res) => {
if (!res.data || res.data == "") {
this.itemshow2 = true;
this.itemshow = false;
} else if (res.data.bmiItemLevel == null) {
this.analysislist = res.data;
this.itemheight = res.data.heightScore;
this.bmiItemLevel = res.data.bmiItemLevel;
this.itemweight = res.data.weightScore;
this.itemshow2 = false;
this.itemshow3 = false;
this.itemshow = true;
} else {
this.analysislist = res.data;
this.itemheight = res.data.heightScore;
@ -1131,6 +1143,7 @@ export default {
option && myChart.setOption(option);
this.itemshow2 = false;
this.itemshow = true;
this.itemshow3 = true;
}
});
},

View File

@ -167,58 +167,60 @@
</el-dialog>
<el-row v-show="itemshow">
<el-col :span="12" class="card-box" style=""
><div
id="main"
style="width: 500px; height: 300px; margin: 0 auto"
></div>
</el-col>
<el-col v-show="yclassname2 == []" :span="12" class="card-box" style=""
><div
id="main2"
style="width: 500px; height: 300px; margin: 0 auto"
></div>
</el-col>
<el-col v-show="yclassname3 == []" :span="12" class="card-box" style=""
><div
id="main3"
style="width: 500px; height: 300px; margin: 0 auto"
></div>
</el-col>
<el-col :span="12" class="card-box" style="padding-top: 50px">
<el-table
ref="singleTable"
:data="studentlist"
highlight-current-row
style="margin: 0 auto; width: 530px"
>
<el-table-column type="index" width="130" label="排名" align="center">
</el-table-column>
<el-table-column
property="studentName"
label="姓名"
width="130"
align="center"
<div style="display: flex">
<div style="width: 50%">
<div
id="main"
style="width: 500px; height: 300px; margin: 0 auto"
></div>
<div
id="main2"
style="width: 500px; height: 300px; margin: 0 auto"
></div>
<div
id="main3"
style="width: 500px; height: 300px; margin: 0 auto"
></div>
</div>
<div style="width: 50%; margin-top: 50px">
<el-table
ref="singleTable"
:data="studentlist"
highlight-current-row
style="margin: 0 auto; width: 530px"
>
</el-table-column>
<el-table-column
property="className"
label="班级"
width="130"
align="center"
>
</el-table-column>
<el-table-column
property="itemFraction"
label="分数"
width="140"
align="center"
>
</el-table-column>
</el-table>
</el-col>
<el-table-column
type="index"
width="130"
label="排名"
align="center"
>
</el-table-column>
<el-table-column
property="studentName"
label="姓名"
width="130"
align="center"
>
</el-table-column>
<el-table-column
property="className"
label="班级"
width="130"
align="center"
>
</el-table-column>
<el-table-column
property="sum"
label="分数"
width="140"
align="center"
>
</el-table-column>
</el-table>
</div>
</div>
</el-row>
<el-row :gutter="20" v-if="itemshow2">
<el-col :span="24" :offset="0">
<el-card>
@ -316,6 +318,9 @@ export default {
yclassname1: [],
yclassname2: [],
yclassname3: [],
classscore1: [],
classscore2: [],
classscore3: [],
};
},
mounted() {},
@ -327,251 +332,290 @@ export default {
methods: {
ClassListinfo() {
ClassList(this.classqueryParams).then((res) => {
if (res.rows == [] || !res.rows) {
console.log(res.rows.length);
if (res.rows.length == 0) {
this.itemshow2 = true;
this.itemshow = false;
console.log(
this.yclassname1,
this.yclassname2,
this.yclassname3,
this.classscore1,
this.classscore2,
this.classscore3
);
console.log(this.itemshow2);
} else {
var classscore1 = [];
var classscore2 = [];
var classscore3 = [];
res.rows.forEach((e) => {
if (e.classType == this.LARGECLASS) {
this.yclassname1.push(e.className);
if (
e.itemScoreAll == "" ||
!e.itemScoreAll ||
e.itemScoreAll == null
) {
classscore1.push(0);
} else {
classscore1.push(e.itemScoreAll);
}
} else if (e.classType == this.MIDDLECLASS) {
this.yclassname2.push(e.className);
if (
e.itemScoreAll == "" ||
!e.itemScoreAll ||
e.itemScoreAll == null
) {
classscore2.push(0);
} else {
classscore2.push(e.itemScoreAll);
}
} else if (e.classType == this.SMALLCLASS) {
this.yclassname3.push(e.className);
if (
e.itemScoreAll == "" ||
!e.itemScoreAll ||
e.itemScoreAll == null
) {
classscore3.push(0);
} else {
classscore3.push(e.itemScoreAll);
}
}
});
var app = {};
var myChart = echarts.init(document.getElementById("main"));
var myChart2 = echarts.init(document.getElementById("main2"));
var myChart3 = echarts.init(document.getElementById("main3"));
var option;
var option2;
var option3;
const posList = [
"left",
"right",
"top",
"bottom",
"inside",
"insideTop",
"insideLeft",
"insideRight",
"insideBottom",
"insideTopLeft",
"insideTopRight",
"insideBottomLeft",
"insideBottomRight",
];
app.configParameters = {
rotate: {
min: 0,
max: 90,
},
align: {
options: {
left: "left",
center: "center",
right: "right",
},
},
verticalAlign: {
options: {
top: "top",
middle: "middle",
bottom: "bottom",
},
},
position: {
options: posList.reduce(function (map, pos) {
map[pos] = pos;
return map;
}, {}),
},
distance: {
min: 0,
max: 100,
},
};
app.config = {
rotate: 0,
align: "center",
verticalAlign: "middle",
position: "top",
distance: 15,
onChange: function () {
const labelOption = {
rotate: app.config.rotate,
align: app.config.align,
verticalAlign: app.config.verticalAlign,
position: app.config.position,
distance: app.config.distance,
};
myChart.setOption({
series: [
{
label: labelOption,
},
{
label: labelOption,
},
{
label: labelOption,
},
{
label: labelOption,
},
],
});
},
};
const labelOption = {
show: true,
position: app.config.position,
distance: app.config.distance,
align: app.config.align,
verticalAlign: app.config.verticalAlign,
rotate: app.config.rotate,
formatter: "{c}",
fontSize: 16,
rich: {
name: {},
},
};
option = {
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
},
legend: {},
xAxis: [
{
type: "category",
axisTick: { show: false },
data: this.yclassname1,
},
],
yAxis: [
{
type: "value",
},
],
series: [
{
type: "bar",
barGap: 0,
color: "#00B050",
label: labelOption,
emphasis: {
focus: "series",
},
data: classscore1,
},
],
};
option2 = {
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
},
legend: {},
xAxis: [
{
type: "category",
axisTick: { show: false },
data: this.yclassname2,
},
],
yAxis: [
{
type: "value",
},
],
series: [
{
type: "bar",
barGap: 0,
color: "#00B050",
label: labelOption,
emphasis: {
focus: "series",
},
data: classscore2,
},
],
};
option3 = {
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
},
legend: {},
xAxis: [
{
type: "category",
axisTick: { show: false },
data: this.yclassname3,
},
],
yAxis: [
{
type: "value",
},
],
series: [
{
type: "bar",
barGap: 0,
color: "#00B050",
label: labelOption,
emphasis: {
focus: "series",
},
data: classscore3,
},
],
};
this.$nextTick((e) => {
this.yclassname1 = [];
this.yclassname2 = [];
this.yclassname3 = [];
this.classscore1 = [];
this.classscore2 = [];
this.classscore3 = [];
option && myChart.setOption(option);
option2 && myChart2.setOption(option2);
option3 && myChart3.setOption(option3);
this.itemshow = true;
this.itemshow2 = false;
console.log(2);
res.rows.forEach((e) => {
if (e.classType == this.LARGECLASS) {
this.yclassname1.push(e.className);
if (
e.itemScoreAll == "" ||
!e.itemScoreAll ||
e.itemScoreAll == null
) {
this.classscore1.push(0);
} else {
this.classscore1.push(e.itemScoreAll);
}
} else if (e.classType == this.MIDDLECLASS) {
this.yclassname2.push(e.className);
if (
e.itemScoreAll == "" ||
!e.itemScoreAll ||
e.itemScoreAll == null
) {
this.classscore2.push(0);
} else {
this.classscore2.push(e.itemScoreAll);
}
} else if (e.classType == this.SMALLCLASS) {
s;
this.yclassname3.push(e.className);
if (
e.itemScoreAll == "" ||
!e.itemScoreAll ||
e.itemScoreAll == null
) {
this.classscore3.push(0);
} else {
this.classscore3.push(e.itemScoreAll);
}
}
});
console.log(this.yclassname3, this.yclassname2);
if (this.yclassname1.length != 0) {
var myChart = echarts.init(document.getElementById("main"));
}
if (this.yclassname2.length != 0) {
var myChart2 = echarts.init(document.getElementById("main2"));
}
if (this.yclassname3.length != 0) {
var myChart3 = echarts.init(document.getElementById("main3"));
}
var myChart = echarts.init(document.getElementById("main"));
var myChart2 = echarts.init(document.getElementById("main2"));
var myChart3 = echarts.init(document.getElementById("main3"));
var app = {};
var option;
var option2;
var option3;
const posList = [
"left",
"right",
"top",
"bottom",
"inside",
"insideTop",
"insideLeft",
"insideRight",
"insideBottom",
"insideTopLeft",
"insideTopRight",
"insideBottomLeft",
"insideBottomRight",
];
app.configParameters = {
rotate: {
min: 0,
max: 90,
},
align: {
options: {
left: "left",
center: "center",
right: "right",
},
},
verticalAlign: {
options: {
top: "top",
middle: "middle",
bottom: "bottom",
},
},
position: {
options: posList.reduce(function (map, pos) {
map[pos] = pos;
return map;
}, {}),
},
distance: {
min: 0,
max: 100,
},
};
app.config = {
rotate: 0,
align: "center",
verticalAlign: "middle",
position: "top",
distance: 15,
onChange: function () {
const labelOption = {
rotate: app.config.rotate,
align: app.config.align,
verticalAlign: app.config.verticalAlign,
position: app.config.position,
distance: app.config.distance,
};
myChart.setOption({
series: [
{
label: labelOption,
},
{
label: labelOption,
},
{
label: labelOption,
},
{
label: labelOption,
},
],
});
},
};
const labelOption = {
show: true,
position: app.config.position,
distance: app.config.distance,
align: app.config.align,
verticalAlign: app.config.verticalAlign,
rotate: app.config.rotate,
formatter: "{c}",
fontSize: 16,
rich: {
name: {},
},
};
option = {
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
},
legend: {},
xAxis: [
{
type: "category",
axisTick: { show: false },
data: this.yclassname1,
},
],
yAxis: [
{
type: "value",
},
],
series: [
{
type: "bar",
barGap: 0,
color: "#00B050",
label: labelOption,
emphasis: {
focus: "series",
},
data: this.classscore1,
},
],
};
option2 = {
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
},
legend: {},
xAxis: [
{
type: "category",
axisTick: { show: false },
data: this.yclassname2,
},
],
yAxis: [
{
type: "value",
},
],
series: [
{
type: "bar",
barGap: 0,
color: "#00B050",
label: labelOption,
emphasis: {
focus: "series",
},
data: this.classscore2,
},
],
};
option3 = {
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
},
legend: {},
xAxis: [
{
type: "category",
axisTick: { show: false },
data: this.yclassname3,
},
],
yAxis: [
{
type: "value",
},
],
series: [
{
type: "bar",
barGap: 0,
color: "#00B050",
label: labelOption,
emphasis: {
focus: "series",
},
data: this.classscore3,
},
],
};
if (this.yclassname1.length != 0) {
option && myChart.setOption(option);
}
if (this.yclassname2.length != 0) {
option2 && myChart2.setOption(option2);
}
if (this.yclassname3.length != 0) {
option3 && myChart3.setOption(option3);
}
// option && myChart.setOption(option);
// option2 && myChart2.setOption(option2);
// option3 && myChart3.setOption(option3);
this.itemshow = true;
this.itemshow2 = false;
});
}
});
},

View File

@ -171,25 +171,42 @@
:options="areaList"
placeholder="请选择所属区域"
v-model="form.areaId"
@input="inputChange"
/>
</el-form-item>
<el-form-item label="所属项目" prop="itemId">
<el-button
@click="innerVisible = true"
@click="innerVisiblexm"
style="width: 380px; text-align: left; height: 36px; color: #c0c4cc"
v-if="xmname == '请选择所属项目'"
>
{{ xmname }}
</el-button>
<el-button
@click="innerVisible = true"
@click="innerVisiblexm"
style="width: 380px; text-align: left; height: 36px"
v-else
>
{{ xmname }}
</el-button>
</el-form-item>
<el-form-item label="学生性别" prop="sex">
<el-select
v-model="form.sex"
clearable
placeholder="请选择"
style="width: 380px"
>
<el-option
v-for="item in sexs"
:key="item.value"
:label="item.label"
:value="item.value"
@click.native="sexclick(item)"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label="平均得分"
:required="true"
@ -215,20 +232,6 @@
>
<el-input v-model="form.itemAvgText" placeholder="请输入平均得分" />
</el-form-item>
<el-form-item
label="平均得分"
v-else-if="form.dictValue == 'text'"
key="itemAvgText"
prop="itemAvgText"
>
<el-input v-model="form.itemAvgText" placeholder="请输入平均得分" />
</el-form-item>
<el-form-item label="学生性别" prop="sex">
<el-radio-group v-model="form.sex">
<el-radio :label="male"></el-radio>
<el-radio :label="female"></el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
@ -247,6 +250,7 @@
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="所属区域" prop="areaId">
<treeselect
disabled
:normalizer="normalizer"
:options="areaList"
placeholder="请选择所属区域"
@ -256,6 +260,9 @@
<el-form-item label="所属项目" prop="itemId">
<el-button
type="info"
plain
disabled
@click="innerVisible = true"
style="width: 380px; text-align: left; height: 36px; color: #c0c4cc"
v-if="xmname == '请选择所属项目'"
@ -263,6 +270,9 @@
{{ xmname }}
</el-button>
<el-button
type="info"
plain
disabled
@click="innerVisible = true"
style="width: 380px; text-align: left; height: 36px"
v-else
@ -270,7 +280,23 @@
{{ xmname }}
</el-button>
</el-form-item>
<el-form-item label="学生性别" prop="sex">
<el-select
v-model="form.sex"
clearable
disabled
placeholder="请选择"
style="width: 380px"
>
<el-option
v-for="item in sexs"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label="平均得分"
prop="itemAvgScore"
@ -285,13 +311,6 @@
>
<el-input v-model="form.itemAvgText" placeholder="请输入平均得分" />
</el-form-item>
<el-form-item label="学生性别" prop="sex">
<el-radio-group v-model="form.sex">
<el-radio :label="male"></el-radio>
<el-radio :label="female"></el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
@ -461,6 +480,7 @@ import {
delTestItemCityScore,
addTestItemCityScore,
updateTestItemCityScore,
getItemCityScoreInfo,
} from "@/api/system/testItemCityScore";
import { tKindergartenInfo } from "@/api/system/kindergartenInfo";
import { listItemCategory } from "@/api/system/itemCategory";
@ -473,12 +493,12 @@ export default {
components: { Treeselect },
data() {
var roleMoeny = (rule, value, callback) => {
var str = this.form.itemAvgScore;
var str = String(this.form.itemAvgScore);
console.log(str);
var str_ = "";
var str2 = "";
str_ = str.substr(str.indexOf(".")).length;
if (value.includes(".")) {
if (str.includes(".")) {
str_ = str.substr(str.indexOf(".")).length;
str2 = str.substr(0, str.indexOf(".")).length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(str))) {
@ -499,7 +519,7 @@ export default {
} else {
str2 = str.length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入数字"));
} else if (!this.form.itemAvgScore) {
callback(new Error("不能为空"));
@ -515,6 +535,17 @@ export default {
}
};
return {
//
sexs: [
{
label: "男",
value: "MALE",
},
{
label: "女",
value: "FEMALE",
},
],
value: "",
//
loading: true,
@ -573,10 +604,16 @@ export default {
itemName: null,
itemCode: null,
},
getItemCityScorelist: {
areaId: null,
itemId: null,
sex: null,
},
//
form: {},
//
rules: {
sex: [{ required: true, message: "请选择性别", trigger: "blur" }],
itemAvgScore: [{ required: true, validator: roleMoeny, message: "" }],
itemAvgText: [
{ required: true, message: "请输入全市平均成绩", trigger: "blur" },
@ -594,6 +631,44 @@ export default {
this.getList();
},
methods: {
inputChange() {
this.getItemCityScorelist.areaId = this.form.areaId;
if (
this.getItemCityScorelist.sex != null &&
this.getItemCityScorelist.itemId != null &&
this.getItemCityScorelist.areaId != null
) {
this.getItemCityScore();
}
},
sexclick(item) {
this.getItemCityScorelist.sex = item.value;
if (
this.getItemCityScorelist.areaId != null &&
this.getItemCityScorelist.itemId != null
) {
this.getItemCityScore();
}
},
getItemCityScore() {
getItemCityScoreInfo(this.getItemCityScorelist).then((res) => {
if (res.data) {
this.form.itemAvgScore = res.data.itemAvgScore;
this.form.itemAvgText = res.data.itemAvgText;
} else {
this.form.itemAvgScore = "";
this.form.itemAvgText = "";
}
});
},
innerVisiblexm() {
if (this.form.areaId == null) {
return this.$message.error("请先选择所属区域");
} else {
this.innerVisible = true;
}
},
normalizer3(node) {
if (node.children && !node.children.length) {
delete node.children;
@ -620,11 +695,10 @@ export default {
this.form.itemId = "";
},
xmclick(item) {
console.log(item);
this.xmname = item.itemName;
this.getItemCityScorelist.itemId = item.id;
this.form.itemId = item.id;
this.xmid = item.id;
console.log(this.ResultType1, this.ResultType2);
if (item.resultDictType == this.ResultType1.dictCode) {
this.form.resultDictType = this.ResultType1.dictValue;
this.form.dictValue = this.ResultType1.dictValue;
@ -633,8 +707,15 @@ export default {
this.form.resultDictType = this.ResultType2.dictValue;
this.form.dictValue = this.ResultType2.dictValue;
}
console.log(this.form);
this.innerVisible = false;
if (
this.getItemCityScorelist.areaId != null &&
this.getItemCityScorelist.sex != null
) {
this.getItemCityScore();
}
console.log(this.form);
},
/** 查询全市平均成绩列表 */
getList() {
@ -666,7 +747,7 @@ export default {
this.itemResultTypelist = res.data;
this.ResultType1 = this.itemResultTypelist[0];
this.ResultType2 = this.itemResultTypelist[1];
// console.log(this.ResultType1);
console.log(this.ResultType1, this.ResultType2);
});
},
//
@ -736,6 +817,11 @@ export default {
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.getItemCityScorelist = {
areaId: null,
itemId: null,
sex: null,
};
this.open = true;
this.title = "添加全市平均成绩";
},

View File

@ -155,7 +155,9 @@
>
<el-form-item label="所属项目" prop="itemId">
<el-button
type=""
type="info"
plain
disabled
@click="innerVisible = true"
v-if="xmname == '请选择所属项目'"
style="
@ -169,7 +171,9 @@
>
<el-button
type=""
type="info"
plain
disabled
@click="innerVisible = true"
v-else
style="
@ -181,7 +185,23 @@
>{{ xmname }}</el-button
>
</el-form-item>
<el-form-item label="学生性别" prop="sex">
<el-select
v-model="form.sex"
clearable
disabled
placeholder="请选择"
style="width: 360px"
>
<el-option
v-for="item in sexs"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label="平均得分"
prop="itemAvgScore"
@ -204,12 +224,6 @@
style="width: 360px"
/>
</el-form-item>
<el-form-item label="学生性别" prop="sex">
<el-radio-group v-model="form.sex">
<el-radio :label="male"></el-radio>
<el-radio :label="female"></el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -261,9 +275,26 @@
>{{ xmname }}</el-button
>
</el-form-item>
<el-form-item label="学生性别" prop="sex">
<el-select
v-model="form2.sex"
clearable
placeholder="请选择"
style="width: 360px"
>
<el-option
v-for="item in sexs"
:key="item.value"
:label="item.label"
:value="item.value"
@click.native="sexclick(item)"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label="平均得分"
prop="itemAvgScore"
prop="itemAvgScore1"
v-if="form2.resultDictType == ''"
>
<el-input
@ -296,12 +327,6 @@
style="width: 360px"
/>
</el-form-item>
<el-form-item label="学生性别" prop="sex">
<el-radio-group v-model="form2.sex">
<el-radio :label="male"></el-radio>
<el-radio :label="female"></el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
@ -501,6 +526,7 @@ import {
addTestItemCountryScore,
updateTestItemCountryScore,
testItemslist,
getItemCountryScoreInfo,
} from "@/api/system/testItemCountryScore";
import { tKindergartenInfo } from "@/api/system/kindergartenInfo";
@ -511,11 +537,11 @@ export default {
var str = value;
var str_ = "";
var str2 = "";
str_ = str.substr(str.indexOf(".")).length;
if (value.includes(".")) {
if (str.includes(".")) {
str_ = str.substr(str.indexOf(".")).length;
str2 = str.substr(0, str.indexOf(".")).length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入数字"));
} else if (!this.form2.itemAvgScore) {
callback(new Error("不能为空"));
@ -533,7 +559,7 @@ export default {
} else {
str2 = str.length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入数字"));
} else if (!this.form2.itemAvgScore) {
callback(new Error("不能为空"));
@ -549,12 +575,12 @@ export default {
}
};
var roleMoeny2 = (rule, value, callback) => {
var str = this.form.itemAvgScore;
var str = String(this.form.itemAvgScore);
console.log(str);
var str_ = "";
var str2 = "";
str_ = str.substr(str.indexOf(".")).length;
if (value.includes(".")) {
if (str.includes(".")) {
str_ = str.substr(str.indexOf(".")).length;
str2 = str.substr(0, str.indexOf(".")).length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(str))) {
@ -575,7 +601,7 @@ export default {
} else {
str2 = str.length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入数字"));
} else if (!this.form.itemAvgScore) {
callback(new Error("不能为空"));
@ -589,20 +615,21 @@ export default {
callback();
}
}
// if (Number.isNaN(Number.parseFloat(value))) {
// callback(new Error(""));
// } else if (!this.form.itemAvgScore) {
// callback(new Error(""));
// } else if (this.form.itemAvgScore * 1 > 99999999) {
// callback(new Error("99999999")); //
// } else {
// callback();
// }
};
return {
value: "",
//
sexs: [
{
label: "男",
value: "MALE",
},
{
label: "女",
value: "FEMALE",
},
],
//
itemResultType: "item_result_type",
//
@ -617,7 +644,6 @@ export default {
//
single: true,
//
multiple: true,
//
showSearch: true,
@ -654,6 +680,10 @@ export default {
itemName: "",
itemCode: "",
},
queryParams3: {
itemId: null,
sex: null,
},
//
form: {},
form2: {},
@ -663,6 +693,7 @@ export default {
itemId: [
{ required: true, message: "请选择所属项目", trigger: "blur" },
],
sex: [{ required: true, message: "请选择性别", trigger: "blur" }],
itemAvgScore: [
{
required: true,
@ -679,6 +710,13 @@ export default {
itemId: [
{ required: true, message: "请选择所属项目", trigger: "blur" },
],
itemAvgScore1: [
{
required: true,
message: "请选择所属项目之后输入平均得分",
trigger: "blur",
},
],
itemAvgScore: [
{
required: true,
@ -687,6 +725,7 @@ export default {
trigger: "blur",
},
],
sex: [{ required: true, message: "请选择性别", trigger: "blur" }],
itemAvgText: [
{ required: true, message: "请输入平均得分", trigger: "blur" },
],
@ -698,9 +737,29 @@ export default {
this.getList();
},
methods: {
getItemCountryScore() {
getItemCountryScoreInfo(this.queryParams3).then((res) => {
console.log(res);
if (res.data) {
this.form2.itemAvgScore = res.data.itemAvgScore;
this.form2.itemAvgText = res.data.itemAvgText;
} else {
this.form2.itemAvgScore = "";
this.form2.itemAvgText = "";
}
});
},
sexclick(item) {
this.queryParams3.sex = item.value;
console.log(this.queryParams3);
if (this.queryParams3.itemId != null) {
this.getItemCountryScore();
}
},
xmclick(row) {
console.log(row);
this.xmname = row.itemName;
this.queryParams3.itemId = row.id;
this.itemId2 = row.id;
this.form.itemId = row.id;
this.form2.itemId = row.id;
@ -720,6 +779,9 @@ export default {
}
console.log(this.form);
console.log(this.form2);
if (this.queryParams3.sex != null) {
this.getItemCountryScore();
}
},
/** 查询全国平均成绩列表 */

View File

@ -1200,6 +1200,7 @@ import {
studentInfo,
testItems,
testScoreBatch,
getAllTestItemScoreInfo,
} from "@/api/system/testItemScore";
import {
tKindergartenInfo,
@ -1214,12 +1215,16 @@ export default {
var str = value;
var str_ = "";
var str2 = "";
str_ = str.substr(str.indexOf(".")).length;
console.log(str);
if (str == undefined) {
return callback(new Error("请填写"));
}
if (value.includes(".")) {
str_ = str.substr(str.indexOf(".")).length;
str2 = str.substr(0, str.indexOf(".")).length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
callback(new Error("请输入数字"));
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入成绩"));
} else if (!this.form2.itemScore) {
callback(new Error("不能为空"));
} else if (this.form2.itemScore * 1 > 99999999) {
@ -1235,9 +1240,8 @@ export default {
}
} else {
str2 = str.length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
callback(new Error("请输入数字"));
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入成绩得分"));
} else if (!this.form2.itemScore) {
callback(new Error("不能为空"));
} else if (this.form2.itemScore * 1 > 99999999) {
@ -1256,12 +1260,15 @@ export default {
console.log(str);
var str_ = "";
var str2 = "";
str_ = str.substr(str.indexOf(".")).length;
if (value.includes(".")) {
if (str == undefined) {
return callback(new Error("请填写"));
}
if (str.includes(".")) {
str_ = str.substr(str.indexOf(".")).length;
str2 = str.substr(0, str.indexOf(".")).length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
callback(new Error("请输入数字"));
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入成绩得分"));
} else if (!this.form2.itemFraction) {
callback(new Error("不能为空"));
} else if (this.form2.itemFraction * 1 > 99999999) {
@ -1278,8 +1285,8 @@ export default {
} else {
str2 = str.length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
callback(new Error("请输入数字"));
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入成绩得分"));
} else if (!this.form2.itemFraction) {
callback(new Error("不能为空"));
} else if (this.form2.itemFraction * 1 > 99999999) {
@ -1295,16 +1302,20 @@ export default {
};
var roleMoeny3 = (rule, value, callback) => {
var str = this.form.itemScore;
console.log(this.form.itemScore);
var str = String(this.form.itemScore);
console.log(str);
var str_ = "";
var str2 = "";
str_ = str.substr(str.indexOf(".")).length;
if (value.includes(".")) {
if (str == undefined) {
return callback(new Error("请填写"));
}
if (str.includes(".")) {
str_ = str.substr(str.indexOf(".")).length;
str2 = str.substr(0, str.indexOf(".")).length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
callback(new Error("请输入数字"));
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入成绩"));
} else if (!this.form.itemScore) {
callback(new Error("不能为空"));
} else if (this.form.itemScore * 1 > 99999999) {
@ -1321,8 +1332,8 @@ export default {
} else {
str2 = str.length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
callback(new Error("请输入数字"));
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入成绩"));
} else if (!this.form.itemScore) {
callback(new Error("不能为空"));
} else if (this.form.itemScore * 1 > 99999999) {
@ -1337,16 +1348,18 @@ export default {
}
};
var roleMoeny4 = (rule, value, callback) => {
var str = this.form.itemFraction;
console.log(str);
var str = String(this.form.itemFraction);
var str_ = "";
var str2 = "";
str_ = str.substr(str.indexOf(".")).length;
if (value.includes(".")) {
if (str == undefined) {
return callback(new Error("请填写"));
}
if (str.includes(".")) {
str_ = str.substr(str.indexOf(".")).length;
str2 = str.substr(0, str.indexOf(".")).length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
callback(new Error("请输入数字"));
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入成绩得分"));
} else if (!this.form.itemFraction) {
callback(new Error("不能为空"));
} else if (this.form.itemFraction * 1 > 99999999) {
@ -1363,8 +1376,8 @@ export default {
} else {
str2 = str.length;
console.log(str2);
if (Number.isNaN(Number.parseFloat(value))) {
callback(new Error("请输入数字"));
if (Number.isNaN(Number.parseFloat(str))) {
callback(new Error("请输入成绩得分"));
} else if (!this.form.itemFraction) {
callback(new Error("不能为空"));
} else if (this.form.itemFraction * 1 > 99999999) {
@ -1485,7 +1498,11 @@ export default {
pageSize: 10,
batchCode: null,
},
addqueryParams: {
testItemId: "",
testItemId: "",
batchCode: "",
},
//
form: {},
form2: {},
@ -1582,6 +1599,17 @@ export default {
},
methods: {
getAllTestItemScore() {
console.log(this.addqueryParams);
getAllTestItemScoreInfo(this.addqueryParams).then((res) => {
console.log(res);
if (res.data) {
this.form2.itemScore = res.data.itemScore;
this.form2.itemFraction = res.data.itemFraction;
this.form2.syntheticalAssess = res.data.syntheticalAssess;
}
});
},
//
kindergartenNameclick(row) {
this.form2.kindergartenId = row.id;
@ -1629,7 +1657,7 @@ export default {
this.itemId3 = row.id;
this.form.studentId = row.id;
this.form2.studentId = row.id;
this.addqueryParams.studentId = row.id;
this.innerVisible2 = false;
this.form.studentName = row.studentName;
// console.log(row);
@ -1651,6 +1679,7 @@ export default {
this.form2.testItemId = row.id;
this.innerVisible3 = false;
this.form.itemName = row.itemName;
this.addqueryParams.testItemId = row.id;
// if (row.resultDictType == this.ResultType1.dictCode) {
// this.form2.resultDictType = this.ResultType1.dictValue;
// this.form.dictValue = this.ResultType1.dictValue;
@ -1673,10 +1702,11 @@ export default {
this.itemId5 = row.id;
// this.form.itemScore = row.id;
// this.form2.itemScore = row.id;
this.addqueryParams.batchCode = row.batchCode;
this.innerVisible4 = false;
this.form.batchCode = row.batchCode;
this.form2.batchCode = row.batchCode;
this.getAllTestItemScore();
},
/** 查询个人成绩录入管理列表 */
@ -1757,6 +1787,7 @@ export default {
scoreDictValue: "",
itemScore: "",
resultDictType: "",
itemFraction: "",
};
this.form2 = {
classId: null,
@ -1769,6 +1800,7 @@ export default {
syntheticalAssess: null,
scoreDictValue: "",
itemScore: "",
itemFraction: "",
};
// this.form2 = {
// itemId: null,