From eedeb222db67c9aa5721d352807f5126e6777136 Mon Sep 17 00:00:00 2001 From: songhuangfeng123 <shf18767906695@163.com> Date: 星期三, 18 五月 2022 19:06:19 +0800 Subject: [PATCH] 计算分数fix --- src/views/safetyproduction/gojudging.vue | 46 ++++++++++++++++++++++- src/views/safetyproduction/feature.vue | 17 +++++++- 2 files changed, 58 insertions(+), 5 deletions(-) diff --git a/src/views/safetyproduction/feature.vue b/src/views/safetyproduction/feature.vue index 09b4b5b..93a0d3a 100644 --- a/src/views/safetyproduction/feature.vue +++ b/src/views/safetyproduction/feature.vue @@ -57,6 +57,8 @@ </el-table-column> <el-table-column label="得分" prop="point" align="center"> </el-table-column> + <el-table-column label="权重" prop="weight" align="center"> + </el-table-column> <el-table-column prop="remark" label="备注" align="center"> </el-table-column> <el-table-column prop="createTime" label="创建时间" align="center"> @@ -126,7 +128,15 @@ </el-form-item> </el-col> </el-row> - <el-row v-if="form.type==0?false:true"> + <el-row v-if="form.type==0 && form.type!=null"> + <el-col :span="11" > + <el-form-item label="权重" prop="weight"> + <el-input v-model="form.weight"></el-input> + </el-form-item> + </el-col> + </el-row> + + <el-row v-if="form.type==1 && form.type!=null"> <el-col :span="11"> <el-form-item label="父要素" prop="parentId"> <el-select @@ -184,7 +194,6 @@ title: "", form: { name: "", - type: "", parentId: "", point:"", remark: "", @@ -224,6 +233,9 @@ point: [ { required: true, message: "得分不能为空", trigger: "change" }, ], + weight: [ + { required: true, message: "权重不能为空", trigger: "change" }, + ], }, }; }, @@ -259,7 +271,6 @@ this.title = "新增"; this.form = { name: "", - type: "", parentId: "", remark: "", }; diff --git a/src/views/safetyproduction/gojudging.vue b/src/views/safetyproduction/gojudging.vue index 67f708e..1a684b9 100644 --- a/src/views/safetyproduction/gojudging.vue +++ b/src/views/safetyproduction/gojudging.vue @@ -6,8 +6,11 @@ class="btn" v-if="typeId == 2 ? false : true" @click="finish()" - >结单</el-button - > + >结单</el-button> + <div class="point"> + 所有A级要素总分= {{remark}} + </div> + <div v-for="(item, index) in lists" :key="index" @@ -150,6 +153,7 @@ lists: [], listType: [], typeId: "", + remark:"", }; }, created() { @@ -209,9 +213,40 @@ var arr = this.checkSameDataA(this.list.itemList); for (var i = 0; i < arr.length; i++) { arr[i].child = this.checkSameData(arr[i].child); + arr[i].elementAWeight = arr[i].child[0].elementAWeight; arr[i].child.points = arr[i].child.point; } this.lists = arr; + let showDetail = '' + for (let i = 0 ; i < arr.length ; i++){ + if (i < arr.length - 1 ){ + showDetail+='('+arr[i].elementAName + ' * '+arr[i].elementAWeight+ ') + ' + } else{ + showDetail+='('+arr[i].elementAName + ' * '+arr[i].elementAWeight+ ')' + } + } + this.remark+=showDetail + if (this.typeId==2){ + let pointA = '' + let pointDetail = ' = ' + let finalPoint=0 + for (let i = 0 ; i < arr.length ; i++){ + let childData = arr[i].child + pointA = 0 + for (let j = 0 ; j < childData.length ; j++){ + //改A级要素的总分 + pointA += childData[j].point + } + finalPoint += pointA * arr[i].elementAWeight + if (i < arr.length - 1 ){ + pointDetail +='('+pointA + ' * '+arr[i].elementAWeight+ ') + ' + } else{ + pointDetail +='('+pointA + ' * '+arr[i].elementAWeight+ ') = ' + } + } + pointDetail +=finalPoint + this.remark+=pointDetail + } }); }, checkSameDataA(resData) { @@ -221,6 +256,7 @@ if (!dataInfo[elementAName]) { dataInfo[elementAName] = { elementAName, + elementAWeight:'', child: [], }; } @@ -237,6 +273,7 @@ dataInfo[elementBName] = { elementBName, point: "", + elementAWeight:item.elementAWeight, points: item.point, child: [], }; @@ -295,6 +332,11 @@ height: 850px; overflow-y: overlay; } +.point { + font-size: 20px; + padding: 10px 0px; + font-weight: bold; +} .title { font-size: 16px; padding: 10px 0px; -- Gitblit v1.9.2