public async Task<ActionResult> Index(Guid id)
        {
            object dateReceivedResult;
            object unitResult;
            object quantityResult;

            bool allDataPresent = false;
            var model = new ReceiptCompleteViewModel();
            
            if (TempData.TryGetValue(DateReceivedKey, out dateReceivedResult)
                && TempData.TryGetValue(UnitKey, out unitResult)
                && TempData.TryGetValue(QuantityKey, out quantityResult))
            {
                allDataPresent = true;

                model.DateReceived = DateTime.Parse(dateReceivedResult.ToString());
                model.Unit = (ShipmentQuantityUnits)unitResult;
                model.Quantity = decimal.Parse(quantityResult.ToString());
            }

            if (allDataPresent)
            {
                var notificationId = await mediator.SendAsync(new GetNotificationIdByMovementId(id));
                model.NotificationId = notificationId;

                return View(model);
            }

            return RedirectToAction("Index", "DateReceived", new { id });
        }
        public async Task<ActionResult> Index(Guid id, ReceiptCompleteViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return View(model);
            }
            var fileExtension = Path.GetExtension(model.File.FileName);
            var uploadedFile = await fileReader.GetFileBytes(model.File);

            var fileId = await mediator.SendAsync(new SaveCertificateOfReceiptFile(id, uploadedFile, fileExtension));
            
            await mediator.SendAsync(new SetMovementAccepted(id, fileId, model.DateReceived, model.Quantity.GetValueOrDefault(), model.Unit.GetValueOrDefault()));

            return RedirectToAction("Success", "ReceiptComplete");
        }