From e536cb326a67fffd511ead4a87655ca5ef98bf29 Mon Sep 17 00:00:00 2001 From: Benedikt Peetz Date: Tue, 23 Sep 2025 17:16:23 +0200 Subject: feat(crates/rocies-server): Don't make the newtype wrappers transparent in the openapi spec This makes using the generated code significantly easier and type safer. --- crates/rocie-server/src/api/set/barcode.rs | 10 +++++----- crates/rocie-server/src/api/set/product.rs | 6 +++--- 2 files changed, 8 insertions(+), 8 deletions(-) (limited to 'crates/rocie-server/src/api/set') diff --git a/crates/rocie-server/src/api/set/barcode.rs b/crates/rocie-server/src/api/set/barcode.rs index a89bf4f..60b1650 100644 --- a/crates/rocie-server/src/api/set/barcode.rs +++ b/crates/rocie-server/src/api/set/barcode.rs @@ -4,7 +4,7 @@ use log::debug; use crate::{ app::App, storage::sql::{ - barcode::{Barcode, BarcodeId, UnitAmount}, + barcode::{Barcode, BarcodeId, BarcodeIdStub, UnitAmount}, insert::Operations, }, }; @@ -33,11 +33,11 @@ use crate::{ #[post("/barcode/{id}/buy")] pub(crate) async fn buy_barcode( app: web::Data, - barcode_id: web::Path, + barcode_id: web::Path, ) -> Result { let mut ops = Operations::new("buy barcode unit"); - let barcode = Barcode::from_id(&app, barcode_id.into_inner()).await?; + let barcode = Barcode::from_id(&app, barcode_id.into_inner().into()).await?; match barcode { Some(barcode) => { @@ -76,12 +76,12 @@ pub(crate) async fn buy_barcode( #[post("/barcode/{id}/consume")] pub(crate) async fn consume_barcode( app: web::Data, - barcode_id: web::Path, + barcode_id: web::Path, unit_amount: web::Json, ) -> Result { let mut ops = Operations::new("consume barcode unit"); - let barcode = Barcode::from_id(&app, barcode_id.into_inner()).await?; + let barcode = Barcode::from_id(&app, barcode_id.into_inner().into()).await?; debug!("Starting consume for barcode: {barcode:?}"); match barcode { diff --git a/crates/rocie-server/src/api/set/product.rs b/crates/rocie-server/src/api/set/product.rs index 19024c7..d347ee7 100644 --- a/crates/rocie-server/src/api/set/product.rs +++ b/crates/rocie-server/src/api/set/product.rs @@ -7,7 +7,7 @@ use crate::{ storage::sql::{ barcode::Barcode, insert::Operations, - product::{Product, ProductId}, + product::{Product, ProductId, ProductIdStub}, unit::Unit, }, }; @@ -84,7 +84,7 @@ pub(crate) async fn register_product( #[post("/product/{id}/associate")] pub(crate) async fn associate_barcode( app: web::Data, - id: web::Path, + id: web::Path, barcode: web::Json, ) -> Result { let mut ops = Operations::new("associated barcode with product"); @@ -97,7 +97,7 @@ pub(crate) async fn associate_barcode( } } - match Product::from_id(&app, id.into_inner()).await? { + match Product::from_id(&app, id.into_inner().into()).await? { Some(product) => { product.associate_barcode(barcode.into_inner(), &mut ops); -- cgit 1.4.1