From 54b53bf9ce78adf37786ad076fde45d6ce6f3d0c Mon Sep 17 00:00:00 2001 From: log1997 <2694233102@qq.com> Date: Fri, 16 Jan 2026 13:54:23 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E2=9C=A8=20=E8=AE=BE=E7=BD=AE=E6=9C=80?= =?UTF-8?q?=E5=A4=A7=E6=8A=BD=E5=A5=96=E4=BA=BA=E6=95=B0=E4=B8=BA30?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/constant/config.ts | 1 + src/views/Home/useViewModel.ts | 10 ++++++---- 2 files changed, 7 insertions(+), 4 deletions(-) create mode 100644 src/constant/config.ts diff --git a/src/constant/config.ts b/src/constant/config.ts new file mode 100644 index 0000000..bf557ea --- /dev/null +++ b/src/constant/config.ts @@ -0,0 +1 @@ +export const SINGLE_TIME_MAX_PERSON_COUNT = 30 diff --git a/src/views/Home/useViewModel.ts b/src/views/Home/useViewModel.ts index 12d511b..d9e3308 100644 --- a/src/views/Home/useViewModel.ts +++ b/src/views/Home/useViewModel.ts @@ -11,6 +11,7 @@ import { useToast } from 'vue-toast-notification' import dongSound from '@/assets/audio/end.mp3' import enterAudio from '@/assets/audio/enter.wav' import worldCupAudio from '@/assets/audio/worldcup.mp3' +import { SINGLE_TIME_MAX_PERSON_COUNT } from '@/constant/config' import { useElementPosition, useElementStyle } from '@/hooks/useElement' import i18n from '@/locales/i18n' import useStore from '@/store' @@ -508,20 +509,21 @@ export function useViewModel() { return } - // luckyCount.value = 10 - // 自定义抽奖个数 - + // 默认置为单次抽奖最大个数 + luckyCount.value = SINGLE_TIME_MAX_PERSON_COUNT + // 还剩多少人未抽 let leftover = currentPrize.value.count - currentPrize.value.isUsedCount const customCount = currentPrize.value.separateCount if (customCount && customCount.enable && customCount.countList.length > 0) { for (let i = 0; i < customCount.countList.length; i++) { if (customCount.countList[i].isUsedCount < customCount.countList[i].count) { + // 根据自定义人数来抽取 leftover = customCount.countList[i].count - customCount.countList[i].isUsedCount break } } } - luckyCount.value = leftover + luckyCount.value = leftover < luckyCount.value ? leftover : luckyCount.value // 重构抽奖函数 luckyTargets.value = getRandomElements(personPool.value, luckyCount.value) luckyTargets.value.forEach((item) => {