怎么利用Java编写一个抽奖功能
发布时间:2020-11-27 14:09:08
来源:亿速云
阅读:100
作者:Leah
本篇文章给大家分享的是有关怎么利用Java编写一个抽奖功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
整个抽奖过程包括以下几个方面:奖品
奖品池
抽奖算法
奖品限制
奖品发放
奖品
奖品包括奖品、奖品概率和限制、奖品记录。
奖品表:CREATE TABLE `points_luck_draw_prize` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`name` varchar(50) DEFAULT NULL COMMENT '奖品名称',
`url` varchar(50) DEFAULT NULL COMMENT '图片地址',
`value` varchar(20) DEFAULT NULL,
`type` tinyint(4) DEFAULT NULL COMMENT '类型1:红包2:积分3:体验金4:谢谢惠顾5:自定义',
`status` tinyint(4) DEFAULT NULL COMMENT '状态',
`is_del` bit(1) DEFAULT NULL COMMENT '是否删除',
`position` int(5) DEFAULT NULL COMMENT '位置',
`phase` int(10) DEFAULT NULL COMMENT '期数',
`create_time` datetime DEFAULT NULL,
`update_time` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=164 DEFAULT CHARSET=utf8mb4 COMMENT='奖品表';
奖品概率限制表:CREATE TABLE `points_luck_draw_probability` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`points_prize_id` bigint(20) DEFAULT NULL COMMENT '奖品ID',
`points_prize_phase` int(10) DEFAULT NULL COMMENT '奖品期数',
`probability` float(4,2) DEFAULT NULL COMMENT '概率',
`frozen` int(11) DEFAULT NULL COMMENT '商品抽中后的冷冻次数',
`prize_day_max_times` int(11) DEFAULT NULL COMMENT '该商品平台每天最多抽中的次数',
`user_prize_mont