diff --git a/wip/order_models.py b/wip/order_models.py deleted file mode 100644 index 018dba21bc..0000000000 --- a/wip/order_models.py +++ /dev/null @@ -1,69 +0,0 @@ -class SupplierOrder(models.Model): - """ - An order of parts from a supplier, made up of multiple line items - """ - - def get_absolute_url(self): - return "/supplier/order/{id}/".format(id=self.id) - - # Interal reference for this order - internal_ref = models.CharField(max_length=25, unique=True) - - supplier = models.ForeignKey(Company, on_delete=models.CASCADE, - related_name='orders') - - created_date = models.DateField(auto_now_add=True, editable=False) - - issued_date = models.DateField(blank=True, null=True, help_text="Date the purchase order was issued") - - notes = models.TextField(blank=True, help_text="Order notes") - - def __str__(self): - return "PO {ref} ({status})".format(ref=self.internal_ref, - status=self.get_status_display) - - PENDING = 10 # Order is pending (not yet placed) - PLACED = 20 # Order has been placed - RECEIVED = 30 # Order has been received - CANCELLED = 40 # Order was cancelled - LOST = 50 # Order was lost - - ORDER_STATUS_CODES = {PENDING: _("Pending"), - PLACED: _("Placed"), - CANCELLED: _("Cancelled"), - RECEIVED: _("Received"), - LOST: _("Lost") - } - - status = models.PositiveIntegerField(default=PENDING, - choices=ORDER_STATUS_CODES.items()) - - delivery_date = models.DateField(blank=True, null=True) - - - -class SupplierOrderLineItem(models.Model): - """ - A line item in a supplier order, corresponding to some quantity of part - """ - - class Meta: - unique_together = [ - ('order', 'line_number'), - ('order', 'supplier_part'), - ('order', 'internal_part'), - ] - - order = models.ForeignKey(SupplierOrder, on_delete=models.CASCADE) - - line_number = models.PositiveIntegerField(default=1) - - internal_part = models.ForeignKey(Part, null=True, blank=True, on_delete=models.SET_NULL) - - supplier_part = models.ForeignKey(SupplierPart, null=True, blank=True, on_delete=models.SET_NULL) - - quantity = models.PositiveIntegerField(default=1) - - notes = models.TextField(blank=True) - - received = models.BooleanField(default=False)