From b097841d8c343edd2b6cb650d0693c502754ce26 Mon Sep 17 00:00:00 2001
From: Your Name <123456>
Date: 星期四, 23 六月 2022 12:33:45 +0800
Subject: [PATCH] '导入导出'

---
 src/views/accidentHidden/oneFromanotherN/addDanger.vue                   |  359 +++++
 src/views/accidentSearch/oneFromanotherN/existN.vue                      |  765 +++++++++++
 src/views/doublePreventAction/riskLevelManage/riskSourceManage/index.vue |  154 +
 src/views/accidentSearch/oneFromanotherN/addDanger.vue                   |  359 +++++
 src/views/accidentHidden/oneFromanotherN/existN.vue                      |  765 +++++++++++
 src/views/accidentHidden/oneFromanotherN/index.vue                       |  794 +++++++++++
 src/assets/example/riskSource.xlsx                                       |    0 
 src/views/accidentSearch/oneFromanotherN/index.vue                       |  794 +++++++++++
 src/api/riskSource.js                                                    |   22 
 9 files changed, 3,975 insertions(+), 37 deletions(-)

diff --git a/src/api/riskSource.js b/src/api/riskSource.js
index 6421c15..addb8ad 100644
--- a/src/api/riskSource.js
+++ b/src/api/riskSource.js
@@ -44,3 +44,25 @@
         data:data
     })
 }
+
+
+export function exportRiskSource() {
+    return request({
+        headers: {
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API + '/riskSource/export',
+        method: 'get',
+    })
+}
+
+export function importRiskSource(data) {
+    return request({
+        headers: {
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API + '/riskSource/import',
+        method: 'post',
+        data
+    })
+}
diff --git a/src/assets/example/riskSource.xlsx b/src/assets/example/riskSource.xlsx
new file mode 100644
index 0000000..b9ff2ff
--- /dev/null
+++ b/src/assets/example/riskSource.xlsx
Binary files differ
diff --git a/src/views/accidentHidden/oneFromanotherN/addDanger.vue b/src/views/accidentHidden/oneFromanotherN/addDanger.vue
new file mode 100644
index 0000000..8337e8c
--- /dev/null
+++ b/src/views/accidentHidden/oneFromanotherN/addDanger.vue
@@ -0,0 +1,359 @@
+<template>
+  <div class="app-container">
+    <div style="">
+      <Titlename title="录入举一反三页面"></Titlename>
+      <div class="whole-form">
+        <el-form
+          :model="ruleForm"
+          :rules="rules"
+          ref="ruleForm"
+          label-width="150px"
+          class="demo-ruleForm"
+          style="margin: 0 14% 0 16%">
+          <el-row>
+            <el-col :span="9">
+              <el-form-item label="检查时间" prop="check_date">
+                <el-date-picker
+                  v-model="ruleForm.check_date"
+                  type="date"
+                  value-format="yyyy-MM-dd"
+                  placeholder="选择日期"
+                  style="width: 100%">
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+             <el-col :span="9">
+              <el-form-item label="检查类别" prop="checktype">
+                  <el-select v-model="ruleForm.checktype" placeholder="请选择"  style="width: 100%">
+                      <el-option
+                          v-for="item in JCLBList"
+                          :key="item.value"
+                          :label="item.value"
+                          :value="item.value">
+                      </el-option>
+                  </el-select>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="9" >
+              <el-form-item label="检查单位" prop="check_main_branch">
+                  <el-input v-model="ruleForm.check_main_branch" style="width:100%"></el-input>
+<!--                  <el-select v-model="ruleForm.check_main_branch" placeholder="请选择"  @change="changeJCDW"  style="width: 100%">-->
+<!--                      <el-option-->
+<!--                          v-for="item in JCDWList"-->
+<!--                          :key="item.label"-->
+<!--                          :label="item.label"-->
+<!--                          :value="item.label"-->
+<!--                      >-->
+<!--                      </el-option>-->
+<!--                  </el-select>-->
+              </el-form-item>
+            </el-col>
+          </el-row>
+
+
+            <el-row style="margin-bottom: 20px">
+                <el-col :span="9">
+                    <el-button type="primary" class="btns" @click="addDanger()">新增</el-button>
+                </el-col>
+            </el-row>
+
+                <el-table :data="tableData" style="width: 100%">
+                    <el-table-column type="index" width="55" align="center" label="序号"></el-table-column>
+                    <el-table-column prop="address"  align="center" label="隐患地点"></el-table-column>
+                    <el-table-column prop="ht_content"  align="center" label="隐患内容"></el-table-column>
+                    <el-table-column prop="ht_typesub"  align="center" label="隐患类别"></el-table-column>
+                    <el-table-column prop="ht_level"  align="center" label="隐患级别"></el-table-column>
+                    <el-table-column prop="time" label="操作" align="center" width="140">
+                        <template slot-scope="scope">
+                            <div style="display: flex;align-items: center;flex-direction: row;">
+                                <el-button size="mini" @click="editDanger(scope.row, scope.$index)">
+                                    编辑
+                                </el-button>
+                                <el-button size="mini" @click="deleteDanger(scope.row, scope.$index)">
+                                    删除
+                                </el-button>
+                            </div>
+                        </template>
+                    </el-table-column>
+                </el-table>
+          <el-row style="margin-top: 20px">
+            <el-col :span="22">
+              <el-form-item style="text-align: center">
+                <el-button type="primary" class="btns" @click="submitForm('ruleForm')">
+                    保存
+                </el-button>
+                <el-button @click="closeShow">关闭</el-button>
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-form>
+      </div>
+    </div>
+
+      <el-dialog
+          :title="title"
+          :visible.sync="dialogVisible"
+          :close-on-click-modal="false"
+          width="40%">
+          <el-form ref="form" :rules="dangerRules" :model="dangerForm" label-width="100px">
+              <el-row>
+                  <el-col :span="9">
+                      <el-form-item label="隐患地点" prop="address">
+                          <el-input v-model="dangerForm.address" rows="3" type="textarea" class="multiline"></el-input>
+                      </el-form-item>
+                  </el-col>
+                  <el-col :span="9" :offset="4">
+                      <el-form-item label="隐患内容" prop="ht_content">
+                          <el-input v-model="dangerForm.ht_content" rows="3" type="textarea" class="multiline"></el-input>
+                      </el-form-item>
+                  </el-col>
+              </el-row>
+              <el-row>
+
+                 <el-col :span="9">
+                      <el-form-item label="隐患类别" prop="ht_typesub">
+                          <el-select v-model="dangerForm.ht_typesub" placeholder="请选择">
+                              <el-option
+                                  v-for="item in YHLXList"
+                                  :key="item.value"
+                                  :label="item.value"
+                                  :value="item.value">
+                              </el-option>
+                          </el-select>
+                      </el-form-item>
+                  </el-col>
+                  <el-col :span="9" :offset="4">
+                      <el-form-item label="隐患级别" prop="ht_level">
+                          <el-select v-model="dangerForm.ht_level" placeholder="请选择">
+                              <el-option
+                                  v-for="item in YHJBList"
+                                  :key="item.value"
+                                  :label="item.label"
+                                  :value="item.value">
+                              </el-option>
+                          </el-select>
+                      </el-form-item>
+                  </el-col>
+              </el-row>
+              <el-row>
+                  <el-col :span="22">
+                      <el-form-item style="text-align: center">
+                          <el-button type="primary" class="btns" @click="submitDanger('form')">
+                              保存
+                          </el-button>
+                          <el-button @click="dialogVisible=false">关闭</el-button>
+                      </el-form-item>
+                  </el-col>
+              </el-row>
+          </el-form>
+      </el-dialog>
+
+  </div>
+</template>
+
+<script>
+import Titlename from "../../../components/Titlename/index.vue";
+
+import {initJCBM ,initYHLX,initJCLB,initYHJB,initReformStatus} from "@/api/sgyhpczl/initSelect";
+import {saveDanger,initDangerRebound,getDangerInfo,editDanger} from '@/api/sgyhpczl/hiddenDangerRegistration'
+import { save } from '@/api/sgyhpczl/oneFromanotherN'
+
+import {deepClone} from '@/utils'
+
+export default {
+  components: { Titlename },
+  name: "hiddenDangerList",
+  data() {
+    return {
+        id:'',
+        rowIndex:-1,
+        dangerList:[],
+        dangerForm:{},
+        dangerRules:{
+            address: [{ required: true, message: '不能为空', trigger: 'blur' },],
+            ht_content: [{ required: true, message: '不能为空', trigger: 'blur' },],
+            ht_typesub: [{ required: true, message: '不能为空', trigger: 'blur' },],
+            ht_level: [{ required: true, message: '不能为空', trigger: 'blur' },],
+        },
+        title:'新增',
+        dialogVisible:false,
+        JCLBList:[],
+        YHLXList:[],
+        YHJBList:[],
+        ruleForm: {},
+        rules: {
+           check_date: [{ required: true, message: '不能为空', trigger: 'blur' },],
+           check_main_branch: [{ required: true, message: '不能为空', trigger: 'change' },],
+           checktype: [{ required: true, message: '不能为空', trigger: 'blur' },],
+        },
+        tableData: [],
+    };
+  },
+    mounted(){
+        this.initJCLB()
+        this.initYHJB()
+        this.initYHLX()
+    },
+  methods: {
+      submitDanger(formName){
+          this.$refs[formName].validate((valid) => {
+              if (valid) {
+                  if(this.title=='新增'){
+                      this.tableData.push(this.dangerForm)
+                  }else {
+                      var arr = this.tableData;
+                      arr.splice(this.rowIndex, 1, this.dangerForm);
+                      this.tableData = arr;
+                  }
+                  this.dialogVisible=false
+
+              } else {
+                  console.log("error submit!!");
+                  return false;
+              }
+          });
+      },
+      deleteDanger(row, index) {
+          this.$confirm('确认删除吗', '提示', {
+              confirmButtonText: '确认',
+              cancelButtonText: '取消',
+              type: 'warning'
+          })
+              .then(() => {
+                  var arr = deepClone(this.tableData);
+                  var brr = [];
+                  for (var i = 0; i < arr.length; i++) {
+                      if (i == index) {
+                      } else {
+                          brr.push(arr[i]);
+                      }
+                  }
+                  this.tableData = deepClone(brr);
+                  //this.tableData.splice(index)
+
+              })
+              .catch(error => {
+              });
+
+
+      },
+      editDanger(row, index) {
+          this.dangerForm = deepClone(row);
+          this.rowIndex = index;
+          this.dialogVisible = true;
+          this.title = '编辑';
+      },
+
+      addDanger(){
+          this.dangerForm={}
+          this.title="新增"
+          this.dialogVisible=true
+      },
+      changeWxy(e){
+          for(var i=0;i<this.dangerList.length;i++){
+              if(e==this.dangerList[i].id){
+                  this.dangerForm.DTRisk_level=this.dangerList[i].mriskLevel
+                  this.dangerForm.dangerousSource=this.dangerList[i].mriskPoint
+              }
+          }
+      },
+      initReformStatus(){
+          initReformStatus().then(res=>{
+              if (res.data.ok==1){
+                  this.statusList=res.data.data
+              } else{
+                  this.$message({type:'error', message:res.data.msg, duration:3000})
+              }
+          })
+      },
+      changeJCDW(val){
+          initJCBM(val).then(res=>{
+              if (res.data.ok==1){
+                  this.JCBMList=res.data.data
+              } else{
+                  this.$message({type:'error', message:res.data.msg, duration:3000})
+              }
+          })
+      },
+      initYHLX(){
+          initYHLX().then(res=>{
+              if (res.data.ok==1){
+                  this.YHLXList=res.data.data
+              } else{
+                  this.$message({type:'error', message:res.data.msg, duration:3000})
+              }
+          })
+      },
+      initYHJB(){
+          initYHJB().then(res=>{
+              if (res.data.ok==1){
+                  this.YHJBList=res.data.data
+              } else{
+                  this.$message({type:'error', message:res.data.msg, duration:3000})
+              }
+          })
+      },
+      initJCLB(){
+          initJCLB().then(res=>{
+              if (res.data.ok==1){
+                  this.JCLBList=res.data.data
+              } else{
+                  this.$message({type:'error', message:res.data.msg, duration:3000})
+              }
+          })
+      },
+
+      closeShow(){
+          this.$router.push({
+              path:"/oneFromanotherN"
+          })
+      },
+    submitForm(formName) {
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+            if(this.tableData==null || this.tableData.length==0){
+                this.$message({type:'error', message:"请添加隐患", duration:2000})
+            }
+            this.ruleForm.items=this.tableData
+            save(this.ruleForm).then(res=>{
+                if (res.data.ok==1){
+                    this.$message({type:'success', message:"新增成功", duration:3000})
+                    this.$router.push({
+                        path:"/oneFromanotherN"
+                    })
+                }else {
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+
+        } else {
+          console.log("error submit!!");
+          return false;
+        }
+      });
+    },
+  },
+};
+</script>
+
+<style scoped>
+.app-container {
+  padding: 20px;
+  height: 850px;
+  overflow-y: auto;
+}
+
+.app-container /deep/ .box {
+  padding-top: 0;
+}
+
+/* /deep/ .multiline .el-input__inner {
+  height: 62px;
+} */
+ .btns{
+        background-color: #034ea2;
+        border: 1px solid #034ea2;
+    }
+</style>
diff --git a/src/views/accidentHidden/oneFromanotherN/existN.vue b/src/views/accidentHidden/oneFromanotherN/existN.vue
new file mode 100644
index 0000000..028d77e
--- /dev/null
+++ b/src/views/accidentHidden/oneFromanotherN/existN.vue
@@ -0,0 +1,765 @@
+<template>
+    <div class="app-container" >
+        <div v-if="type=='0'" style="">
+            <Titlename title="录入隐患单页面"></Titlename>
+            <div class="whole-form">
+                <el-form
+                    :model="ruleForm"
+                    :rules="rules"
+                    ref="ruleForm"
+                    label-width="150px"
+                    class="demo-ruleForm"
+                    style="margin: 0 14% 0 16%"
+                >
+                    <el-row>
+                        <el-col :span="9">
+                            <el-form-item label="检查时间" prop="check_date">
+                                <el-date-picker
+                                    v-model="ruleForm.check_date"
+                                    type="date"
+                                    value-format="yyyy-MM-dd"
+                                    placeholder="选择日期"
+                                    style="width: 100%"
+                                >
+                                </el-date-picker>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="9" :offset="4">
+                            <el-form-item label="班次" prop="check_class">
+                                <el-select v-model="ruleForm.check_class" placeholder="请选择"  style="width: 100%">
+                                    <el-option
+                                        v-for="item in BCList"
+                                        :key="item.value"
+                                        :label="item.value"
+                                        :value="item.value">
+                                    </el-option>
+                                </el-select>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="9">
+                            <el-form-item label="检查类别" prop="checktype">
+                                <el-select v-model="ruleForm.checktype" placeholder="请选择"  style="width: 100%">
+                                    <el-option
+                                        v-for="item in JCLBList"
+                                        :key="item.value"
+                                        :label="item.value"
+                                        :value="item.value">
+                                    </el-option>
+                                </el-select>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="9" :offset="4">
+                            <el-form-item label="检查单位" prop="check_main_branch">
+                                <el-select v-model="ruleForm.check_main_branch" placeholder="请选择"  @change="changeJCDW"  style="width: 100%">
+                                    <el-option
+                                        v-for="item in JCDWList"
+                                        :key="item.label"
+                                        :label="item.label"
+                                        :value="item.label"
+                                    >
+                                    </el-option>
+                                </el-select>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="9">
+                            <el-form-item label="检查部门" prop="check_branch">
+                                <el-select v-model="ruleForm.check_branch" placeholder="请选择" style="width: 100%">
+                                    <el-option
+                                        v-for="item in JCBMList"
+                                        :key="item.value"
+                                        :label="item.value"
+                                        :value="item.value">
+                                    </el-option>
+                                </el-select>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="9" :offset="4">
+
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="9">
+                            <el-form-item label="检查人员" prop="check_man">
+                                <el-input v-model="ruleForm.check_man"></el-input>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="9" :offset="4">
+                            <el-form-item label="陪检人员" prop="acc_man">
+                                <el-input v-model="ruleForm.acc_man"></el-input>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="22">
+                            <el-form-item label="行走路线">
+                                <el-input v-model="ruleForm.route" rows="3" type="textarea" class="multiline"></el-input>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+
+                    <el-row style="margin-bottom: 20px">
+                        <el-col :span="9">
+                            <el-button type="primary" class="btns" @click="addDanger">新增隐患</el-button>
+                        </el-col>
+                    </el-row>
+
+                    <el-table :data="tableData" style="width: 100%">
+                        <el-table-column type="index" width="55" align="center" label="序号"></el-table-column>
+                        <el-table-column prop="ht_branch"  align="center" label="隐患部门"></el-table-column>
+                        <el-table-column prop="address"  align="center" label="地点"></el-table-column>
+                        <el-table-column prop="ht_content" align="center" label="隐患内容">
+                            <template slot-scope="scope">
+                                <el-popover trigger="hover" placement="top">
+                                    <p>{{ scope.row.ht_content }}</p>
+                                    <div slot="reference" class="name-wrapper">{{
+                                            scope.row.ht_content != null && scope.row.ht_content.length > 10 ? scope.row.ht_content.substring(0, 8) + "...." : scope.row.ht_content
+                                        }}
+                                    </div>
+                                </el-popover>
+                            </template>
+                        </el-table-column>
+                        <el-table-column prop="measure"  align="center" label="整改措施"></el-table-column>
+                        <el-table-column prop="ht_typesub"  align="center" label="隐患类别"></el-table-column>
+                        <el-table-column prop="dangerousSource"  align="center" label="关联危险源"></el-table-column>
+                        <el-table-column prop="DTRisk_level"  align="center" label="风险等级"></el-table-column>
+                        <el-table-column prop="ht_level"  align="center" label="隐患级别"></el-table-column>
+                        <el-table-column prop="alter_time"  align="center" label="限改时间"></el-table-column>
+                        <el-table-column prop="duty_officer"  align="center" label="责任人"></el-table-column>
+                        <el-table-column prop="alter_status"  align="center" label="整改情况"></el-table-column>
+                        <el-table-column prop="Review"  align="center" label="业务科室"></el-table-column>
+                        <el-table-column prop="time" label="操作" align="center" width="140">
+                            <template slot-scope="scope">
+                                <div style="display: flex;align-items: center;flex-direction: row;">
+                                    <el-button
+                                        size="mini"
+                                        @click="editDanger(scope.row, scope.$index)"
+                                    >编辑
+                                    </el-button>
+                                    <el-button
+                                        size="mini"
+                                        @click="deleteDanger(scope.row, scope.$index)"
+                                    >删除
+                                    </el-button>
+                                </div>
+                            </template>
+                        </el-table-column>
+                    </el-table>
+
+
+                    <el-row style="margin-top: 20px">
+                        <el-col :span="22">
+                            <el-form-item style="text-align: center">
+                                <el-button type="primary" class="btns" @click="submitForm('ruleForm')"
+                                >保存</el-button
+                                >
+                                <el-button @click="returnIndex">关闭</el-button>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                </el-form>
+            </div>
+        </div>
+        <div v-else>
+            <el-table :data="detailTableData" style="width: 100%" >
+                <el-table-column type="selection" width="55" align="center"></el-table-column>
+                <el-table-column prop="number" label="编号" align="center" width="120"></el-table-column>
+                <el-table-column prop="check_branch" label="检查部门" align="center" width="120"></el-table-column>
+                <el-table-column prop="check_man" label="检查人" align="center" width="120"></el-table-column>
+                <el-table-column prop="checktype" label="检查类别" align="center"></el-table-column>
+                <el-table-column label="隐患项目" align="center">
+                    <el-table-column prop="check_date" label="检查时间" width="120" align="center"></el-table-column>
+                    <el-table-column prop="address" label="地点" align="center"> </el-table-column>
+                    <el-table-column prop="ht_content" label="内容" align="center"> </el-table-column>
+                    <el-table-column prop="ht_typesub" label="类别" align="center"> </el-table-column>
+                    <el-table-column prop="ht_level" label="级别" align="center"> </el-table-column>
+                </el-table-column>
+                <el-table-column label="整改计划" align="center">
+                    <el-table-column prop="measure" label="整改措施" align="center"> </el-table-column>
+                    <el-table-column prop="ht_branch" label="隐患部门" align="center"> </el-table-column>
+                    <el-table-column prop="duty_officer" label="责任人" align="center"> </el-table-column>
+                    <el-table-column prop="alter_time" label="限改时间" width="120" align="center"></el-table-column>
+                    <el-table-column prop="ht_level" label="级别" align="center"> </el-table-column>
+                </el-table-column>
+                <el-table-column label="整改情况" align="center">
+                    <el-table-column prop="ACCOMPLISHTIME" label="完成时间" width="110px" align="center"> </el-table-column>
+                    <el-table-column prop="CALLBACKRESULT" label="复查结果" align="center"> </el-table-column>
+                    <el-table-column prop="CALLBACKPERSON" label="复查人" align="center"> </el-table-column>
+                    <el-table-column prop="CALLBACKTIME" label="复查时间"  width="120" align="center"></el-table-column>
+                </el-table-column>
+                <el-table-column  label="隐患处理状态" align="center">
+                    <template slot-scope="scope">
+                        <span v-if="scope.row.step =='1'">初始状态</span>
+                        <span v-if="scope.row.step =='2'">整改中</span>
+                        <span v-if="scope.row.step =='3'">复查中</span>
+                        <span v-if="scope.row.step =='end'">处理结束</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="DTRisk_bankId" label="是否关联" align="center">
+                    <template slot-scope="scope">
+                        <span v-if="scope.row.DTRisk_bankId==0 || scope.row.DTRisk_bankId=='' || scope.row.DTRisk_bankId==null">未关联</span>
+                        <span v-else>已关联</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="DTRisk_level" label="风险等级" align="center"> </el-table-column>
+                <el-table-column prop="warningLevel" label="初始警情" align="center"> </el-table-column>
+                <el-table-column prop="curWarningLevel" label="当前警情" align="center"> </el-table-column>
+            </el-table>
+
+            <el-button style="margin-top: 20px" @click="returnIndex">关闭</el-button>
+        </div>
+        <el-dialog
+            :title="title"
+            :visible.sync="dialogVisible"
+            :close-on-click-modal="false"
+            width="40%">
+            <el-form ref="form" :rules="dangerRules" :model="dangerForm" label-width="100px">
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="隐患部门" prop="ht_branch">
+                            <el-select v-model="dangerForm.ht_branch" placeholder="请选择">
+                                <el-option
+                                    v-for="item in YHBMList"
+                                    :key="item.branch_id"
+                                    :label="item.branch_name"
+                                    :value="item.branch_name">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="地点" prop="address">
+                            <el-input v-model="dangerForm.address" rows="3" type="textarea" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="隐患内容" prop="ht_content">
+                            <el-input v-model="dangerForm.ht_content" rows="3" type="textarea" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="整改措施" prop="measure">
+                            <el-input v-model="dangerForm.measure" rows="3" type="textarea" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="隐患类别" prop="ht_typesub">
+                            <el-select v-model="dangerForm.ht_typesub" placeholder="请选择">
+                                <el-option
+                                    v-for="item in YHLXList"
+                                    :key="item.value"
+                                    :label="item.value"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="关联危险源" prop="DTRisk_bankId">
+                            <el-select v-model="dangerForm.DTRisk_bankId" placeholder="请选择" @change="changeWxy" filterable>
+                                <el-option
+                                    v-for="item in dangerList"
+                                    :key="item.id"
+                                    :label="item.mriskPoint"
+                                    :value="item.id">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="风险等级" prop="DTRisk_level">
+                            <el-input v-model="dangerForm.DTRisk_level" :disabled="true"></el-input>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="隐患级别" prop="ht_level">
+                            <el-select v-model="dangerForm.ht_level" placeholder="请选择">
+                                <el-option
+                                    v-for="item in YHJBList"
+                                    :key="item.value"
+                                    :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="限改时间" prop="alter_time">
+                            <el-date-picker
+                                v-model="dangerForm.alter_time"
+                                type="date"
+                                value-format="yyyy-MM-dd"
+                                placeholder="选择日期"
+                                style="width: 100%"
+                            >
+                            </el-date-picker>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="责任人" prop="duty_officer">
+                            <el-input v-model="dangerForm.duty_officer"></el-input>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="整改情况" prop="alter_status">
+                            <el-select v-model="dangerForm.alter_status" placeholder="请选择">
+                                <el-option
+                                    v-for="item in statusList"
+                                    :key="item.value"
+                                    :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="业务科室" prop="Review">
+                            <el-select v-model="dangerForm.Review" style="width: 100%">
+                                <el-option
+                                    v-for="item in YWKSList"
+                                    :key="item.value"
+                                    :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row v-if="dangerForm.alter_status=='重复反弹隐患'">
+                    <el-col :span="9">
+                        <el-form-item label="重复反弹隐患" prop="repeatId">
+                            <el-select v-model="dangerForm.repeatId" placeholder="请选择">
+                                <el-option
+                                    v-for="item in reboundList"
+                                    :key="item.id"
+                                    :label="item.content"
+                                    :value="item.id">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="22">
+                        <el-form-item style="text-align: center">
+                            <el-button type="primary" class="btns" @click="submitDanger('form')"
+                            >保存</el-button
+                            >
+                            <el-button @click="dialogVisible=false">关闭</el-button>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+            </el-form>
+        </el-dialog>
+    </div>
+
+
+</template>
+
+<script>
+import Titlename from "../../../components/Titlename/index.vue";
+
+import {
+    initBC,
+    initJCBM,
+    initJCLB,
+    initLlr,
+    initReformStatus,
+    initWxy,
+    initYHBM,
+    initYHJB,
+    initYHLX,
+    initYwks
+} from "@/api/sgyhpczl/initSelect";
+import {getPageList,initDangerRebound,saveDanger} from '@/api/sgyhpczl/hiddenDangerRegistration'
+import {deepClone} from '@/utils'
+
+export default {
+    components: { Titlename },
+    name: "hiddenDangerList",
+    data() {
+        return {
+            type: '0',
+            id:'',
+            rowIndex:-1,
+            dangerList:[],
+            dangerForm:{},
+            dangerRules:{
+                ht_branch: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                address: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                ht_content: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                ht_typesub: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                measure: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                DTRisk_bankId: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                ht_level: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                alter_time: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                alter_status: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                Review: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                duty_officer:[{ required: true, message: '不能为空', trigger: 'blur' },]
+            },
+            title:'新增',
+            dialogVisible:false,
+            BCList:[],
+            JCLBList:[],
+            JCDWList:[{label:"众泰煤焦化",value:0},{label:"上级单位",value:1}],
+            YHBMList:[],
+            YHLXList:[],
+            YHJBList:[],
+            JCBMList:[],
+            llrList:[],
+            statusList:[],
+            YWKSList:[],
+            reboundList:[],
+            ruleForm: {},
+            rules: {
+                check_date: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                check_class: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                check_main_branch: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                check_branch: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                check_man: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                checktype: [{ required: true, message: '不能为空', trigger: 'blur' },],
+            },
+            tableData: [],
+            paramsData: {},//上个页面参数
+            listQuery:{
+                page:1,
+                limit:10,
+                form:{},
+            },
+            currentPage: 1,
+            pageSize: 10,
+            recordTotal: 0,
+            detailTableData:[],//隐患详情列表
+            beforeData:{}, //上个页面信息
+            beforeFlag:true,//上个页面信息保存标志
+        };
+    },
+
+    mounted(){
+        this.initBC()
+        this.initJCLB()
+        this.initYHJB()
+        this.initYHLX()
+        //this.initLlr()
+        this.initReformStatus()
+        this.initYHBM()
+        this.initYWKS()
+        this.initWXY()
+        this.initDangerRebound()
+        this.type = this.$route.query.type;
+        if (this.type === '0'){
+            this.initInfo(this.$route.query.data);
+        }else {
+            this.listQuery.form.jyfsId = this.$route.query.data.id
+            this.getPageList();
+        }
+    },
+    methods: {
+        initInfo(data){
+            this.paramsData = this.$route.query.data;
+            this.ruleForm.jyfsId = data.id;
+            this.dangerForm.address = data.address;
+            this.dangerForm.ht_content = data.ht_content;
+            // this.tableData[0] = {
+            //     address: data.address,
+            //     ht_content: data.ht_content,
+            //     ht_level: data.ht_level,
+            // };
+        },
+
+        // async initInfo(){
+        //     var res=await getDangerInfo(this.id)
+        //     if (res.data.ok==1){
+        //         this.ruleForm=res.data.data
+        //         this.changeJCDW(res.data.data.check_main_branch)
+        //         var obj=deepClone(res.data.data)
+        //         this.tableData.push(obj)
+        //     }
+        // },
+        initDangerRebound(){
+            initDangerRebound().then(res=>{
+                if (res.data.ok==1){
+                    this.reboundList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        submitDanger(formName){
+            this.$refs[formName].validate((valid) => {
+                if (valid) {
+                    if(this.title=='新增'){
+                        this.beforeFlag = false;
+                        this.tableData.push(this.dangerForm)
+                        console.log(this.tableData)
+                    }else {
+                        var arr = this.tableData;
+                        arr.splice(this.rowIndex, 1, this.dangerForm);
+                        this.tableData = arr;
+                    }
+                    this.dialogVisible=false
+
+                } else {
+                    console.log("error submit!!");
+                    return false;
+                }
+            });
+        },
+        getPageList(){
+            this.listQuery.page=1
+            getPageList(this.listQuery).then(res=>{
+                if (res.data.ok==1) {
+                    this.detailTableData = res.data.data.items
+                    this.recordTotal=res.data.data.total
+                }else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        deleteDanger(row, index) {
+            this.$confirm('确认删除吗', '提示', {
+                confirmButtonText: '确认',
+                cancelButtonText: '取消',
+                type: 'warning'
+            })
+                .then(() => {
+                    var arr = deepClone(this.tableData);
+                    var brr = [];
+                    for (var i = 0; i < arr.length; i++) {
+                        if (i == index) {
+                        } else {
+                            brr.push(arr[i]);
+                        }
+                    }
+                    this.tableData = deepClone(brr);
+                    //this.tableData.splice(index)
+
+                })
+                .catch(error => {
+                });
+
+
+        },
+        editDanger(row, index) {
+            this.dangerForm = deepClone(row);
+            this.rowIndex = index;
+            this.dialogVisible = true;
+            this.title = '编辑';
+        },
+
+        addDanger(){
+            if (!this.beforeFlag){
+                this.dangerForm={}
+            }
+            this.title="新增"
+            this.dialogVisible=true
+        },
+        changeWxy(e){
+            for(var i=0;i<this.dangerList.length;i++){
+                if(e==this.dangerList[i].id){
+                    this.dangerForm.DTRisk_level=this.dangerList[i].mriskLevel
+                    this.dangerForm.dangerousSource=this.dangerList[i].mriskPoint
+                }
+            }
+        },
+        initWXY(){
+            var param={
+                page: 1,
+                limit: 1000
+            }
+            initWxy(param).then(res=>{
+                if (res.data.ok==1){
+                    this.dangerList=res.data.data.items
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initYWKS(){
+            initYwks().then(res=>{
+                if (res.data.ok==1){
+                    this.YWKSList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initYHBM(){
+            initYHBM().then(res=>{
+                if (res.data.ok==1){
+                    this.YHBMList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initLlr(){
+            initLlr().then(res=>{
+                if (res.data.ok==1){
+                    this.llrList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initReformStatus(){
+            initReformStatus().then(res=>{
+                if (res.data.ok==1){
+                    this.statusList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        changeJCDW(val){
+            initJCBM(val).then(res=>{
+                if (res.data.ok==1){
+                    this.JCBMList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initYHLX(){
+            initYHLX().then(res=>{
+                if (res.data.ok==1){
+                    this.YHLXList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initYHJB(){
+            initYHJB().then(res=>{
+                if (res.data.ok==1){
+                    this.YHJBList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initBC(){
+            initBC().then(res=>{
+                if (res.data.ok==1){
+                    this.BCList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initJCLB(){
+            initJCLB().then(res=>{
+                if (res.data.ok==1){
+                    this.JCLBList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+
+
+        returnIndex(){
+            this.$router.push({
+                path:"/oneFromanotherN"
+            })
+        },
+        judge(obj){
+            console.log(obj)
+            if (obj != null || ('ht_branch' in obj) || ('address' in obj) || ('ht_typesub' in obj) || ('dangerousSource' in obj)
+                || ('alter_time' in obj) || ('duty_officer' in obj) || ('alter_status' in obj) || ('Review' in obj) || ('DTRisk_bankId' in  obj)){
+                return true;
+            }else {
+                return false;
+            }
+        },
+        submitForm(formName) {
+            this.$refs[formName].validate((valid) => {
+                if (valid) {
+                    this.ruleForm.items=this.tableData
+                    // if(this.addShow){
+                    console.log(this.ruleForm)
+                    saveDanger(this.ruleForm).then(res=>{
+                        if (res.data.ok==1){
+                            this.$message({type:'success', message:"保存成功", duration:3000})
+                            this.$router.push({
+                                path:"/oneFromanotherN"
+                            })
+                        }else {
+                            this.$message({type:'error', message:res.data.msg, duration:3000})
+                        }
+                    })
+                    // }else {
+                    //     var param=deepClone(this.ruleForm)
+                    //     var obj=deepClone(this.tableData[0])
+                    //     param.ht_branch=obj.ht_branch
+                    //     param.address=obj.address
+                    //     param.ht_content=obj.ht_content
+                    //     param.measure=obj.measure
+                    //     param.ht_typesub=obj.ht_typesub
+                    //     param.DTRisk_bankId=obj.DTRisk_bankId
+                    //     param.DTRisk_level=obj.mriskLevel
+                    //     param.dangerousSource=obj.mriskPoint
+                    //     param.ht_level=obj.ht_level
+                    //     param.alter_time=obj.alter_time
+                    //     param.duty_officer=obj.duty_officer
+                    //     param.alter_status=obj.alter_status
+                    //     param.Review=obj.Review
+                    //     param.repeatId=obj.repeatId
+                    //     editDanger(param).then(res=>{
+                    //         if (res.data.ok==1){
+                    //             this.$message({type:'success', message:"编辑成功", duration:3000})
+                    //             this.$router.push({
+                    //                 path:"/hiddenDangerRegistration"
+                    //             })
+                    //         }else {
+                    //             this.$message({type:'error', message:res.data.msg, duration:3000})
+                    //         }
+                    //     })
+                    // }
+
+
+
+                } else {
+                    console.log("error submit!!");
+                    return false;
+                }
+            });
+        },
+    },
+};
+</script>
+
+<style scoped>
+.app-container {
+    padding: 20px;
+    height: 850px;
+    overflow-y: auto;
+}
+
+.app-container /deep/ .box {
+    padding-top: 0;
+}
+
+/* /deep/ .multiline .el-input__inner {
+  height: 62px;
+} */
+.btns{
+    background-color: #034ea2;
+    border: 1px solid #034ea2;
+}
+</style>
diff --git a/src/views/accidentHidden/oneFromanotherN/index.vue b/src/views/accidentHidden/oneFromanotherN/index.vue
new file mode 100644
index 0000000..1e454d1
--- /dev/null
+++ b/src/views/accidentHidden/oneFromanotherN/index.vue
@@ -0,0 +1,794 @@
+<template>
+    <div class="app-container">
+            <el-form ref="form" :inline="true" class="inquire" :model="listQuery.form" label-width="80px">
+            <el-form-item label="隐患单位">
+                <el-input v-model="listQuery.form.check_main_branch" style="width:202px"></el-input>
+<!--                <el-select v-model="listQuery.form.check_main_branch" placeholder="请选择">-->
+<!--                    <el-option-->
+<!--                        v-for="item in XFDWList"-->
+<!--                        :key="item.value"-->
+<!--                        :label="item.value"-->
+<!--                        :value="item.value">-->
+<!--                    </el-option>-->
+<!--                </el-select>-->
+            </el-form-item>
+            <el-form-item label="检查类别">
+                <el-select v-model="listQuery.form.checktype" placeholder="请选择">
+                    <el-option
+                        v-for="item in JCLBList"
+                        :key="item.value"
+                        :label="item.value"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="被检单位">
+                <el-input v-model="listQuery.form.ht_community" style="width:202px"></el-input>
+            </el-form-item>
+            <el-form-item label="隐患级别">
+                <el-select v-model="listQuery.form.ht_level" placeholder="请选择">
+                    <el-option
+                        v-for="item in YHJBList"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="隐患类别">
+                <el-select v-model="listQuery.form.ht_typesub" placeholder="请选择">
+                    <el-option
+                        v-for="item in YHLBList"
+                        :key="item.value"
+                        :label="item.value"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="隐患地点">
+                <el-input v-model="listQuery.form.address" style="width:202px" placeholder="请输入内容"></el-input>
+            </el-form-item>
+            <el-form-item label="隐患内容">
+                <el-input v-model="listQuery.form.ht_content" style="width:202px" placeholder="请输入内容"></el-input>
+            </el-form-item>
+            <el-form-item label="发送单位" v-if="listQuery.type=='1'">
+                <el-input  v-model="listQuery.form.workGroupName" style="width:202px" placeholder="请输入内容"></el-input>
+            </el-form-item>
+            <el-form-item label="检查时间">
+                <el-col :span="11">
+                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateStart"
+                                    style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker>
+                </el-col>
+                <el-col style="text-align:center" :span="2">-</el-col>
+                <el-col :span="11">
+                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateEnd"
+                                    style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker>
+                </el-col>
+            </el-form-item>
+            <el-form-item style="text-align:center;padding:0 50px">
+                <el-button type="primary" class="btns" size="small" icon="el-icon-search" @click="getPageList()">查询
+                </el-button>
+                <el-button type="primary" class="btns" size="small" @click="reset()">重置</el-button>
+            </el-form-item>
+        </el-form>
+     <el-row class="title-center">
+            <el-col :span="10">
+                <el-radio-group v-if="table1" v-model="listQuery.type" @change="typeChange">
+                    <el-radio-button label="0">待发送</el-radio-button>
+                    <el-radio-button label="1">已发送</el-radio-button>
+                </el-radio-group>
+                <el-radio-group v-if="table2" v-model="listQuery.sendType" @change="sendTypeChange">
+                    <el-radio-button label="0">待自查</el-radio-button>
+                    <el-radio-button label="1">已自查</el-radio-button>
+                </el-radio-group>
+          <el-button class="btns" type="primary" size="small" v-if="table1" @click="handoff(1)">进入自查({{selfTotal}})</el-button>
+          <el-button class="btns" type="primary" size="small" v-if="table2" @click="handoff(2)">返回填写</el-button>
+            </el-col>
+            <div v-if="table1">
+            <el-col :span="14" style="text-align:right;" v-if="listQuery.type==0">
+                <el-button class="btns" type="primary" size="small" icon="el-icon-upload2" @click="openSend()">发送</el-button>
+                <el-button class="btns" type="primary" size="small" icon="el-icon-plus" @click="addDanger()">添加</el-button>
+                <el-button size="small" @click="deleteBatch()" >批量删除</el-button>
+            </el-col>
+             <el-col :span="14" style="text-align:right;" v-if="listQuery.type==1">
+                <el-button class="btns" type="primary" size="small" @click="tackBack()">收回</el-button>
+            </el-col>
+            </div>
+        </el-row>
+        <div v-if="table1">
+         <el-table ref="dataTable"
+                   v-if="listQuery.type==0"
+                   v-loading="loading"
+                   :data="tableData"
+                   style="width: 100%"
+                   @selection-change="handleSelectionChange">
+             <el-table-column type="selection" width="55" align="center"></el-table-column>
+          <el-table-column prop="check_date" label="检查时间" :formatter="formatColumnDate"  width="120" align="center">
+<!--                    <template slot-scope="scope">-->
+<!--                        <label>{{ formatDate(scope.row.check_date)}}</label><br/>-->
+<!--                        <label>{{ scope.row.check_class}}</label>-->
+<!--                    </template>-->
+                </el-table-column>
+            <el-table-column prop="check_main_branch" label="检查单位" align="center"></el-table-column>
+            <el-table-column prop="checktype" label="检查类别" align="center"></el-table-column>
+                <!-- <el-table-column prop="measure" label="被检单位" align="center"></el-table-column> -->
+            <el-table-column prop="ht_typesub" label="隐患类别" align="center"></el-table-column>
+            <el-table-column prop="ht_level" label="隐患级别" align="center"></el-table-column>
+            <el-table-column prop="address" label="隐患地点" align="center"></el-table-column>
+            <el-table-column prop="ht_content" label="隐患内容" width="200" align="center">
+                <template slot-scope="scope">
+                    <el-popover trigger="hover" placement="top">
+                        <p>{{ scope.row.ht_content }}</p>
+                        <div slot="reference" class="name-wrapper">{{
+                                scope.row.ht_content != null && scope.row.ht_content.length > 10 ? scope.row.ht_content.substring(0, 8) + "...." : scope.row.ht_content
+                            }}
+                        </div>
+                    </el-popover>
+                </template>
+            </el-table-column>
+            <!-- <el-table-column prop="curWarningLevel" label="下发单位" align="center"></el-table-column> -->
+            <el-table-column prop="date" label="基本操作" align="center">
+                <template slot-scope="scope">
+                    <el-button @click="editDanger(scope.row)" type="text" size="small">编辑</el-button>
+                    <el-button @click="deleteDanger(scope.row)" type="text" size="small">删除</el-button>
+                </template>
+            </el-table-column>
+        </el-table>
+            <el-table ref="dataTable" v-if="listQuery.type==1" :data="tableData" style="width: 100%" @selection-change="handleSelectionChange">
+            <el-table-column type="selection" width="55" align="center"></el-table-column>
+          <el-table-column prop="check_date" label="检查时间" :formatter="formatColumnDate" width="120" align="center">
+<!--                    <template slot-scope="scope">-->
+<!--                        <label>{{ formatDate(scope.row.check_date)}}</label><br/>-->
+<!--                        <label>{{ scope.row.check_class}}</label>-->
+<!--                    </template>-->
+                </el-table-column>
+            <el-table-column prop="check_main_branch" label="检查单位" align="center"></el-table-column>
+            <el-table-column prop="checktype" label="检查类别" align="center"></el-table-column>
+            <el-table-column prop="ht_community" label="被检单位" align="center"></el-table-column>
+            <el-table-column prop="ht_typesub" label="隐患类别" align="center"></el-table-column>
+            <el-table-column prop="ht_level" label="隐患级别" align="center"></el-table-column>
+            <el-table-column prop="address" label="隐患地点" align="center"></el-table-column>
+            <el-table-column prop="ht_content" label="隐患内容" width="200" align="center">
+                <template slot-scope="scope">
+                    <el-popover trigger="hover" placement="top">
+                        <p>{{ scope.row.ht_content }}</p>
+                        <div slot="reference" class="name-wrapper">{{
+                                scope.row.ht_content != null && scope.row.ht_content.length > 10 ? scope.row.ht_content.substring(0, 8) + "...." : scope.row.ht_content
+                            }}
+                        </div>
+                    </el-popover>
+                </template>
+            </el-table-column>
+            <el-table-column prop="workGroupName" label="发送单位" align="center"></el-table-column>
+            <el-table-column prop="state" label="未自查单位" align="center"></el-table-column>
+        </el-table>
+        </div>
+            <el-table
+                ref="dataTable"
+                v-if="table2"
+                :data="tableData" style="width: 100%"
+                @selection-change="handleSelectionChange">
+            <el-table-column type="selection" width="55" align="center"></el-table-column>
+          <el-table-column prop="check_date" label="检查时间" :formatter="formatColumnDate" width="120" align="center">
+<!--                    <template slot-scope="scope">-->
+<!--                        <label>{{ formatDate(scope.row.check_date)}}</label><br/>-->
+<!--                        <label>{{ scope.row.check_class}}</label>-->
+<!--                    </template>-->
+                </el-table-column>
+            <el-table-column prop="check_main_branch" label="检查单位" align="center"></el-table-column>
+            <el-table-column prop="checktype" label="检查类别" align="center"></el-table-column>
+                <el-table-column prop="ht_community" label="被检单位" align="center"></el-table-column>
+            <el-table-column prop="ht_typesub" label="隐患类别" align="center"></el-table-column>
+            <el-table-column prop="ht_level" label="隐患级别" align="center"></el-table-column>
+            <el-table-column prop="address" label="隐患地点" align="center"></el-table-column>
+            <el-table-column prop="ht_content" label="内容" width="200" align="center"></el-table-column>
+            <el-table-column prop="workGroupName" label="发送单位" align="center"></el-table-column>
+            <el-table-column prop="date" label="自查结果" align="center">
+                <template slot-scope="scope">
+                    <el-button @click="handleClick(scope.row,'不存在')" type="text" size="small">不存在</el-button>
+                    <el-button @click="handleClick(scope.row)" type="text" v-if="listQuery.sendType=='0'" size="small">存在</el-button>
+                    <el-button @click="handleClick(scope.row)" type="text" v-if="listQuery.sendType=='1'" size="small">追查结果</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>
+
+        <!-- 编辑弹窗 -->
+        <el-dialog
+            title="编辑"
+            :visible.sync="dialogVisible"
+            :close-on-click-modal="false"
+            width="40%">
+            <el-form ref="form" :rules="dangerRules" :model="dangerForm" label-width="100px">
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="检查时间" prop="check_date">
+                            <el-date-picker
+                                v-model="dangerForm.check_date"
+                                type="date"
+                                value-format="yyyy-MM-dd"
+                                placeholder="选择日期"
+                                style="width: 100%"
+                            >
+                            </el-date-picker>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="检查类别" prop="checktype">
+                            <el-select v-model="dangerForm.checktype" placeholder="请选择">
+                                <el-option
+                                    v-for="item in JCLBList"
+                                    :key="item.value"
+                                    :label="item.value"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="9" >
+                        <el-form-item label="检查单位" prop="check_main_branch">
+                            <el-input v-model="dangerForm.check_main_branch" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="地点" prop="address">
+                            <el-input v-model="dangerForm.address" rows="3" type="textarea" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="隐患内容" prop="ht_content">
+                            <el-input v-model="dangerForm.ht_content" rows="3" type="textarea" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="9" >
+                        <el-form-item label="隐患类别" prop="ht_typesub">
+                            <el-select v-model="dangerForm.ht_typesub" placeholder="请选择">
+                                <el-option
+                                    v-for="item in YHLBList"
+                                    :key="item.value"
+                                    :label="item.value"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="隐患级别" prop="ht_level">
+                            <el-select v-model="dangerForm.ht_level" placeholder="请选择">
+                                <el-option
+                                    v-for="item in YHJBList"
+                                    :key="item.value"
+                                    :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="22">
+                        <el-form-item style="text-align: center">
+                            <el-button type="primary" class="btns" @click="submitDanger('form')">保存</el-button>
+                            <el-button @click="dialogVisible=false">关闭</el-button>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+            </el-form>
+        </el-dialog>
+
+        <!-- 部门弹窗 -->
+        <el-dialog
+            title="责任单位"
+            :visible.sync="bmDialogVisible"
+            :close-on-click-modal="false"
+            width="40%">
+            <el-form>
+                <el-row>
+                    <el-checkbox style="width: 80px;height: 30px"
+                                 v-for="item in YHBMList"
+                                 v-model="checked"
+                                 :label="item.branch_id"
+                                 :key="item.branch_name">
+                        {{item.branch_name}}
+                    </el-checkbox>
+                </el-row>
+                <el-row>
+                    <el-col :span="22">
+                        <el-form-item style="text-align: center;">
+                            <el-button class="btn" size="small" type="primary" @click="submitForm()">
+                                保存
+                            </el-button>
+                            <el-button size="small" @click="bmDialogVisible = false">关闭</el-button>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+            </el-form>
+        </el-dialog>
+
+        <!-- 不存在弹窗-->
+        <el-dialog :title="selfTitle" :visible.sync="selfInspectVisible" :modal-append-to-body="false" :close-on-click-modal="false" width="600px">
+            <el-form ref="selfInspectForm" :rules="selfInspectFormRules" :model="selfInspectForm" label-position="right" label-width="80px">
+                <el-form-item label="自查人" prop="markUserName">
+                    <el-input v-model="selfInspectForm.markUserName" class="analyseUnit_input"></el-input>
+                </el-form-item>
+                <el-form-item label="自查时间" prop="markDate">
+                    <el-col :span="11">
+                        <el-date-picker type="date" placeholder="选择日期" v-model="selfInspectForm.markDate"
+                                        style="width: 100%;" value-format="yyyy-MM-dd">
+                        </el-date-picker>
+                    </el-col>
+                </el-form-item>
+                <el-form-item label="备注" prop="remark">
+                    <el-input v-model="selfInspectForm.remark" type="textarea" rows="5" class="analyseUnit_input"></el-input>
+                </el-form-item>
+            </el-form>
+            <div  align="center">
+                <el-button type="primary" v-if="listQuery.sendType == '0'" @click="submitSelfInspect()">确认</el-button>
+                <el-button @click="selfInspectVisible = false">关闭</el-button>
+            </div>
+        </el-dialog>
+
+    </div>
+</template>
+<script>
+import { getPageList, edit, del, send, revoke} from "@/api/sgyhpczl/oneFromanotherN"
+import {noExistSave,selfCheckNotInfo} from "@/api/sgyhpczl/oneFromanother"
+import {initJCBM, initYHLX, initJCLB, initYHJB,initYHBM} from "@/api/sgyhpczl/initSelect";
+import {deepClone} from '@/utils'
+
+
+    export default{
+        data(){
+            return{
+                listQuery:{
+                    page:1,
+                    limit:10,
+                    type: 0,
+                    sendType: 0,
+                    form:{},
+                },
+                selfTotal: 0,
+                radio1:'待发送',
+                table1:true,
+                table2:false,
+                currentPage: 1,
+                pageSize: 10,
+                recordTotal: 0,
+                YHBMList: [],
+                bmDialogVisible: false,
+                checked:[],
+                requestData:{},//发送提交参数
+                XFDWList:[],
+                YHLBList:[],
+                YHJBList:[],
+                JCLBList:[],
+                tableData:[],
+                selectedList:[],
+                loading:false,
+                listLoading: false,
+                selfInspectVisible: false,
+                selfInspectForm:{
+                    id: '',
+                    markUserName:'',
+                    markDate:'',
+                    remark:'',
+                },
+                selfTitle: '',
+                selfInspectFormRules:{
+                    markUserName: [{ required: true, message: '自查人不能为空', trigger: 'blur' }],
+                    markDate: [{ required: true, message: '自查时间不能为空', trigger: 'blur' }]
+                },
+                dialogVisible:false,
+                dangerForm:{},
+                dangerRules:{
+                    check_date: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                    check_main_branch: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                    checktype: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                },
+
+
+            }
+        },
+        mounted() {
+            this.getPageList();
+            this.getSelfTotal();
+            this.initYHBM();
+            this.initJCLB();
+            this.initXFDW();
+            this.initYHJB();
+            this.initYHLB();
+        },
+        methods:{
+            addDanger(){
+                this.$router.push({
+                    path:'/addDanger',
+                })
+            },
+            handleClick(data,val){
+                if(val=='不存在'){
+                    this.$nextTick(() =>{
+                        this.$refs["selfInspectForm"].clearValidate()
+                    })
+                    this.selfInspectForm={id:data.id}
+                    this.selfInspectVisible = true
+                    if (this.listQuery.sendType == '1'){
+                        let params = {
+                            id: data.id,
+                            type: 1,
+                        }
+                        selfCheckNotInfo(params).then(res=>{
+                            if (res.data.ok==1){
+                                this.selfInspectForm=res.data.data[0]
+                            } else{
+                                this.$message({type:'error', message:res.data.msg, duration:3000})
+                            }
+                        })
+                    }
+                    return
+                }
+                let puType = '0';
+                this.$router.push({
+                    path:'/existN',
+                    query: {
+                        data: data,
+                        type: puType
+                    }
+                })
+            },
+            //不存在提交
+            submitSelfInspect(){
+                this.$refs["selfInspectForm"].validate((valid) =>{
+                    if (valid){
+                        noExistSave(this.selfInspectForm).then((res)=>{
+                            if (res.data.ok==1) {
+                                this.$message({type:'success', message:"保存成功", duration:3000});
+                                this.selfInspectVisible = false
+                            }else{
+                                this.$message({type:'error', message:res.data.msg, duration:3000})
+                            }
+                        })
+                    }
+                })
+            },
+            handoff(index){
+                if(index==1){
+                    this.table1=false
+                    this.table2=true
+                    this.listQuery.type = 2
+                    this.listQuery.sendType = 0
+                    this.getPageList()
+                }else{
+                    this.listQuery.type = 0
+                    this.getPageList()
+                    this.getSelfTotal();
+                    this.table1=true
+                    this.table2=false
+                }
+            },
+            initYHBM() {
+                initYHBM().then(res => {
+                    if (res.data.ok == 1) {
+                        this.YHBMList = res.data.data
+                    } else {
+                        this.$message({type: 'error', message: res.data.msg, duration: 3000})
+                    }
+                })
+            },
+            initXFDW(){
+                initJCBM(1).then(res=>{
+                    if (res.data.ok==1){
+                        this.XFDWList=res.data.data
+                    } else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            initYHLB(){
+                initYHLX().then(res=>{
+                    if (res.data.ok==1){
+                        this.YHLBList=res.data.data
+                    } else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            initYHJB(){
+                initYHJB().then(res=>{
+                    if (res.data.ok==1){
+                        this.YHJBList=res.data.data
+                    } else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            initJCLB(){
+                initJCLB().then(res=>{
+                    if (res.data.ok==1){
+                        this.JCLBList=res.data.data
+                    } else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            checkTime(){
+                if(this.listQuery.form.check_dateStart!=null && this.listQuery.form.check_dateStart!=''){
+                    if(this.listQuery.form.check_dateEnd!=null && this.listQuery.form.check_dateEnd!=''){
+                    }else {
+                        this.$message({type:'error', message:"请选择检查结束时间", duration:3000})
+                        return
+                    }
+
+                }
+            },
+            //搜索
+            getPageList(){
+                this.listQuery.page=1
+                this.checkTime()
+                this.loading=true
+                getPageList(this.listQuery).then(res=>{
+                    this.loading=false
+                    if (res.data.ok==1) {
+                        this.tableData = res.data.data.items
+                        this.recordTotal=res.data.data.total
+                    }else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            //获取待自查数量
+            getSelfTotal(){
+                if (this.listQuery.type != '2'){
+                    let query = {
+                        page: 1,
+                        sendType: 0,
+                        type: 2,
+                        form:{},
+                    };
+                    getPageList(query).then(res=>{
+                        if (res.data.ok==1) {
+                            this.selfTotal=res.data.data.total
+                        }else{
+                            this.$message({type:'error', message:res.data.msg, duration:3000})
+                        }
+                    })
+                }
+            },
+            //重置
+            reset(){
+                this.listQuery.form={};
+                this.getPageList()
+            },
+            handleSizeChange(val){
+                this.listQuery.limit = val
+                this.getPageListForPagination();
+            },
+            handleCurrentChange(val){
+                this.listQuery.page = val
+                this.getPageListForPagination();
+            },
+            getPageListForPagination(){
+                this.checkTime()
+                getPageList(this.listQuery).then(res=>{
+                    if (res.data.ok==1) {
+                        this.tableData = res.data.data.items
+                        this.recordTotal=res.data.data.total
+                    }else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            typeChange(val){
+                this.listQuery.type = val;
+                this.getPageList()
+            },
+            sendTypeChange(val){
+                this.listQuery.sendType = val;
+                this.getPageList()
+            },
+            handleSelectionChange(val){
+                this.selectedList = []
+                val.forEach((item) => {
+                    this.selectedList.push(item)
+                })
+            },
+            //日期格式转换
+            formatColumnDate(row, column) {
+                // 获取单元格数据
+                let data = row[column.property]
+                if (data == null) {
+                    return null
+                }
+                let dt = new Date(data)
+                return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + ' '
+            },
+            editDanger(row, index) {
+                this.dangerForm = deepClone(row);
+                this.rowIndex = index;
+                this.dialogVisible = true;
+            },
+            //编辑提交
+            submitDanger(formName){
+                this.$refs[formName].validate((valid) => {
+                    if (valid) {
+                        edit(this.dangerForm).then(res=>{
+                            if (res.data.ok==1) {
+                                this.dialogVisible=false
+                                this.$message({type:'success', message:res.data.msg, duration:3000})
+                                this.getPageList()
+                            }else{
+                                this.$message({type:'error', message:res.data.msg, duration:3000})
+                            }
+                        })
+                    } else {
+                        console.log("error submit!!");
+                        return false;
+                    }
+                });
+            },
+            deleteBatch() {
+                if (this.selectedList == null || this.selectedList.length == 0) {
+                    this.$message({type: 'warning', message: '至少选中一条数据', duration: 3000})
+                    return
+                }
+                var ids = this.selectedList.map((obj) => {
+                    return obj.id
+                }).join(",")
+                this.$confirm('确认删除吗', '提示', {
+                    confirmButtonText: '确认',
+                    cancelButtonText: '取消',
+                    type: 'warning'
+                }).then(() => {
+                        del(ids).then(() => {
+                            this.getPageList()
+                            this.$notify({
+                                title: "成功",
+                                message: "删除成功",
+                                type: "success",
+                                duration: 2000,
+                            });
+                        });
+                    })
+                    .catch(error => {
+                    });
+            },
+            deleteDanger(row) {
+                this.$confirm('确认删除吗', '提示', {
+                    confirmButtonText: '确认',
+                    cancelButtonText: '取消',
+                    type: 'warning'
+                }).then(() => {
+                    console.log(row.id)
+                        del(row.id).then(() => {
+                            this.getPageList()
+                            this.$notify({
+                                title: "成功",
+                                message: "删除成功",
+                                type: "success",
+                                duration: 2000,
+                            });
+                        });
+                    }).catch(error => {
+                });
+            },
+            //发送提交
+            submitForm() {
+                if (this.checked.length == 0) {
+                    this.$message({
+                        type: 'warning',
+                        message: '请勾选需要发送的部门!'
+                    });
+                    return;
+                }
+                this.requestData.branchIds = this.checked.join(";");
+                send(this.requestData).then(res => {
+                    if (res.data.ok) {
+                        this.$message({
+                            type: 'success',
+                            message: res.data.msg
+                        });
+                        this.bmDialogVisible = false;
+                        this.getPageList();
+                    } else {
+                        this.$message({
+                            type: 'error',
+                            message: res.data.msg
+                        });
+                    }
+                })
+            },
+            openSend() {
+                if (this.selectedList.length != 1) {
+                    this.$message({
+                        type: 'warning',
+                        message: '请选择一条数据!'
+                    });
+                    return false;
+                } else {
+                    this.requestData.id = this.selectedList[0].id;
+                    this.bmDialogVisible = true;
+                }
+            },
+            tackBack(){
+                if (this.selectedList.length != 1) {
+                    this.$message({
+                        type: 'warning',
+                        message: '请选择一条数据!'
+                    });
+                    return false;
+                }else {
+                    this.$confirm('确认收回吗', '提示', {
+                        confirmButtonText: '确认',
+                        cancelButtonText: '取消',
+                        type: 'warning'
+                    }).then(() => {
+                        let data = {
+                            id: this.selectedList[0].id
+                        }
+                        revoke(data).then(() => {
+                            this.getPageList()
+                            this.$notify({
+                                title: "成功",
+                                message: "收回成功",
+                                type: "success",
+                                duration: 2000,
+                            });
+                        });
+                    }).catch(error => {
+                    });
+                }
+            }
+
+        }
+    }
+</script>
+<style scoped>
+.inquire {
+    display: flex;
+    justify-content: left;
+    flex-wrap: wrap;
+}
+.inquire .el-form-item {
+    padding: 0 46px;
+}
+.title-center {
+    padding: 20px 0;
+}
+
+.btns {
+    background-color: #034ea2;
+    border: 1px solid #034ea2;
+}
+
+.title-center /deep/ .el-radio-button:first-child .el-radio-button__inner {
+    border: none;
+}
+
+.title-center /deep/ .el-radio-button__inner {
+    border: none;
+    border-radius: 0px;
+}
+
+.title-center /deep/ .el-radio-button__orig-radio:checked + .el-radio-button__inner {
+    background-color: #034ea2;
+    background-color: #034ea2;
+}
+</style>
diff --git a/src/views/accidentSearch/oneFromanotherN/addDanger.vue b/src/views/accidentSearch/oneFromanotherN/addDanger.vue
new file mode 100644
index 0000000..8337e8c
--- /dev/null
+++ b/src/views/accidentSearch/oneFromanotherN/addDanger.vue
@@ -0,0 +1,359 @@
+<template>
+  <div class="app-container">
+    <div style="">
+      <Titlename title="录入举一反三页面"></Titlename>
+      <div class="whole-form">
+        <el-form
+          :model="ruleForm"
+          :rules="rules"
+          ref="ruleForm"
+          label-width="150px"
+          class="demo-ruleForm"
+          style="margin: 0 14% 0 16%">
+          <el-row>
+            <el-col :span="9">
+              <el-form-item label="检查时间" prop="check_date">
+                <el-date-picker
+                  v-model="ruleForm.check_date"
+                  type="date"
+                  value-format="yyyy-MM-dd"
+                  placeholder="选择日期"
+                  style="width: 100%">
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+             <el-col :span="9">
+              <el-form-item label="检查类别" prop="checktype">
+                  <el-select v-model="ruleForm.checktype" placeholder="请选择"  style="width: 100%">
+                      <el-option
+                          v-for="item in JCLBList"
+                          :key="item.value"
+                          :label="item.value"
+                          :value="item.value">
+                      </el-option>
+                  </el-select>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="9" >
+              <el-form-item label="检查单位" prop="check_main_branch">
+                  <el-input v-model="ruleForm.check_main_branch" style="width:100%"></el-input>
+<!--                  <el-select v-model="ruleForm.check_main_branch" placeholder="请选择"  @change="changeJCDW"  style="width: 100%">-->
+<!--                      <el-option-->
+<!--                          v-for="item in JCDWList"-->
+<!--                          :key="item.label"-->
+<!--                          :label="item.label"-->
+<!--                          :value="item.label"-->
+<!--                      >-->
+<!--                      </el-option>-->
+<!--                  </el-select>-->
+              </el-form-item>
+            </el-col>
+          </el-row>
+
+
+            <el-row style="margin-bottom: 20px">
+                <el-col :span="9">
+                    <el-button type="primary" class="btns" @click="addDanger()">新增</el-button>
+                </el-col>
+            </el-row>
+
+                <el-table :data="tableData" style="width: 100%">
+                    <el-table-column type="index" width="55" align="center" label="序号"></el-table-column>
+                    <el-table-column prop="address"  align="center" label="隐患地点"></el-table-column>
+                    <el-table-column prop="ht_content"  align="center" label="隐患内容"></el-table-column>
+                    <el-table-column prop="ht_typesub"  align="center" label="隐患类别"></el-table-column>
+                    <el-table-column prop="ht_level"  align="center" label="隐患级别"></el-table-column>
+                    <el-table-column prop="time" label="操作" align="center" width="140">
+                        <template slot-scope="scope">
+                            <div style="display: flex;align-items: center;flex-direction: row;">
+                                <el-button size="mini" @click="editDanger(scope.row, scope.$index)">
+                                    编辑
+                                </el-button>
+                                <el-button size="mini" @click="deleteDanger(scope.row, scope.$index)">
+                                    删除
+                                </el-button>
+                            </div>
+                        </template>
+                    </el-table-column>
+                </el-table>
+          <el-row style="margin-top: 20px">
+            <el-col :span="22">
+              <el-form-item style="text-align: center">
+                <el-button type="primary" class="btns" @click="submitForm('ruleForm')">
+                    保存
+                </el-button>
+                <el-button @click="closeShow">关闭</el-button>
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-form>
+      </div>
+    </div>
+
+      <el-dialog
+          :title="title"
+          :visible.sync="dialogVisible"
+          :close-on-click-modal="false"
+          width="40%">
+          <el-form ref="form" :rules="dangerRules" :model="dangerForm" label-width="100px">
+              <el-row>
+                  <el-col :span="9">
+                      <el-form-item label="隐患地点" prop="address">
+                          <el-input v-model="dangerForm.address" rows="3" type="textarea" class="multiline"></el-input>
+                      </el-form-item>
+                  </el-col>
+                  <el-col :span="9" :offset="4">
+                      <el-form-item label="隐患内容" prop="ht_content">
+                          <el-input v-model="dangerForm.ht_content" rows="3" type="textarea" class="multiline"></el-input>
+                      </el-form-item>
+                  </el-col>
+              </el-row>
+              <el-row>
+
+                 <el-col :span="9">
+                      <el-form-item label="隐患类别" prop="ht_typesub">
+                          <el-select v-model="dangerForm.ht_typesub" placeholder="请选择">
+                              <el-option
+                                  v-for="item in YHLXList"
+                                  :key="item.value"
+                                  :label="item.value"
+                                  :value="item.value">
+                              </el-option>
+                          </el-select>
+                      </el-form-item>
+                  </el-col>
+                  <el-col :span="9" :offset="4">
+                      <el-form-item label="隐患级别" prop="ht_level">
+                          <el-select v-model="dangerForm.ht_level" placeholder="请选择">
+                              <el-option
+                                  v-for="item in YHJBList"
+                                  :key="item.value"
+                                  :label="item.label"
+                                  :value="item.value">
+                              </el-option>
+                          </el-select>
+                      </el-form-item>
+                  </el-col>
+              </el-row>
+              <el-row>
+                  <el-col :span="22">
+                      <el-form-item style="text-align: center">
+                          <el-button type="primary" class="btns" @click="submitDanger('form')">
+                              保存
+                          </el-button>
+                          <el-button @click="dialogVisible=false">关闭</el-button>
+                      </el-form-item>
+                  </el-col>
+              </el-row>
+          </el-form>
+      </el-dialog>
+
+  </div>
+</template>
+
+<script>
+import Titlename from "../../../components/Titlename/index.vue";
+
+import {initJCBM ,initYHLX,initJCLB,initYHJB,initReformStatus} from "@/api/sgyhpczl/initSelect";
+import {saveDanger,initDangerRebound,getDangerInfo,editDanger} from '@/api/sgyhpczl/hiddenDangerRegistration'
+import { save } from '@/api/sgyhpczl/oneFromanotherN'
+
+import {deepClone} from '@/utils'
+
+export default {
+  components: { Titlename },
+  name: "hiddenDangerList",
+  data() {
+    return {
+        id:'',
+        rowIndex:-1,
+        dangerList:[],
+        dangerForm:{},
+        dangerRules:{
+            address: [{ required: true, message: '不能为空', trigger: 'blur' },],
+            ht_content: [{ required: true, message: '不能为空', trigger: 'blur' },],
+            ht_typesub: [{ required: true, message: '不能为空', trigger: 'blur' },],
+            ht_level: [{ required: true, message: '不能为空', trigger: 'blur' },],
+        },
+        title:'新增',
+        dialogVisible:false,
+        JCLBList:[],
+        YHLXList:[],
+        YHJBList:[],
+        ruleForm: {},
+        rules: {
+           check_date: [{ required: true, message: '不能为空', trigger: 'blur' },],
+           check_main_branch: [{ required: true, message: '不能为空', trigger: 'change' },],
+           checktype: [{ required: true, message: '不能为空', trigger: 'blur' },],
+        },
+        tableData: [],
+    };
+  },
+    mounted(){
+        this.initJCLB()
+        this.initYHJB()
+        this.initYHLX()
+    },
+  methods: {
+      submitDanger(formName){
+          this.$refs[formName].validate((valid) => {
+              if (valid) {
+                  if(this.title=='新增'){
+                      this.tableData.push(this.dangerForm)
+                  }else {
+                      var arr = this.tableData;
+                      arr.splice(this.rowIndex, 1, this.dangerForm);
+                      this.tableData = arr;
+                  }
+                  this.dialogVisible=false
+
+              } else {
+                  console.log("error submit!!");
+                  return false;
+              }
+          });
+      },
+      deleteDanger(row, index) {
+          this.$confirm('确认删除吗', '提示', {
+              confirmButtonText: '确认',
+              cancelButtonText: '取消',
+              type: 'warning'
+          })
+              .then(() => {
+                  var arr = deepClone(this.tableData);
+                  var brr = [];
+                  for (var i = 0; i < arr.length; i++) {
+                      if (i == index) {
+                      } else {
+                          brr.push(arr[i]);
+                      }
+                  }
+                  this.tableData = deepClone(brr);
+                  //this.tableData.splice(index)
+
+              })
+              .catch(error => {
+              });
+
+
+      },
+      editDanger(row, index) {
+          this.dangerForm = deepClone(row);
+          this.rowIndex = index;
+          this.dialogVisible = true;
+          this.title = '编辑';
+      },
+
+      addDanger(){
+          this.dangerForm={}
+          this.title="新增"
+          this.dialogVisible=true
+      },
+      changeWxy(e){
+          for(var i=0;i<this.dangerList.length;i++){
+              if(e==this.dangerList[i].id){
+                  this.dangerForm.DTRisk_level=this.dangerList[i].mriskLevel
+                  this.dangerForm.dangerousSource=this.dangerList[i].mriskPoint
+              }
+          }
+      },
+      initReformStatus(){
+          initReformStatus().then(res=>{
+              if (res.data.ok==1){
+                  this.statusList=res.data.data
+              } else{
+                  this.$message({type:'error', message:res.data.msg, duration:3000})
+              }
+          })
+      },
+      changeJCDW(val){
+          initJCBM(val).then(res=>{
+              if (res.data.ok==1){
+                  this.JCBMList=res.data.data
+              } else{
+                  this.$message({type:'error', message:res.data.msg, duration:3000})
+              }
+          })
+      },
+      initYHLX(){
+          initYHLX().then(res=>{
+              if (res.data.ok==1){
+                  this.YHLXList=res.data.data
+              } else{
+                  this.$message({type:'error', message:res.data.msg, duration:3000})
+              }
+          })
+      },
+      initYHJB(){
+          initYHJB().then(res=>{
+              if (res.data.ok==1){
+                  this.YHJBList=res.data.data
+              } else{
+                  this.$message({type:'error', message:res.data.msg, duration:3000})
+              }
+          })
+      },
+      initJCLB(){
+          initJCLB().then(res=>{
+              if (res.data.ok==1){
+                  this.JCLBList=res.data.data
+              } else{
+                  this.$message({type:'error', message:res.data.msg, duration:3000})
+              }
+          })
+      },
+
+      closeShow(){
+          this.$router.push({
+              path:"/oneFromanotherN"
+          })
+      },
+    submitForm(formName) {
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+            if(this.tableData==null || this.tableData.length==0){
+                this.$message({type:'error', message:"请添加隐患", duration:2000})
+            }
+            this.ruleForm.items=this.tableData
+            save(this.ruleForm).then(res=>{
+                if (res.data.ok==1){
+                    this.$message({type:'success', message:"新增成功", duration:3000})
+                    this.$router.push({
+                        path:"/oneFromanotherN"
+                    })
+                }else {
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+
+        } else {
+          console.log("error submit!!");
+          return false;
+        }
+      });
+    },
+  },
+};
+</script>
+
+<style scoped>
+.app-container {
+  padding: 20px;
+  height: 850px;
+  overflow-y: auto;
+}
+
+.app-container /deep/ .box {
+  padding-top: 0;
+}
+
+/* /deep/ .multiline .el-input__inner {
+  height: 62px;
+} */
+ .btns{
+        background-color: #034ea2;
+        border: 1px solid #034ea2;
+    }
+</style>
diff --git a/src/views/accidentSearch/oneFromanotherN/existN.vue b/src/views/accidentSearch/oneFromanotherN/existN.vue
new file mode 100644
index 0000000..028d77e
--- /dev/null
+++ b/src/views/accidentSearch/oneFromanotherN/existN.vue
@@ -0,0 +1,765 @@
+<template>
+    <div class="app-container" >
+        <div v-if="type=='0'" style="">
+            <Titlename title="录入隐患单页面"></Titlename>
+            <div class="whole-form">
+                <el-form
+                    :model="ruleForm"
+                    :rules="rules"
+                    ref="ruleForm"
+                    label-width="150px"
+                    class="demo-ruleForm"
+                    style="margin: 0 14% 0 16%"
+                >
+                    <el-row>
+                        <el-col :span="9">
+                            <el-form-item label="检查时间" prop="check_date">
+                                <el-date-picker
+                                    v-model="ruleForm.check_date"
+                                    type="date"
+                                    value-format="yyyy-MM-dd"
+                                    placeholder="选择日期"
+                                    style="width: 100%"
+                                >
+                                </el-date-picker>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="9" :offset="4">
+                            <el-form-item label="班次" prop="check_class">
+                                <el-select v-model="ruleForm.check_class" placeholder="请选择"  style="width: 100%">
+                                    <el-option
+                                        v-for="item in BCList"
+                                        :key="item.value"
+                                        :label="item.value"
+                                        :value="item.value">
+                                    </el-option>
+                                </el-select>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="9">
+                            <el-form-item label="检查类别" prop="checktype">
+                                <el-select v-model="ruleForm.checktype" placeholder="请选择"  style="width: 100%">
+                                    <el-option
+                                        v-for="item in JCLBList"
+                                        :key="item.value"
+                                        :label="item.value"
+                                        :value="item.value">
+                                    </el-option>
+                                </el-select>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="9" :offset="4">
+                            <el-form-item label="检查单位" prop="check_main_branch">
+                                <el-select v-model="ruleForm.check_main_branch" placeholder="请选择"  @change="changeJCDW"  style="width: 100%">
+                                    <el-option
+                                        v-for="item in JCDWList"
+                                        :key="item.label"
+                                        :label="item.label"
+                                        :value="item.label"
+                                    >
+                                    </el-option>
+                                </el-select>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="9">
+                            <el-form-item label="检查部门" prop="check_branch">
+                                <el-select v-model="ruleForm.check_branch" placeholder="请选择" style="width: 100%">
+                                    <el-option
+                                        v-for="item in JCBMList"
+                                        :key="item.value"
+                                        :label="item.value"
+                                        :value="item.value">
+                                    </el-option>
+                                </el-select>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="9" :offset="4">
+
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="9">
+                            <el-form-item label="检查人员" prop="check_man">
+                                <el-input v-model="ruleForm.check_man"></el-input>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="9" :offset="4">
+                            <el-form-item label="陪检人员" prop="acc_man">
+                                <el-input v-model="ruleForm.acc_man"></el-input>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="22">
+                            <el-form-item label="行走路线">
+                                <el-input v-model="ruleForm.route" rows="3" type="textarea" class="multiline"></el-input>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+
+                    <el-row style="margin-bottom: 20px">
+                        <el-col :span="9">
+                            <el-button type="primary" class="btns" @click="addDanger">新增隐患</el-button>
+                        </el-col>
+                    </el-row>
+
+                    <el-table :data="tableData" style="width: 100%">
+                        <el-table-column type="index" width="55" align="center" label="序号"></el-table-column>
+                        <el-table-column prop="ht_branch"  align="center" label="隐患部门"></el-table-column>
+                        <el-table-column prop="address"  align="center" label="地点"></el-table-column>
+                        <el-table-column prop="ht_content" align="center" label="隐患内容">
+                            <template slot-scope="scope">
+                                <el-popover trigger="hover" placement="top">
+                                    <p>{{ scope.row.ht_content }}</p>
+                                    <div slot="reference" class="name-wrapper">{{
+                                            scope.row.ht_content != null && scope.row.ht_content.length > 10 ? scope.row.ht_content.substring(0, 8) + "...." : scope.row.ht_content
+                                        }}
+                                    </div>
+                                </el-popover>
+                            </template>
+                        </el-table-column>
+                        <el-table-column prop="measure"  align="center" label="整改措施"></el-table-column>
+                        <el-table-column prop="ht_typesub"  align="center" label="隐患类别"></el-table-column>
+                        <el-table-column prop="dangerousSource"  align="center" label="关联危险源"></el-table-column>
+                        <el-table-column prop="DTRisk_level"  align="center" label="风险等级"></el-table-column>
+                        <el-table-column prop="ht_level"  align="center" label="隐患级别"></el-table-column>
+                        <el-table-column prop="alter_time"  align="center" label="限改时间"></el-table-column>
+                        <el-table-column prop="duty_officer"  align="center" label="责任人"></el-table-column>
+                        <el-table-column prop="alter_status"  align="center" label="整改情况"></el-table-column>
+                        <el-table-column prop="Review"  align="center" label="业务科室"></el-table-column>
+                        <el-table-column prop="time" label="操作" align="center" width="140">
+                            <template slot-scope="scope">
+                                <div style="display: flex;align-items: center;flex-direction: row;">
+                                    <el-button
+                                        size="mini"
+                                        @click="editDanger(scope.row, scope.$index)"
+                                    >编辑
+                                    </el-button>
+                                    <el-button
+                                        size="mini"
+                                        @click="deleteDanger(scope.row, scope.$index)"
+                                    >删除
+                                    </el-button>
+                                </div>
+                            </template>
+                        </el-table-column>
+                    </el-table>
+
+
+                    <el-row style="margin-top: 20px">
+                        <el-col :span="22">
+                            <el-form-item style="text-align: center">
+                                <el-button type="primary" class="btns" @click="submitForm('ruleForm')"
+                                >保存</el-button
+                                >
+                                <el-button @click="returnIndex">关闭</el-button>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                </el-form>
+            </div>
+        </div>
+        <div v-else>
+            <el-table :data="detailTableData" style="width: 100%" >
+                <el-table-column type="selection" width="55" align="center"></el-table-column>
+                <el-table-column prop="number" label="编号" align="center" width="120"></el-table-column>
+                <el-table-column prop="check_branch" label="检查部门" align="center" width="120"></el-table-column>
+                <el-table-column prop="check_man" label="检查人" align="center" width="120"></el-table-column>
+                <el-table-column prop="checktype" label="检查类别" align="center"></el-table-column>
+                <el-table-column label="隐患项目" align="center">
+                    <el-table-column prop="check_date" label="检查时间" width="120" align="center"></el-table-column>
+                    <el-table-column prop="address" label="地点" align="center"> </el-table-column>
+                    <el-table-column prop="ht_content" label="内容" align="center"> </el-table-column>
+                    <el-table-column prop="ht_typesub" label="类别" align="center"> </el-table-column>
+                    <el-table-column prop="ht_level" label="级别" align="center"> </el-table-column>
+                </el-table-column>
+                <el-table-column label="整改计划" align="center">
+                    <el-table-column prop="measure" label="整改措施" align="center"> </el-table-column>
+                    <el-table-column prop="ht_branch" label="隐患部门" align="center"> </el-table-column>
+                    <el-table-column prop="duty_officer" label="责任人" align="center"> </el-table-column>
+                    <el-table-column prop="alter_time" label="限改时间" width="120" align="center"></el-table-column>
+                    <el-table-column prop="ht_level" label="级别" align="center"> </el-table-column>
+                </el-table-column>
+                <el-table-column label="整改情况" align="center">
+                    <el-table-column prop="ACCOMPLISHTIME" label="完成时间" width="110px" align="center"> </el-table-column>
+                    <el-table-column prop="CALLBACKRESULT" label="复查结果" align="center"> </el-table-column>
+                    <el-table-column prop="CALLBACKPERSON" label="复查人" align="center"> </el-table-column>
+                    <el-table-column prop="CALLBACKTIME" label="复查时间"  width="120" align="center"></el-table-column>
+                </el-table-column>
+                <el-table-column  label="隐患处理状态" align="center">
+                    <template slot-scope="scope">
+                        <span v-if="scope.row.step =='1'">初始状态</span>
+                        <span v-if="scope.row.step =='2'">整改中</span>
+                        <span v-if="scope.row.step =='3'">复查中</span>
+                        <span v-if="scope.row.step =='end'">处理结束</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="DTRisk_bankId" label="是否关联" align="center">
+                    <template slot-scope="scope">
+                        <span v-if="scope.row.DTRisk_bankId==0 || scope.row.DTRisk_bankId=='' || scope.row.DTRisk_bankId==null">未关联</span>
+                        <span v-else>已关联</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="DTRisk_level" label="风险等级" align="center"> </el-table-column>
+                <el-table-column prop="warningLevel" label="初始警情" align="center"> </el-table-column>
+                <el-table-column prop="curWarningLevel" label="当前警情" align="center"> </el-table-column>
+            </el-table>
+
+            <el-button style="margin-top: 20px" @click="returnIndex">关闭</el-button>
+        </div>
+        <el-dialog
+            :title="title"
+            :visible.sync="dialogVisible"
+            :close-on-click-modal="false"
+            width="40%">
+            <el-form ref="form" :rules="dangerRules" :model="dangerForm" label-width="100px">
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="隐患部门" prop="ht_branch">
+                            <el-select v-model="dangerForm.ht_branch" placeholder="请选择">
+                                <el-option
+                                    v-for="item in YHBMList"
+                                    :key="item.branch_id"
+                                    :label="item.branch_name"
+                                    :value="item.branch_name">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="地点" prop="address">
+                            <el-input v-model="dangerForm.address" rows="3" type="textarea" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="隐患内容" prop="ht_content">
+                            <el-input v-model="dangerForm.ht_content" rows="3" type="textarea" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="整改措施" prop="measure">
+                            <el-input v-model="dangerForm.measure" rows="3" type="textarea" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="隐患类别" prop="ht_typesub">
+                            <el-select v-model="dangerForm.ht_typesub" placeholder="请选择">
+                                <el-option
+                                    v-for="item in YHLXList"
+                                    :key="item.value"
+                                    :label="item.value"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="关联危险源" prop="DTRisk_bankId">
+                            <el-select v-model="dangerForm.DTRisk_bankId" placeholder="请选择" @change="changeWxy" filterable>
+                                <el-option
+                                    v-for="item in dangerList"
+                                    :key="item.id"
+                                    :label="item.mriskPoint"
+                                    :value="item.id">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="风险等级" prop="DTRisk_level">
+                            <el-input v-model="dangerForm.DTRisk_level" :disabled="true"></el-input>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="隐患级别" prop="ht_level">
+                            <el-select v-model="dangerForm.ht_level" placeholder="请选择">
+                                <el-option
+                                    v-for="item in YHJBList"
+                                    :key="item.value"
+                                    :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="限改时间" prop="alter_time">
+                            <el-date-picker
+                                v-model="dangerForm.alter_time"
+                                type="date"
+                                value-format="yyyy-MM-dd"
+                                placeholder="选择日期"
+                                style="width: 100%"
+                            >
+                            </el-date-picker>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="责任人" prop="duty_officer">
+                            <el-input v-model="dangerForm.duty_officer"></el-input>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="整改情况" prop="alter_status">
+                            <el-select v-model="dangerForm.alter_status" placeholder="请选择">
+                                <el-option
+                                    v-for="item in statusList"
+                                    :key="item.value"
+                                    :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="业务科室" prop="Review">
+                            <el-select v-model="dangerForm.Review" style="width: 100%">
+                                <el-option
+                                    v-for="item in YWKSList"
+                                    :key="item.value"
+                                    :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row v-if="dangerForm.alter_status=='重复反弹隐患'">
+                    <el-col :span="9">
+                        <el-form-item label="重复反弹隐患" prop="repeatId">
+                            <el-select v-model="dangerForm.repeatId" placeholder="请选择">
+                                <el-option
+                                    v-for="item in reboundList"
+                                    :key="item.id"
+                                    :label="item.content"
+                                    :value="item.id">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="22">
+                        <el-form-item style="text-align: center">
+                            <el-button type="primary" class="btns" @click="submitDanger('form')"
+                            >保存</el-button
+                            >
+                            <el-button @click="dialogVisible=false">关闭</el-button>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+            </el-form>
+        </el-dialog>
+    </div>
+
+
+</template>
+
+<script>
+import Titlename from "../../../components/Titlename/index.vue";
+
+import {
+    initBC,
+    initJCBM,
+    initJCLB,
+    initLlr,
+    initReformStatus,
+    initWxy,
+    initYHBM,
+    initYHJB,
+    initYHLX,
+    initYwks
+} from "@/api/sgyhpczl/initSelect";
+import {getPageList,initDangerRebound,saveDanger} from '@/api/sgyhpczl/hiddenDangerRegistration'
+import {deepClone} from '@/utils'
+
+export default {
+    components: { Titlename },
+    name: "hiddenDangerList",
+    data() {
+        return {
+            type: '0',
+            id:'',
+            rowIndex:-1,
+            dangerList:[],
+            dangerForm:{},
+            dangerRules:{
+                ht_branch: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                address: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                ht_content: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                ht_typesub: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                measure: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                DTRisk_bankId: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                ht_level: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                alter_time: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                alter_status: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                Review: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                duty_officer:[{ required: true, message: '不能为空', trigger: 'blur' },]
+            },
+            title:'新增',
+            dialogVisible:false,
+            BCList:[],
+            JCLBList:[],
+            JCDWList:[{label:"众泰煤焦化",value:0},{label:"上级单位",value:1}],
+            YHBMList:[],
+            YHLXList:[],
+            YHJBList:[],
+            JCBMList:[],
+            llrList:[],
+            statusList:[],
+            YWKSList:[],
+            reboundList:[],
+            ruleForm: {},
+            rules: {
+                check_date: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                check_class: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                check_main_branch: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                check_branch: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                check_man: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                checktype: [{ required: true, message: '不能为空', trigger: 'blur' },],
+            },
+            tableData: [],
+            paramsData: {},//上个页面参数
+            listQuery:{
+                page:1,
+                limit:10,
+                form:{},
+            },
+            currentPage: 1,
+            pageSize: 10,
+            recordTotal: 0,
+            detailTableData:[],//隐患详情列表
+            beforeData:{}, //上个页面信息
+            beforeFlag:true,//上个页面信息保存标志
+        };
+    },
+
+    mounted(){
+        this.initBC()
+        this.initJCLB()
+        this.initYHJB()
+        this.initYHLX()
+        //this.initLlr()
+        this.initReformStatus()
+        this.initYHBM()
+        this.initYWKS()
+        this.initWXY()
+        this.initDangerRebound()
+        this.type = this.$route.query.type;
+        if (this.type === '0'){
+            this.initInfo(this.$route.query.data);
+        }else {
+            this.listQuery.form.jyfsId = this.$route.query.data.id
+            this.getPageList();
+        }
+    },
+    methods: {
+        initInfo(data){
+            this.paramsData = this.$route.query.data;
+            this.ruleForm.jyfsId = data.id;
+            this.dangerForm.address = data.address;
+            this.dangerForm.ht_content = data.ht_content;
+            // this.tableData[0] = {
+            //     address: data.address,
+            //     ht_content: data.ht_content,
+            //     ht_level: data.ht_level,
+            // };
+        },
+
+        // async initInfo(){
+        //     var res=await getDangerInfo(this.id)
+        //     if (res.data.ok==1){
+        //         this.ruleForm=res.data.data
+        //         this.changeJCDW(res.data.data.check_main_branch)
+        //         var obj=deepClone(res.data.data)
+        //         this.tableData.push(obj)
+        //     }
+        // },
+        initDangerRebound(){
+            initDangerRebound().then(res=>{
+                if (res.data.ok==1){
+                    this.reboundList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        submitDanger(formName){
+            this.$refs[formName].validate((valid) => {
+                if (valid) {
+                    if(this.title=='新增'){
+                        this.beforeFlag = false;
+                        this.tableData.push(this.dangerForm)
+                        console.log(this.tableData)
+                    }else {
+                        var arr = this.tableData;
+                        arr.splice(this.rowIndex, 1, this.dangerForm);
+                        this.tableData = arr;
+                    }
+                    this.dialogVisible=false
+
+                } else {
+                    console.log("error submit!!");
+                    return false;
+                }
+            });
+        },
+        getPageList(){
+            this.listQuery.page=1
+            getPageList(this.listQuery).then(res=>{
+                if (res.data.ok==1) {
+                    this.detailTableData = res.data.data.items
+                    this.recordTotal=res.data.data.total
+                }else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        deleteDanger(row, index) {
+            this.$confirm('确认删除吗', '提示', {
+                confirmButtonText: '确认',
+                cancelButtonText: '取消',
+                type: 'warning'
+            })
+                .then(() => {
+                    var arr = deepClone(this.tableData);
+                    var brr = [];
+                    for (var i = 0; i < arr.length; i++) {
+                        if (i == index) {
+                        } else {
+                            brr.push(arr[i]);
+                        }
+                    }
+                    this.tableData = deepClone(brr);
+                    //this.tableData.splice(index)
+
+                })
+                .catch(error => {
+                });
+
+
+        },
+        editDanger(row, index) {
+            this.dangerForm = deepClone(row);
+            this.rowIndex = index;
+            this.dialogVisible = true;
+            this.title = '编辑';
+        },
+
+        addDanger(){
+            if (!this.beforeFlag){
+                this.dangerForm={}
+            }
+            this.title="新增"
+            this.dialogVisible=true
+        },
+        changeWxy(e){
+            for(var i=0;i<this.dangerList.length;i++){
+                if(e==this.dangerList[i].id){
+                    this.dangerForm.DTRisk_level=this.dangerList[i].mriskLevel
+                    this.dangerForm.dangerousSource=this.dangerList[i].mriskPoint
+                }
+            }
+        },
+        initWXY(){
+            var param={
+                page: 1,
+                limit: 1000
+            }
+            initWxy(param).then(res=>{
+                if (res.data.ok==1){
+                    this.dangerList=res.data.data.items
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initYWKS(){
+            initYwks().then(res=>{
+                if (res.data.ok==1){
+                    this.YWKSList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initYHBM(){
+            initYHBM().then(res=>{
+                if (res.data.ok==1){
+                    this.YHBMList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initLlr(){
+            initLlr().then(res=>{
+                if (res.data.ok==1){
+                    this.llrList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initReformStatus(){
+            initReformStatus().then(res=>{
+                if (res.data.ok==1){
+                    this.statusList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        changeJCDW(val){
+            initJCBM(val).then(res=>{
+                if (res.data.ok==1){
+                    this.JCBMList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initYHLX(){
+            initYHLX().then(res=>{
+                if (res.data.ok==1){
+                    this.YHLXList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initYHJB(){
+            initYHJB().then(res=>{
+                if (res.data.ok==1){
+                    this.YHJBList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initBC(){
+            initBC().then(res=>{
+                if (res.data.ok==1){
+                    this.BCList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+        initJCLB(){
+            initJCLB().then(res=>{
+                if (res.data.ok==1){
+                    this.JCLBList=res.data.data
+                } else{
+                    this.$message({type:'error', message:res.data.msg, duration:3000})
+                }
+            })
+        },
+
+
+        returnIndex(){
+            this.$router.push({
+                path:"/oneFromanotherN"
+            })
+        },
+        judge(obj){
+            console.log(obj)
+            if (obj != null || ('ht_branch' in obj) || ('address' in obj) || ('ht_typesub' in obj) || ('dangerousSource' in obj)
+                || ('alter_time' in obj) || ('duty_officer' in obj) || ('alter_status' in obj) || ('Review' in obj) || ('DTRisk_bankId' in  obj)){
+                return true;
+            }else {
+                return false;
+            }
+        },
+        submitForm(formName) {
+            this.$refs[formName].validate((valid) => {
+                if (valid) {
+                    this.ruleForm.items=this.tableData
+                    // if(this.addShow){
+                    console.log(this.ruleForm)
+                    saveDanger(this.ruleForm).then(res=>{
+                        if (res.data.ok==1){
+                            this.$message({type:'success', message:"保存成功", duration:3000})
+                            this.$router.push({
+                                path:"/oneFromanotherN"
+                            })
+                        }else {
+                            this.$message({type:'error', message:res.data.msg, duration:3000})
+                        }
+                    })
+                    // }else {
+                    //     var param=deepClone(this.ruleForm)
+                    //     var obj=deepClone(this.tableData[0])
+                    //     param.ht_branch=obj.ht_branch
+                    //     param.address=obj.address
+                    //     param.ht_content=obj.ht_content
+                    //     param.measure=obj.measure
+                    //     param.ht_typesub=obj.ht_typesub
+                    //     param.DTRisk_bankId=obj.DTRisk_bankId
+                    //     param.DTRisk_level=obj.mriskLevel
+                    //     param.dangerousSource=obj.mriskPoint
+                    //     param.ht_level=obj.ht_level
+                    //     param.alter_time=obj.alter_time
+                    //     param.duty_officer=obj.duty_officer
+                    //     param.alter_status=obj.alter_status
+                    //     param.Review=obj.Review
+                    //     param.repeatId=obj.repeatId
+                    //     editDanger(param).then(res=>{
+                    //         if (res.data.ok==1){
+                    //             this.$message({type:'success', message:"编辑成功", duration:3000})
+                    //             this.$router.push({
+                    //                 path:"/hiddenDangerRegistration"
+                    //             })
+                    //         }else {
+                    //             this.$message({type:'error', message:res.data.msg, duration:3000})
+                    //         }
+                    //     })
+                    // }
+
+
+
+                } else {
+                    console.log("error submit!!");
+                    return false;
+                }
+            });
+        },
+    },
+};
+</script>
+
+<style scoped>
+.app-container {
+    padding: 20px;
+    height: 850px;
+    overflow-y: auto;
+}
+
+.app-container /deep/ .box {
+    padding-top: 0;
+}
+
+/* /deep/ .multiline .el-input__inner {
+  height: 62px;
+} */
+.btns{
+    background-color: #034ea2;
+    border: 1px solid #034ea2;
+}
+</style>
diff --git a/src/views/accidentSearch/oneFromanotherN/index.vue b/src/views/accidentSearch/oneFromanotherN/index.vue
new file mode 100644
index 0000000..1e454d1
--- /dev/null
+++ b/src/views/accidentSearch/oneFromanotherN/index.vue
@@ -0,0 +1,794 @@
+<template>
+    <div class="app-container">
+            <el-form ref="form" :inline="true" class="inquire" :model="listQuery.form" label-width="80px">
+            <el-form-item label="隐患单位">
+                <el-input v-model="listQuery.form.check_main_branch" style="width:202px"></el-input>
+<!--                <el-select v-model="listQuery.form.check_main_branch" placeholder="请选择">-->
+<!--                    <el-option-->
+<!--                        v-for="item in XFDWList"-->
+<!--                        :key="item.value"-->
+<!--                        :label="item.value"-->
+<!--                        :value="item.value">-->
+<!--                    </el-option>-->
+<!--                </el-select>-->
+            </el-form-item>
+            <el-form-item label="检查类别">
+                <el-select v-model="listQuery.form.checktype" placeholder="请选择">
+                    <el-option
+                        v-for="item in JCLBList"
+                        :key="item.value"
+                        :label="item.value"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="被检单位">
+                <el-input v-model="listQuery.form.ht_community" style="width:202px"></el-input>
+            </el-form-item>
+            <el-form-item label="隐患级别">
+                <el-select v-model="listQuery.form.ht_level" placeholder="请选择">
+                    <el-option
+                        v-for="item in YHJBList"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="隐患类别">
+                <el-select v-model="listQuery.form.ht_typesub" placeholder="请选择">
+                    <el-option
+                        v-for="item in YHLBList"
+                        :key="item.value"
+                        :label="item.value"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="隐患地点">
+                <el-input v-model="listQuery.form.address" style="width:202px" placeholder="请输入内容"></el-input>
+            </el-form-item>
+            <el-form-item label="隐患内容">
+                <el-input v-model="listQuery.form.ht_content" style="width:202px" placeholder="请输入内容"></el-input>
+            </el-form-item>
+            <el-form-item label="发送单位" v-if="listQuery.type=='1'">
+                <el-input  v-model="listQuery.form.workGroupName" style="width:202px" placeholder="请输入内容"></el-input>
+            </el-form-item>
+            <el-form-item label="检查时间">
+                <el-col :span="11">
+                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateStart"
+                                    style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker>
+                </el-col>
+                <el-col style="text-align:center" :span="2">-</el-col>
+                <el-col :span="11">
+                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateEnd"
+                                    style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker>
+                </el-col>
+            </el-form-item>
+            <el-form-item style="text-align:center;padding:0 50px">
+                <el-button type="primary" class="btns" size="small" icon="el-icon-search" @click="getPageList()">查询
+                </el-button>
+                <el-button type="primary" class="btns" size="small" @click="reset()">重置</el-button>
+            </el-form-item>
+        </el-form>
+     <el-row class="title-center">
+            <el-col :span="10">
+                <el-radio-group v-if="table1" v-model="listQuery.type" @change="typeChange">
+                    <el-radio-button label="0">待发送</el-radio-button>
+                    <el-radio-button label="1">已发送</el-radio-button>
+                </el-radio-group>
+                <el-radio-group v-if="table2" v-model="listQuery.sendType" @change="sendTypeChange">
+                    <el-radio-button label="0">待自查</el-radio-button>
+                    <el-radio-button label="1">已自查</el-radio-button>
+                </el-radio-group>
+          <el-button class="btns" type="primary" size="small" v-if="table1" @click="handoff(1)">进入自查({{selfTotal}})</el-button>
+          <el-button class="btns" type="primary" size="small" v-if="table2" @click="handoff(2)">返回填写</el-button>
+            </el-col>
+            <div v-if="table1">
+            <el-col :span="14" style="text-align:right;" v-if="listQuery.type==0">
+                <el-button class="btns" type="primary" size="small" icon="el-icon-upload2" @click="openSend()">发送</el-button>
+                <el-button class="btns" type="primary" size="small" icon="el-icon-plus" @click="addDanger()">添加</el-button>
+                <el-button size="small" @click="deleteBatch()" >批量删除</el-button>
+            </el-col>
+             <el-col :span="14" style="text-align:right;" v-if="listQuery.type==1">
+                <el-button class="btns" type="primary" size="small" @click="tackBack()">收回</el-button>
+            </el-col>
+            </div>
+        </el-row>
+        <div v-if="table1">
+         <el-table ref="dataTable"
+                   v-if="listQuery.type==0"
+                   v-loading="loading"
+                   :data="tableData"
+                   style="width: 100%"
+                   @selection-change="handleSelectionChange">
+             <el-table-column type="selection" width="55" align="center"></el-table-column>
+          <el-table-column prop="check_date" label="检查时间" :formatter="formatColumnDate"  width="120" align="center">
+<!--                    <template slot-scope="scope">-->
+<!--                        <label>{{ formatDate(scope.row.check_date)}}</label><br/>-->
+<!--                        <label>{{ scope.row.check_class}}</label>-->
+<!--                    </template>-->
+                </el-table-column>
+            <el-table-column prop="check_main_branch" label="检查单位" align="center"></el-table-column>
+            <el-table-column prop="checktype" label="检查类别" align="center"></el-table-column>
+                <!-- <el-table-column prop="measure" label="被检单位" align="center"></el-table-column> -->
+            <el-table-column prop="ht_typesub" label="隐患类别" align="center"></el-table-column>
+            <el-table-column prop="ht_level" label="隐患级别" align="center"></el-table-column>
+            <el-table-column prop="address" label="隐患地点" align="center"></el-table-column>
+            <el-table-column prop="ht_content" label="隐患内容" width="200" align="center">
+                <template slot-scope="scope">
+                    <el-popover trigger="hover" placement="top">
+                        <p>{{ scope.row.ht_content }}</p>
+                        <div slot="reference" class="name-wrapper">{{
+                                scope.row.ht_content != null && scope.row.ht_content.length > 10 ? scope.row.ht_content.substring(0, 8) + "...." : scope.row.ht_content
+                            }}
+                        </div>
+                    </el-popover>
+                </template>
+            </el-table-column>
+            <!-- <el-table-column prop="curWarningLevel" label="下发单位" align="center"></el-table-column> -->
+            <el-table-column prop="date" label="基本操作" align="center">
+                <template slot-scope="scope">
+                    <el-button @click="editDanger(scope.row)" type="text" size="small">编辑</el-button>
+                    <el-button @click="deleteDanger(scope.row)" type="text" size="small">删除</el-button>
+                </template>
+            </el-table-column>
+        </el-table>
+            <el-table ref="dataTable" v-if="listQuery.type==1" :data="tableData" style="width: 100%" @selection-change="handleSelectionChange">
+            <el-table-column type="selection" width="55" align="center"></el-table-column>
+          <el-table-column prop="check_date" label="检查时间" :formatter="formatColumnDate" width="120" align="center">
+<!--                    <template slot-scope="scope">-->
+<!--                        <label>{{ formatDate(scope.row.check_date)}}</label><br/>-->
+<!--                        <label>{{ scope.row.check_class}}</label>-->
+<!--                    </template>-->
+                </el-table-column>
+            <el-table-column prop="check_main_branch" label="检查单位" align="center"></el-table-column>
+            <el-table-column prop="checktype" label="检查类别" align="center"></el-table-column>
+            <el-table-column prop="ht_community" label="被检单位" align="center"></el-table-column>
+            <el-table-column prop="ht_typesub" label="隐患类别" align="center"></el-table-column>
+            <el-table-column prop="ht_level" label="隐患级别" align="center"></el-table-column>
+            <el-table-column prop="address" label="隐患地点" align="center"></el-table-column>
+            <el-table-column prop="ht_content" label="隐患内容" width="200" align="center">
+                <template slot-scope="scope">
+                    <el-popover trigger="hover" placement="top">
+                        <p>{{ scope.row.ht_content }}</p>
+                        <div slot="reference" class="name-wrapper">{{
+                                scope.row.ht_content != null && scope.row.ht_content.length > 10 ? scope.row.ht_content.substring(0, 8) + "...." : scope.row.ht_content
+                            }}
+                        </div>
+                    </el-popover>
+                </template>
+            </el-table-column>
+            <el-table-column prop="workGroupName" label="发送单位" align="center"></el-table-column>
+            <el-table-column prop="state" label="未自查单位" align="center"></el-table-column>
+        </el-table>
+        </div>
+            <el-table
+                ref="dataTable"
+                v-if="table2"
+                :data="tableData" style="width: 100%"
+                @selection-change="handleSelectionChange">
+            <el-table-column type="selection" width="55" align="center"></el-table-column>
+          <el-table-column prop="check_date" label="检查时间" :formatter="formatColumnDate" width="120" align="center">
+<!--                    <template slot-scope="scope">-->
+<!--                        <label>{{ formatDate(scope.row.check_date)}}</label><br/>-->
+<!--                        <label>{{ scope.row.check_class}}</label>-->
+<!--                    </template>-->
+                </el-table-column>
+            <el-table-column prop="check_main_branch" label="检查单位" align="center"></el-table-column>
+            <el-table-column prop="checktype" label="检查类别" align="center"></el-table-column>
+                <el-table-column prop="ht_community" label="被检单位" align="center"></el-table-column>
+            <el-table-column prop="ht_typesub" label="隐患类别" align="center"></el-table-column>
+            <el-table-column prop="ht_level" label="隐患级别" align="center"></el-table-column>
+            <el-table-column prop="address" label="隐患地点" align="center"></el-table-column>
+            <el-table-column prop="ht_content" label="内容" width="200" align="center"></el-table-column>
+            <el-table-column prop="workGroupName" label="发送单位" align="center"></el-table-column>
+            <el-table-column prop="date" label="自查结果" align="center">
+                <template slot-scope="scope">
+                    <el-button @click="handleClick(scope.row,'不存在')" type="text" size="small">不存在</el-button>
+                    <el-button @click="handleClick(scope.row)" type="text" v-if="listQuery.sendType=='0'" size="small">存在</el-button>
+                    <el-button @click="handleClick(scope.row)" type="text" v-if="listQuery.sendType=='1'" size="small">追查结果</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>
+
+        <!-- 编辑弹窗 -->
+        <el-dialog
+            title="编辑"
+            :visible.sync="dialogVisible"
+            :close-on-click-modal="false"
+            width="40%">
+            <el-form ref="form" :rules="dangerRules" :model="dangerForm" label-width="100px">
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="检查时间" prop="check_date">
+                            <el-date-picker
+                                v-model="dangerForm.check_date"
+                                type="date"
+                                value-format="yyyy-MM-dd"
+                                placeholder="选择日期"
+                                style="width: 100%"
+                            >
+                            </el-date-picker>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="检查类别" prop="checktype">
+                            <el-select v-model="dangerForm.checktype" placeholder="请选择">
+                                <el-option
+                                    v-for="item in JCLBList"
+                                    :key="item.value"
+                                    :label="item.value"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="9" >
+                        <el-form-item label="检查单位" prop="check_main_branch">
+                            <el-input v-model="dangerForm.check_main_branch" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+
+                <el-row>
+                    <el-col :span="9">
+                        <el-form-item label="地点" prop="address">
+                            <el-input v-model="dangerForm.address" rows="3" type="textarea" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="隐患内容" prop="ht_content">
+                            <el-input v-model="dangerForm.ht_content" rows="3" type="textarea" class="multiline"></el-input>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="9" >
+                        <el-form-item label="隐患类别" prop="ht_typesub">
+                            <el-select v-model="dangerForm.ht_typesub" placeholder="请选择">
+                                <el-option
+                                    v-for="item in YHLBList"
+                                    :key="item.value"
+                                    :label="item.value"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="9" :offset="4">
+                        <el-form-item label="隐患级别" prop="ht_level">
+                            <el-select v-model="dangerForm.ht_level" placeholder="请选择">
+                                <el-option
+                                    v-for="item in YHJBList"
+                                    :key="item.value"
+                                    :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="22">
+                        <el-form-item style="text-align: center">
+                            <el-button type="primary" class="btns" @click="submitDanger('form')">保存</el-button>
+                            <el-button @click="dialogVisible=false">关闭</el-button>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+            </el-form>
+        </el-dialog>
+
+        <!-- 部门弹窗 -->
+        <el-dialog
+            title="责任单位"
+            :visible.sync="bmDialogVisible"
+            :close-on-click-modal="false"
+            width="40%">
+            <el-form>
+                <el-row>
+                    <el-checkbox style="width: 80px;height: 30px"
+                                 v-for="item in YHBMList"
+                                 v-model="checked"
+                                 :label="item.branch_id"
+                                 :key="item.branch_name">
+                        {{item.branch_name}}
+                    </el-checkbox>
+                </el-row>
+                <el-row>
+                    <el-col :span="22">
+                        <el-form-item style="text-align: center;">
+                            <el-button class="btn" size="small" type="primary" @click="submitForm()">
+                                保存
+                            </el-button>
+                            <el-button size="small" @click="bmDialogVisible = false">关闭</el-button>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+            </el-form>
+        </el-dialog>
+
+        <!-- 不存在弹窗-->
+        <el-dialog :title="selfTitle" :visible.sync="selfInspectVisible" :modal-append-to-body="false" :close-on-click-modal="false" width="600px">
+            <el-form ref="selfInspectForm" :rules="selfInspectFormRules" :model="selfInspectForm" label-position="right" label-width="80px">
+                <el-form-item label="自查人" prop="markUserName">
+                    <el-input v-model="selfInspectForm.markUserName" class="analyseUnit_input"></el-input>
+                </el-form-item>
+                <el-form-item label="自查时间" prop="markDate">
+                    <el-col :span="11">
+                        <el-date-picker type="date" placeholder="选择日期" v-model="selfInspectForm.markDate"
+                                        style="width: 100%;" value-format="yyyy-MM-dd">
+                        </el-date-picker>
+                    </el-col>
+                </el-form-item>
+                <el-form-item label="备注" prop="remark">
+                    <el-input v-model="selfInspectForm.remark" type="textarea" rows="5" class="analyseUnit_input"></el-input>
+                </el-form-item>
+            </el-form>
+            <div  align="center">
+                <el-button type="primary" v-if="listQuery.sendType == '0'" @click="submitSelfInspect()">确认</el-button>
+                <el-button @click="selfInspectVisible = false">关闭</el-button>
+            </div>
+        </el-dialog>
+
+    </div>
+</template>
+<script>
+import { getPageList, edit, del, send, revoke} from "@/api/sgyhpczl/oneFromanotherN"
+import {noExistSave,selfCheckNotInfo} from "@/api/sgyhpczl/oneFromanother"
+import {initJCBM, initYHLX, initJCLB, initYHJB,initYHBM} from "@/api/sgyhpczl/initSelect";
+import {deepClone} from '@/utils'
+
+
+    export default{
+        data(){
+            return{
+                listQuery:{
+                    page:1,
+                    limit:10,
+                    type: 0,
+                    sendType: 0,
+                    form:{},
+                },
+                selfTotal: 0,
+                radio1:'待发送',
+                table1:true,
+                table2:false,
+                currentPage: 1,
+                pageSize: 10,
+                recordTotal: 0,
+                YHBMList: [],
+                bmDialogVisible: false,
+                checked:[],
+                requestData:{},//发送提交参数
+                XFDWList:[],
+                YHLBList:[],
+                YHJBList:[],
+                JCLBList:[],
+                tableData:[],
+                selectedList:[],
+                loading:false,
+                listLoading: false,
+                selfInspectVisible: false,
+                selfInspectForm:{
+                    id: '',
+                    markUserName:'',
+                    markDate:'',
+                    remark:'',
+                },
+                selfTitle: '',
+                selfInspectFormRules:{
+                    markUserName: [{ required: true, message: '自查人不能为空', trigger: 'blur' }],
+                    markDate: [{ required: true, message: '自查时间不能为空', trigger: 'blur' }]
+                },
+                dialogVisible:false,
+                dangerForm:{},
+                dangerRules:{
+                    check_date: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                    check_main_branch: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                    checktype: [{ required: true, message: '不能为空', trigger: 'blur' },],
+                },
+
+
+            }
+        },
+        mounted() {
+            this.getPageList();
+            this.getSelfTotal();
+            this.initYHBM();
+            this.initJCLB();
+            this.initXFDW();
+            this.initYHJB();
+            this.initYHLB();
+        },
+        methods:{
+            addDanger(){
+                this.$router.push({
+                    path:'/addDanger',
+                })
+            },
+            handleClick(data,val){
+                if(val=='不存在'){
+                    this.$nextTick(() =>{
+                        this.$refs["selfInspectForm"].clearValidate()
+                    })
+                    this.selfInspectForm={id:data.id}
+                    this.selfInspectVisible = true
+                    if (this.listQuery.sendType == '1'){
+                        let params = {
+                            id: data.id,
+                            type: 1,
+                        }
+                        selfCheckNotInfo(params).then(res=>{
+                            if (res.data.ok==1){
+                                this.selfInspectForm=res.data.data[0]
+                            } else{
+                                this.$message({type:'error', message:res.data.msg, duration:3000})
+                            }
+                        })
+                    }
+                    return
+                }
+                let puType = '0';
+                this.$router.push({
+                    path:'/existN',
+                    query: {
+                        data: data,
+                        type: puType
+                    }
+                })
+            },
+            //不存在提交
+            submitSelfInspect(){
+                this.$refs["selfInspectForm"].validate((valid) =>{
+                    if (valid){
+                        noExistSave(this.selfInspectForm).then((res)=>{
+                            if (res.data.ok==1) {
+                                this.$message({type:'success', message:"保存成功", duration:3000});
+                                this.selfInspectVisible = false
+                            }else{
+                                this.$message({type:'error', message:res.data.msg, duration:3000})
+                            }
+                        })
+                    }
+                })
+            },
+            handoff(index){
+                if(index==1){
+                    this.table1=false
+                    this.table2=true
+                    this.listQuery.type = 2
+                    this.listQuery.sendType = 0
+                    this.getPageList()
+                }else{
+                    this.listQuery.type = 0
+                    this.getPageList()
+                    this.getSelfTotal();
+                    this.table1=true
+                    this.table2=false
+                }
+            },
+            initYHBM() {
+                initYHBM().then(res => {
+                    if (res.data.ok == 1) {
+                        this.YHBMList = res.data.data
+                    } else {
+                        this.$message({type: 'error', message: res.data.msg, duration: 3000})
+                    }
+                })
+            },
+            initXFDW(){
+                initJCBM(1).then(res=>{
+                    if (res.data.ok==1){
+                        this.XFDWList=res.data.data
+                    } else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            initYHLB(){
+                initYHLX().then(res=>{
+                    if (res.data.ok==1){
+                        this.YHLBList=res.data.data
+                    } else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            initYHJB(){
+                initYHJB().then(res=>{
+                    if (res.data.ok==1){
+                        this.YHJBList=res.data.data
+                    } else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            initJCLB(){
+                initJCLB().then(res=>{
+                    if (res.data.ok==1){
+                        this.JCLBList=res.data.data
+                    } else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            checkTime(){
+                if(this.listQuery.form.check_dateStart!=null && this.listQuery.form.check_dateStart!=''){
+                    if(this.listQuery.form.check_dateEnd!=null && this.listQuery.form.check_dateEnd!=''){
+                    }else {
+                        this.$message({type:'error', message:"请选择检查结束时间", duration:3000})
+                        return
+                    }
+
+                }
+            },
+            //搜索
+            getPageList(){
+                this.listQuery.page=1
+                this.checkTime()
+                this.loading=true
+                getPageList(this.listQuery).then(res=>{
+                    this.loading=false
+                    if (res.data.ok==1) {
+                        this.tableData = res.data.data.items
+                        this.recordTotal=res.data.data.total
+                    }else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            //获取待自查数量
+            getSelfTotal(){
+                if (this.listQuery.type != '2'){
+                    let query = {
+                        page: 1,
+                        sendType: 0,
+                        type: 2,
+                        form:{},
+                    };
+                    getPageList(query).then(res=>{
+                        if (res.data.ok==1) {
+                            this.selfTotal=res.data.data.total
+                        }else{
+                            this.$message({type:'error', message:res.data.msg, duration:3000})
+                        }
+                    })
+                }
+            },
+            //重置
+            reset(){
+                this.listQuery.form={};
+                this.getPageList()
+            },
+            handleSizeChange(val){
+                this.listQuery.limit = val
+                this.getPageListForPagination();
+            },
+            handleCurrentChange(val){
+                this.listQuery.page = val
+                this.getPageListForPagination();
+            },
+            getPageListForPagination(){
+                this.checkTime()
+                getPageList(this.listQuery).then(res=>{
+                    if (res.data.ok==1) {
+                        this.tableData = res.data.data.items
+                        this.recordTotal=res.data.data.total
+                    }else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            typeChange(val){
+                this.listQuery.type = val;
+                this.getPageList()
+            },
+            sendTypeChange(val){
+                this.listQuery.sendType = val;
+                this.getPageList()
+            },
+            handleSelectionChange(val){
+                this.selectedList = []
+                val.forEach((item) => {
+                    this.selectedList.push(item)
+                })
+            },
+            //日期格式转换
+            formatColumnDate(row, column) {
+                // 获取单元格数据
+                let data = row[column.property]
+                if (data == null) {
+                    return null
+                }
+                let dt = new Date(data)
+                return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + ' '
+            },
+            editDanger(row, index) {
+                this.dangerForm = deepClone(row);
+                this.rowIndex = index;
+                this.dialogVisible = true;
+            },
+            //编辑提交
+            submitDanger(formName){
+                this.$refs[formName].validate((valid) => {
+                    if (valid) {
+                        edit(this.dangerForm).then(res=>{
+                            if (res.data.ok==1) {
+                                this.dialogVisible=false
+                                this.$message({type:'success', message:res.data.msg, duration:3000})
+                                this.getPageList()
+                            }else{
+                                this.$message({type:'error', message:res.data.msg, duration:3000})
+                            }
+                        })
+                    } else {
+                        console.log("error submit!!");
+                        return false;
+                    }
+                });
+            },
+            deleteBatch() {
+                if (this.selectedList == null || this.selectedList.length == 0) {
+                    this.$message({type: 'warning', message: '至少选中一条数据', duration: 3000})
+                    return
+                }
+                var ids = this.selectedList.map((obj) => {
+                    return obj.id
+                }).join(",")
+                this.$confirm('确认删除吗', '提示', {
+                    confirmButtonText: '确认',
+                    cancelButtonText: '取消',
+                    type: 'warning'
+                }).then(() => {
+                        del(ids).then(() => {
+                            this.getPageList()
+                            this.$notify({
+                                title: "成功",
+                                message: "删除成功",
+                                type: "success",
+                                duration: 2000,
+                            });
+                        });
+                    })
+                    .catch(error => {
+                    });
+            },
+            deleteDanger(row) {
+                this.$confirm('确认删除吗', '提示', {
+                    confirmButtonText: '确认',
+                    cancelButtonText: '取消',
+                    type: 'warning'
+                }).then(() => {
+                    console.log(row.id)
+                        del(row.id).then(() => {
+                            this.getPageList()
+                            this.$notify({
+                                title: "成功",
+                                message: "删除成功",
+                                type: "success",
+                                duration: 2000,
+                            });
+                        });
+                    }).catch(error => {
+                });
+            },
+            //发送提交
+            submitForm() {
+                if (this.checked.length == 0) {
+                    this.$message({
+                        type: 'warning',
+                        message: '请勾选需要发送的部门!'
+                    });
+                    return;
+                }
+                this.requestData.branchIds = this.checked.join(";");
+                send(this.requestData).then(res => {
+                    if (res.data.ok) {
+                        this.$message({
+                            type: 'success',
+                            message: res.data.msg
+                        });
+                        this.bmDialogVisible = false;
+                        this.getPageList();
+                    } else {
+                        this.$message({
+                            type: 'error',
+                            message: res.data.msg
+                        });
+                    }
+                })
+            },
+            openSend() {
+                if (this.selectedList.length != 1) {
+                    this.$message({
+                        type: 'warning',
+                        message: '请选择一条数据!'
+                    });
+                    return false;
+                } else {
+                    this.requestData.id = this.selectedList[0].id;
+                    this.bmDialogVisible = true;
+                }
+            },
+            tackBack(){
+                if (this.selectedList.length != 1) {
+                    this.$message({
+                        type: 'warning',
+                        message: '请选择一条数据!'
+                    });
+                    return false;
+                }else {
+                    this.$confirm('确认收回吗', '提示', {
+                        confirmButtonText: '确认',
+                        cancelButtonText: '取消',
+                        type: 'warning'
+                    }).then(() => {
+                        let data = {
+                            id: this.selectedList[0].id
+                        }
+                        revoke(data).then(() => {
+                            this.getPageList()
+                            this.$notify({
+                                title: "成功",
+                                message: "收回成功",
+                                type: "success",
+                                duration: 2000,
+                            });
+                        });
+                    }).catch(error => {
+                    });
+                }
+            }
+
+        }
+    }
+</script>
+<style scoped>
+.inquire {
+    display: flex;
+    justify-content: left;
+    flex-wrap: wrap;
+}
+.inquire .el-form-item {
+    padding: 0 46px;
+}
+.title-center {
+    padding: 20px 0;
+}
+
+.btns {
+    background-color: #034ea2;
+    border: 1px solid #034ea2;
+}
+
+.title-center /deep/ .el-radio-button:first-child .el-radio-button__inner {
+    border: none;
+}
+
+.title-center /deep/ .el-radio-button__inner {
+    border: none;
+    border-radius: 0px;
+}
+
+.title-center /deep/ .el-radio-button__orig-radio:checked + .el-radio-button__inner {
+    background-color: #034ea2;
+    background-color: #034ea2;
+}
+</style>
diff --git a/src/views/doublePreventAction/riskLevelManage/riskSourceManage/index.vue b/src/views/doublePreventAction/riskLevelManage/riskSourceManage/index.vue
index 433594a..dc01e3b 100644
--- a/src/views/doublePreventAction/riskLevelManage/riskSourceManage/index.vue
+++ b/src/views/doublePreventAction/riskLevelManage/riskSourceManage/index.vue
@@ -10,20 +10,9 @@
 <!--                <el-date-picker v-model="listQuery.endTime" value-format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="结束时间"></el-date-picker>-->
 <!--            </div>-->
             <div class="basic_search">
-                <span>风险源名称:</span>
+                <span>生产装置名称:</span>
                      <el-input v-model="listQuery.name" class="analyseUnit_input">
                 </el-input>
-            </div>
-            <div class="basic_search">
-                <span>风险类型:</span>
-                <el-select v-model="listQuery.type">
-                    <el-option
-                        v-for="item in typeList"
-                        :key="item.id"
-                        :value="item.id"
-                        :label="item.name"
-                    ></el-option>
-                </el-select>
             </div>
             <div class="basic_search">
                 <span>风险等级:</span>
@@ -64,9 +53,11 @@
                 </el-input>
             </div>
 
-            <el-button class="filter-item" style="margin-left: 10px;margin-top: 10px" type="primary" icon="el-icon-refresh" @click="refreshHandle">搜索</el-button>
-            <el-button class="filter-item" style="margin-left: 10px;margin-top: 10px" type="primary" icon="el-icon-plus" @click="showRiskSourceForm('','新增')">新增</el-button>
-        </div>
+               <el-button class="filter-item" style="margin-left: 10px;margin-top: 10px" type="primary" icon="el-icon-refresh" @click="refreshHandle">搜索</el-button>
+               <el-button class="filter-item" style="margin-left: 10px;margin-top: 10px" type="primary" icon="el-icon-plus" @click="showRiskSourceForm('','新增')">新增</el-button>
+               <el-button class="filter-item" style="margin-left: 10px;margin-top: 10px" type="primary"  @click="showImportDialog()">导入</el-button>
+               <el-button class="filter-item" style="margin-left: 10px;margin-top: 10px" type="primary"  @click="exportToExcel()">导出</el-button>
+           </div>
         <div class="table_content">
             <el-table
                 v-loading="listLoading"
@@ -77,12 +68,7 @@
                 highlight-current-row
                 style="width: 100%;"
             >
-                <el-table-column label="风险源名称" prop="name" align="center">
-                </el-table-column>
-                <el-table-column label="点位类型" prop="type" align="center">
-                    <template slot-scope="scope">
-                        {{ scope.row.type | parseType}}
-                    </template>
+                <el-table-column label="生产装置名称" prop="name" align="center">
                 </el-table-column>
                 <el-table-column label="风险等级" prop="level" align="center">
                      <template slot-scope="scope">
@@ -136,19 +122,9 @@
         </div>
         <el-dialog :title="title" :visible.sync="riskSourceVisible" :modal-append-to-body="false" :close-on-click-modal="false" width="600px">
             <el-form ref="riskSourceForm" :rules="riskSourceFormRules" :model="riskSourceForm" label-position="right" label-width="165px">
-                <el-form-item label="风险源名称" prop="name">
+                <el-form-item label="生产装置名称" prop="name">
                     <el-input v-model="riskSourceForm.name" class="analyseUnit_input">
                     </el-input>
-                </el-form-item>
-                <el-form-item label="风险源类型" prop="type">
-                    <el-select v-model="riskSourceForm.type" class="analyseUnit_input">
-                        <el-option
-                            v-for="item in typeList"
-                            :key="item.id"
-                            :value="item.id"
-                            :label="item.name"
-                        ></el-option>
-                    </el-select>
                 </el-form-item>
                 <el-form-item label="风险等级" prop="level">
                     <el-select v-model="riskSourceForm.level" class="analyseUnit_input">
@@ -182,6 +158,32 @@
                 <el-button type="primary" @click="submitRiskSourceForm()">确认</el-button>
             </div>
         </el-dialog>
+        <el-dialog
+            :visible.sync="importDialogFormVisible"
+            :modal-append-to-body="false"
+            :close-on-click-modal="false"
+            title="用户导入"
+            width="700px"
+        >
+            <el-form
+                ref="importForm"
+                label-position="right"
+                label-width="120px"
+                style="margin-left:50px;width:500px;"
+                element-loading-text="导入中..."
+            >
+                <el-form-item label="导入文件:">
+                    <input ref="importLabInput" type="file" accept=".xls, .xlsx" >
+                </el-form-item>
+                <el-form-item label="excel参考模板:">
+                    <el-button type="text" @click="viewHandle">下载模板</el-button>
+                </el-form-item>
+            </el-form>
+            <div slot="footer" class="dialog-footer">
+                <el-button @click="importDialogFormVisible = false">取消</el-button>
+                <el-button type="primary" @click="importToTable()">导入</el-button>
+            </div>
+        </el-dialog>
     </div>
 </template>
 
@@ -190,7 +192,9 @@
 import { computePageCount } from '@/utils'
 import { getRiskSourceList , addRiskSource , updateRiskSource , deleteById } from '@/api/riskSource'
 import {getAllDepartment, getDepartmentList} from "../../../../api/departmentManage";
-import {deleteRiskSource} from "../../../../api/riskSource";
+import {deleteRiskSource, exportRiskSource, importRiskSource} from "../../../../api/riskSource";
+import {parseError} from "../../../../utils/messageDialog";
+const exampleFile = require('@/assets/example/riskSource.xlsx')
 export default {
     name: 'index',
     filters: {
@@ -242,10 +246,10 @@
             title:'',
             company:'',
             code:'',
+            importDialogFormVisible:false,
             riskSourceVisible:false,
             riskSourceFormRules:{
                 name: [{ required: true, message: '风险源名称不能为空', trigger: 'blur' }],
-                type: [{ required: true, message: '风险源类型不能为空', trigger: 'change' }],
                 level: [{ required: true, message: '风险等级不能为空', trigger: 'change' }],
                 accidentDesc: [{ required: true, message: '可能导致事故的主要原因不能为空', trigger: 'blur' }],
                 location: [{ required: true, message: '区域位置不能为空', trigger: 'blur' }],
@@ -259,12 +263,10 @@
                 level: null,
                 location: "",
                 name: "",
-                type: null
             },
             listQuery:{
                 startTime:'',
                 endTime:'',
-                type:'',
                 status:'',
                 level:'',
                 depId:'',
@@ -304,6 +306,9 @@
                     message:res.data.message,
                     type:'warning'
                 })
+                if(res.data.code === '50001'){
+                    this.riskSourceData = []
+                }
             }
         },
         showRiskSourceForm(value,type){
@@ -321,7 +326,6 @@
                     level: null,
                     location: "",
                     name: "",
-                    type: null
                 }
             }else{
                 this.title = '编辑'
@@ -397,6 +401,82 @@
             })
         },
 
+
+        viewHandle() {
+            window.open(exampleFile, '_blank')
+        },
+
+        showImportDialog(){
+            this.importDialogFormVisible = true
+        },
+
+        importToTable(){
+            const formData = new FormData()
+            const files = this.$refs['importLabInput'].files
+            if (files && files.length > 0) {
+                formData.append('file', files[0])
+            }
+            importRiskSource(formData).then((response) => {
+                const res = response.data
+                if (res.code == 200) {
+                    this.importDialogFormVisible = false
+                    this.$message({
+                        message: '导入成功',
+                        type: 'success'
+                    })
+                    this.getRiskSourceData()
+                } else {
+                    parseError({ error: res.message, vm: this })
+                }
+            }).catch((error) => {
+                parseError({ error: error, vm: this })
+            })
+        },
+
+        exportToExcel() {
+            exportRiskSource(this.listQuery.filter).then(res=>{
+                if (res.data.code === '200') {
+                    if(res.data.result === null ||res.data.result === [] || res.data.result.length === 0){
+                        this.$message({
+                            type:'warning',
+                            message:'无数据可导出'
+                        })
+                    }
+                    else{
+                        let allData = res.data.result
+                        import('@/vendor/Export2Excel').then((excel) => {
+                            const tHeader = [
+                                '生产装置名称',
+                                '风险等级',
+                                '可能导致的事故描述',
+                                '区域位置',
+                                '所属部门名称',
+                            ]
+                            const filterVal = [
+                                'name',
+                                'level',
+                                'accidentDesc',
+                                'location',
+                                'depName',
+                            ]
+                            const data = this.formatJson(filterVal, allData)
+                            excel.export_json_to_excel({
+                                header: tHeader,
+                                data,
+                                filename: '生产装置数据'
+                            })
+                        })
+
+                    }
+                }
+            })
+        },
+
+        formatJson(filterVal, jsonData) {
+            return jsonData.map(v => filterVal.map(j => v[j]))
+        },
+
+
         refreshHandle(){
             this.listQuery.pageIndex = 1
             this.getRiskSourceData()

--
Gitblit v1.9.2