server: Allow to rename the household
This commit is contained in:
parent
c23da789a1
commit
f815441240
3 changed files with 22 additions and 2 deletions
|
|
@ -38,6 +38,11 @@ pub struct CreateHouseholdResponse {
|
||||||
pub id: Uuid,
|
pub id: Uuid,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Serialize, Deserialize)]
|
||||||
|
pub struct RenameHouseholdRequest {
|
||||||
|
pub name: String,
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(Serialize, Deserialize)]
|
#[derive(Serialize, Deserialize)]
|
||||||
pub struct AddToHouseholdRequest {
|
pub struct AddToHouseholdRequest {
|
||||||
pub user: Uuid,
|
pub user: Uuid,
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ use sea_query::OnConflict;
|
||||||
|
|
||||||
use api::{
|
use api::{
|
||||||
AddToHouseholdRequest, CreateHouseholdRequest, CreateHouseholdResponse, EmptyResponse,
|
AddToHouseholdRequest, CreateHouseholdRequest, CreateHouseholdResponse, EmptyResponse,
|
||||||
Households,
|
Households, RenameHouseholdRequest,
|
||||||
};
|
};
|
||||||
use serde::Deserialize;
|
use serde::Deserialize;
|
||||||
|
|
||||||
|
|
@ -154,3 +154,17 @@ pub(super) async fn leave(
|
||||||
|
|
||||||
Ok(Json(EmptyResponse {}))
|
Ok(Json(EmptyResponse {}))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub(super) async fn rename(
|
||||||
|
AuthorizedHousehold(household): AuthorizedHousehold,
|
||||||
|
state: State<AppState>,
|
||||||
|
Json(request): Json<RenameHouseholdRequest>,
|
||||||
|
) -> super::JsonResult<EmptyResponse> {
|
||||||
|
let mut household: household::ActiveModel = household.into();
|
||||||
|
|
||||||
|
household.name = ActiveValue::Set(request.name);
|
||||||
|
|
||||||
|
household.update(&state.db).await?;
|
||||||
|
|
||||||
|
Ok(Json(EmptyResponse {}))
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -188,7 +188,8 @@ pub(crate) fn router(api_allowed: Option<HeaderValue>) -> Router<AppState> {
|
||||||
"/household/:house_id",
|
"/household/:house_id",
|
||||||
put(household::add_member)
|
put(household::add_member)
|
||||||
.delete(household::leave)
|
.delete(household::leave)
|
||||||
.layer(mk_service(vec![Method::PUT, Method::DELETE])),
|
.patch(household::rename)
|
||||||
|
.layer(mk_service(vec![Method::PUT, Method::DELETE, Method::PATCH])),
|
||||||
)
|
)
|
||||||
.route(
|
.route(
|
||||||
"/household/:house_id/ingredients/:iid",
|
"/household/:house_id/ingredients/:iid",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue