2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-08-28 14:25:56 +00:00

Rearrange button options for StockItem

This commit is contained in:
Oliver Walters
2021-01-07 00:18:18 +11:00
parent 735a3d2eb2
commit bb72658e76
4 changed files with 56 additions and 10 deletions

View File

@@ -31,6 +31,7 @@ from datetime import datetime, timedelta
from InvenTree import helpers
import common.models
import report.models
from InvenTree.status_codes import StockStatus
from InvenTree.models import InvenTreeTree, InvenTreeAttachment
@@ -1306,6 +1307,41 @@ class StockItem(MPTTModel):
return status['passed'] >= status['total']
def available_test_reports(self):
"""
Return a list of TestReport objects which match this StockItem.
"""
reports = []
item_query = StockItem.objects.filter(pk=self.pk)
for test_report in report.models.TestReport.objects.filter(enabled=True):
filters = helpers.validateFilterString(test_report.filters)
if item_query.filter(**filters).exists():
reports.append(test_report)
return reports
@property
def has_test_reports(self):
"""
Return True if there are test reports available for this stock item
"""
return len(self.available_test_reports()) > 0
@property
def has_labels(self):
"""
Return True if there are any label templates available for this stock item
"""
# TODO - Implement this
return True
@receiver(pre_delete, sender=StockItem, dispatch_uid='stock_item_pre_delete_log')
def before_delete_stock_item(sender, instance, using, **kwargs):