mirror of
https://github.com/inventree/InvenTree.git
synced 2025-06-17 20:45:44 +00:00
Add user information to stocktake table
This commit is contained in:
@ -1730,12 +1730,13 @@ class PartStocktakeList(ListCreateAPI):
|
|||||||
|
|
||||||
ordering_fields = [
|
ordering_fields = [
|
||||||
'part',
|
'part',
|
||||||
|
'quantity',
|
||||||
'date',
|
'date',
|
||||||
'user',
|
'user',
|
||||||
]
|
]
|
||||||
|
|
||||||
# Reverse date ordering by default
|
# Reverse date ordering by default
|
||||||
ordering = '-date'
|
ordering = '-pk'
|
||||||
|
|
||||||
|
|
||||||
class BomFilter(rest_filters.FilterSet):
|
class BomFilter(rest_filters.FilterSet):
|
||||||
|
@ -24,7 +24,8 @@ from InvenTree.serializers import (DataFileExtractSerializer,
|
|||||||
InvenTreeDecimalField,
|
InvenTreeDecimalField,
|
||||||
InvenTreeImageSerializerField,
|
InvenTreeImageSerializerField,
|
||||||
InvenTreeModelSerializer,
|
InvenTreeModelSerializer,
|
||||||
InvenTreeMoneySerializer, RemoteImageMixin)
|
InvenTreeMoneySerializer, RemoteImageMixin,
|
||||||
|
UserSerializer)
|
||||||
from InvenTree.status_codes import BuildStatus
|
from InvenTree.status_codes import BuildStatus
|
||||||
|
|
||||||
from .models import (BomItem, BomItemSubstitute, Part, PartAttachment,
|
from .models import (BomItem, BomItemSubstitute, Part, PartAttachment,
|
||||||
@ -510,6 +511,8 @@ class PartStocktakeSerializer(InvenTreeModelSerializer):
|
|||||||
|
|
||||||
quantity = serializers.FloatField()
|
quantity = serializers.FloatField()
|
||||||
|
|
||||||
|
user_detail = UserSerializer(source='user', read_only=True, many=False)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
"""Metaclass options"""
|
"""Metaclass options"""
|
||||||
|
|
||||||
@ -521,6 +524,7 @@ class PartStocktakeSerializer(InvenTreeModelSerializer):
|
|||||||
'quantity',
|
'quantity',
|
||||||
'note',
|
'note',
|
||||||
'user',
|
'user',
|
||||||
|
'user_detail',
|
||||||
]
|
]
|
||||||
|
|
||||||
read_only_fields = [
|
read_only_fields = [
|
||||||
|
@ -292,7 +292,7 @@ function loadAttachmentTable(url, options) {
|
|||||||
var html = renderDate(value);
|
var html = renderDate(value);
|
||||||
|
|
||||||
if (row.user_detail) {
|
if (row.user_detail) {
|
||||||
html += `<span class='badge bg-dark rounded-pill float-right'>${row.user_detail.username}</div>`;
|
html += `<span class='badge bg-dark rounded-pill float-right'>${row.user_detail.username}</span>`;
|
||||||
}
|
}
|
||||||
|
|
||||||
return html;
|
return html;
|
||||||
|
@ -840,22 +840,32 @@ function loadPartStocktakeTable(partId, options={}) {
|
|||||||
return '{% trans "No stocktake information available" %}';
|
return '{% trans "No stocktake information available" %}';
|
||||||
},
|
},
|
||||||
columns: [
|
columns: [
|
||||||
{
|
|
||||||
field: 'date',
|
|
||||||
title: '{% trans "Date" %}',
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
field: 'quantity',
|
field: 'quantity',
|
||||||
title: '{% trans "Quantity" %}',
|
title: '{% trans "Quantity" %}',
|
||||||
|
switchable: false,
|
||||||
|
sortable: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
field: 'note',
|
field: 'note',
|
||||||
title: '{% trans "Notes" %}',
|
title: '{% trans "Notes" %}',
|
||||||
|
switchable: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
field: 'user',
|
field: 'date',
|
||||||
title: '{% trans "User" %}',
|
title: '{% trans "Date" %}',
|
||||||
}
|
switchable: false,
|
||||||
|
sortable: true,
|
||||||
|
formatter: function(value, row) {
|
||||||
|
var html = renderDate(value);
|
||||||
|
|
||||||
|
if (row.user_detail) {
|
||||||
|
html += `<span class='badge bg-dark rounded-pill float-right'>${row.user_detail.username}</span>`;
|
||||||
|
}
|
||||||
|
|
||||||
|
return html;
|
||||||
|
}
|
||||||
|
},
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user