[数据表字段设计思路争论]设计一个关于门禁路数通行次数字段的数据库设计

查看 64|回复 4
作者:xianbing278   
如题,关于门禁路数字段的设计有了分歧
需求(是一个整体需求,按段路说了):
1.门禁是一个 lock_id ,它下面还有一路,二路,三路的通行权限。
2.现在有一个通行表里面保存了某个人在某个时间对于某个门禁的一个通行有效期,有这样一条记录在就相当于它有了一个临时通行卡这个作用。
3.每一次他点击按钮开门通行时会有一个通行记录,详细到某个门路上
4.现在需要对某个门禁的某个门路有一个通行次数的权限校验

解决方案:
第一个想法:
1.某个门路的通行次数做成一个配置项可动态调整,比如 1 路=>10 次,2 路=>3 次,3 路=>4 次。然后在需要校验的地方拿配置项内允许的通行次数和通行记录比较来判断权限

第二个想法:
1.某个门路的通行次数做成数据库字段,存入通行表内,比如 lock_one_validity_count,lock_two_validity_count,lock_three_validity_count 。分别代表三个门路的可通行次数,通行一次减一次的做法

请问哪种方式更合适呢

通行, 门路, 次数, 门禁路

ChuanlongYou   
方法二的话,会存在比 4 路更多路数的控制器吗?
xianbing278
OP
  
@ChuanlongYou 会,可能存在这种情况的
ChuanlongYou   
@xianbing278 虽然字段省事,用就是每条记录都得按照最大路数的结构存,个人感觉不是太好。我之前做的门禁系是存路为实体,和控制器是绑定关系。
Morii   
如果周期结束通行次数会重置的话,放表里会比较麻烦。扔到 Redis 做吧
您需要登录后才可以回帖 登录 | 立即注册

返回顶部