aboutsummaryrefslogtreecommitdiffstats
path: root/servo/models
diff options
context:
space:
mode:
authorFilipp Lepalaan <filipp@mac.com>2015-09-25 20:03:08 +0300
committerFilipp Lepalaan <filipp@mac.com>2015-09-25 20:03:08 +0300
commit482289b36886b208f2c3ab8d2a3d539c4277b359 (patch)
treec9b2f01fb646b2db82a83ec4f69a7022173d320f /servo/models
parentbad16d795b03799cbdda4c2c11f52d0cab6a496b (diff)
downloadServo-482289b36886b208f2c3ab8d2a3d539c4277b359.tar.gz
Servo-482289b36886b208f2c3ab8d2a3d539c4277b359.tar.bz2
Servo-482289b36886b208f2c3ab8d2a3d539c4277b359.zip
Cleanup
Diffstat (limited to 'servo/models')
-rw-r--r--servo/models/order.py16
-rw-r--r--servo/models/queue.py3
2 files changed, 16 insertions, 3 deletions
diff --git a/servo/models/order.py b/servo/models/order.py
index f753bb7..67ab854 100644
--- a/servo/models/order.py
+++ b/servo/models/order.py
@@ -24,7 +24,9 @@ from servo.models.queue import Queue, Status, QueueStatus
class Order(models.Model):
-
+ """
+ The Service Order
+ """
code = models.CharField(max_length=8, unique=True, null=True)
url_code = models.CharField(max_length=8, unique=True, null=True)
# Device description or something else
@@ -130,7 +132,7 @@ class Order(models.Model):
(STATE_CLOSED, _("Closed"))
)
- state = models.IntegerField(default=0, choices=STATES)
+ state = models.IntegerField(default=STATE_QUEUED, choices=STATES)
status_name = models.CharField(max_length=128, default="")
status_started_at = models.DateTimeField(null=True)
@@ -139,6 +141,9 @@ class Order(models.Model):
api_fields = ('status_name', 'status_description',)
+ def get_issues(self):
+ return self.note_set.filter(type=1)
+
def apply_rules(self):
pass
@@ -315,10 +320,13 @@ class Order(models.Model):
return self.queue or _("Select queue")
def get_queue_url(self):
+ if self.queue is not None:
+ return self.queue.get_absolute_url()
+
return reverse("orders-index")
def get_queue_title(self):
- if self.queue:
+ if self.queue is not None:
return self.queue.title
else:
return _("Orders")
@@ -1116,7 +1124,9 @@ def trigger_device_removed(sender, instance, **kwargs):
order = instance.order
except Order.DoesNotExist:
return # Means the whole order was deleted, not just the device
+
devices = order.devices.all()
+
if devices.count() > 0:
order.description = devices[0].description
else:
diff --git a/servo/models/queue.py b/servo/models/queue.py
index 422cb3e..05f5f2c 100644
--- a/servo/models/queue.py
+++ b/servo/models/queue.py
@@ -159,6 +159,9 @@ class Queue(models.Model):
def get_admin_url(self):
return reverse('admin-edit_queue', args=[self.pk])
+ def get_absolute_url(self):
+ return reverse('orders-list_queue', args=[self.pk])
+
def get_order_count(self, max_state=2):
count = self.order_set.filter(state__lt=max_state).count()
return count if count > 0 else ''