Example #1
0
        public void ListAggregator()
        {
            var lstAggr = new ListAggregator(null);

            for (int i = 0; i < 10; i++)
            {
                lstAggr.Push(5, null);
            }
            Assert.Equal(10, (int)lstAggr.Count);
            Assert.Equal(5, ((IList)lstAggr.Value)[0]);

            // list aggr with field
            Func <object, string, object> getVal = (r, f) => {
                Assert.Equal("test", f);
                return(r);
            };
            var lstAggr2 = new ListAggregator("test");

            for (int i = 0; i < 20; i++)
            {
                lstAggr2.Push(i, getVal);
            }
            Assert.Equal(20, (int)lstAggr2.Count);
            Assert.Equal(0, ((IList)lstAggr2.Value)[0]);
            Assert.Equal(19, ((IList)lstAggr2.Value)[19]);
        }
        private void GetNewData(User arg)
        {
            if (arg == null)
            {
                return;
            }

            try
            {
                ListAggregator temPlist = arg.ListAggregators.Where(a => a.ListAggregatorId == _listAggregator.ListAggregatorId).FirstOrDefault();
                ListAggr = temPlist;

                if (temPlist == null)
                {
                    List = new ObservableCollection <List>();
                }
                else
                {
                    List = new ObservableCollection <List>(temPlist.Lists);
                }
            }
            catch
            {
                List = new ObservableCollection <List>();
            }
        }
Example #3
0
        public void ListAggregator_Merge()
        {
            var lstAggr1 = new ListAggregator(null, new[] { "a", "b", "c" });
            var lstAggr2 = new ListAggregator(null, new[] { "c", "a", "b" });

            lstAggr1.Merge(lstAggr2);
            Assert.Equal(6, (int)lstAggr1.Count);
        }
        public InvitationsViewModel(UserService userService, ListAggregator listAggregator)
        {
            _userService    = userService;
            _listAggregator = listAggregator;



            base.InitAsyncCommand.Execute(null);
        }
        public ListViewModel(UserService userService, ListItemService listItemService, ListAggregator listAggregator)
        {
            userName         = App.UserName;
            _userService     = userService;
            _listItemService = listItemService;
            _listAggregator  = listAggregator;

            GetNewData(App.User);

            base.InitAsyncCommand.Execute(null);
        }
Example #6
0
        private static User MapUserEntityToUser(UserEntity userDTO)
        {
            var user = new User
            {
                EmailAddress = userDTO.EmailAddress,
                UserId       = userDTO.UserId
            };

            foreach (var agr in userDTO.UserListAggregators)
            {
                var la = new ListAggregator
                {
                    ListAggregatorName = agr.ListAggregator.ListAggregatorName,
                    ListAggregatorId   = agr.ListAggregator.ListAggregatorId,
                };

                user.ListAggregators.Add(la);


                foreach (var list in agr.ListAggregator.Lists)
                {
                    var li = new List
                    {
                        ListId   = list.ListId,
                        ListName = list.ListName
                    };

                    la.Lists.Add(li);

                    foreach (var listItem in list.ListItems)
                    {
                        var litem = new ListItem
                        {
                            ListItemId   = listItem.ListItemId,
                            ListItemName = listItem.ListItemName
                        };

                        li.ListItems.Add(litem);
                    }
                }
            }

            return(user);
        }
Example #7
0
        public static async Task <(ListAggregator, List)> LoadChoosedList(User data, ILocalStorageService localStorage)
        {
            ListAggregator listAggregatorChoosed = null;
            List           listChoosed           = null;

            var listAggregatorId = await localStorage.GetItemAsync <int>("ListAggregatorId");

            var listId = await localStorage.GetItemAsync <int>("ListId");


            listAggregatorChoosed = data.ListAggregators.Where(a => a.ListAggregatorId == listAggregatorId).FirstOrDefault();


            if (listAggregatorId <= 0 || listAggregatorChoosed == null)
            {
                listAggregatorChoosed = data.ListAggregators.FirstOrDefault();
            }

            if (listAggregatorChoosed != null)
            {
                listAggregatorChoosed.Lists = listAggregatorChoosed.Lists.OrderByDescending(a => a.Order).ToList();
            }


            listChoosed = listAggregatorChoosed?.Lists.Where(a => a.ListId == listId).FirstOrDefault();



            if (listId < 0 || listChoosed == null)
            {
                listChoosed = listAggregatorChoosed?.Lists.FirstOrDefault();
            }

            if (listChoosed != null)
            {
                listChoosed.ListItems = listChoosed.ListItems.OrderByDescending(a => a.Order).ToList();
            }

            return(listAggregatorChoosed, listChoosed);
        }
        private void GetNewDataFromUser(User arg)
        {
            if (arg == null)
            {
                return;
            }

            try
            {
                var temLlist = arg.ListAggregators.Where(a => a.ListAggregatorId == _listAggregator.ListAggregatorId).FirstOrDefault()
                               .Lists.Where(a => a.ListId == _list.ListId).FirstOrDefault().ListItems.ToList();

                ListAggr = arg.ListAggregators.Where(a => a.ListAggregatorId == _listAggregator.ListAggregatorId).FirstOrDefault();

                if (temLlist == null)
                {
                    //ListItems = new ObservableCollection<ListItem>();

                    ListItems.Clear();
                }
                else
                {
                    //_listItemsTemp = new List<ListItem>(temLlist);

                    ListItems.CollectionChanged -= ListItems_CollectionChanged;
                    ListItems.Clear();
                    //ListItems = new ObservableCollection<ListItem>(temLlist);
                    temLlist.ForEach(a => ListItems.Add(a));
                    ListItems.CollectionChanged += ListItems_CollectionChanged;
                }
            }
            catch
            {
                ListItems.Clear();

                //ListItems = new ObservableCollection<ListItem>();
            }
        }
Example #9
0
        public async Task <ActionResult <ListAggregator> > EditListAggregator([FromBody] ListAggregator item, int listAggregationId)
        {
            var listItemEntity = _mapper.Map <ListAggregatorEntity>(item);

            if (!CheckIntegrity(item.ListAggregatorId, listAggregationId))
            {
                return(Forbid());
            }

            // _context.ListItems.Remove(_context.ListItems.Single(a => a.ListItemId == ItemId));


            _context.Entry <ListAggregatorEntity>(listItemEntity).Property(nameof(ListAggregatorEntity.ListAggregatorName)).IsModified = true;
            var amount = await _context.SaveChangesAsync();

            var listItem = _mapper.Map <ListAggregator>(listItemEntity);

            var userList = await WebApiHelper.GetuUserIdFromListAggrIdAsync(listAggregationId, _context);

            await _mediator.Publish(new DataChangedEvent(userList));


            return(await Task.FromResult(listItem));
        }
Example #10
0
 public TAccumulated Aggregate <TAccumulated>(TAccumulated seed, ListAggregator <TAccumulated, T> aggregator)
 {
     return(default(TAccumulated));
 }
Example #11
0
        public async Task <ActionResult <ListAggregator> > AddListAggregatortoListt(int parentId, [FromBody] ListAggregator item)
        {
            var listItemEntity = _mapper.Map <ListAggregatorEntity>(item);
            //listItemEntity.ListAggregatorId = parentId;

            var userListAggregatorEntity = new UserListAggregatorEntity {
                UserId = parentId, ListAggregator = listItemEntity, PermissionLevel = 1
            };


            _context.UserListAggregators.Add(userListAggregatorEntity);

            await _context.SaveChangesAsync();


            //var item = _mapper.Map<ListItem>(listItemEntity);
            item.ListAggregatorId = listItemEntity.ListAggregatorId;



            return(await Task.FromResult(item));
        }