Logo
Explore Help
Sign In
MasterMito/work-club-manager
1
0
Fork 0
You've already forked work-club-manager
Code Issues 1 Pull Requests Actions Packages Projects Releases 1 Wiki Activity
Files
672dec5f2131cd7ef30b2f273ea37e43b304e892
work-club-manager/backend/WorkClub.Application/Shifts/DTOs/UpdateShiftRequest.cs

11 lines
226 B
C#
Raw Normal View History

feat(shifts): add Shift CRUD API with sign-up/cancel and capacity management - ShiftService with 7 methods: list, detail, create, update, delete, signup, cancel - 5 DTOs: ShiftListDto, ShiftDetailDto, CreateShiftRequest, UpdateShiftRequest, ShiftSignupDto - Minimal API endpoints: GET /api/shifts, GET /api/shifts/{id}, POST, PUT, DELETE, POST /signup, DELETE /signup - Capacity validation: sign-up rejected when full → 409 Conflict - Past shift blocking: cannot sign up for past shifts → 422 Unprocessable - Duplicate signup prevention: check existing before create → 409 Conflict - Concurrency: 2-attempt retry loop for last-slot race conditions - Authorization: POST/PUT (Manager+), DELETE (Admin), signup/cancel (Member+) - Test infrastructure: Added X-Test-UserId header support for member ID injection - 13 TDD integration tests: CRUD, sign-up, capacity, past shift, concurrency - Build: 0 errors (6 BouncyCastle warnings expected) Task 15 complete. Wave 3: 3/5 tasks done.
2026-03-03 19:30:23 +01:00
namespace WorkClub.Application.Shifts.DTOs;
public record UpdateShiftRequest(
string? Title,
string? Description,
string? Location,
DateTimeOffset? StartTime,
DateTimeOffset? EndTime,
int? Capacity
);
Reference in New Issue Copy Permalink
Powered by Gitea Version: 1.25.2 Page: 14ms Template: 1ms
English
Bahasa Indonesia Deutsch English Español Français Gaeilge Italiano Latviešu Magyar nyelv Nederlands Polski Português de Portugal Português do Brasil Suomi Svenska Türkçe Čeština Ελληνικά Български Русский Українська فارسی മലയാളം 日本語 简体中文 繁體中文(台灣) 繁體中文(香港) 한국어
Licenses API