小程序题库解锁逻辑梳理
发布于 4 年前 作者 weiliu 2975 次浏览 来自 分享

该文为个人小程序逻辑记录,涉及比较复杂的业务逻辑,不推荐大家阅读


本文背景

今天是带着该小程序的一个遗留问题来梳理部分核心逻辑,该遗留问题为特定场景必现,但是这个场景目前没有定位到,平时偶尔会有用户出现,今晚上梳理了一遍逻辑还是没有定位到,目前在已有逻辑基础上,加了一些日志信息,希望能捕捉到这块蛛丝马迹。

本文主要分析某小程序题库解锁逻辑的一些细节逻辑,这个地方是整个小程序的核心。

本文内容

关于集合locks

该集合中存在状态定义为1、2的记录,具体为

当题库解锁时,新增一条状态为1的记录;

当题库里面某一天的答完时,会将该条记录状态更新为2;

除此之外,业务代码中还有一种初始化状态为0,也就是该集合一共三种状态

0、1、2

分别代表了该科目未解锁、已解锁未完成、已解锁已完成三种情况

这里重点描述下0、2这种情况

对于状态0,我们在进入该状态时,要判断是否首次解锁,如果是首次解锁不需要扣活跃值;

对于状态2,我们在进入该状态时,不需要判断是否首次,直接扣活跃值即可;

本文总结

本文梳理了题库解锁的具体细节,通过这个细节处理,能让我更清晰的了解目前的解锁控制逻辑,也有助于解决当前存在的遗留问题。

2 回复

最近社区答题的帖子很多啊,看得烦

又是小肥羊的小号?每天整那么些东西似乎很好玩哦,这是第几个小号了?

回到顶部