perf: use redeem usage index
This commit is contained in:
@@ -1852,8 +1852,8 @@ fn latest_profile_recharge_order(
|
|||||||
fn count_profile_redeem_code_user_usage(ctx: &ReducerContext, code: &str, user_id: &str) -> u32 {
|
fn count_profile_redeem_code_user_usage(ctx: &ReducerContext, code: &str, user_id: &str) -> u32 {
|
||||||
ctx.db
|
ctx.db
|
||||||
.profile_redeem_code_usage()
|
.profile_redeem_code_usage()
|
||||||
.iter()
|
.by_profile_redeem_code_usage_code_user_id()
|
||||||
.filter(|row| row.code == code && row.user_id == user_id)
|
.filter((code, user_id))
|
||||||
.count() as u32
|
.count() as u32
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1863,12 +1863,7 @@ fn build_profile_redeem_code_usage_id(
|
|||||||
user_id: &str,
|
user_id: &str,
|
||||||
redeemed_at_micros: i64,
|
redeemed_at_micros: i64,
|
||||||
) -> String {
|
) -> String {
|
||||||
let sequence = ctx
|
let sequence = count_profile_redeem_code_user_usage(ctx, code, user_id);
|
||||||
.db
|
|
||||||
.profile_redeem_code_usage()
|
|
||||||
.iter()
|
|
||||||
.filter(|row| row.code == code && row.user_id == user_id)
|
|
||||||
.count();
|
|
||||||
format!(
|
format!(
|
||||||
"redeem:{}:{}:{}:{}",
|
"redeem:{}:{}:{}:{}",
|
||||||
code, user_id, redeemed_at_micros, sequence
|
code, user_id, redeemed_at_micros, sequence
|
||||||
|
|||||||
Reference in New Issue
Block a user