Commit ba4157a7 authored by 王李辉's avatar 王李辉

隐患、风险模块详情页面搭建

parent b1a877cd
...@@ -15,12 +15,13 @@ import store from './store' ...@@ -15,12 +15,13 @@ import store from './store'
import './permission' import './permission'
import Cookies from 'js-cookie' import Cookies from 'js-cookie'
import { prefix } from '@/common/js/utils' import { prefix } from '@/common/js/utils'
import { Divider, Popup, Overlay, Loading, Dialog, ContactCard, Form, AddressEdit, AddressList, Field, CellGroup, Cell, SwipeCell, Icon, Stepper, Card, Checkbox, CheckboxGroup, Button, Swipe, SwipeItem, PullRefresh, List, Tab, Tabs, GoodsAction, GoodsActionIcon, GoodsActionButton, SubmitBar, Toast ,Search,Picker,Uploader,Notify ,ContactList,Calendar,Radio,RadioGroup,Tag,Tabbar,TabbarItem,Sticky, Grid, GridItem,Skeleton,Col,Row, Image as VanImage, Badge,NoticeBar,DatetimePicker } from 'vant' import { Divider, Popup, Overlay, Loading, Dialog, ContactCard, Form, AddressEdit, AddressList, Field, CellGroup, Cell, SwipeCell, Icon, Stepper, Card, Checkbox, CheckboxGroup, Button, Swipe, SwipeItem, PullRefresh, List, Tab, Tabs, GoodsAction, GoodsActionIcon, GoodsActionButton, SubmitBar, Toast ,Search,Picker,Uploader,Notify ,ContactList,Calendar,Radio,RadioGroup,Tag,Tabbar,TabbarItem,Sticky, Grid, GridItem,Skeleton,Col,Row, Image as VanImage, Badge,NoticeBar,DatetimePicker,
Step, Steps } from 'vant'
import 'lib-flexible/flexible' import 'lib-flexible/flexible'
Vue.use(Divider).use(Popup).use(Overlay).use(Loading).use(Dialog).use(Toast).use(ContactCard).use(Form).use(AddressEdit).use(AddressList).use(Field).use(CellGroup).use(Cell).use(SwipeCell).use(Icon).use(Stepper).use(Card).use(Button).use(Swipe).use(SwipeItem).use(PullRefresh).use(List).use(Tab).use(Tabs).use(GoodsAction).use(GoodsActionIcon).use(GoodsActionButton).use(SubmitBar).use(Checkbox).use(CheckboxGroup).use(Search).use(Picker).use(Uploader).use(Notify) Vue.use(Divider).use(Popup).use(Overlay).use(Loading).use(Dialog).use(Toast).use(ContactCard).use(Form).use(AddressEdit).use(AddressList).use(Field).use(CellGroup).use(Cell).use(SwipeCell).use(Icon).use(Stepper).use(Card).use(Button).use(Swipe).use(SwipeItem).use(PullRefresh).use(List).use(Tab).use(Tabs).use(GoodsAction).use(GoodsActionIcon).use(GoodsActionButton).use(SubmitBar).use(Checkbox).use(CheckboxGroup).use(Search).use(Picker).use(Uploader).use(Notify)
.use(ContactList).use(Calendar).use(Radio).use(RadioGroup).use(Tag).use(Tabbar).use(TabbarItem).use(Sticky) .use(ContactList).use(Calendar).use(Radio).use(RadioGroup).use(Tag).use(Tabbar).use(TabbarItem).use(Sticky)
.use(Grid).use(GridItem).use(Skeleton).use(Col).use(Row).use(VanImage).use(Badge).use(NoticeBar).use(DatetimePicker) .use(Grid).use(GridItem).use(Skeleton).use(Col).use(Row).use(VanImage).use(Badge).use(NoticeBar).use(DatetimePicker).use(Step).use(Steps)
Vue.config.productionTip = false Vue.config.productionTip = false
new Vue({ new Vue({
router, router,
......
...@@ -280,6 +280,16 @@ const routes = [ ...@@ -280,6 +280,16 @@ const routes = [
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/confirmeDanger'), component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/confirmeDanger'),
}, },
{
path: '/con-detail',
name: 'con-detail',
meta: {
title:'隐患确认详情',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/confirmeDanger/conDetail.vue'),
},
{ {
path: '/affirm-danger', path: '/affirm-danger',
name: 'affirm-danger', name: 'affirm-danger',
...@@ -307,6 +317,16 @@ const routes = [ ...@@ -307,6 +317,16 @@ const routes = [
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/changeDanger/changeInfo'), component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/changeDanger/changeInfo'),
}, },
{
path: '/change-detail',
name: 'change-detail',
meta: {
title:'隐患整改详情',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/changeDanger/changeDetail'),
},
{ {
path: '/review-danger', path: '/review-danger',
name: 'review-danger', name: 'review-danger',
...@@ -316,6 +336,17 @@ const routes = [ ...@@ -316,6 +336,17 @@ const routes = [
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger'), component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger'),
}, },
{
path: '/review-detail',
name: 'review-detail',
meta: {
title:'隐患复查详情',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger/reviewDetail'),
},
{ {
path: '/review-add', path: '/review-add',
name: 'review-add', name: 'review-add',
...@@ -325,6 +356,25 @@ const routes = [ ...@@ -325,6 +356,25 @@ const routes = [
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger/reviewAdd'), component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger/reviewAdd'),
}, },
{
path: '/stand-book',
name: 'stand-book',
meta: {
title:'隐患历史台账',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/standBook'),
},
{
path: '/normal-detail',
name: 'normal-detail',
meta: {
title:'隐患历史台账详情',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/standBook/normalDetail'),
},
{ {
path: '/risk', path: '/risk',
name: 'risk', name: 'risk',
...@@ -361,6 +411,42 @@ const routes = [ ...@@ -361,6 +411,42 @@ const routes = [
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme/riskAffirm'), component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme/riskAffirm'),
}, },
{
path: '/affirm-detail',
name: 'affirm-detail',
meta: {
title:'风险确认详情',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme/affirmDetail'),
},
{
path: '/risk-account',
name: 'risk-account',
meta: {
title:'风险历史台账',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAccount'),
},
{
path: '/risk-big-detail',
name: 'risk-big-detail',
meta: {
title:'风险历史台账',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAccount/riskBigDetail'),
},
] ]
......
This diff is collapsed.
...@@ -53,7 +53,7 @@ export default { ...@@ -53,7 +53,7 @@ export default {
showIndex: null // 是否显示遮罩层 showIndex: null // 是否显示遮罩层
}; };
}, },
activated() { created() {
this.postList() this.postList()
}, },
methods: { methods: {
......
...@@ -10,12 +10,23 @@ ...@@ -10,12 +10,23 @@
@touchstart="touchstart(index, item)" @touchstart="touchstart(index, item)"
@touchend.prevent="touchend(index)" @touchend.prevent="touchend(index)"
> >
<div class="messgae-title">{{ item.noticeTitle }}</div> <van-row gutter="">
<div class="message-content"> <van-col span="7">所属工程名称:</van-col>
{{ item.upcomingUserName }},您好!您有一条来自{{ <van-col span="17">{{ item.project }}</van-col>
item.createUserName </van-row>
}}{{ item.noticeTitle }}相关的待处理任务... <van-row gutter="">
</div> <van-col span="7">隐患项目名称:</van-col>
<van-col span="17">{{ item.subject }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患发现时间:</van-col>
<van-col span="17">{{ item.findTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患级别:</van-col>
<van-col span="17">{{ item.level }}</van-col>
</van-row>
<!-- 长按显示遮罩层 --> <!-- 长按显示遮罩层 -->
<van-overlay :show="showIndex == index"> <van-overlay :show="showIndex == index">
...@@ -24,7 +35,7 @@ ...@@ -24,7 +35,7 @@
>详情</van-button >详情</van-button
> >
<van-button round type="info" @touchstart="goConfirm(item)" <van-button round type="info" @touchstart="goConfirm(item)"
>整改</van-button >确认</van-button
> >
</div> </div>
</van-overlay> </van-overlay>
...@@ -39,10 +50,10 @@ export default { ...@@ -39,10 +50,10 @@ export default {
return { return {
messageList: [ messageList: [
{ {
noticeTitle: "隐患上报消息", project: "朝阳区和平街14区简易住宅楼改造项目",
upcomingUserName: "张某某", subject: "临时用电施工组织设计未对盾构施工用电进行专项说明。",
createUserName: "李某某", findTime: "2021-10-26 16:30:00",
noticeTitle: "重要任务" level: "一般隐患A"
} }
], ],
Loop: "", // 定时器 Loop: "", // 定时器
...@@ -55,9 +66,9 @@ export default { ...@@ -55,9 +66,9 @@ export default {
touchstart(index, item) { touchstart(index, item) {
clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器 clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器
if(this.showIndex != null){ if (this.showIndex != null) {
this.showIndex = null; this.showIndex = null;
return return;
} }
this.Loop = setTimeout(() => { this.Loop = setTimeout(() => {
this.showIndex = index; this.showIndex = index;
...@@ -71,6 +82,7 @@ export default { ...@@ -71,6 +82,7 @@ export default {
// 详情 // 详情
goDetail(data) { goDetail(data) {
console.log(data); console.log(data);
this.$router.push("/change-detail");
this.showIndex = null; this.showIndex = null;
}, },
// 确认 // 确认
...@@ -93,9 +105,9 @@ export default { ...@@ -93,9 +105,9 @@ export default {
padding: 10px; padding: 10px;
font-size: 13px; font-size: 13px;
position: relative; position: relative;
.van-row{
.message-content { margin-bottom: .133333rem;
margin-top: 10px; line-height: .64rem;
} }
.van-overlay { .van-overlay {
position: absolute; position: absolute;
......
This diff is collapsed.
...@@ -55,7 +55,7 @@ export default { ...@@ -55,7 +55,7 @@ export default {
}, },
data() { data() {
return { return {
text: "隐患确认", text: "整改确认",
value: "", value: "",
uploaderImg: [], //图像上传 uploaderImg: [], //图像上传
uploaderVideo: [] //视频上传 uploaderVideo: [] //视频上传
......
<template>
<div>
<LHeader :text="text"></LHeader>
<!-- 内容列表 -->
<div class="con-list">
<div class="cell-wrap">
<p>隐患上报</p>
<van-cell-group inset v-for="(item, index) in reportList" :key="index">
<van-row gutter="">
<van-col span="7"><span class="field-title">所属工程名称:</span></van-col>
<van-col span="17">{{ item.project }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">隐患项目名称:</span></van-col>
<van-col span="17">{{ item.subject }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">隐患发现时间:</span></van-col>
<van-col span="17">{{ item.findTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">隐患级别:</span></van-col>
<van-col span="17">{{ item.level }}</van-col>
</van-row>
<!-- 隐藏的字段 -->
<div v-show="reportOpen">
<van-row gutter="">
<van-col span="7"><span class="field-title">试用范围:</span></van-col>
<van-col span="17">{{ item.range }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">隐患类型:</span></van-col>
<van-col span="17">{{ item.type }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">隐患项目编号</span>:</van-col>
<van-col span="17">{{ item.dangerNum }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">风险源:</span></van-col>
<van-col span="17">{{ item.source }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">风险源因素:</span></van-col>
<van-col span="17">{{ item.source1 }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">检查部位:</span></van-col>
<van-col span="17">{{ item.location }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">隐患项目编号:</span></van-col>
<van-col span="17">{{ item.dangerNum }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">隐患描述:</span></van-col>
<van-col span="17">{{ item.describe }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">隐患照片:</span></van-col>
<van-col span="17">{{ item.uploaderImg }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">隐患视频:</span></van-col>
<van-col span="17">{{ item.uploaderVideo }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">隐患到期时间:</span></van-col>
<van-col span="17">{{ item.expireTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">隐患整改人:</span></van-col>
<van-col span="17">{{ item.recPeople }}</van-col>
</van-row>
</div>
</van-cell-group>
<!-- 展开 -->
<div class="more" @click="reportReverse">
{{ reportOpenText }}
</div>
</div>
<div class="journal-wrap">
<p>日志信息</p>
<van-cell-group inset v-for="(item, index) in reportList" :key="index">
<van-steps direction="vertical" :active="999">
<van-step>
<div class="step-wrap">
<van-row>
<van-col span="24"
><div class="info-title">日志信息</div></van-col
>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">审批人:</span></van-col
>
<van-col span="19">首华建设项目</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">节点</span></van-col
>
<van-col span="19">隐患上报</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">结果:</span></van-col
>
<van-col span="19">通过</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">部门:</span></van-col
>
<van-col span="19">首华建设项目部</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">时间:</span></van-col
>
<van-col span="19">2021-10-26 16:30:00</van-col>
</van-row>
</div>
</van-step>
</van-steps>
</van-cell-group>
<!-- 展开 -->
<div class="more" @click="journalReverse">
{{ journalOpenText }}
</div>
</div>
<div class="supervise-wrap">
<p>督办信息</p>
<van-cell-group inset v-for="(item, index) in reportList" :key="index">
<div style="text-align: center;">暂无数据</div>
</van-cell-group>
<!-- 展开 -->
<div class="more" @click="superviseReverse" v-show="false">
{{ superviseOpenText }}
</div>
</div>
</div>
</div>
</template>
<script>
import LHeader from "@/components/header.vue";
export default {
components: {
LHeader
},
data() {
return {
text: "隐患确认详情",
reportOpen: false,
reportOpenText: "展开 ▼",
journalOpen: false,
journalOpenText: "展开 ▼",
superviseOpen: false,
superviseOpenText: "展开 ▼",
reportList: [
{
project: "朝阳区和平街14区简易住宅楼改造项目",
subject: "临时用电施工组织设计未对盾构施工用电进行专项说明。",
findTime: "2021-10-26 16:30:00",
level: "一般隐患A",
range: "城市轨道交通工程",
type: "临时用电",
dangerNum: "0-03-06-0003",
source: "违规活动",
source1: "人的因素",
location: "临时用电",
describe: "没按规定放置插排",
uploaderImg: [],
uploaderVideo: [],
expireTime: "2021-10-26 16:30:00",
recPeople: "张三"
}
],
journalList: []
};
},
mounted() {},
methods: {
// 上报信息显示或隐藏
reportReverse() {
this.reportOpen = !this.reportOpen;
if (this.reportOpen) {
this.reportOpenText = "收起 ▲";
} else {
this.reportOpenText = "展开 ▼";
}
},
// 日志信息显示或隐藏
journalReverse() {
this.journalOpen = !this.journalOpen;
if (this.journalOpen) {
// 显示所有数据
this.journalOpenText = "收起 ▲";
} else {
// 只渲染一条数据
this.journalOpenText = "展开 ▼";
}
},
// 督办信息显示或隐藏
superviseReverse() {
this.superviseOpen = !this.superviseOpen;
if (this.superviseOpen) {
// 显示所有数据
this.superviseOpenText = "收起 ▲";
} else {
// 只渲染一条数据
this.superviseOpenText = "展开 ▼";
}
}
}
};
</script>
<style lang="less" scoped>
/* @import url(); 引入css类 */
.con-list {
padding: 10px 10px .533333rem;
background-color: #f0f1f5;
.cell-wrap {
position: relative;
}
p {
font-size: 0.4rem;
font-weight: 600;
padding-left: 0.16rem;
margin: 0.186667rem 0;
color: #7f7f7f;
}
.van-cell-group--inset {
margin: 0;
margin-bottom: 10px;
padding: 10px;
font-size: 13px;
position: relative;
.van-row {
margin-bottom: .133333rem;
line-height: .64rem;
}
}
.journal-wrap {
position: relative;
}
.supervise-wrap{
position: relative;
}
.info-title {
color: #2980f7;
font-weight: bolder;
}
.field-title {
color: black;
font-weight: bolder;
}
.more {
position: absolute;
bottom: 0.32rem;
right: 15px;
color: #2a80f7;
font-weight: bolder;
z-index: 99;
}
}
</style>
...@@ -10,12 +10,23 @@ ...@@ -10,12 +10,23 @@
@touchstart="touchstart(index, item)" @touchstart="touchstart(index, item)"
@touchend.prevent="touchend(index)" @touchend.prevent="touchend(index)"
> >
<div class="messgae-title">{{ item.noticeTitle }}</div> <van-row gutter="">
<div class="message-content"> <van-col span="7">所属工程名称:</van-col>
{{ item.upcomingUserName }},您好!您有一条来自{{ <van-col span="17">{{ item.project }}</van-col>
item.createUserName </van-row>
}}{{ item.noticeTitle }}相关的待处理任务... <van-row gutter="">
</div> <van-col span="7">隐患项目名称:</van-col>
<van-col span="17">{{ item.subject }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患发现时间:</van-col>
<van-col span="17">{{ item.findTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患级别:</van-col>
<van-col span="17">{{ item.level }}</van-col>
</van-row>
<!-- 长按显示遮罩层 --> <!-- 长按显示遮罩层 -->
<van-overlay :show="showIndex == index"> <van-overlay :show="showIndex == index">
...@@ -39,10 +50,10 @@ export default { ...@@ -39,10 +50,10 @@ export default {
return { return {
messageList: [ messageList: [
{ {
noticeTitle: "隐患上报消息", project: "朝阳区和平街14区简易住宅楼改造项目",
upcomingUserName: "张某某", subject: "临时用电施工组织设计未对盾构施工用电进行专项说明。",
createUserName: "李某某", findTime: "2021-10-26 16:30:00",
noticeTitle: "重要任务" level: "一般隐患A"
} }
], ],
Loop: "", // 定时器 Loop: "", // 定时器
...@@ -55,9 +66,9 @@ export default { ...@@ -55,9 +66,9 @@ export default {
touchstart(index, item) { touchstart(index, item) {
clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器 clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器
if(this.showIndex != null){ if (this.showIndex != null) {
this.showIndex = null; this.showIndex = null;
return return;
} }
this.Loop = setTimeout(() => { this.Loop = setTimeout(() => {
this.showIndex = index; this.showIndex = index;
...@@ -71,6 +82,7 @@ export default { ...@@ -71,6 +82,7 @@ export default {
// 详情 // 详情
goDetail(data) { goDetail(data) {
console.log(data); console.log(data);
this.$router.push("/con-detail");
this.showIndex = null; this.showIndex = null;
}, },
// 确认 // 确认
...@@ -93,8 +105,9 @@ export default { ...@@ -93,8 +105,9 @@ export default {
padding: 10px; padding: 10px;
font-size: 13px; font-size: 13px;
position: relative; position: relative;
.message-content { .van-row{
margin-top: 10px; margin-bottom: .133333rem;
line-height: .64rem;
} }
.van-overlay { .van-overlay {
position: absolute; position: absolute;
......
This diff is collapsed.
...@@ -10,12 +10,23 @@ ...@@ -10,12 +10,23 @@
@touchstart="touchstart(index, item)" @touchstart="touchstart(index, item)"
@touchend.prevent="touchend(index)" @touchend.prevent="touchend(index)"
> >
<div class="messgae-title">{{ item.noticeTitle }}</div> <van-row gutter="">
<div class="message-content"> <van-col span="7">所属工程名称:</van-col>
{{ item.upcomingUserName }},您好!您有一条来自{{ <van-col span="17">{{ item.project }}</van-col>
item.createUserName </van-row>
}}{{ item.noticeTitle }}相关的待处理任务... <van-row gutter="">
</div> <van-col span="7">隐患项目名称:</van-col>
<van-col span="17">{{ item.subject }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患发现时间:</van-col>
<van-col span="17">{{ item.findTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患级别:</van-col>
<van-col span="17">{{ item.level }}</van-col>
</van-row>
<!-- 长按显示遮罩层 --> <!-- 长按显示遮罩层 -->
<van-overlay :show="showIndex == index"> <van-overlay :show="showIndex == index">
...@@ -24,7 +35,7 @@ ...@@ -24,7 +35,7 @@
>详情</van-button >详情</van-button
> >
<van-button round type="info" @touchstart="goConfirm(item)" <van-button round type="info" @touchstart="goConfirm(item)"
>复查</van-button >确认</van-button
> >
</div> </div>
</van-overlay> </van-overlay>
...@@ -39,10 +50,10 @@ export default { ...@@ -39,10 +50,10 @@ export default {
return { return {
messageList: [ messageList: [
{ {
noticeTitle: "隐患上报消息", project: "朝阳区和平街14区简易住宅楼改造项目",
upcomingUserName: "张某某", subject: "临时用电施工组织设计未对盾构施工用电进行专项说明。",
createUserName: "李某某", findTime: "2021-10-26 16:30:00",
noticeTitle: "重要任务" level: "一般隐患A"
} }
], ],
Loop: "", // 定时器 Loop: "", // 定时器
...@@ -55,9 +66,9 @@ export default { ...@@ -55,9 +66,9 @@ export default {
touchstart(index, item) { touchstart(index, item) {
clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器 clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器
if(this.showIndex != null){ if (this.showIndex != null) {
this.showIndex = null; this.showIndex = null;
return return;
} }
this.Loop = setTimeout(() => { this.Loop = setTimeout(() => {
this.showIndex = index; this.showIndex = index;
...@@ -71,6 +82,7 @@ export default { ...@@ -71,6 +82,7 @@ export default {
// 详情 // 详情
goDetail(data) { goDetail(data) {
console.log(data); console.log(data);
this.$router.push("/review-detail");
this.showIndex = null; this.showIndex = null;
}, },
// 确认 // 确认
...@@ -93,9 +105,9 @@ export default { ...@@ -93,9 +105,9 @@ export default {
padding: 10px; padding: 10px;
font-size: 13px; font-size: 13px;
position: relative; position: relative;
.van-row{
.message-content { margin-bottom: .133333rem;
margin-top: 10px; line-height: .64rem;
} }
.van-overlay { .van-overlay {
position: absolute; position: absolute;
......
<template>
<div>
<LHeader :text="text"></LHeader>
<van-search v-model="searchValue" placeholder="搜索" @search="onSearch" />
<van-tabs
v-model="active"
color="#247df7"
title-inactive-colo="#d0d1d1"
title-active-color="#000000"
>
<van-tab title="正常">
<normal-list></normal-list>
</van-tab>
<van-tab title="临期">临期</van-tab>
<van-tab title="超期">超期</van-tab>
</van-tabs>
</div>
</template>
<script>
import LHeader from "@/components/header.vue";
import NormalList from "./normalList";
export default {
components: {
LHeader,
NormalList
},
data() {
return {
text: "隐患历史台账",
active: "1",
searchValue: ""
};
},
mounted() {},
methods: {
onSearch(val) {
console.log(val);
}
}
};
</script>
<style lang="less" scoped>
/* @import url(); 引入css类 */
</style>
This diff is collapsed.
<template>
<div>
<!-- 内容列表 -->
<div class="con-list">
<van-cell-group
inset
v-for="(item, index) in messageList"
:key="index"
@click="read(item)"
@touchstart="touchstart(index, item)"
@touchend.prevent="touchend(index)"
>
<van-row gutter="">
<van-col span="7">所属工程名称:</van-col>
<van-col span="17">{{ item.project }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患项目名称:</van-col>
<van-col span="17">{{ item.subject }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患发现时间:</van-col>
<van-col span="17">{{ item.findTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患级别:</van-col>
<van-col span="17">{{ item.level }}</van-col>
</van-row>
<!-- 长按显示遮罩层 -->
<van-overlay :show="showIndex == index">
<div class="wrapper" @click.stop>
<van-button round type="primary" @touchstart="goDetail(item)"
>详情</van-button
>
</div>
</van-overlay>
</van-cell-group>
</div>
</div>
</template>
<script>
export default {
data() {
return {
messageList: [
{
project: "朝阳区和平街14区简易住宅楼改造项目",
subject: "临时用电施工组织设计未对盾构施工用电进行专项说明。",
findTime: "2021-10-26 16:30:00",
level: "一般隐患A"
}
],
Loop: "", // 定时器
showIndex: null // 是否显示遮罩层
};
},
mounted() {},
methods: {
read() {},
touchstart(index, item) {
clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器
if (this.showIndex != null) {
this.showIndex = null;
return;
}
this.Loop = setTimeout(() => {
this.showIndex = index;
}, 300); // 这里的1000是指需要长按的时间,单位为ms
},
touchend(index) {
// 这个方法主要是用来将每次手指移出之后将计时器清零
clearInterval(this.Loop);
},
// 详情
goDetail(data) {
console.log(data);
this.$router.push("/normal-detail");
this.showIndex = null;
},
}
};
</script>
<style lang="less" scoped>
/* @import url(); 引入css类 */
.con-list {
padding: 10px 10px 0;
background-color: #f0f1f5;
.van-cell-group--inset {
margin: 0;
margin-bottom: 10px;
padding: 10px;
font-size: 13px;
position: relative;
.van-row{
margin-bottom: .133333rem;
line-height: .64rem;
}
.van-overlay {
position: absolute;
.wrapper {
display: flex;
align-items: center;
justify-content: space-evenly;
height: 100%;
}
}
}
}
</style>
...@@ -46,15 +46,15 @@ ...@@ -46,15 +46,15 @@
</div> </div>
<!-- 长按显示遮罩层 --> <!-- 长按显示遮罩层 -->
<van-overlay :show="showIndex == index" > <van-overlay :show="showIndex == index">
<div class="wrapper" @click.stop > <div class="wrapper" @click.stop>
<van-button round type="info" @touchstart="goDetail(item)" <van-button round type="primary" @touchstart="goDetail(item)"
>详情</van-button >详情</van-button
> >
<van-button round type="danger" @touchstart="goDelete(item)" <van-button round type="info" @touchstart="goConfirm(item)"
>删除</van-button >整改</van-button
> >
</div> </div>
</van-overlay> </van-overlay>
</van-cell-group> </van-cell-group>
...@@ -100,7 +100,6 @@ export default { ...@@ -100,7 +100,6 @@ export default {
created() { created() {
this.getMessageList(); this.getMessageList();
this.unRead(); this.unRead();
}, },
methods: { methods: {
// 点击类别 // 点击类别
...@@ -132,7 +131,7 @@ export default { ...@@ -132,7 +131,7 @@ export default {
read(data) { read(data) {
console.log("触发了点击事件"); console.log("触发了点击事件");
// 判断showIndex是否等于null 如果不等于则先将showIndex改为null // 判断showIndex是否等于null 如果不等于则先将showIndex改为null
this.showIndex = null; this.showIndex = null;
if (data.status == "未读") { if (data.status == "未读") {
let formData = new FormData(); let formData = new FormData();
formData.append("ids", data.pid); formData.append("ids", data.pid);
...@@ -199,13 +198,16 @@ export default { ...@@ -199,13 +198,16 @@ export default {
touchstart(index, item) { touchstart(index, item) {
clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器 clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器
if(this.showIndex != null){ if (this.showIndex != null) {
this.showIndex = null; this.showIndex = null;
return return;
} }
this.Loop = setTimeout(function() { this.Loop = setTimeout(
this.showIndex = index; function() {
}.bind(this), 300); // 这里的1000是指需要长按的时间,单位为ms this.showIndex = index;
}.bind(this),
300
); // 这里的1000是指需要长按的时间,单位为ms
}, },
touchend(index) { touchend(index) {
// 这个方法主要是用来将每次手指移出之后将计时器清零 // 这个方法主要是用来将每次手指移出之后将计时器清零
......
<template>
<div>
<LHeader :text="text"></LHeader>
<van-search v-model="searchValue" placeholder="搜索" @search="onSearch" />
<van-tabs
v-model="active"
color="#247df7"
title-inactive-colo="#d0d1d1"
title-active-color="#000000"
>
<van-tab title="重大风险">
<risk-big-list></risk-big-list>
</van-tab>
<van-tab title="一般风险">一般风险</van-tab>
</van-tabs>
</div>
</template>
<script>
import LHeader from "@/components/header.vue";
import riskBigList from './riskBigList.vue';
export default {
components: {
LHeader,
riskBigList
},
data() {
return {
text: "风险历史台账",
active: "1",
searchValue: ""
};
},
mounted() {},
methods: {
onSearch(val) {
console.log(val);
}
}
};
</script>
<style lang="less" scoped>
/* @import url(); 引入css类 */
</style>
<template>
<div>
<LHeader :text="text"></LHeader>
<!-- 内容列表 -->
<div class="con-list">
<div class="cell-wrap">
<p>风险上报</p>
<van-cell-group inset v-for="(item, index) in reportList" :key="index">
<van-row gutter="">
<van-col span="7"><span class="field-title">所属工程名称:</span></van-col>
<van-col span="17">{{ item.project }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">风险因素:</span></van-col>
<van-col span="17">{{ item.subject }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">风险源:</span></van-col>
<van-col span="17">{{ item.findTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">事故类型:</span></van-col>
<van-col span="17">{{ item.level }}</van-col>
</van-row>
<!-- 隐藏的字段 -->
<div v-show="reportOpen">
<van-row gutter="">
<van-col span="7"><span class="field-title">风险等级:</span></van-col>
<van-col span="17">{{ item.range }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">风险部位:</span></van-col>
<van-col span="17">{{ item.type }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">管控层级:</span></van-col>
<van-col span="17">{{ item.dangerNum }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">主责部门:</span></van-col>
<van-col span="17">{{ item.source }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">主责人员:</span></van-col>
<van-col span="17">{{ item.source1 }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">定级方式:</span></van-col>
<van-col span="17">{{ item.location }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">技术措施:</span></van-col>
<van-col span="17">{{ item.dangerNum }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">技术措施(附件):</span></van-col>
<van-col span="17">{{ item.describe }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">管理措施:</span></van-col>
<van-col span="17">{{ item.uploaderImg }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">管理措施(附件):</span></van-col>
<van-col span="17">{{ item.uploaderVideo }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">应急措施:</span></van-col>
<van-col span="17">{{ item.expireTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">应急措施(附件):</span></van-col>
<van-col span="17">{{ item.recPeople }}</van-col>
</van-row>
</div>
</van-cell-group>
<!-- 展开 -->
<div class="more" @click="reportReverse">
{{ reportOpenText }}
</div>
</div>
<div class="confirme-wrap">
<p>风险确认</p>
<van-cell-group inset v-for="(item, index) in reportList" :key="index">
<van-row gutter="">
<van-col span="7"><span class="field-title">意见:</span></van-col>
<van-col span="17">{{ item.subject }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">隐患确认信息:</span></van-col
>
<van-col span="17">{{ item.project }}</van-col>
</van-row>
</van-cell-group>
</div>
<div class="journal-wrap">
<p>日志信息</p>
<van-cell-group inset v-for="(item, index) in reportList" :key="index">
<van-steps direction="vertical" :active="999">
<van-step>
<div class="step-wrap">
<van-row>
<van-col span="24"
><div class="info-title">日志信息</div></van-col
>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">审批人:</span></van-col
>
<van-col span="19">首华建设项目</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">节点</span></van-col
>
<van-col span="19">隐患上报</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">结果:</span></van-col
>
<van-col span="19">通过</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">部门:</span></van-col
>
<van-col span="19">首华建设项目部</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">时间:</span></van-col
>
<van-col span="19">2021-10-26 16:30:00</van-col>
</van-row>
</div>
</van-step>
</van-steps>
</van-cell-group>
<!-- 展开 -->
<div class="more" @click="journalReverse">
{{ journalOpenText }}
</div>
</div>
<div class="supervise-wrap">
<p>督办信息</p>
<van-cell-group inset v-for="(item, index) in reportList" :key="index">
<div style="text-align: center;">暂无数据</div>
</van-cell-group>
<!-- 展开 -->
<div class="more" @click="superviseReverse" v-show="false">
{{ superviseOpenText }}
</div>
</div>
</div>
</div>
</template>
<script>
import LHeader from "@/components/header.vue";
export default {
components: {
LHeader
},
data() {
return {
text: "隐患历史台账",
reportOpen: false,
reportOpenText: "展开 ▼",
journalOpen: false,
journalOpenText: "展开 ▼",
superviseOpen: false,
superviseOpenText: "展开 ▼",
reportList: [
{
project: "朝阳区和平街14区简易住宅楼改造项目",
subject: "临时用电施工组织设计未对盾构施工用电进行专项说明。",
findTime: "2021-10-26 16:30:00",
level: "一般隐患A",
range: "城市轨道交通工程",
type: "临时用电",
dangerNum: "0-03-06-0003",
source: "违规活动",
source1: "人的因素",
location: "临时用电",
describe: "没按规定放置插排",
uploaderImg: [],
uploaderVideo: [],
expireTime: "2021-10-26 16:30:00",
recPeople: "张三"
}
],
journalList: []
};
},
mounted() {},
methods: {
// 上报信息显示或隐藏
reportReverse() {
this.reportOpen = !this.reportOpen;
if (this.reportOpen) {
this.reportOpenText = "收起 ▲";
} else {
this.reportOpenText = "展开 ▼";
}
},
// 日志信息显示或隐藏
journalReverse() {
this.journalOpen = !this.journalOpen;
if (this.journalOpen) {
// 显示所有数据
this.journalOpenText = "收起 ▲";
} else {
// 只渲染一条数据
this.journalOpenText = "展开 ▼";
}
},
// 督办信息显示或隐藏
superviseReverse() {
this.superviseOpen = !this.superviseOpen;
if (this.superviseOpen) {
// 显示所有数据
this.superviseOpenText = "收起 ▲";
} else {
// 只渲染一条数据
this.superviseOpenText = "展开 ▼";
}
}
}
};
</script>
<style lang="less" scoped>
/* @import url(); 引入css类 */
.con-list {
padding: 10px 10px .533333rem;
background-color: #f0f1f5;
.cell-wrap {
position: relative;
}
p {
font-size: 0.4rem;
font-weight: 600;
padding-left: 0.16rem;
margin: 0.186667rem 0;
color: #7f7f7f;
}
.van-cell-group--inset {
margin: 0;
margin-bottom: 10px;
padding: 10px;
font-size: 13px;
position: relative;
.van-row {
margin-bottom: .133333rem;
line-height: .64rem;
}
}
.journal-wrap {
position: relative;
}
.supervise-wrap{
position: relative;
}
.info-title {
color: #2980f7;
font-weight: bolder;
}
.field-title {
color: black;
font-weight: bolder;
}
.more {
position: absolute;
bottom: 0.32rem;
right: 15px;
color: #2a80f7;
font-weight: bolder;
z-index: 99;
}
}
</style>
<template>
<div>
<!-- 内容列表 -->
<div class="con-list">
<van-cell-group
inset
v-for="(item, index) in messageList"
:key="index"
@click="read(item)"
@touchstart="touchstart(index, item)"
@touchend.prevent="touchend(index)"
>
<van-row gutter="">
<van-col span="7">所属工程名称:</van-col>
<van-col span="17">{{ item.project }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患项目名称:</van-col>
<van-col span="17">{{ item.subject }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患发现时间:</van-col>
<van-col span="17">{{ item.findTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患级别:</van-col>
<van-col span="17">{{ item.level }}</van-col>
</van-row>
<!-- 长按显示遮罩层 -->
<van-overlay :show="showIndex == index">
<div class="wrapper" @click.stop>
<van-button round type="primary" @touchstart="goDetail(item)"
>详情</van-button
>
</div>
</van-overlay>
</van-cell-group>
</div>
</div>
</template>
<script>
export default {
data() {
return {
messageList: [
{
project: "朝阳区和平街14区简易住宅楼改造项目",
subject: "临时用电施工组织设计未对盾构施工用电进行专项说明。",
findTime: "2021-10-26 16:30:00",
level: "一般隐患A"
}
],
Loop: "", // 定时器
showIndex: null // 是否显示遮罩层
};
},
mounted() {},
methods: {
read() {},
touchstart(index, item) {
clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器
if (this.showIndex != null) {
this.showIndex = null;
return;
}
this.Loop = setTimeout(() => {
this.showIndex = index;
}, 300); // 这里的1000是指需要长按的时间,单位为ms
},
touchend(index) {
// 这个方法主要是用来将每次手指移出之后将计时器清零
clearInterval(this.Loop);
},
// 详情
goDetail(data) {
console.log(data);
this.$router.push("/risk-big-detail");
this.showIndex = null;
},
}
};
</script>
<style lang="less" scoped>
/* @import url(); 引入css类 */
.con-list {
padding: 10px 10px 0;
background-color: #f0f1f5;
.van-cell-group--inset {
margin: 0;
margin-bottom: 10px;
padding: 10px;
font-size: 13px;
position: relative;
.van-row{
margin-bottom: .133333rem;
line-height: .64rem;
}
.van-overlay {
position: absolute;
.wrapper {
display: flex;
align-items: center;
justify-content: space-evenly;
height: 100%;
}
}
}
}
</style>
...@@ -11,18 +11,18 @@ ...@@ -11,18 +11,18 @@
readonly readonly
clickable clickable
name="所属工程名称" name="所属工程名称"
:value="gongcheng" :value="projectName"
label="所属工程名称" label="所属工程名称"
placeholder="请选择" placeholder="请选择"
@click="showGongcheng = true" @click="showProjectName = true"
:rules="[{ required: true, message: '所属工程名称不能为空' }]" :rules="[{ required: true, message: '所属工程名称不能为空' }]"
/> />
<van-popup v-model="showGongcheng" position="bottom"> <van-popup v-model="showProjectName" position="bottom">
<van-picker <van-picker
show-toolbar show-toolbar
:columns="columnsGongcheng" :columns="columnsProjectName"
@confirm="onConGongcheng" @confirm="onConProjectName"
@cancel="showGongcheng = false" @cancel="showProjectName = false"
/> />
</van-popup> </van-popup>
...@@ -275,9 +275,9 @@ export default { ...@@ -275,9 +275,9 @@ export default {
data() { data() {
return { return {
text: "新增风险", text: "新增风险",
gongcheng: "", // 所属工程 projectName: "", // 所属工程
showGongcheng: false, showProjectName: false,
columnsGongcheng: ["工程1", "工程2", "工程3", "工程4"], columnsProjectName: ["工程1", "工程2", "工程3", "工程4"],
factor: "", //风险因素 factor: "", //风险因素
showFactor: false, showFactor: false,
columnsFactor: ["风险因素1", "风险因素2", "风险因素3", "风险因素4"], columnsFactor: ["风险因素1", "风险因素2", "风险因素3", "风险因素4"],
...@@ -317,9 +317,9 @@ export default { ...@@ -317,9 +317,9 @@ export default {
console.log("submit", values); console.log("submit", values);
}, },
// 所属工程名称 // 所属工程名称
onConGongcheng(value) { onConProjectName(value) {
this.gongcheng = value; this.projectName = value;
this.showGongcheng = false; this.showProjectName = false;
}, },
// 风险因素 // 风险因素
onConFactor(value) { onConFactor(value) {
......
<template>
<div>
<LHeader :text="text"></LHeader>
<!-- 内容列表 -->
<div class="con-list">
<div class="cell-wrap">
<p>风险上报</p>
<van-cell-group inset v-for="(item, index) in reportList" :key="index">
<van-row gutter="">
<van-col span="7"
><span class="field-title">所属工程名称:</span></van-col
>
<van-col span="17">{{ item.project }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">风险因素:</span></van-col
>
<van-col span="17">{{ item.subject }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"><span class="field-title">风险源:</span></van-col>
<van-col span="17">{{ item.findTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">事故类型:</span></van-col
>
<van-col span="17">{{ item.level }}</van-col>
</van-row>
<!-- 隐藏的字段 -->
<div v-show="reportOpen">
<van-row gutter="">
<van-col span="7"
><span class="field-title">风险等级:</span></van-col
>
<van-col span="17">{{ item.range }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">风险部位:</span></van-col
>
<van-col span="17">{{ item.type }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">管控层级:</span></van-col
>
<van-col span="17">{{ item.dangerNum }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">主责部门:</span></van-col
>
<van-col span="17">{{ item.source }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">主责人员:</span></van-col
>
<van-col span="17">{{ item.source1 }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">定级方式:</span></van-col
>
<van-col span="17">{{ item.location }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">技术措施:</span></van-col
>
<van-col span="17">{{ item.dangerNum }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">技术措施(附件):</span></van-col
>
<van-col span="17">{{ item.describe }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">管理措施:</span></van-col
>
<van-col span="17">{{ item.uploaderImg }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">管理措施(附件):</span></van-col
>
<van-col span="17">{{ item.uploaderVideo }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">应急措施:</span></van-col
>
<van-col span="17">{{ item.expireTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7"
><span class="field-title">应急措施(附件):</span></van-col
>
<van-col span="17">{{ item.recPeople }}</van-col>
</van-row>
</div>
</van-cell-group>
<!-- 展开 -->
<div class="more" @click="reportReverse">
{{ reportOpenText }}
</div>
</div>
<div class="journal-wrap">
<p>日志信息</p>
<van-cell-group inset v-for="(item, index) in reportList" :key="index">
<van-steps direction="vertical" :active="999">
<van-step>
<div class="step-wrap">
<van-row>
<van-col span="24"
><div class="info-title">日志信息</div></van-col
>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">审批人:</span></van-col
>
<van-col span="19">首华建设项目</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">节点</span></van-col
>
<van-col span="19">隐患上报</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">结果:</span></van-col
>
<van-col span="19">通过</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">部门:</span></van-col
>
<van-col span="19">首华建设项目部</van-col>
</van-row>
<van-row>
<van-col span="5"
><span class="field-title">时间:</span></van-col
>
<van-col span="19">2021-10-26 16:30:00</van-col>
</van-row>
</div>
</van-step>
</van-steps>
</van-cell-group>
<!-- 展开 -->
<div class="more" @click="journalReverse">
{{ journalOpenText }}
</div>
</div>
<div class="supervise-wrap">
<p>督办信息</p>
<van-cell-group inset v-for="(item, index) in reportList" :key="index">
<div style="text-align: center;">暂无数据</div>
</van-cell-group>
<!-- 展开 -->
<div class="more" @click="superviseReverse" v-show="false">
{{ superviseOpenText }}
</div>
</div>
</div>
</div>
</template>
<script>
import LHeader from "@/components/header.vue";
export default {
components: {
LHeader
},
data() {
return {
text: "风险确认详情",
reportOpen: false,
reportOpenText: "展开 ▼",
journalOpen: false,
journalOpenText: "展开 ▼",
superviseOpen: false,
superviseOpenText: "展开 ▼",
reportList: [
{
project: "朝阳区和平街14区简易住宅楼改造项目",
subject: "临时用电施工组织设计未对盾构施工用电进行专项说明。",
findTime: "2021-10-26 16:30:00",
level: "一般隐患A",
range: "城市轨道交通工程",
type: "临时用电",
dangerNum: "0-03-06-0003",
source: "违规活动",
source1: "人的因素",
location: "临时用电",
describe: "没按规定放置插排",
uploaderImg: [],
uploaderVideo: [],
expireTime: "2021-10-26 16:30:00",
recPeople: "张三"
}
],
journalList: []
};
},
mounted() {},
methods: {
// 上报信息显示或隐藏
reportReverse() {
this.reportOpen = !this.reportOpen;
if (this.reportOpen) {
this.reportOpenText = "收起 ▲";
} else {
this.reportOpenText = "展开 ▼";
}
},
// 日志信息显示或隐藏
journalReverse() {
this.journalOpen = !this.journalOpen;
if (this.journalOpen) {
// 显示所有数据
this.journalOpenText = "收起 ▲";
} else {
// 只渲染一条数据
this.journalOpenText = "展开 ▼";
}
},
// 督办信息显示或隐藏
superviseReverse() {
this.superviseOpen = !this.superviseOpen;
if (this.superviseOpen) {
// 显示所有数据
this.superviseOpenText = "收起 ▲";
} else {
// 只渲染一条数据
this.superviseOpenText = "展开 ▼";
}
}
}
};
</script>
<style lang="less" scoped>
/* @import url(); 引入css类 */
.con-list {
padding: 10px 10px 0.533333rem;
background-color: #f0f1f5;
.cell-wrap {
position: relative;
}
p {
font-size: 0.4rem;
font-weight: 600;
padding-left: 0.16rem;
margin: 0.186667rem 0;
color: #7f7f7f;
}
.van-cell-group--inset {
margin: 0;
margin-bottom: 10px;
padding: 10px;
font-size: 13px;
position: relative;
.van-row {
margin-bottom: 0.133333rem;
line-height: 0.64rem;
}
}
.journal-wrap {
position: relative;
}
.supervise-wrap {
position: relative;
}
.info-title {
color: #2980f7;
font-weight: bolder;
}
.field-title {
color: black;
font-weight: bolder;
}
.more {
position: absolute;
bottom: 0.32rem;
right: 15px;
color: #2a80f7;
font-weight: bolder;
z-index: 99;
}
}
</style>
...@@ -10,12 +10,23 @@ ...@@ -10,12 +10,23 @@
@touchstart="touchstart(index, item)" @touchstart="touchstart(index, item)"
@touchend.prevent="touchend(index)" @touchend.prevent="touchend(index)"
> >
<div class="messgae-title">{{ item.noticeTitle }}</div> <van-row gutter="">
<div class="message-content"> <van-col span="7">所属工程名称:</van-col>
{{ item.upcomingUserName }},您好!您有一条来自{{ <van-col span="17">{{ item.project }}</van-col>
item.createUserName </van-row>
}}{{ item.noticeTitle }}相关的待处理任务... <van-row gutter="">
</div> <van-col span="7">隐患项目名称:</van-col>
<van-col span="17">{{ item.subject }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患发现时间:</van-col>
<van-col span="17">{{ item.findTime }}</van-col>
</van-row>
<van-row gutter="">
<van-col span="7">隐患级别:</van-col>
<van-col span="17">{{ item.level }}</van-col>
</van-row>
<!-- 长按显示遮罩层 --> <!-- 长按显示遮罩层 -->
<van-overlay :show="showIndex == index"> <van-overlay :show="showIndex == index">
...@@ -39,10 +50,10 @@ export default { ...@@ -39,10 +50,10 @@ export default {
return { return {
messageList: [ messageList: [
{ {
noticeTitle: "隐患上报消息", project: "朝阳区和平街14区简易住宅楼改造项目",
upcomingUserName: "张某某", subject: "临时用电施工组织设计未对盾构施工用电进行专项说明。",
createUserName: "李某某", findTime: "2021-10-26 16:30:00",
noticeTitle: "重要任务" level: "一般隐患A"
} }
], ],
Loop: "", // 定时器 Loop: "", // 定时器
...@@ -51,17 +62,17 @@ export default { ...@@ -51,17 +62,17 @@ export default {
}, },
mounted() {}, mounted() {},
methods: { methods: {
read(){}, read() {},
touchstart(index, item) { touchstart(index, item) {
clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器 clearTimeout(this.Loop); //再次清空延时器,防止重复注册定时器
if(this.showIndex != null){ if (this.showIndex != null) {
this.showIndex = null; this.showIndex = null;
return return;
} }
this.Loop = setTimeout(() => { this.Loop = setTimeout(() => {
this.showIndex = index this.showIndex = index;
},300); // 这里的1000是指需要长按的时间,单位为ms }, 300); // 这里的1000是指需要长按的时间,单位为ms
}, },
touchend(index) { touchend(index) {
// 这个方法主要是用来将每次手指移出之后将计时器清零 // 这个方法主要是用来将每次手指移出之后将计时器清零
...@@ -69,59 +80,44 @@ export default { ...@@ -69,59 +80,44 @@ export default {
}, },
// 详情 // 详情
goDetail(data){ goDetail(data) {
console.log(data); console.log(data);
this.showIndex = null this.$router.push("/affirm-detail");
this.showIndex = null;
}, },
// 确认 // 确认
goConfirm(data){ goConfirm(data) {
this.$router.push("/risk-affirm") console.log(data);
this.showIndex = null this.$router.push("/risk-affirm");
}, this.showIndex = null;
}
} }
}; };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
/* @import url(); 引入css类 */ /* @import url(); 引入css类 */
// 内容 .con-list {
.con-list { padding: 10px 10px 0;
padding: 10px 10px 0;
background-color: #f0f1f5; background-color: #f0f1f5;
.van-cell-group--inset { .van-cell-group--inset {
margin: 0; margin: 0;
margin-bottom: 10px; margin-bottom: 10px;
padding: 10px; padding: 10px;
font-size: 13px; font-size: 13px;
position: relative; position: relative;
.van-row{
.message-content { margin-bottom: .133333rem;
margin-top: 10px; line-height: .64rem;
}
} .van-overlay {
.van-overlay{ position: absolute;
position: absolute; .wrapper {
.wrapper {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-evenly; justify-content: space-evenly;
height: 100%; height: 100%;
} }
}
} }
} }
.add{ }
width: 1.333333rem;
height: 1.333333rem;
color: white;
font-weight: bold;
font-size: 1.48rem;
background-color: #02a7f0;
text-align: center;
line-height: 1.333333rem;
border-radius: 50%;
position: fixed;
right: .533333rem;
bottom: 1.866667rem;
}
</style> </style>
...@@ -138,6 +138,7 @@ export default { ...@@ -138,6 +138,7 @@ export default {
}, },
{ {
key: "3", key: "3",
path:"/risk-account",
imgUrl: require("@/assets/workbench/risk-account.png"), imgUrl: require("@/assets/workbench/risk-account.png"),
text: "风险台账" text: "风险台账"
} }
...@@ -146,31 +147,38 @@ export default { ...@@ -146,31 +147,38 @@ export default {
// 隐患排查治理 // 隐患排查治理
{ {
key: "1", key: "1",
path: "/danger", // path: "/danger",
// path: "/add-danger", path: "/add-danger",
imgUrl: require("@/assets/workbench/danger-report.png"), imgUrl: require("@/assets/workbench/danger-report.png"),
text: "隐患上报" text: "隐患上报"
}, },
{ {
key: "2", key: "2",
path: "/add-danger",
imgUrl: require("@/assets/workbench/rectification-notice.png"),
text: "上报退回"
},
{
key: "3",
path: "/confirme-danger", path: "/confirme-danger",
imgUrl: require("@/assets/workbench/danger-confirm.png"), imgUrl: require("@/assets/workbench/danger-confirm.png"),
text: "隐患确认" text: "隐患确认"
}, },
{ {
key: "3", key: "4",
path: "/change-danger", path: "/change-danger",
imgUrl: require("@/assets/workbench/danger-rectification.png"), imgUrl: require("@/assets/workbench/danger-rectification.png"),
text: "隐患整改" text: "隐患整改"
}, },
{ {
key: "4", key: "5",
path: "/review-danger", path: "/review-danger",
imgUrl: require("@/assets/workbench/danger-acceptance.png"), imgUrl: require("@/assets/workbench/danger-acceptance.png"),
text: "隐患复查" text: "隐患复查"
}, },
{ {
key: "5", key: "6",
path: "/stand-book",
imgUrl: require("@/assets/workbench/danger-account.png"), imgUrl: require("@/assets/workbench/danger-account.png"),
text: "隐患台账" text: "隐患台账"
} }
...@@ -278,6 +286,7 @@ export default { ...@@ -278,6 +286,7 @@ export default {
} else { } else {
this.finalDangerList = []; this.finalDangerList = [];
} }
// this.finalDangerList = this.dangerList
// 安全监督检查 // 安全监督检查
if (this.powerObj.安全监督检查) { if (this.powerObj.安全监督检查) {
this.finalSafetyCheckList = [...this.safetyCheckList].filter(x => this.finalSafetyCheckList = [...this.safetyCheckList].filter(x =>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment