This commit is contained in:
cansnow
2025-12-24 04:12:56 +08:00
parent f49f1f1ad1
commit f289f79813
26 changed files with 636 additions and 484 deletions
+12 -8
View File
@@ -5,14 +5,14 @@
<image src="@/static/images/about_logo.png" mode=""></image>
<view>{{ appversion }}</view>
<info-item @click="checkUpdate" class="check" title="检测更新" content="" />
<info-item @click="openurl('http://baidu.com')" class="check" title="官方网站" content="" />
<info-item @click="goto('/pages/common/article?type=article&name=coom&title=商务合作')" class="check" title="商务合作" content="" />
<info-item @click="goto('/pages/common/article?type=article&name=contract&title=用户协议')" class="check" title="用户协议" content="" />
<info-item @click="goto('/pages/common/article?type=article&name=privacy&title=隐私政策')" class="check" title="隐私政策" content="" />
<info-item @click="goto('/pages/common/article?type=article&name=aboutus&title=关于我们')" class="check" title="关于我们" content="" />
<info-item @click="clearcache" class="check" title="清除缓存" content="" />
<info-item @click="show = true" class="check" title="上传调试日志" content="" />
<info-item @click="checkUpdate" class="check" title="检测更新" />
<info-item @click="openurl(config.website)" class="check" title="官方网站" />
<info-item @click="goto('/pages/common/article?type=spage&name=cooperation&title=商务合作')" class="check" title="商务合作" />
<info-item @click="goto('/pages/common/article?type=spage&name=terms_of_service&title=用户协议')" class="check" title="用户协议" />
<info-item @click="goto('/pages/common/article?type=spage&name=privacy_policy&title=隐私政策')" class="check" title="隐私政策" />
<info-item @click="goto('/pages/common/article?type=spage&name=aboutus&title=关于我们')" class="check" title="关于我们" />
<info-item @click="clearcache" class="check" title="清除缓存" />
<info-item @click="show = true" class="check" title="上传调试日志" />
<u-modal showCancelButton :show="show" title="上传日志" @confirm="uploadLog" @cancel="show = false">
<view class="slot-content">
@@ -30,6 +30,7 @@
import {PageEvents } from "@/constant";
import InfoItem from "../selfInfo/InfoItem.vue";
import {checkUpgrade} from "@/api/login.js"
import { mapGetters } from "vuex";
export default {
components: {
CustomNavBar,
@@ -43,6 +44,9 @@
loading: false,
};
},
computed:{
...mapGetters(["config"]),
},
onLoad() {
this.getAppVersion();
},
+53 -22
View File
@@ -20,23 +20,23 @@
</view>
</view>
</view>
<!-- v-if="userinfo.role_id==2" -->
<view class="vipbar" @click="goto('/pages/user/vip/vip')">
<img src="/static/images/user/member_crown.png" alt="" />
<text>会员到期时间:{{userinfo.expire_at}}</text>
<u-button>我的权益</u-button>
</view>
<view class="vipbar" @click="goto('/pages/user/vip/vip')">
<img src="/static/images/user/member_crown.png" alt="" />
<text>开通会员立享特权</text>
<u-button>开通</u-button>
</view>
<u-alert title="我的信息" type = "warning" :closable="closable" :description = "description"></u-alert>
<!-- 会员 -->
<template v-if="config.role_buy_open == '1'">
<view v-if="selfInfo.role_id==2" class="vipbar" @click="goto('/pages/user/vip/vip')">
<image src="/static/images/user/member_crown.png" mode="widthFix" alt="" />
<text>会员到期时间:{{selfInfo.expire_at}}</text>
<u-button>我的权益</u-button>
</view>
<view v-else class="vipbar" @click="goto('/pages/user/vip/vip')">
<image src="/static/images/user/member_crown.png" mode="widthFix" alt="" />
<text>开通会员立享特权</text>
<u-button>开通</u-button>
</view>
</template>
<uni-list style="margin: 20rpx auto;width: 100%;">
<uni-list-item title="我的信息" thumb="/static/images/profile_menu_info.png" to="/pages/user/selfInfo/index" clickable showArrow ></uni-list-item>
<uni-list-item title="账号设置" thumb="/static/images/profile_menu_account.png" to="/pages/user/messageNotification/index" clickable showArrow ></uni-list-item>
<uni-list-item title="关于我们" thumb="/static/images/profile_menu_about.png" to="/pages/user/accountSetting/index" clickable showArrow ></uni-list-item>
<uni-list-item title="账号设置" thumb="/static/images/profile_menu_account.png" to="/pages/user/accountSetting/index" clickable showArrow ></uni-list-item>
<uni-list-item title="关于我们" thumb="/static/images/profile_menu_about.png" to="/pages/user/about/index" clickable showArrow ></uni-list-item>
</uni-list>
<uni-list>
<uni-list-item title="退出登录" thumb="/static/images/profile_menu_logout.png" @click="logout" clickable showArrow ></uni-list-item>
@@ -50,10 +50,17 @@
import IMSDK from "openim-uniapp-polyfill";
import MyAvatar from "@/components/MyAvatar/index.vue";
import util from "@/util";
import { mapGetters } from "vuex";
export default {
components: {
MyAvatar,
},
computed:{
...mapGetters(["config"]),
selfInfo() {
return this.$store.getters.storeSelfInfo || {expire_at:0};
},
},
data() {
return {
profileMenus: [
@@ -65,15 +72,9 @@
],
};
},
computed: {
selfInfo() {
return this.$store.getters.storeSelfInfo;
},
},
methods: {
...util,
copy() {
console.log(this.selfInfo)
uni.setClipboardData({
showToast: false,
data: this.selfInfo.userID,
@@ -115,8 +116,15 @@
});
},
toSelfQr() {
const info = {
code : this.selfInfo.userID,
showName: `${this.selfInfo.nickname}`,
faceURL : this.selfInfo.faceURL,
type : "user",
};
const url = `/pages/common/userOrGroupQrCode?sourceInfo=${JSON.stringify(info,)}`;
uni.navigateTo({
url: `/pages/common/userOrGroupQrCode`,
url: url,
});
},
},
@@ -131,6 +139,29 @@
background: #0c1c33;
color: #FFF;
border-radius: 20rpx;
display: flex;
align-items: center;
margin: 20rpx 20rpx 0 20rpx;
padding: 20rpx 20rpx;
gap: 10rpx;
uni-image{
width: 50rpx;
height: 50rpx;
}
uni-text{
flex: 1;
color: #f00;
font-size: 36rpx;
}
.u-button{
font-size: 32rpx;
background-color: $uni-color-success;
border-color: $uni-color-success;
color: #FFF;
padding: 0;
height: 2em;
width: 6em;
}
}
.self_info_row {
-1
View File
@@ -140,7 +140,6 @@
},
async updateSelfInfo(data, key) {
try {
console.log(data);
await businessInfoUpdate({
userID: this.selfInfo.userID,
...data,
+12 -34
View File
@@ -6,7 +6,6 @@
@clickLeft="goto(1)"
>
</uni-nav-bar>
<view class="m-navbg"></view>
<view class="m-card n-ms-base n-ps-all-ll n-radius-base n-position-relative">
<view class="n-flex-row n-align-center">
<image class="m-avatar" :src="userinfo.avatar"></image>
@@ -18,42 +17,21 @@
<text class="m-card-text n-size-s" :style="{marginTop:'50rpx'}">会员到期时间{{userinfo.role_id==2 ? userinfo.expire_at:'未开通'}}</text>
<image class="m-card-crown n-position-absolute" src="/static/images/user/member_crown.png" mode="widthFix"></image>
</view>
<view class="n-ps-base n-ms-top-ll">
<text class="n-size-l n-weight-7">会员权益</text>
<view class="n-flex-row n-wrap-wrap n-ms-top-ss">
<u-cell-group>
<u-cell :class="[idx%2==0 ? 'n-ms-right-s':'', 'n-bg-page', 'n-radius-s', 'n-ms-top-s', 'n-ps-tb-ss']"
v-for="(item, idx) in powerList" :key="idx"
:icon="item.image_text"
:title="item.title"
:label="item.content"
:border="false"
:iconStyle="{width:'80rpx',height:'80rpx',borderRadius:'40rpx'}" >
</u-cell>
</u-cell-group>
</view>
</view>
<swiper class="swiper" circular :indicator-dots="false" :autoplay="false">
<swiper-item>
<view class="swiper-item uni-bg-red">A</view>
</swiper-item>
<swiper-item>
<view class="swiper-item uni-bg-green">B</view>
</swiper-item>
<swiper-item>
<view class="swiper-item uni-bg-blue">C</view>
</swiper-item>
</swiper>
<u-gap></u-gap>
<view class="n-ps-base">
<text class="n-size-l n-weight-7 n-ms-top-ss">会员套餐</text>
<scroll-view class="n-flex-row n-ms-top-ll n-wrap-nowrap" :scroll-x="true" :show-scrollbar="false">
<view :class="[idx==current ? 'm-thali-active':'m-thali', 'n-ps-all-ll', 'n-ms-right-l', 'n-flex-column', 'n-radius-base', 'n-align-center', 'n-position-relative']" v-for="(item, idx) in thaliList" :key="idx" @click="current=idx">
<text class="n-size-l n-ms-top-s n-weight-7">{{item.title}}</text>
<view class="n-flex-row n-align-end n-ms-top-base">
<text class="m-card-text n-size-s"></text>
<text class="m-card-text n-size-ll">{{item.price}}</text>
</view>
<text class="n-size-ss n-ms-top-ss n-color-forth n-text-decoration-through">{{item.orig_price}}</text>
<u-tag class="n-ms-bottom-s n-ms-top-base"
:text="'立省' + (item.orig_price - item.price) + '元'"
size="mini" shape="circle"
bgColor="#efcf95"
borderColor="#efcf95"></u-tag>
<!-- 标签 -->
<u-button class="n-position-absolute" v-if="item.label" :text="item.label" :style="{top:0,left:0}" size="mini" color="#fc393f"></u-button>
</view>
</scroll-view>
<view class="n-flex-row n-ms-top-l n-justify-center">
<view class="n-flex-row n-wrap-wrap n-align-start n-ms-top-base n-align-center">
<view>