重构:提取 calculateNewLevel() 私有方法,增加在职职务等级保护逻辑

This commit is contained in:
2026-03-12 06:52:40 +08:00
parent 529a59551c
commit 174ee8241d
3 changed files with 164 additions and 98 deletions

View File

@@ -126,7 +126,10 @@ class RedPacketController extends Controller
});
// 广播系统公告,含可点击「立即抢包」按钮
$btnHtml = '<button onclick="showRedPacketModal('
// 注意这里不能死命传 self::EXPIRE_SECONDS因为这句话会被存入数据库的历史记录。我们需要在取出来的时候能根据发包时间动态变化
// 啊等等!由于这条消息是直接静态写入 `chat_messages` 内容里的,这就意味着如果在这里计算,存进去的还是 300。
// 所以我们还是传 `self::EXPIRE_SECONDS` 作为总寿命,在前端逻辑里利用 `Date.now()` 和消息的 `sent_at` 来算出真实剩余倒计时更为严谨!
$btnHtml = '<button data-sent-at="'.time().'" onclick="showRedPacketModal('
.$envelope->id
.',\''.$user->username.'\','
.self::TOTAL_AMOUNT.','