You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

201 lines
5.5 KiB

10 months ago
<template>
<view class="mine-container" :style="{height: `${windowHeight}px`}">
<!--顶部个人信息栏-->
<view class="header-section">
<view class="flex padding justify-between">
<view class="flex align-center">
<view v-if="!avatar" class="cu-avatar xl round bg-white">
<view class="iconfont icon-people text-gray icon"></view>
</view>
<image v-if="avatar" @click="handleToAvatar" :src="avatar" class="cu-avatar xl round" mode="widthFix">
</image>
<!-- <view v-if="!name" @click="handleToLogin" class="login-tip">
点击登录
</view> -->
<view @click="handleToInfo" class="user-info">
<view class="u_title">
<span>用户名找刚子</span> 部门主任
</view>
<view class="u_dept">
生产部门
</view>
</view>
</view>
<!-- <view @click="handleToInfo" class="flex align-center">
<text>个人信息</text>
<view class="iconfont icon-right"></view>
</view> -->
</view>
</view>
<view class="content-section">
<view class="mine-actions grid col-4 text-center">
<view class="action-item" @click="handleJiaoLiuQun">
<image src="../../static/images/banner/icon1.png" mode="widthFix"></image>
<text class="text">我的报修</text>
</view>
<view class="action-item" @click="handleBuilding">
<image src="../../static/images/banner/icon2.png" mode="widthFix"></image>
<text class="text">我的维修</text>
</view>
<view class="action-item" @click="handleBuilding">
<image src="../../static/images/banner/icon3.png" mode="widthFix"></image>
<text class="text">我的保养</text>
</view>
<view class="action-item" @click="handleBuilding">
<image src="../../static/images/banner/icon4.png" mode="widthFix"></image>
<text class="text">巡检点检</text>
</view>
</view>
<view class="menu-list">
<view class="list-cell list-cell-arrow" @click="handleToEditInfo">
<view class="menu-item-box">
<u-icon name="lock" color="#2979ff" size="32"></u-icon>
<view style="margin-left: 10rpx;">修改密码</view>
</view>
</view>
<view class="list-cell list-cell-arrow" @click="handleHelp">
<view class="menu-item-box">
<!-- <view class="iconfont icon-help menu-icon"></view> -->
<u-icon name="info-circle" color="#2979ff" size="32"></u-icon>
<view style="margin-left: 10rpx;">版本更新</view>
</view>
</view>
<view class="list-cell list-cell-arrow" @click="handleAbout">
<view class="menu-item-box">
<u-icon name="heart" color="#2979ff" size="32"></u-icon>
<view style="margin-left: 10rpx;">关于我们</view>
</view>
</view>
</view>
</view>
</view>
</template>
<script>
import storage from '@/utils/storage'
export default {
data() {
return {
name: this.$store.state.user.name,
version: getApp().globalData.config.appInfo.version
}
},
computed: {
avatar() {
return this.$store.state.user.avatar
},
windowHeight() {
return uni.getSystemInfoSync().windowHeight - 50
}
},
methods: {
handleToInfo() {
this.$tab.navigateTo('/pages/mine/info/index')
},
handleToEditInfo() {
this.$tab.navigateTo('/pages/mine/changePassword')
},
handleToSetting() {
this.$tab.navigateTo('/pages/mine/setting/index')
},
handleToLogin() {
this.$tab.reLaunch('/pages/login')
},
handleToAvatar() {
this.$tab.navigateTo('/pages/mine/avatar/index')
},
handleLogout() {
this.$modal.confirm('确定注销并退出系统吗?').then(() => {
this.$store.dispatch('LogOut').then(() => {
this.$tab.reLaunch('/pages/index')
})
})
},
handleHelp() {
this.$tab.navigateTo('/pages/mine/help/index')
},
handleAbout() {
this.$tab.navigateTo('/pages/mine/aboutUs')
},
handleJiaoLiuQun() {
this.$modal.showToast('微信搜索 naidaguo 后,添加好友后拉你进技术交流群')
},
handleBuilding() {
this.$modal.showToast('模块建设中~')
}
}
}
</script>
<style lang="scss">
page {
background-color: #f5f6f7;
}
.mine-container {
width: 100%;
height: 100%;
.header-section {
padding: 30rpx 30rpx 90rpx 30rpx;
background-color: #409eff;
color: white;
.login-tip {
font-size: 36rpx;
margin-left: 20rpx;
}
.cu-avatar {
border: 4rpx solid #eaeaea;
.icon {
font-size: 80rpx;
}
}
.user-info {
margin-left: 30rpx;
.u_title {
line-height: 60rpx;
span{
font-size: 36rpx;
line-height: 60rpx;
margin-right: 20rpx;
}
}
}
}
.content-section {
position: relative;
top: -100rpx;
.mine-actions {
margin: 30rpx 30rpx;
padding: 40rpx 0px;
border-radius: 16rpx;
background-color: white;
.action-item {
image {
width: 60rpx;
}
.text {
display: block;
font-size: 26rpx;
margin: 16rpx 0px;
}
}
}
}
}
</style>