diff --git a/ereuse_devicehub/migrations/versions/eca457d8b2a4_change_deliverynote.py b/ereuse_devicehub/migrations/versions/eca457d8b2a4_change_deliverynote.py index 6cd89970..e35d87e7 100644 --- a/ereuse_devicehub/migrations/versions/eca457d8b2a4_change_deliverynote.py +++ b/ereuse_devicehub/migrations/versions/eca457d8b2a4_change_deliverynote.py @@ -28,7 +28,11 @@ def get_inv(): def upgrade(): op.drop_column('deliverynote', 'ethereum_address', schema=f'{get_inv()}') + op.drop_column('computer', 'deliverynote_address', schema=f'{get_inv()}') + op.drop_column('lot', 'deliverynote_address', schema=f'{get_inv()}') def downgrade(): op.add_column('deliverynote', sa.Column('ethereum_address', citext.CIText(), nullable=True), schema=f'{get_inv()}') + op.add_column('computer', sa.Column('deliverynote_address', citext.CIText(), nullable=True), schema=f'{get_inv()}') + op.add_column('lot', sa.Column('deliverynote_address', citext.CIText(), nullable=True), schema=f'{get_inv()}') diff --git a/ereuse_devicehub/resources/deliverynote/models.pyi b/ereuse_devicehub/resources/deliverynote/models.pyi index 3ed6be5c..d428a7cd 100644 --- a/ereuse_devicehub/resources/deliverynote/models.pyi +++ b/ereuse_devicehub/resources/deliverynote/models.pyi @@ -30,7 +30,6 @@ class Lot(Thing): transfer_state = ... # type: Column receiver_address = ... # type: Column receiver = ... # type: relationship - deliverynote_address = ... # type: Column def __init__(self, name: str, closed: bool = closed.default.arg) -> None: super().__init__() @@ -46,7 +45,6 @@ class Lot(Thing): self.owner_address = ... # type: UUID self.transfer_state = ... self.receiver_address = ... # type: str - self.deliverynote_address = ... # type: str def add_children(self, *children: Union[Lot, uuid.UUID]): pass diff --git a/ereuse_devicehub/resources/device/models.py b/ereuse_devicehub/resources/device/models.py index a91beb5f..da1c0888 100644 --- a/ereuse_devicehub/resources/device/models.py +++ b/ereuse_devicehub/resources/device/models.py @@ -484,7 +484,6 @@ class Computer(Device): db.ForeignKey(User.id), nullable=True) receiver = db.relationship(User, primaryjoin=receiver_id == User.id) - deliverynote_address = db.Column(CIText(), nullable=True) def __init__(self, *args, **kwargs) -> None: if args: diff --git a/ereuse_devicehub/resources/device/models.pyi b/ereuse_devicehub/resources/device/models.pyi index 9fa9665b..6b3b8dc4 100644 --- a/ereuse_devicehub/resources/device/models.pyi +++ b/ereuse_devicehub/resources/device/models.pyi @@ -145,7 +145,6 @@ class Computer(DisplayMixin, Device): owner_address = ... # type: Column transfer_state = ... # type: Column receiver_address = ... # type: Column - deliverynote_address = ... # type: Column def __init__(self, **kwargs) -> None: super().__init__(**kwargs) @@ -155,7 +154,6 @@ class Computer(DisplayMixin, Device): self.owner_address = ... # type: UUID self.transfer_state = ... self.receiver_address = ... # type: str - self.deliverynote_address = ... # type: str @property def actions(self) -> List: diff --git a/ereuse_devicehub/resources/device/schemas.py b/ereuse_devicehub/resources/device/schemas.py index ea5b3211..512c11bb 100644 --- a/ereuse_devicehub/resources/device/schemas.py +++ b/ereuse_devicehub/resources/device/schemas.py @@ -130,7 +130,6 @@ class Computer(Device): owner_id = UUID(data_key='ownerID') transfer_state = EnumField(enums.TransferState, description=m.Computer.transfer_state.comment) receiver_id = UUID(data_key='receiverID') - deliverynote_address = SanitizedStr(validate=f.validate.Length(max=42)) class Desktop(Computer): diff --git a/ereuse_devicehub/resources/device/views.py b/ereuse_devicehub/resources/device/views.py index fcb0e17f..83e16de7 100644 --- a/ereuse_devicehub/resources/device/views.py +++ b/ereuse_devicehub/resources/device/views.py @@ -106,7 +106,7 @@ class DeviceView(View): resource_def = app.resources['Computer'] # TODO check how to handle the 'actions_one' patch_schema = resource_def.SCHEMA( - only=['ethereum_address', 'transfer_state', 'deliverynote_address', 'actions_one'], partial=True) + only=['ethereum_address', 'transfer_state', 'actions_one'], partial=True) json = request.get_json(schema=patch_schema) # TODO check how to handle the 'actions_one' json.pop('actions_one') diff --git a/ereuse_devicehub/resources/lot/models.py b/ereuse_devicehub/resources/lot/models.py index eb5a55d0..4be0678b 100644 --- a/ereuse_devicehub/resources/lot/models.py +++ b/ereuse_devicehub/resources/lot/models.py @@ -75,7 +75,6 @@ class Lot(Thing): db.ForeignKey(User.ethereum_address), nullable=True) receiver = db.relationship(User, primaryjoin=receiver_address == User.ethereum_address) - deliverynote_address = db.Column(CIText(), nullable=True) def __init__(self, name: str, closed: bool = closed.default.arg, description: str = None) -> None: diff --git a/ereuse_devicehub/resources/lot/models.pyi b/ereuse_devicehub/resources/lot/models.pyi index cf7c0769..0ba97058 100644 --- a/ereuse_devicehub/resources/lot/models.pyi +++ b/ereuse_devicehub/resources/lot/models.pyi @@ -30,7 +30,6 @@ class Lot(Thing): transfer_state = ... # type: Column receiver_address = ... # type: Column receiver = ... # type: relationship - deliverynote_address = ... # type: Column def __init__(self, name: str, closed: bool = closed.default.arg) -> None: super().__init__() @@ -46,7 +45,6 @@ class Lot(Thing): self.owner_address = ... # type: UUID self.transfer_state = ... self.receiver_address = ... # type: str - self.deliverynote_address = ... # type: str def add_children(self, *children: Union[Lot, uuid.UUID]): pass diff --git a/ereuse_devicehub/resources/lot/views.py b/ereuse_devicehub/resources/lot/views.py index e0ac1691..d2b827e5 100644 --- a/ereuse_devicehub/resources/lot/views.py +++ b/ereuse_devicehub/resources/lot/views.py @@ -41,11 +41,11 @@ class LotView(View): def patch(self, id): patch_schema = self.resource_def.SCHEMA(only=( - 'name', 'description', 'transfer_state', 'receiver_address', 'deposit', 'deliverynote_address', 'devices', + 'name', 'description', 'transfer_state', 'receiver_address', 'deposit', 'devices', 'owner_address'), partial=True) l = request.get_json(schema=patch_schema) lot = Lot.query.filter_by(id=id).one() - device_fields = ['transfer_state', 'receiver_address', 'deposit', 'deliverynote_address', 'owner_address'] + device_fields = ['transfer_state', 'receiver_address', 'deposit', 'owner_address'] computers = [x for x in lot.all_devices if isinstance(x, Computer)] for key, value in l.items(): setattr(lot, key, value) diff --git a/tests/test_device.py b/tests/test_device.py index d9170c5c..e7810542 100644 --- a/tests/test_device.py +++ b/tests/test_device.py @@ -125,7 +125,6 @@ def test_physical_properties(): } assert pc.physical_properties == { 'chassis': ComputerChassis.Tower, - 'deliverynote_address': None, 'deposit': 0, 'ethereum_address': None, 'manufacturer': 'bar',