2024-09-18 10:30:10 +08:00
|
|
|
|
<template>
|
2024-11-25 11:48:03 +08:00
|
|
|
|
<custom-nav-bar :left="false" leftText="" @leftClick="" title="我的">
|
|
|
|
|
<template v-slot:right>
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="fixed">
|
|
|
|
|
<view align="right" class="iconfont icon-xiaoxi icon"></view>
|
|
|
|
|
</view>
|
2024-11-25 11:48:03 +08:00
|
|
|
|
</template>
|
|
|
|
|
</custom-nav-bar>
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<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">
|
2024-12-02 16:49:48 +08:00
|
|
|
|
<view class="iconfont icon-people text-gray icon"></view>
|
|
|
|
|
</view> -->
|
|
|
|
|
<image v-if="avatar" @click="toPage('avatar')" :src="avatar" class="cu-avatar xl round"
|
2024-09-20 18:13:41 +08:00
|
|
|
|
mode="widthFix">
|
|
|
|
|
</image>
|
2025-01-08 12:42:53 +08:00
|
|
|
|
<view @click="toPage('info')" class="user-info">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="u_title">
|
2025-01-08 12:42:53 +08:00
|
|
|
|
<text>
|
|
|
|
|
<text style="font-size: 30rpx;">{{ user.userName }}</text>
|
|
|
|
|
({{user.role.roleName}})
|
|
|
|
|
</text>
|
|
|
|
|
<text>{{user.mobilePhone}}</text>
|
|
|
|
|
<text>{{user.company.companyName}}</text>
|
2024-09-20 18:13:41 +08:00
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
|
|
|
|
|
<view class="content-section">
|
|
|
|
|
<view class="menu-list">
|
2025-01-02 16:29:11 +08:00
|
|
|
|
<view class="list-cell list-cell-arrow" v-hasPermi="['system:land:list']" @click="toPage('land')">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-tudidiya menu-icon"></view>
|
|
|
|
|
<view>地块管理</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
2025-01-02 16:29:11 +08:00
|
|
|
|
<view class="list-cell list-cell-arrow" v-hasPermi="['system:user:list']" @click="toPage('user')">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-yonghu menu-icon"></view>
|
|
|
|
|
<view>用户管理</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
2025-01-03 17:25:52 +08:00
|
|
|
|
<view class="list-cell list-cell-arrow" v-hasPermi="['system:irrigation_runtime:list']"
|
|
|
|
|
@click="toPage('wh')">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-lvli menu-icon"></view>
|
|
|
|
|
<view>灌溉履历</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
2025-01-02 16:29:11 +08:00
|
|
|
|
<view class="list-cell list-cell-arrow" v-hasPermi="['iotlog:userlog:list']" @click="toPage('dl')">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-caozuo menu-icon"></view>
|
|
|
|
|
<view>操作日志</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
2025-01-02 16:29:11 +08:00
|
|
|
|
<view class="list-cell list-cell-arrow" v-hasPermi="['iot:head:list']" @click="toPage('nq')">
|
2024-12-19 18:12:16 +08:00
|
|
|
|
<view class="menu-item-box">
|
2025-01-20 18:08:00 +08:00
|
|
|
|
<view class="iconfont icon-nq2 menu-icon"></view>
|
2024-12-19 18:12:16 +08:00
|
|
|
|
<view>农情</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<!-- <view class="list-cell list-cell-arrow">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-weihu menu-icon"></view>
|
|
|
|
|
<view>设备维护</view>
|
|
|
|
|
</view>
|
2024-12-28 21:29:59 +08:00
|
|
|
|
</view> -->
|
2025-01-02 16:29:11 +08:00
|
|
|
|
<view class="list-cell list-cell-arrow" v-hasPermi="['mine:dev-ops']" @click="toPage('DevOps')">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-yunwei menu-icon"></view>
|
|
|
|
|
<view>运维</view>
|
|
|
|
|
</view>
|
2024-12-28 21:29:59 +08:00
|
|
|
|
</view>
|
2025-01-17 19:43:28 +08:00
|
|
|
|
<view class="list-cell list-cell-arrow" v-hasPermi="['mine:retrace']" @click="toPage('retrace')">
|
|
|
|
|
<view class="menu-item-box">
|
2025-01-20 18:08:00 +08:00
|
|
|
|
<view class="iconfont icon-zs1 menu-icon"></view>
|
2025-01-17 19:43:28 +08:00
|
|
|
|
<view>追溯</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
2025-01-03 17:25:52 +08:00
|
|
|
|
<view class="list-cell list-cell-arrow" @click="toPage('textview')">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-v menu-icon"></view>
|
|
|
|
|
<view>我的权益</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
2025-02-19 12:59:57 +08:00
|
|
|
|
<view class="list-cell list-cell-arrow" @click="showPop = true">
|
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-bianji1 menu-icon"></view>
|
|
|
|
|
<view>用户协议和隐私协议</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
2024-12-20 10:50:22 +08:00
|
|
|
|
<!-- <view class="list-cell list-cell-arrow" @click="toPage('help')">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-help menu-icon"></view>
|
2025-01-03 17:25:52 +08:00
|
|
|
|
<view>常见问题</view>
|
2024-09-20 18:13:41 +08:00
|
|
|
|
</view>
|
|
|
|
|
</view>
|
2024-12-02 16:49:48 +08:00
|
|
|
|
<view class="list-cell list-cell-arrow" @click="toPage('about')">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-aixin menu-icon"></view>
|
|
|
|
|
<view>关于我们</view>
|
|
|
|
|
</view>
|
2024-12-20 10:50:22 +08:00
|
|
|
|
</view> -->
|
|
|
|
|
<!-- <view class="list-cell list-cell-arrow" @click="toPage('setting')">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-setting menu-icon"></view>
|
|
|
|
|
<view>应用设置</view>
|
|
|
|
|
</view>
|
2024-12-20 10:50:22 +08:00
|
|
|
|
</view> -->
|
2024-09-20 18:13:41 +08:00
|
|
|
|
</view>
|
|
|
|
|
<view class="menu-list">
|
2024-12-02 16:49:48 +08:00
|
|
|
|
<view class="list-cell list-cell-arrow" style="border-radius: 10px;" @click="toPage('setting')">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
<view class="menu-item-box">
|
|
|
|
|
<view class="iconfont icon-shezhi menu-icon"></view>
|
|
|
|
|
<view>设置</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
2025-02-10 12:18:40 +08:00
|
|
|
|
<view style="position: absolute;bottom: 5px;width: 100vw;text-align: center;color: darkgray;">
|
2025-02-10 17:27:31 +08:00
|
|
|
|
版本 {{version.versionName}}
|
2025-02-10 12:18:40 +08:00
|
|
|
|
</view>
|
2024-09-20 18:13:41 +08:00
|
|
|
|
</view>
|
2025-02-10 17:27:31 +08:00
|
|
|
|
<custom-app-update ref="appUpdate" />
|
2025-02-19 12:59:57 +08:00
|
|
|
|
|
|
|
|
|
<!-- 协议弹窗 -->
|
|
|
|
|
<u-popup mode="center" :show="showPop" :is-mask-click="false">
|
|
|
|
|
<view style="background: #f3f3f3;max-width: 70vw;padding: 10px; border-radius: 5px;">
|
|
|
|
|
<view style="text-align: center;font-weight: bold;margin-bottom: 10px;">
|
|
|
|
|
<text>用户协议和隐私协议</text>
|
|
|
|
|
</view>
|
|
|
|
|
<view style="line-height: 24px; font-size: 14px; color: #555;">
|
|
|
|
|
我们依据相关法律制定了
|
|
|
|
|
<text class="text-blue" @click="handleUserAgrement">《用户协议》</text>
|
|
|
|
|
和
|
|
|
|
|
<text class="text-blue" @click="handlePrivacy">《隐私协议》</text>
|
|
|
|
|
,请您在点击同意之前仔细阅读并充分理解相关条款。为了便于您理解《隐私政策》,特向您说明如下:
|
|
|
|
|
<br>
|
|
|
|
|
1、为了向您提供服务,我们需要收集您的设备信息和操作日志;
|
|
|
|
|
<br>
|
|
|
|
|
2、我们会采取业界先进的安全措施保护您的信息安全,未经您同意,我们不会向第三方共享您的信息;
|
|
|
|
|
<br>
|
|
|
|
|
3、您可以对上述信息进行查询、更正、删除我们也在政策中提供专门的个人信息保护联系方式。
|
|
|
|
|
<br>
|
|
|
|
|
如您同意以上协议内容,请点击"同意"接受并开始使用我们的服务。
|
|
|
|
|
</view>
|
|
|
|
|
<view style=" display: flex;margin-top: 10px;grid-gap: 10px;">
|
|
|
|
|
<u-button type="success" size="large" text="确定" @click="showPop = false" />
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</u-popup>
|
2024-09-18 10:30:10 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script setup>
|
2024-09-20 18:13:41 +08:00
|
|
|
|
import {
|
|
|
|
|
ref
|
|
|
|
|
} from "vue";
|
2025-02-10 12:18:40 +08:00
|
|
|
|
import store from '@/store'
|
|
|
|
|
import storage from '@/utils/storage'
|
2024-09-20 18:13:41 +08:00
|
|
|
|
import config from '@/config.js'
|
2025-01-08 12:42:53 +08:00
|
|
|
|
const user = store.state.user.user;
|
2024-09-20 18:13:41 +08:00
|
|
|
|
const avatar = ref(store.state.user.avatar);
|
|
|
|
|
const windowHeight = ref(uni.getSystemInfoSync().windowHeight - 50);
|
|
|
|
|
const popup = ref(null);
|
2024-11-25 11:48:03 +08:00
|
|
|
|
const rolses = store.state.user.roles;
|
2025-02-10 12:18:40 +08:00
|
|
|
|
// const version = config.appInfo.version;
|
2025-02-10 17:27:31 +08:00
|
|
|
|
const version = getApp().version.oldV;
|
|
|
|
|
const appUpdate = ref(null)
|
2025-02-19 12:59:57 +08:00
|
|
|
|
const showPop = ref(false)
|
2025-02-10 12:18:40 +08:00
|
|
|
|
|
2024-09-20 18:13:41 +08:00
|
|
|
|
uni.$on('refresh', () => {
|
|
|
|
|
avatar.value = store.state.user.avatar;
|
|
|
|
|
})
|
|
|
|
|
|
2024-12-02 16:49:48 +08:00
|
|
|
|
//页面跳转
|
|
|
|
|
function toPage(type) {
|
|
|
|
|
switch (type) {
|
2025-01-14 12:31:59 +08:00
|
|
|
|
// case "info": //用户资料
|
|
|
|
|
// uni.navigateTo({
|
|
|
|
|
// url: '/pages/mine/info/index'
|
|
|
|
|
// });
|
|
|
|
|
// break;
|
2024-12-02 16:49:48 +08:00
|
|
|
|
case "avatar": //头像
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/mine/avatar/index'
|
|
|
|
|
});
|
|
|
|
|
break;
|
|
|
|
|
case "edit": //用户编辑
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/mine/info/edit'
|
|
|
|
|
});
|
|
|
|
|
break;
|
|
|
|
|
case "land": //地块
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/work/land/index'
|
|
|
|
|
});
|
|
|
|
|
break;
|
|
|
|
|
case "user": //用户管理
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/work/user/index'
|
|
|
|
|
});
|
|
|
|
|
break;
|
|
|
|
|
case "wh": //灌溉履历
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/work/watering-history/index'
|
|
|
|
|
});
|
|
|
|
|
break;
|
|
|
|
|
case "dl": //操作日志
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/work/operation-log/index'
|
|
|
|
|
});
|
|
|
|
|
break;
|
|
|
|
|
case "setting": //设置
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/mine/setting/index'
|
|
|
|
|
});
|
|
|
|
|
break;
|
|
|
|
|
case "help": //帮助
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/mine/help/index'
|
|
|
|
|
});
|
|
|
|
|
break;
|
|
|
|
|
case "about": //关于我们
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/mine/about/index'
|
|
|
|
|
});
|
|
|
|
|
break;
|
2024-12-10 19:00:27 +08:00
|
|
|
|
case "video": //视频
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/mine/video/index'
|
|
|
|
|
});
|
|
|
|
|
break;
|
2024-12-19 18:12:16 +08:00
|
|
|
|
case "nq": //农情
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/fourmonitor/index'
|
|
|
|
|
});
|
2025-01-02 16:29:11 +08:00
|
|
|
|
break;
|
2024-12-28 21:29:59 +08:00
|
|
|
|
case "DevOps": //运维
|
2025-02-18 15:41:31 +08:00
|
|
|
|
// uni.navigateTo({
|
|
|
|
|
// url: '/pages/dev-ops/index'
|
|
|
|
|
// });
|
2024-12-28 21:29:59 +08:00
|
|
|
|
uni.navigateTo({
|
2025-02-18 15:41:31 +08:00
|
|
|
|
url: '/pages/dev-ops/device'
|
2025-01-02 16:29:11 +08:00
|
|
|
|
});
|
2024-12-19 18:12:16 +08:00
|
|
|
|
break;
|
2025-01-17 19:43:28 +08:00
|
|
|
|
case "retrace": //追溯
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/retrace/index'
|
|
|
|
|
});
|
|
|
|
|
break;
|
2025-01-03 17:25:52 +08:00
|
|
|
|
case "textview": //我的权益
|
|
|
|
|
const title = "我的权益"
|
|
|
|
|
const content = store.state.user.user.role.remark;
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: `/pages/common/textview/index?title=${title}&content=${content}`
|
|
|
|
|
});
|
|
|
|
|
break;
|
2024-12-02 16:49:48 +08:00
|
|
|
|
}
|
2024-09-20 18:13:41 +08:00
|
|
|
|
}
|
2025-02-19 12:59:57 +08:00
|
|
|
|
|
|
|
|
|
const globalConfig = ref(config);
|
|
|
|
|
// 隐私协议
|
|
|
|
|
function handlePrivacy() {
|
|
|
|
|
let site = globalConfig.value.appInfo.agreements[0];
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: `/pages/common/webview/index?title=${site.title}&url=${site.url}`
|
|
|
|
|
});
|
|
|
|
|
};
|
|
|
|
|
// 用户协议
|
|
|
|
|
function handleUserAgrement() {
|
|
|
|
|
let site = globalConfig.value.appInfo.agreements[1]
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: `/pages/common/webview/index?title=${site.title}&url=${site.url}`
|
|
|
|
|
});
|
|
|
|
|
};
|
2024-09-18 10:30:10 +08:00
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style lang="scss">
|
2024-09-20 18:13:41 +08:00
|
|
|
|
// nav
|
|
|
|
|
::v-deep.uni-navbar__header-container {
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
|
|
|
|
&>view {
|
|
|
|
|
font-size: 34rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
::v-deep.uni-navbar__header-btns-right .icon {
|
|
|
|
|
font-size: 44rpx;
|
|
|
|
|
margin-left: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.mine-container {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
|
|
|
|
// 个人信息
|
|
|
|
|
.header-section {
|
2025-01-13 12:39:54 +08:00
|
|
|
|
padding: 0px 0px 30px 0px;
|
2024-09-20 18:13:41 +08:00
|
|
|
|
background-color: #39ac4f;
|
|
|
|
|
color: white;
|
|
|
|
|
border-radius: 0 0 30px 30px;
|
2025-02-10 12:18:40 +08:00
|
|
|
|
|
2024-09-20 18:13:41 +08:00
|
|
|
|
|
2025-02-19 12:59:57 +08:00
|
|
|
|
.cu-avatar {
|
|
|
|
|
width: 70px !important;
|
|
|
|
|
height: 70px !important;
|
2025-01-13 12:39:54 +08:00
|
|
|
|
border: 2px solid #1cb93a;
|
2025-02-10 12:18:40 +08:00
|
|
|
|
background-color: #fff;
|
|
|
|
|
|
2024-09-20 18:13:41 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.user-info {
|
|
|
|
|
margin-left: 15px;
|
|
|
|
|
|
|
|
|
|
.u_title {
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
|
|
|
|
&>text {
|
|
|
|
|
margin-bottom: 5px;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content-section {
|
|
|
|
|
position: relative;
|
|
|
|
|
top: -50px;
|
|
|
|
|
|
|
|
|
|
.menu-list {
|
|
|
|
|
margin: 10px;
|
|
|
|
|
border-radius: 10px;
|
|
|
|
|
box-shadow: 0 1px 9px rgb(209, 209, 209, 0.5);
|
|
|
|
|
|
|
|
|
|
.list-cell:first-child {
|
|
|
|
|
border-radius: 10px 10px 0 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.list-cell:last-child {
|
|
|
|
|
border-radius: 0 0 10px 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.list-cell {
|
|
|
|
|
.menu-item-box {
|
2024-11-25 11:48:03 +08:00
|
|
|
|
.menu-icon {
|
|
|
|
|
font-size: 40rpx;
|
2024-09-20 18:13:41 +08:00
|
|
|
|
color: #39ac4f;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-09-18 10:30:10 +08:00
|
|
|
|
|
2024-09-20 18:13:41 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</style>
|