Esempio n. 1
0
        public void RelinkCategory(Category category)
        {
            var before       = ( int )_elasticClient.CountProductsWithCategory(category.Id);
            var unlinkResult = _elasticClient.UnlinkCategory(category);

            _context.AddMessage($"Отвязали { unlinkResult.Pretty } товаров");
            _context.TotalActions = 2;
            _context.CalculatePercent();

            if (category.IsTermsEmpty())
            {
                _context.CalculatePercent();
                _context.Content = $"{category.Id}: отвязали {unlinkResult.Pretty}";
                _dbHelper.UpdateProductsByCategory(category, before, 0);
                return;
            }

            var linkResult = LinkCategory(category);

            _context.AddMessage($"Привязвали { linkResult.Item2.Pretty } товаров");
            _context.Content = $"{category.Id}: отвязали {unlinkResult.Pretty}, привязали {linkResult.Item2.Pretty}, разница { unlinkResult.GetDifferencePercent( linkResult.Item2 ) }%";
            _dbHelper.UpdateProductsByCategory(category, before, (int)linkResult.Item2.Updated);
        }