From fcc1ea2bf3ce3efe1f927bd087e4cd6cf2116c32 Mon Sep 17 00:00:00 2001
From: lyfO_o <764716047@qq.com>
Date: 星期三, 30 三月 2022 16:21:36 +0800
Subject: [PATCH] Merge remote-tracking branch 'remotes/origin/shf' into master

---
 src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue      |   68 ++-
 src/views/majorHazardSourceMonitoring/productionEquipment/index.vue |   99 ++++-
 src/views/safetyproduction/checklistself.vue                        |  174 +++++----
 src/views/safetyproduction/reviewXG.vue                             |    3 
 index.html                                                          |    1 
 src/views/majorHazardSourceMonitoring/instrumentData/index.vue      |   89 +++-
 src/api/safetySelfInspection.js                                     |  109 ++++++
 src/router/index.js                                                 |    7 
 src/views/safetyproduction/new.vue                                  |  409 +++++++++++++----------
 src/views/contingencyplan/index.vue                                 |   46 +-
 src/views/safetyproduction/checklist.vue                            |    2 
 11 files changed, 662 insertions(+), 345 deletions(-)

diff --git a/index.html b/index.html
index d8edb25..e0ff05f 100644
--- a/index.html
+++ b/index.html
@@ -22,6 +22,7 @@
         #app {
             margin: 0;
             padding: 0;
+            overflow: hidden;
             height: 100%;
         }
 
diff --git a/src/api/safetySelfInspection.js b/src/api/safetySelfInspection.js
new file mode 100644
index 0000000..1d19e81
--- /dev/null
+++ b/src/api/safetySelfInspection.js
@@ -0,0 +1,109 @@
+import {getToken} from "../utils/auth";
+import request from '@/utils/request'
+
+export function safetySelfInspectionList(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/safetySelfInspection/page',
+        method: 'post',
+        data
+    })
+}
+
+export function safetySelfInspectionInfo(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/safetySelfInspection/info',
+        method: 'post',
+        data
+    })
+}
+
+export function safetySelfInspectionItemInfo(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/safetySelfInspection/itemInfo',
+        method: 'post',
+        data
+    })
+}
+
+export function safetySelfInspectionModItemInfo(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/safetySelfInspection/modItemInfo',
+        method: 'post',
+        data
+    })
+}
+
+export function safetySelfInspectionAdd(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/safetySelfInspection/add',
+        method: 'post',
+        data
+    })
+}
+
+export function safetySelfInspectionMod(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/safetySelfInspection/mod',
+        method: 'post',
+        data
+    })
+}
+
+export function safetySelfInspectionDel(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/safetySelfInspection/del',
+        method: 'post',
+        data
+    })
+}
+export function safetyInspectionItemTreeA(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/elementManagement/getElementTree',
+        method: 'post',
+        data
+    })
+}
+export function safetyInspectionItemName(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/getUserList',
+        method: 'post',
+        data
+    })
+}
+export function safetyInspectionItemTreeB(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/safetyInspectionItem/infoElementA',
+        method: 'post',
+        data
+    })
+}
\ No newline at end of file
diff --git a/src/router/index.js b/src/router/index.js
index 739eea2..9dd394d 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -150,12 +150,11 @@
             meta: { title: '自查清单_去评审', icon: '' }
           },
           {
-            id: 2,
-            parentId: 0,
             path: '/new',
-            name: '自查清单_新增|修改',
+            // name: '自查清单_新增|修改',
             component: () => import('@/views/safetyproduction/new'),
-            meta: { title: '自查清单_新增|修改', icon: '' }
+            // meta: { title: '自查清单_新增|修改', icon: '' }
+            hidden: true
           },
           {
             id: 2,
diff --git a/src/views/contingencyplan/index.vue b/src/views/contingencyplan/index.vue
index 621c963..9e07de8 100644
--- a/src/views/contingencyplan/index.vue
+++ b/src/views/contingencyplan/index.vue
@@ -62,16 +62,16 @@
           <el-input v-model="form.name"></el-input>
         </el-form-item>
         <el-form-item label="文件类型">
-          <el-radio-group v-model="form.fileType">
+          <el-radio-group v-model="form.fileType" @change="changeFileType">
             <el-radio :label=0 >图片</el-radio>
             <el-radio :label=1 >文件</el-radio>
           </el-radio-group>
         </el-form-item>
         <el-form-item v-if="form.fileType==0" label="图片上传">
-            <upload-img  v-bind:imgList="form.fileList" @uploadImgSuccess="uploadImgSuccess" @removeImgSuccess="removeImgSuccess"></upload-img>
+            <upload-img :imgList="fileList"   @uploadImgSuccess="uploadImgSuccess" @removeImgSuccess="removeImgSuccess"></upload-img>
         </el-form-item>
         <el-form-item label="文件链接" v-if="form.fileType==1">
-            <upload-file v-bind:url="fileUrl" v-bind:name="fileName" @uploadFileSuccess="uploadFileSuccess" ></upload-file>
+            <upload-file v-bind:url="fileUrl" v-bind:name="fileName"  @uploadFileSuccess="uploadFileSuccess" ></upload-file>
         </el-form-item>
         <el-form-item label="备注" prop="remark">
           <el-input v-model="form.remark" :rows="5" type="textarea"></el-input>
@@ -97,9 +97,7 @@
   components: { uploadImg , uploadFile},
   data() {
     return {
-        name:"111",
-        url:"222",
-        path:"emergencyPlan",
+        uploadDisabled:false,
 
       dialogVisible: false,
       title: "",
@@ -121,6 +119,7 @@
       },
         fileName:"",
         fileUrl:"",
+        fileList:[],
       list: [],
       rules: {
         name: [
@@ -136,17 +135,15 @@
     this.emergencyPlan();
   },
   methods: {
+      changeFileType(){
+          this.fileUrl=""
+          this.fileName=""
+          this.fileList=[]
+      },
 
       uploadFileSuccess(res){
           this.fileName=res.fileName
           this.fileUrl=res.fileUrl
-          if (this.fileName=="" || this.fileUrl==""){
-              this.form.fileList=[]
-          }
-          this.form.fileList=[{
-              fileName: this.fileName,
-              fileUrl:this.fileUrl
-          }]
       },
 
       uploadImgSuccess(res){
@@ -154,11 +151,11 @@
               fileUrl : res.fileUrl,
               fileName : res.fileName
           }
-          this.form.fileList.push(file)
+          this.fileList.push(file)
       },
 
       removeImgSuccess(res){
-          this.form.fileList=res.fileList
+          this.fileList=res.fileList
       },
 
     async emergencyPlan() {
@@ -186,14 +183,27 @@
       } else {
         this.title = "编辑";
         this.form = value;
-        this.fileUrl=value.fileList[0].fileUrl;
-        this.fileName=value.fileList[0].fileName
+        if (this.form.fileType==0){
+            this.fileList=value.fileList
+        } else{
+            this.fileUrl=value.fileList[0].fileUrl;
+            this.fileName=value.fileList[0].fileName
+        }
       }
     },
     addemergencyPlan() {
       this.$refs["form"].validate((valid) => {
         if (valid) {
-            console.log(132,this.form)
+            if (this.form.fileType==0){
+                this.form.fileList=this.fileList
+            }
+            if (this.form.fileType==1){
+                let file={
+                    fileUrl:this.fileUrl,
+                    fileName:this.fileName
+                }
+                this.form.fileList=[file]
+            }
           if (this.title === "新增") {
             emergencyPlanAdd(this.form).then((res) => {
               if (res.data.code === "200") {
diff --git a/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue b/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue
index 95cf9d6..8b80821 100644
--- a/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue
+++ b/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue
@@ -4,17 +4,17 @@
             <el-row>
                 <el-col :span="5">
                     <el-form-item label="设备名称">
-                        <el-input v-model="listQuery.filter.equipmentName"></el-input>
+                        <el-input v-model="listQuery.filter.equipmentName" clearable></el-input>
                     </el-form-item>
                 </el-col>
                 <el-col :span="5">
-                    <el-form-item label="状态">
-                        <el-select v-model="listQuery.filter.status" placeholder="请选择状态">
+                    <el-form-item label="设备状态">
+                        <el-select v-model="listQuery.filter.status" placeholder="请选择状态" clearable>
                             <el-option v-for="item in unitIdOptions" :key="item.value" :label="item.label" :value="item.value"></el-option>
                         </el-select>
                     </el-form-item>
                 </el-col>
-                <el-col :span="4" style="text-align: center">
+                <el-col :span="6" style="text-align: center">
                     <el-button type="primary" icon="el-icon-search" @click="find()" class="btns"
                     >搜索</el-button
                     >
@@ -24,6 +24,9 @@
                         class="btns"
                         @click="handleClick('', '新增')"
                     >新增</el-button
+                    >
+                    <el-button type="primary" icon="el-icon-refresh" @click="reset()" class="btns"
+                    >重置</el-button
                     >
                 </el-col>
             </el-row>
@@ -120,8 +123,9 @@
                     <el-col :span="12">
                         <el-form-item label="报警时间" prop="alarmTime">
                             <el-date-picker
+                                type="datetime"
                                 v-model="form.alarmTime"
-                                value-format="yyyy-MM-dd"
+                                value-format="yyyy-MM-dd HH:mm:ss"
                                 placeholder="选择日期时间"
                             style="width: 100%;">
                             </el-date-picker>
@@ -131,7 +135,7 @@
                 <el-row>
                     <el-col :span="24">
                         <el-form-item label="报警信息" prop="alarmInfo">
-                            <el-input v-model="form.alarmInfo" maxlength="50"></el-input>
+                            <el-input type="textarea" v-model="form.alarmInfo" placeholder="请输入报警信息" maxlength="50"></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
@@ -180,13 +184,17 @@
                 listQuery: {
                     filter: {
                         equipmentName: "",
+                        // status:"",
                     },
                     pageIndex: 1,
                     pageSize: 10,
                 },
                 type:'',
                 rules: {
-
+                    equipmentId: { required: true, message: "请选择设备名称", trigger: "change"},
+                    status: { required: true, message: "请选择设备状态", trigger: "change"},
+                    alarmTime: { required: true, message: "请选择报警时间", trigger: "change"},
+                    alarmInfo: { required: true, message: "请输入报警信息", trigger: "change"},
                 },
                 equipmentName:[],
                 unitIdOptions:[{label:"已处理",value:0},{label:"未处理",value:1}]
@@ -194,8 +202,15 @@
         },
         created() {
             this.elementManagementL();
+            this.alarmMajorEquipmentErt();
         },
         methods: {
+            alarmMajorEquipmentErt(){
+                majorEquipmentErt().then(res=>{
+                    console.log(res)
+                    this.equipmentName=res.data.result
+                })
+            },
             async elementManagementL() {
                 var res = await majorEquipmentList(this.listQuery);
                 console.log(res);
@@ -211,10 +226,6 @@
                 this.$nextTick(() => {
                     this.$refs["form"].clearValidate();
                 });
-                majorEquipmentErt().then(res=>{
-                    console.log(res)
-                    this.equipmentName=res.data.result
-                })
                 if (type == "新增") {
                     this.title = "新增";
                     this.form = {
@@ -273,21 +284,34 @@
                 });
             },
             deleteById(val) {
-                majorEquipmentDel({id:val}).then((res) => {
-                    if (res.data.code == 200) {
-                        this.elementManagementL();
-                        this.$notify({
-                            title: "成功",
-                            message: "删除成功",
-                            type: "success",
-                            duration: 2000,
-                        });
-                    }
-                });
+                this.$confirm('确认删除吗','提示', {
+                    confirmButtonText: '确认',
+                    cancelButtonText: '取消',
+                    type: 'warning'
+                })
+                    .then(()=>{
+                        majorEquipmentDel({id:val}).then((res) => {
+                            if (res.data.code == 200) {
+                                this.elementManagementL();
+                                this.$notify({
+                                    title: "成功",
+                                    message: "删除成功",
+                                    type: "success",
+                                    duration: 2000,
+                                });
+                            }
+                        })
+                    })
+                    .catch(error =>{
+                    });
             },
             find(){
                 this.elementManagementL();
             },
+            reset(){
+                this.listQuery.filter={}
+                this.elementManagementL();
+            },
             handleSizeChange(val){
                 this.listQuery.pageSize = val
                 this.elementManagementL();
diff --git a/src/views/majorHazardSourceMonitoring/instrumentData/index.vue b/src/views/majorHazardSourceMonitoring/instrumentData/index.vue
index fd06609..9123e8b 100644
--- a/src/views/majorHazardSourceMonitoring/instrumentData/index.vue
+++ b/src/views/majorHazardSourceMonitoring/instrumentData/index.vue
@@ -4,7 +4,7 @@
             <el-row>
                 <el-col :span="5">
                     <el-form-item label="设备名称">
-                        <el-input v-model="listQuery.filter.equipmentName"></el-input>
+                        <el-input v-model="listQuery.filter.equipmentName" clearable></el-input>
                     </el-form-item>
                 </el-col>
                 <el-col :span="8" style="text-align: center">
@@ -25,7 +25,9 @@
                         @click="importData()"
                     >导入</el-button
                     >
-
+                    <el-button type="primary" icon="el-icon-refresh" @click="reset()" class="btns"
+                    >重置</el-button
+                    >
                 </el-col>
             </el-row>
         </el-form>
@@ -45,6 +47,8 @@
             <el-table-column prop="lowLiquidAlarm" label="低液位报警值" align="center">
             </el-table-column>
             <el-table-column prop="lowLowLiquidAlarm" label="低低液位报警值" align="center">
+            </el-table-column>
+            <el-table-column prop="monitoringTime" label="检测时间" align="center">
             </el-table-column>
             <el-table-column align="center" label="操作">
                 <template slot-scope="scope">
@@ -104,8 +108,9 @@
                     <el-col :span="12">
                         <el-form-item label="检测时间" prop="monitoringTime">
                             <el-date-picker
+                                type="datetime"
                                 v-model="form.monitoringTime"
-                                value-format="yyyy-MM-dd"
+                                value-format="yyyy-MM-dd HH:mm:ss"
                                 placeholder="选择日期时间"
                             style="width: 100%;">
                             </el-date-picker>
@@ -131,19 +136,19 @@
                         </el-form-item>
                     </el-col>
                     <el-col :span="12">
-                        <el-form-item label="高液位报警值" prop="alarmInfo">
+                        <el-form-item label="高液位报警值" prop="highLiquidAlarm">
                             <el-input v-model.number="form.highLiquidAlarm" maxlength="50"></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
                 <el-row>
                     <el-col :span="12">
-                        <el-form-item label="低液位报警值" prop="alarmInfo">
+                        <el-form-item label="低液位报警值" prop="lowLiquidAlarm">
                             <el-input v-model.number="form.lowLiquidAlarm" maxlength="50"></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12">
-                        <el-form-item label="低低液位报警值" prop="alarmInfo">
+                        <el-form-item label="低低液位报警值" prop="lowLowLiquidAlarm">
                             <el-input v-model.number="form.lowLowLiquidAlarm" maxlength="50"></el-input>
                         </el-form-item>
                     </el-col>
@@ -191,19 +196,40 @@
                 listQuery: {
                     filter: {
                         equipmentId: "",
-                        status:'',
                     },
                     pageIndex: 1,
                     pageSize: 10,
                 },
                 // type:'',
                 rules: {
-                    rangeLowerLimit:{ type: 'number', message: '仪表量程下限必须为数字值'},
-                    rangeUpperLimit:{ type: 'number', message: '仪表量程上限必须为数字值'},
-                    highHighLiquidAlarm:{ type: 'number', message: '高高液位报警值必须为数字值'},
-                    highLiquidAlarm:{ type: 'number', message: '高液位报警值必须为数字值'},
-                    lowLiquidAlarm:{ type: 'number', message: '低液位报警值必须为数字值'},
-                    lowLowLiquidAlarm:{ type: 'number', message: '低低液位报警值必须为数字值'},
+                    equipmentId:
+                        { required: true, message: "请选择设备名称", trigger: "change" },
+                    monitoringTime:
+                        { required: true, message: "请选择检测时间", trigger: "change"},
+                    rangeLowerLimit:[
+                        { required: true, message: "仪表量程下限不能为空", trigger: "change"},
+                        { type: 'number', message: '仪表量程下限必须为数字值'}
+                    ],
+                    rangeUpperLimit:[
+                        { required: true, message: "仪表量程上限不能为空", trigger: "change"},
+                        { type: 'number', message: '仪表量程上限必须为数字值'}
+                    ],
+                    highHighLiquidAlarm:[
+                        { required: true, message: "高高液位报警值不能为空", trigger: "change"},
+                        { type: 'number', message: '高高液位报警值必须为数字值'}
+                    ],
+                    highLiquidAlarm:[
+                        { required: true, message: "高液位报警值不能为空", trigger: "change"},
+                        { type: 'number', message: '高液位报警值必须为数字值'}
+                    ],
+                    lowLiquidAlarm:[
+                        { required: true, message: "低液位报警值不能为空", trigger: "change"},
+                        { type: 'number', message: '低液位报警值必须为数字值'}
+                    ],
+                    lowLowLiquidAlarm:[
+                        { required: true, message: "低低液位报警值不能为空", trigger: "change"},
+                        { type: 'number', message: '低低液位报警值必须为数字值'},
+                    ],
                 },
                 equipmentName:[],
                 unitIdOptions:[{label:"已处理",value:0},{label:"未处理",value:1}]
@@ -421,6 +447,8 @@
                 } else {
                     this.title = "编辑";
                     this.form = value;
+                    console.log(123,this.form)
+                    console.log(222,this.equipmentName)
                 }
             },
             AddelementManagement() {
@@ -467,21 +495,34 @@
                 });
             },
             deleteById(val) {
-                majorEquipmentDel({id:val}).then((res) => {
-                    if (res.data.code == 200) {
-                        this.elementManagementL();
-                        this.$notify({
-                            title: "成功",
-                            message: "删除成功",
-                            type: "success",
-                            duration: 2000,
-                        });
-                    }
-                });
+                this.$confirm('确认删除吗','提示', {
+                    confirmButtonText: '确认',
+                    cancelButtonText: '取消',
+                    type: 'warning'
+                })
+                    .then(()=>{
+                       majorEquipmentDel({id:val}).then((res) => {
+                           if (res.data.code == 200) {
+                               this.elementManagementL();
+                               this.$notify({
+                                   title: "成功",
+                                   message: "删除成功",
+                                   type: "success",
+                                   duration: 2000,
+                               });
+                           }
+                       });
+                    })
+                    .catch(error =>{
+                    });
             },
             find(){
                 this.elementManagementL();
             },
+            reset(){
+                this.listQuery.filter.equipmentName = "";
+                this.elementManagementL();
+            },
             handleSizeChange(val){
                 this.listQuery.pageSize = val
                 this.elementManagementL();
diff --git a/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue b/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue
index d8f78df..ede80cb 100644
--- a/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue
+++ b/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue
@@ -4,17 +4,17 @@
             <el-row>
                 <el-col :span="5">
                     <el-form-item label="设备名称">
-                        <el-input v-model="listQuery.filter.name"></el-input>
+                        <el-input v-model="listQuery.filter.name" placeholder="请输入设备名称" clearable></el-input>
                     </el-form-item>
                 </el-col>
                 <el-col :span="5">
                     <el-form-item label="设备状态">
-                        <el-select v-model="listQuery.filter.status" placeholder="请选择设备状态">
+                        <el-select v-model="listQuery.filter.status" placeholder="请选择设备状态" clearable>
                             <el-option v-for="item in unitIdOptions" :key="item.value" :label="item.label" :value="item.value"></el-option>
                         </el-select>
                     </el-form-item>
                 </el-col>
-                <el-col :span="4" style="text-align: center">
+                <el-col :span="6" style="text-align: center">
                     <el-button type="primary" icon="el-icon-search" @click="find()" class="btns"
                     >搜索</el-button
                     >
@@ -24,6 +24,9 @@
                         class="btns"
                         @click="handleClick('', '新增')"
                     >新增</el-button
+                    >
+                    <el-button type="primary" icon="el-icon-refresh" @click="reset()" class="btns"
+                    >重置</el-button
                     >
                 </el-col>
             </el-row>
@@ -41,7 +44,7 @@
             </el-table-column>
             <el-table-column prop="volume" label="容积" align="center">
             </el-table-column>
-            <el-table-column prop="userId" label="负责人" align="center">
+            <el-table-column prop="userName" label="负责人" align="center">
             </el-table-column>
             <el-table-column align="center" label="操作">
                 <template slot-scope="scope">
@@ -83,12 +86,12 @@
                 <el-row>
                     <el-col :span="12">
                         <el-form-item label="设备编号" prop="serialNumber">
-                            <el-input v-model.number="form.serialNumber" maxlength="50"></el-input>
+                            <el-input v-model="form.serialNumber" maxlength="50" placeholder="请输入设备编号"></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12">
                         <el-form-item label="设备名称" prop="name">
-                            <el-input v-model="form.name" maxlength="50"></el-input>
+                            <el-input v-model="form.name" maxlength="50" placeholder="请输入设备名称"></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
@@ -112,14 +115,28 @@
                     </el-col>
                     <el-col :span="12">
                         <el-form-item label="容积" prop="volume">
-                            <el-input v-model.number="form.volume" maxlength="50"></el-input>
+                            <el-input v-model="form.volume" maxlength="50"
+                                      placeholder="请输入容积"
+                            ></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
                 <el-row>
                     <el-col :span="12">
                         <el-form-item label="负责人" prop="userId">
-                            <el-input v-model="form.userId" maxlength="50"></el-input>
+                            <el-select
+                                v-model="form.userId"
+                                placeholder="请选择负责人"
+                                style="width: 100%"
+                            >
+                                <el-option
+                                    v-for="item in personInCharge"
+                                    :key="item.id"
+                                    :label="item.realname"
+                                    :value="item.id"
+                                >
+                                </el-option>
+                            </el-select>
                         </el-form-item>
                     </el-col>
                 </el-row>
@@ -139,6 +156,7 @@
         majorEquipmentAdd,
         majorEquipmentMod,
         majorEquipmentDel,
+        majorEquipmentLis
     } from "@/api/majorEquipment.js";
     export default {
         data() {
@@ -150,6 +168,7 @@
                     status: "",
                     volume: "",
                     serialNumber:"",
+                    userId:"",
                 },
                 pageSize: 10,
                 recordTotal: 0,
@@ -158,28 +177,44 @@
                 listQuery: {
                     filter: {
                         name: "",
+                        // status:"",
                     },
                     pageIndex: 1,
                     pageSize: 10,
                 },
                 type:'',
                 rules: {
-                    serialNumber:{ required: true, message: '容积必须为数字值'},
-                    volume:{ type: 'number', message: '负责人必须为数字值'},
-                    name: [
-                        { required: true, message: "预案名称不能为空", trigger: "change" },
+                    serialNumber:[
+                        { required: true, message: "设备编号不能为空", trigger: "change"},
+                        // { type:'number', message: '设备编号必须为数字值'}
                     ],
+                    volume:[
+                        { required: true, message: "容积不能为空", trigger: "change"},
+                        // { type:'number', message: "容积必须为数字值", trigger: "change"},
+                        { pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, message: '请输入数字格式,可保留两位小数' }
+                    ],
+                    name:{ required: true, message: "设备名称不能为空", trigger: "change" },
+                    status:{ required: true, message: "状态不能为空", trigger: "change" },
+                    userId:{ required: true, message: "负责人不能为空", trigger: "change" },
                 },
-                unitIdOptions:[{label:"在用",value:0},{label:"停用",value:1}]
+                unitIdOptions:[{label:"在用",value:0},{label:"停用",value:1}],
+                personInCharge:[],
             };
         },
         created() {
             this.elementManagementL();
+            this.productionMajorEquipmentErt();
         },
         methods: {
+            productionMajorEquipmentErt(){
+                majorEquipmentLis().then(res=>{
+                    if (res.data.code ==200){
+                        this.personInCharge=res.data.result
+                    }
+                })
+            },
             async elementManagementL() {
                 var res = await majorEquipmentList(this.listQuery);
-                console.log(res);
                 if (res.data.code == 200) {
                     this.list = res.data.result.records;
                     this.recordTotal = res.data.result.total
@@ -192,6 +227,7 @@
                 this.$nextTick(() => {
                     this.$refs["form"].clearValidate();
                 });
+
                 if (type == "新增") {
                     this.title = "新增";
                     this.form = {
@@ -250,21 +286,34 @@
                 });
             },
             deleteById(val) {
-                majorEquipmentDel({id:val}).then((res) => {
-                    if (res.data.code == 200) {
-                        this.elementManagementL();
-                        this.$notify({
-                            title: "成功",
-                            message: "删除成功",
-                            type: "success",
-                            duration: 2000,
-                        });
-                    }
-                });
+                this.$confirm('确认删除吗','提示', {
+                    confirmButtonText: '确认',
+                    cancelButtonText: '取消',
+                    type: 'warning'
+                })
+                    .then(()=>{
+                       majorEquipmentDel({id:val}).then((res) => {
+                           if (res.data.code == 200) {
+                               this.elementManagementL();
+                               this.$notify({
+                                   title: "成功",
+                                   message: "删除成功",
+                                   type: "success",
+                                   duration: 2000,
+                               });
+                           }
+                       });
+                    })
+                    .catch(error =>{
+                    });
             },
             find(){
                 this.elementManagementL();
             },
+            reset(){
+                this.listQuery.filter={}
+                this.elementManagementL();
+            },
             handleSizeChange(val){
                 this.listQuery.pageSize = val
                 this.elementManagementL();
diff --git a/src/views/safetyproduction/checklist.vue b/src/views/safetyproduction/checklist.vue
index 31bad5e..d2b83ca 100644
--- a/src/views/safetyproduction/checklist.vue
+++ b/src/views/safetyproduction/checklist.vue
@@ -16,7 +16,7 @@
               </el-col>
               <el-col :span="11" :offset="1" style="white-space: nowrap">
                 <el-form-item size="mini">
-                  <el-button type="primary" class="btns" @click="find" size="mini"
+                  <el-button type="primary" class="btns"  size="mini"
                     >搜索</el-button
                   >
                   <el-button
diff --git a/src/views/safetyproduction/checklistself.vue b/src/views/safetyproduction/checklistself.vue
index b2b9231..9c95d1e 100644
--- a/src/views/safetyproduction/checklistself.vue
+++ b/src/views/safetyproduction/checklistself.vue
@@ -1,125 +1,151 @@
 <template>
   <div class="app-container">
-    <el-form ref="form" :model="form" label-width="80px">
+    <el-form ref="form" :model="listQuery" label-width="80px">
       <el-row>
         <el-col :span="5">
           <el-form-item label="自查任务">
-            <el-input v-model="form.name"></el-input>
+            <el-input v-model="listQuery.filter.inspectionName"></el-input>
           </el-form-item>
         </el-col>
         <el-col :span="5">
           <el-form-item label="检查时间">
-            <el-date-picker v-model="form.value1" type="date" placeholder="选择日期">
+            <el-date-picker
+              v-model="listQuery.filter.inspectionStartTime"
+              type="date"
+              format="yyyy 年 MM 月 dd 日" 
+              placeholder="选择日期"
+            >
             </el-date-picker>
           </el-form-item>
         </el-col>
         <el-col :span="5">
           <el-form-item label="检查人员">
-            <el-input v-model="form.name"></el-input>
+            <el-input v-model="listQuery.filter.inspectorName"></el-input>
           </el-form-item>
         </el-col>
         <el-col :span="4" style="text-align: center">
-          <el-button type="primary" icon="el-icon-search" class="btns"
+          <el-button
+            type="primary"
+            icon="el-icon-search"
+            class="btns"
+            @click="find()"
             >搜索</el-button
           >
           <el-button
             type="primary"
             icon="el-icon-plus"
             class="btns"
-            @click="dialogVisible = true"
+            @click="jump()"
             >新增</el-button
           >
         </el-col>
       </el-row>
     </el-form>
-    <el-table :data="tableData" border style="width: 100%">
-      <el-table-column prop="date" label="自查任务">
+    <el-table :data="list" border style="width: 100%">
+      <el-table-column align="center" prop="inspectionName" label="自查任务">
       </el-table-column>
-      <el-table-column prop="name" label="检查时间"> </el-table-column>
-      <el-table-column prop="name" label="检查人员"> </el-table-column>
-      <el-table-column prop="province" label="状态"> </el-table-column>
-      <el-table-column prop="address" label="更新时间"> </el-table-column>
+      <el-table-column align="center" prop="createTime" label="检查时间">
+      </el-table-column>
+      <el-table-column align="center" prop="inspectorName" label="检查人员">
+      </el-table-column>
+      <el-table-column align="center" label="状态">
+        <template slot-scope="scope">
+          <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 align="center" prop="updateTime" label="更新时间">
+      </el-table-column>
       <el-table-column align="center" label="操作">
         <template slot-scope="scope">
-          <el-button @click="handleClick(scope.row)" type="text" size="small"
+          <el-button v-if="scope.row.status==-1" @click="handleClick(scope.row)" type="text" size="small"
             >编辑</el-button
           >
-          <el-button type="text" size="small" style="color: red"
+           <el-button v-if="scope.row.status==0" @click="handleClick(scope.row)" type="text" size="small"
+            >去评审</el-button
+          >
+           <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
           >
         </template>
       </el-table-column>
     </el-table>
+    <div style="text-align: right">
+      <el-pagination
+        v-show="recordTotal > 0"
+        @size-change="handleSizeChange"
+        @current-change="handleCurrentChange"
+        :current-page="currentPage"
+        :page-sizes="[10, 20, 30, 50]"
+        :page-size="pageSize"
+        layout="total, sizes, prev, pager, next, jumper"
+        :total="recordTotal"
+      >
+      </el-pagination>
+    </div>
   </div>
 </template>
 <script>
+import { safetySelfInspectionList } from "@/api/safetySelfInspection.js";
 export default {
   data() {
     return {
       dialogVisible: false,
-      form: {
-        name: "",
-        value1:"",
+      form: {},
+      listQuery: {
+        filter: {
+          inspectionName: "",
+          inspectorName: "",
+          inspectionStartTime: "",
+          inspectionEndTime: "",
+          status: "",
+        },
+        pageIndex: 1,
+        pageSize: 5,
       },
-      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,
-        },
-      ],
-      options: [
-        {
-          value: "选项1",
-          label: "黄金糕",
-        },
-        {
-          value: "选项2",
-          label: "双皮奶",
-        },
-        {
-          value: "选项3",
-          label: "蚵仔煎",
-        },
-        {
-          value: "选项4",
-          label: "龙须面",
-        },
-        {
-          value: "选项5",
-          label: "北京烤鸭",
-        },
-      ],
-      value: "",
+      list: [],
+      pageSize: 10,
+      recordTotal: 0,
+      currentPage: 1,
     };
   },
+  created() {
+    this.safetySelfInspectionL();
+  },
+  methods: {
+    async safetySelfInspectionL() {
+      var res = await safetySelfInspectionList(this.listQuery).then((res) => {
+        if (res.data.code == 200) {
+          console.log(res.data);
+          this.list = res.data.result.records;
+          this.recordTotal = res.data.result.total;
+          this.pageSize = res.data.result.size;
+          this.currentPage = res.data.result.current;
+        }
+      });
+    },
+    handleClick(index) {},
+    find() {
+      this.safetySelfInspectionL();
+    },
+    handleSizeChange(val) {
+      this.listQuery.pageSize = val;
+      this.safetySelfInspectionL();
+    },
+    handleCurrentChange(val) {
+      this.listQuery.pageIndex = val;
+      this.safetySelfInspectionL();
+    },
+    jump(){
+      this.$router.push({
+        path:"/new"
+      })
+    }
+  },
 };
 </script>
 <style scoped>
diff --git a/src/views/safetyproduction/new.vue b/src/views/safetyproduction/new.vue
index 66d9aa7..ca2005c 100644
--- a/src/views/safetyproduction/new.vue
+++ b/src/views/safetyproduction/new.vue
@@ -4,104 +4,142 @@
       <div class="box-left">
         <Titlename title="检查项树"></Titlename>
         <div class="box-left-content">
-          <!-- <el-form ref="form" :model="form" style="font-size: 12px" size="mini">
-            <el-row>
-              <el-col :span="12">
-                <el-form-item size="mini">
-                  <el-input
-                    v-model="form.name"
-                    placeholder="请输入检查项名称"
-                  ></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="11" :offset="1" style="white-space: nowrap">
-                <el-form-item size="mini">
-                  <el-button type="primary" class="btns" size="mini">搜索</el-button>
-                  <el-button
-                    type="primary"
-                    style="margin: 0px"
-                    class="btns"
-                    icon="el-icon-plus"
-                    size="mini"
-                  ></el-button>
-                </el-form-item>
-              </el-col>
-            </el-row>
-          </el-form> -->
           <el-tree
-            :data="data"
-            :props="defaultProps"
+            :data="tree"
+            node-key="id"
+            @check="treeClick"
+            show-checkbox
           ></el-tree>
         </div>
       </div>
-      <div class="box-right" v-if="show">
-          <div class="title">A级要素:<span>A级要素2</span></div>
-        <div v-for="(item,index) in 2" :key="index">
+      <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>
+        <div v-for="(item, index) in item.child" :key="index">
           <el-row class="titles">
-            <el-col :span="6" :offset="1"><p><span>B级要素:</span>法律、法规和标准的识别和获取</p></el-col>
-             <el-col :span="6"  :offset="4"><p><span>得分:</span>50</p></el-col>
+            <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="tableData"
+            <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="评审标准">
+                  <el-table-column
+                    prop="veto"
+                    align="center"
+                    label="否决项"
+                  ></el-table-column>
+                  <el-table-column
+                    align="center"
+                    width="80px"
+                    type="expand"
+                    label="扣分项"
                   >
-                    <el-table-column
-                      prop="date"
-                      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 :data="item.child.deductionList">
                       <el-table-column
-                      prop="name"
-                      align="center"
-                      label="评审标准"
+                        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
                     >
-                     <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 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 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>
+    <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-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>
   </div>
 </template>
 <script>
 import Titlename from "../../components/Titlename/index.vue";
+import {
+  safetyInspectionItemTreeA,
+  safetyInspectionItemTreeB,
+  safetySelfInspectionAdd,
+  safetyInspectionItemName,
+} from "@/api/safetySelfInspection.js";
 export default {
   components: { Titlename },
   data() {
@@ -109,110 +147,121 @@
       dialogVisible: false,
       show: true,
       form: {
-        name: "",
+      inspectionName:"",
+      inspector:"",
+      inspectionTime:"",
+      status:"",
+      itemList:[]
       },
       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,
-        },
-      ],
-      data: [
-        {
-          label: "一级 1",
-          children: [
-            {
-              label: "二级 1-1",
-              children: [
-                {
-                  label: "三级 1-1-1",
-                },
-              ],
-            },
-          ],
-        },
-        {
-          label: "一级 2",
-          children: [
-            {
-              label: "二级 2-1",
-              children: [
-                {
-                  label: "三级 2-1-1",
-                },
-              ],
-            },
-            {
-              label: "二级 2-2",
-              children: [
-                {
-                  label: "三级 2-2-1",
-                },
-              ],
-            },
-          ],
-        },
-        {
-          label: "一级 3",
-          children: [
-            {
-              label: "二级 3-1",
-              children: [
-                {
-                  label: "三级 3-1-1",
-                },
-              ],
-            },
-            {
-              label: "二级 3-2",
-              children: [
-                {
-                  label: "三级 3-2-1",
-                },
-              ],
-            },
-          ],
-        },
-      ],
-      defaultProps: {
-        children: "children",
-        label: "label",
-      },
+      list: [],
+      lists:[],
+      nameList:[],
+      tree: [],
+      id: "",
+      nameA: "",
+      arr:[]
     };
   },
+  created() {
+    this.TreeA();
+  },
   methods: {
+    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)
+           }
+        }
+        console.log(this.lists)
+      });
+    },
+    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;
+    },
+    treeClick(currentObj) {
+      this.TreeB(currentObj.value);
+    },
+    handleClick(data) {
+      this.$router.push({
+        path: "/reviewXG",
+        query: {
+          id: data,
+        },
+      });
+    },
+    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])
+        }
+      }
+      this.form.itemList=arr
+    this.dialogVisible = true
+    safetyInspectionItemName().then(res=>{
+      // console.log(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({
+              type: "success",
+              duration: 2000,
+              message: "新增成功",
+              title: "成功",
+            });
+       }
+      
+      })
+    },
     btnsQX() {
       this.show = true;
     },
@@ -239,16 +288,22 @@
   padding: 10px;
 }
 .box-right {
+  position: relative;
   width: 79%;
   background-color: white;
   border-radius: 5px;
 }
-.title{
+.title {
   font-size: 16px;
   padding: 10px 20px;
   font-weight: bold;
 }
-.titles{
+.titles {
   font-size: 14px;
 }
+.btns{
+  position: absolute;
+  top: 10px;
+  right: 50px;
+}
 </style>
\ No newline at end of file
diff --git a/src/views/safetyproduction/reviewXG.vue b/src/views/safetyproduction/reviewXG.vue
index 9ba6b88..b0a1349 100644
--- a/src/views/safetyproduction/reviewXG.vue
+++ b/src/views/safetyproduction/reviewXG.vue
@@ -221,6 +221,9 @@
       },
     };
   },
+  created(){
+  console.log(this.$route.query.id)
+  },
   methods: {
     handleClick() {
       this.dialogVisible = true;

--
Gitblit v1.9.2