创建中心任务的管理系统
This commit is contained in:
30
tasks/serializers.py
Normal file
30
tasks/serializers.py
Normal file
@@ -0,0 +1,30 @@
|
||||
from rest_framework import serializers
|
||||
from .models import Client, Task, TaskResult
|
||||
|
||||
class ClientSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Client
|
||||
fields = ['id', 'name', 'token', 'last_seen', 'created_at']
|
||||
read_only_fields = ['token', 'last_seen', 'created_at']
|
||||
|
||||
class TaskSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Task
|
||||
fields = ['id', 'name', 'client_name', 'script', 'status', 'timeout_seconds', 'created_at', 'updated_at', 'assigned_to', 'started_at', 'completed_at']
|
||||
read_only_fields = ['created_at', 'updated_at', 'assigned_to', 'started_at', 'completed_at']
|
||||
|
||||
class TaskResultSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = TaskResult
|
||||
fields = ['id', 'task', 'client', 'result_file', 'status', 'message', 'created_at']
|
||||
read_only_fields = ['created_at']
|
||||
|
||||
class TaskClaimSerializer(serializers.Serializer):
|
||||
client_name = serializers.CharField(max_length=100)
|
||||
|
||||
class TaskStartSerializer(serializers.Serializer):
|
||||
pass
|
||||
|
||||
class TaskCompleteSerializer(serializers.Serializer):
|
||||
status = serializers.ChoiceField(choices=[('success', '成功'), ('failed', '失败')])
|
||||
message = serializers.CharField(allow_blank=True, required=False)
|
||||
Reference in New Issue
Block a user