From 63be0fbf9591ab983db9bf8e92407269f1ad465e Mon Sep 17 00:00:00 2001 From: Mojtaba-z Date: Sat, 16 Aug 2025 15:55:00 +0330 Subject: [PATCH] import assigned status to device --- .../migrations/0057_device_assigned.py | 18 ++++++++++++++++++ ...58_rename_assigned_device_assigned_state.py | 18 ++++++++++++++++++ apps/pos_device/models.py | 1 + apps/pos_device/web/api/v1/viewsets/device.py | 4 ++++ 4 files changed, 41 insertions(+) create mode 100644 apps/pos_device/migrations/0057_device_assigned.py create mode 100644 apps/pos_device/migrations/0058_rename_assigned_device_assigned_state.py diff --git a/apps/pos_device/migrations/0057_device_assigned.py b/apps/pos_device/migrations/0057_device_assigned.py new file mode 100644 index 0000000..6bb0383 --- /dev/null +++ b/apps/pos_device/migrations/0057_device_assigned.py @@ -0,0 +1,18 @@ +# Generated by Django 5.0 on 2025-08-16 12:20 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('pos_device', '0056_remove_deviceassignment_unique_assign_client_device'), + ] + + operations = [ + migrations.AddField( + model_name='device', + name='assigned', + field=models.BooleanField(default=False), + ), + ] diff --git a/apps/pos_device/migrations/0058_rename_assigned_device_assigned_state.py b/apps/pos_device/migrations/0058_rename_assigned_device_assigned_state.py new file mode 100644 index 0000000..75bfd7c --- /dev/null +++ b/apps/pos_device/migrations/0058_rename_assigned_device_assigned_state.py @@ -0,0 +1,18 @@ +# Generated by Django 5.0 on 2025-08-16 12:22 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('pos_device', '0057_device_assigned'), + ] + + operations = [ + migrations.RenameField( + model_name='device', + old_name='assigned', + new_name='assigned_state', + ), + ] diff --git a/apps/pos_device/models.py b/apps/pos_device/models.py index b6cdb68..9c184a5 100644 --- a/apps/pos_device/models.py +++ b/apps/pos_device/models.py @@ -47,6 +47,7 @@ class Device(BaseModel): related_name='devices', null=True ) + assigned_state = models.BooleanField(default=False) def __str__(self): return f'Device: {self.serial} - {self.id}' diff --git a/apps/pos_device/web/api/v1/viewsets/device.py b/apps/pos_device/web/api/v1/viewsets/device.py index 17c2dec..99a827b 100644 --- a/apps/pos_device/web/api/v1/viewsets/device.py +++ b/apps/pos_device/web/api/v1/viewsets/device.py @@ -195,6 +195,10 @@ class DeviceAssignmentViewSet(viewsets.ModelViewSet): if serializer.is_valid(): assignment = serializer.save() + # set device status to assigned + assignment.device.assigned_state = True + assignment.device.save() + # set organization having pos status if assignment.client.organization: assignment.client.organization.has_pos = True