Skip to content

Commit e7650ee

Browse files
committed
bug: fixed funcs
1 parent 1b179b5 commit e7650ee

File tree

5 files changed

+19
-31
lines changed

5 files changed

+19
-31
lines changed

atcoder-problems-backend/src/server/problem_list.rs

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -19,21 +19,14 @@ pub(crate) async fn get_own_lists<A: Authentication + Clone + Send + Sync + 'sta
1919
Ok(response)
2020
}
2121

22-
#[derive(Deserialize)]
23-
pub(crate) struct GetListQuery {
24-
list_id: String,
25-
}
26-
27-
pub(crate) async fn get_single_list<A: Authentication + Clone + Send + Sync + 'static>(
22+
pub(crate) async fn get_single_list<A>(
2823
request: HttpRequest,
2924
data: web::Data<AppData<A>>,
30-
query: web::Query<GetListQuery>,
25+
list_id: web::Path<String>,
3126
) -> Result<HttpResponse> {
32-
let user_id = data.get_authorized_id(request.cookie("token")).await?;
3327
let conn = data.pg_pool.clone();
34-
let list_id = &query.list_id;
3528
let list = conn
36-
.get_single_list(list_id)
29+
.get_single_list(&list_id)
3730
.await
3831
.map_err(error::ErrorInternalServerError)?;
3932
let response = HttpResponse::json(&list)?;

atcoder-problems-backend/src/server/ranking/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ pub(crate) trait RankingSelector<A: Sync + Send + Clone + 'static> {
4242
async fn get_ranking(request: HttpRequest, data: web::Data<AppData<A>>, query: web::Query<RankingRequest>) -> Result<HttpResponse> {
4343
let query = (query.from)..(query.to);
4444
if query.len() > MAX_RANKING_RANGE_LENGTH {
45-
return Ok(HttpResponse::Ok().finish());
45+
return Ok(HttpResponse::BadRequest().finish());
4646
}
4747
let ranking = Self::fetch(data, query).await?;
4848
let response = HttpResponse::json(&ranking)?;
@@ -153,7 +153,7 @@ pub(crate) async fn get_language_ranking<A>(
153153
let conn = data.pg_pool.clone();
154154
let range = (query.from)..(query.to);
155155
if range.len() > MAX_RANKING_RANGE_LENGTH {
156-
return Ok(HttpResponse::Ok().finish());
156+
return Ok(HttpResponse::BadRequest().finish());
157157
}
158158

159159
let ranking = conn

atcoder-problems-backend/src/server/rated_point_sum_ranking.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ pub(crate) async fn get_rated_point_sum_ranking<A>(
1919
let conn = data.pg_pool.clone();
2020
let query = (query.from)..(query.to);
2121
if query.len() > MAX_RANKING_RANGE_LENGTH {
22-
return Ok(HttpResponse::Ok().finish());
22+
return Ok(HttpResponse::BadRequest().finish());
2323
}
2424

2525
let ranking = conn

atcoder-problems-backend/src/server/time_submissions.rs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,13 @@ use actix_web::{error, web, HttpRequest, HttpResponse, Result};
33
use serde::Deserialize;
44
use sql_client::submission_client::{SubmissionClient, SubmissionRequest};
55

6-
#[derive(Deserialize)]
7-
pub(crate) struct Query {
8-
from: i64,
9-
}
106

117
pub(crate) async fn get_time_submissions<A>(
128
request: HttpRequest,
139
data: web::Data<AppData<A>>,
14-
query: web::Query<Query>,
10+
from: web::Path<i64>,
1511
) -> Result<HttpResponse> {
16-
let from_epoch_second = query.from;
12+
let from_epoch_second = from.into_inner();
1713
let conn = data.pg_pool.clone();
1814
let submissions: Vec<_> = conn
1915
.get_submissions(SubmissionRequest::FromTime {

atcoder-problems-backend/src/server/virtual_contest.rs

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -117,28 +117,22 @@ pub(crate) async fn get_participated<A: Authentication + Clone + Send + Sync + '
117117
Ok(response)
118118
}
119119

120-
#[derive(Deserialize)]
121-
pub(crate) struct SingleContestQuery {
122-
contest_id: String
123-
}
124-
125-
pub(crate) async fn get_single_contest<A: Authentication + Clone + Send + Sync + 'static>(
120+
pub(crate) async fn get_single_contest<A>(
126121
request: HttpRequest,
127122
data: web::Data<AppData<A>>,
128-
query: web::Query<SingleContestQuery>,
123+
contest_id: web::Path<String>,
129124
) -> Result<HttpResponse> {
130125
#[derive(Serialize)]
131126
struct VirtualContestDetails {
132127
info: VirtualContestInfo,
133128
problems: Vec<VirtualContestItem>,
134129
participants: Vec<String>,
135130
}
136-
let user_id = data.get_authorized_id(request.cookie("token")).await?;
131+
137132
let conn = data.pg_pool.clone();
138-
let contest_id = &query.contest_id;
139-
let info = conn.get_single_contest_info(contest_id).await.map_err(error::ErrorInternalServerError)?;
140-
let participants = conn.get_single_contest_participants(contest_id).await.map_err(error::ErrorInternalServerError)?;
141-
let problems = conn.get_single_contest_problems(contest_id).await.map_err(error::ErrorInternalServerError)?;
133+
let info = conn.get_single_contest_info(&contest_id).await.map_err(error::ErrorInternalServerError)?;
134+
let participants = conn.get_single_contest_participants(&contest_id).await.map_err(error::ErrorInternalServerError)?;
135+
let problems = conn.get_single_contest_problems(&contest_id).await.map_err(error::ErrorInternalServerError)?;
142136
let contest = VirtualContestDetails {
143137
info,
144138
problems,
@@ -155,6 +149,11 @@ pub(crate) async fn get_recent_contests<A>(request: HttpRequest, data: web::Data
155149
Ok(response)
156150
}
157151

152+
#[derive(Deserialize)]
153+
pub(crate) struct SingleContestQuery {
154+
contest_id: String
155+
}
156+
158157
pub(crate) async fn join_contest<A: Authentication + Clone + Send + Sync + 'static>(
159158
request: HttpRequest,
160159
data: web::Data<AppData<A>>,

0 commit comments

Comments
 (0)