This commit is contained in:
hzj 2025-09-09 18:59:03 +08:00
commit cf84422b35
7 changed files with 44 additions and 4259 deletions

2
.env
View File

@ -1,5 +1,5 @@
# 应用版本号
VITE_APP_VERSION=1.1.3
VITE_APP_VERSION=1.1.4
# 构建时间戳(会在构建时自动更新)
VITE_BUILD_TIME=""

View File

@ -7,4 +7,4 @@ VITE_APP_TITLE=Likei H5 (Development)
#VITE_USER_AUTH=EB4BAD4C6439CF503B16267C712F5AB6.djIlM0ExOTU3MzQ1MzEyOTYxNTI3ODA5JTNBTElLRUklM0ExNzU4Mjc4MDEzNzQ0JTNBMTc1NTY4NjAxMzc0NA==
# 代理用户 8826603
VITE_USER_AUTH=747E27BE38B21A129CE41BB1F80EA924.djIlM0ExOTU3MzU2MTM4NTIzMDY2MzY5JTNBTElLRUklM0ExNzU4MDk3MDg4NDA0JTNBMTc1NTUwNTA4ODQwNA==
VITE_USER_AUTH=F46B235261C40EF8CA9F5453E8C656E6.djIlM0ExOTU3MzQ1MzEyOTYxNTI3ODA5JTNBTElLRUklM0ExNzU5ODkxMTgwMDYyJTNBMTc1NzI5OTE4MDA2Mg==

4238
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -15,6 +15,20 @@ export const getTeamMembers = async (teamId) => {
}
}
/**
* 获取BD代理商列表
* @returns {Promise}
*/
export const getBdAgentList = async () => {
try {
const response = await get('/team/bd/bd-agent/list')
return response
} catch (error) {
console.error('Failed to fetch BD agent list:', error)
throw error
}
}
/**
* 删除团队成员
* @param {string} memberId - 成员ID

View File

@ -86,7 +86,7 @@
import { ref } from 'vue'
import { useRouter } from 'vue-router'
import MobileHeader from '../components/MobileHeader.vue'
import {getAgentMonthLastTarget, getAgentMonthTarget, getTeamMemberCount} from '../api/teamBill.js'
import {getAgentMonthLastTarget, getAgentMonthTarget, getBdAgentList} from '../api/teamBill.js'
import { getTeamId } from '@/utils/userStore.js'
import {usePageInitializationWithConfig} from "@/utils/pageConfig.js";
import {isInApp} from "@/utils/appBridge.js";
@ -101,19 +101,16 @@ const loadingMemberCount = ref(false)
const fetchTeamMemberCount = async () => {
try {
loadingMemberCount.value = true
const teamId = getTeamId()
if (teamId) {
const response = await getTeamMemberCount(teamId)
if (response.status && typeof response.body === 'number') {
teamMemberCount.value = response.body
} else {
teamMemberCount.value = 0
}
const response = await getBdAgentList()
if (response.status && response.body && Array.isArray(response.body)) {
teamMemberCount.value = response.body.length
} else {
teamMemberCount.value = 0
}
} catch (error) {
console.error('Failed to fetch team member count:', error)
teamMemberCount.value = 87 // 使
teamMemberCount.value = 0 // 使
} finally {
loadingMemberCount.value = false
}
@ -133,7 +130,7 @@ const getAgentMonth = async () => {
}
const goToTeamMember = () => {
router.push('/team-member')
router.push({ path: '/team-member', query: { source: 'bd-center' } })
}
const exchangeGoldCoins = () => {

View File

@ -73,27 +73,37 @@
<script setup>
import { ref, onMounted } from 'vue'
import { useRouter } from 'vue-router'
import { useRouter, useRoute } from 'vue-router'
import MobileHeader from '../components/MobileHeader.vue'
import { getTeamMembers, deleteMember as deleteMemberApi } from '../api/teamBill.js'
import { getTeamMembers, getBdAgentList, deleteMember as deleteMemberApi } from '../api/teamBill.js'
import {getTeamId} from "@/utils/userStore.js";
import {showError} from "@/utils/toast.js";
const router = useRouter()
const route = useRoute()
const loading = ref(false)
const members = ref([])
const deletingMemberId = ref(null)
const showDeleteModal = ref(false)
const memberToDelete = ref(null)
// BD Center
const isFromBdCenter = ref(false)
//
const fetchTeamMembers = async () => {
try {
loading.value = true
// teamId
const teamId = getTeamId()
const response = await getTeamMembers(teamId)
let response
if (isFromBdCenter.value) {
// BD CenterBD
response = await getBdAgentList()
} else {
//
const teamId = getTeamId()
response = await getTeamMembers(teamId)
}
if (response.status && response.body) {
members.value = response.body || []
@ -160,6 +170,8 @@ const confirmDelete = async () => {
//
onMounted(() => {
// BD Center
isFromBdCenter.value = route.query.source === 'bd-center'
fetchTeamMembers()
})
</script>

View File

@ -58,7 +58,7 @@ const getI18n = (field) => {
onMounted(() => {});
</script>
<style lang="scss" scoped>
<style scoped>
.pay-result {
background: #ffffff;
min-height: 100%;