public AppActionResult Run(CurrentUserDto user, IEnumerable <Order> orders)
        {
            var shippingDbSet = _dataService.GetDbSet <Shipping>();

            var poolingInfo = "Эту перевозку можно отправить в Pooling";

            var shipping = new Shipping
            {
                Status               = ShippingState.ShippingCreated,
                PoolingState         = ShippingPoolingState.PoolingAvailable,
                PoolingInfo          = poolingInfo,
                Id                   = Guid.NewGuid(),
                ShippingNumber       = ShippingNumberProvider.GetNextShippingNumber(),
                ProviderId           = user.ProviderId,
                ShippingCreationDate = DateTime.UtcNow
            };

            _historyService.Save(shipping.Id, "shippingSetCreated", shipping.ShippingNumber);

            shipping.DeliveryType      = DeliveryType.Delivery;
            shipping.TarifficationType = _shippingTarifficationTypeDeterminer.GetTarifficationTypeForOrders(orders);

            shippingDbSet.Add(shipping);

            UnionOrderInShipping(orders, orders, shipping, _historyService);

            var changes       = _dataService.GetChanges <Shipping>().FirstOrDefault(x => x.Entity.Id == shipping.Id);
            var changeTracker = _changeTrackerFactory.CreateChangeTracker()
                                .TrackAll <Shipping>()
                                .Remove <Shipping>(x => x.Id);

            changeTracker.LogTrackedChanges(changes);

            return(new AppActionResult
            {
                IsError = false,
                Message = "shippingSetCreated".Translate(user.Language, shipping.ShippingNumber)
            });
        }