示例#1
0
        public List <ActionInfo> GetActionsByMenuRoleFid(Guid menuFid)
        {
            List <MenuActionInfo> list = dal.GetList("and [VALID_FLAG] = 1 and [MENU_FID] = '" + menuFid + "'", string.Empty);

            if (list.Count == 0)
            {
                return(new List <ActionInfo>());
            }
            List <ActionInfo> actionList = new ActionDAL().GetList("and [VALID_FLAG] = 1 "
                                                                   + "and [FID] in ('" + string.Join("','", list.Select(d => d.ActionFid.GetValueOrDefault()).ToArray()) + "')"
                                                                   , string.Empty);

            foreach (var actionInfo in actionList)
            {
                var info = list.SingleOrDefault(d => d.ActionFid == actionInfo.Fid);
                if (info == null)
                {
                    continue;
                }
                actionInfo.DisplayOrder = info.ActionOrder.GetValueOrDefault();
                actionInfo.ClientJs     = info.ClientJs;
                actionInfo.Fid          = info.Fid;
            }
            return(actionList.OrderBy(d => d.DisplayOrder).ToList());
        }