public async Task Handle(eFormCaseUpdated message)
        {
            ItemCaseSite itemCaseSite = await _dbContext.ItemCaseSites.SingleOrDefaultAsync(x => x.MicrotingSdkCaseId == message.caseId);

            if (itemCaseSite != null)
            {
                var caseDto = await _sdkCore.CaseReadByCaseId(message.caseId);

                var microtingUId      = caseDto.MicrotingUId;
                var microtingCheckUId = caseDto.CheckUId;
                await using MicrotingDbContext microtingDbContext = _sdkCore.DbContextHelper.GetDbContext();
                Site site = await microtingDbContext.Sites.SingleAsync(x => x.Id == itemCaseSite.MicrotingSdkSiteId);

                Language language = await microtingDbContext.Languages.SingleAsync(x => x.Id == site.LanguageId);

                var theCase = await _sdkCore.CaseRead((int)microtingUId, (int)microtingCheckUId, language);

                itemCaseSite = await SetFieldValue(itemCaseSite, theCase.Id);

                await itemCaseSite.Update(_dbContext);

                ItemCase itemCase = await _dbContext.ItemCases.SingleOrDefaultAsync(x => x.Id == itemCaseSite.ItemCaseId);

                itemCase = await SetFieldValue(itemCase, theCase.Id);

                await itemCase.Update(_dbContext);
            }
        }
        public async Task Handle(eFormRetrieved message)
        {
            ItemCaseSite itemCaseSite = _dbContext.ItemCaseSites.SingleOrDefault(x => x.MicrotingSdkCaseId == message.caseId);

            if (itemCaseSite != null)
            {
                if (itemCaseSite.Status < 77)
                {
                    itemCaseSite.Status = 77;
                    await itemCaseSite.Update(_dbContext);
                }
            }
        }
        public async Task Handle(eFormCompleted message)
        {
            ItemCaseSite itemCaseSite = await _dbContext.ItemCaseSites.SingleOrDefaultAsync(x => x.MicrotingSdkCaseId == message.caseId);

            if (itemCaseSite != null)
            {
                itemCaseSite.Status = 100;
                var caseDto           = _sdkCore.CaseReadByCaseId(message.caseId);
                var microtingUId      = caseDto.Result.MicrotingUId;
                var microtingCheckUId = caseDto.Result.CheckUId;
//                if (microtingUId != null && microtingCheckUId != null) {}
                if (microtingUId != null && microtingCheckUId != null)
                {
                    Language language = await _sdkCore.DbContextHelper.GetDbContext().Languages
                                        .SingleAsync(x => x.LanguageCode == "da");

                    var theCase = _sdkCore.CaseRead((int)microtingUId, (int)microtingCheckUId, language);

                    itemCaseSite = await SetFieldValue(itemCaseSite, theCase.Id);

                    itemCaseSite.MicrotingSdkCaseDoneAt = theCase.Result.DoneAt;
                    itemCaseSite.DoneByUserId           = itemCaseSite.MicrotingSdkSiteId;
                    var site = _sdkCore.SiteRead(itemCaseSite.MicrotingSdkSiteId);
                    itemCaseSite.DoneByUserName = $"{site.Result.FirstName} {site.Result.LastName}";
                    await itemCaseSite.Update(_dbContext);

                    ItemCase itemCase = await _dbContext.ItemCases.SingleOrDefaultAsync(x => x.Id == itemCaseSite.ItemCaseId);

                    if (itemCase.Status != 100)
                    {
                        itemCase.Status = 100;
                        itemCase.MicrotingSdkCaseDoneAt = theCase.Result.DoneAt;
                        itemCase.MicrotingSdkCaseId     = itemCaseSite.MicrotingSdkCaseId;
                        itemCase.DoneByUserId           = itemCaseSite.MicrotingSdkSiteId;
                        itemCase.DoneByUserName         = $"{site.Result.FirstName} {site.Result.LastName}";

                        itemCase = await SetFieldValue(itemCase, theCase.Id);

                        await itemCase.Update(_dbContext);
                    }

                    await RetractFromMicroting(itemCase.Id);
                }
            }
        }