forked from erp-dev/erp
beta
This commit is contained in:
@@ -147,7 +147,7 @@ class DeviceSerializer(serializers.ModelSerializer):
|
||||
|
||||
|
||||
class ProductionAssignmentWriteSerializer(serializers.Serializer):
|
||||
device = serializers.IntegerField(required=False, min_value=1)
|
||||
device = serializers.IntegerField(required=False, allow_null=True, min_value=1)
|
||||
content_type = serializers.IntegerField(required=False, min_value=1)
|
||||
object_id = serializers.IntegerField(required=False, min_value=1)
|
||||
assigner = serializers.IntegerField(required=False, min_value=1)
|
||||
@@ -160,13 +160,14 @@ class ProductionAssignmentWriteSerializer(serializers.Serializer):
|
||||
self.is_create = kwargs.pop("is_create", False)
|
||||
super().__init__(*args, **kwargs)
|
||||
if self.is_create:
|
||||
self.fields["device"].required = True
|
||||
self.fields["content_type"].required = True
|
||||
self.fields["object_id"].required = True
|
||||
self.fields["assigner"].required = True
|
||||
self.fields["production_quantity"].required = True
|
||||
|
||||
def validate_device(self, value):
|
||||
if value is None:
|
||||
return None
|
||||
employee = self.context["employee"]
|
||||
try:
|
||||
return Device.objects.get(id=value, merchant=employee.merchant)
|
||||
@@ -197,7 +198,7 @@ class ProductionAssignmentWriteSerializer(serializers.Serializer):
|
||||
|
||||
|
||||
class ProductionAssignmentSerializer(serializers.ModelSerializer):
|
||||
device_name = serializers.CharField(source='device.name', read_only=True)
|
||||
device_name = serializers.SerializerMethodField(read_only=True)
|
||||
assigner = serializers.SerializerMethodField()
|
||||
assignee = serializers.SerializerMethodField()
|
||||
created_by = serializers.SerializerMethodField()
|
||||
@@ -226,6 +227,11 @@ class ProductionAssignmentSerializer(serializers.ModelSerializer):
|
||||
]
|
||||
read_only_fields = fields
|
||||
|
||||
def get_device_name(self, obj):
|
||||
if obj.device is None:
|
||||
return None
|
||||
return obj.device.name
|
||||
|
||||
def get_assigner(self, obj):
|
||||
return _employee_payload(obj.assigner)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user