8000 GitHub - chief-fei/lottery: 🎉🌟✨🎈年会抽奖程åºï¼ŒåŸºäºŽ Express + Three.jsçš„ 3D çƒä½“抽奖程åºï¼Œå¥–å“🧧ðŸŽï¼Œæ–‡å­—,图片,抽奖规则å‡å¯é…置,😜抽奖人员信æ¯Excel一键导入ðŸ˜ï¼ŒæŠ½å¥–结果Excel导出😎,给你的抽奖活动带æ¥å…¨æ–°é…·ç‚«ä½“验🚀🚀🚀
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

🎉🌟✨🎈年会抽奖程åºï¼ŒåŸºäºŽ Express + Three.jsçš„ 3D çƒä½“抽奖程åºï¼Œå¥–å“🧧ðŸŽï¼Œæ–‡å­—,图片,抽奖规则å‡å¯é…置,😜抽奖人员信æ¯Excel一键导入ðŸ˜ï¼ŒæŠ½å¥–结果Excel导出😎,给你的抽奖活动带æ¥å…¨æ–°é…·ç‚«ä½“验🚀🚀🚀

License

Notifications You must be signed in to change notification settings

chief-fei/lottery

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

抽奖程åº

年会抽奖程åºï¼Œ3D çƒä½“抽奖,支æŒå¥–å“ä¿¡æ¯é…置,å‚与抽奖人员信æ¯Excel导入,抽奖结果Excel导出

如果该程åºå¯¹ä½ æœ‰å¸®åŠ©ðŸ˜ŽðŸ˜ŽðŸ˜Žï¼Œå¸Œæœ›ç»™ä¸ªâ­starâ­å–”。😘😘😘ðŸ˜ðŸ¥°ðŸŽ‰ðŸŽˆðŸŽƒ

ç«‹å³ä½“验一下: https://moshang-xc.github.io/lottery/

技术

技术:Node + Express + Three.js

åŽå°é€šè¿‡Express实现

å‰ç«¯æŠ½å¥–界é¢é€šè¿‡Three.js实现 3D 抽奖çƒï¼Œå¼•用了Three.js的官方 3D 示例

功能æè¿°ï¼š

  1. å¯å°†æŠ½å¥–结果进行ä¿å­˜å®žæ—¶ä¸‹è½½åˆ° excel 中🎉
  2. 已抽å–人员ä¸åœ¨å‚与抽å–,抽中的人员ä¸åœ¨çŽ°åœºå¯ä»¥é‡æ–°æŠ½å–ðŸŽ
  3. 刷新或者关掉æœåŠ¡å™¨ï¼Œä¼šä¿å­˜å½“å‰å·²æŠ½å–的数æ®ï¼Œä¸ä¼šè¿›è¡Œæ•°æ®é‡ç½®ï¼Œåªæœ‰ç‚¹å‡»ç•Œé¢ä¸Šçš„é‡ç½®æŒ‰é’®ï¼Œæ‰èƒ½é‡ç½®æŠ½å¥–æ•°æ®ðŸ§§
  4. æ¯æ¬¡æŠ½å–çš„å¥–å“æ•°ç›®å¯é…置🎈
  5. 抽å–完所有奖å“åŽè¿˜å¯ä»¥ç»§ç»­æŠ½å–特别奖(例如:现在抽å–红包,追加的奖å“ç­‰),此时默认一次抽å–一个🧨

预览

lottery.gif

index.jpg

start.jpg

end.jpg

安装

git clone https://github.com/moshang-xc/lottery.git

cd lottery

# æœåŠ¡ç«¯æ’件安装
cd server
npm install

# å‰ç«¯æ’件安装
cd ../product
npm install

# 打包
npm run build

# è¿è¡Œ
npm run serve

# å¼€å‘调试
npm run dev

目录结构

Lottery
├── product
│   ├── src
│   │   ├── lottery
│   │   │   └── index.js
│   │   ├── lib
│   │   ├── img
│   │   ├── css
│   │   └── data
│   ├── package.json
│   └── webpack.config.js
├── server
│   ├── config.js
│   ├── server.js
│   └── package.js
  1. product 为å‰ç«¯é¡µé¢ç›®å½•
  2. package.josn web 项目é…置文件
  3. webpack.config.js 打包é…置文件
  4. server 为æœåŠ¡å™¨ç›®å½•
  5. config 为奖å“ä¿¡æ¯çš„é…置文件

é…置信æ¯

抽奖用户信æ¯é…ç½®

抽奖用户信æ¯åœ¨**server/data/user.xlsx**文件中,按文件格å¼è¿›è¡Œå¡«å……,ä¸èƒ½ä¿®æ”¹æ–‡ä»¶å和列头

奖å“ä¿¡æ¯é…ç½®

奖å“çš„é…置信æ¯å¡«å†™åœ¨server/config.js文件中,ä¸èƒ½ä¿®æ”¹æ–‡ä»¶å。

å…¶ä¸­å¥–å“ prizes çš„é…ç½®æè¿°å¦‚下:

傿•° 值类型 æè¿°
type Number 奖å“类型,唯一标识,0 是默认特别奖的å ä½ç¬¦ï¼Œå…¶å®ƒå¥–å“ä¸å¯ä½¿ç”¨
count Number 奖哿•°é‡
text String 奖项åç§°
title String å¥–å“æè¿°
img String 奖å“的图片地å€ï¼Œå›¾ç‰‡åœ¨img目录下
// 奖å“ä¿¡æ¯ï¼Œç¬¬ä¸€é¡¹ä¸ºé¢„留项ä¸å¯ä¿®æ”¹ï¼Œå…¶ä»–项坿 ¹æ®éœ€è¦ä¿®æ”¹
let prizes = [{
        type: 0,
        count: 1000,
        title: "",
        text: "特别奖"
    },
    {
        type: 1,
        count: 2,
        text: "特等奖",
        title: "神秘大礼",
        img: "../img/secrit.jpg"
    },
    {
        type: 2,
        count: 5,
        text: "一等奖",
        title: "Mac Pro",
        img: "../img/mbp.jpg"
    }
    ...
];

奖哿¯æ¬¡æŠ½å–个数é…ç½®

EACH_COUNT用于é…ç½®æ¯æ¬¡çš„æŠ½å¥–个数,与 prizes 奖å“一一对应,例如上é¢çš„奖å“é…置对应的抽奖个数é…置如下:

const EACH_COUNT = [1, 1, 5];

如上é…置,表示一次抽å–的奖å“个æ 647A •°é¡ºåºä¸ºï¼šç‰¹åˆ«å¥–æ¯æ¬¡æŠ½ä¸€ä¸ªï¼Œç‰¹ç­‰å¥–æ¯æ¬¡æŠ½ä¸€ä¸ªï¼Œä¸€ç­‰å¥–æ¯æ¬¡æŠ½äº”个

ä¼ä¸šæ ‡è¯†é…ç½®

该标识用于显示在抽奖å¡ç‰‡ä¸Šã€‚

const COMPANY = "MoShang";

License

MIT

About

🎉🌟✨🎈年会抽奖程åºï¼ŒåŸºäºŽ Express + Three.jsçš„ 3D çƒä½“抽奖程åºï¼Œå¥–å“🧧ðŸŽï¼Œæ–‡å­—,图片,抽奖规则å‡å¯é…置,😜抽奖人员信æ¯Excel一键导入ðŸ˜ï¼ŒæŠ½å¥–结果Excel导出😎,给你的抽奖活动带æ¥å…¨æ–°é…·ç‚«ä½“验🚀🚀🚀

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 86.6%
  • CSS 11.3%
  • HTML 1.7%
  • Dockerfile 0.4%
0