Exemplo n.º 1
0
        public UserMenuItemsListViewModel UpdateUserMenuItems(UserMenuItemsListViewModel model)
        {
            //var currentUserId = this._currentUserService.CurrentUserId;
            //if (currentUserId == model.UserId)
            //{
            //	throw new GeneralException((int)ErrorCodeEnum.CurrentUserCannotChangeHisMenuItems);
            //}

            var entityCollection = this._UserMenuItemsRepository.Get(null).Where(x => x.UserId == model.UserId);

            if (entityCollection.Count() > 0)
            {
                foreach (var item in entityCollection)
                {
                    this._UserMenuItemsRepository.Delete(item);
                }
                this._unitOfWork.Commit();
            }

            if (model.List?.Count > 0)
            {
                foreach (var item in model.List)
                {
                    UserMenuItem newEntity = new UserMenuItem
                    {
                        UserId     = model.UserId,
                        MenuItemId = item.Value
                    };
                    this._UserMenuItemsRepository.Add(newEntity);
                }
                this._unitOfWork.Commit();
            }

            return(model);
        }
Exemplo n.º 2
0
        public UserMenuItemsListViewModel GetUserMenuItems(long userId)
        {
            var lang             = this._languageService.CurrentLanguage;
            var entityCollection = this._UserMenuItemsRepository.Get(null).Where(x => x.UserId == userId).ToList();

            UserMenuItemsListViewModel result = new UserMenuItemsListViewModel
            {
                UserId = userId,
                List   = new List <NmaeValueViewModel>()
            };

            foreach (var item in entityCollection)
            {
                result.List.Add(new NmaeValueViewModel
                {
                    Value = item.MenuItemId.Value,
                    Name  = item.MenuItem.ChildTranslatedMenuItems.FirstOrDefault(x => x.Language == lang).Name
                });
            }
            return(result);
        }