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='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']