创建中心任务的管理系统

This commit is contained in:
2025-12-05 13:45:16 +08:00
commit 2ca8b8d181
62 changed files with 1611 additions and 0 deletions

54
tasks/views_frontend.py Normal file
View File

@@ -0,0 +1,54 @@
from django.shortcuts import render, redirect, get_object_or_404
from django.contrib import messages
from .models import Task, Client, TaskResult
# Home view
def index(request):
return render(request, 'tasks/index.html')
# Task views
def task_list(request):
tasks = Task.objects.all()
return render(request, 'tasks/task_list.html', {'tasks': tasks})
def task_create(request):
if request.method == 'POST':
name = request.POST['name']
client_name = request.POST.get('client_name', '')
script = request.POST.get('script', '')
timeout_seconds = int(request.POST.get('timeout_seconds', 259200))
Task.objects.create(
name=name,
client_name=client_name if client_name else None,
script=script if script else None,
timeout_seconds=timeout_seconds
)
messages.success(request, '任务创建成功!')
return redirect('task_list')
return render(request, 'tasks/task_create.html')
def task_detail(request, task_id):
task = get_object_or_404(Task, id=task_id)
results = task.results.all()
return render(request, 'tasks/task_detail.html', {'task': task, 'results': results})
# Client views
def client_list(request):
clients = Client.objects.all()
return render(request, 'tasks/client_list.html', {'clients': clients})
def client_create(request):
if request.method == 'POST':
name = request.POST['name']
# Generate a simple token for demo purposes
import secrets
token = secrets.token_urlsafe(32)
Client.objects.create(
name=name,
token=token
)
messages.success(request, '客户端创建成功!')
return redirect('client_list')
return render(request, 'tasks/client_create.html')