From 2c2e558b8fff8309eb4634ce2950a4175fecf8d6 Mon Sep 17 00:00:00 2001
From: hanfi <ccc@spahan.ch>
Date: Fri, 16 Jun 2023 08:23:17 +0200
Subject: [PATCH] add item amount

---
 backend/models.py  |  3 ++-
 backend/schemas.py | 21 +++++++++------------
 2 files changed, 11 insertions(+), 13 deletions(-)

diff --git a/backend/models.py b/backend/models.py
index 50fea03..fafdc65 100644
--- a/backend/models.py
+++ b/backend/models.py
@@ -3,6 +3,7 @@ from uuid import uuid4
 from sqlalchemy import Column as sql_Column
 from sqlalchemy import DateTime as sql_DateTime
 from sqlalchemy import ForeignKey as sql_ForeignKey
+from sqlalchemy import Integer as sql_Integer
 from sqlalchemy import LargeBinary as sql_LargeBinary
 from sqlalchemy import String as sql_String
 from sqlalchemy import Uuid as sql_Uuid
@@ -16,8 +17,8 @@ class Item(db_Base):
     __tablename__ = "items"
 
     uuid = sql_Column(sql_Uuid, primary_key=True, default=uuid4)
+    amount = sql_Column(sql_Integer, default=1)
     created_at = sql_Column(sql_DateTime(timezone=True), server_default=sql_now())
-
     received_at = sql_Column(sql_DateTime(timezone=True), nullable=True, default=None)
 
     addressee = sql_Column(sql_String(64), nullable=True, default=None)
diff --git a/backend/schemas.py b/backend/schemas.py
index e20a771..5ecec4a 100644
--- a/backend/schemas.py
+++ b/backend/schemas.py
@@ -11,14 +11,6 @@ class Image(BaseModel):
         orm_mode = True
 
 
-class Storage(BaseModel):
-    name: str
-    items: "List[Item]"
-
-    class Config:
-        orm_mode = True
-
-
 class ItemCreatePrepareShipping(BaseModel):
     verification: bytes
     addressee: Union[str, None] = None
@@ -33,16 +25,15 @@ class ItemCreateByImageAtStorage(BaseModel):
 class ItemCheckin(BaseModel):
     item_uuid: str
     storage_name: str
-    num: Union[int, None] = 1
+    amount: Union[int, None] = 1
 
 
 class Item(BaseModel):
     uuid: UUID4
+    amount: int
     created_at: datetime
     received_at: Union[datetime, None] = None
 
-    verification: bytes
-
     addressee: Union[str, None] = None
     team: Union[str, None] = None
     images: List[Image] = []
@@ -50,6 +41,7 @@ class Item(BaseModel):
     deployed: Union[str, None] = None
     deployed_at: Union[datetime, None] = None
 
+    verification: Union[bytes, None] = None
     tag: Union[str, None] = None
 
     storage: Union[str, None] = None
@@ -58,4 +50,9 @@ class Item(BaseModel):
         orm_mode = True
 
 
-Storage.update_forward_refs()
+class Storage(BaseModel):
+    name: str
+    items: List[Item]
+
+    class Config:
+        orm_mode = True
-- 
GitLab