hujingpei 4 жил өмнө
parent
commit
0b93edec13

+ 13 - 0
apps/tenant/employee/serializers.py

@@ -6,6 +6,7 @@ from apps.tenant.employee.models import Employee
 
 from utils.exceptions import CustomError
 from apps.account.models import User
+from apps.tenant.models import Tenant
 
 
 class EmployeeSerializer(serializers.ModelSerializer):
@@ -33,6 +34,12 @@ class EmployeeSerializer(serializers.ModelSerializer):
             # 创建user实例
             user = User.objects.create_tenant_user(validated_data['type'], username, password)
 
+        #标准版 限制检修人人数为2
+        tenant = self.context['request'].user.employee.tenant
+        employees = Employee.objects.filter(tenant=tenant, type=Employee.EMPLOYEE).count()
+        if employees >= 2 and tenant.edition == Tenant.EDITION_1:
+            raise CustomError(u'只能添加2个检修人!')
+
         validated_data['user'] = user
         validated_data['tenant'] = self.context['request'].user.employee.tenant
 
@@ -65,5 +72,11 @@ class EmployeeSerializer(serializers.ModelSerializer):
                                                        self.initial_data['password'],
                                                        is_active=is_active)
                 validated_data['user'] = user
+
+        # 标准版 限制检修人人数为2
+        employees = Employee.objects.filter(tenant=instance.tenant,type=Employee.EMPLOYEE).count()
+        if employees >= 2 and instance.tenant.edition == Tenant.EDITION_1:
+            raise CustomError(u'只能添加2个检修人!')
+
         instance = super(EmployeeSerializer, self).update(instance, validated_data)
         return instance