feat: Enhance Hackathon Timeline Management and Admin Features

- Updated HackathonTimelineCreateRequestDto to accept optional title and name fields.
- Added custom validators for HackathonPhase and date checks in hackathon_dto.rs.
- Implemented admin-sensitive data management DTOs for handling user scores and personal info.
- Introduced new admin routes for managing users, roles, and permissions in IAM module.
- Added timeline enforcement middleware to restrict access based on hackathon phases.
- Created tests for timeline enforcement and admin permissions to ensure proper access control.
- Implemented payment middleware as a placeholder for future payment processing logic.
- Enhanced audit logging middleware for improved error handling and logging.
This commit is contained in:
MythEclipse
2025-10-13 10:57:53 +07:00
parent 6f596efadd
commit 6915a97d79
28 changed files with 1331 additions and 114 deletions
+7
View File
@@ -51,6 +51,13 @@ pub struct ResponseListSuccessDto<T: Serialize> {
}
#[derive(Clone, Debug, Serialize, Deserialize, ToSchema)]
pub struct ErrorDto {
pub status: u16,
pub message: String,
pub details: Option<serde_json::Value>,
}
#[derive(Debug, serde::Deserialize)]
pub struct CountResult {
pub count: u64,
+1
View File
@@ -9,6 +9,7 @@ pub use error_dto::error::Error;
// Explicit common_dto exports
pub use common_dto::CountResult;
pub use common_dto::ErrorDto;
pub use common_dto::MessageResponseDto;
pub use common_dto::MetaRequestDto;
pub use common_dto::MetaResponseDto;