From 0bc3f2d0365493eaedf5f088cbc27eb060a8dbc1 Mon Sep 17 00:00:00 2001
From: shj <1790240199@qq.com>
Date: 星期四, 07 四月 2022 18:34:06 +0800
Subject: [PATCH] 自查
---
src/views/safetyproduction/gojudging.vue | 208 ++++++++++++++++++++++++++---------------
src/views/safetyproduction/checklistself.vue | 8 +
src/views/safetyproduction/review.vue | 16 ++
src/views/accidentHidden/majorHidden.vue | 17 +++
4 files changed, 172 insertions(+), 77 deletions(-)
diff --git a/src/views/accidentHidden/majorHidden.vue b/src/views/accidentHidden/majorHidden.vue
index e69de29..ef11716 100644
--- a/src/views/accidentHidden/majorHidden.vue
+++ b/src/views/accidentHidden/majorHidden.vue
@@ -0,0 +1,17 @@
+<template>
+ <div class="app-container">
+
+ </div>
+</template>
+<script>
+ export default{
+ data(){
+ return{
+
+ }
+ }
+ }
+</script>
+<style>
+
+</style>
\ No newline at end of file
diff --git a/src/views/safetyproduction/checklistself.vue b/src/views/safetyproduction/checklistself.vue
index e5b6795..97b59cc 100644
--- a/src/views/safetyproduction/checklistself.vue
+++ b/src/views/safetyproduction/checklistself.vue
@@ -171,6 +171,14 @@
id:val.id
}
})
+ }else if(val.status==2){
+ this.$router.push({
+ path:"/gojudging",
+ query:{
+ id:val.id,
+ type:2
+ }
+ })
}
},
find() {
diff --git a/src/views/safetyproduction/gojudging.vue b/src/views/safetyproduction/gojudging.vue
index b7e4a0f..f941b95 100644
--- a/src/views/safetyproduction/gojudging.vue
+++ b/src/views/safetyproduction/gojudging.vue
@@ -1,8 +1,18 @@
<template>
<div>
<div class="box-right">
- <el-button type="primary" class="btn" @click="finish()">结单</el-button>
- <div v-for="(item, index) in lists" :key="index" style="padding:0 0 20px 0">
+ <el-button
+ type="primary"
+ class="btn"
+ v-if="typeId == 2 ? false : true"
+ @click="finish()"
+ >结单</el-button
+ >
+ <div
+ v-for="(item, index) in lists"
+ :key="index"
+ style="padding: 0 0 20px 0"
+ >
<div class="title">
A级要素:<span>{{ item.elementAName }}</span>
</div>
@@ -12,14 +22,20 @@
><p><span>B级要素:</span>{{ item.elementBName }}</p></el-col
>
<el-col :span="6"
- ><p><span>总分:</span>50</p></el-col
+ ><p><span>总分:</span>{{ item.points }}</p></el-col
>
- <el-col :span="6"
- ><p><span>得分:</span>{{item.point}}</p></el-col>
+ <el-col :span="6"
+ ><p><span>得分:</span>{{ item.point }}</p></el-col
+ >
</el-row>
<el-row>
<el-col :span="24">
- <el-table border :data="item.child" :header-cell-style="{background:'#eef1f6',color:'#606266'}" :cell-style="{background:'#fff',color:'#606266'}">
+ <el-table
+ border
+ :data="item.child"
+ :header-cell-style="{ background: '#eef1f6', color: '#606266' }"
+ :cell-style="{ background: '#fff', color: '#606266' }"
+ >
<el-table-column
prop="standardizationRequirements"
align="center"
@@ -43,10 +59,10 @@
></el-table-column>
<el-table-column align="center" label="评审结果">
<template slot-scope="scope">
- <span v-if="(scope.row.safetyInspectionItemResult== 0)"
+ <span v-if="scope.row.safetyInspectionItemResult == 0"
>否决</span
>
- <span v-if="(scope.row.safetyInspectionItemResult == 1)"
+ <span v-if="scope.row.safetyInspectionItemResult == 1"
>扣分</span
>
</template>
@@ -57,24 +73,32 @@
type="expand"
width="100px"
>
- <template slot-scope="scope">
- <el-table
- :data="scope.row.selfDeductionList"
- border
- :header-cell-style="{background:'#eef1f6',color:'#606266'}" :cell-style="{background:'#fff',color:'#606266'}"
- >
- <el-table-column prop="name" align="center" label="扣分项">
- </el-table-column>
- <el-table-column prop="point" align="center" label="扣分">
- </el-table-column>
- <el-table-column
- prop="remark"
- align="center"
- label="扣分备注"
+ <template slot-scope="scope">
+ <el-table
+ :data="scope.row.selfDeductionList"
+ border
+ :header-cell-style="{
+ background: '#eef1f6',
+ color: '#606266',
+ }"
+ :cell-style="{ background: '#fff', color: '#606266' }"
>
- </el-table-column>
- </el-table>
- </template>
+ <el-table-column
+ prop="name"
+ align="center"
+ label="扣分项"
+ >
+ </el-table-column>
+ <el-table-column prop="point" align="center" label="扣分">
+ </el-table-column>
+ <el-table-column
+ prop="remark"
+ align="center"
+ label="扣分备注"
+ >
+ </el-table-column>
+ </el-table>
+ </template>
</el-table-column>
<el-table-column
prop="remark"
@@ -87,6 +111,7 @@
@click="handleClick(scope.row)"
type="text"
size="small"
+ :disabled="typeId == 2 ? true : false"
>评价</el-button
>
<!-- <el-button type="text" size="small" style="color: red"
@@ -104,7 +129,10 @@
</template>
<script>
import Titlename from "../../components/Titlename/index.vue";
-import { safetySelfInspectionInfo ,safetySelfInspectionFinish} from "@/api/safetySelfInspection.js";
+import {
+ safetySelfInspectionInfo,
+ safetySelfInspectionFinish,
+} from "@/api/safetySelfInspection.js";
export default {
components: { Titlename },
data() {
@@ -120,49 +148,72 @@
},
list: [],
lists: [],
+ listType: [],
+ typeId: "",
};
},
created() {
this.id = this.$route.query.id;
+ this.typeId = this.$route.query.type;
this.safeInitem(this.id);
},
methods: {
- finish(){
- let id = this.id
- this.$confirm('确定要结单吗?','提示',{
- confirmButtonText:'确定',
- cancelButtonText:'取消',
- type:'warning',
- }).then(()=> {
- safetySelfInspectionFinish({id:this.id}).then(res=>{
- console.log(123,res)
- if (res.data.code === '200') {
- this.$notify({
- title:'成功',
- message:'结单成功',
- type:'success',
- duration:2000,
- })
- }else{
- this.$message({
- message:res.data.message,
- type:'warning'
- })
- }
- })
- }).catch(error =>{
+ finish() {
+ var faly = "";
+ var bar = [];
+ for (var i = 0; i < this.listType.length; i++) {
+ if (this.listType[i].safetyInspectionItemResult == null) {
+ faly = false;
+ } else {
+ faly = true;
+ }
+ bar.push(faly);
+ }
+ if (bar.indexOf(false) == -1) {
+ let id = this.id;
+ this.$confirm("确定要结单吗?", "提示", {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning",
+ })
+ .then(() => {
+ safetySelfInspectionFinish({ id: this.id }).then((res) => {
+ console.log(123, res);
+ if (res.data.code === "200") {
+ this.$notify({
+ title: "成功",
+ message: "结单成功",
+ type: "success",
+ duration: 2000,
+ });
+ this.$router.push({
+ path: "/checklistself",
+ });
+ } else {
+ this.$message({
+ message: res.data.message,
+ type: "warning",
+ });
+ }
+ });
})
- },
+ .catch((error) => {});
+ } else {
+ alert("请将所有评分评价后再点结算");
+ }
+ },
safeInitem(id) {
safetySelfInspectionInfo({ id: id }).then((res) => {
if (res.data.code == 200) this.list = res.data.result;
+ this.listType = res.data.result.itemList;
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].child.points = arr[i].child.point;
}
this.lists = arr;
- // console.log('tag', arr)
+ console.log("tag", arr);
});
},
checkSameDataA(resData) {
@@ -187,30 +238,37 @@
if (!dataInfo[elementBName]) {
dataInfo[elementBName] = {
elementBName,
- point:"",
+ point: "",
+ points: item.point,
child: [],
};
}
dataInfo[elementBName].child.push(item);
});
let list = Object.values(dataInfo); // list 转换成功的数据
- console.log(list)
- for(var i=0;i<list.length;i++){
- var pot=50
- for(var j=0;j<list[i].child.length;j++){
- if(list[i].child[j].safetyInspectionItemResult!=0){
- pot=pot-list[i].child[j].selfDeductionList[0].point
- }else{
- var cont=0
- pot=0
- }
- }
- if(pot>0){
- list[i].point=pot
- }else{
- list[i].point=0
- }
+ // console.log("数据",list)
+ for (var i = 0; i < list.length; i++) {
+ var pot = list[i].points;
+ for (var j = 0; j < list[i].child.length; j++) {
+ if (list[i].child[j].safetyInspectionItemResult != 0) {
+ for (
+ var s = 0;
+ s < list[i].child[j].selfDeductionList.length;
+ s++
+ ) {
+ pot = pot - list[i].child[j].selfDeductionList[s].point;
+ }
+ } else {
+ var cont = 0;
+ pot = 0;
+ }
}
+ if (pot > 0) {
+ list[i].point = pot;
+ } else {
+ list[i].point = 0;
+ }
+ }
return list;
},
handleClick(data) {
@@ -218,7 +276,7 @@
path: "/review",
query: {
idC: data.id,
- id:this.id
+ id: this.id,
},
});
},
@@ -238,7 +296,7 @@
border-radius: 5px;
padding: 20px;
height: 850px;
- overflow-y:overlay;
+ overflow-y: overlay;
}
.title {
font-size: 16px;
@@ -248,12 +306,12 @@
.titles {
font-size: 14px;
}
-.box-right /deep/ .el-table__expanded-cell{
+.box-right /deep/ .el-table__expanded-cell {
background-color: #fff !important;
}
.btn {
- background-color: #034ea2;
- border: 1px solid #034ea2;
- float: right;
+ background-color: #034ea2;
+ border: 1px solid #034ea2;
+ float: right;
}
</style>
diff --git a/src/views/safetyproduction/review.vue b/src/views/safetyproduction/review.vue
index cf0222f..4a471fb 100644
--- a/src/views/safetyproduction/review.vue
+++ b/src/views/safetyproduction/review.vue
@@ -237,6 +237,8 @@
id: "",
form: {},
list: {},
+ point:"",
+ pointDel:""
};
},
created() {
@@ -247,13 +249,20 @@
itemInfo(id) {
safetySelfInspectionItemInfo({id:id}).then((res) => {
this.list = res.data.result;
+ this.point=res.data.result.point
+ this.pointDel=res.data.result.point
});
},
modItem() {
if(this.list.safetyInspectionItemResult!=null){
console.log(this.list)
+ for(var i=0;i<this.list.selfDeductionList.length;i++){
+ this.pointDel=this.pointDel-this.list.selfDeductionList[i].point
+ }
+
safetySelfInspectionModItemInfo(this.list).then((res) => {
if (res.data.code == 200) {
+ if(this.pointDel>=0){
this.$notify({
type: "success",
duration: 2000,
@@ -266,6 +275,9 @@
id:this.id
}
});
+ }else{
+ alert(`扣分不得超过总分${this.point}`)
+ }
}
});
}else{
@@ -290,7 +302,7 @@
this.form=JSON.parse(JSON.stringify(data));
},
addC(){
- if(this.form.point<=50){
+ if(this.form.point<=this.point){
for(let i = 0;i<this.list.selfDeductionList.length;i++){
if (this.form.id==this.list.selfDeductionList[i].id){
this.list.selfDeductionList[i].point = this.form.point
@@ -298,7 +310,7 @@
}
}
}else{
- alert("扣分不得超过总分50")
+ alert(`扣分不得超过总分${this.point}`)
}
this.dialogVisible = false;
},
--
Gitblit v1.9.2