【发布时间】:2016-03-24 14:40:06
【问题描述】:
我正在开发一个升级系统,当用户达到一定数量的点时,用户就会升级,当他/她获得 100 点时将升级到 2 级。
为此,我能够“实时”进行练级,因为我会检查是否有新点添加到表中,系统将计算他/她是否符合标准。
但是现在,有一个等级下降的场景,如果用户在当前等级到期之前未能升级到下一个等级(以到期日期和时间表示),用户将被降级。如果我将所有级别的到期时间设置为午夜(凌晨 12 点)并运行作业以扫描所有用户以检查是否有任何用户必须降级,我就能够做到这一点。
我的问题是,如果我允许级别到期时间不仅是午夜,而是按照他/她升级的时间,如果用户在 2016 年 3 月 24 日上午 9:30 升级到 2 级,那么该级别到期时间为 2016/4/24 上午 9:30。
在这种情况下,我如何检查该用户是否应该被降级,如果该用户当时没有登录或获得任何新积分?由于所有用户的到期时间可能不同,因此我无法为此级别降低设置任何作业。
提前致谢。
【问题讨论】:
标签: c# database real-time sql-job