Ejemplo n.º 1
0
        public Task Update(RozkladUser rozkladUser)
        {
            var wrapper = new RozkladUserWrapper(rozkladUser);

            _dbContext.RozkladUserWrappers.Update(wrapper);
            _memoryCache.Set(wrapper.Guid, wrapper);
            return(_dbContext.SaveChangesAsync());
        }
Ejemplo n.º 2
0
        public Task Delete(RozkladUser rozkladUser)
        {
            rozkladUser.IsDeleted = true;
            rozkladUser.FacultyGroups.Clear();
            var wrapper = new RozkladUserWrapper(rozkladUser);

            _dbContext.RozkladUserWrappers.Update(wrapper);
            _memoryCache.Remove(wrapper.Guid);
            return(_dbContext.SaveChangesAsync());
        }
Ejemplo n.º 3
0
        public async Task Add(RozkladUser rozkladUser)
        {
            var alreadyExistedUser =
                await _dbContext.RozkladUserWrappers
                .AsNoTracking()
                .Where(u => u.Guid == rozkladUser.Guid)
                .FirstOrDefaultAsync();

            if (alreadyExistedUser == null)
            {
                var wrapper = new RozkladUserWrapper(rozkladUser);
                _memoryCache.Set(wrapper.Guid, wrapper);
                await _dbContext.RozkladUserWrappers.AddAsync(wrapper);
            }
            else
            {
                alreadyExistedUser.IsDeleted = false;
                _memoryCache.Set(alreadyExistedUser.Guid, alreadyExistedUser);
                _dbContext.RozkladUserWrappers.Update(alreadyExistedUser);
            }
            await _dbContext.SaveChangesAsync();
        }