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

督办 审批页面

parent ce47e9e8
......@@ -26,8 +26,7 @@ import CreateOrder from '../views/CreateOrder.vue'
Vue.use(VueRouter)
const routes = [
{
const routes = [{
path: '/',
name: 'home',
redirect: '/login2'
......@@ -38,7 +37,7 @@ const routes = [
meta: {
index: 2
},
component: () => import(/* webpackChunkName: "login" */ '../views/Login.vue'),
component: () => import( /* webpackChunkName: "login" */ '../views/Login.vue'),
},
{
path: '/home',
......@@ -46,7 +45,7 @@ const routes = [
meta: {
index: 1
},
component: () => import(/* webpackChunkName: "home" */ '../views/Home.vue'),
component: () => import( /* webpackChunkName: "home" */ '../views/Home.vue'),
},
{
path: '/cart',
......@@ -54,7 +53,7 @@ const routes = [
meta: {
index: 1
},
component: () => import(/* webpackChunkName: "cart" */ '../views/Cart.vue'),
component: () => import( /* webpackChunkName: "cart" */ '../views/Cart.vue'),
},
{
path: '/category',
......@@ -62,7 +61,7 @@ const routes = [
meta: {
index: 1
},
component: () => import(/* webpackChunkName: "category" */ '../views/Category.vue'),
component: () => import( /* webpackChunkName: "category" */ '../views/Category.vue'),
},
{
path: '/product-list',
......@@ -70,7 +69,7 @@ const routes = [
meta: {
index: 2
},
component: () => import(/* webpackChunkName: "product-list" */ '../views/ProductList.vue'),
component: () => import( /* webpackChunkName: "product-list" */ '../views/ProductList.vue'),
},
{
path: '/product/:id',
......@@ -78,7 +77,7 @@ const routes = [
meta: {
index: 3
},
component: () => import(/* webpackChunkName: "product" */ '../views/ProductDetail.vue'),
component: () => import( /* webpackChunkName: "product" */ '../views/ProductDetail.vue'),
},
{
path: '/user',
......@@ -86,7 +85,7 @@ const routes = [
meta: {
index: 1
},
component: () => import(/* webpackChunkName: "user" */ '../views/User.vue'),
component: () => import( /* webpackChunkName: "user" */ '../views/User.vue'),
},
{
path: '/order',
......@@ -94,7 +93,7 @@ const routes = [
meta: {
index: 2
},
component: () => import(/* webpackChunkName: "order" */ '../views/Order.vue'),
component: () => import( /* webpackChunkName: "order" */ '../views/Order.vue'),
},
{
path: '/order-detail',
......@@ -102,7 +101,7 @@ const routes = [
meta: {
index: 3
},
component: () => import(/* webpackChunkName: "order-detail" */ '../views/OrderDetail.vue'),
component: () => import( /* webpackChunkName: "order-detail" */ '../views/OrderDetail.vue'),
},
{
path: '/setting',
......@@ -110,7 +109,7 @@ const routes = [
meta: {
index: 2
},
component: () => import(/* webpackChunkName: "setting" */ '../views/Setting.vue'),
component: () => import( /* webpackChunkName: "setting" */ '../views/Setting.vue'),
},
{
path: '/address',
......@@ -118,7 +117,7 @@ const routes = [
meta: {
index: 2
},
component: () => import(/* webpackChunkName: "address" */ '../views/Address.vue'),
component: () => import( /* webpackChunkName: "address" */ '../views/Address.vue'),
},
{
path: '/address-edit',
......@@ -126,7 +125,7 @@ const routes = [
meta: {
index: 3
},
component: () => import(/* webpackChunkName: "address-edit" */ '../views/AddressEdit.vue'),
component: () => import( /* webpackChunkName: "address-edit" */ '../views/AddressEdit.vue'),
},
{
path: '/about',
......@@ -134,7 +133,7 @@ const routes = [
meta: {
index: 2
},
component: () => import(/* webpackChunkName: "about" */ '../views/About.vue'),
component: () => import( /* webpackChunkName: "about" */ '../views/About.vue'),
},
{
path: '/create-order',
......@@ -142,88 +141,88 @@ const routes = [
meta: {
index: 2
},
component: () => import(/* webpackChunkName: "create-order" */ '../views/CreateOrder.vue'),
component: () => import( /* webpackChunkName: "create-order" */ '../views/CreateOrder.vue'),
},
{
path: '/checked',
name: 'checked',
meta: {
title:'检查执行',
index: 3
title: '检查执行',
index: 3
},
component: () => import(/* webpackChunkName: "create-order" */ '../views/checked'),
component: () => import( /* webpackChunkName: "create-order" */ '../views/checked'),
},
{
path: '/problem',
name: 'problem',
meta: {
title:'问题上报',
index: 3
title: '问题上报',
index: 3
},
component: () => import(/* webpackChunkName: "create-order" */ '../views/checked/problem'),
component: () => import( /* webpackChunkName: "create-order" */ '../views/checked/problem'),
},
{
path: '/list',
name: 'list',
meta: {
title:'检查问题',
index: 3
title: '检查问题',
index: 3
},
component: () => import(/* webpackChunkName: "create-order" */ '../views/checked/problem/list'),
component: () => import( /* webpackChunkName: "create-order" */ '../views/checked/problem/list'),
},
{
path: '/note',
name: 'note',
meta: {
title:'问题记录',
index: 3
title: '问题记录',
index: 3
},
component: () => import(/* webpackChunkName: "create-order" */ '../views/checked/problem/note'),
component: () => import( /* webpackChunkName: "create-order" */ '../views/checked/problem/note'),
},
{
path: '/formwork',
name: 'formwork',
meta: {
title:'问题上报表',
index: 3
title: '问题上报表',
index: 3
},
component: () => import(/* webpackChunkName: "create-order" */ '../views/checked/problem/formwork'),
component: () => import( /* webpackChunkName: "create-order" */ '../views/checked/problem/formwork'),
},
{
path: '/correct',
name: 'correct',
meta: {
title:'检查记录',
index: 3
title: '检查记录',
index: 3
},
component: () => import(/* webpackChunkName: "create-order" */ '../views/correct'),
component: () => import( /* webpackChunkName: "create-order" */ '../views/correct'),
},
{
path: '/notice',
name: 'notice',
meta: {
title:'整改通知',
index: 3
title: '整改通知',
index: 3
},
component: () => import(/* webpackChunkName: "create-order" */ '../views/notice'),
component: () => import( /* webpackChunkName: "create-order" */ '../views/notice'),
},
{
path: '/noticeList',
name: 'noticeList',
meta: {
title:'整改通知管理列表',
index: 3
title: '整改通知管理列表',
index: 3
},
component: () => import(/* webpackChunkName: "create-order" */ '../views/notice/noticeList'),
component: () => import( /* webpackChunkName: "create-order" */ '../views/notice/noticeList'),
},
{
path: '/sign',
name: 'sign',
meta: {
title:'电子签名',
index: 3
title: '电子签名',
index: 3
},
component: () => import(/* webpackChunkName: "create-order" */ '../views/notice/noticeList/sign'),
component: () => import( /* webpackChunkName: "create-order" */ '../views/notice/noticeList/sign'),
},
// 登录页
{
......@@ -232,16 +231,16 @@ const routes = [
meta: {
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/Login2.vue'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/Login2.vue'),
},
// 消息中心
{
{
path: '/message-center',
name: 'message-center',
meta: {
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/messageCenter'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/messageCenter'),
},
// 安全工作台页面
{
......@@ -250,7 +249,7 @@ const routes = [
meta: {
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/saveWorkbench'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/saveWorkbench'),
},
// 我的地盘页面
{
......@@ -259,7 +258,7 @@ const routes = [
meta: {
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/my'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/my'),
},
......@@ -267,192 +266,233 @@ const routes = [
path: '/add-danger',
name: 'add-danger',
meta: {
title:'新增隐患',
title: '新增隐患',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/addDanger/addDanger'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/addDanger/addDanger'),
},
{
path: '/choose-people',
name: 'choose-people',
meta: {
title:'新增隐患',
title: '新增隐患',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/addDanger/manyChoosePeo'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/addDanger/manyChoosePeo'),
},
{
path: '/report-return',
name: 'report-return',
meta: {
title:'隐患上报已退回',
title: '隐患上报已退回',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/reportReturn'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/reportReturn'),
},
{
path: '/confirme-danger',
name: 'confirme-danger',
meta: {
title:'隐患确认',
title: '隐患确认',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/confirmeDanger'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/confirmeDanger'),
},
{
path: '/affirm-danger',
name: 'affirm-danger',
meta: {
title:'隐患确认表单',
title: '隐患确认表单',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/confirmeDanger/confirmeDanger'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/confirmeDanger/confirmeDanger'),
},
{
path: '/change-danger',
name: 'change-danger',
meta: {
title:'隐患整改',
title: '隐患整改',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/changeDanger'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/changeDanger'),
},
{
path: '/change-info',
name: 'change-info',
meta: {
title:'隐患整改表单',
title: '隐患整改表单',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/changeDanger/changeInfo'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/changeDanger/changeInfo'),
},
{
path: '/review-danger',
name: 'review-danger',
meta: {
title:'隐患复查',
title: '隐患复查',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger'),
},
{
path: '/review-add',
name: 'review-add',
meta: {
title:'隐患复查新增',
title: '隐患复查新增',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger/reviewAdd'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/reviewDanger/reviewAdd'),
},
{
path: '/stand-book',
name: 'stand-book',
meta: {
title:'隐患历史台账',
title: '隐患历史台账',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/danger/standBook'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/standBook'),
},
{
path: '/normal-detail',
name: 'normal-detail',
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
},
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/standBook/normalDetail'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/danger/managerDanger'),
},
{
path: '/risk',
name: 'risk',
meta: {
title:'风险',
title: '风险',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk'),
},
{
path: '/risk-add',
name: 'risk-add',
meta: {
title:'风险上报',
title: '风险上报',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAdd'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAdd'),
},
{
path: '/risk-return',
name: 'risk-return',
meta: {
title:'风险上报',
title: '风险上报',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskReturn'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskReturn'),
},
{
path: '/risk-confirme',
name: 'risk-confirme',
meta: {
title:'风险确认',
title: '风险确认',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme'),
},
{
path: '/risk-affirm',
name: 'risk-affirm',
meta: {
title:'风险确认',
title: '风险确认',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme/riskAffirm'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme/riskAffirm'),
},
{
path: '/affirm-detail',
name: 'affirm-detail',
meta: {
title:'风险确认详情',
title: '风险确认详情',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme/affirmDetail'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskConfirme/affirmDetail'),
},
{
path: '/risk-account',
name: 'risk-account',
meta: {
title:'风险历史台账',
title: '风险历史台账',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAccount'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAccount'),
},
{
path: '/risk-big-detail',
name: 'risk-big-detail',
meta: {
title:'风险历史台账',
title: '风险历史台账',
index: 1
},
component: () => import(/* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAccount/riskBigDetail'),
component: () => import( /* webpackChunkName: "SaveWorkbench" */ '../views/risk/riskAccount/riskBigDetail'),
},
]
const router = new VueRouter({
......
<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 @@
<van-col span="19">{{ item.taskName }}</van-col>
</van-row>
<!-- 长按显示遮罩层 -->
<van-overlay :show="showIndex == index">
<div class="wrapper" @click.stop>
......@@ -58,7 +59,7 @@ import LHeader from "@/components/header.vue";
import { dangerStandBook } from "@/service/danger";
export default {
components: {
LHeader
LHeader,
},
data() {
return {
......@@ -114,27 +115,24 @@ export default {
goDetail(data) {
console.log(data);
this.$router.push({
name: "normal-detail",
params: {
id: data.businessId
}
name: "normal-detail",
params:{
id: data.businessId
}
});
this.showIndex = null;
}
},
},
filters: {
formatTime: function(row) {
if (row.dueDate <= row.rectificationTime) {
return "超期";
} else if (
row.dueDate >= row.rectificationTime &&
row.dueDate - 259200000 <= row.rectificationTime
) {
//三天
return "临期";
} else {
return "正常";
}
if (row.dueDate <= row.rectificationTime) {
return "超期"
} else if (row.dueDate >= row.rectificationTime && row.dueDate - 259200000 <= row.rectificationTime) {
//三天
return "临期"
} else {
return "正常"
}
}
}
};
......@@ -142,7 +140,7 @@ export default {
<style lang="less" scoped>
/* @import url(); 引入css类 */
.con-list {
padding: 10px 10px 0.533333rem;
padding: 10px 10px .533333rem;
background-color: #f0f1f5;
.van-cell-group--inset {
margin: 0;
......@@ -150,9 +148,9 @@ export default {
padding: 10px;
font-size: 13px;
position: relative;
.van-row {
margin-bottom: 0.133333rem;
line-height: 0.64rem;
.van-row{
margin-bottom: .133333rem;
line-height: .64rem;
}
.van-overlay {
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 {
path: "/stand-book",
imgUrl: require("@/assets/workbench/danger-account.png"),
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: [
// 安全监督检查
......
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