Files
work-club-manager/backend/WorkClub.Application/Tasks/DTOs/CreateTaskRequest.cs
WorkClub Automation 8550dd213a feat(tasks): add Task CRUD API with 5-state workflow
- TaskService with CRUD operations + state machine enforcement
- 5 DTOs: TaskListDto, TaskDetailDto, CreateTaskRequest, UpdateTaskRequest
- Minimal API endpoints: GET /api/tasks, GET /api/tasks/{id}, POST, PATCH, DELETE
- State machine: Open→Assigned→InProgress→Review→Done (invalid transitions → 422)
- Concurrency: DbUpdateConcurrencyException → 409 Conflict
- Authorization: POST (Manager+), DELETE (Admin), GET/PATCH (Member+)
- RLS: Automatic tenant filtering via TenantDbConnectionInterceptor
- 10 TDD integration tests: CRUD, state transitions, concurrency, role enforcement
- Build: 0 errors (6 BouncyCastle warnings expected)

Task 14 complete. Wave 3: 2/5 tasks done.
2026-03-03 19:19:21 +01:00

14 lines
266 B
C#

using System.ComponentModel.DataAnnotations;
namespace WorkClub.Application.Tasks.DTOs;
public record CreateTaskRequest(
[Required]
string Title,
string? Description,
[Required]
Guid ClubId,
Guid? AssigneeId,
DateTimeOffset? DueDate
);