aboutsummaryrefslogtreecommitdiffstats
path: root/crates
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-09-23 17:17:28 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-09-23 17:17:28 +0200
commit7682da81ff4c775eca048aaf0586593fb159cb85 (patch)
treee310245e136b21e15696ffee2756cc6f49f6ae73 /crates
parentfeat(scripts/generate_api_client.sh): Make the API better by configuring the ... (diff)
downloadserver-7682da81ff4c775eca048aaf0586593fb159cb85.zip
chore(crates/rocie-client): Regenerate
Diffstat (limited to '')
-rw-r--r--crates/rocie-client/.openapi-generator-ignore17
-rw-r--r--crates/rocie-client/.openapi-generator/FILES7
-rw-r--r--crates/rocie-client/README.md9
-rw-r--r--crates/rocie-client/docs/ApiGetInventoryApi.md2
-rw-r--r--crates/rocie-client/docs/ApiGetProductApi.md2
-rw-r--r--crates/rocie-client/docs/ApiGetUnitApi.md2
-rw-r--r--crates/rocie-client/docs/ApiSetBarcodeApi.md4
-rw-r--r--crates/rocie-client/docs/ApiSetProductApi.md6
-rw-r--r--crates/rocie-client/docs/ApiSetUnitApi.md4
-rw-r--r--crates/rocie-client/docs/Barcode.md2
-rw-r--r--crates/rocie-client/docs/BarcodeId.md11
-rw-r--r--crates/rocie-client/docs/Product.md2
-rw-r--r--crates/rocie-client/docs/ProductAmount.md2
-rw-r--r--crates/rocie-client/docs/ProductId.md11
-rw-r--r--crates/rocie-client/docs/ProductStub.md2
-rw-r--r--crates/rocie-client/docs/Unit.md2
-rw-r--r--crates/rocie-client/docs/UnitAmount.md4
-rw-r--r--crates/rocie-client/docs/UnitId.md11
-rw-r--r--crates/rocie-client/src/apis/api_get_inventory_api.rs4
-rw-r--r--crates/rocie-client/src/apis/api_get_product_api.rs4
-rw-r--r--crates/rocie-client/src/apis/api_get_unit_api.rs4
-rw-r--r--crates/rocie-client/src/apis/api_set_barcode_api.rs8
-rw-r--r--crates/rocie-client/src/apis/api_set_product_api.rs10
-rw-r--r--crates/rocie-client/src/apis/api_set_unit_api.rs6
-rw-r--r--crates/rocie-client/src/implies.rs26
-rw-r--r--crates/rocie-client/src/lib.rs1
-rw-r--r--crates/rocie-client/src/models/barcode.rs8
-rw-r--r--crates/rocie-client/src/models/barcode_id.rs27
-rw-r--r--crates/rocie-client/src/models/mod.rs6
-rw-r--r--crates/rocie-client/src/models/product.rs4
-rw-r--r--crates/rocie-client/src/models/product_amount.rs8
-rw-r--r--crates/rocie-client/src/models/product_id.rs27
-rw-r--r--crates/rocie-client/src/models/product_stub.rs4
-rw-r--r--crates/rocie-client/src/models/unit.rs4
-rw-r--r--crates/rocie-client/src/models/unit_amount.rs6
-rw-r--r--crates/rocie-client/src/models/unit_id.rs27
36 files changed, 213 insertions, 71 deletions
diff --git a/crates/rocie-client/.openapi-generator-ignore b/crates/rocie-client/.openapi-generator-ignore
index b0147e0..d0e9b85 100644
--- a/crates/rocie-client/.openapi-generator-ignore
+++ b/crates/rocie-client/.openapi-generator-ignore
@@ -4,20 +4,7 @@
# Use this file to prevent files from being overwritten by the generator.
# The patterns follow closely to .gitignore or .dockerignore.
-# As an example, the C# client generator defines ApiClient.cs.
-# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line:
Cargo.toml
-# You can match any string of characters against a directory, file or extension with a single asterisk (*):
-#foo/*/qux
-# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux
-
-# You can recursively match patterns against a directory, file or extension with a double asterisk (**):
-#foo/**/qux
-# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux
-
-# You can also negate patterns with an exclamation (!).
-# For example, you can ignore all files in a docs folder with the file extension .md:
-#docs/*.md
-# Then explicitly reverse the ignore rule for a single file:
-#!docs/README.md
+src/lib.rs
+src/implies.rs
diff --git a/crates/rocie-client/.openapi-generator/FILES b/crates/rocie-client/.openapi-generator/FILES
index 496c722..8306709 100644
--- a/crates/rocie-client/.openapi-generator/FILES
+++ b/crates/rocie-client/.openapi-generator/FILES
@@ -8,11 +8,14 @@ docs/ApiSetBarcodeApi.md
docs/ApiSetProductApi.md
docs/ApiSetUnitApi.md
docs/Barcode.md
+docs/BarcodeId.md
docs/Product.md
docs/ProductAmount.md
+docs/ProductId.md
docs/ProductStub.md
docs/Unit.md
docs/UnitAmount.md
+docs/UnitId.md
docs/UnitStub.md
git_push.sh
src/apis/api_get_inventory_api.rs
@@ -23,12 +26,14 @@ src/apis/api_set_product_api.rs
src/apis/api_set_unit_api.rs
src/apis/configuration.rs
src/apis/mod.rs
-src/lib.rs
src/models/barcode.rs
+src/models/barcode_id.rs
src/models/mod.rs
src/models/product.rs
src/models/product_amount.rs
+src/models/product_id.rs
src/models/product_stub.rs
src/models/unit.rs
src/models/unit_amount.rs
+src/models/unit_id.rs
src/models/unit_stub.rs
diff --git a/crates/rocie-client/README.md b/crates/rocie-client/README.md
index 346da8d..38c4f5e 100644
--- a/crates/rocie-client/README.md
+++ b/crates/rocie-client/README.md
@@ -1,4 +1,4 @@
-# Rust API client for openapi
+# Rust API client for rocie-client
An enterprise grocery management system
@@ -14,10 +14,10 @@ This API client was generated by the [OpenAPI Generator](https://openapi-generat
## Installation
-Put the package under your project folder in a directory named `openapi` and add the following to `Cargo.toml` under `[dependencies]`:
+Put the package under your project folder in a directory named `rocie-client` and add the following to `Cargo.toml` under `[dependencies]`:
```
-openapi = { path = "./openapi" }
+rocie-client = { path = "./rocie-client" }
```
## Documentation for API Endpoints
@@ -41,11 +41,14 @@ Class | Method | HTTP request | Description
## Documentation For Models
- [Barcode](docs/Barcode.md)
+ - [BarcodeId](docs/BarcodeId.md)
- [Product](docs/Product.md)
- [ProductAmount](docs/ProductAmount.md)
+ - [ProductId](docs/ProductId.md)
- [ProductStub](docs/ProductStub.md)
- [Unit](docs/Unit.md)
- [UnitAmount](docs/UnitAmount.md)
+ - [UnitId](docs/UnitId.md)
- [UnitStub](docs/UnitStub.md)
diff --git a/crates/rocie-client/docs/ApiGetInventoryApi.md b/crates/rocie-client/docs/ApiGetInventoryApi.md
index 0310b96..92a53f9 100644
--- a/crates/rocie-client/docs/ApiGetInventoryApi.md
+++ b/crates/rocie-client/docs/ApiGetInventoryApi.md
@@ -18,7 +18,7 @@ Get the amount of an product
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
-**id** | **uuid::Uuid** | Product id | [required] |
+**id** | [**ProductId**](.md) | Product id | [required] |
### Return type
diff --git a/crates/rocie-client/docs/ApiGetProductApi.md b/crates/rocie-client/docs/ApiGetProductApi.md
index 58955c6..bc991c5 100644
--- a/crates/rocie-client/docs/ApiGetProductApi.md
+++ b/crates/rocie-client/docs/ApiGetProductApi.md
@@ -19,7 +19,7 @@ Get Product by id
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
-**id** | **uuid::Uuid** | Product id | [required] |
+**id** | [**ProductId**](.md) | Product id | [required] |
### Return type
diff --git a/crates/rocie-client/docs/ApiGetUnitApi.md b/crates/rocie-client/docs/ApiGetUnitApi.md
index 3ac44c0..f539aec 100644
--- a/crates/rocie-client/docs/ApiGetUnitApi.md
+++ b/crates/rocie-client/docs/ApiGetUnitApi.md
@@ -19,7 +19,7 @@ Get Unit by id
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
-**id** | **uuid::Uuid** | Unit id | [required] |
+**id** | [**UnitId**](.md) | Unit id | [required] |
### Return type
diff --git a/crates/rocie-client/docs/ApiSetBarcodeApi.md b/crates/rocie-client/docs/ApiSetBarcodeApi.md
index 2075bb9..d77fa6d 100644
--- a/crates/rocie-client/docs/ApiSetBarcodeApi.md
+++ b/crates/rocie-client/docs/ApiSetBarcodeApi.md
@@ -19,7 +19,7 @@ Buy an barcode
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
-**id** | **i32** | The numeric value of the barcode | [required] |
+**id** | [**BarcodeId**](.md) | The numeric value of the barcode | [required] |
### Return type
@@ -47,7 +47,7 @@ Consume an barcode
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
-**id** | **i32** | The numeric value of the barcode | [required] |
+**id** | [**BarcodeId**](.md) | The numeric value of the barcode | [required] |
**unit_amount** | [**UnitAmount**](UnitAmount.md) | | [required] |
### Return type
diff --git a/crates/rocie-client/docs/ApiSetProductApi.md b/crates/rocie-client/docs/ApiSetProductApi.md
index 6166887..bb4ca4e 100644
--- a/crates/rocie-client/docs/ApiSetProductApi.md
+++ b/crates/rocie-client/docs/ApiSetProductApi.md
@@ -19,7 +19,7 @@ Associate a barcode with a product
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
-**id** | **uuid::Uuid** | The id of the product to associated the barcode with | [required] |
+**id** | [**ProductId**](.md) | The id of the product to associated the barcode with | [required] |
**barcode** | [**Barcode**](Barcode.md) | | [required] |
### Return type
@@ -40,7 +40,7 @@ No authorization required
## register_product
-> uuid::Uuid register_product(product_stub)
+> models::ProductId register_product(product_stub)
Register a product
### Parameters
@@ -52,7 +52,7 @@ Name | Type | Description | Required | Notes
### Return type
-[**uuid::Uuid**](uuid::Uuid.md)
+[**models::ProductId**](ProductId.md)
### Authorization
diff --git a/crates/rocie-client/docs/ApiSetUnitApi.md b/crates/rocie-client/docs/ApiSetUnitApi.md
index 6d6d397..ebe8e5c 100644
--- a/crates/rocie-client/docs/ApiSetUnitApi.md
+++ b/crates/rocie-client/docs/ApiSetUnitApi.md
@@ -10,7 +10,7 @@ Method | HTTP request | Description
## register_unit
-> uuid::Uuid register_unit(unit_stub)
+> models::UnitId register_unit(unit_stub)
Register an Unit
### Parameters
@@ -22,7 +22,7 @@ Name | Type | Description | Required | Notes
### Return type
-[**uuid::Uuid**](uuid::Uuid.md)
+[**models::UnitId**](UnitId.md)
### Authorization
diff --git a/crates/rocie-client/docs/Barcode.md b/crates/rocie-client/docs/Barcode.md
index 7e6f4fb..622b82d 100644
--- a/crates/rocie-client/docs/Barcode.md
+++ b/crates/rocie-client/docs/Barcode.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**amount** | [**models::UnitAmount**](UnitAmount.md) | |
-**id** | **i32** | |
+**id** | [**models::BarcodeId**](BarcodeId.md) | |
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
diff --git a/crates/rocie-client/docs/BarcodeId.md b/crates/rocie-client/docs/BarcodeId.md
new file mode 100644
index 0000000..630e07f
--- /dev/null
+++ b/crates/rocie-client/docs/BarcodeId.md
@@ -0,0 +1,11 @@
+# BarcodeId
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**value** | **u32** | |
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/crates/rocie-client/docs/Product.md b/crates/rocie-client/docs/Product.md
index 3995429..6f0f914 100644
--- a/crates/rocie-client/docs/Product.md
+++ b/crates/rocie-client/docs/Product.md
@@ -6,7 +6,7 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**associated_bar_codes** | [**Vec<models::Barcode>**](Barcode.md) | |
**description** | Option<**String**> | | [optional]
-**id** | [**uuid::Uuid**](uuid::Uuid.md) | |
+**id** | [**models::ProductId**](ProductId.md) | |
**name** | **String** | |
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
diff --git a/crates/rocie-client/docs/ProductAmount.md b/crates/rocie-client/docs/ProductAmount.md
index d6e869c..ac5d9cc 100644
--- a/crates/rocie-client/docs/ProductAmount.md
+++ b/crates/rocie-client/docs/ProductAmount.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**amount** | [**models::UnitAmount**](UnitAmount.md) | |
-**product_id** | [**uuid::Uuid**](uuid::Uuid.md) | |
+**product_id** | [**models::ProductId**](ProductId.md) | |
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
diff --git a/crates/rocie-client/docs/ProductId.md b/crates/rocie-client/docs/ProductId.md
new file mode 100644
index 0000000..90dc866
--- /dev/null
+++ b/crates/rocie-client/docs/ProductId.md
@@ -0,0 +1,11 @@
+# ProductId
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**value** | [**uuid::Uuid**](uuid::Uuid.md) | |
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/crates/rocie-client/docs/ProductStub.md b/crates/rocie-client/docs/ProductStub.md
index d0b0db8..4d4ffde 100644
--- a/crates/rocie-client/docs/ProductStub.md
+++ b/crates/rocie-client/docs/ProductStub.md
@@ -6,7 +6,7 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**description** | Option<**String**> | | [optional]
**name** | **String** | |
-**parent** | Option<[**uuid::Uuid**](uuid::Uuid.md)> | | [optional]
+**parent** | Option<[**models::ProductId**](ProductId.md)> | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
diff --git a/crates/rocie-client/docs/Unit.md b/crates/rocie-client/docs/Unit.md
index 9fb95a5..5e86ab3 100644
--- a/crates/rocie-client/docs/Unit.md
+++ b/crates/rocie-client/docs/Unit.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**description** | Option<**String**> | | [optional]
**full_name_plural** | **String** | |
**full_name_singular** | **String** | |
-**id** | [**uuid::Uuid**](uuid::Uuid.md) | |
+**id** | [**models::UnitId**](UnitId.md) | |
**short_name** | **String** | |
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
diff --git a/crates/rocie-client/docs/UnitAmount.md b/crates/rocie-client/docs/UnitAmount.md
index f0c1b5f..1546f57 100644
--- a/crates/rocie-client/docs/UnitAmount.md
+++ b/crates/rocie-client/docs/UnitAmount.md
@@ -4,8 +4,8 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**unit** | [**uuid::Uuid**](uuid::Uuid.md) | |
-**value** | **i64** | |
+**unit** | [**models::UnitId**](UnitId.md) | |
+**value** | **u32** | |
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
diff --git a/crates/rocie-client/docs/UnitId.md b/crates/rocie-client/docs/UnitId.md
new file mode 100644
index 0000000..7d0979c
--- /dev/null
+++ b/crates/rocie-client/docs/UnitId.md
@@ -0,0 +1,11 @@
+# UnitId
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**value** | [**uuid::Uuid**](uuid::Uuid.md) | |
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/crates/rocie-client/src/apis/api_get_inventory_api.rs b/crates/rocie-client/src/apis/api_get_inventory_api.rs
index 8cec3d4..965d3e3 100644
--- a/crates/rocie-client/src/apis/api_get_inventory_api.rs
+++ b/crates/rocie-client/src/apis/api_get_inventory_api.rs
@@ -25,11 +25,11 @@ pub enum AmountByIdError {
}
-pub async fn amount_by_id(configuration: &configuration::Configuration, id: &str) -> Result<models::ProductAmount, Error<AmountByIdError>> {
+pub async fn amount_by_id(configuration: &configuration::Configuration, id: models::ProductId) -> Result<models::ProductAmount, Error<AmountByIdError>> {
// add a prefix to parameters to efficiently prevent name collisions
let p_id = id;
- let uri_str = format!("{}/inventory/{id}", configuration.base_path, id=crate::apis::urlencode(p_id));
+ let uri_str = format!("{}/inventory/{id}", configuration.base_path, id=p_id.to_string());
let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
if let Some(ref user_agent) = configuration.user_agent {
diff --git a/crates/rocie-client/src/apis/api_get_product_api.rs b/crates/rocie-client/src/apis/api_get_product_api.rs
index a8f4c17..88c680b 100644
--- a/crates/rocie-client/src/apis/api_get_product_api.rs
+++ b/crates/rocie-client/src/apis/api_get_product_api.rs
@@ -33,11 +33,11 @@ pub enum ProductsError {
}
-pub async fn product_by_id(configuration: &configuration::Configuration, id: &str) -> Result<models::Product, Error<ProductByIdError>> {
+pub async fn product_by_id(configuration: &configuration::Configuration, id: models::ProductId) -> Result<models::Product, Error<ProductByIdError>> {
// add a prefix to parameters to efficiently prevent name collisions
let p_id = id;
- let uri_str = format!("{}/product/{id}", configuration.base_path, id=crate::apis::urlencode(p_id));
+ let uri_str = format!("{}/product/{id}", configuration.base_path, id=p_id.to_string());
let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
if let Some(ref user_agent) = configuration.user_agent {
diff --git a/crates/rocie-client/src/apis/api_get_unit_api.rs b/crates/rocie-client/src/apis/api_get_unit_api.rs
index 5895652..81d772b 100644
--- a/crates/rocie-client/src/apis/api_get_unit_api.rs
+++ b/crates/rocie-client/src/apis/api_get_unit_api.rs
@@ -33,11 +33,11 @@ pub enum UnitsError {
}
-pub async fn unit_by_id(configuration: &configuration::Configuration, id: &str) -> Result<models::Unit, Error<UnitByIdError>> {
+pub async fn unit_by_id(configuration: &configuration::Configuration, id: models::UnitId) -> Result<models::Unit, Error<UnitByIdError>> {
// add a prefix to parameters to efficiently prevent name collisions
let p_id = id;
- let uri_str = format!("{}/unit/{id}", configuration.base_path, id=crate::apis::urlencode(p_id));
+ let uri_str = format!("{}/unit/{id}", configuration.base_path, id=p_id.to_string());
let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
if let Some(ref user_agent) = configuration.user_agent {
diff --git a/crates/rocie-client/src/apis/api_set_barcode_api.rs b/crates/rocie-client/src/apis/api_set_barcode_api.rs
index 0a439a5..e3ac9fb 100644
--- a/crates/rocie-client/src/apis/api_set_barcode_api.rs
+++ b/crates/rocie-client/src/apis/api_set_barcode_api.rs
@@ -34,11 +34,11 @@ pub enum ConsumeBarcodeError {
}
-pub async fn buy_barcode(configuration: &configuration::Configuration, id: i32) -> Result<(), Error<BuyBarcodeError>> {
+pub async fn buy_barcode(configuration: &configuration::Configuration, id: models::BarcodeId) -> Result<(), Error<BuyBarcodeError>> {
// add a prefix to parameters to efficiently prevent name collisions
let p_id = id;
- let uri_str = format!("{}/barcode/{id}/buy", configuration.base_path, id=p_id);
+ let uri_str = format!("{}/barcode/{id}/buy", configuration.base_path, id=p_id.to_string());
let mut req_builder = configuration.client.request(reqwest::Method::POST, &uri_str);
if let Some(ref user_agent) = configuration.user_agent {
@@ -59,12 +59,12 @@ pub async fn buy_barcode(configuration: &configuration::Configuration, id: i32)
}
}
-pub async fn consume_barcode(configuration: &configuration::Configuration, id: i32, unit_amount: models::UnitAmount) -> Result<(), Error<ConsumeBarcodeError>> {
+pub async fn consume_barcode(configuration: &configuration::Configuration, id: models::BarcodeId, unit_amount: models::UnitAmount) -> Result<(), Error<ConsumeBarcodeError>> {
// add a prefix to parameters to efficiently prevent name collisions
let p_id = id;
let p_unit_amount = unit_amount;
- let uri_str = format!("{}/barcode/{id}/consume", configuration.base_path, id=p_id);
+ let uri_str = format!("{}/barcode/{id}/consume", configuration.base_path, id=p_id.to_string());
let mut req_builder = configuration.client.request(reqwest::Method::POST, &uri_str);
if let Some(ref user_agent) = configuration.user_agent {
diff --git a/crates/rocie-client/src/apis/api_set_product_api.rs b/crates/rocie-client/src/apis/api_set_product_api.rs
index 0d2679b..d3cf378 100644
--- a/crates/rocie-client/src/apis/api_set_product_api.rs
+++ b/crates/rocie-client/src/apis/api_set_product_api.rs
@@ -34,12 +34,12 @@ pub enum RegisterProductError {
}
-pub async fn associate_barcode(configuration: &configuration::Configuration, id: &str, barcode: models::Barcode) -> Result<(), Error<AssociateBarcodeError>> {
+pub async fn associate_barcode(configuration: &configuration::Configuration, id: models::ProductId, barcode: models::Barcode) -> Result<(), Error<AssociateBarcodeError>> {
// add a prefix to parameters to efficiently prevent name collisions
let p_id = id;
let p_barcode = barcode;
- let uri_str = format!("{}/product/{id}/associate", configuration.base_path, id=crate::apis::urlencode(p_id));
+ let uri_str = format!("{}/product/{id}/associate", configuration.base_path, id=p_id.to_string());
let mut req_builder = configuration.client.request(reqwest::Method::POST, &uri_str);
if let Some(ref user_agent) = configuration.user_agent {
@@ -61,7 +61,7 @@ pub async fn associate_barcode(configuration: &configuration::Configuration, id:
}
}
-pub async fn register_product(configuration: &configuration::Configuration, product_stub: models::ProductStub) -> Result<uuid::Uuid, Error<RegisterProductError>> {
+pub async fn register_product(configuration: &configuration::Configuration, product_stub: models::ProductStub) -> Result<models::ProductId, Error<RegisterProductError>> {
// add a prefix to parameters to efficiently prevent name collisions
let p_product_stub = product_stub;
@@ -88,8 +88,8 @@ pub async fn register_product(configuration: &configuration::Configuration, prod
let content = resp.text().await?;
match content_type {
ContentType::Json => serde_json::from_str(&content).map_err(Error::from),
- ContentType::Text => return Err(Error::from(serde_json::Error::custom("Received `text/plain` content type response that cannot be converted to `uuid::Uuid`"))),
- ContentType::Unsupported(unknown_type) => return Err(Error::from(serde_json::Error::custom(format!("Received `{unknown_type}` content type response that cannot be converted to `uuid::Uuid`")))),
+ ContentType::Text => return Err(Error::from(serde_json::Error::custom("Received `text/plain` content type response that cannot be converted to `models::ProductId`"))),
+ ContentType::Unsupported(unknown_type) => return Err(Error::from(serde_json::Error::custom(format!("Received `{unknown_type}` content type response that cannot be converted to `models::ProductId`")))),
}
} else {
let content = resp.text().await?;
diff --git a/crates/rocie-client/src/apis/api_set_unit_api.rs b/crates/rocie-client/src/apis/api_set_unit_api.rs
index e894fc3..dc88775 100644
--- a/crates/rocie-client/src/apis/api_set_unit_api.rs
+++ b/crates/rocie-client/src/apis/api_set_unit_api.rs
@@ -24,7 +24,7 @@ pub enum RegisterUnitError {
}
-pub async fn register_unit(configuration: &configuration::Configuration, unit_stub: models::UnitStub) -> Result<uuid::Uuid, Error<RegisterUnitError>> {
+pub async fn register_unit(configuration: &configuration::Configuration, unit_stub: models::UnitStub) -> Result<models::UnitId, Error<RegisterUnitError>> {
// add a prefix to parameters to efficiently prevent name collisions
let p_unit_stub = unit_stub;
@@ -51,8 +51,8 @@ pub async fn register_unit(configuration: &configuration::Configuration, unit_st
let content = resp.text().await?;
match content_type {
ContentType::Json => serde_json::from_str(&content).map_err(Error::from),
- ContentType::Text => return Err(Error::from(serde_json::Error::custom("Received `text/plain` content type response that cannot be converted to `uuid::Uuid`"))),
- ContentType::Unsupported(unknown_type) => return Err(Error::from(serde_json::Error::custom(format!("Received `{unknown_type}` content type response that cannot be converted to `uuid::Uuid`")))),
+ ContentType::Text => return Err(Error::from(serde_json::Error::custom("Received `text/plain` content type response that cannot be converted to `models::UnitId`"))),
+ ContentType::Unsupported(unknown_type) => return Err(Error::from(serde_json::Error::custom(format!("Received `{unknown_type}` content type response that cannot be converted to `models::UnitId`")))),
}
} else {
let content = resp.text().await?;
diff --git a/crates/rocie-client/src/implies.rs b/crates/rocie-client/src/implies.rs
new file mode 100644
index 0000000..147588a
--- /dev/null
+++ b/crates/rocie-client/src/implies.rs
@@ -0,0 +1,26 @@
+use std::fmt::Display;
+
+use crate::models::{BarcodeId, ProductId, UnitId};
+
+// TODO(@bpeetz): The client generator should just do this. <2025-09-23>
+
+impl Display for BarcodeId {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ self.value.fmt(f)
+ }
+}
+impl Copy for BarcodeId {}
+
+impl Display for ProductId {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ self.value.fmt(f)
+ }
+}
+impl Copy for ProductId {}
+
+impl Display for UnitId {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ self.value.fmt(f)
+ }
+}
+impl Copy for UnitId {}
diff --git a/crates/rocie-client/src/lib.rs b/crates/rocie-client/src/lib.rs
index e152062..bbd0eed 100644
--- a/crates/rocie-client/src/lib.rs
+++ b/crates/rocie-client/src/lib.rs
@@ -9,3 +9,4 @@ extern crate reqwest;
pub mod apis;
pub mod models;
+pub mod implies;
diff --git a/crates/rocie-client/src/models/barcode.rs b/crates/rocie-client/src/models/barcode.rs
index 7690be2..76661dc 100644
--- a/crates/rocie-client/src/models/barcode.rs
+++ b/crates/rocie-client/src/models/barcode.rs
@@ -14,15 +14,15 @@ use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Barcode {
#[serde(rename = "amount")]
- pub amount: Box<models::UnitAmount>,
+ pub amount: models::UnitAmount,
#[serde(rename = "id")]
- pub id: i32,
+ pub id: models::BarcodeId,
}
impl Barcode {
- pub fn new(amount: models::UnitAmount, id: i32) -> Barcode {
+ pub fn new(amount: models::UnitAmount, id: models::BarcodeId) -> Barcode {
Barcode {
- amount: Box::new(amount),
+ amount,
id,
}
}
diff --git a/crates/rocie-client/src/models/barcode_id.rs b/crates/rocie-client/src/models/barcode_id.rs
new file mode 100644
index 0000000..2bd4775
--- /dev/null
+++ b/crates/rocie-client/src/models/barcode_id.rs
@@ -0,0 +1,27 @@
+/*
+ * rocie-server
+ *
+ * An enterprise grocery management system
+ *
+ * The version of the OpenAPI document: 0.1.0
+ * Contact: benedikt.peetz@b-peetz.de
+ * Generated by: https://openapi-generator.tech
+ */
+
+use crate::models;
+use serde::{Deserialize, Serialize};
+
+#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
+pub struct BarcodeId {
+ #[serde(rename = "value")]
+ pub value: u32,
+}
+
+impl BarcodeId {
+ pub fn new(value: u32) -> BarcodeId {
+ BarcodeId {
+ value,
+ }
+ }
+}
+
diff --git a/crates/rocie-client/src/models/mod.rs b/crates/rocie-client/src/models/mod.rs
index 20ed0ff..6456de7 100644
--- a/crates/rocie-client/src/models/mod.rs
+++ b/crates/rocie-client/src/models/mod.rs
@@ -1,14 +1,20 @@
pub mod barcode;
pub use self::barcode::Barcode;
+pub mod barcode_id;
+pub use self::barcode_id::BarcodeId;
pub mod product;
pub use self::product::Product;
pub mod product_amount;
pub use self::product_amount::ProductAmount;
+pub mod product_id;
+pub use self::product_id::ProductId;
pub mod product_stub;
pub use self::product_stub::ProductStub;
pub mod unit;
pub use self::unit::Unit;
pub mod unit_amount;
pub use self::unit_amount::UnitAmount;
+pub mod unit_id;
+pub use self::unit_id::UnitId;
pub mod unit_stub;
pub use self::unit_stub::UnitStub;
diff --git a/crates/rocie-client/src/models/product.rs b/crates/rocie-client/src/models/product.rs
index acdc6c6..8fe68ee 100644
--- a/crates/rocie-client/src/models/product.rs
+++ b/crates/rocie-client/src/models/product.rs
@@ -18,13 +18,13 @@ pub struct Product {
#[serde(rename = "description", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub description: Option<Option<String>>,
#[serde(rename = "id")]
- pub id: uuid::Uuid,
+ pub id: models::ProductId,
#[serde(rename = "name")]
pub name: String,
}
impl Product {
- pub fn new(associated_bar_codes: Vec<models::Barcode>, id: uuid::Uuid, name: String) -> Product {
+ pub fn new(associated_bar_codes: Vec<models::Barcode>, id: models::ProductId, name: String) -> Product {
Product {
associated_bar_codes,
description: None,
diff --git a/crates/rocie-client/src/models/product_amount.rs b/crates/rocie-client/src/models/product_amount.rs
index 6f1b436..1a2ed02 100644
--- a/crates/rocie-client/src/models/product_amount.rs
+++ b/crates/rocie-client/src/models/product_amount.rs
@@ -14,15 +14,15 @@ use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ProductAmount {
#[serde(rename = "amount")]
- pub amount: Box<models::UnitAmount>,
+ pub amount: models::UnitAmount,
#[serde(rename = "product_id")]
- pub product_id: uuid::Uuid,
+ pub product_id: models::ProductId,
}
impl ProductAmount {
- pub fn new(amount: models::UnitAmount, product_id: uuid::Uuid) -> ProductAmount {
+ pub fn new(amount: models::UnitAmount, product_id: models::ProductId) -> ProductAmount {
ProductAmount {
- amount: Box::new(amount),
+ amount,
product_id,
}
}
diff --git a/crates/rocie-client/src/models/product_id.rs b/crates/rocie-client/src/models/product_id.rs
new file mode 100644
index 0000000..021bd38
--- /dev/null
+++ b/crates/rocie-client/src/models/product_id.rs
@@ -0,0 +1,27 @@
+/*
+ * rocie-server
+ *
+ * An enterprise grocery management system
+ *
+ * The version of the OpenAPI document: 0.1.0
+ * Contact: benedikt.peetz@b-peetz.de
+ * Generated by: https://openapi-generator.tech
+ */
+
+use crate::models;
+use serde::{Deserialize, Serialize};
+
+#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
+pub struct ProductId {
+ #[serde(rename = "value")]
+ pub value: uuid::Uuid,
+}
+
+impl ProductId {
+ pub fn new(value: uuid::Uuid) -> ProductId {
+ ProductId {
+ value,
+ }
+ }
+}
+
diff --git a/crates/rocie-client/src/models/product_stub.rs b/crates/rocie-client/src/models/product_stub.rs
index 3849c18..40c1123 100644
--- a/crates/rocie-client/src/models/product_stub.rs
+++ b/crates/rocie-client/src/models/product_stub.rs
@@ -17,8 +17,8 @@ pub struct ProductStub {
pub description: Option<Option<String>>,
#[serde(rename = "name")]
pub name: String,
- #[serde(rename = "parent", skip_serializing_if = "Option::is_none")]
- pub parent: Option<uuid::Uuid>,
+ #[serde(rename = "parent", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
+ pub parent: Option<Option<models::ProductId>>,
}
impl ProductStub {
diff --git a/crates/rocie-client/src/models/unit.rs b/crates/rocie-client/src/models/unit.rs
index 95ec588..760d532 100644
--- a/crates/rocie-client/src/models/unit.rs
+++ b/crates/rocie-client/src/models/unit.rs
@@ -20,13 +20,13 @@ pub struct Unit {
#[serde(rename = "full_name_singular")]
pub full_name_singular: String,
#[serde(rename = "id")]
- pub id: uuid::Uuid,
+ pub id: models::UnitId,
#[serde(rename = "short_name")]
pub short_name: String,
}
impl Unit {
- pub fn new(full_name_plural: String, full_name_singular: String, id: uuid::Uuid, short_name: String) -> Unit {
+ pub fn new(full_name_plural: String, full_name_singular: String, id: models::UnitId, short_name: String) -> Unit {
Unit {
description: None,
full_name_plural,
diff --git a/crates/rocie-client/src/models/unit_amount.rs b/crates/rocie-client/src/models/unit_amount.rs
index 3ab482c..928a6f4 100644
--- a/crates/rocie-client/src/models/unit_amount.rs
+++ b/crates/rocie-client/src/models/unit_amount.rs
@@ -14,13 +14,13 @@ use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct UnitAmount {
#[serde(rename = "unit")]
- pub unit: uuid::Uuid,
+ pub unit: models::UnitId,
#[serde(rename = "value")]
- pub value: i64,
+ pub value: u32,
}
impl UnitAmount {
- pub fn new(unit: uuid::Uuid, value: i64) -> UnitAmount {
+ pub fn new(unit: models::UnitId, value: u32) -> UnitAmount {
UnitAmount {
unit,
value,
diff --git a/crates/rocie-client/src/models/unit_id.rs b/crates/rocie-client/src/models/unit_id.rs
new file mode 100644
index 0000000..ea1ef51
--- /dev/null
+++ b/crates/rocie-client/src/models/unit_id.rs
@@ -0,0 +1,27 @@
+/*
+ * rocie-server
+ *
+ * An enterprise grocery management system
+ *
+ * The version of the OpenAPI document: 0.1.0
+ * Contact: benedikt.peetz@b-peetz.de
+ * Generated by: https://openapi-generator.tech
+ */
+
+use crate::models;
+use serde::{Deserialize, Serialize};
+
+#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
+pub struct UnitId {
+ #[serde(rename = "value")]
+ pub value: uuid::Uuid,
+}
+
+impl UnitId {
+ pub fn new(value: uuid::Uuid) -> UnitId {
+ UnitId {
+ value,
+ }
+ }
+}
+