From 4a6b6d253451a14063df0659877f3d8c4ca921a5 Mon Sep 17 00:00:00 2001
From: lyfO_o <764716047@qq.com>
Date: 星期四, 31 三月 2022 15:20:57 +0800
Subject: [PATCH] Merge remote-tracking branch 'remotes/origin/shf' into master

---
 src/views/contingencyplan/uploadImg.vue                             |   10 
 src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue      |   24 
 src/views/safetyproduction/gojudging.vue                            |  266 +++++-----
 src/views/majorHazardSourceMonitoring/productionEquipment/index.vue |   19 
 src/views/safetyproduction/feature.vue                              |   47 +
 src/views/safetyproduction/review.vue                               |  172 +++---
 src/views/majorHazardSourceMonitoring/instrumentData/index.vue      |   75 +-
 src/api/safetySelfInspection.js                                     |   11 
 src/assets/example/instrumentData.xlsx                              |    0 
 src/router/index.js                                                 |   27 
 src/views/safetyproduction/checklist.vue                            |    2 
 src/views/safetyproduction/checklistself.vue                        |   48 +
 src/views/safetyproduction/reviewXG.vue                             |  198 ++++---
 src/views/safetyproduction/new.vue                                  |  483 +++++++++++++------
 src/views/contingencyplan/index.vue                                 |   55 +-
 src/views/contingencyplan/uploadFile.vue                            |    1 
 16 files changed, 848 insertions(+), 590 deletions(-)

diff --git a/src/api/safetySelfInspection.js b/src/api/safetySelfInspection.js
index 1d19e81..af27ced 100644
--- a/src/api/safetySelfInspection.js
+++ b/src/api/safetySelfInspection.js
@@ -106,4 +106,15 @@
         method: 'post',
         data
     })
+}
+
+export function safetyInspectionItemId(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/safetyInspectionItem/info',
+        method: 'post',
+        data
+    })
 }
\ No newline at end of file
diff --git a/src/assets/example/instrumentData.xlsx b/src/assets/example/instrumentData.xlsx
new file mode 100644
index 0000000..8c1cd15
--- /dev/null
+++ b/src/assets/example/instrumentData.xlsx
Binary files differ
diff --git a/src/router/index.js b/src/router/index.js
index 9dd394d..c725fc3 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -134,20 +134,22 @@
             meta: { title: '自查清单', icon: '' }
           },
           {
-            id: 2,
-            parentId: 0,
+            // id: 2,
+            // parentId: 0,
             path: '/review',
-            name: '自查清单_评审',
+            // name: '自查清单_评审',
             component: () => import('@/views/safetyproduction/review'),
-            meta: { title: '自查清单_评审', icon: '' }
+            // meta: { title: '自查清单_评审', icon: '' }
+            hidden: true
           },
           {
-            id: 2,
-            parentId: 0,
+            // id: 2,
+            // parentId: 0,
             path: '/gojudging',
-            name: '自查清单_去评审',
+            // name: '自查清单_去评审',
             component: () => import('@/views/safetyproduction/gojudging'),
-            meta: { title: '自查清单_去评审', icon: '' }
+            // meta: { title: '自查清单_去评审', icon: '' }
+            hidden: true
           },
           {
             path: '/new',
@@ -157,12 +159,13 @@
             hidden: true
           },
           {
-            id: 2,
-            parentId: 0,
+            // id: 2,
+            // parentId: 0,
             path: '/reviewXG',
-            name: '自查清单_修改',
+            // name: '自查清单_修改',
             component: () => import('@/views/safetyproduction/reviewXG'),
-            meta: { title: '自查清单_修改', icon: '' }
+            // meta: { title: '自查清单_修改', icon: '' }
+            hidden: true
           }
            ]
       },
diff --git a/src/views/contingencyplan/index.vue b/src/views/contingencyplan/index.vue
index 9e07de8..ff3fd23 100644
--- a/src/views/contingencyplan/index.vue
+++ b/src/views/contingencyplan/index.vue
@@ -54,9 +54,10 @@
       :page-size="pageSize"
       layout="total, sizes, prev, pager, next, jumper"
       :total="recordTotal"
+      style="text-align: right;margin-top: 20px;"
     >
     </el-pagination>
-    <el-dialog :title="title" :visible.sync="dialogVisible" width="40%">
+    <el-dialog :title="title" :visible.sync="dialogVisible":close-on-click-modal="false" width="40%">
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-form-item label="预案名称" prop="name">
           <el-input v-model="form.name"></el-input>
@@ -79,7 +80,7 @@
       </el-form>
       <span slot="footer" class="dialog-footer">
         <el-button type="primary" class="btns" @click="addemergencyPlan()">确 定</el-button>
-        <el-button @click="dialogVisible = false">取 消</el-button>
+        <el-button @click="cancel()">取 消</el-button>
       </span>
     </el-dialog>
   </div>
@@ -125,9 +126,9 @@
         name: [
           { required: true, message: "预案名称不能为空", trigger: "change" },
         ],
-        remark: [
-          { required: true, message: "责任人不能为空", trigger: "blur" },
-        ],
+        // remark: [
+        //   { required: true, message: "备注不能为空", trigger: "blur" },
+        // ],
       },
     };
   },
@@ -149,7 +150,8 @@
       uploadImgSuccess(res){
           let file = {
               fileUrl : res.fileUrl,
-              fileName : res.fileName
+              fileName : res.fileName,
+              url:res.url
           }
           this.fileList.push(file)
       },
@@ -215,11 +217,6 @@
                   message: "新增成功",
                   title: "成功",
                 });
-              } else {
-                this.$message({
-                  type: "warning",
-                  message: res.data.message,
-                });
               }
             });
           }
@@ -234,11 +231,6 @@
                 message: "编辑成功",
                 title: "成功",
               });
-            } else {
-              this.$message({
-                type: "warning",
-                message: res.data.message,
-              });
             }
           });
         }
@@ -246,16 +238,29 @@
       });
     },
     deleteById(val) {
-      emergencyPlanDel({ id: val }).then(() => {
-        this.emergencyPlan();
-        this.$notify({
-          title: "成功",
-          message: "删除成功",
-          type: "success",
-          duration: 2000,
-        });
-      });
+        this.$confirm('确认删除吗','提示', {
+            confirmButtonText: '确认',
+            cancelButtonText: '取消',
+            type: 'warning'
+        })
+            .then(()=>{
+              emergencyPlanDel({ id: val }).then(() => {
+                this.emergencyPlan();
+                this.$notify({
+                  title: "成功",
+                  message: "删除成功",
+                  type: "success",
+                  duration: 2000,
+                });
+              });
+            })
+            .catch(error =>{
+            });
     },
+      cancel(){
+          this.emergencyPlan();
+          this.dialogVisible = false;
+      },
     find() {
       this.emergencyPlan();
     },
diff --git a/src/views/contingencyplan/uploadFile.vue b/src/views/contingencyplan/uploadFile.vue
index e4b8006..9181943 100644
--- a/src/views/contingencyplan/uploadFile.vue
+++ b/src/views/contingencyplan/uploadFile.vue
@@ -73,7 +73,6 @@
   methods: {
 
       downLoadFile(fileUrl){
-          console.log(123,fileUrl)
           let a = document.createElement('a')
           // a.href = this.defaultUrl+`/upload/downloadNew?path=`+encodeURI(fileUrl)
           a.href = process.env.BASE_API + '/upload/'+fileUrl
diff --git a/src/views/contingencyplan/uploadImg.vue b/src/views/contingencyplan/uploadImg.vue
index 5613f0c..a4aaad7 100644
--- a/src/views/contingencyplan/uploadImg.vue
+++ b/src/views/contingencyplan/uploadImg.vue
@@ -93,17 +93,11 @@
                     if (res.data.code==200){
                         this.fileUrl = res.data.result.fileUrl
                         this.fileName = res.data.result.fileName
-                        this.fileList.push(
-                            {
-                                fileUrl: res.data.result.fileUrl,
-                                fileName:res.data.result.fileName,
-                                url:process.env.IMG_API + 'emergencyPlan/'+res.data.result.fileName
-                            }
-                        )
                         this.$nextTick(() => {
                             this.$emit('uploadImgSuccess', {
                                 fileName: this.fileName,
-                                fileUrl: this.fileUrl
+                                fileUrl: this.fileUrl,
+                                url:process.env.IMG_API + 'emergencyPlan/'+res.data.result.fileName
                             });
                         });
                         this.$message({
diff --git a/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue b/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue
index 8b80821..97e7aad 100644
--- a/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue
+++ b/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue
@@ -36,8 +36,8 @@
             </el-table-column>
             <el-table-column label="状态" align="center">
                 <template slot-scope="scope">
-                    <span v-if="scope.row.status == 0">已处理</span>
-                    <span v-if="scope.row.status == 1">未处理</span>
+                    <span v-if="scope.row.status == 0">未处理</span>
+                    <span v-if="scope.row.status == 1">已处理</span>
                 </template>
             </el-table-column>
             <el-table-column prop="alarmTime" label="报警时间" align="center">
@@ -74,12 +74,14 @@
                 :page-size="pageSize"
                 layout="total, sizes, prev, pager, next, jumper"
                 :total="recordTotal"
+                style="margin-top: 20px;"
             >
             </el-pagination>
         </div>
         <el-dialog
             :title="title"
             :visible.sync="dialogVisible"
+            :close-on-click-modal="false"
             width="40%"
         >
             <el-form ref="form" :rules="rules" :model="form" label-width="80px">
@@ -151,7 +153,7 @@
         <el-button type="primary" class="btns" @click="AddelementManagement()"
         >确 定</el-button
         >
-        <el-button @click="dialogVisible = false">取 消</el-button>
+        <el-button @click="cancel()">取 消</el-button>
       </span>
         </el-dialog>
     </div>
@@ -197,7 +199,7 @@
                     alarmInfo: { required: true, message: "请输入报警信息", trigger: "change"},
                 },
                 equipmentName:[],
-                unitIdOptions:[{label:"已处理",value:0},{label:"未处理",value:1}]
+                unitIdOptions:[{label:"已处理",value:0},{label:"未处理",value:1}],
             };
         },
         created() {
@@ -255,10 +257,6 @@
                                         title: "成功",
                                     });
                                 } else {
-                                    this.$message({
-                                        type: "warning",
-                                        message: res.data.message,
-                                    });
                                 }
                             });
                         } else {
@@ -272,17 +270,17 @@
                                         message: "编辑成功",
                                         title: "成功",
                                     });
-                                } else {
-                                    his.$message({
-                                        type: "warning",
-                                        message: res.data.message,
-                                    });
+                                }else {
                                 }
                             });
                         }
                     }
                 });
             },
+            cancel(){
+                this.elementManagementL();
+                this.dialogVisible = false
+            },
             deleteById(val) {
                 this.$confirm('确认删除吗','提示', {
                     confirmButtonText: '确认',
diff --git a/src/views/majorHazardSourceMonitoring/instrumentData/index.vue b/src/views/majorHazardSourceMonitoring/instrumentData/index.vue
index 9123e8b..1d70796 100644
--- a/src/views/majorHazardSourceMonitoring/instrumentData/index.vue
+++ b/src/views/majorHazardSourceMonitoring/instrumentData/index.vue
@@ -7,27 +7,12 @@
                         <el-input v-model="listQuery.filter.equipmentName" clearable></el-input>
                     </el-form-item>
                 </el-col>
-                <el-col :span="8" style="text-align: center">
-                    <el-button type="primary" icon="el-icon-search" @click="find()" class="btns"
-                    >搜索</el-button
-                    >
-                    <el-button
-                        type="primary"
-                        icon="el-icon-plus"
-                        class="btns"
-                        @click="handleClick('', '新增')"
-                    >新增</el-button
-                    >
-                    <el-button
-                        type="primary"
-                        icon="el-icon-plus"
-                        class="btns"
-                        @click="importData()"
-                    >导入</el-button
-                    >
-                    <el-button type="primary" icon="el-icon-refresh" @click="reset()" class="btns"
-                    >重置</el-button
-                    >
+                <el-col :span="10" style="text-align: center">
+                    <el-button type="primary" icon="el-icon-search" @click="find()" class="btns">搜索</el-button>
+                    <el-button type="primary" icon="el-icon-refresh" @click="reset()" class="btns">重置</el-button>
+                    <el-button type="primary" icon="el-icon-plus" class="btns" @click="handleClick('', '新增')">新增</el-button>
+                    <el-button type="primary" icon="el-icon-plus" class="btns" @click="importData()">导入</el-button>
+                    <el-button type="primary"  class="btns" @click="exportTemplate()">下载导入模板</el-button>
                 </el-col>
             </el-row>
         </el-form>
@@ -78,12 +63,14 @@
                 :page-size="pageSize"
                 layout="total, sizes, prev, pager, next, jumper"
                 :total="recordTotal"
+                style="margin-top: 20px;"
             >
             </el-pagination>
         </div>
         <el-dialog
             :title="title"
             :visible.sync="dialogVisible"
+            :close-on-click-modal="false"
             width="40%"
         >
             <el-form ref="form" :rules="rules" :model="form" label-width="120px">
@@ -120,36 +107,36 @@
                 <el-row>
                     <el-col :span="12">
                         <el-form-item label="仪表量程下限" prop="rangeLowerLimit">
-                            <el-input v-model.number="form.rangeLowerLimit" maxlength="50"></el-input>
+                            <el-input v-model="form.rangeLowerLimit" maxlength="50"></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12">
-                        <el-form-item label="仪表量程上限" prop="rangeLowerLimit">
-                            <el-input v-model.number="form.rangeUpperLimit" maxlength="50"></el-input>
+                        <el-form-item label="仪表量程上限" prop="rangeUpperLimit">
+                            <el-input v-model="form.rangeUpperLimit" maxlength="50"></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
                 <el-row>
                     <el-col :span="12">
-                        <el-form-item label="高高液位报警值" prop="rangeUpperLimit">
-                            <el-input v-model.number="form.highHighLiquidAlarm" maxlength="50"></el-input>
+                        <el-form-item label="高高液位报警值" prop="highHighLiquidAlarm">
+                            <el-input v-model="form.highHighLiquidAlarm" maxlength="50"></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12">
                         <el-form-item label="高液位报警值" prop="highLiquidAlarm">
-                            <el-input v-model.number="form.highLiquidAlarm" maxlength="50"></el-input>
+                            <el-input v-model="form.highLiquidAlarm" maxlength="50"></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
                 <el-row>
                     <el-col :span="12">
                         <el-form-item label="低液位报警值" prop="lowLiquidAlarm">
-                            <el-input v-model.number="form.lowLiquidAlarm" maxlength="50"></el-input>
+                            <el-input v-model="form.lowLiquidAlarm" maxlength="50"></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12">
                         <el-form-item label="低低液位报警值" prop="lowLowLiquidAlarm">
-                            <el-input v-model.number="form.lowLowLiquidAlarm" maxlength="50"></el-input>
+                            <el-input v-model="form.lowLowLiquidAlarm" maxlength="50"></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
@@ -158,7 +145,7 @@
         <el-button type="primary" class="btns" @click="AddelementManagement()"
         >确 定</el-button
         >
-        <el-button @click="dialogVisible = false">取 消</el-button>
+        <el-button @click="cancel()">取 消</el-button>
       </span>
         </el-dialog>
     </div>
@@ -173,6 +160,7 @@
     } from "@/api/majorEquipmentData.js";
     import { majorEquipmentErt } from "@/api/majorEquipment.js";
     import XLSX from 'xlsx'
+    const exampleFile = require('@/assets/example/instrumentData.xlsx')
     export default {
         data() {
             return {
@@ -208,27 +196,27 @@
                         { required: true, message: "请选择检测时间", trigger: "change"},
                     rangeLowerLimit:[
                         { required: true, message: "仪表量程下限不能为空", trigger: "change"},
-                        { type: 'number', message: '仪表量程下限必须为数字值'}
+                        { pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, message: '请输入数字格式,可保留两位小数' }
                     ],
                     rangeUpperLimit:[
                         { required: true, message: "仪表量程上限不能为空", trigger: "change"},
-                        { type: 'number', message: '仪表量程上限必须为数字值'}
+                        { pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, message: '请输入数字格式,可保留两位小数' }
                     ],
                     highHighLiquidAlarm:[
                         { required: true, message: "高高液位报警值不能为空", trigger: "change"},
-                        { type: 'number', message: '高高液位报警值必须为数字值'}
+                        { pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, message: '请输入数字格式,可保留两位小数' }
                     ],
                     highLiquidAlarm:[
                         { required: true, message: "高液位报警值不能为空", trigger: "change"},
-                        { type: 'number', message: '高液位报警值必须为数字值'}
+                        { pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, message: '请输入数字格式,可保留两位小数' }
                     ],
                     lowLiquidAlarm:[
                         { required: true, message: "低液位报警值不能为空", trigger: "change"},
-                        { type: 'number', message: '低液位报警值必须为数字值'}
+                        { pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, message: '请输入数字格式,可保留两位小数' }
                     ],
                     lowLowLiquidAlarm:[
                         { required: true, message: "低低液位报警值不能为空", trigger: "change"},
-                        { type: 'number', message: '低低液位报警值必须为数字值'},
+                        { pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, message: '请输入数字格式,可保留两位小数' }
                     ],
                 },
                 equipmentName:[],
@@ -240,6 +228,9 @@
             this.initMajorEquipment()
         },
         methods: {
+            exportTemplate(){
+                window.open(exampleFile, '_blank')
+            },
 
             importData(){
                 let input = document.createElement('input'); input.type = 'file';
@@ -466,10 +457,6 @@
                                         title: "成功",
                                     });
                                 } else {
-                                    this.$message({
-                                        type: "warning",
-                                        message: res.data.message,
-                                    });
                                 }
                             });
                         } else {
@@ -484,16 +471,16 @@
                                         title: "成功",
                                     });
                                 } else {
-                                    his.$message({
-                                        type: "warning",
-                                        message: res.data.message,
-                                    });
                                 }
                             });
                         }
                     }
                 });
             },
+            cancel(){
+                this.elementManagementL();
+                this.dialogVisible = false
+            },
             deleteById(val) {
                 this.$confirm('确认删除吗','提示', {
                     confirmButtonText: '确认',
diff --git a/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue b/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue
index ede80cb..a2d0b13 100644
--- a/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue
+++ b/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue
@@ -64,7 +64,7 @@
                 </template>
             </el-table-column>
         </el-table>
-        <div style="text-align:right">
+        <div style="text-align:right;margin-top: 20px;">
             <el-pagination
                 v-show="recordTotal>0"
                 @size-change="handleSizeChange"
@@ -80,6 +80,7 @@
         <el-dialog
             :title="title"
             :visible.sync="dialogVisible"
+            :close-on-click-modal="false"
             width="40%"
         >
             <el-form ref="form" :rules="rules" :model="form" label-width="80px">
@@ -145,7 +146,7 @@
         <el-button type="primary" class="btns" @click="AddelementManagement()"
         >确 定</el-button
         >
-        <el-button @click="dialogVisible = false">取 消</el-button>
+        <el-button @click="cancel()">取 消</el-button>
       </span>
         </el-dialog>
     </div>
@@ -227,7 +228,6 @@
                 this.$nextTick(() => {
                     this.$refs["form"].clearValidate();
                 });
-
                 if (type == "新增") {
                     this.title = "新增";
                     this.form = {
@@ -257,10 +257,6 @@
                                         title: "成功",
                                     });
                                 } else {
-                                    this.$message({
-                                        type: "warning",
-                                        message: res.data.message,
-                                    });
                                 }
                             });
                         } else {
@@ -275,10 +271,7 @@
                                         title: "成功",
                                     });
                                 } else {
-                                    his.$message({
-                                        type: "warning",
-                                        message: res.data.message,
-                                    });
+
                                 }
                             });
                         }
@@ -307,6 +300,10 @@
                     .catch(error =>{
                     });
             },
+            cancel(){
+                this.elementManagementL();
+                this.dialogVisible = false;
+            },
             find(){
                 this.elementManagementL();
             },
diff --git a/src/views/safetyproduction/checklist.vue b/src/views/safetyproduction/checklist.vue
index d2b83ca..7c44497 100644
--- a/src/views/safetyproduction/checklist.vue
+++ b/src/views/safetyproduction/checklist.vue
@@ -266,7 +266,7 @@
       </div>
     </div>
 
-    <el-dialog :title="titleN" :visible.sync="dialogVisible" width="30%">
+    <el-dialog :title="titleN" :visible.sync="dialogVisible" :close-on-click-modal="false" width="30%">
       <el-form ref="form" :model="formInline" label-width="80px">
         <el-form-item label="名称">
           <el-input v-model="formInline.name"></el-input>
diff --git a/src/views/safetyproduction/checklistself.vue b/src/views/safetyproduction/checklistself.vue
index 9c95d1e..ecde465 100644
--- a/src/views/safetyproduction/checklistself.vue
+++ b/src/views/safetyproduction/checklistself.vue
@@ -68,7 +68,7 @@
            <el-button v-if="scope.row.status==1" @click="handleClick(scope.row)" type="text" size="small"
             >查看</el-button
           >
-          <el-button  v-if="scope.row.status==1?false:true" type="text" size="small" style="color: red"
+          <el-button  @click="Del(scope.row.id)" v-if="scope.row.status==1?false:true" type="text" size="small" style="color: red"
             >删除</el-button
           >
         </template>
@@ -90,7 +90,7 @@
   </div>
 </template>
 <script>
-import { safetySelfInspectionList } from "@/api/safetySelfInspection.js";
+import { safetySelfInspectionList,safetySelfInspectionDel} from "@/api/safetySelfInspection.js";
 export default {
   data() {
     return {
@@ -128,7 +128,25 @@
         }
       });
     },
-    handleClick(index) {},
+    handleClick(val) {
+      console.log(val)
+     if(val.status==-1){
+        this.$router.push({
+        path:"/new",
+        query:{
+          id:val.id,
+          name:'编辑'
+        }
+      })
+     }else if(val.status==0){
+         this.$router.push({
+        path:"/gojudging",
+        query:{
+          id:val.id
+        }
+      })
+     }
+    },
     find() {
       this.safetySelfInspectionL();
     },
@@ -142,9 +160,31 @@
     },
     jump(){
       this.$router.push({
-        path:"/new"
+        path:"/new",
+        query:{
+          name:'添加'
+        }
+      })
+    },
+    Del(id){
+        this.$confirm('确认删除吗','提示', {
+            confirmButtonText: '确认',
+            cancelButtonText: '取消',
+            type: 'warning'
+        }).then(()=>{
+      safetySelfInspectionDel({id:id}).then(res=>{
+        if(res.data.code==200){
+          this.safetySelfInspectionL();
+           this.$notify({
+            title: "成功",
+            message: "删除成功",
+            type: "success",
+            duration: 2000,
+          });
+        }
       })
     }
+    )}
   },
 };
 </script>
diff --git a/src/views/safetyproduction/feature.vue b/src/views/safetyproduction/feature.vue
index 8ab28c8..312c285 100644
--- a/src/views/safetyproduction/feature.vue
+++ b/src/views/safetyproduction/feature.vue
@@ -74,6 +74,7 @@
     <el-dialog
       :title="title"
       :visible.sync="dialogVisible"
+      :close-on-click-modal="false"
       width="40%"
     >
       <el-form ref="form" :rules="rules" :model="form" label-width="80px">
@@ -139,7 +140,7 @@
         <el-button type="primary" class="btns" @click="AddelementManagement()"
           >确 定</el-button
         >
-        <el-button @click="dialogVisible = false">取 消</el-button>
+        <el-button @click="cancel()">取 消</el-button>
       </span>
     </el-dialog>
   </div>
@@ -303,18 +304,38 @@
       });
     },
     deleteById(val) {
-      elementManagementDel({id:val}).then((res) => {
-        if (res.data.code == 200) {
-          this.elementManagementL();
-          this.$notify({
-            title: "成功",
-            message: "删除成功",
-            type: "success",
-            duration: 2000,
-          });
-        }
-      });
+        console.log(123,val)
+        this.$confirm('确认删除吗','提示', {
+            confirmButtonText: '确认',
+            cancelButtonText: '取消',
+            type: 'warning'
+        })
+            .then(()=>{
+               elementManagementDel({id:val}).then((res) => {
+                 if (res.data.code == 200) {
+                   this.elementManagementL();
+                   this.$notify({
+                     title: "成功",
+                     message: "删除成功",
+                     type: "success",
+                     duration: 2000,
+                   });
+                 }else {
+                     this.$message({
+                         type: "warning",
+                         // message: res.data.message,
+                         message: "当前A级要素仍然有已绑定的B级要素,无法删除"
+                     });
+                 }
+               });
+            })
+            .catch(error =>{
+            });
     },
+      cancel(){
+          this.elementManagementL();
+          this.dialogVisible = false;
+      },
   find(){
      this.elementManagementL();
   },
@@ -334,4 +355,4 @@
   background-color: #034ea2;
   border: 1px solid #034ea2;
 }
-</style>
\ No newline at end of file
+</style>
diff --git a/src/views/safetyproduction/gojudging.vue b/src/views/safetyproduction/gojudging.vue
index 51cd6f6..6230be4 100644
--- a/src/views/safetyproduction/gojudging.vue
+++ b/src/views/safetyproduction/gojudging.vue
@@ -1,107 +1,105 @@
 <template>
   <div>
-      <div class="box-right">
-          <div class="title">A级要素:<span>A级要素2</span></div>
-        <div v-for="(item,index) in 2" :key="index">
+    <div class="box-right">
+      <div v-for="(item, index) in lists" :key="index">
+        <div class="title">
+          A级要素:<span>{{ item.elementAName }}</span>
+        </div>
+        <div v-for="(item, index) in item.child" :key="index">
           <el-row class="titles">
-            <el-col :span="6"><p><span>B级要素:</span>法律、法规和标准的识别和获取</p></el-col>
-             <el-col :span="6"><p><span>得分:</span>50</p></el-col>
+            <el-col :span="6"
+              ><p><span>B级要素:</span>{{ item.elementBName }}</p></el-col
+            >
+            <el-col :span="6"
+              ><p><span>得分:</span>50</p></el-col
+            >
           </el-row>
           <el-row>
-             <el-col :span="24">
+            <el-col :span="24">
+              <el-table border :data="item.child">
+                <el-table-column
+                  prop="standardizationRequirements"
+                  align="center"
+                  label="标准化要求"
+                >
+                </el-table-column>
+                <el-table-column
+                  prop="enterpriseStandard"
+                  align="center"
+                  label="企业达标标准"
+                ></el-table-column>
+                <el-table-column
+                  prop="reviewMethod"
+                  align="center"
+                  label="评审方法"
+                ></el-table-column>
+                <el-table-column
+                  prop="veto"
+                  align="center"
+                  label="否决项"
+                ></el-table-column>
+                <el-table-column align="center" label="评审结果">
+                  <template slot-scope="scope">
+                    <span v-if="(scope.row.safetyInspectionItemResult = 0)"
+                      >是</span
+                    >
+                    <span v-if="(scope.row.safetyInspectionItemResult = 1)"
+                      >否</span
+                    >
+                  </template>
+                </el-table-column>
+                <el-table-column
+                  align="center"
+                  label="扣分项"
+                  type="expand"
+                  width="100px"
+                >
+                <template slot-scope="scope">
                   <el-table
-                     border
-                    :data="tableData"
+                    :data="scope.row.selfDeductionList"
                   >
-                    <el-table-column
-                      prop="date"
-                      align="center"
-                      label="标准化要求"
-                    >
+                    <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="name"
-                      align="center"
-                      label="企业达标标准"
-                    ></el-table-column>
-                    <el-table-column
-                      prop="name"
-                      align="center"
-                      label="评审方法"
-                    ></el-table-column>
-                      <el-table-column
-                      prop="name"
-                      align="center"
-                      label="评审标准"
-                    >
-                     <el-table-column
-                      prop="name"
-                      align="center"
-                      label="否决项"
-                    ></el-table-column>
-                     <el-table-column
-                      prop="name"
-                      align="center"
-                      label="扣分项"
-                    ></el-table-column>
-                    </el-table-column>
-                     <el-table-column
-                      prop="name"
-                      align="center"
-                      label="扣分"
-                      type="expand"
-                      width="50px"
-                    >
-                        <el-table
-                        :data="tableData"
-                  >
-                    <el-table-column
-                      prop="name"
-                      align="center"
-                      label="扣分项"
-                    >
-                    </el-table-column>
-                    <el-table-column
-                      prop="date"
-                      align="center"
-                      label="扣分"
-                    >
-                    </el-table-column>
-                    <el-table-column
-                      prop="date"
+                      prop="remark"
                       align="center"
                       label="扣分备注"
                     >
                     </el-table-column>
                   </el-table>
-                    </el-table-column>
-                     <el-table-column
-                      prop="name"
-                      align="center"
-                      label="备注"
-                    ></el-table-column>
-                    <el-table-column align="center" label="操作" width="200px">
-                      <template slot-scope="scope">
-                        <el-button
-                          @click="handleClick(scope.row)"
-                          type="text"
-                          size="small"
-                          >评价</el-button
-                        >
-                        <!-- <el-button type="text" size="small" style="color: red"
+                </template>
+                </el-table-column>
+                <el-table-column
+                  prop=""
+                  align="center"
+                  label="备注"
+                ></el-table-column>
+                <el-table-column align="center" label="操作" width="200px">
+                  <template slot-scope="scope">
+                    <el-button
+                      @click="handleClick(scope.row)"
+                      type="text"
+                      size="small"
+                      >评价</el-button
+                    >
+                    <!-- <el-button type="text" size="small" style="color: red"
                           >删除</el-button
                         > -->
-                      </template>
-                    </el-table-column>
-                  </el-table>
-                </el-col>
-              </el-row>
+                  </template>
+                </el-table-column>
+              </el-table>
+            </el-col>
+          </el-row>
         </div>
-        </div>
+      </div>
+    </div>
   </div>
 </template>
 <script>
 import Titlename from "../../components/Titlename/index.vue";
+import { safetySelfInspectionInfo } from "@/api/safetySelfInspection.js";
 export default {
   components: { Titlename },
   data() {
@@ -110,53 +108,71 @@
       form: {
         name: "",
       },
+      id: "",
       formInline: {
         user: "",
         region: "",
       },
-      tableData: [
-        {
-          date: "2016-05-02",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1518 弄",
-          zip: 200333,
-        },
-        {
-          date: "2016-05-04",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1517 弄",
-          zip: 200333,
-        },
-        {
-          date: "2016-05-01",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1519 弄",
-          zip: 200333,
-        },
-        {
-          date: "2016-05-03",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1516 弄",
-          zip: 200333,
-        },
-      ],
-      defaultProps: {
-        children: "children",
-        label: "label",
-      },
+      list: [],
+      lists: [],
     };
   },
+  created() {
+    this.id = this.$route.query.id;
+    this.safeInitem(this.id);
+  },
   methods: {
-    btnsQX() {
-      this.show = true;
+    safeInitem(id) {
+      safetySelfInspectionInfo({ id: id }).then((res) => {
+        // console.log("数据", res);
+        if (res.data.code == 200) this.list = res.data.result;
+        var arr = this.checkSameDataA(this.list.itemList);
+        for (var i = 0; i < arr.length; i++) {
+          arr[i].child = this.checkSameData(arr[i].child);
+        }
+        this.lists = arr;
+        console.log(this.lists)
+      });
+    },
+    checkSameDataA(resData) {
+      let dataInfo = {};
+      resData.forEach((item, index) => {
+        let { elementAName } = item;
+        if (!dataInfo[elementAName]) {
+          dataInfo[elementAName] = {
+            elementAName,
+            child: [],
+          };
+        }
+        dataInfo[elementAName].child.push(item);
+      });
+      let list = Object.values(dataInfo); // list 转换成功的数据
+      return list;
+    },
+    checkSameData(resData) {
+      let dataInfo = {};
+      resData.forEach((item, index) => {
+        let { elementBName } = item;
+        if (!dataInfo[elementBName]) {
+          dataInfo[elementBName] = {
+            elementBName,
+            child: [],
+          };
+        }
+        dataInfo[elementBName].child.push(item);
+      });
+      let list = Object.values(dataInfo); // list 转换成功的数据
+      return list;
+    },
+    handleClick(data) {
+      console.log(data.id);
+      this.$router.push({
+        path: "/review",
+        query: {
+          idC: data.id,
+          id:this.id
+        },
+      });
     },
   },
 };
@@ -174,12 +190,12 @@
   border-radius: 5px;
   padding: 20px;
 }
-.title{
+.title {
   font-size: 16px;
   padding: 10px 0px;
   font-weight: bold;
 }
-.titles{
+.titles {
   font-size: 14px;
 }
 </style>
\ No newline at end of file
diff --git a/src/views/safetyproduction/new.vue b/src/views/safetyproduction/new.vue
index ca2005c..9ad7b6f 100644
--- a/src/views/safetyproduction/new.vue
+++ b/src/views/safetyproduction/new.vue
@@ -5,131 +5,158 @@
         <Titlename title="检查项树"></Titlename>
         <div class="box-left-content">
           <el-tree
+            ref="tree"
             :data="tree"
-            node-key="id"
+            node-key="value"
             @check="treeClick"
+            :expand-on-click-node="false"
+            :default-checked-keys="treeList"
             show-checkbox
           ></el-tree>
         </div>
       </div>
       <div class="box-right" v-if="list == '' ? false : true">
-        <el-button type="primary" @click="open()" class="btns">添加</el-button>
-        <div v-for="(item, i) in lists" :key="i">
-        <div class="title">
-          A级要素:<span>{{ item.nameA }}</span>
+        <div class="btns">
+          <el-button type="primary" class="btn" @click="open(0)"
+            >添加</el-button
+          >
+          <el-button type="primary" class="btn" @click="open(-1)"
+            >暂存</el-button
+          >
         </div>
-        <div v-for="(item, index) in item.child" :key="index">
-          <el-row class="titles">
-            <el-col :span="6" :offset="1"
-              ><p><span>B级要素:</span>{{ item.elementBName }}</p></el-col
-            >
-            <el-col :span="6" :offset="4"
-              ><p><span>得分:</span>50</p></el-col
-            >
-          </el-row>
-          <el-row>
-            <el-col :span="22" :offset="1">
-              <el-table border :data="item.child">
-                <el-table-column
-                  prop="standardizationRequirements"
-                  align="center"
-                  label="标准化要求"
-                >
-                </el-table-column>
-                <el-table-column
-                  prop="enterpriseStandard"
-                  align="center"
-                  label="企业达标标准"
-                ></el-table-column>
-                <el-table-column
-                  prop="reviewMethod"
-                  align="center"
-                  label="评审方法"
-                ></el-table-column>
-                <el-table-column prop="name" align="center" label="评审标准">
+        <div v-for="(item, i) in lists" :key="i">
+          <div class="title">
+            A级要素:<span>{{ item.elementAName }}</span>
+          </div>
+          <div v-for="(item, index) in item.child" :key="index">
+            <el-row class="titles">
+              <el-col :span="6" :offset="1"
+                ><p><span>B级要素:</span>{{ item.elementBName }}</p></el-col
+              >
+              <el-col :span="6" :offset="4"
+                ><p><span>得分:</span>50</p></el-col
+              >
+            </el-row>
+            <el-row>
+              <el-col :span="22" :offset="1">
+                <el-table ref="table" border :data="item.child">
                   <el-table-column
-                    prop="veto"
+                    prop="standardizationRequirements"
                     align="center"
-                    label="否决项"
+                    label="标准化要求"
+                  >
+                  </el-table-column>
+                  <el-table-column
+                    prop="enterpriseStandard"
+                    align="center"
+                    label="企业达标标准"
                   ></el-table-column>
                   <el-table-column
+                    prop="reviewMethod"
                     align="center"
-                    width="80px"
-                    type="expand"
-                    label="扣分项"
-                  >
-                    <el-table :data="item.child.deductionList">
-                      <el-table-column
-                        prop="name"
-                        align="center"
-                        label="扣分项"
-                      >
-                      </el-table-column>
-                      <el-table-column prop="date" align="center" label="扣分">
-                      </el-table-column>
-                      <el-table-column
-                        prop="date"
-                        align="center"
-                        label="扣分备注"
-                      >
-                      </el-table-column>
-                    </el-table>
-                  </el-table-column>
-                </el-table-column>
-                <el-table-column align="center" label="操作" width="200px">
-                  <template slot-scope="scope">
-                    <el-button
-                      @click="handleClick(scope.row)"
-                      type="text"
-                      size="small"
-                      >修改</el-button
+                    label="评审方法"
+                  ></el-table-column>
+                  <el-table-column prop="name" align="center" label="评审标准">
+                    <el-table-column
+                      prop="veto"
+                      align="center"
+                      label="否决项"
+                    ></el-table-column>
+                    <el-table-column
+                      align="center"
+                      width="80px"
+                      label="扣分项"
+                      type="expand"
                     >
-                    <!-- <el-button type="text" size="small" style="color: red"
+                      <template slot-scope="scope">
+                        <el-table :data="scope.row.deductionList">
+                          <el-table-column
+                            prop="name"
+                            align="center"
+                            label="扣分项"
+                          >
+                          </el-table-column>
+                          <el-table-column
+                            prop="date"
+                            align="center"
+                            label="扣分"
+                          >
+                          </el-table-column>
+                          <el-table-column
+                            prop="date"
+                            align="center"
+                            label="扣分备注"
+                          >
+                          </el-table-column>
+                        </el-table>
+                      </template>
+                    </el-table-column>
+                  </el-table-column>
+                  <el-table-column align="center" label="操作" width="200px">
+                    <template slot-scope="scope">
+                      <el-button
+                        @click="handleClick(scope.row)"
+                        type="text"
+                        size="small"
+                        >修改</el-button
+                      >
+                      <!-- <el-button type="text" size="small" style="color: red"
                           >删除</el-button
                         > -->
-                  </template>
-                </el-table-column>
-              </el-table>
-            </el-col>
-          </el-row>
-        </div>
+                    </template>
+                  </el-table-column>
+                </el-table>
+              </el-col>
+            </el-row>
+          </div>
         </div>
       </div>
     </div>
-    <el-dialog
-  title="添加"
-  :visible.sync="dialogVisible"
-  width="30%"
->
-  <el-form ref="form" :model="form" label-width="100px">
-     <el-form-item label="自查清单名称">
-    <el-input v-model="form.inspectionName"></el-input>
-  </el-form-item>
-   <el-form-item label="检查人名称">
-    <el-select v-model="form.inspector" placeholder="请选择">
-    <el-option
-      v-for="item in nameList"
-      :key="item.id"
-      :label="item.realname"
-      :value="item.id">
-    </el-option>
-  </el-select>
-  </el-form-item>
-   <el-form-item label="时间">
-    <el-col :span="11">
-      <el-date-picker type="date"  format="yyyy 年 MM 月 dd 日" placeholder="开始时间" v-model="form.inspectionTime" style="width: 100%;"></el-date-picker>
-    </el-col>
-    <!-- <el-col style="text-align:center" :span="2">-</el-col>
+    <el-dialog title="添加" :visible.sync="dialogVisible" :close-on-click-modal="false" width="30%">
+      <el-form ref="form" :model="form" label-width="100px">
+        <el-form-item label="自查清单名称">
+          <el-input v-model="form.inspectionName"></el-input>
+        </el-form-item>
+        <el-form-item label="检查人名称">
+          <el-select
+            v-model="form.inspector"
+            style="width: 100%"
+            placeholder="请选择"
+          >
+            <el-option
+              v-for="item in nameList"
+              :key="item.id"
+              :label="item.realname"
+              :value="item.id"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="时间">
+          <el-col :span="11">
+            <el-date-picker
+              type="date"
+              format="yyyy 年 MM 月 dd 日"
+              placeholder="开始时间"
+              v-model="form.inspectionTime"
+              style="width: 100%"
+            ></el-date-picker>
+          </el-col>
+          <!-- <el-col style="text-align:center" :span="2">-</el-col>
     <el-col :span="11">
       <el-date-picker type="date"  format="yyyy 年 MM 月 dd 日" placeholder="结束时间" v-model="form.inspectionEndTime" style="width: 100%;"></el-date-picker>
     </el-col> -->
-  </el-form-item>
-    </el-form>
-  <span slot="footer" class="dialog-footer">
-    <el-button @click="dialogVisible = false">取 消</el-button>
-    <el-button type="primary" @click="addC">确 定</el-button>
-  </span>
-</el-dialog>
+        </el-form-item>
+      </el-form>
+      <span
+        slot="footer"
+        style="text-align: center; display: block"
+        class="dialog-footer"
+      >
+        <el-button type="primary" class="btn" @click="addC">确 定</el-button>
+        <el-button @click="dialogVisible = false">取 消</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -139,6 +166,8 @@
   safetyInspectionItemTreeB,
   safetySelfInspectionAdd,
   safetyInspectionItemName,
+  safetySelfInspectionInfo,
+  safetySelfInspectionMod,
 } from "@/api/safetySelfInspection.js";
 export default {
   components: { Titlename },
@@ -147,63 +176,155 @@
       dialogVisible: false,
       show: true,
       form: {
-      inspectionName:"",
-      inspector:"",
-      inspectionTime:"",
-      status:"",
-      itemList:[]
+        inspectionName: "",
+        inspector: "",
+        inspectionTime: "",
+        status: "",
+        itemList: [],
       },
       formInline: {
         user: "",
         region: "",
       },
       list: [],
-      lists:[],
-      nameList:[],
+      lists: [],
+      nameList: [],
       tree: [],
       id: "",
-      nameA: "",
-      arr:[]
+      elementAName: "",
+      arr: [],
+      treeList: [],
+      defaultProps: {
+        children: "children",
+        label: "label",
+      },
+      itemId: "",
     };
   },
   created() {
     this.TreeA();
+    this.id = this.$route.query.name;
+    this.itemId = this.$route.query.id;
+    this.itemInfo(this.$route.query.id);
   },
   methods: {
+    itemInfo(id) {
+      safetySelfInspectionInfo({ id: id }).then((res) => {
+        if (res.data.code == 200) {
+          this.form = res.data.result;
+          console.log(res.data.result);
+          this.list = res.data.result;
+          var trees = [];
+          for (var i = 0; i < this.list.itemList.length; i++) {
+            trees.push(this.list.itemList[i].elementA);
+          }
+          this.treeList = Array.from(new Set(trees));
+          var arr = this.checkSameDataA(this.list.itemList);
+          for (var i = 0; i < arr.length; i++) {
+            var capB = {
+                safetySelfInspectionId: "",
+                safetyInspectionItemId: "",
+              }
+              var cser=[]
+              for(var j=0;j<arr[i].child.length;j++){
+              capB.safetySelfInspectionId=arr[i].child[j].safetySelfInspectionId
+              capB.safetyInspectionItemId=arr[i].child[j].safetyInspectionItemId
+              cser.push(capB)
+              }
+              arr[i].id=cser
+            console.log('tag', capB)
+            arr[i].child = this.checkSameData(arr[i].child);
+          }
+          this.lists = arr;
+          console.log(this.lists);
+        }
+      });
+    },
     TreeA() {
       safetyInspectionItemTreeA().then((res) => {
         if (res.data.code == 200) {
-          // console.log(res.data)
           this.tree = res.data.result;
         }
       });
     },
     TreeB(id) {
       safetyInspectionItemTreeB({ id: id }).then((res) => {
-        this.list=[]
-        if (res.data.code == 200) {
-           this.list = res.data.result;
-           console.log(this.list)
-          var capA={nameA:'',id:[],child:[]}
-          var atte=[]
-           capA.nameA = this.list[0].elementAName;
-           for(var i=0;i<this.list.length;i++){
-             var capB={safetySelfInspectionId:"",safetyInspectionItemId:""}
-             capB.safetyInspectionItemId=this.list[i].id
-             atte.push(capB)
-           }
-           capA.id=atte
-           capA.child= this.checkSameData(this.list);
-           if(this.lists.findIndex(item=>item.nameA===capA.nameA)==-1){
-             this.lists.push(capA)
-
-           }else{
-            var i=this.lists.findIndex(item=>item.nameA===capA.nameA)
-            this.lists.splice(i,1)
-           }
+        this.list = [];
+        if (this.id == "添加") {
+          if (res.data.code == 200) {
+            this.list = res.data.result;
+            var capA = { elementAName: "", id: [], child: [] };
+            var atte = [];
+            capA.elementAName = this.list[0].elementAName;
+            for (var i = 0; i < this.list.length; i++) {
+              var capB = {
+                safetySelfInspectionId: "",
+                safetyInspectionItemId: "",
+              };
+              capB.safetyInspectionItemId = this.list[i].id;
+              atte.push(capB);
+            }
+            capA.id = atte;
+            capA.child = this.checkSameData(this.list);
+            if (
+              this.lists.findIndex(
+                (item) => item.elementAName === capA.elementAName
+              ) == -1
+            ) {
+              this.lists.push(capA);
+            } else {
+              var i = this.lists.findIndex(
+                (item) => item.elementAName === capA.elementAName
+              );
+              this.lists.splice(i, 1);
+            }
+          }
+        } else if (this.id == "编辑") {
+          this.list = res.data.result;
+          var capA = { elementAName: "", id: [], child: [] };
+          var atte = [];
+          capA.elementAName = this.list[0].elementAName;
+          for (var i = 0; i < this.list.length; i++) {
+            var capB = {
+              safetySelfInspectionId: "",
+              safetyInspectionItemId: "",
+            };
+            capB.safetyInspectionItemId = this.list[i].id;
+            capB.safetySelfInspectionId = this.itemId;
+            atte.push(capB);
+          }
+          capA.id = atte;
+          capA.child = this.checkSameData(this.list);
+          if (
+            this.lists.findIndex(
+              (item) => item.elementAName === capA.elementAName
+            ) == -1
+          ) {
+            this.lists.push(capA);
+          } else {
+            var i = this.lists.findIndex(
+              (item) => item.elementAName === capA.elementAName
+            );
+            this.lists.splice(i, 1);
+          }
         }
-        console.log(this.lists)
       });
+    },
+    checkSameDataA(resData) {
+      let dataInfo = {};
+      resData.forEach((item, index) => {
+        let { elementAName } = item;
+        if (!dataInfo[elementAName]) {
+          dataInfo[elementAName] = {
+            elementAName,
+            id: {},
+            child: [],
+          };
+        }
+        dataInfo[elementAName].child.push(item);
+      });
+      let list = Object.values(dataInfo); // list 转换成功的数据
+      return list;
     },
     checkSameData(resData) {
       let dataInfo = {};
@@ -224,43 +345,70 @@
       this.TreeB(currentObj.value);
     },
     handleClick(data) {
-      this.$router.push({
-        path: "/reviewXG",
-        query: {
-          id: data,
-        },
-      });
+      if (data.safetyInspectionItemId != undefined) {
+        this.$router.push({
+          path: "/reviewXG",
+          query: {
+            id: data.safetyInspectionItemId,
+          },
+        });
+      } else {
+        this.$router.push({
+          path: "/reviewXG",
+          query: {
+            id: data.id,
+          },
+        });
+      }
     },
-    open(){
-      var arr=[]
-      for(var i=0;i<this.lists.length;i++){
-        this.lists[i].id
-        for(var j=0;j<this.lists[i].id.length;j++){
-          arr.push(this.lists[i].id[j])
+    open(type) {
+      this.dialogVisible = true;
+      this.form.status = type;
+      var arr = [];
+      console.log("数据", this.lists);
+      for (var i = 0; i < this.lists.length; i++) {
+        this.lists[i].id;
+        for (var j = 0; j < this.lists[i].id.length; j++) {
+          arr.push(this.lists[i].id[j]);
         }
       }
-      this.form.itemList=arr
-    this.dialogVisible = true
-    safetyInspectionItemName().then(res=>{
-      // console.log(res)
-  if(res.data.code==200){
-          this.nameList=res.data.result
+      this.form.itemList = arr;
+      safetyInspectionItemName().then((res) => {
+        if (res.data.code == 200) {
+          this.nameList = res.data.result;
         }
-    })
+      });
     },
-    addC(){
-      safetySelfInspectionAdd(this.form).then(res=>{
-       if(res.data.code==200){
-         this.dialogVisible=false
-           this.$notify({
+    addC() {
+      if (this.id == "添加") {
+        safetySelfInspectionAdd(this.form).then((res) => {
+          if (res.data.code == 200) {
+            this.dialogVisible = false;
+            this.$notify({
               type: "success",
               duration: 2000,
               message: "新增成功",
               title: "成功",
             });
-       }
-      
-      })
+            this.$router.push({
+              path:"/checklistself"
+            });
+          }
+        });
+      } else if (this.id == "编辑") {
+        safetySelfInspectionMod(this.form).then((res) => {
+          this.dialogVisible = false;
+          this.$notify({
+            type: "success",
+            duration: 2000,
+            message: "编辑成功",
+            title: "成功",
+          });
+        });
+         this.$router.push({
+              path:"/checklistself"
+            });
+      }
     },
     btnsQX() {
       this.show = true;
@@ -285,7 +433,7 @@
   border-radius: 5px;
 }
 .box-left-content {
-  padding: 10px;
+  padding: 10px 20px;
 }
 .box-right {
   position: relative;
@@ -301,9 +449,16 @@
 .titles {
   font-size: 14px;
 }
-.btns{
+.btns {
   position: absolute;
   top: 10px;
   right: 50px;
 }
+.box-left-content /deep/ .el-tree-node__expand-icon {
+  display: none;
+}
+.btn {
+  background-color: #034ea2;
+  border: 1px solid #034ea2;
+}
 </style>
\ No newline at end of file
diff --git a/src/views/safetyproduction/review.vue b/src/views/safetyproduction/review.vue
index e40c8d6..9539081 100644
--- a/src/views/safetyproduction/review.vue
+++ b/src/views/safetyproduction/review.vue
@@ -3,30 +3,26 @@
     <div class="box">
       <div class="box-right">
         <Titlename title="基础信息"></Titlename>
-        <el-form ref="form" :model="form" label-width="120px">
+        <el-form ref="form" :model="list" label-width="120px">
           <div style="width: 80%; margin: auto">
             <el-row class="box-right-content" align="top">
               <el-col :span="11">
                 <el-form-item label="A级要素">
                   <el-select
-                    v-model="formInline.region"
+                    v-model="list.elementAName"
                     :disabled="true"
                     style="width: 100%"
                   >
-                    <el-option label="区域一" value="shanghai"></el-option>
-                    <el-option label="区域二" value="beijing"></el-option>
                   </el-select>
                 </el-form-item>
               </el-col>
               <el-col :span="11" :offset="2" style="white-space: nowrap">
                 <el-form-item label="B级要素">
                   <el-select
-                    v-model="formInline.region"
+                    v-model="list.elementBName"
                     :disabled="true"
                     style="width: 100%"
                   >
-                    <el-option label="区域一" value="shanghai"></el-option>
-                    <el-option label="区域二" value="beijing"></el-option>
                   </el-select>
                 </el-form-item>
               </el-col>
@@ -37,7 +33,8 @@
                   <el-input
                     :rows="3"
                     type="textarea"
-                    v-model="form.name"
+                    :disabled="true"
+                    v-model="list.standardizationRequirements"
                     placeholder=""
                   ></el-input>
                 </el-form-item>
@@ -49,7 +46,8 @@
                   <el-input
                     type="textarea"
                     :rows="3"
-                    v-model="form.name"
+                    :disabled="true"
+                    v-model="list.enterpriseStandard"
                     placeholder=""
                   ></el-input>
                 </el-form-item>
@@ -61,7 +59,8 @@
                   <el-input
                     type="textarea"
                     :rows="3"
-                    v-model="form.name"
+                    :disabled="true"
+                    v-model="list.reviewMethod"
                     placeholder=""
                   ></el-input>
                 </el-form-item>
@@ -76,7 +75,8 @@
                   <el-input
                     type="textarea"
                     :rows="3"
-                    v-model="form.name"
+                    :disabled="true"
+                    v-model="list.veto"
                     placeholder=""
                   ></el-input>
                 </el-form-item>
@@ -98,12 +98,12 @@
             <el-row>
               <el-col :span="22" :offset="2">
                 <el-table
-                  :data="tableData"
+                  :data="list.selfDeductionList"
                   border
                   style="width: 99%; margin-left: 1%"
                 >
                   <el-table-column
-                    prop="date"
+                    type="index"
                     align="center"
                     label="序号"
                     width="150"
@@ -114,19 +114,6 @@
                     align="center"
                     label="说明"
                   ></el-table-column>
-                  <!-- <el-table-column align="center" label="操作" width="200px">
-                  <template slot-scope="scope">
-                    <el-button
-                      @click="handleClick(scope.row)"
-                      type="text"
-                      size="small"
-                      >编辑</el-button
-                    >
-                    <el-button type="text" size="small" style="color: red"
-                      >删除</el-button
-                    >
-                  </template>
-                </el-table-column> -->
                 </el-table>
               </el-col>
             </el-row>
@@ -136,14 +123,18 @@
             <el-row>
               <el-col :span="24">
                 <el-form-item label="是否否决项">
-                  <el-radio-group v-model="resource">
-                    <el-radio label="0">是</el-radio>
-                    <el-radio label="1">否</el-radio>
+                  <el-radio-group v-model="list.safetyInspectionItemResult">
+                    <el-radio :label="0">是</el-radio>
+                    <el-radio :label="1">否</el-radio>
                   </el-radio-group>
                 </el-form-item></el-col
               >
             </el-row>
-            <div v-if="resource == '0' ? false : true">
+            <div
+              v-if="
+                list.safetyInspectionItemResult == 1
+              "
+            >
               <el-row style="padding: 15px 1%">
                 <el-col :span="22" :offset="2">
                   <span
@@ -160,11 +151,11 @@
                 <el-col :span="22" :offset="2">
                   <el-table
                     border
-                    :data="tableData"
+                    :data="list.selfDeductionList"
                     style="width: 99%; margin-left: 1%"
                   >
                     <el-table-column
-                      prop="date"
+                      type="index"
                       align="center"
                       label="序号"
                       width="150"
@@ -176,7 +167,7 @@
                       label="说明"
                     ></el-table-column>
                     <el-table-column
-                      prop="name"
+                      prop="point"
                       align="center"
                       label="扣分值"
                     ></el-table-column>
@@ -188,9 +179,6 @@
                           size="small"
                           >修改</el-button
                         >
-                        <el-button type="text" size="small" style="color: red"
-                          >删除</el-button
-                        >
                       </template>
                     </el-table-column>
                   </el-table>
@@ -200,24 +188,26 @@
           </div>
           <el-row>
             <el-col :span="24" style="padding: 20px 0; text-align: center">
-              <el-button type="primary" class="btns">提交</el-button>
-              <el-button>取消</el-button>
+              <el-button type="primary" @click="modItem()" class="btns"
+                >提交</el-button
+              >
+              <el-button @click="back()">取消</el-button>
             </el-col>
           </el-row>
         </el-form>
       </div>
     </div>
 
-    <el-dialog title="扣分详情" :visible.sync="dialogVisible" width="30%">
+    <el-dialog title="扣分详情" :visible.sync="dialogVisible" :close-on-click-modal="false" width="30%">
       <el-form ref="form" :model="form" label-width="54px">
         <el-form-item label="说明">
-          <el-input v-model="form.name"></el-input>
+          <el-input disabled="true" v-model="form.name"></el-input>
         </el-form-item>
         <el-form-item label="扣分值">
-          <el-input v-model="form.name"></el-input>
+          <el-input v-model="form.point"></el-input>
         </el-form-item>
         <el-form-item label="备注">
-          <el-input v-model="form.name" :rows="5" type="textarea"></el-input>
+          <el-input v-model="form.remark" :rows="5" type="textarea"></el-input>
         </el-form-item>
       </el-form>
       <span
@@ -228,69 +218,71 @@
         <el-button type="primary" class="btns" @click="dialogVisible = false"
           >确 定</el-button
         >
-        <el-button @click="dialogVisible = false">取 消</el-button>
+        <el-button @click="lost()">取 消</el-button>
       </span>
     </el-dialog>
   </div>
 </template>
 <script>
 import Titlename from "../../components/Titlename/index.vue";
+import {
+  safetySelfInspectionItemInfo,
+  safetySelfInspectionModItemInfo,
+} from "@/api/safetySelfInspection.js";
 export default {
   components: { Titlename },
   data() {
     return {
       dialogVisible: false,
-      resource: "0",
-      form: {
-        name: "",
-      },
-      formInline: {
-        user: "",
-        region: "",
-      },
-      tableData: [
-        {
-          date: "2016-05-02",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1518 弄",
-          zip: 200333,
-        },
-        {
-          date: "2016-05-04",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1517 弄",
-          zip: 200333,
-        },
-        {
-          date: "2016-05-01",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1519 弄",
-          zip: 200333,
-        },
-        {
-          date: "2016-05-03",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1516 弄",
-          zip: 200333,
-        },
-      ],
-      defaultProps: {
-        children: "children",
-        label: "label",
-      },
+      id: "",
+      form: {},
+      list: [],
     };
   },
+  created() {
+    this.id = this.$route.query.id;
+    this.itemInfo(this.$route.query.idC);
+  },
   methods: {
-    handleClick() {
+    itemInfo(id) {
+      safetySelfInspectionItemInfo({id:id}).then((res) => {
+        this.list = res.data.result;
+      });
+    },
+    modItem() {
+      safetySelfInspectionModItemInfo(this.list).then((res) => {
+        if (res.data.code == 200) {
+          this.$notify({
+            type: "success",
+            duration: 2000,
+            message: "提交成功",
+            title: "成功",
+          });
+          this.$router.push({
+            path: "/gojudging",
+              query:{
+          id:this.id
+        }
+          });
+        }
+      });
+    },
+    back() {
+      this.$router.push({
+        path: "/gojudging",
+        query:{
+          id:this.id
+        }
+      });
+    },
+    handleClick(data) {
       this.dialogVisible = true;
+      this.form = data;
+      console.log(data);
+    },
+    lost() {
+      this.dialogVisible = false;
+      this.itemInfo(this.id);
     },
   },
 };
diff --git a/src/views/safetyproduction/reviewXG.vue b/src/views/safetyproduction/reviewXG.vue
index b0a1349..838d985 100644
--- a/src/views/safetyproduction/reviewXG.vue
+++ b/src/views/safetyproduction/reviewXG.vue
@@ -9,7 +9,7 @@
               <el-col :span="11">
                 <el-form-item label="A级要素">
                   <el-select
-                    v-model="formInline.region"
+                    v-model="form.elementAName"
                     :disabled="true"
                     style="width: 100%"
                   >
@@ -21,7 +21,7 @@
               <el-col :span="11" :offset="2" style="white-space: nowrap">
                 <el-form-item label="B级要素">
                   <el-select
-                    v-model="formInline.region"
+                    v-model="form.elementBName"
                     :disabled="true"
                     style="width: 100%"
                   >
@@ -37,7 +37,7 @@
                   <el-input
                     :rows="3"
                     type="textarea"
-                    v-model="form.name"
+                    v-model="form.standardizationRequirements"
                     placeholder=""
                   ></el-input>
                 </el-form-item>
@@ -49,7 +49,7 @@
                   <el-input
                     type="textarea"
                     :rows="3"
-                    v-model="form.name"
+                    v-model="form.enterpriseStandard"
                     placeholder=""
                   ></el-input>
                 </el-form-item>
@@ -61,7 +61,7 @@
                   <el-input
                     type="textarea"
                     :rows="3"
-                    v-model="form.name"
+                    v-model="form.reviewMethod"
                     placeholder=""
                   ></el-input>
                 </el-form-item>
@@ -76,7 +76,7 @@
                   <el-input
                     type="textarea"
                     :rows="3"
-                    v-model="form.name"
+                    v-model="form.veto"
                     placeholder=""
                   ></el-input>
                 </el-form-item>
@@ -90,20 +90,25 @@
                 >
               </el-col>
               <el-col :span="12" style="text-align: right">
-              <el-button type="primary" @click="dialogVisible=true" class="btns" size="mini" icon="el-icon-plus"
-                >新增</el-button
-              >
-            </el-col>
+                <el-button
+                  type="primary"
+                  @click="coAdd('', '新增')"
+                  class="btns"
+                  size="mini"
+                  icon="el-icon-plus"
+                  >新增</el-button
+                >
+              </el-col>
             </el-row>
             <el-row>
               <el-col :span="22" :offset="2">
                 <el-table
-                  :data="tableData"
+                  :data="form.deductionList"
                   border
                   style="width: 99%; margin-left: 1%"
                 >
                   <el-table-column
-                    prop="date"
+                    type="index"
                     align="center"
                     label="序号"
                     width="150"
@@ -115,42 +120,47 @@
                     label="说明"
                   ></el-table-column>
                   <el-table-column align="center" label="操作" width="200px">
-                  <template slot-scope="scope">
-                    <el-button
-                      @click="handleClick(scope.row)"
-                      type="text"
-                      size="small"
-                      >编辑</el-button
-                    >
-                    <el-button type="text" size="small" style="color: red"
-                      >删除</el-button
-                    >
-                  </template>
-                </el-table-column>
+                    <template slot-scope="scope">
+                      <el-button
+                        @click="coAdd(scope.row, '编辑')"
+                        type="text"
+                        size="small"
+                        >编辑</el-button
+                      >
+                      <el-button
+                        type="text"
+                        size="small"
+                        style="color: red"
+                        @click="listDel(scope.row)"
+                        >删除</el-button
+                      >
+                    </template>
+                  </el-table-column>
                 </el-table>
               </el-col>
             </el-row>
           </div>
           <el-row>
             <el-col :span="24" style="padding: 20px 0; text-align: center">
-              <el-button type="primary" class="btns">提交</el-button>
-              <el-button>取消</el-button>
+              <el-button type="primary" @click="safetyInspectionItemA()" class="btns">提交</el-button>
+              <el-button @click="back()">取消</el-button>
             </el-col>
           </el-row>
         </el-form>
       </div>
     </div>
 
-    <el-dialog title="扣分详情" :visible.sync="dialogVisible" width="30%">
-      <el-form ref="form" :model="form" label-width="54px">
+    <el-dialog title="扣分详情" :visible.sync="dialogVisible" :close-on-click-modal="false" width="30%">
+      <el-form ref="form" :model="formInline" label-width="54px">
         <el-form-item label="说明">
-          <el-input v-model="form.name"></el-input>
-        </el-form-item>
-        <el-form-item label="扣分值">
-          <el-input v-model="form.name"></el-input>
+          <el-input v-model="formInline.name"></el-input>
         </el-form-item>
         <el-form-item label="备注">
-          <el-input v-model="form.name" :rows="5" type="textarea"></el-input>
+          <el-input
+            v-model="formInline.remark"
+            :rows="5"
+            type="textarea"
+          ></el-input>
         </el-form-item>
       </el-form>
       <span
@@ -158,7 +168,7 @@
         class="dialog-footer"
         style="text-align: center; display: block"
       >
-        <el-button type="primary" class="btns" @click="dialogVisible = false"
+        <el-button type="primary" class="btns" @click="listAdd"
           >确 定</el-button
         >
         <el-button @click="dialogVisible = false">取 消</el-button>
@@ -168,63 +178,93 @@
 </template>
 <script>
 import Titlename from "../../components/Titlename/index.vue";
+import { safetyInspectionItemId } from "@/api/safetySelfInspection.js";
+import { safetyInspectionItemMod } from "@/api/safetyInspectionItem.js";
 export default {
   components: { Titlename },
   data() {
     return {
       dialogVisible: false,
+      id: "",
       resource: "0",
-      form: {
-        name: "",
-      },
+      form: {},
       formInline: {
-        user: "",
-        region: "",
-      },
-      tableData: [
-        {
-          date: "2016-05-02",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1518 弄",
-          zip: 200333,
-        },
-        {
-          date: "2016-05-04",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1517 弄",
-          zip: 200333,
-        },
-        {
-          date: "2016-05-01",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1519 弄",
-          zip: 200333,
-        },
-        {
-          date: "2016-05-03",
-          name: "王小虎",
-          province: "上海",
-          city: "普陀区",
-          address: "上海市普陀区金沙江路 1516 弄",
-          zip: 200333,
-        },
-      ],
-      defaultProps: {
-        children: "children",
-        label: "label",
+        name: "",
+        remark: "",
       },
     };
   },
-  created(){
-  console.log(this.$route.query.id)
+  created() {
+    this.id = this.$route.query.id;
+    console.log('tagee',this.$route.query)
+    this.safeT(this.id);
   },
   methods: {
+    safeT(id) {
+      safetyInspectionItemId({ id: id }).then((res) => {
+        if (res.data.code == 200) {
+          this.form = res.data.result;
+        }
+      });
+    },
+    coAdd(val, type) {
+      this.titleN = type;
+      if (type == "新增") {
+        this.dialogVisible = true;
+        this.formInline = {
+          name: "",
+          remark: "",
+        };
+      } else {
+        this.dialogVisible = true;
+        this.index = this.form.deductionList.findIndex(
+          (item) => item.name == val.name
+        );
+        this.formInline = val;
+      }
+    },
+    listAdd() {
+      if (this.titleN == "新增") {
+        this.form.deductionList.push(this.formInline);
+        this.dialogVisible = false;
+      } else {
+        this.form.deductionList[this.index].name = this.formInline.name;
+        this.form.deductionList[this.index].space = this.formInline.space;
+        this.dialogVisible = false;
+      }
+    },
+    listDel(val) {
+      var i = this.form.deductionList.findIndex(
+        (item) => item.name == val.name
+      );
+      this.form.deductionList.splice(i, 1);
+    },
+       safetyInspectionItemA() {
+        safetyInspectionItemMod(this.form).then((res) => {
+          console.log(res)
+          if (res.data.code == 200) {
+            this.$notify({
+              type: "success",
+              duration: 2000,
+              message: "修改成功",
+              title: "成功",
+            });
+            this.$router.push({
+              path:"/new"
+            })
+          } else {
+            this.$message({
+              type: "warning",
+              message: res.data.message,
+            });
+          }
+        });
+    },
+    back(){
+       this.$router.push({
+              path:"/new"
+            })
+    },
     handleClick() {
       this.dialogVisible = true;
     },

--
Gitblit v1.9.2