|
|
|
@ -17,7 +17,7 @@ class UserInfoSerializer(serializers.ModelSerializer): |
|
|
|
|
class WorkTypeSerializer(serializers.ModelSerializer): |
|
|
|
|
class Meta: |
|
|
|
|
model = WorkType |
|
|
|
|
fields = ('id', 'color', 'label', 'deleted') |
|
|
|
|
fields = ('uuid', 'color', 'label', 'deleted') |
|
|
|
|
read_only_fields =('deleted',) |
|
|
|
|
|
|
|
|
|
def create(self, validated_data): |
|
|
|
@ -25,13 +25,13 @@ class WorkTypeSerializer(serializers.ModelSerializer): |
|
|
|
|
return serializers.ModelSerializer.create(self, validated_data) |
|
|
|
|
|
|
|
|
|
class PriceSerializer(serializers.ModelSerializer): |
|
|
|
|
get_employee_id = serializers.IntegerField(write_only=True) |
|
|
|
|
get_work_type_id = serializers.IntegerField(write_only=True) |
|
|
|
|
get_employee_uuid = serializers.UUIDField(write_only=True) |
|
|
|
|
get_work_type_uuid = serializers.UUIDField(write_only=True) |
|
|
|
|
work_type = WorkTypeSerializer(read_only=True) |
|
|
|
|
|
|
|
|
|
class Meta: |
|
|
|
|
model = Price |
|
|
|
|
fields = ('id', 'get_employee_id', 'get_work_type_id', 'work_type', 'amount', 'deleted') |
|
|
|
|
fields = ('uuid', 'get_employee_uuid', 'get_work_type_uuid', 'work_type', 'amount', 'deleted') |
|
|
|
|
read_only_fields =('deleted',) |
|
|
|
|
depth = 1 |
|
|
|
|
|
|
|
|
@ -43,11 +43,11 @@ class PriceSerializer(serializers.ModelSerializer): |
|
|
|
|
|
|
|
|
|
client = user.client |
|
|
|
|
manage_objs = Manage.objects.filter(client=client).filter(deleted=False) |
|
|
|
|
employee_id = validated_data.pop('get_employee_id') |
|
|
|
|
employee = get_object_or_404(manage_objs, id=employee_id) |
|
|
|
|
employee_uuid = validated_data.pop('get_employee_uuid') |
|
|
|
|
employee = get_object_or_404(manage_objs, uuid=employee_uuid) |
|
|
|
|
worktype_objs = WorkType.objects.filter(client=client).filter(deleted=False) |
|
|
|
|
work_type_id = validated_data.pop('get_work_type_id') |
|
|
|
|
work_type = get_object_or_404(worktype_objs, id=work_type_id) |
|
|
|
|
work_type_uuid = validated_data.pop('get_work_type_uuid') |
|
|
|
|
work_type = get_object_or_404(worktype_objs, uuid=work_type_uuid) |
|
|
|
|
|
|
|
|
|
if not employee.approved: |
|
|
|
|
raise serializers.ValidationError("Employee hasn't approved employment yet.") |
|
|
|
@ -76,7 +76,7 @@ class EmployeeSerializer(serializers.ModelSerializer): |
|
|
|
|
|
|
|
|
|
class Meta: |
|
|
|
|
model = Manage |
|
|
|
|
fields = ('id', 'provider', 'provider_email', 'note', 'approved', 'prices', 'deleted') |
|
|
|
|
fields = ('uuid', 'provider', 'provider_email', 'note', 'approved', 'prices', 'deleted') |
|
|
|
|
read_only_fields = ('approved', 'deleted') |
|
|
|
|
|
|
|
|
|
def get_provider(self, obj): |
|
|
|
@ -136,7 +136,7 @@ class EmployerSerializer(serializers.ModelSerializer): |
|
|
|
|
|
|
|
|
|
class Meta: |
|
|
|
|
model = Manage |
|
|
|
|
fields = ('id', 'client', 'note', 'approved', 'prices') |
|
|
|
|
fields = ('uuid', 'client', 'note', 'approved', 'prices') |
|
|
|
|
read_only_fields = ('note',) |
|
|
|
|
|
|
|
|
|
def get_client(self, obj): |
|
|
|
@ -173,11 +173,11 @@ class UserSerializer(serializers.ModelSerializer): |
|
|
|
|
depth = 1 |
|
|
|
|
|
|
|
|
|
class CShiftSerializer(serializers.ModelSerializer): |
|
|
|
|
get_price_id = serializers.IntegerField(write_only=True) |
|
|
|
|
get_price_uuid = serializers.UUIDField(write_only=True) |
|
|
|
|
|
|
|
|
|
class Meta: |
|
|
|
|
model = Shift |
|
|
|
|
fields = ('id', 'chart', 'get_price_id', 'price', 'set_price', 'set_date', 'set_start', 'set_end', 'actual_start', 'actual_end', 'amount', 'description', 'deleted') |
|
|
|
|
fields = ('uuid', 'chart', 'get_price_uuid', 'price', 'set_price', 'set_date', 'set_start', 'set_end', 'actual_start', 'actual_end', 'amount', 'description', 'deleted') |
|
|
|
|
read_only_fields = ('chart', 'price', 'set_price', 'set_date', 'actual_start', 'actual_end', 'amount', 'deleted') |
|
|
|
|
|
|
|
|
|
def create(self, validated_data): |
|
|
|
@ -188,8 +188,8 @@ class CShiftSerializer(serializers.ModelSerializer): |
|
|
|
|
|
|
|
|
|
client = user.client |
|
|
|
|
price_objs = Price.objects.filter(management__client=client).filter(deleted=False) |
|
|
|
|
price_id = validated_data.pop('get_price_id') |
|
|
|
|
price = get_object_or_404(price_objs, id=price_id) |
|
|
|
|
price_uuid = validated_data.pop('get_price_uuid') |
|
|
|
|
price = get_object_or_404(price_objs, uuid=price_uuid) |
|
|
|
|
|
|
|
|
|
if price.management.deleted: |
|
|
|
|
raise serializers.ValidationError("Employment relationship was deleted.") |
|
|
|
@ -220,8 +220,8 @@ class PShiftSerializer(serializers.ModelSerializer): |
|
|
|
|
|
|
|
|
|
class Meta: |
|
|
|
|
model = Shift |
|
|
|
|
fields = ('id', 'action', 'chart', 'price', 'set_price', 'set_date', 'set_start', 'set_end', 'actual_start', 'actual_end', 'amount', 'description', 'deleted') |
|
|
|
|
read_only_fields = ('id', 'price', 'set_price', 'set_date', 'set_start', 'set_end', 'actual_start', 'actual_end', 'amount', 'description', 'deleted') |
|
|
|
|
fields = ('uuid', 'action', 'chart', 'price', 'set_price', 'set_date', 'set_start', 'set_end', 'actual_start', 'actual_end', 'amount', 'description', 'deleted') |
|
|
|
|
read_only_fields = ('uuid', 'price', 'set_price', 'set_date', 'set_start', 'set_end', 'actual_start', 'actual_end', 'amount', 'description', 'deleted') |
|
|
|
|
|
|
|
|
|
def update(self, instance, validated_data): |
|
|
|
|
action = validated_data['action'] |
|
|
|
|