59 lines
2.7 KiB
C#
59 lines
2.7 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using gehGassiApp.Core.Interfaces.Synchronization;
|
|
using gehGassiApp.Domain.Walkers;
|
|
|
|
namespace gehGassiApp.Core.Interfaces
|
|
{
|
|
/// <summary>
|
|
/// Schnittstellenbeschreibung für einen Service der die Verfügbarkeit eines Walkers für Walks je wochentag ermöglicht
|
|
/// </summary>
|
|
public interface IWalkingTimeService : IService<WalkingTime>, ISyncPushPullService<WalkingTime>
|
|
{
|
|
/// <summary>
|
|
/// Gibt eine Liste aller WalkingTimes eines DogWalkers zurück
|
|
/// </summary>
|
|
/// <param name="dogWalkerId">Id des DogWalkers</param>
|
|
/// <param name="forceOnline">Unbedingt online versuchen</param>
|
|
/// <param name="accessToken">Aktuelles Accesstoken</param>
|
|
/// <param name="token">CancellationToken</param>
|
|
/// <returns>CommunicationResult</returns>
|
|
Task<CommunicationResult<List<WalkingTime>>> GetAllAsync(string dogWalkerId, bool forceOnline, string accessToken, CancellationToken token);
|
|
|
|
/// <summary>
|
|
/// Hinzufügen einer WalkingTime
|
|
/// </summary>
|
|
/// <param name="dogWalkerId">Id des Dogwalkers</param>
|
|
/// <param name="day">Wochentag</param>
|
|
/// <param name="start">Startzeit</param>
|
|
/// <param name="end">Endzeit</param>
|
|
/// <param name="enabled">Aktiv</param>
|
|
/// <param name="accessToken">Aktuelles Accesstoken</param>
|
|
/// <param name="token">CancellationToken</param>
|
|
/// <returns>WalkingTime</returns>
|
|
Task<WalkingTime> AddAsync(string dogWalkerId, DayOfWeek day, TimeSpan start, TimeSpan end, bool enabled, string accessToken, CancellationToken token);
|
|
|
|
/// <summary>
|
|
/// Aktualisieren einer WalkingTime
|
|
/// </summary>
|
|
/// <param name="walkingTime">WalkingTime</param>
|
|
/// <param name="accessToken">Aktuelles Accesstoken</param>
|
|
/// <param name="token">CancellationToken</param>
|
|
/// <returns>True wenn erfolgreich, false sonst</returns>
|
|
Task<bool> UpdateAsync(WalkingTime walkingTime, string accessToken, CancellationToken token);
|
|
|
|
/// <summary>
|
|
/// Echtes Löschen einer WalkingTime
|
|
/// </summary>
|
|
/// <param name="walkingTimeId">Id der WalkingTime</param>
|
|
/// <param name="appUserId">Id des AppBenutzers</param>
|
|
/// <param name="accessToken">Aktuelles Accesstoken</param>
|
|
/// <param name="token">CancellationToken</param>
|
|
/// <returns>True wenn erfolgreich, false sonst</returns>
|
|
Task<bool> DeleteAsync(string walkingTimeId, string appUserId, string accessToken, CancellationToken token);
|
|
}
|
|
}
|