rust-api-template/src/api/routes/files/mod.rs

31 lines
899 B
Rust
Raw Normal View History

2025-05-04 20:17:09 +00:00
pub mod handlers;
2025-04-05 17:10:55 +00:00
mod models;
mod sql;
use axum::extract::DefaultBodyLimit;
use utoipa_axum::{router::OpenApiRouter, routes};
2025-05-04 20:17:09 +00:00
use crate::login_required;
2025-04-05 17:10:55 +00:00
2025-05-04 20:17:09 +00:00
use handlers::{
files_draft_delete::*, files_draft_get::*, files_draft_post::*, files_file_get::*,
files_order_bundle_get::*, files_order_get::*, files_order_post::*,
};
2025-04-05 17:10:55 +00:00
const FILE_SIZE_LIMIT_MB: usize = 20;
// expose the OpenAPI to parent module
pub fn router() -> OpenApiRouter {
OpenApiRouter::new()
2025-05-04 20:17:09 +00:00
.routes(routes!(get_specified_file))
.routes(routes!(get_attached_order_files_zip_bundle))
.routes(routes!(
upload_draft_file,
get_attached_draft_files,
delete_draft_file
))
.routes(routes!(upload_order_file, get_attached_order_files))
2025-04-05 17:10:55 +00:00
.layer(DefaultBodyLimit::max(FILE_SIZE_LIMIT_MB * 1000 * 1000))
2025-05-04 20:17:09 +00:00
.route_layer(login_required!())
2025-04-05 17:10:55 +00:00
}