Пример #1
0
        private UserSyncContext GetSyncContext(SynchronizationConfig config, IEnumerable <IGrouping <int, ShipInfo> > grouping)
        {
            var sync = new UserSyncContext();
            var user = _sysUserService.GetModelById(config.UserId);

            sync.TaskId = user.PlaneNumber;

            sync.UserId          = config.UserId;
            sync.SyncPeriodHours = config.SyncUnit.Equals("1") ? config.SyncPeriod : config.SyncPeriod * 24;
            sync.Shops           = new List <ShipInfo>();
            var myShops   = grouping.FirstOrDefault(x => x.Key == config.UserId).ToList();
            var shopIds   = config.StoreIds.Split(new char[] { ',', ',' }, StringSplitOptions.RemoveEmptyEntries).ToList();
            var syncShops = myShops.FindAll(x => shopIds.Contains(x.Id.ToString()));

            sync.Shops.AddRange(syncShops);
            return(sync);
        }