Skip to content

Commit

Permalink
??
Browse files Browse the repository at this point in the history
  • Loading branch information
oskogstad committed Sep 23, 2024
1 parent e6127a9 commit cee23e2
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,9 @@ public async Task<NotificationConditionResult> Handle(NotificationConditionQuery
{
var dialog = await _db.Dialogs
.AsNoTracking()
.Include(x => x.Activities)
.Include(x => x.Activities
.Where(x => request.TransmissionId == null || x.TransmissionId == request.TransmissionId)
.Where(x => x.TypeId == request.ActivityType))
.FirstOrDefaultAsync(x => x.Id == request.DialogId,
cancellationToken: cancellationToken);

Expand All @@ -47,20 +49,10 @@ public async Task<NotificationConditionResult> Handle(NotificationConditionQuery
return new EntityNotFound<DialogEntity>(request.DialogId);
}

var conditionMet = CheckDialogActivitiesCondition(dialog.Activities, request.ConditionType, request.ActivityType, request.TransmissionId);
var conditionMet = dialog.Activities.Count == 0
? request.ConditionType == NotificationConditionType.NotExists
: request.ConditionType == NotificationConditionType.Exists;

return new NotificationConditionDto { SendNotification = conditionMet };
}

private static bool CheckDialogActivitiesCondition(
List<DialogActivity> activities,
NotificationConditionType conditionType,
DialogActivityType.Values activityType,
Guid? transmissionId) =>
activities.Where(
x => x.TypeId == activityType
&& (transmissionId is null || x.TransmissionId == transmissionId)).ToList()
.Count == 0
? conditionType == NotificationConditionType.NotExists
: conditionType == NotificationConditionType.Exists;
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public NotificationConditionEndpoint(ISender sender)

public override void Configure()
{
Get("dialogs/{dialogId}/notification-condition");
Get("dialogs/{dialogId}/actions/should-send-notification");
Policies(AuthorizationPolicy.NotificationConditionCheck);
Group<ServiceOwnerGroup>();

Expand Down

0 comments on commit cee23e2

Please sign in to comment.