Coder Social home page Coder Social logo

annual-meeting-lottery's Introduction

《年会2017抽奖器说明书》

一、使用步骤

  • 1.安装非IE的浏览器(最好是chrome谷歌浏览器)。

  • 2.当要抽对应奖项时,点开对应文件(每一个奖项对应一个抽奖器页面,双击或者右键单机->用浏览器打开。) 例如:抽”一等奖”时,点开”一等奖抽奖器.htm”。

  • 3.点击【全屏显示】按钮,全屏显示后,满足16:9的屏幕投影要求,并且背景图加了高像素自动缩放的代码逻辑,不会影响分辨率。

  • 4.按照回车提示,开始抽奖

  • 5.抽中的人会被标红,然后需要现场用手机拍照或者其他方式记下来,如果没人上台,可以继续抽下一个,这样可以很好满足补抽和重复中奖的case。(把抽奖系统抽象成了以次数为逻辑来执行,方便现场主持人和记录人灵活调整策略)

  • 6.每个抽奖器的次数的限制为100次(足够用了)。

  • 7.可以复用到以后各种抽奖场合下,只需要简单编辑2个接口就可以替换【抽奖名单】以及【奖项名称】

二、开发心得

困难点:

  • 1.这次的需求发布的特别晚,问题暴露的晚,年会前只预留了3个工作日。
  • 2.无人力配合,一个人需要兼职FE\QA\UE多个角色,其中抽奖逻辑,样式和测试的
  • 3.需求方是助理,很多时候没法像专业PM一样去布置工作和任务,这点特别理解对方,所以都是RD我自己在过滤需求,设计开发方案。
  • 4.年会节目最终走场排练、年会抽奖器、业务线常规开发工作、三条主线工作并行,主要给大家准备年会节目走场排练比较占用时间,3个工作日里实际投入抽奖器的时间很少,都是靠熬夜和加班补上进度,保证功能。

解决程度:

  • 1.尽量让助理和主持人操作起来简单,所以我只设置了一个全屏按钮键和一个回车键,来触发。
  • 2.满足补抽、老板特别奖的临时需求。
  • 3.在代码文件中替换<textarea name="candidates">人员名单数据,即可复用,比上一期若凡的版本复用起来容易。
  • 4.在代码文件中替换<textarea name="prizes">奖项,配置”奖项名|数量|每次抽几个|奖品”,即可灵活配置奖项名称和每次抽奖个数,比上一期若凡的版本复用起来容易。
  • 5.只要浏览器就能打开,跨平台,多终端都能显示。
  • 6.程序为JS/HTML编写的本地静态页,无需网络通信要求,适用与酒店舞台现场。
  • 7.支持16:9的全屏显示以及设备投影
  • 8.如果现场临时有Review源代码的需求,可以直接用记事本打开所有.html文件进行现场code review(比那些打成jar包和编译后的桌面应用程序更方便更透明),透明其公开,严格遵守阳光职场的信念,不越红线。

三、决定开源

  • 因为在做抽奖器之前,就考虑到是否能适用到以后各种抽奖场合,所以在设计的时候,预留了通用接口来提高程序的复用性,也为开源给大家使用\完善,做了初步的准备。大家可以自行下载资源代码,按照使用步骤进行测试,学习,改进。

  • 欢迎大家提交issue和反馈。

  • Demo体验地址

Author:小枫([email protected]

annual-meeting-lottery's People

Contributors

daijiale avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.