from apps.am.serializers import AreaSimpleSerializer from apps.ecm.models import EventCate, Push, PushSetting, Event from apps.utils.serializers import CustomModelSerializer from rest_framework import serializers from apps.system.serializers import UserSimpleSerializer class EventCateSimpleSerializer(CustomModelSerializer): class Meta: model = Event fields = ['id', 'name', 'code'] class EventCateListSerializer(CustomModelSerializer): class Meta: model = EventCate fields = '__all__' class EventCateUpdateSerializer(CustomModelSerializer): class Meta: model = EventCate fields = ['speaker_on', 'speakers', 'filter_area_level'] class PushSettingsSerializer(CustomModelSerializer): class Meta: model = PushSetting fields = '__all__' class EventSerializer(CustomModelSerializer): area_ = AreaSimpleSerializer(source='area', read_only=True) cate_ = EventCateSimpleSerializer(source='cate', read_only=True) people_name = serializers.CharField(source='people.name', read_only=True) handle_user_name = serializers.CharField(source='handle_user.name', read_only=True) class Meta: model = Event fields = '__all__' class EventHandleSerializer(CustomModelSerializer): class Meta: model = Event fields = ['handle_desc'] class PushSerializer(CustomModelSerializer): pusher_ = UserSimpleSerializer(source='pusher', read_only=True) class Meta: model = Push fields = '__all__'