Browse Source

Merge branch 'zhangjiahao/feature-20250717125955-众筹' of http://39.101.133.168:8807/hongxilin/activityLink into zhangjiahao/feature-20250717125955-众筹

songtongtong/feature-20250717104937-众筹
songtongtong 4 weeks ago
parent
commit
9c569cfecc
  1. 36
      src/api/API.js
  2. 113
      src/views/zhongchou/index.vue

36
src/api/API.js

@ -1,19 +1,19 @@
import request from "../utils/request";
const APIurl = import.meta.env.VITE_APP_API_BASE_URL;
// 开发环境使用代理,生产环境使用环境变量
// const APIurl = import.meta.env.DEV ? '/Api' : import.meta.env.VITE_APP_API_BASE_URL;
// import request from "../utils/request";
// const APIurl = import.meta.env.VITE_APP_API_BASE_URL;
// // 开发环境使用代理,生产环境使用环境变量
// // const APIurl = import.meta.env.DEV ? '/Api' : import.meta.env.VITE_APP_API_BASE_URL;
export function addRecordAPI(data) {
return request({
url: `Api/api/funding/addRecord`,
method: 'post',
data: data
})
}
// 新增:获取活动信息接口
export function getActivity1API() {
return request({
url: `Api/api/funding/getActivity1`,
method: 'post'
})
}
// export function addRecordAPI(data) {
// return request({
// url: `Api/api/funding/addRecord`,
// method: 'post',
// data: data
// })
// }
// // 新增:获取活动信息接口
// export function getActivity1API() {
// return request({
// url: `Api/api/funding/getActivity1`,
// method: 'post'
// })
// }

113
src/views/zhongchou/index.vue

@ -128,7 +128,9 @@ import { ref, computed, onMounted, nextTick, watch } from 'vue'
//
const activityPeriod = ref('加载中...')
// IDID
const activityId = ref(null)
const usMarketId = ref(null)
//
const formatDate = (dateString) => {
if (!dateString) return ''
@ -145,8 +147,13 @@ async function fetchActivity() {
const response = await getActivity1API()
if (response.code === 200) {
console.log('活动数据:', response.data)
//
const { startTime, endTime, marketTwoStatus, marketTwoCount } = response.data
const { activityId: id, data, startTime, endTime, totalcount } = response.data
// ID
activityId.value = id
if (startTime && endTime) {
const formattedStartTime = formatDate(startTime)
const formattedEndTime = formatDate(endTime)
@ -155,27 +162,46 @@ async function fetchActivity() {
activityPeriod.value = '时间待定'
}
// marketTwoStatus
if (marketTwoStatus === '已助力') {
usBoostStatus.value = true
} else {
usBoostStatus.value = false
}
// marketTwoCount
if (marketTwoCount !== undefined) {
const totalPeople = 1500 // 1500
const currentCount = marketTwoCount || 0 //
// (0-100)
const progressPercent = Math.min((currentCount / totalPeople) * 100, 100)
// (15100%)
const usedTime = (progressPercent / 100) * 15
const remainingTime = Math.max(0, 15 - usedTime)
usRemainingTime.value = Math.round(remainingTime)
console.log(`助力人数: ${currentCount}/${totalPeople}, 进度: ${progressPercent.toFixed(1)}%, 剩余时间: ${remainingTime.toFixed(1)}分钟`)
//
if (data && data.length > 0) {
//
data.forEach(item => {
if (item.market === "美股" && item.marketId === 8) {
// ID
usMarketId.value = item.marketId
// marketStatus
if (item.marketStatus === '已助力') {
usBoostStatus.value = true
} else {
usBoostStatus.value = false
}
// marketCount
if (item.marketCount !== undefined) {
const totalPeople = 1500 // 1500
const currentCount = item.marketCount || 0 //
// (0-100)
const progressPercent = Math.min((currentCount / totalPeople) * 100, 100)
// (15100%)
const usedTime = (progressPercent / 100) * 15
const remainingTime = Math.max(0, 15 - usedTime)
usRemainingTime.value = Math.round(remainingTime)
console.log(`美股助力人数: ${currentCount}/${totalPeople}, 进度: ${progressPercent.toFixed(1)}%, 剩余时间: ${remainingTime.toFixed(1)}分钟`)
//
nextTick(() => {
updateProgressDisplay()
})
}
}
//
// if (item.market === "" && item.marketId === 5) { ... }
})
}
} else {
console.error('获取活动失败:', response.message)
@ -186,6 +212,8 @@ async function fetchActivity() {
activityPeriod.value = '网络错误'
}
}
const numberToChinese = (num) => {
const chineseNumbers = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九', '十', '十一', '十二', '十三', '十四', '十五']
return chineseNumbers[num] || num.toString()
@ -290,7 +318,7 @@ onMounted(() => {
//
window.addEventListener('resize', () => {
nextTick(() => {
updateProgressBarHeight()
updateProgressBarHeight()
})
})
})
@ -308,17 +336,23 @@ onMounted(() => {
const handleBoostClick = async (area) => {
if (area === 'us' && !usBoostStatus.value) {
try {
// API
// IDID
if (!activityId.value || !usMarketId.value) {
console.error('活动ID或市场ID未获取,请先获取活动数据')
return
}
// API使
const response = await addRecordAPI({
"activityId": 41,//线id
"marketSign": 5
"activityId": activityId.value,
"marketSign": usMarketId.value
});
if (response.code === 200) {
console.log('美股助力成功:', response.message)
//
await fetchActivity()
console.log('美股已助力剩余时间:', usRemainingTime.value)
console.log('美股已助力状态:', usBoostStatus.value, '剩余时间:', usRemainingTime.value)
} else {
console.error('美股助力失败:', response.message)
}
@ -326,27 +360,7 @@ const handleBoostClick = async (area) => {
console.error('美股助力请求失败:', error)
}
}
// else if (area === 'hk' && !hkBoostStatus.value) {
// try {
// // API
// const response = await addRecordAPI({
// "activityId": 1,
// "marketSign": 5
// });
// if (response.code === 200) {
// hkBoostStatus.value = true
// // 1
// simulateTimeDecrease('hk')
// console.log('', response.message)
// console.log('', hkRemainingTime.value)
// } else {
// console.error('', response.message)
// }
// } catch (error) {
// console.error('', error)
// }
// }
// ... existing code ...
}
const showRulesFunc = () => {
@ -1006,6 +1020,7 @@ const hideRules = () => {
background-image: url('@/assets/img/zhongchou/手机周年庆装饰.png');
/* 需要准备此图片资源 */
}
.main-title img {
max-height: 60px;
}

Loading…
Cancel
Save