Bulk-Commit: Darft: Anmeldetool.

Interface Definition: done
Server-Side-Implementation: partly done (CR missing, potential Refactor, ...)
Client-Side-Implementation: started: (UI: done, Service: started, but works with SSR)
Missing: Permissions / Roles to restrict access to an event.
Missing: Fields on Event.
Missing: Good Styling
Time-Took: about 12 Hours.
Learning: Commit in smaller packets, rest will be discussed at CR
This commit is contained in:
Konstantin Hintermayer
2025-05-14 20:40:10 +02:00
parent e45fce2e65
commit 38c5bef225
17 changed files with 508 additions and 92 deletions

View File

@ -1,26 +1,30 @@
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using SZUAbsolventenverein.Module.EventRegistration.Models;
namespace SZUAbsolventenverein.Module.EventRegistration.Services
{
public interface IEventRegistrationService
{
/* Reine Events */
Task<List<Models.Event>> GetEventsAsync(int ModuleId);
Task<List<Event>> GetEventsAsync(int ModuleId);
Task<Event> GetEventAsync(int EventId, int ModuleId);
Task<Models.Event> AddEventAsync(Models.Event NewEvent);
Task<Event> AddEventAsync(Event NewEvent);
Task<Models.Event> UpdateEventAsync(Models.Event NewEvent);
Task<Event> UpdateEventAsync(Event NewEvent);
Task DeleteEventAsync(int EventId, int ModuleId);
/* Events & Responses */
Task<Models.Response> AddOrUpdateResponseAsync(int EventId, int ModuleId, bool ResponseType);
Task<Response> AddResponseAsync(Response Response);
Task<Response> UpdateResponseAsync(Response Response);
Task<(Models.Event, Models.Response)> GetEventDetails(int EventId, int ModuleId);
Task<(Event, Response)> GetEventDetails(int EventId, int ModuleId);
Task<List<Models.Response>> GetEventResponses(int EventId, int ModuleId);
Task<List<Response>> GetEventResponses(int EventId, int ModuleId);
}
}