积分系统数据库表该什么设计

wzw_123 2015-11-10 03:21:13
我最近在做一个积分系统
主要涉及的业务如下:
1.每日签到添加积分
连续签到得到的积分不同
如第1天签到10积分, 第2天签到20积分

2.每天抽奖获取积分(获取到的积分就是在某两个数之间取随机数)
每天两次免费抽奖机会,超过的话就要消耗积分才能抽奖

3.评论, 回复, 登录, 注册, 完善资料等添加积分

4.可以用积分兑换商品

目前设计的表如下
1.积分类型表 (每天签到, 抽奖, 评论, 回复, 登录等都属于积分类型)
id -- 积分类型id
name -- 积分类型名
explain --积分类型描述
grade -- 每次获取积分数
count -- 每天限制次数(超过就不能再获取积分)
inputTime -- 创建时间


2.积分明细表
id
typeId 积分类型id
grade 积分值(为正表示获取到的积分, 为负表示消耗的积分)
memberId 用户id
explain 描述
inputTime 创建时间

问题就是积分类型表这个表该怎么设计会好点

因为有些类型如注册, 完善资料获取到的积分是确定的
注册送50积分, 完善资料送50积分

但有些类型如每日签到, 抽奖获取到的积分都是不确定的
签到是第1天10积分,连续签到第2天就20积分

注册, 完善资料这些都是属于一次性任务, 做完了就不能再做了

每天签到, 抽奖, 评论, 回复这些都属于每天任务, 每天都有限制次数。
抽奖又比较特殊点限制次数是免费次数, 超过了就要消耗积分

以上, 怎么设计积分类型表会好点?

我只是初出茅庐的新手, 今天第一次发帖, 请各位大神多多指教




...全文
1284 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
1用户表: ID 用户名称 积分 每日签到次数(默认次数) 每日抽奖次数(默认次数) 2.积分记录表 ID 用户ID 积分(加或扣) 变动渠道ID 3.积分商品表 ID 商品名称 图片 积分价格 加入时间 4.变动渠道表 ID 渠道名称(如签到,评论,抽奖) 积分数目(加或者减视自己定义,设置为0,为随机数) 不是写的很完整,大概就是这个意思,欢迎补充 然后每日签到数目限制,解决方案两种: 1.根据用户设定的数目,例如当执行到抽奖时,默认次数减1,直到为0,不在进行抽奖。 但是需要自己设置个定时计划任务,时间更换一天,则恢复默认次数 2.不用设置默认次数,每次抽奖前,查询积分记录表中该用户当天抽奖渠道的次数,判断条件为时间,渠道ID,用户ID,超过设置次数不在抽奖
回复
Gemini_Kanon 2019-04-15
感觉高大上的样纸
回复
虾鱼拌饭 2019-04-15
看一下行不行,完全没有头绪
回复
才! 2016-03-20
积分类型表可以增加一个字段。就是表示这种类型的积分是否是一次性的。然后和你的从表去比对是否加过此类型积分。在类型表加一个字段是为了减少查询的条目数,
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2015-11-10 03:21
社区公告
暂无公告