Add an accommodations reservations module #188

Merged
pierre merged 81 commits from accomodation_module into master 2024-06-22 21:30:26 +00:00
2 changed files with 12 additions and 3 deletions
Showing only changes of commit 49f3677081 - Show all commits

View File

@ -1,7 +1,7 @@
use crate::constants::StaticConstraints;
use crate::controllers::HttpResult;
use crate::extractors::accommodation_extractor::FamilyAndAccommodationInPath;
use crate::extractors::family_extractor::FamilyInPathWithAdminMembership;
use crate::extractors::family_extractor::{FamilyInPath, FamilyInPathWithAdminMembership};
use crate::models::Accommodation;
use crate::services::accommodations_list_service;
use actix_web::{web, HttpResponse};
@ -66,6 +66,12 @@ pub async fn create(
Ok(HttpResponse::Ok().json(accommodation))
}
/// Get the full list of accommodations
pub async fn get_full_list(m: FamilyInPath) -> HttpResult {
Ok(HttpResponse::Ok()
.json(accommodations_list_service::get_all_of_family(m.family_id()).await?))
}
/// Delete an accommodation
pub async fn delete(
m: FamilyAndAccommodationInPath,

View File

@ -210,13 +210,16 @@ async fn main() -> std::io::Result<()> {
"/family/{id}/accommodations/list/create",
web::post().to(accommodations_list_controller::create),
)
// TODO : update
.route(
"/family/{id}/accommodations/list/list",
web::get().to(accommodations_list_controller::get_full_list),
)
.route(
"/family/{id}/accommodations/list/{accommodation_id}",
web::delete().to(accommodations_list_controller::delete),
)
// TODO : list
// TODO : get single
// TODO : update
// [ACCOMODATIONS] Reservations controller
// TODO : create
// TODO : update