public async Task <ActionResult <Submission> > Patch(UpdateSubmission request)
        {
            // Let MediatR dispatch the incoming command
            var submission = await _mediator.Send(request).ConfigureAwait(false);

            return(submission);
        }
        public async Task <Submission> Handle(UpdateSubmission request, CancellationToken cancellationToken)
        {
            var submission = _ctx.Submissions.First(x => x.Id == request.Id);

            if (submission == null)
            {
                throw new InvalidOperationException();
            }

            //submission.UpdateSubmissionStatus(request.SubmissionStatusId);

            _ctx.Attach(submission).State = EntityState.Modified;

            await _ctx.SaveChangesAsync().ConfigureAwait(false);

            return(submission);
        }