serializers.py 1.0 KB

1234567891011121314151617181920212223242526
  1. # coding=utf-8
  2. from django.conf import settings
  3. from rest_framework import serializers
  4. import datetime
  5. from apps.tenant.models import Tenant
  6. from utils.exceptions import CustomError
  7. from apps.upload.models import Upload
  8. class TenantSerializer(serializers.ModelSerializer):
  9. class Meta:
  10. model = Tenant
  11. fields = '__all__'
  12. def create(self, validated_data):
  13. if Tenant.is_exist(validated_data['company_name']):
  14. raise CustomError(u'名称为[%s]的企业已存在' % validated_data['company_name'])
  15. user = self.context['request'].user
  16. image = self.context['request'].data.get('image')
  17. validated_data['user'] = self.context['request'].user
  18. instance = super(TenantSerializer, self).create(validated_data)
  19. instance.company_no = instance.get_no()
  20. # instance.end_date = (datetime.datetime.now() + datetime.timedelta(days=30)).strftime('%Y-%m-%d')
  21. instance.save()
  22. Upload.objects._addnew(instance, user, Upload.COMPANY_IMAGE, image)
  23. return instance