| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- from rest_framework import serializers
- from .models import DeviceModel,LocationModel,LocationGroupModel,LocationContainerLink,LocationChangeLog
- from container.models import ContainerListModel
- class ContainerSimpleSerializer(serializers.ModelSerializer):
- class Meta:
- model = ContainerListModel
- # fields = ['id', 'container_code', 'status'] # 按需选择字段
- fields = '__all__' # 或者展示全部字段
- class LocationSerializer(serializers.ModelSerializer):
- class Meta:
- model = LocationModel
- fields = '__all__'
- class LocationListSerializer(serializers.ModelSerializer):
- current_containers = ContainerSimpleSerializer(
- many=True,
- source='get_active_containers',
- read_only=True
- )
- class Meta:
- model = LocationModel
- fields = '__all__'
- read_only_fields = ['id']
- class LocationPostSerializer(serializers.ModelSerializer):
- class Meta:
- model = LocationModel
- fields = '__all__'
- read_only_fields = ['id','row','col','layer', 'max_capacity', 'current_quantity', 'coordinate','access_priority','location_code','location_group','location_type','is_active','shelf_type']
- class LocationGroupSerializer(serializers.ModelSerializer):
- class Meta:
- model = LocationGroupModel
- fields = '__all__'
- read_only_fields = ['id']
- class LocationGroupListSerializer(serializers.ModelSerializer ):
- class Meta:
- model = LocationGroupModel
- fields = '__all__'
- read_only_fields = ['id ']
- class LocationGroupPostSerializer(serializers.ModelSerializer):
- class Meta:
- model = LocationGroupModel
- fields = '__all__'
- read_only_fields = ['id']
- extra_kwargs = {
- 'current_goods_code': {'required': False, 'allow_blank': True},
- 'current_batch': {'required': False, 'allow_blank': True},
- }
|