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

督办 审批页面

parent ce47e9e8
...@@ -26,8 +26,7 @@ import CreateOrder from '../views/CreateOrder.vue' ...@@ -26,8 +26,7 @@ import CreateOrder from '../views/CreateOrder.vue'
Vue.use(VueRouter) Vue.use(VueRouter)
const routes = [ const routes = [{
{
path: '/', path: '/',
name: 'home', name: 'home',
redirect: '/login2' redirect: '/login2'
...@@ -38,7 +37,7 @@ const routes = [ ...@@ -38,7 +37,7 @@ const routes = [
meta: { meta: {
index: 2 index: 2
}, },
component: () => import(/* webpackChunkName: "login" */ '../views/Login.vue'), component: () => import( /* webpackChunkName: "login" */ '../views/Login.vue'),
}, },
{ {
path: '/home', path: '/home',
...@@ -46,7 +45,7 @@ const routes = [ ...@@ -46,7 +45,7 @@ const routes = [
meta: { meta: {
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "home" */ '../views/Home.vue'), component: () => import( /* webpackChunkName: "home" */ '../views/Home.vue'),
}, },
{ {
path: '/cart', path: '/cart',
...@@ -54,7 +53,7 @@ const routes = [ ...@@ -54,7 +53,7 @@ const routes = [
meta: { meta: {
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "cart" */ '../views/Cart.vue'), component: () => import( /* webpackChunkName: "cart" */ '../views/Cart.vue'),
}, },
{ {
path: '/category', path: '/category',
...@@ -62,7 +61,7 @@ const routes = [ ...@@ -62,7 +61,7 @@ const routes = [
meta: { meta: {
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "category" */ '../views/Category.vue'), component: () => import( /* webpackChunkName: "category" */ '../views/Category.vue'),
}, },
{ {
path: '/product-list', path: '/product-list',
...@@ -70,7 +69,7 @@ const routes = [ ...@@ -70,7 +69,7 @@ const routes = [
meta: { meta: {
index: 2 index: 2
}, },
component: () => import(/* webpackChunkName: "product-list" */ '../views/ProductList.vue'), component: () => import( /* webpackChunkName: "product-list" */ '../views/ProductList.vue'),
}, },
{ {
path: '/product/:id', path: '/product/:id',
...@@ -78,7 +77,7 @@ const routes = [ ...@@ -78,7 +77,7 @@ const routes = [
meta: { meta: {
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "product" */ '../views/ProductDetail.vue'), component: () => import( /* webpackChunkName: "product" */ '../views/ProductDetail.vue'),
}, },
{ {
path: '/user', path: '/user',
...@@ -86,7 +85,7 @@ const routes = [ ...@@ -86,7 +85,7 @@ const routes = [
meta: { meta: {
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "user" */ '../views/User.vue'), component: () => import( /* webpackChunkName: "user" */ '../views/User.vue'),
}, },
{ {
path: '/order', path: '/order',
...@@ -94,7 +93,7 @@ const routes = [ ...@@ -94,7 +93,7 @@ const routes = [
meta: { meta: {
index: 2 index: 2
}, },
component: () => import(/* webpackChunkName: "order" */ '../views/Order.vue'), component: () => import( /* webpackChunkName: "order" */ '../views/Order.vue'),
}, },
{ {
path: '/order-detail', path: '/order-detail',
...@@ -102,7 +101,7 @@ const routes = [ ...@@ -102,7 +101,7 @@ const routes = [
meta: { meta: {
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "order-detail" */ '../views/OrderDetail.vue'), component: () => import( /* webpackChunkName: "order-detail" */ '../views/OrderDetail.vue'),
}, },
{ {
path: '/setting', path: '/setting',
...@@ -110,7 +109,7 @@ const routes = [ ...@@ -110,7 +109,7 @@ const routes = [
meta: { meta: {
index: 2 index: 2
}, },
component: () => import(/* webpackChunkName: "setting" */ '../views/Setting.vue'), component: () => import( /* webpackChunkName: "setting" */ '../views/Setting.vue'),
}, },
{ {
path: '/address', path: '/address',
...@@ -118,7 +117,7 @@ const routes = [ ...@@ -118,7 +117,7 @@ const routes = [
meta: { meta: {
index: 2 index: 2
}, },
component: () => import(/* webpackChunkName: "address" */ '../views/Address.vue'), component: () => import( /* webpackChunkName: "address" */ '../views/Address.vue'),
}, },
{ {
path: '/address-edit', path: '/address-edit',
...@@ -126,7 +125,7 @@ const routes = [ ...@@ -126,7 +125,7 @@ const routes = [
meta: { meta: {
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "address-edit" */ '../views/AddressEdit.vue'), component: () => import( /* webpackChunkName: "address-edit" */ '../views/AddressEdit.vue'),
}, },
{ {
path: '/about', path: '/about',
...@@ -134,7 +133,7 @@ const routes = [ ...@@ -134,7 +133,7 @@ const routes = [
meta: { meta: {
index: 2 index: 2
}, },
component: () => import(/* webpackChunkName: "about" */ '../views/About.vue'), component: () => import( /* webpackChunkName: "about" */ '../views/About.vue'),
}, },
{ {
path: '/create-order', path: '/create-order',
...@@ -142,88 +141,88 @@ const routes = [ ...@@ -142,88 +141,88 @@ const routes = [
meta: { meta: {
index: 2 index: 2
}, },
component: () => import(/* webpackChunkName: "create-order" */ '../views/CreateOrder.vue'), component: () => import( /* webpackChunkName: "create-order" */ '../views/CreateOrder.vue'),
}, },
{ {
path: '/checked', path: '/checked',
name: 'checked', name: 'checked',
meta: { meta: {
title:'检查执行', title: '检查执行',
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "create-order" */ '../views/checked'), component: () => import( /* webpackChunkName: "create-order" */ '../views/checked'),
}, },
{ {
path: '/problem', path: '/problem',
name: 'problem', name: 'problem',
meta: { meta: {
title:'问题上报', title: '问题上报',
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "create-order" */ '../views/checked/problem'), component: () => import( /* webpackChunkName: "create-order" */ '../views/checked/problem'),
}, },
{ {
path: '/list', path: '/list',
name: 'list', name: 'list',
meta: { meta: {
title:'检查问题', title: '检查问题',
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "create-order" */ '../views/checked/problem/list'), component: () => import( /* webpackChunkName: "create-order" */ '../views/checked/problem/list'),
}, },
{ {
path: '/note', path: '/note',
name: 'note', name: 'note',
meta: { meta: {
title:'问题记录', title: '问题记录',
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "create-order" */ '../views/checked/problem/note'), component: () => import( /* webpackChunkName: "create-order" */ '../views/checked/problem/note'),
}, },
{ {
path: '/formwork', path: '/formwork',
name: 'formwork', name: 'formwork',
meta: { meta: {
title:'问题上报表', title: '问题上报表',
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "create-order" */ '../views/checked/problem/formwork'), component: () => import( /* webpackChunkName: "create-order" */ '../views/checked/problem/formwork'),
}, },
{ {
path: '/correct', path: '/correct',
name: 'correct', name: 'correct',
meta: { meta: {
title:'检查记录', title: '检查记录',
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "create-order" */ '../views/correct'), component: () => import( /* webpackChunkName: "create-order" */ '../views/correct'),
}, },
{ {
path: '/notice', path: '/notice',
name: 'notice', name: 'notice',
meta: { meta: {
title:'整改通知', title: '整改通知',
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "create-order" */ '../views/notice'), component: () => import( /* webpackChunkName: "create-order" */ '../views/notice'),
}, },
{ {
path: '/noticeList', path: '/noticeList',
name: 'noticeList', name: 'noticeList',
meta: { meta: {
title:'整改通知管理列表', title: '整改通知管理列表',
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "create-order" */ '../views/notice/noticeList'), component: () => import( /* webpackChunkName: "create-order" */ '../views/notice/noticeList'),
}, },
{ {
path: '/sign', path: '/sign',
name: 'sign', name: 'sign',
meta: { meta: {
title:'电子签名', title: '电子签名',
index: 3 index: 3
}, },
component: () => import(/* webpackChunkName: "create-order" */ '../views/notice/noticeList/sign'), component: () => import( /* webpackChunkName: "create-order" */ '../views/notice/noticeList/sign'),
}, },
// 登录页 // 登录页
{ {
...@@ -232,7 +231,7 @@ const routes = [ ...@@ -232,7 +231,7 @@ const routes = [
meta: { meta: {
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/Login2.vue'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/Login2.vue'),
}, },
// 消息中心 // 消息中心
{ {
...@@ -241,7 +240,7 @@ const routes = [ ...@@ -241,7 +240,7 @@ const routes = [
meta: { meta: {
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/messageCenter'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/messageCenter'),
}, },
// 安全工作台页面 // 安全工作台页面
{ {
...@@ -250,7 +249,7 @@ const routes = [ ...@@ -250,7 +249,7 @@ const routes = [
meta: { meta: {
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/saveWorkbench'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/saveWorkbench'),
}, },
// 我的地盘页面 // 我的地盘页面
{ {
...@@ -259,7 +258,7 @@ const routes = [ ...@@ -259,7 +258,7 @@ const routes = [
meta: { meta: {
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/my'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/my'),
}, },
...@@ -267,77 +266,77 @@ const routes = [ ...@@ -267,77 +266,77 @@ const routes = [
path: '/add-danger', path: '/add-danger',
name: 'add-danger', name: 'add-danger',
meta: { meta: {
title:'新增隐患', title: '新增隐患',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/addDanger/addDanger'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/addDanger/addDanger'),
}, },
{ {
path: '/choose-people', path: '/choose-people',
name: 'choose-people', name: 'choose-people',
meta: { meta: {
title:'新增隐患', title: '新增隐患',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/addDanger/manyChoosePeo'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/addDanger/manyChoosePeo'),
}, },
{ {
path: '/report-return', path: '/report-return',
name: 'report-return', name: 'report-return',
meta: { meta: {
title:'隐患上报已退回', title: '隐患上报已退回',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/reportReturn'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/reportReturn'),
}, },
{ {
path: '/confirme-danger', path: '/confirme-danger',
name: 'confirme-danger', name: 'confirme-danger',
meta: { meta: {
title:'隐患确认', title: '隐患确认',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/confirmeDanger'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/confirmeDanger'),
}, },
{ {
path: '/affirm-danger', path: '/affirm-danger',
name: 'affirm-danger', name: 'affirm-danger',
meta: { meta: {
title:'隐患确认表单', title: '隐患确认表单',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/confirmeDanger/confirmeDanger'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/confirmeDanger/confirmeDanger'),
}, },
{ {
path: '/change-danger', path: '/change-danger',
name: 'change-danger', name: 'change-danger',
meta: { meta: {
title:'隐患整改', title: '隐患整改',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/changeDanger'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/changeDanger'),
}, },
{ {
path: '/change-info', path: '/change-info',
name: 'change-info', name: 'change-info',
meta: { meta: {
title:'隐患整改表单', title: '隐患整改表单',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/changeDanger/changeInfo'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/changeDanger/changeInfo'),
}, },
{ {
path: '/review-danger', path: '/review-danger',
name: 'review-danger', name: 'review-danger',
meta: { meta: {
title:'隐患复查', title: '隐患复查',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger'),
}, },
...@@ -345,56 +344,97 @@ const routes = [ ...@@ -345,56 +344,97 @@ const routes = [
path: '/review-add', path: '/review-add',
name: 'review-add', name: 'review-add',
meta: { meta: {
title:'隐患复查新增', title: '隐患复查新增',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger/reviewAdd'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger/reviewAdd'),
}, },
{ {
path: '/stand-book', path: '/stand-book',
name: 'stand-book', name: 'stand-book',
meta: { meta: {
title:'隐患历史台账', title: '隐患历史台账',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/standBook'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/standBook'),
}, },
{ {
path: '/normal-detail', path: '/normal-detail',
name: 'normal-detail', name: 'normal-detail',
meta: { meta: {
title:'隐患历史台账详情', title: '隐患历史台账详情',
index: 1
},
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/standBook/normalDetail'),
},
// 隐患督办列表
{
path: '/supervise-danger',
name: 'supervise-danger',
meta: {
title: '隐患督办',
index: 1
},
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/superviseDanger'),
},
// 重大隐患列表
{
path: '/major-danger',
name: 'major-danger',
meta: {
title: '重大隐患',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/standBook/normalDetail'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/majorDanger'),
}, },
// 延期审批
{
path: '/delay-approval',
name: 'delay-approval',
meta: {
title: '延期审批',
index: 1
},
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/delayApproval'),
},
// 项目经理督办
{
path: '/manager-danger',
name: 'manager-danger',
meta: {
title: '项目经理督办',
index: 1
},
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/managerDanger'),
},
{ {
path: '/risk', path: '/risk',
name: 'risk', name: 'risk',
meta: { meta: {
title:'风险', title: '风险',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk'),
}, },
{ {
path: '/risk-add', path: '/risk-add',
name: 'risk-add', name: 'risk-add',
meta: { meta: {
title:'风险上报', title: '风险上报',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAdd'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAdd'),
}, },
{ {
path: '/risk-return', path: '/risk-return',
name: 'risk-return', name: 'risk-return',
meta: { meta: {
title:'风险上报', title: '风险上报',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskReturn'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskReturn'),
}, },
...@@ -402,46 +442,46 @@ const routes = [ ...@@ -402,46 +442,46 @@ const routes = [
path: '/risk-confirme', path: '/risk-confirme',
name: 'risk-confirme', name: 'risk-confirme',
meta: { meta: {
title:'风险确认', title: '风险确认',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme'),
}, },
{ {
path: '/risk-affirm', path: '/risk-affirm',
name: 'risk-affirm', name: 'risk-affirm',
meta: { meta: {
title:'风险确认', title: '风险确认',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme/riskAffirm'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme/riskAffirm'),
}, },
{ {
path: '/affirm-detail', path: '/affirm-detail',
name: 'affirm-detail', name: 'affirm-detail',
meta: { meta: {
title:'风险确认详情', title: '风险确认详情',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme/affirmDetail'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme/affirmDetail'),
}, },
{ {
path: '/risk-account', path: '/risk-account',
name: 'risk-account', name: 'risk-account',
meta: { meta: {
title:'风险历史台账', title: '风险历史台账',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAccount'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAccount'),
}, },
{ {
path: '/risk-big-detail', path: '/risk-big-detail',
name: 'risk-big-detail', name: 'risk-big-detail',
meta: { meta: {
title:'风险历史台账', title: '风险历史台账',
index: 1 index: 1
}, },
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAccount/riskBigDetail'), component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAccount/riskBigDetail'),
}, },
......
<template>
<div>
<LHeader :text="text"></LHeader>
<van-search v-model="searchValue" placeholder="搜索" @search="onSearch" />
<!-- 内容列表 -->
<!-- 接口对接4 START -->
<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.proId }}</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>
<!-- *接口对接4 END -->
<!-- 长按显示遮罩层 -->
<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>
import LHeader from "@/components/header.vue";
import { postriskBook } from "@/service/risk";
/*接口对接2 START*/
// 例子:
// import {
// getFormList,
// postHdTyp,
// postHdName,
// postHdInventories,
// postHdRiskSource,
// postHdShowPeople,
// postHdReportAdd,
// dangerReturnEcho,
// } from "@/service/danger";
/*接口对接2 END*/
export default {
components: {
LHeader,
},
data() {
return {
text: "延期审批",
searchValue: "",
messageList: [],
Loop: "", // 定时器
showIndex: null // 是否显示遮罩层
};
},
created() {
this.getList();
},
methods: {
getList() {
/*接口对接3 START*/
// 例子:
this.$toast.loading({
message: "加载中...",
forbidClick: true,
loadingType: "spinner",
duration: 0
});
postriskBook("/riskMain/doneList")
.then(res => {
this.$toast.clear();
this.messageList = res.rows
})
.catch(() => {
this.$toast.clear();
this.$toast.fail("加载失败,请稍后再试");
});
/*接口对接3 END*/
},
onSearch(val) {
console.log(val);
},
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({
name: "risk-big-detail",
params: {
id: data.businessId
}
});
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>
<template>
<div>
<LHeader :text="text"></LHeader>
<van-search v-model="searchValue" placeholder="搜索" @search="onSearch" />
<!-- 内容列表 -->
<!-- 接口对接4 START -->
<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.proId }}</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>
<!-- *接口对接4 END -->
<!-- 长按显示遮罩层 -->
<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>
import LHeader from "@/components/header.vue";
import { postriskBook } from "@/service/risk";
/*接口对接2 START*/
// 例子:
// import {
// getFormList,
// postHdTyp,
// postHdName,
// postHdInventories,
// postHdRiskSource,
// postHdShowPeople,
// postHdReportAdd,
// dangerReturnEcho,
// } from "@/service/danger";
/*接口对接2 END*/
export default {
components: {
LHeader,
},
data() {
return {
text: "重大隐患",
searchValue: "",
messageList: [],
Loop: "", // 定时器
showIndex: null // 是否显示遮罩层
};
},
created() {
this.getList();
},
methods: {
getList() {
/*接口对接3 START*/
// 例子:
this.$toast.loading({
message: "加载中...",
forbidClick: true,
loadingType: "spinner",
duration: 0
});
postriskBook("/riskMain/doneList")
.then(res => {
this.$toast.clear();
this.messageList = res.rows
})
.catch(() => {
this.$toast.clear();
this.$toast.fail("加载失败,请稍后再试");
});
/*接口对接3 END*/
},
onSearch(val) {
console.log(val);
},
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({
name: "risk-big-detail",
params: {
id: data.businessId
}
});
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>
<template>
<div>
<LHeader :text="text"></LHeader>
<van-search v-model="searchValue" placeholder="搜索" @search="onSearch" />
<!-- 内容列表 -->
<!-- 接口对接4 START -->
<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.proId }}</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>
<!-- *接口对接4 END -->
<!-- 长按显示遮罩层 -->
<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>
import LHeader from "@/components/header.vue";
import { postriskBook } from "@/service/risk";
/*接口对接2 START*/
// 例子:
// import {
// getFormList,
// postHdTyp,
// postHdName,
// postHdInventories,
// postHdRiskSource,
// postHdShowPeople,
// postHdReportAdd,
// dangerReturnEcho,
// } from "@/service/danger";
/*接口对接2 END*/
export default {
components: {
LHeader,
},
data() {
return {
text: "项目经理督",
searchValue: "",
messageList: [],
Loop: "", // 定时器
showIndex: null // 是否显示遮罩层
};
},
created() {
this.getList();
},
methods: {
getList() {
/*接口对接3 START*/
// 例子:
this.$toast.loading({
message: "加载中...",
forbidClick: true,
loadingType: "spinner",
duration: 0
});
postriskBook("/riskMain/doneList")
.then(res => {
this.$toast.clear();
this.messageList = res.rows
})
.catch(() => {
this.$toast.clear();
this.$toast.fail("加载失败,请稍后再试");
});
/*接口对接3 END*/
},
onSearch(val) {
console.log(val);
},
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({
name: "risk-big-detail",
params: {
id: data.businessId
}
});
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>
...@@ -40,6 +40,7 @@ ...@@ -40,6 +40,7 @@
<van-col span="19">{{ item.taskName }}</van-col> <van-col span="19">{{ item.taskName }}</van-col>
</van-row> </van-row>
<!-- 长按显示遮罩层 --> <!-- 长按显示遮罩层 -->
<van-overlay :show="showIndex == index"> <van-overlay :show="showIndex == index">
<div class="wrapper" @click.stop> <div class="wrapper" @click.stop>
...@@ -58,7 +59,7 @@ import LHeader from "@/components/header.vue"; ...@@ -58,7 +59,7 @@ import LHeader from "@/components/header.vue";
import { dangerStandBook } from "@/service/danger"; import { dangerStandBook } from "@/service/danger";
export default { export default {
components: { components: {
LHeader LHeader,
}, },
data() { data() {
return { return {
...@@ -115,25 +116,22 @@ export default { ...@@ -115,25 +116,22 @@ export default {
console.log(data); console.log(data);
this.$router.push({ this.$router.push({
name: "normal-detail", name: "normal-detail",
params: { params:{
id: data.businessId id: data.businessId
} }
}); });
this.showIndex = null; this.showIndex = null;
} },
}, },
filters: { filters: {
formatTime: function(row) { formatTime: function(row) {
if (row.dueDate <= row.rectificationTime) { if (row.dueDate <= row.rectificationTime) {
return "超期"; return "超期"
} else if ( } else if (row.dueDate >= row.rectificationTime && row.dueDate - 259200000 <= row.rectificationTime) {
row.dueDate >= row.rectificationTime &&
row.dueDate - 259200000 <= row.rectificationTime
) {
//三天 //三天
return "临期"; return "临期"
} else { } else {
return "正常"; return "正常"
} }
} }
} }
...@@ -142,7 +140,7 @@ export default { ...@@ -142,7 +140,7 @@ export default {
<style lang="less" scoped> <style lang="less" scoped>
/* @import url(); 引入css类 */ /* @import url(); 引入css类 */
.con-list { .con-list {
padding: 10px 10px 0.533333rem; padding: 10px 10px .533333rem;
background-color: #f0f1f5; background-color: #f0f1f5;
.van-cell-group--inset { .van-cell-group--inset {
margin: 0; margin: 0;
...@@ -150,9 +148,9 @@ export default { ...@@ -150,9 +148,9 @@ export default {
padding: 10px; padding: 10px;
font-size: 13px; font-size: 13px;
position: relative; position: relative;
.van-row { .van-row{
margin-bottom: 0.133333rem; margin-bottom: .133333rem;
line-height: 0.64rem; 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" />
<!-- 内容列表 -->
<!-- 接口对接4 START -->
<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.proId }}</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>
<!-- *接口对接4 END -->
<!-- 长按显示遮罩层 -->
<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>
import LHeader from "@/components/header.vue";
import { postriskBook } from "@/service/risk";
/*接口对接2 START*/
// 例子:
// import {
// getFormList,
// postHdTyp,
// postHdName,
// postHdInventories,
// postHdRiskSource,
// postHdShowPeople,
// postHdReportAdd,
// dangerReturnEcho,
// } from "@/service/danger";
/*接口对接2 END*/
export default {
components: {
LHeader,
},
data() {
return {
text: "隐患督办",
searchValue: "",
messageList: [],
Loop: "", // 定时器
showIndex: null // 是否显示遮罩层
};
},
created() {
this.getList();
},
methods: {
getList() {
/*接口对接3 START*/
// 例子:
this.$toast.loading({
message: "加载中...",
forbidClick: true,
loadingType: "spinner",
duration: 0
});
postriskBook("/riskMain/doneList")
.then(res => {
this.$toast.clear();
this.messageList = res.rows
})
.catch(() => {
this.$toast.clear();
this.$toast.fail("加载失败,请稍后再试");
});
/*接口对接3 END*/
},
onSearch(val) {
console.log(val);
},
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({
name: "risk-big-detail",
params: {
id: data.businessId
}
});
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>
...@@ -175,7 +175,31 @@ export default { ...@@ -175,7 +175,31 @@ export default {
path: "/stand-book", path: "/stand-book",
imgUrl: require("@/assets/workbench/danger-account.png"), imgUrl: require("@/assets/workbench/danger-account.png"),
text: "隐患台账" text: "隐患台账"
} },
{
key: "7",
path: "/major-danger",
imgUrl: require("@/assets/workbench/retification-acceptance.png"),
text: "重大隐患"
},
{
key: "8",
path: "/major-danger",
imgUrl: require("@/assets/workbench/inspect-plane.png"),
text: "延期审批"
},
{
key: "9",
path: "/supervise-danger",
imgUrl: require("@/assets/workbench/retification-acceptance.png"),
text: "隐患督办"
},
{
key: "10",
path: "/manager-danger",
imgUrl: require("@/assets/workbench/inspect-plane.png"),
text: "经理督办"
},
], ],
safetyCheckList: [ safetyCheckList: [
// 安全监督检查 // 安全监督检查
......
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