Пример #1
0
        private async Task InsertConfigAsync(RestaurantConfigDto config)
        {
            var isDefault = !await _context.RestaurantConfigs.AnyAsync();

            var result = _mapper.Map <RestaurantConfig>(config);

            result.IsDefault = isDefault;

            await _context.RestaurantConfigs.AddAsync(result);
        }
Пример #2
0
        private async Task UpdateConfigAsync(RestaurantConfigDto config, RestaurantConfig result)
        {
            if (config.IsDefault)
            {
                var all = await _context.RestaurantConfigs.ToListAsync();

                all.ForEach(item => item.IsDefault = false);
                _context.RestaurantConfigs.UpdateRange(all);
            }

            var data = _mapper.Map(config, result);

            _context.RestaurantConfigs.Update(data);
        }
Пример #3
0
        public async Task <RestaurantConfigDto> UpsertRestaurantConfigAsync(RestaurantConfigDto config)
        {
            var result = await _context.RestaurantConfigs.FirstOrDefaultAsync(p => p.RestaurantConfigId == config.RestaurantConfigId);

            if (result == null)
            {
                await InsertConfigAsync(config);
            }
            else
            {
                await UpdateConfigAsync(config, result);
            }
            await _context.SaveChangesAsync();

            return(config);
        }