261 lines
7.2 KiB
Vue
261 lines
7.2 KiB
Vue
<template>
|
|
<view>
|
|
<u-sticky>
|
|
<HeaderNav title="功能"></HeaderNav>
|
|
</u-sticky>
|
|
<view class="apply-page">
|
|
<!-- <view class="card-common">-->
|
|
<!-- <view class="card-title">-->
|
|
<!-- <text class="title">常用菜单</text>-->
|
|
<!-- </view>-->
|
|
<!-- <view class="card-body">-->
|
|
<!-- <view class="item" @click="handleNavigateTo('/pages/apply/subPages/BS/delayApply')">
|
|
<image src="/static/encrypted.png"></image>
|
|
<view>
|
|
<text class="text">延期申请</text>
|
|
</view>
|
|
</view> -->
|
|
|
|
<!-- <view class="item" @click="handleNavigateTo('/pages/apply/subPages/FM/scheduling')">-->
|
|
<!-- <image src="/static/encrypted.png"></image>-->
|
|
<!-- <view>-->
|
|
<!-- <text class="text">排班</text>-->
|
|
<!-- </view>-->
|
|
<!-- </view>-->
|
|
<!--<view class="item" @click="handleNavigateTo('/pages/apply/subPages/riskReport')">
|
|
<image src="/static/encrypted.png"></image>
|
|
<view>
|
|
<text class="text">隐患上报</text>
|
|
</view>
|
|
</view> -->
|
|
<!-- <view class="item">
|
|
<image src="/static/encrypted.png"></image>
|
|
<view>
|
|
<text class="text">隐患整改通知</text>
|
|
</view>
|
|
</view>
|
|
<view class="item">
|
|
<image src="/static/encrypted.png"></image>
|
|
<view>
|
|
<text class="text">整改记录</text>
|
|
</view>
|
|
</view> -->
|
|
<!-- <view class="item" @click="handleNavigateTo('/pages/apply/subPages/riskReportRecord')">-->
|
|
<!-- <image src="/static/encrypted.png"></image>-->
|
|
<!-- <view>-->
|
|
<!-- <text class="text">隐患上报记录</text>-->
|
|
<!-- </view>-->
|
|
<!-- </view>-->
|
|
<!-- <view class="item" @click="handleNavigateTo('/pages/apply/subPages/FO/4teamActivityEdit?isAdd=1')">-->
|
|
<!-- <image src="/static/encrypted.png"></image>-->
|
|
<!-- <view>-->
|
|
<!-- <text class="text">安全活动记录</text>-->
|
|
<!-- </view>-->
|
|
<!-- </view>-->
|
|
<!-- <view class="item" @click="handleNavigateTo('/pages/apply/subPages/HM2/preOperSchEdit')">
|
|
<image src="/static/encrypted.png"></image>
|
|
<view>
|
|
<text class="text">作业方案讨论记录</text>
|
|
</view>
|
|
</view> -->
|
|
<!-- <view class="item" @click="handleNavigateTo('/pages/apply/subPages/HM2/jobEdit')">
|
|
<image src="/static/encrypted.png"></image>
|
|
<view>
|
|
<text class="text">工作票发起</text>
|
|
</view>
|
|
</view> -->
|
|
<!-- </view>-->
|
|
<!-- </view>-->
|
|
|
|
<!-- <view class="card-common">
|
|
<view class="card-title">
|
|
<text class="title">安全检查</text>
|
|
</view>
|
|
<view class="card-body">
|
|
<view class="item" @click="handleNavigateTo('/pages/apply/subPages/BS/checkPlanNoticeIndex')">
|
|
<image src="/static/encrypted.png"></image>
|
|
<view>
|
|
<text class="text">检查任务</text>
|
|
</view>
|
|
</view>
|
|
<view class="item" @click="handleNavigateTo('/pages/apply/subPages/BS/safeCheckIndex')">
|
|
<image src="/static/encrypted.png"></image>
|
|
<view>
|
|
<text class="text">检查记录</text>
|
|
</view>
|
|
</view>
|
|
<view class="item" @click="handleNavigateTo('/pages/apply/subPages/BS/riskSumbitNoticePersonIndex')">
|
|
<image src="/static/encrypted.png"></image>
|
|
<view>
|
|
<text class="text">隐患整改通知</text>
|
|
</view>
|
|
</view>
|
|
<view class="item" @click="handleNavigateTo('/pages/apply/subPages/BS/riskSumbitDealIndex')">
|
|
<image src="/static/encrypted.png"></image>
|
|
<view class="item-name">
|
|
<text class="text">隐患整改记录</text>
|
|
</view>
|
|
</view>
|
|
<view class="item" @click="handleNavigateTo('/pages/apply/subPages/BS/delayApplyIndex')">
|
|
<image src="/static/encrypted.png"></image>
|
|
<view class="item-name">
|
|
<text class="text">申请延期记录</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view> -->
|
|
|
|
|
|
<view class="card-common" v-for="(menu, index) in menus" :style="{height:'auto'}">
|
|
<view class="card-title">
|
|
<text class="title">{{menu.Node.NAME}}</text>
|
|
<!-- <view class="action" v-show="menu.Children.length > 8" @click="handleExpand(index)">
|
|
<text class="text">{{collapse.includes(index) ? '更多展开' : '收起'}}</text>
|
|
<uni-icons type="bottom" color="#999" />
|
|
</view> -->
|
|
</view>
|
|
<view class="card-body">
|
|
<view class="item" v-for="subMenu in menu.Children"
|
|
@click="handleNavigateTo(subMenu.Node.MENU_FORM_PARAMS)">
|
|
<image
|
|
:src="`${subMenu.Node.ICON ? 'http://47.122.43.22:7199/icon/' + subMenu.Node.ICON : '/static/logo_40_40.png'}`">
|
|
</image>
|
|
<view class="item-name">
|
|
<text class="text">{{subMenu.Node.NAME}}</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
|
|
</template>
|
|
|
|
<script>
|
|
import HeaderNav from '@/components/custom/head-nav.vue';
|
|
import config from '../../config/common'
|
|
export default {
|
|
components: {
|
|
HeaderNav
|
|
},
|
|
data() {
|
|
return {
|
|
menus: [],
|
|
collapse: [],
|
|
// sourceUrl: config.uni_app_web_source_url,
|
|
}
|
|
},
|
|
onShow() {
|
|
const appInfoData = uni.getStorageSync('appInfo')
|
|
if (appInfoData && appInfoData.Menus) {
|
|
const applys = appInfoData.Menus.filter(i => i.Node.NAME === '功能')
|
|
this.menus = applys[0] ? applys[0].Children : []
|
|
// this.menus.forEach((item, index) => {
|
|
// if (item.Children.length > 8) {
|
|
// this.collapse.push(index)
|
|
// }
|
|
// })
|
|
}
|
|
},
|
|
methods: {
|
|
handleNavigateTo(url) {
|
|
uni.navigateTo({
|
|
url: url // url: '/pages/my/subPagesSafe/checkplanindex'
|
|
})
|
|
},
|
|
// handleExpand(index) {
|
|
// if (this.collapse.includes(index)) {
|
|
// const at = this.collapse.indexOf(index)
|
|
// this.collapse.splice(at, 1)
|
|
// } else {
|
|
// this.collapse.push(index)
|
|
// }
|
|
// }
|
|
},
|
|
computed: {
|
|
|
|
},
|
|
}
|
|
</script>
|
|
|
|
<style>
|
|
.apply-page {
|
|
padding: 16px;
|
|
}
|
|
|
|
.card-common {
|
|
border-radius: 8px;
|
|
box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.1);
|
|
margin-bottom: 16px;
|
|
overflow: hidden;
|
|
padding-bottom: 2px;
|
|
}
|
|
|
|
.card-common .card-title {
|
|
display: flex;
|
|
flex-direction: row;
|
|
background: #fff;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
padding: 16px 16px 12px;
|
|
}
|
|
|
|
.card-common .card-title .title {
|
|
color: #333;
|
|
font-size: 16px;
|
|
line-height: 20px;
|
|
font-weight: 700;
|
|
}
|
|
|
|
.card-common .card-title .action .text {
|
|
font-size: 14px;
|
|
color: #999;
|
|
line-height: 20px;
|
|
margin-right: 8px;
|
|
}
|
|
|
|
.card-common .card-body {
|
|
display: flex;
|
|
/*justify-content: space-between;*/
|
|
flex-wrap: wrap;
|
|
flex-direction: row;
|
|
font-size: 13px;
|
|
}
|
|
|
|
.card-common .card-body .item {
|
|
width: 25%;
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
align-items: center;
|
|
margin-bottom: 14px;
|
|
}
|
|
|
|
/*.card-common .card-body .item:last-child:nth-child(4n - 1) {*/
|
|
/* margin-right: calc(24% + 4% / 3);*/
|
|
/*}*/
|
|
/*.card-common .card-body .item:last-child:nth-child(4n - 2) {*/
|
|
/* margin-right: calc(48% + 8% / 3);*/
|
|
/*}*/
|
|
.card-common .card-body .item image {
|
|
width: 40px;
|
|
height: 40px;
|
|
margin-bottom: 6px;
|
|
}
|
|
|
|
.card-common .card-body .item .item-name {
|
|
display: block;
|
|
width: 100%;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
text-align: center;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.card-common .card-body .item .text {
|
|
font-size: 14px;
|
|
line-height: 20px;
|
|
font-weight: 500;
|
|
color: #333;
|
|
}
|
|
</style> |