using System.Collections.Generic; using System.Threading.Tasks; using Interfaces; using SZUAbsolventenverein.Module.ReportSystem.Models; namespace SZUAbsolventenverein.Module.ReportSystem.Services { public interface IReportSystemReportingService { Task CreateReportAsync(Reporting reporting); Task> GetReportsAsync(int ModuleId); Task GetReportAsync(int ReportableId, int ModuleId); Task UpdateReport(Reporting reporting); Task DeleteReportingAsync(int ReportingId, int ModuleId); } public class ReportSystemReportingService : IReportSystemReportingService, IReportingHandler { public void Report(IReportable reportable, string note) { CreateReportAsync(new Reporting { ModuleId = reportable.ModuleID, EntityId = reportable.EntityID, Note = note, Reason = "Default Reason" }); } public Task CreateReportAsync(Reporting reporting) { throw new System.NotImplementedException(); } public Task> GetReportsAsync(int ModuleId) { throw new System.NotImplementedException(); } public Task GetReportAsync(int ReportableId, int ModuleId) { throw new System.NotImplementedException(); } public Task UpdateReport(Reporting Reporting) { throw new System.NotImplementedException(); } public Task DeleteReportingAsync(int ReportingId, int ModuleId) { throw new System.NotImplementedException(); } } }