From afd84e06e793da9ec6b2d7076cff61b8222d2ee3 Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Tue, 6 Jan 2026 11:41:57 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/chat-item/chat-item.vue | 315 +++++++++--------- .../long-press-menu/long-press-menu.vue | 224 ++++++------- src/pages/components/user-look-wechat.vue | 7 +- src/pages/components/user-more.vue | 78 +++++ src/pages/home/detail.vue | 192 +---------- src/pages/message/chat-box.vue | 52 ++- .../message/components/user-info-car.vue | 18 +- src/pages/tabbar/components/scroll-user.vue | 256 +++++++------- src/pages/tabbar/message.vue | 6 +- .../components/moment-card/moment-card.vue | 10 +- src/sheep/components/user-card/user-card.vue | 81 ++--- tsconfig.json | 1 + 12 files changed, 575 insertions(+), 665 deletions(-) create mode 100644 src/pages/components/user-more.vue diff --git a/src/components/chat-item/chat-item.vue b/src/components/chat-item/chat-item.vue index 1a440d46..cd6e859b 100644 --- a/src/components/chat-item/chat-item.vue +++ b/src/components/chat-item/chat-item.vue @@ -28,186 +28,189 @@ diff --git a/src/components/long-press-menu/long-press-menu.vue b/src/components/long-press-menu/long-press-menu.vue index 075c1885..0b9c2688 100644 --- a/src/components/long-press-menu/long-press-menu.vue +++ b/src/components/long-press-menu/long-press-menu.vue @@ -1,25 +1,11 @@ diff --git a/src/pages/components/user-look-wechat.vue b/src/pages/components/user-look-wechat.vue index 3b820927..eae5d76e 100644 --- a/src/pages/components/user-look-wechat.vue +++ b/src/pages/components/user-look-wechat.vue @@ -50,7 +50,7 @@ {{ user.member.wechatNum || '*************' - }} + }} 解锁微信只能展示24小时 @@ -101,6 +101,8 @@ const userWechatInfo = reactive({ wechatQrCode: '', }); +const emit = defineEmits(['updateUser']) + onMounted(() => { lookWechatCount() }) @@ -137,7 +139,8 @@ const doSubmitUnlockWechat = async () => { if (code === 0) { uni.showToast({ title: '解锁成功', icon: 'none' }); Object.assign(userWechatInfo, data); - // getDetail() + lookWechatCount() + emit('updateUser') } } catch (error) { console.log("|执行解锁微信|,意外的错误:error", error); diff --git a/src/pages/components/user-more.vue b/src/pages/components/user-more.vue new file mode 100644 index 00000000..ab906829 --- /dev/null +++ b/src/pages/components/user-more.vue @@ -0,0 +1,78 @@ + + + \ No newline at end of file diff --git a/src/pages/home/detail.vue b/src/pages/home/detail.vue index c0c4a79c..86a792a8 100644 --- a/src/pages/home/detail.vue +++ b/src/pages/home/detail.vue @@ -16,7 +16,7 @@ {{ userDetail.member.memberCity ? userDetail.member.memberCity + ' · ' : '' }} {{ userDetail.distance ? userDetail.distance.toFixed(2) + 'km' : '' }} - + @@ -29,10 +29,12 @@ {{ userDetail.member?.memberNickname }} - - - {{ item.tagTitle }} + + + + {{ item.tagTitle }} + @@ -62,29 +64,7 @@ 查看微信 - - - - - {{ userDetail.member.wechatNum || '*************' }} - - - 成为 - VIP - 免费解锁 - - - 已解锁对方微信 - - - - 解锁 - - - 查看 - - + 相册 @@ -139,53 +119,7 @@ 喜欢 - - - - - - - - - - - {{ userDetail.member.wechatNum || '*************' }} - - - - - 今日vip特权已使用{{ lookWechatDetail.todayCount }}/{{ - lookWechatDetail.todayCountTotal }}次 - - 使用VIP特权免费解锁 - - - - - - - - {{ userDetail.member.wechatNum || '*************' }} - - - 解锁微信只能展示24小时 - 添加备注"荷塘月色App"会快速通过哟 - - 今日vip特权已使用{{ lookWechatDetail.todayCount }}/{{ - lookWechatDetail.todayCountTotal }}次 - - 复制微信号 - - - 搜索不到微信?点击【 - 立即举报 - 】退还次数 - - - - + @@ -195,6 +129,8 @@ import { ref, computed, getCurrentInstance, reactive, onMounted } from 'vue'; import MomentCard from '@/sheep/components/moment-card/moment-card.vue'; import ScrollList from '@/sheep/components/scroll-list/scroll-list.vue'; import useScroll from '@/sheep/hooks/use-scroll'; +import UserLookWechat from "@/pages/components/user-look-wechat.vue" +import UserMore from "@/pages/components/user-more.vue" import RecentApi from '@/sheep/api/member/recent'; import { onHide, onUnload, onLoad } from '@dcloudio/uni-app'; import { getGender } from '@/sheep/util/index'; @@ -206,17 +142,16 @@ import request from '@/common/request'; import { formatDate } from '@/sheep/helper/utils'; import { useMessage } from '@/uni_modules/wot-design-uni'; -const operateMessage = useMessage('operateMessage'); - const userCity = computed(() => sheep.$store('user').userCity); const userInfo = computed(() => sheep.$store('user').userInfo); +const userMoreRef = ref(null) + const scrollTop = ref(0); // 用户详情 const userDetail = ref({}); // 解锁微信次数 const lookWechatDetail = ref({}); -const actionShow = ref(false); const visibleWechat = ref(false) // 朋友圈列表参数 const params = reactive({ @@ -239,11 +174,7 @@ const viewRecord = reactive({ viewStartTime: new Date().getTime(), viewEndTime: '', }); -// 用户微信信息 -const userWechatInfo = reactive({ - wechatNum: '', - wechatQrCode: '', -}); + const photoListUrls = computed( () => @@ -258,24 +189,14 @@ onLoad(async (options: any) => { params.memberId = memberId; viewRecord.bizId = memberId; await getDetail(); - await lookWechatCount() }); // 获取用户详情 const getDetail = async () => { const { data = null } = await RecentApi.getRecentDetail({ id: params.memberId }); userDetail.value = data ?? {}; - if (data.member && data.member.wechatNum) { - userWechatInfo.wechatNum = data.member.wechatNum; - } }; -// 查询解锁微信次数 -const lookWechatCount = async () => { - const { data = null } = await RecentApi.lookWechatCount(); - lookWechatDetail.value = data ?? {}; -} - onMounted(() => { refreshList(); }); @@ -314,58 +235,6 @@ function onScroll(e: any) { scrollTop.value = e.detail.scrollTop; } -// 解锁微信 -const doWeChatBtn = async () => { - if (!params.memberId) return uni.showToast({ title: '用户id不存在', icon: 'none' }); - const vip = userInfo.value?.memberVip.vip; - // 如果不是vip - if (!vip) { - operateMessage - .confirm({ - title: '获取VIP特权', - msg: '请先开通VIP会员', - confirmButtonText: '获取会员', - zIndex: 9999, - }) - .then(() => { - uni.navigateTo({ - url: '/pages/profile/apply-vip', - }); - }) - .catch(() => { }); - return; - } - visibleWechat.value = true -}; - -// 执行解锁微信 -const doSubmitUnlockWechat = async () => { - try { - const { code, data } = await RecentApi.unlockWeChat({ memberId: params.memberId }); - if (code === 0) { - uni.showToast({ title: '解锁成功', icon: 'none' }); - Object.assign(userWechatInfo, data); - getDetail() - } - } catch (error) { - console.log("|执行解锁微信|,意外的错误:error", error); - } -} - -// 复制微信号 -const copyWechatNum = () => { - console.log("userWechatInfo:", userWechatInfo); - - uni.setClipboardData({ - data: userWechatInfo.wechatNum, - showToast: false, - success: () => { - uni.showToast({ title: '微信号已复制', icon: 'success' }); - visibleWechat.value = false - }, - }); -}; - // 相册预览 const previewPhoto = (current: number) => { uni.previewImage({ @@ -375,22 +244,6 @@ const previewPhoto = (current: number) => { }); }; -// 找不到微信举报 -const wechatJb = async () => { - try { - const { code, data, msg } = await RecentApi.createWecahtErrorAuth({ - memberId: params.memberId - }) - if (code != 0) { - uni.showToast({ title: msg ?? '举报失败', icon: "none" }); - return - } - uni.showToast({ title: '举报成功', icon: "success" }); - } catch (error) { - console.log("|找不到微信举报|,意外的错误:error", error); - } -} - // 私聊 const goChat = async () => { if (!userDetail.value.memberId) return uni.showToast({ title: '用户不存在' }); @@ -440,23 +293,6 @@ const goChat = async () => { }); }; -// 拉黑 举报 -async function actionSelect({ item, index }) { - switch (index) { - case 0: - const { code } = await RecentApi.recentOperate({ - memberId: userDetail.value.member.memberId, - action: 'MEMBER_SHIELD', - }); - if (code === 0) { - uni.showToast({ title: '拉黑成功', icon: 'none' }); - } - break; - case 1: - uni.navigateTo({ url: '/pages/home/report?memberId=' + userDetail.value.member.memberId }); - } -} - // 喜欢 const handleLike = async () => { const { code } = await RecentApi.recentOperate({ diff --git a/src/pages/message/chat-box.vue b/src/pages/message/chat-box.vue index aae538c3..3a445ded 100644 --- a/src/pages/message/chat-box.vue +++ b/src/pages/message/chat-box.vue @@ -1,25 +1,35 @@ @@ -47,6 +51,8 @@ import { computed } from 'vue'; import UserLookWechat from '@/pages/components/user-look-wechat.vue' +const emit = defineEmits(['updateUser']) + const props = defineProps({ user: { type: Object, @@ -54,6 +60,10 @@ const props = defineProps({ } }) +const truePersonAuth = computed(() => { + return props.user?.memberTagList?.some((i) => i.tagBizType === '1') ?? false +}) + const photoListUrls = computed( () => props.user?.memberPhotoList @@ -70,6 +80,10 @@ const previewPhoto = (current: number) => { }); }; +const updateUser = () => { + emit('updateUser') +} + diff --git a/src/pages/tabbar/message.vue b/src/pages/tabbar/message.vue index 5129a695..d90a94ee 100644 --- a/src/pages/tabbar/message.vue +++ b/src/pages/tabbar/message.vue @@ -36,9 +36,9 @@ - - - + + + diff --git a/src/sheep/components/moment-card/moment-card.vue b/src/sheep/components/moment-card/moment-card.vue index c2b0b7aa..05937979 100644 --- a/src/sheep/components/moment-card/moment-card.vue +++ b/src/sheep/components/moment-card/moment-card.vue @@ -7,10 +7,12 @@ {{ member?.memberNickname }} - - - {{ item.tagTitle }} + + + + {{ item.tagTitle }} + diff --git a/src/sheep/components/user-card/user-card.vue b/src/sheep/components/user-card/user-card.vue index 3470dead..827f3b1f 100644 --- a/src/sheep/components/user-card/user-card.vue +++ b/src/sheep/components/user-card/user-card.vue @@ -3,14 +3,9 @@ - - + + {{ data.memberPhotoTotal.total }} @@ -18,11 +13,6 @@ - {{ member.memberNickname }} @@ -33,45 +23,30 @@ }} - - - {{ item.tagTitle }} + + + + {{ item.tagTitle }} + - + {{ getGender(member.memberSex) }} · {{ member.memberAge }}岁 - + {{ member.memberHeight }}cm - + {{ member.memberWeight }}kg - + {{ member.memberOcc }} - + {{ data.distance.toFixed(2) }}km @@ -82,20 +57,20 @@ diff --git a/tsconfig.json b/tsconfig.json index d18b968f..8cf46b93 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -3,6 +3,7 @@ "target": "esnext", "module": "esnext", "strict": true, + "noImplicitAny": false, "jsx": "preserve", "moduleResolution": "bundler", "esModuleInterop": true,