java6个人抽奖抽三个人,基于Java的抽奖逻辑

本文介绍了如何使用Java实现一个抽奖系统,包括抽奖逻辑和数据库设计。系统包含三个抽奖环节,每轮抽取不同数量的不重复中奖者。通过分析表结构,实现了从人员信息表中抽取中奖者并更新中奖状态的功能。抽奖过程通过WebSocket实现实时通信,确保结果的即时性。
摘要由CSDN通过智能技术生成

小组在做一个抽奖系统,现在给我分配到了抽奖逻辑这方面的实现。

EMMM,拿到分配的时候是懵B的。

3e6887be1d8a

老大给的需求图

给的关键表结构

DROP TABLE IF EXISTS `dd_annual_meeting_check`;

CREATE TABLE `dd_annual_meeting_check` (

`check_id` int(255) NOT NULL AUTO_INCREMENT COMMENT '主键',

`check_prize_id` varchar(255) NOT NULL COMMENT '抽奖Id',

`emp_id` int(10) NOT NULL COMMENT '中奖员工id',

`emp_prize_time` varchar(255) NOT NULL COMMENT '中奖时间',

`check_receive` varchar(100) NOT NULL COMMENT '核销 0-已经核销 1-未核销',

`check_user_id` int(10) DEFAULT NULL COMMENT '核销工作人员(对于员工id)',

`check_time` varchar(255) DEFAULT NULL COMMENT '核销时间',

PRIMARY KEY (`check_id`)

) ENGINE=InnoDB AUTO_INCREMENT=158 DEFAULT CHARSET=utf8 COMMENT='中奖池信息表';

DROP TABLE IF EXISTS `dd_annual_meeting_prize`;

CREATE TABLE `dd_annual_meeting_prize` (

`prize_id` varchar(255) NOT NULL COMMENT '主键',

`prize_name` varchar(100) NOT NULL COMMENT '抽奖名称',

`prize_num` varchar(100) NOT NULL COMMENT '抽奖总人数',

`prize_count` varchar(100) NOT NULL COMMENT '每次中奖人数',

`prize_range` varchar(100) DEFAULT NULL COMMENT '抽奖范围: 0-all 1-未中奖',

`prize_state` varchar(100) DEFAULT NULL COMMENT '状态: 0-待抽 1-抽中 2-已抽',

`prize_date` varchar(255) DEFAULT NULL COMMENT '状态时间',

`leader_id` int(10) NOT NULL COMMENT '抽奖领导Id',

`giver_id` int(10) DEFAULT NULL COMMENT '加奖人Id',

`prize_detial` varchar(100) NOT NULL COMMENT '抽奖详情',

`giver_state` varchar(255) DEFAULT '0' COMMENT '是否加奖 0-否 1-是',

PRIMARY KEY (`prize_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='抽奖池信息表';

DROP TABLE IF EXISTS `dd_annual_meeting_user`;

CREATE TABLE `dd_annual_meeting_user` (

`u_id` int(10) NOT NULL AUTO_INCREMENT,

`user_id` varchar(100) NOT NULL COMMENT '员工工号',

`user_name` varchar(100) NOT NULL COMMENT '员工姓名',

`user_time` varchar(255) DEFAULT NULL COMMENT '扫码时间',

`user_type` varchar(100) DEFAULT NULL COMMENT '身份: 0-普通员工 1-领导 2-工作人员',

`user_state` varchar(100) DEFAULT NULL COMMENT '状态: 1-已领取0-未领取',

`state_date` varchar(255) DEFAULT NULL COMMENT '

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值