Skip to content

Commit d582654

Browse files
authored
Merge pull request #25 from THC-Software/a_lot_of_bugfixes
Fixed a lot of bugs
2 parents 6de80bc + fff95ed commit d582654

7 files changed

+24
-8
lines changed

Application/Handlers/CreatePlayOfferHandler.cs

+3
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@ public CreatePlayOfferHandler(WriteEventRepository writeEventRepository, ClubRep
2525
public async Task<Guid> Handle(CreatePlayOfferCommand request, CancellationToken cancellationToken)
2626
{
2727
var playOfferDto = request.CreatePlayOfferDto;
28+
29+
if (playOfferDto.ProposedStartTime >= playOfferDto.ProposedEndTime)
30+
throw new InvalidOperationException("Proposed start time must be before proposed end time!");
2831

2932
var club = await _clubRepository.GetClubById(request.ClubId);
3033
if (club == null)

Application/Handlers/GetPlayOffersByClubIdHandler.cs

+7-2
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,13 @@ public GetPlayOffersByClubIdHandler(PlayOfferRepository playOfferRepository, Mem
2424
public async Task<IEnumerable<PlayOfferDto>> Handle(GetPlayOffersByClubIdQuery request, CancellationToken cancellationToken)
2525
{
2626
var playOffers = await _playOfferRepository.GetPlayOffersByIds(null, null, request.ClubId);
27+
var club = await _clubRepository.GetClubById(request.ClubId);
2728

28-
var clubDto = new ClubDto((await _clubRepository.GetClubById(request.ClubId))!);
29+
var playOfferDtos = new List<PlayOfferDto>();
30+
if (club == null)
31+
return playOfferDtos;
32+
33+
var clubDto = new ClubDto(club);
2934
var memberDtos = (await _memberRepository.GetAllMembers()).Select(member => new MemberDto(member)).ToList();
3035
var courtDtos = (await _courtRepository.GetAllCourts()).Select(court => new CourtDto(court)).ToList();
3136
var reservationDtos = (await _reservationRepository.GetAllReservations())
@@ -34,7 +39,7 @@ public async Task<IEnumerable<PlayOfferDto>> Handle(GetPlayOffersByClubIdQuery r
3439
courtDtos.First(courtDto => courtDto.Id == reservation.CourtId)))
3540
.ToList();
3641

37-
var playOfferDtos = new List<PlayOfferDto>();
42+
3843
foreach (var playOffer in playOffers)
3944
{
4045
var creator = memberDtos.First(member => member.Id == playOffer.CreatorId);

Application/RedisPlayOfferStreamService.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ protected override async Task ExecuteAsync(CancellationToken stoppingToken)
5353
var parsedEvent = ParseEvent(streamEntry);
5454
await mediator.Send(parsedEvent, _cancellationToken);
5555
}
56-
await Task.Delay(1000);
56+
await Task.Delay(250);
5757
}
5858
}
5959

Application/RedisReservationStreamService.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ protected override async Task ExecuteAsync(CancellationToken stoppingToken)
5656

5757
await mediator.Send(parsedEvent, _cancellationToken);
5858
}
59-
await Task.Delay(1000);
59+
await Task.Delay(10000);
6060
}
6161
}
6262

Domain/Events/Reservation/ReservationRejectedEvent.cs

+4-4
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,17 @@ namespace PlayOfferService.Domain.Events.Reservation;
66
public class ReservationRejectedEvent : DomainEvent
77
{
88
[JsonPropertyName("start")]
9-
public DateTime Start { get; set; }
9+
public DateTime? Start { get; set; }
1010
[JsonPropertyName("end")]
11-
public DateTime End { get; set; }
11+
public DateTime? End { get; set; }
1212
[JsonPropertyName("reservantId")]
1313
public Guid? ReservantId { get; set; }
1414
[JsonPropertyName("tournamentId")]
1515
public Guid? TournamentId { get; set; }
1616
[JsonPropertyName("participantIds")]
1717
public List<Guid>? ParticipantIds { get; set; }
18-
[JsonPropertyName("courtIds")]
19-
public Guid CourtId { get; set; }
18+
[JsonPropertyName("courtId")]
19+
public Guid? CourtId { get; set; }
2020

2121
public ReservationRejectedEvent(){}
2222
}
+4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
1+
using System.ComponentModel.DataAnnotations;
2+
13
namespace PlayOfferService.Domain.Models;
24

35
public class CreatePlayOfferDto
46
{
7+
[Required]
58
public DateTime ProposedStartTime { get; set; }
9+
[Required]
610
public DateTime ProposedEndTime { get; set; }
711
}

Domain/Models/JoinPlayOfferDto.cs

+4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
1+
using System.ComponentModel.DataAnnotations;
2+
13
namespace PlayOfferService.Domain.Models;
24

35
public class JoinPlayOfferDto
46
{
7+
[Required]
58
public Guid PlayOfferId { get; set; }
9+
[Required]
610
public DateTime AcceptedStartTime { get; set; }
711
}

0 commit comments

Comments
 (0)