This commit is contained in:
dzc committed 2025-12-26 12:54:58 +08:00
1 parent ad40673da4
commit 3a6b2da1dc
7 files changed
+97 -79

No files matched your search

+16 -9
View File
@@ -145,7 +145,7 @@
<wd-message-box selector="operateMessage" />
<wd-popup custom-class="custom-wechat-popup" :z-index="999" v-model="visibleWechat">
<view class="min-w-70vw w-full overflow-hidden p-y-50rpx bg-#f9c26f">
<view class="min-w-70vw w-full overflow-hidden p-y-50rpx">
<view v-if="!userDetail?.userOperationStatus?.isLookWechat" class="flex-col justify-center items-center">
<image class="size-150rpx bg-#333 rounded-full mr-1" :src="userDetail.member?.memberAvatar"
mode="aspectFill" />
@@ -156,23 +156,25 @@
<view class="flex justify-center items-center m-t-30rpx text-color-theme">
<text class="iconfont icon-weixin" />
</view>
<text class="text-color-theme text-xs m-t-30rpx">今日vip特权已使用4/10次</text>
<view class="flex justify-center items-center bg-color-theme-dark m-t-30rpx w-full p-x-10 p-y-2 rounded-full"
@tap="doSubmitUnlockWechat">
<!-- <text class="text-color-theme text-xs m-t-30rpx">今日vip特权已使用4/10次</text> -->
<view class="m-t-30rpx p-x-10 p-y-1.5 bg-color-theme-dark text-xs rounded-full" @tap="doSubmitUnlockWechat">
<text class="text-black text-xs">使用VIP特权免费解锁</text>
</view>
</view>
<view class="flex-col justify-center items-center" v-else>
<view class="inline-flex items-center justify-center">
<image class="size-44rpx mr-2" src="@/static/weixin-black.png" mode="aspectFill" />
<text class="text-black text-xs">{{ userDetail.member.wechatNum || '*************' }}</text>
<view class="size-50rpx bg-color-theme-dark flex justify-center items-center mr-1 rounded-full">
<image class="size-44rpx" src="@/static/weixin-black.png" mode="aspectFill" />
</view>
<text class="text-color-theme text-xs">{{ userDetail.member.wechatNum || '*************' }}</text>
</view>
<view class="flex-col justify-center items-center m-t-15rpx text-black text-xs">
<view class="flex-col justify-center items-center m-t-15rpx text-color-theme text-xs">
<view>解锁微信只能展示24小时</view>
<view>添加备注"荷塘月色App"会快速通过哟</view>
</view>
<view class="m-t-30rpx p-x-10 p-y-1.5 bg-#333 text-xs rounded-full" @tap="copyWechatNum">复制微信号</view>
<view class="m-t-30rpx text-xs">
<view class="m-t-30rpx p-x-10 p-y-1.5 bg-color-theme-dark text-xs rounded-full" @tap="copyWechatNum">复制微信号
</view>
<view class="m-t-30rpx text-xs" @tap="wechatJb">
<text>搜索不到微信?点击【</text>
<text class="underline underline-1 underline-solid">立即举报</text>
<text>】退还次数</text>
@@ -369,6 +371,11 @@ const previewPhoto = (current: number) => {
});
};
// 找不到微信举报
const wechatJb = () => {
uni.showToast({ title: '举报成功', icon: "success" });
}
// 私聊
const goChat = async () => {
if (!userDetail.value.memberId) return uni.showToast({ title: '用户不存在' });
@@ -1,11 +1,7 @@
<template>
<view class="flex items-center justify-between px-4 py-2">
<view class="flex items-center justify-between px-4 mb-4" :class="{ 'blur-item': isDim }">
<view class="flex items-center text-base overflow-hidden">
<image
:src="member.memberAvatar"
class="mr-3 size-120rpx rounded-full bg-#333333"
mode="aspectFill"
/>
<image :src="member.memberAvatar" class="mr-3 size-120rpx rounded-full bg-#333333" mode="aspectFill" />
<view class="flex-1 truncate">
{{ member.memberNickname || '' }}
</view>
@@ -15,15 +11,22 @@
</template>
<script setup lang="ts">
import { computed } from 'vue';
// @ts-ignore
import { formatDate } from '@/sheep/helper/utils';
import { computed } from 'vue';
// @ts-ignore
import { formatDate } from '@/sheep/helper/utils';
const props = defineProps<{
record: any;
}>();
const props = defineProps<{
record: any;
isDim?: boolean
}>();
const member = computed(() => {
return props.record?.member || {};
});
const member = computed(() => {
return props.record?.member || {};
});
</script>
<style lang="scss" scoped>
.blur-item {
filter: blur(5px);
}
</style>
+7 -2
View File
@@ -49,9 +49,14 @@ const params = reactive({
const userInfo = computed(() => sheep.$store('user').userInfo);
onShow(() => {
sheep.$store('user').updateUserData();
if (userInfo.value) {
params.wechatNum = userInfo.value.wechatNum ?? '';
params.wechatQrCode = userInfo.value.wechatQrCode ?? '';
if (userInfo.value.wechatNum) {
params.wechatNum = userInfo.value.wechatNum
}
if (userInfo.value.wechatQrCode) {
params.wechatQrCode = userInfo.value.wechatQrCode
}
}
})
+5 -1
View File
@@ -43,7 +43,7 @@
<script setup lang="ts">
import RecentApi from '@/sheep/api/member/recent';
import { onLoad } from '@dcloudio/uni-app';
import { onLoad, onShow } from '@dcloudio/uni-app';
import { computed, reactive, ref } from 'vue';
import { useMessage } from '@/uni_modules/wot-design-uni';
// @ts-ignore
@@ -72,6 +72,10 @@ onLoad(async () => {
loading.value = false;
});
onShow(() => {
sheep.$store('user').updateUserData();
})
const settingChange = async () => {
await RecentApi.updateSetting(params);
};
+49 -52
View File
@@ -10,34 +10,20 @@
<wd-tabs v-model="activeTab">
<wd-tab title="我看过的">
<scroll-list
style="height: calc(100dvh - 44px - 50px - 42px)"
:loadMoreStatus="loadMoreStatus_seenIt"
@refresh="refreshList_seenIt"
@loadMore="listLoadMore_seenIt"
>
<view-record-item
v-if="listData_seenIt.length"
v-for="user in listData_seenIt"
:record="user"
@click="detail(user)"
/>
<scroll-list style="height: calc(100dvh - 44px - 50px - 42px)" :loadMoreStatus="loadMoreStatus_seenIt"
@refresh="refreshList_seenIt" @loadMore="listLoadMore_seenIt">
<view class="h-10rpx"></view>
<view-record-item v-if="listData_seenIt.length" v-for="user in listData_seenIt" :record="user"
@click="detail(user)" />
</scroll-list>
</wd-tab>
<wd-tab title="看过我的">
<scroll-list
style="height: calc(100dvh - 44px - 50px - 42px)"
:loadMoreStatus="loadMoreStatus_seenMe"
@refresh="refreshList_seenMe"
@loadMore="listLoadMore_seenMe"
>
<view-record-item
v-if="listData_seenMe.length"
v-for="user in listData_seenMe"
:record="user"
@click="detail(user)"
/>
<scroll-list style="height: calc(100dvh - 44px - 50px - 42px)" :loadMoreStatus="loadMoreStatus_seenMe"
@refresh="refreshList_seenMe" @loadMore="listLoadMore_seenMe">
<view class="h-10rpx"></view>
<view-record-item :is-dim="!userInfo.value?.memberVip?.vip" v-if="listData_seenMe.length"
v-for="user in listData_seenMe" :record="user" @click="detail(user)" />
</scroll-list>
</wd-tab>
</wd-tabs>
@@ -45,35 +31,46 @@
</template>
<script setup lang="ts">
import ViewRecordItem from './components/view-record-item.vue';
import ScrollList from '@/sheep/components/scroll-list/scroll-list.vue';
import useScroll from '@/sheep/hooks/use-scroll';
import RecentApi from '@/sheep/api/member/recent';
import { ref } from 'vue';
import { onLoad } from '@dcloudio/uni-app';
import ViewRecordItem from './components/view-record-item.vue';
// @ts-ignore
import sheep from '@/sheep';
import ScrollList from '@/sheep/components/scroll-list/scroll-list.vue';
import useScroll from '@/sheep/hooks/use-scroll';
import RecentApi from '@/sheep/api/member/recent';
import { ref, computed } from 'vue';
import { onLoad, onShow } from '@dcloudio/uni-app';
const activeTab = ref();
const {
listData: listData_seenIt,
loadMoreStatus: loadMoreStatus_seenIt,
refreshList: refreshList_seenIt,
listLoadMore: listLoadMore_seenIt,
} = useScroll(RecentApi.getSeenIt);
const {
listData: listData_seenMe,
loadMoreStatus: loadMoreStatus_seenMe,
refreshList: refreshList_seenMe,
listLoadMore: listLoadMore_seenMe,
} = useScroll(RecentApi.getSeenMe);
const activeTab = ref();
onLoad(async () => {
refreshList_seenIt();
refreshList_seenMe();
const userInfo = computed(() => sheep.$store('user').userInfo);
const {
listData: listData_seenIt,
loadMoreStatus: loadMoreStatus_seenIt,
refreshList: refreshList_seenIt,
listLoadMore: listLoadMore_seenIt,
} = useScroll(RecentApi.getSeenIt);
const {
listData: listData_seenMe,
loadMoreStatus: loadMoreStatus_seenMe,
refreshList: refreshList_seenMe,
listLoadMore: listLoadMore_seenMe,
} = useScroll(RecentApi.getSeenMe);
onLoad(async () => {
refreshList_seenIt();
refreshList_seenMe();
});
onShow(() => {
sheep.$store('user').updateUserData();
console.log(userInfo.value?.memberVip?.vip);
})
const detail = (user: any) => {
uni.navigateTo({
url: `/pages/home/detail?memberId=${user.memberId}`,
});
const detail = (user: any) => {
uni.navigateTo({
url: `/pages/home/detail?memberId=${user.memberId}`,
});
};
};
</script>
+1
View File
@@ -199,6 +199,7 @@ const userGenderImageSrc = computed(() => {
});
onShow(async () => {
sheep.$store('user').updateUserData();
const { data: totalData } = await RecentApi.recentTotal();
recentTotal.value = totalData ?? {};
});
+1
View File
@@ -196,6 +196,7 @@ onLoad(async () => {
})
onShow(async () => {
sheep.$store('user').updateUserData();
state.loginInfoStorage = uni.getStorageSync('loginInfo') ?? null
if (isLogin.value) {
await getTradeConfig()