|
1 | 1 | use super::{ |
2 | | - RankingRequest, RankingRequestFormat, RankingResponseFormat, RankingSelector, UserRankRequest, |
| 2 | + RankingRequest, RankingRequestFormat, RankingResponse, RankingSelector, UserRankRequest, |
3 | 3 | UserRankResponse, UserRankSelector, |
4 | 4 | }; |
5 | 5 |
|
6 | 6 | use actix_web::{error, web, Result}; |
7 | 7 | use async_trait::async_trait; |
8 | | -use serde::Serialize; |
9 | 8 | use sql_client::{rated_point_sum::RatedPointSumClient, PgPool}; |
10 | 9 |
|
11 | | -#[deprecated( |
12 | | - note = "this special Response type is deprecated and will be replaced with super::RankingResponse" |
13 | | -)] |
14 | | -#[derive(Debug, Serialize)] |
15 | | -pub(crate) struct RPSRankingResponse { |
16 | | - user_id: String, |
17 | | - count: i64, |
18 | | - point_sum: i64, |
19 | | -} |
20 | | - |
21 | | -impl RankingResponseFormat for RPSRankingResponse {} |
22 | | - |
23 | 10 | pub(crate) struct RatedPointSumRanking; |
24 | 11 |
|
25 | 12 | #[async_trait(?Send)] |
26 | 13 | impl RankingSelector for RatedPointSumRanking { |
27 | 14 | type Request = RankingRequest; |
28 | | - type Response = RPSRankingResponse; |
| 15 | + type Response = RankingResponse; |
29 | 16 | async fn fetch(pool: web::Data<PgPool>, query: Self::Request) -> Result<Vec<Self::Response>> { |
30 | 17 | let ranking = pool |
31 | 18 | .load_rated_point_sum_in_range(query.range()) |
32 | 19 | .await |
33 | 20 | .map_err(error::ErrorInternalServerError)?; |
34 | 21 | Ok(ranking |
35 | 22 | .into_iter() |
36 | | - .map(|entry| RPSRankingResponse { |
| 23 | + .map(|entry| RankingResponse { |
37 | 24 | user_id: entry.user_id, |
38 | 25 | count: entry.point_sum, |
39 | | - point_sum: entry.point_sum, |
40 | 26 | }) |
41 | 27 | .collect()) |
42 | 28 | } |
|
0 commit comments