serializers.py 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. # coding=utf-8
  2. import datetime
  3. from rest_framework import serializers
  4. from django.conf import settings
  5. from apps.agent.models import Agent,Store
  6. class AgentSerializer(serializers.ModelSerializer):
  7. create_user_text = serializers.CharField(source='create_user.name', read_only=True)
  8. class Meta:
  9. model = Agent
  10. fields = '__all__'
  11. def create(self, validated_data):
  12. validated_data['create_user'] = self.context['request'].user
  13. instance = super(AgentSerializer, self).create(validated_data)
  14. return instance
  15. class AgentComboboxSerializer(serializers.ModelSerializer):
  16. class Meta:
  17. model = Agent
  18. fields = ('id', 'name',)
  19. class StoreComboboxSerializer(serializers.ModelSerializer):
  20. class Meta:
  21. model = Store
  22. fields = ('id', 'name',)
  23. class StoreSerializer(serializers.ModelSerializer):
  24. create_user_text = serializers.CharField(source='create_user.name', read_only=True)
  25. status_text = serializers.CharField(source='get_status_display', read_only=True)
  26. check_user_text = serializers.CharField(source='check_user.name', read_only=True)
  27. class Meta:
  28. model = Store
  29. fields = '__all__'
  30. def create(self, validated_data):
  31. validated_data['create_user'] = self.context['request'].user
  32. validated_data['agent'] = self.context['request'].user.agent
  33. validated_data['end_date'] = (datetime.datetime.now() + datetime.timedelta(days=365)).strftime('%Y-%m-%d')
  34. instance = super(StoreSerializer, self).create(validated_data)
  35. return instance