From 5edf462fd0028cd37b5c464002a4641d7af08dd2 Mon Sep 17 00:00:00 2001 From: shj <1790240199@qq.com> Date: 星期四, 19 五月 2022 15:45:30 +0800 Subject: [PATCH] 关注 --- src/permission.js | 2 src/views/careabout/index.vue | 466 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/router/index.js | 8 + 3 files changed, 475 insertions(+), 1 deletions(-) diff --git a/src/permission.js b/src/permission.js index 18f1dae..b396d11 100644 --- a/src/permission.js +++ b/src/permission.js @@ -16,7 +16,7 @@ if (!permissionRoles) return true return roles.some(role => permissionRoles.indexOf(role) >= 0) } -const whiteList = ['/login', '/auth-redirect','/agreement','/register','/productionEquipment','/instrumentData','/oneFromanother','/hiddenDangerTroubleshootingList','/preview','/inspectionNotExist','/send','/Issuedbysuperiors','/oneFromanotherN','/summaryPotentialSafetyHzards','/safetyHazardAccount','/superiorsSend','/accountSend','/existN','/exist','/hazardSource','/safetyedit','/Dualbase','/supervision','/inferOtherThings','/DualbaseLost','/summaryList','/summaryForm','/chartAnalysis']// no redirect whitelist +const whiteList = ['/login', '/auth-redirect','/agreement','/register','/productionEquipment','/instrumentData','/oneFromanother','/hiddenDangerTroubleshootingList','/preview','/inspectionNotExist','/send','/Issuedbysuperiors','/oneFromanotherN','/summaryPotentialSafetyHzards','/safetyHazardAccount','/superiorsSend','/accountSend','/existN','/exist','/hazardSource','/safetyedit','/Dualbase','/supervision','/inferOtherThings','/DualbaseLost','/summaryList','/summaryForm','/chartAnalysis','/careabout']// no redirect whitelist router.beforeEach((to, from, next) => { NProgress.start() // start progress bar diff --git a/src/router/index.js b/src/router/index.js index 24e2e9a..7ef57b6 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -486,6 +486,14 @@ component: () => import('@/views/chartAnalysis'), meta: { title: '隐患图表分析', icon: '' } }, + { + id: 13, + parentId: 0, + path: '/careabout', + name: '您关注的隐患', + component: () => import('@/views/careabout'), + meta: { title: '您关注的隐患', icon: '' } + }, ] } ] diff --git a/src/views/careabout/index.vue b/src/views/careabout/index.vue new file mode 100644 index 0000000..750e0e3 --- /dev/null +++ b/src/views/careabout/index.vue @@ -0,0 +1,466 @@ +<template> + <div class="app-container"> + <el-form ref="form" :inline="true" class="inquire" :model="form" label-width="100px"> + <el-form-item label="编号"> + <el-input v-model="listQuery.form.number" style="width:202px" placeholder="请输入内容"></el-input> + </el-form-item> + <el-form-item label="检查单位"> + <el-select v-model="listQuery.form.check_main_branch" placeholder="请选择" @change="changeJCDW"> + <el-option + v-for="item in JCDWList" + :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.check_branch" placeholder="请选择"> + <el-option + v-for="item in JCBMList" + :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.check_man" style="width:202px" placeholder="请输入内容"></el-input> + </el-form-item> + <el-form-item label="隐患单位"> + <el-input v-model="listQuery.form.ht_community" style="width:202px" :disabled="true"></el-input> + <!--<el-select v-model="listQuery.form.ht_community" placeholder="请选择" @change="changeYHDW"> + <el-option + v-for="item in JCDWList" + :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_branch" placeholder="请选择"> + <el-option + v-for="item in YHBMList" + :key="item.branch_id" + :label="item.branch_name" + :value="item.branch_id"> + </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 YHLXList" + :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.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.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.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="班次"> + <el-select v-model="listQuery.form.check_class" placeholder="请选择"> + <el-option + v-for="item in BCList" + :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.DTRisk_bankId" placeholder="请选择"> + <el-option + v-for="item in reList" + :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.createBy" placeholder="请选择"> + <el-option + v-for="item in llrList" + :key="item.id" + :label="item.realName" + :value="item.id"> + </el-option> + </el-select> + </el-form-item> --> + <el-form-item label="检查时间"> + <el-col :span="11"> + <el-date-picker type="date" 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 label="限改时间"> + <el-col :span="11"> + <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.alter_timeStart" value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker> + </el-col> + <el-col style="text-align:center" :span="2">-</el-col> + <el-col :span="11"> + <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.alter_timeEnd" value-format="yyyy-MM-dd" style="width: 100%;"></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-button type="primary" class="btns" size="small" icon="el-icon-upload2">导出excel</el-button> + </el-form-item> + </el-form> + <el-row class="title-center"> + <el-col :span="10"> + <el-radio-group v-model="listQuery.type" @change="typeChange"> + <el-radio-button label="0">督查督办</el-radio-button> + <el-radio-button label="1">特别关注</el-radio-button> + <el-radio-button label="2">全部</el-radio-button> + </el-radio-group> + </el-col> + <div v-if="table1"> + <el-col :span="14" style="text-align:right;"> + <el-button class="btns" type="primary" size="small" >特别关注</el-button> + <el-button class="btns" type="primary" size="small" @click="sendBath()">管理关注</el-button> + </el-col> + </div> + </el-row> + <el-table :data="tableData" style="width: 100%" @selection-change="changeBox"> + <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-column prop="date" label="流程操作" align="center" fixed="right"> + <template slot-scope="scope"> + <el-button @click="handleClick(scope.row)" type="text" size="small">点击发送</el-button> + </template> + </el-table-column> + <el-table-column prop="date" label="基本操作" align="center" fixed="right"> + <template slot-scope="scope"> + <el-button @click="updateClick(scope.row)" type="text" size="small">编辑</el-button> + <el-button @click="deleteClick(scope.row)" type="text" 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> + + </div> +</template> +<script> + import { getPageList, analogy_export_do} from "@/api/sgyhpczl/oneFromanotherN" + import {initJCBM, initYHLX, initJCLB, initYHJB} from "@/api/sgyhpczl/initSelect"; + + export default{ + data(){ + return{ + listQuery:{ + page:1, + limit:10, + type: 0, + form:{}, + }, + radio1:'待发送', + table1:true, + table2:false, + + + + currentPage: 1, + pageSize: 10, + recordTotal: 0, + XFDWList:[], + YHLBList:[], + YHJBList:[], + JCLBList:[], + tableData:[], + selectedList:[], + listLoading: false, + selfInspectVisible: false, + selfInspectForm:{ + id: '', + markUserName:'', + markDate:'', + remark:'', + }, + selfInspectFormRules:{ + markUserName: [{ required: true, message: '自查人不能为空', trigger: 'blur' }], + markDate: [{ required: true, message: '自查时间不能为空', trigger: 'blur' }] + }, + + } + }, + mounted() { + this.getPageList(); + this.initJCLB(); + this.initXFDW(); + this.initYHJB(); + this.initYHLB(); + }, + methods:{ + sendBath(){ + this.$router.push({ + path:'/existN' + }) + }, + handleClick(data,val){ + if(val=='存在'){ + this.$router.push({ + path:'/exist' + }) + } + }, + handoff(index){ + if(index==1){ + this.table1=false + this.table2=true + this.listQuery.type = 2 + console.log(this.listQuery.type) + this.getPageList() + }else{ + this.table1=true + this.table2=false + } + }, + 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 + } + + } + if(this.listQuery.form.check_dateEnd!=null && this.listQuery.form.check_dateEnd!=''){ + if(this.listQuery.form.check_dateStart!=null && this.listQuery.form.check_dateStart!=''){ + }else { + this.$message({type:'error', message:"请选择检查开始时间", duration:3000}) + return + } + } + }, + //搜索 + getPageList(){ + this.listQuery.page=1 + 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}) + } + }) + }, + //重置 + 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() + }, + handleSelectionChange(val){ + this.selectedList = [] + val.forEach((item) => { + this.selectedList.push(item) + }) + }, + exportData() { + var requestData = this.listQuery; + //删除分页参数 + this.$delete(requestData, 'page') + this.$delete(requestData, 'limit') + analogy_export_do(requestData).then(res => { + var blob = new Blob([res.data]) + var downloadElement = document.createElement('a') + var href = window.URL.createObjectURL(blob) //创建下载的链接 + downloadElement.href = href + downloadElement.download = '内部举一反三.xlsx' //下载后文件名 + document.body.appendChild(downloadElement) + downloadElement.click() //点击下载 + document.body.removeChild(downloadElement) //下载完成移除元素 + window.URL.revokeObjectURL(href) //释放掉blob对象 + }).catch(err => { + console.log(err) + }) + }, + //日期格式转换 + 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() + ' ' + }, + } + } +</script> +<style scoped> +.inquire { + display: flex; + justify-content: left; + flex-wrap: wrap; +} +.inquire .el-form-item { + padding: 0 40px; +} +.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> -- Gitblit v1.9.2