From a5565775993ba2c3b06b485aafc8eec25334bc7a Mon Sep 17 00:00:00 2001 From: tianfeng <769204422@qq.com> Date: Thu, 21 Aug 2025 16:30:38 +0800 Subject: [PATCH] =?UTF-8?q?=E9=94=99=E8=AF=AF=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.development | 6 ++-- src/api/teamBill.js | 4 +-- src/api/wallet.js | 2 +- src/views/AgencyCenterView.vue | 54 +++++++++++++++++++++++++++-- src/views/ExchangeGoldCoinsView.vue | 6 ++-- src/views/HostCenterView.vue | 43 +++++++++++++++++++---- src/views/MessageView.vue | 14 ++++---- src/views/TeamMemberView.vue | 6 ++-- 8 files changed, 107 insertions(+), 28 deletions(-) diff --git a/.env.development b/.env.development index bcfcf3e..0a0f624 100644 --- a/.env.development +++ b/.env.development @@ -3,8 +3,8 @@ VITE_NODE_ENV=development VITE_API_BASE_URL=https://api.likeichat.com VITE_APP_TITLE=Likei H5 (Development) -# 普通用户 -VITE_USER_AUTH=EB4BAD4C6439CF503B16267C712F5AB6.djIlM0ExOTU3MzQ1MzEyOTYxNTI3ODA5JTNBTElLRUklM0ExNzU4Mjc4MDEzNzQ0JTNBMTc1NTY4NjAxMzc0NA== +# 普通用户 8826602 +#VITE_USER_AUTH=EB4BAD4C6439CF503B16267C712F5AB6.djIlM0ExOTU3MzQ1MzEyOTYxNTI3ODA5JTNBTElLRUklM0ExNzU4Mjc4MDEzNzQ0JTNBMTc1NTY4NjAxMzc0NA== # 代理用户 8826603 -# VITE_USER_AUTH=747E27BE38B21A129CE41BB1F80EA924.djIlM0ExOTU3MzU2MTM4NTIzMDY2MzY5JTNBTElLRUklM0ExNzU4MDk3MDg4NDA0JTNBMTc1NTUwNTA4ODQwNA== +VITE_USER_AUTH=747E27BE38B21A129CE41BB1F80EA924.djIlM0ExOTU3MzU2MTM4NTIzMDY2MzY5JTNBTElLRUklM0ExNzU4MDk3MDg4NDA0JTNBMTc1NTUwNTA4ODQwNA== diff --git a/src/api/teamBill.js b/src/api/teamBill.js index 7cc37b6..e31bddd 100644 --- a/src/api/teamBill.js +++ b/src/api/teamBill.js @@ -20,10 +20,10 @@ export const getTeamMembers = async (teamId) => { * @param {string} memberId - 成员ID * @returns {Promise} */ -export const deleteMember = async (memberId) => { +export const deleteMember = async (ids) => { try { const response = await post('/team-member/client/removeMemberTeam', { - memberId: memberId + ids: ids }) return response } catch (error) { diff --git a/src/api/wallet.js b/src/api/wallet.js index 6470e7c..9e98565 100644 --- a/src/api/wallet.js +++ b/src/api/wallet.js @@ -29,7 +29,7 @@ export function userBankCheckTransfer() { * @returns {Promise} 返回用户角色和权限信息 */ export function userSalaryCheckExchange() { - return get('/wallet/salary-diamond/check/exchange-gold') + return get('/wallet/bank/check/exchange-gold') } // 获取用户银行卡余额-兑换金币 diff --git a/src/views/AgencyCenterView.vue b/src/views/AgencyCenterView.vue index 38ec33f..7605dff 100644 --- a/src/views/AgencyCenterView.vue +++ b/src/views/AgencyCenterView.vue @@ -7,7 +7,13 @@
- {{ userInfo.name.charAt(0) }} + + {{ getAvatarPlaceholder() }}

{{ userInfo.name }}

@@ -155,8 +161,8 @@ import { ref, reactive, onMounted } from 'vue' import { useRouter } from 'vue-router' import MobileHeader from '../components/MobileHeader.vue' import { get } from '../utils/http.js' -import {getBankBalance} from "@/api/wallet.js"; -import {getTeamId} from "@/utils/userStore.js"; +import {getBankBalance, getTeamEntry} from "@/api/wallet.js"; +import {getTeamId, setUserInfo} from "@/utils/userStore.js"; import {showError} from "@/utils/toast.js"; const router = useRouter() @@ -179,6 +185,7 @@ const salaryInfo = reactive({ // 用户信息 const userInfo = reactive({ + userAvatar: '', name: 'User1', id: '1234567890' }) @@ -251,6 +258,17 @@ const fetchTeamMemberCount = async () => { } } +const fetchTeamEntry = async () => { + const response = await getTeamEntry() + const member = response.body.memberProfile + if (member) { + // 更新用户信息显示 + userInfo.name = member.userNickname + userInfo.id = member.account + userInfo.userAvatar = member.userAvatar + } +} + // 获取银行余额 const fetchBankBalance = async () => { @@ -271,8 +289,23 @@ const fetchBankBalance = async () => { } } +// 处理头像图片加载失败 +const handleImageError = (event) => { + // 图片加载失败时,清空userAvatar,显示占位符 + userInfo.userAvatar = '' +} + +// 获取头像占位符(用户名首字母) +const getAvatarPlaceholder = () => { + if (userInfo.name && userInfo.name.length > 0) { + return userInfo.name.charAt(0).toUpperCase() + } + return 'U' // 默认显示 'U' +} + // 组件挂载时获取数据 onMounted(() => { + fetchTeamEntry() fetchTeamMemberCount() fetchBankBalance() }) @@ -316,6 +349,21 @@ onMounted(() => { font-size: 20px; font-weight: 600; margin-right: 12px; + overflow: hidden; + position: relative; +} + +.avatar img { + width: 100%; + height: 100%; + object-fit: cover; + border-radius: 25px; +} + +.avatar .avatar-placeholder { + color: white; + font-size: 20px; + font-weight: 600; } .user-details { diff --git a/src/views/ExchangeGoldCoinsView.vue b/src/views/ExchangeGoldCoinsView.vue index 4c19881..ce07b36 100644 --- a/src/views/ExchangeGoldCoinsView.vue +++ b/src/views/ExchangeGoldCoinsView.vue @@ -53,7 +53,7 @@ import { ref, reactive, onMounted } from 'vue' import { useRouter } from 'vue-router' import MobileHeader from '../components/MobileHeader.vue' import { getBankBalance, userSalaryCheckExchange, userBankExchangeGold } from '../api/wallet.js' -import { showError } from "@/utils/toast.js"; +import {showError, showWarning} from "@/utils/toast.js"; const router = useRouter() @@ -126,7 +126,7 @@ const checkUserRole = async () => { // 处理特定错误情况 if (error.errorCode === 1083) { // NOT_OPEN_ERROR - showError('Exchange function is not available') + showWarning('Exchange NOT_OPEN_ERROR') } else if (error.message && error.message.includes('HTTP Error: 406')) { // 处理 406 Not Acceptable 状态码 showError('The server cannot produce a response matching the list of acceptable values defined in the request headers') @@ -211,8 +211,8 @@ const selectCoin = (coin) => { // 页面加载时获取银行余额 onMounted(() => { - fetchBankBalance() checkUserRole() + fetchBankBalance() }) diff --git a/src/views/HostCenterView.vue b/src/views/HostCenterView.vue index 051178b..42f3f9f 100644 --- a/src/views/HostCenterView.vue +++ b/src/views/HostCenterView.vue @@ -15,16 +15,17 @@
- + -->
@@ -147,7 +147,7 @@ const confirmDelete = async () => { deletingMemberId.value = memberToDelete.value.id // 调用删除成员的API接口 - await deleteMemberApi(memberToDelete.value.id) + await deleteMemberApi([memberToDelete.value.id]) // 从列表中移除成员 const index = members.value.findIndex(m => m.id === memberToDelete.value.id)