This commit is contained in:
2023-04-11 14:00:37 +08:00
parent 46594ce854
commit de1578425a
8 changed files with 183 additions and 79 deletions

View File

@@ -67,4 +67,18 @@
} }
.icon-check::after { .icon-check::after {
content: '\e608' content: '\e608'
}
.cancel_icon::before {
content: "\e632";
}
.cancel_icon {
display: block;
width: 50px;
height: 50px;
font-size: 25px;
color: #fff;
line-height: 50px;
text-align: center;
background-color: #E9B451;
} }

View File

@@ -1,113 +1,177 @@
<template> <template>
<view class="content"> <view class="content">
<view class="header"> <view class="header">首页</view>
<view class="header-item"> <view class="userInfo-wrap">
<text class="header-user">登录人员{{userName}}</text> <view class="userInfo">
<text class="p1">{{userName}}</text>
<text class="p2">欢迎进入海亮平板系统</text>
</view> </view>
<view class="header-item header-r"> <view class="exit" @tap="Quit">
<button class="header-button" @click="toExit">退&nbsp;&nbsp;</button> <view class="icon-exit"></view>
<view class="exit-text">退出</view>
</view> </view>
</view> </view>
<view class="nav-wrapper"> <view class="zd_wrapper">
<view class="nav-wrap"> <view class="menu-wrap">
<view class="nav-item" @click="toJump('/pages/management/inscanerror')"> <view class="menu-item" v-for="(e, i) in menuList" :key="i" @tap="toPage1(e)">
<text class="nav-text">扫码异常</text> <image class="menu-img" :src="require('../../static/images/' + e.path + '.png')" alt="">
<view class="menu-name">{{e.name}}</view>
</view> </view>
<!-- <view class="nav-item" @click="toJump('/pages/management/outscanerror')"> </view>
<text class="nav-text">出箱扫码异常</text> </view>
</view> --> <view v-if="show === true" class="sec_menu_wraper">
<view class="nav-item" @click="toJump('/pages/management/hcxcheck')"> <view class="sec_menu_w">
<text class="nav-text">缓存线盘点</text> <view class="menu-item" v-for="(e, i) in secM" :key="i" @click="toPage2(e)">
</view> <view class="sec_menu-col_inner">
<!-- <view class="nav-item" @click="toJump('/pages/management/agvinerror')"> <view class="menu-name menu-name_inner">{{e.name}}</view>
<text class="nav-text">AGV入箱异常</text> </view>
</view>
<view class="nav-item" @click="toJump('/pages/management/AgvOutError')">
<text class="nav-text">AGV出箱异常</text>
</view> -->
<view class="nav-item" @click="toJump('/pages/management/HcxOutError')">
<text class="nav-text">缓存线出箱异常</text>
</view>
<view class="nav-item" @click="toJump('/pages/management/ZlOperate')">
<text class="nav-text">任务操作</text>
</view>
<view class="nav-item" @click="toJump('/pages/management/HcxErrorHandle')">
<text class="nav-text">缓存线异常处理</text>
</view> </view>
</view> </view>
<view class="cancel">
<view class="iconfont cancel_icon" @tap="show = false"></view>
</view>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import {authority} from '@/utils/getData2.js'
export default { export default {
data() { data() {
return { return {
userName: this.$store.getters.userInfo !== '' ? JSON.parse(this.$store.getters.userInfo).username : '' userName: this.$store.getters.userInfo !== '' ? JSON.parse(this.$store.getters.userInfo).username : '',
} menuList: [],
show: false,
secM: []
};
}, },
onLoad() { created () {
this._authority()
}, },
methods: { methods: {
toJump(path) { async _authority () {
uni.navigateTo({ let res = await authority()
url: path this.menuList = [...res.sonTree]
});
}, },
toExit () { toPage1 (e) {
this.$store.dispatch('delUserInfo', '') if (e.sonTree.length > 0) {
this.show = true
this.secM = e.sonTree
}
},
toPage2 (e) {
let url = e.path
uni.redirectTo({ uni.redirectTo({
url: '/pages/login/login' url: url
}) })
},
Quit () {
this.$store.dispatch('delUserInfo')
uni.redirectTo({
url: '/pages/login/login'
})
} }
} }
} }
</script> </script>
<style lang="stylus" scoped> <style lang="stylus">
@import '../../common/style/mixin.styl'; @import '../../common/style/mixin.styl';
.content .zd_content
_fj() padding-top 0
_wh(100%, 100%)
flex-direction column
.header .header
height 42px
_font(16px,42px,#333,,center)
.userInfo-wrap
_fj() _fj()
_wh(100%,42px) _wh(calc(100% - 30px),80px)
background-color $red padding 0 15px
.header-item _bis($red,'../../static/images/info_bg.png',auto,100%,right,bottom)
width calc(50% - 30px) border-radius 12px
padding 0 10px margin 0 auto 15px auto
.header-user .userInfo
_font(16px, 42px, #fff,,) _fj(,flex-start,column)
.header-r .p1
_fj(flex-end) _font(16px,1,#fff)
/deep/ .header-r uni-button padding-bottom 8px
margin-right 0 .p2
.header-button _font(13px,1,#fff)
_wh(auto, 34px) .exit
_font(16px,34px,#333,,) _fj()
.nav-wrapper height 22px
_wh(calc(100% - 15px),calc(100% - 72px)) padding 0 7px
padding 15px 15% border 1px solid #FF967C
border-radius 10px
.icon-exit
_wh(10px, 10px)
_bis(,'../../static/images/exit.png',11px)
.exit-text
_font(12px,22px,#fff,,right)
padding-left 5px
.zd_wrapper
_wh(calc(100% - 30px),calc(100% - 152px)) /** 42+80+15+15 */
padding 15px 5%
background-color #fff background-color #fff
border-radius 12px border-radius 12px
margin 15px auto margin 0 auto 15px auto
.nav-wrap .menu-wrap
_fj(flex-start) _fj(flex-start,center,,wrap)
align-content center height 100%
flex-wrap wrap .menu-item
_fj()
flex-direction column
_wh(30%, auto)
margin-bottom 20px
_font(13px, 30px,#e74f1a,,center)
&:nth-child(3n+2)
margin-left 5%
margin-right 5%
::v-deep .menu-img
_wh(100%, auto)
img
position relative
opacity 1
_wh(55%, auto)
max-width 90px
margin 0 auto 0.1px
.menu-name
_font(14px, 18px, #444,,center)
.sec_menu_wraper
position fixed
top 0
left 0
_wh(100%, 100%) _wh(100%, 100%)
.nav-item background-color rgba(0, 0, 0, .9)
z-index 2017
flex-direction column
.sec_menu_w
_fj()
_wh(100%, calc(100% - 50px))
padding 0 12px
flex-wrap wrap
align-content center
&::after
content ''
display block
_wh(30%,0)
.sec_menu-col
background-color transparent
border none
height auto
.sec_menu-col_inner
_fj(center) _fj(center)
align-items center _wh(80px, 80px)
_wh(30%,68px) border-radius 50%
border-radius 12px background-color $yellow
border 10px solid #acbec6 margin 0 auto
margin 15px 5% 15px 0 .menu-name_inner
.nav-item:nth-child(3n) color #fff
margin-right 0 padding 0 10px
.nav-text .cancel
_font(18px, 24px, #333,,) _wh(100%, 50px)
letter-spacing: 2px padding 0 12px
overflow hidden
background-color rgba(255, 255, 255, .3)
box-shadow 0 0.5px 2px 0 rgba(160,160,160,0.9)
</style> </style>

BIN
static/images/RF01.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
static/images/RF02.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
static/images/RF03.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

BIN
static/images/exit.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
static/images/info_bg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -21,6 +21,32 @@ export const pdaUpdate = () => request({
// return res // return res
// } // }
// 菜单
export const authority = () => {
let res = {
sonTree: [
{menu_id: '1', path: 'RF01', name: '缓存线', sonTree: [
{menu_id: '1', name: '扫码异常', path: '/pages/management/inscanerror'},
{menu_id: '2', name: '缓存线盘点', path: '/pages/management/hcxcheck'},
{menu_id: '3', name: '缓存线出箱异常', path: '/pages/management/HcxOutError'},
{menu_id: '4', name: '任务操作', path: '/pages/management/ZlOperate'},
{menu_id: '5', name: '缓存线异常处理', path: '/pages/management/HcxErrorHandle'}
]
},
{menu_id: '2', path: 'RF02', name: '生产管理', sonTree: [
{menu_id: '1', name: '任务管理', path: '/pages/management/inscanerror'}
]
},
{menu_id: '3', path: 'RF03', name: '出入库管理', sonTree: [
{menu_id: '1', name: '成品入库', path: '/pages/management/inscanerror'},
{menu_id: '2', name: '半成品入库', path: '/pages/management/inscanerror'}
]
}
]
}
return res
}
/** 扫码异常 */ /** 扫码异常 */
// 1.1缓存线下拉框 // 1.1缓存线下拉框
export const getCacheLine = (area) => request({ export const getCacheLine = (area) => request({