type
status
date
slug
summary
tags
category
icon
password
Property
Sep 12, 2025 02:40 AM

抽奖程序

年会抽奖程序,3D 球体抽奖,支持奖品信息配置,参与抽奖人员信息Excel导入,抽奖结果Excel导出
如果该程序对你有帮助😎😎😎,希望给个⭐star⭐喔。😘😘😘😍🥰🎉🎈🎃
立即体验一下: https://moshang-ax.github.io/lottery/

技术

技术:Node + Express + Three.js
后台通过Express实现
前端抽奖界面通过Three.js实现 3D 抽奖球,引用了Three.js的官方 3D 示例

功能描述:

  1. 可将抽奖结果进行保存实时下载到 excel 中🎉
  1. 已抽取人员不在参与抽取,抽中的人员不在现场可以重新抽取🎁
  1. 刷新或者关掉服务器,会保存当前已抽取的数据,不会进行数据重置,只有点击界面上的重置按钮,才能重置抽奖数据🧧
  1. 每次抽取的奖品数目可配置🎈
  1. 抽取完所有奖品后还可以继续抽取特别奖(例如:现在抽取红包,追加的奖品等),此时默认一次抽取一个🧨

预览

notion image
notion image
notion image
notion image

安装

目录结构

product 为前端页面目录package.josn web 项目配置文件webpack.config.js 打包配置文件server 为服务器目录config 为奖品信息的配置文件

配置信息

抽奖用户信息配置

抽奖用户信息在**server/data/user.xlsx**文件中,按文件格式进行填充,不能修改文件名和列头

奖品信息配置

奖品的配置信息填写在server/config.js文件中,不能修改文件名。
其中奖品 prizes 的配置描述如下:
参数
值类型
描述
type
Number
奖品类型,唯一标识,0 是默认特别奖的占位符,其它奖品不可使用
count
Number
奖品数量
text
String
奖项名称
title
String
奖品描述
img
String
奖品的图片地址,图片在img目录下

奖品每次抽取个数配置

EACH_COUNT用于配置每次的抽奖个数,与 prizes 奖品一一对应,例如上面的奖品配置对应的抽奖个数配置如下:
如上配置,表示一次抽取的奖品个数顺序为:特别奖每次抽一个,特等奖每次抽一个,一等奖每次抽五个

企业标识配置

该标识用于显示在抽奖卡片上。

Docker部署方案

概述

该项目现在支持使用Docker进行部署。Docker是一个轻量级的容器化平台,可以让您快速地部署、测试和运行应用程序。本文档将向您介绍如何使用Docker部署该项目。

系统要求

在您开始使用Docker部署该项目之前,您需要确保已经安装了以下软件:
  • Docker(请参阅Docker的官方文档以获取安装说明)
  • Docker Compose

安装

  1. 下载并解压该项目的源代码。
  1. 进入解压后的项目目录。
  1. 执行以下命令以构建Docker镜像:
    1. 这将使用Dockerfile构建一个名为lottery:[TAG]的Docker镜像。如果未指定标签,则默认使用latest标签。
  1. 执行以下命令以在本地运行容器:
    1. 这将启动容器并将应用程序部署在Docker容器中。您可以在本地进行测试,确保一切正常。请注意,容器内部的应用程序将会监听8888端口和443端口。
  1. 执行以下命令以将Docker镜像标记并推送到远程Docker仓库:
    1. 这将为Docker镜像打上标签并将其推送到远程Docker仓库,如果要使用docker官方的hub请先在https://hub.docker.com/新建自己的repo,然后将文件中的用户名改为自己。请注意,[TAG]应替换为您要使用的标签名称。
  1. 确保有一个名为docker-compose.yml的文件,并添加以下内容:
    1. 请注意,[TAG]应替换为您推送到Docker仓库的镜像名称。
  1. 在服务器上的项目目录中运行以下命令以使用Docker Compose部署应用程序:
这将启动一个Docker Compose堆栈,并将该项目部署在其中。请注意,此处将容器的8888端口和443端口映射 到了服务器上的8888端口和443端口。如果您希望使用其他端口,请相应地更改docker-compose.yml文件。

License

MIT
青岛游玩简要攻略25个国外免费图片库
Loading...