Пример #1
0
        public static void AssignAggregateBulletinWork(IEnumerable <AggregateBulletinPackage> collection)
        {
            if (collection.Count() == 0)
            {
                return;
            }

            var bulletinContainer = BulletinPackageContainerList.Get(BoardIds.Avito);

            bulletinContainer.CloneBulletins(collection);
        }
Пример #2
0
        public static void AssignProfileWork(IEnumerable <AccessCache> collection)
        {
            if (collection.Count() == 0)
            {
                return;
            }

            //TODO - сделать группировку по бордам
            var bulletinContainer = BulletinPackageContainerList.Get(BoardIds.Avito);
            var accesses          = collection.Cast <AccessCache>().ToArray();

            bulletinContainer.GetBulletinList(accesses);
        }
Пример #3
0
        static void AskForWorkCallback(IEnumerable <TaskCache_old> tasks)
        {
            var bulletinContainer = BulletinPackageContainerList.Get(BoardIds.Avito);

            var bulletinWork = tasks.Where(q => q.TargetType == "BulletinEngine.Entity.Data.BulletinInstance").ToArray();
            var accessWork   = tasks.Where(q => q.TargetType == "BulletinEngine.Entity.Data.Access").ToArray();


            var commandCollection = bulletinWork.GroupBy(q => q.Command).Select(q => new { Command = q.Key, Collection = q.ToList() }).ToList();

            foreach (var c in commandCollection)
            {
                switch (EnumHelper.GetValue <TaskCacheCommand>(c.Command))
                {
                case TaskCacheCommand.Creation:
                    bulletinContainer.AddBulletins2(c.Collection);
                    break;

                case TaskCacheCommand.Checking:
                    //bulletinContainer.GetBulletinList(c.Collection);
                    break;
                }
            }
        }
Пример #4
0
        public static void AssignBulletinWork(IEnumerable <BulletinPackage> collection)
        {
            //TODO - сделать группировку по бордам
            var bulletinContainer = BulletinPackageContainerList.Get(BoardIds.Avito);

            var withoutValues = collection.Cast <BulletinPackage>().Where(q => (q.ValueFields == null || q.ValueFields.Count == 0)).ToArray();

            if (withoutValues.Length > 0)
            {
                bulletinContainer.GetBulletinDetails(withoutValues);
            }

            var stateCollection = collection.Cast <BulletinPackage>().Where(q => (q.ValueFields != null && q.ValueFields.Count != 0)).GroupBy(q => q.State).Select(q => new { State = q.Key, Collection = q.ToList() }).ToList();

            foreach (var s in stateCollection)
            {
                switch (EnumHelper.GetValue <BulletinState>(s.State))
                {
                case BulletinState.WaitPublication:
                    bulletinContainer.AddBulletins(s.Collection);
                    break;

                case BulletinState.WaitRepublication:
                    bulletinContainer.RepublicateBulletins(s.Collection);
                    break;

                case BulletinState.Edited:
                    bulletinContainer.EditBulletins(s.Collection);
                    break;

                case BulletinState.OnModeration:
                    bulletinContainer.CheckModerationState(s.Collection);
                    break;
                }
            }
        }