From b097841d8c343edd2b6cb650d0693c502754ce26 Mon Sep 17 00:00:00 2001
From: Your Name <123456>
Date: Thu, 23 Jun 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