public async Task CreateUserVocs(UserVocListVM userVocVMsCreate)
        {
            UserInfo userInfo = await appDbContext.UserInfos.FirstOrDefaultAsync(x => x.UserId == userVocVMsCreate.UserId);

            if (userInfo != null)
            {
                appDbContext.Entry(userInfo).State = EntityState.Detached;
                userInfo.LastVocId = userVocVMsCreate.LastVocId;
                appDbContext.Entry(userInfo).State = EntityState.Modified;
            }
            else
            {
                return;
            }


            foreach (var uservoc in userVocVMsCreate.UserVocs)
            {
                appDbContext.Entry(uservoc.Voc).State = EntityState.Detached;
                await appDbContext.UserVocs.AddAsync(uservoc);

                appDbContext.Entry(uservoc.Voc).State = EntityState.Modified;
            }

            await appDbContext.SaveChangesAsync();
        }
Beispiel #2
0
        public async Task <ActionResult> UpdateUserVocsReview(UserVocListVM userVocVMsUpdate)
        {
            try
            {
                if (userVocVMsUpdate == null)
                {
                    return(BadRequest("userVocVMsUpdate mismatch"));
                }

                var user = await userManager.FindByNameAsync(userVocVMsUpdate.UserName);

                userVocVMsUpdate.UserId = user.Id;

                foreach (var uservoc in userVocVMsUpdate.UserVocs)
                {
                    uservoc.UserId = userVocVMsUpdate.UserId;
                }

                await uservocRepository.UpdateUserVocsReview(userVocVMsUpdate);

                return(null);
            }

            catch (DbUpdateException Ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError,
                                  Ex.InnerException.Message));
            }
        }
        public async Task <UserVocListVM> GetReviewVM(UserVocListVM reviewVM)
        {
            reviewVM.UserVocs = await appDbContext.UserVocs
                                .Include(x => x.Voc)
                                .Where(x => x.UserId == reviewVM.UserId && x.Study == true && x.NextReviewTime < DateTime.UtcNow)
                                .ToListAsync();

            return(reviewVM);
        }
        public async Task <UserVocListVM> GetStudyVM(UserVocListVM studyVM)
        {
            studyVM.UserVocs = await appDbContext.UserVocs
                               .Include(x => x.Voc)
                               .Where(x => x.UserId == studyVM.UserId && x.Study == false)
                               .ToListAsync();

            return(studyVM);
        }
        public async Task <UserVocListVM> GetUserVocVMsResults(UserNameVM userNameVM)
        {
            UserVocListVM userVocListVMs = new UserVocListVM();

            userVocListVMs.UserVocs = await appDbContext.UserVocs
                                      .Include(x => x.Voc)
                                      .Where(x => x.UserId == userNameVM.UserId)
                                      .ToListAsync();

            return(userVocListVMs);
        }
Beispiel #6
0
        public async Task <UserVocListVM> GetUserVocVMsResults(UserNameVM userNameVM)
        {
            var response = httpService.Post($"{url}/GetUserVocVMsResults", userNameVM);

            UserVocListVM userVocListVMs = new UserVocListVM();

            userVocListVMs = await DeserializeAsync <UserVocListVM>(response.HttpResponseMessage, defaultJsonSerializerOptions);


            return(userVocListVMs);
        }
Beispiel #7
0
        public async Task <UserVocListVM> GetReviewVM(UserVocListVM reviewVM)
        {
            var response = await httpService.PostAsync($"{url}/GetReviewVM", reviewVM);

            if (response.Success)
            {
                reviewVM = await DeserializeAsync <UserVocListVM>(response.HttpResponseMessage, defaultJsonSerializerOptions);
            }
            else
            {
                reviewVM.Exception = await response.GetBody();
            }

            return(reviewVM);
        }
        public async Task UpdateUserVocList(UserVocListVM userVocVMsUpdate)
        {
            List <UserVoc> dbUservocs = new List <UserVoc>();

            foreach (var userVoc in userVocVMsUpdate.UserVocs)
            {
                dbUservocs.Add(await appDbContext.UserVocs.FirstOrDefaultAsync(x => x.UserId == userVoc.UserId && x.VocId == userVoc.VocId));
            }

            foreach (var dbUservoc in dbUservocs)
            {
                if (dbUservoc != null)
                {
                    dbUservoc.Study = true;
                }
            }

            await appDbContext.SaveChangesAsync();
        }
        public async Task UpdateUserVocsReview(UserVocListVM userVocVMsUpdate)
        {
            List <UserVoc> dbUservocs = new List <UserVoc>();
            UserVoc        dbUserVoc  = new UserVoc();

            foreach (var userVoc in userVocVMsUpdate.UserVocs)
            {
                dbUserVoc = await appDbContext.UserVocs.FirstOrDefaultAsync(x => x.UserId == userVoc.UserId && x.VocId == userVoc.VocId);

                dbUserVoc.Repetition     = userVoc.Repetition;
                dbUserVoc.Success        = userVoc.Success;
                dbUserVoc.NextReviewTime = userVoc.NextReviewTime;
                dbUserVoc.Study          = userVoc.Study;
                dbUserVoc.LevelCounter   = userVoc.LevelCounter;
                dbUserVoc.Level          = userVoc.Level;

                dbUservocs.Add(dbUserVoc);
            }

            await appDbContext.SaveChangesAsync();
        }
Beispiel #10
0
        public async Task <ActionResult <UserVocListVM> > GetStudyVM(UserVocListVM studyVM)
        {
            try
            {
                if (studyVM == null)
                {
                    return(BadRequest());
                }

                var user = await userManager.FindByNameAsync(studyVM.UserName);

                studyVM.UserId = user.Id;

                await uservocRepository.GetStudyVM(studyVM);

                return(studyVM);
            }
            catch (DbUpdateException Ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError,
                                  Ex.InnerException.Message));
            }
        }
Beispiel #11
0
 public async Task UpdateUserVocsReview(UserVocListVM userVocVMsUpdate)
 {
     await httpService.Put($"{url}/review", userVocVMsUpdate);
 }
Beispiel #12
0
 public async Task UpdateUserVocList(UserVocListVM userVocVMsUpdate)
 {
     await httpService.Put($"{url}/list", userVocVMsUpdate);
 }
Beispiel #13
0
 public async Task CreateUserVocs(UserVocListVM userVocVMsCreate)
 {
     var response = await httpService.PostAsync($"{url}/list", userVocVMsCreate);
 }