- Added HackathonStatusChangeRequestDto for status change requests. - Implemented update_hackathon_status method in HackathonRepository to handle status updates. - Enhanced HackathonService to validate and process status changes, including audit logging. - Introduced HackathonAuditLogSchema to track changes and actions related to hackathons. - Created HackathonAuditRepository for managing audit logs. - Added validation functions for hackathon operations, including dates, organizers, and prizes. - Implemented atomic service for creating hackathons with timelines and events, ensuring all-or-nothing behavior. - Updated mod.rs to include new modules for audit logging and validation.
28 lines
811 B
Rust
28 lines
811 B
Rust
use axum::Router;
|
|
|
|
pub mod hackathon_controller;
|
|
pub mod hackathon_dto;
|
|
pub mod hackathon_repository;
|
|
pub mod hackathon_schema;
|
|
pub mod hackathon_service;
|
|
pub mod hackathon_audit_schema;
|
|
pub mod hackathon_audit_repository;
|
|
pub mod hackathon_validation;
|
|
pub mod hackathon_atomic_service;
|
|
|
|
// Export types and functions
|
|
pub use hackathon_dto::*;
|
|
pub use hackathon_repository::HackathonRepository;
|
|
pub use hackathon_schema::*;
|
|
pub use hackathon_service::{HackathonService, HackathonServiceTrait};
|
|
pub use hackathon_audit_schema::*;
|
|
pub use hackathon_audit_repository::HackathonAuditRepository;
|
|
pub use hackathon_validation::*;
|
|
pub use hackathon_atomic_service::*;
|
|
|
|
// Export controller functions
|
|
pub use hackathon_controller::*;
|
|
|
|
pub fn hackathon_router() -> Router {
|
|
hackathon_controller::hackathon_routes()
|
|
} |