private string GetDefuMenu() { string resu = string.Empty; //获取用户拥有权限的子系统 List <string> hasPermissionSyss = oc.UserMenuPermission.Where(u => u.PARENT_ID.Equals(Constant.systemParID)).OrderBy(u => u.MENU_ORDER) .Select(u => u.MENU_ID).ToList(); if (hasPermissionSyss.Count > 0) { SYS_USER_DEFAULTMENU userDefu = oc.BllSession.ISYS_USER_DEFAULTMENUService.Entities.Where(u => u.USER_NAME.Equals(oc.CurrentUser.USER_NAME)).FirstOrDefault(); string defuSetting = Constant.defuOneMenuParID; if (userDefu != null) { if (hasPermissionSyss.Contains(userDefu.MENU_ID)) { resu = userDefu.MENU_ID; } else { if (hasPermissionSyss.Contains(defuSetting)) { resu = defuSetting; } else { resu = hasPermissionSyss[0]; } } } else { if (hasPermissionSyss.Contains(defuSetting)) { resu = defuSetting; } else { resu = hasPermissionSyss[0]; } } } return(resu); }
/// <summary> /// 设置用户默认展开系统 /// </summary> public static AjaxMsgModel SetDefuSystem(string menuID) { AjaxMsgModel amm = new Message().NewAmm; try { if (oc.BllSession.ISYS_USER_DEFAULTMENUService.Entities.Where(d => d.USER_NAME.Equals(oc.CurrentUser.USER_NAME)).FirstOrDefault() != null) { //用户已经设置了子系统 //Expression<Func<SYS_USER_DEFAULTMENU, object>>[] ignoreProperties = new Expression<Func<SYS_USER_DEFAULTMENU, object>>[] { //p=>p.SYS_MENU,p=>p.SYS_USER //}; SYS_USER_DEFAULTMENU userDefu = oc.BllSession.ISYS_USER_DEFAULTMENUService.Entities.Where(d => d.USER_NAME.Equals(oc.CurrentUser.USER_NAME)) .FirstOrDefault(); userDefu.MENU_ID = menuID; if (oc.BllSession.ISYS_USER_DEFAULTMENUService.UpdateEntity(userDefu, new string[] { "MENU_ID" }) > 0) { amm.Statu = AjaxStatu.ok; amm.Msg = string.Format(Message.OptSussess, "默认系统", Message.SetOpt); } } else { SYS_USER_DEFAULTMENU userDefu = new SYS_USER_DEFAULTMENU { MENU_ID = menuID, USER_NAME = oc.CurrentUser.USER_NAME, USER_DEFAULT_ID = DateTime.Now.ToString("yyyyMMddHHmmssfff") }; if (oc.BllSession.ISYS_USER_DEFAULTMENUService.AddEntity(userDefu) > 0) { amm.Statu = AjaxStatu.ok; amm.Msg = string.Format(Message.OptSussess, "默认系统", Message.SetOpt); } } } catch (Exception) { return(amm); } return(amm); }