perf: use redeem usage index

This commit is contained in:
2026-04-28 14:14:21 +08:00
parent 6611852a97
commit fb965a1207

View File

@@ -1852,8 +1852,8 @@ fn latest_profile_recharge_order(
fn count_profile_redeem_code_user_usage(ctx: &ReducerContext, code: &str, user_id: &str) -> u32 {
ctx.db
.profile_redeem_code_usage()
.iter()
.filter(|row| row.code == code && row.user_id == user_id)
.by_profile_redeem_code_usage_code_user_id()
.filter((code, user_id))
.count() as u32
}
@@ -1863,12 +1863,7 @@ fn build_profile_redeem_code_usage_id(
user_id: &str,
redeemed_at_micros: i64,
) -> String {
let sequence = ctx
.db
.profile_redeem_code_usage()
.iter()
.filter(|row| row.code == code && row.user_id == user_id)
.count();
let sequence = count_profile_redeem_code_user_usage(ctx, code, user_id);
format!(
"redeem:{}:{}:{}:{}",
code, user_id, redeemed_at_micros, sequence