From 27d6c869e1fac29b6e267f1ccfb1373658bbdffa Mon Sep 17 00:00:00 2001 From: Your Name <123456> Date: 星期四, 19 五月 2022 17:42:28 +0800 Subject: [PATCH] Merge branch 'master' of https://sinanoaq.cn:8888/r/ztqt --- src/views/safetyproduction/gojudging.vue | 47 ++++++++++++++++++++++- src/views/safetyproduction/feature.vue | 17 +++++++- src/views/doublePreventAction/riskLevelManage/analyseUnit/index.vue | 24 ++++++++++-- src/router/index.js | 2 4 files changed, 80 insertions(+), 10 deletions(-) diff --git a/src/router/index.js b/src/router/index.js index fdc1711..0b0ea4e 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -159,7 +159,7 @@ { id: 124, parentId: 0, - path: '/accidentHidden', + path: '/sgyhpczl', component: Layout, name: '事故隐患排查治理', meta: { title: '事故隐患排查治理', icon: 'el-icon-facilities' }, diff --git a/src/views/doublePreventAction/riskLevelManage/analyseUnit/index.vue b/src/views/doublePreventAction/riskLevelManage/analyseUnit/index.vue index 6254c68..a1749f7 100644 --- a/src/views/doublePreventAction/riskLevelManage/analyseUnit/index.vue +++ b/src/views/doublePreventAction/riskLevelManage/analyseUnit/index.vue @@ -82,22 +82,22 @@ <el-dialog :title="title" :visible.sync="analyseUnitVisible" :modal-append-to-body="false" :close-on-click-modal="false" width="600px"> <el-form ref="analyseUnitForm" :rules="analyseUnitFormRules" :model="analyseUnitForm" label-position="right" label-width="165px"> <el-form-item label="责任部门" prop="hazardDep"> - <el-select v-model="analyseUnitForm.hazardDep" class="analyseUnit_input"> + <el-select v-model="analyseUnitForm.hazardDep" value-key="item" class="analyseUnit_input" @change="departmentChange" @clear="departmentClear"> <el-option v-for="item in departmentList" :key="item.id" - :value="item.department" + :value="item" :label="item.department" ></el-option> </el-select> </el-form-item> <el-form-item label="责任人" prop="hazardLiablePerson"> - <el-select v-model="analyseUnitForm.hazardLiablePerson" class="analyseUnit_input"> + <el-select v-model="analyseUnitForm.hazardLiablePerson" value-key="item" class="analyseUnit_input"@change="personChange" @clear="personClear" > <el-option v-for="item in userList" :key="item.id" :label="item.realname" - :value="item.realname" + :value="item" ></el-option> </el-select> </el-form-item> @@ -321,6 +321,22 @@ }) }) }, + personChange(val){ + this.analyseUnitForm.hazardLiablePerson = val.realname + this.analyseUnitForm.hazardLiablePersonId = val.id + }, + departmentChange(val){ + this.analyseUnitForm.hazardDep = val.department + this.analyseUnitForm.hazardDepId = val.id + }, + personClear(){ + this.analyseUnitForm.hazardLiablePerson = null + this.analyseUnitForm.hazardLiablePersonId = null + }, + departmentClear(){ + this.analyseUnitForm.hazardDep = null + this.analyseUnitForm.hazardDepId = null + }, refreshHandle(){ this.getAnalyseUnitData() }, 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..55b365f 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,12 @@ height: 850px; overflow-y: overlay; } +.point { + background-color: rgba(3,78,162,0.1); + font-size: 20px; + padding: 10px 5px; + font-weight: bold; +} .title { font-size: 16px; padding: 10px 0px; -- Gitblit v1.9.2