Esempio n. 1
0
        public void UnassignRole(FunctionItem function, Role role = null)
        {
            if (function == null)
                throw new ArgumentNullException("function");
            Expression<Func<RoleFunction, bool>> specExpression;
            if (role == null)
                specExpression = ur => ur.FunctionItemId == function.Id;
            else
                specExpression = ur => ur.FunctionItemId == function.Id && ur.RoleId == role.Id;

            var roleFunction = _roleFunctionRepository.GetFiltered(specExpression).FirstOrDefault();

            if (roleFunction != null)
            {
                _roleFunctionRepository.Remove(roleFunction);
            }
        }
Esempio n. 2
0
 public RoleFunction AssignRole(FunctionItem function, Role role)
 {
     if (function == null)
         throw new ArgumentNullException("function");
     if (role == null)
         throw new ArgumentNullException("role");
     var roleFunction = _roleFunctionRepository.GetFiltered(p => p.FunctionItemId == function.Id)
         .FirstOrDefault();
     if (roleFunction == null)
     {
         roleFunction = new RoleFunction(function.Id, role.Id);
         _roleFunctionRepository.Add(roleFunction);
     }
     else
     {
         //roleFunction.SetRoleId(role.Id);
         _roleFunctionRepository.Modify(roleFunction);
     }
     return roleFunction;
 }
Esempio n. 3
0
 private FunctionItemDTO GenerateFunctionItem(FunctionItem functionItem)
 {
     var functionItemDataObject = new FunctionItemDTO
     {
         Id = functionItem.Id,
         CreateDate = functionItem.CreateDate,
         Description = functionItem.Description,
         ImageUrl = functionItem.ImageUrl,
         IsButton = functionItem.IsButton,
         IsLeaf = functionItem.IsLeaf,
         IsValid = functionItem.IsValid,
         Name = functionItem.Name,
         NaviUrl = functionItem.NaviUrl,
         ParentItemId = functionItem.ParentItemId,
         Sort = functionItem.Sort,
         SubFunctionItems = new List<FunctionItemDTO>(),
     };
     var temp =
         _unitOfWork.CreateSet<FunctionItem>()
             .Where(p => p.ParentItemId == functionItem.Id)
             .ToList()
             .OrderBy(p => p.Sort);
     foreach (var subItem in temp)
     {
         functionItemDataObject.SubFunctionItems.Add(GenerateFunctionItem(subItem));
     }
     return functionItemDataObject;
 }