mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
[Bug] Project code fix (#7599)
* Fix project_code serializer field - Imroperly marked as "read only" * Add unit test * Bump API version * Add project code label to order serializers - Making it available in exported dataset
This commit is contained in:
parent
b59ecdaeac
commit
494c12f0e5
@ -1,12 +1,15 @@
|
||||
"""InvenTree API version information."""
|
||||
|
||||
# InvenTree API version
|
||||
INVENTREE_API_VERSION = 216
|
||||
INVENTREE_API_VERSION = 217
|
||||
|
||||
"""Increment this API version number whenever there is a significant change to the API that any clients need to know about."""
|
||||
|
||||
|
||||
INVENTREE_API_TEXT = """
|
||||
v217 - 2024-07-09 : https://github.com/inventree/InvenTree/pull/7599
|
||||
- Fixes bug in "project_code" field for order API endpoints
|
||||
|
||||
v216 - 2024-07-08 : https://github.com/inventree/InvenTree/pull/7595
|
||||
- Moves API endpoint for contenttype lookup by model name
|
||||
|
||||
|
@ -54,6 +54,7 @@ class BuildSerializer(NotesFieldMixin, DataImportExportSerializerMixin, InvenTre
|
||||
'part_name',
|
||||
'part_detail',
|
||||
'project_code',
|
||||
'project_code_label',
|
||||
'project_code_detail',
|
||||
'overdue',
|
||||
'reference',
|
||||
@ -98,6 +99,8 @@ class BuildSerializer(NotesFieldMixin, DataImportExportSerializerMixin, InvenTre
|
||||
|
||||
barcode_hash = serializers.CharField(read_only=True)
|
||||
|
||||
project_code_label = serializers.CharField(source='project_code.code', read_only=True, label=_('Project Code Label'))
|
||||
|
||||
project_code_detail = ProjectCodeSerializer(source='project_code', many=False, read_only=True)
|
||||
|
||||
@staticmethod
|
||||
|
@ -104,8 +104,8 @@ class AbstractOrderSerializer(DataImportExportSerializerMixin, serializers.Seria
|
||||
source='responsible', read_only=True, many=False
|
||||
)
|
||||
|
||||
project_code = serializers.CharField(
|
||||
source='project_code.code', label=_('Project Code'), read_only=True
|
||||
project_code_label = serializers.CharField(
|
||||
source='project_code.code', read_only=True, label='Project Code Label'
|
||||
)
|
||||
|
||||
# Detail for project code field
|
||||
@ -151,6 +151,7 @@ class AbstractOrderSerializer(DataImportExportSerializerMixin, serializers.Seria
|
||||
'completed_lines',
|
||||
'link',
|
||||
'project_code',
|
||||
'project_code_label',
|
||||
'project_code_detail',
|
||||
'reference',
|
||||
'responsible',
|
||||
|
@ -1978,6 +1978,18 @@ class ReturnOrderTests(InvenTreeAPITestCase):
|
||||
self.assertEqual(reference['required'], True)
|
||||
self.assertEqual(reference['type'], 'string')
|
||||
|
||||
def test_project_code(self):
|
||||
"""Test the 'project_code' serializer field."""
|
||||
self.assignRole('return_order.add')
|
||||
response = self.options(reverse('api-return-order-list'), expected_code=200)
|
||||
project_code = response.data['actions']['POST']['project_code']
|
||||
|
||||
self.assertFalse(project_code['required'])
|
||||
self.assertFalse(project_code['read_only'])
|
||||
self.assertEqual(project_code['type'], 'related field')
|
||||
self.assertEqual(project_code['label'], 'Project Code')
|
||||
self.assertEqual(project_code['model'], 'projectcode')
|
||||
|
||||
def test_list(self):
|
||||
"""Tests for the list endpoint."""
|
||||
url = reverse('api-return-order-list')
|
||||
|
Loading…
x
Reference in New Issue
Block a user