public void SaveToCache(YnUser ynUser, int moduleId) { if (ynUser != null) { try { bool isSaveToCache = false; YnWebRight ynWebRight = new YnWebRight(); ynWebRight.moduleId = moduleId; if (YnUserService.GetInstance().IsSuperAdministrator(ynUser.userId) || YnUserService.GetInstance().IsAdministrator(ynUser.userId)) { isSaveToCache = true; ynWebRight.rightManage = true; ynWebRight.rightAdd = true; ynWebRight.rightEdit = true; ynWebRight.rightDelete = true; ynWebRight.rightVerify = true; } else { YnWebModuleUserLink ynWebModuleUserLink = YnWebModuleUserLinkService.GetInstance().Get(ynUser.userId, moduleId); if (ynWebModuleUserLink != null) { isSaveToCache = true; ynWebRight.rightManage = ynWebModuleUserLink.rightManage; ynWebRight.rightAdd = ynWebRight.rightManage || ynWebModuleUserLink.rightAdd; ynWebRight.rightEdit = ynWebRight.rightManage || ynWebModuleUserLink.rightEdit; ynWebRight.rightDelete = ynWebRight.rightManage || ynWebModuleUserLink.rightDelete; ynWebRight.rightVerify = ynWebModuleUserLink.rightVerify;// ynWebRight.rightManage || } string roleIds = GetRoleIds(ynUser.userId); if (!string.IsNullOrEmpty(roleIds)) { List <YnWebModuleRoleLink> listYnWebModuleRoleLink = YnWebModuleRoleLinkService.GetInstance().GetList(roleIds, moduleId); if (listYnWebModuleRoleLink != null && listYnWebModuleRoleLink.Count > 0) { isSaveToCache = true; foreach (YnWebModuleRoleLink ynWebModuleRoleLink in listYnWebModuleRoleLink) { ynWebRight.rightManage = ynWebModuleRoleLink.rightManage || ynWebRight.rightManage; ynWebRight.rightAdd = (ynWebRight.rightManage || ynWebModuleRoleLink.rightAdd) || ynWebRight.rightAdd; ynWebRight.rightEdit = (ynWebRight.rightManage || ynWebModuleRoleLink.rightEdit) || ynWebRight.rightEdit; ynWebRight.rightDelete = (ynWebRight.rightManage || ynWebModuleRoleLink.rightDelete) || ynWebRight.rightDelete; ynWebRight.rightVerify = (ynWebModuleRoleLink.rightVerify) || ynWebRight.rightVerify;//ynWebRight.rightManage || } } } } if (isSaveToCache) { //SaveToCache(ynUser.userId, ynWebRight, null, System.Web.Caching.Cache.NoAbsoluteExpiration, System.Web.Caching.Cache.NoSlidingExpiration); SaveToCache(ynUser.userId + "_" + moduleId.ToString(), ynWebRight); } } catch (Exception ex) { throw ex; } } }
public List <YnWebAccMenuTree> GetYnWebAccMenuTreeList(YnUser ynUser) { try { List <YnWebAccMenuTree> listYnWebAccMenuTree = null; if (YnUserService.GetInstance().IsSuperAdministrator(ynUser.userId) || YnUserService.GetInstance().IsAdministrator(ynUser.userId)) { listYnWebAccMenuTree = YnWebAccMenuTreeService.GetInstance().GetList(string.Empty, string.Empty, string.Empty); } else { listYnWebAccMenuTree = YnWebAccMenuTreeService.GetInstance().GetListByUser(ynUser); } return(listYnWebAccMenuTree); /*if(listYnWebAccMenuTree!=null){ * //根据tree获取accmenu * List<YnWebAccMenu> listYnWebAccMenu = new List<YnWebAccMenu>(); * foreach(YnWebAccMenuTree ynWebAccMenuTree in listYnWebAccMenuTree){ * if(ynWebAccMenuTree.getYnWebAccMenu()!=null){ * YnWebAccMenu ynWebAccMenu=null; * for(YnWebAccMenu _ynWebAccMenu :listYnWebAccMenu){ * if(ynWebAccMenuTree.getYnWebAccMenu().getId().equals(_ynWebAccMenu.getId())){ * ynWebAccMenu=_ynWebAccMenu; * break; * } * } * if(ynWebAccMenu==null){ * listYnWebAccMenu.add(ynWebAccMenuTree.getYnWebAccMenu()); * } * } * } * GenerationMenu( listYnWebAccMenu, listYnWebAccMenuTree);*/ /*//根据accmenu生成菜单 * for(YnWebAccMenu _ynWebAccMenu :listYnWebAccMenu){ * if(ynWebAccMenuTree.getYnWebAccMenu().getId()==_ynWebAccMenu.getId()){ * ynWebAccMenu=_ynWebAccMenu; * break; * } * }*/ //} } catch (Exception ex) { throw ex; } return(null); }
public void AccMenu() { List <YnWebAccMenu> listYnWebAccMenu = null; try { YnUser ynUser = FormsAuthenticationService.GetInstance().GetTicketUserData(); //ynUser = YnFrame.Services.YnUserService.GetInstance().Get(ynUser.userId); if (ynUser != null) { listYnWebAccMenu = YnPermission.GetInstance().GetYnWebAccMenuList(ynUser); } } catch (Exception ex) { //throw ex; } }
public bool UpdateUser(string ticket, string _ynUser, ref string message) { try { message = ""; if (!IsTicketValid(ticket)) { throw new Exception("票证验证失败!"); } YnUser ynUser = (YnUser)YnBaseClass2.Helper.ObjectHelper.Deserialize(typeof(YnUser), _ynUser); //ynUser.lastLoginDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); YnUserService.GetInstance().Update(ynUser); return(true); } catch (Exception ex) { message = ex.Message; } return(false); }
public List <YnWebAccMenu> GetYnWebAccMenuList(YnUser ynUser) { List <YnWebAccMenu> listYnWebAccMenu = null; if (ynUser != null) { List <YnWebAccMenuTree> listYnWebAccMenuTree = GetYnWebAccMenuTreeList(ynUser); if (listYnWebAccMenuTree != null && listYnWebAccMenuTree.Count > 0) { listYnWebAccMenu = new List <YnWebAccMenu>(); IEnumerable <IGrouping <YnWebAccMenu, YnWebAccMenuTree> > result = listYnWebAccMenuTree.GroupBy(P => P.ynWebAccMenu); foreach (IGrouping <YnWebAccMenu, YnWebAccMenuTree> ig in result) { YnWebAccMenu ynWebAccMenu = ig.Key; StringBuilder sb = new StringBuilder(); int count = ig.Count(); if (count > 0) { int parentId = ig.Min(P => P.parentId); List <YnWebAccMenuTree> listAccMenuTree = ig.ToList(); sb.Append("<ul id=\"" + parentId + "\" class=\"easyui-tree\" animate=\"true\">");// dnd=\"true\" List <YnWebAccMenuTree> parentList = listAccMenuTree.Where(P => P.parentId == parentId).ToList(); foreach (YnWebAccMenuTree ynWebAccMenuTree in parentList) { string url = string.Empty; if (ynWebAccMenuTree.ynWebModule != null && ynWebAccMenuTree.ynWebModule.url != null && !string.IsNullOrEmpty(ynWebAccMenuTree.ynWebModule.url.Trim())) { url = ynWebAccMenuTree.ynWebModule.url.Trim(); url += "?mi=" + ynWebAccMenuTree.ynWebModule.id; if (!string.IsNullOrEmpty(ynWebAccMenuTree.ynWebModule.parameter)) { url += "¶meter=" + System.Web.HttpContext.Current.Server.UrlEncode(ynWebAccMenuTree.ynWebModule.parameter); } } string onclick = ""; if (!string.IsNullOrEmpty(url)) { onclick = "onclick=\"openTab('" + ynWebAccMenuTree.name + "','" + url.Trim() + "')\""; } sb.Append("<li iconCls=\"" + ynWebAccMenuTree.iconCls + "\">"); sb.Append("<span><a href=\"javascript:void(0);\" " + onclick + ">" + ynWebAccMenuTree.name + "</a></span>"); List <YnWebAccMenuTree> childList = listAccMenuTree.Where(P => P.parentId == ynWebAccMenuTree.id).ToList(); if (childList.Count > 0) { GetAccMenuTree(ynWebAccMenuTree.id, listAccMenuTree, sb); } sb.Append("</li>"); } sb.Append("</ul>"); } ynWebAccMenu.accMenuTree = sb.ToString(); listYnWebAccMenu.Add(ynWebAccMenu); } } } if (listYnWebAccMenu != null) { //排序 YnBaseClass2.YnUc.SortableBindingList <YnWebAccMenu> sortableBindingLis1 = new YnBaseClass2.YnUc.SortableBindingList <YnWebAccMenu>(listYnWebAccMenu); sortableBindingLis1.SortDirection = System.ComponentModel.ListSortDirection.Ascending; sortableBindingLis1.DefaultSortItem = "sortNo"; //return listYnWebAccMenu; return(sortableBindingLis1.ToList()); } return(null); }
public void SaveToCache(YnUser ynUser, int moduleId) { if (ynUser != null) { try { bool isSaveToCache = false; YnWebRight ynWebRight = new YnWebRight(); ynWebRight.moduleId = moduleId; if (YnUserService.GetInstance().IsSuperAdministrator(ynUser.userId) || YnUserService.GetInstance().IsAdministrator(ynUser.userId)) { isSaveToCache = true; ynWebRight.rightManage = true; ynWebRight.rightAdd = true; ynWebRight.rightEdit = true; ynWebRight.rightDelete = true; ynWebRight.rightVerify = true; } else { YnWebModuleUserLink ynWebModuleUserLink = YnWebModuleUserLinkService.GetInstance().Get(ynUser.userId, moduleId); if (ynWebModuleUserLink != null) { isSaveToCache = true; ynWebRight.rightManage = ynWebModuleUserLink.rightManage; ynWebRight.rightAdd = ynWebRight.rightManage || ynWebModuleUserLink.rightAdd; ynWebRight.rightEdit = ynWebRight.rightManage || ynWebModuleUserLink.rightEdit; ynWebRight.rightDelete = ynWebRight.rightManage || ynWebModuleUserLink.rightDelete; ynWebRight.rightVerify = ynWebModuleUserLink.rightVerify;// ynWebRight.rightManage || } string roleIds = GetRoleIds(ynUser.userId); if (!string.IsNullOrEmpty(roleIds)) { List<YnWebModuleRoleLink> listYnWebModuleRoleLink = YnWebModuleRoleLinkService.GetInstance().GetList(roleIds, moduleId); if (listYnWebModuleRoleLink != null && listYnWebModuleRoleLink.Count > 0) { isSaveToCache = true; foreach (YnWebModuleRoleLink ynWebModuleRoleLink in listYnWebModuleRoleLink) { ynWebRight.rightManage = ynWebModuleRoleLink.rightManage || ynWebRight.rightManage; ynWebRight.rightAdd = (ynWebRight.rightManage || ynWebModuleRoleLink.rightAdd) || ynWebRight.rightAdd; ynWebRight.rightEdit = (ynWebRight.rightManage || ynWebModuleRoleLink.rightEdit) || ynWebRight.rightEdit; ynWebRight.rightDelete = (ynWebRight.rightManage || ynWebModuleRoleLink.rightDelete) || ynWebRight.rightDelete; ynWebRight.rightVerify = (ynWebModuleRoleLink.rightVerify) || ynWebRight.rightVerify;//ynWebRight.rightManage || } } } } if (isSaveToCache) //SaveToCache(ynUser.userId, ynWebRight, null, System.Web.Caching.Cache.NoAbsoluteExpiration, System.Web.Caching.Cache.NoSlidingExpiration); SaveToCache(ynUser.userId + "_" + moduleId.ToString(), ynWebRight); } catch (Exception ex) { throw ex; } } }
public List<YnWebAccMenuTree> GetYnWebAccMenuTreeList(YnUser ynUser) { try { List<YnWebAccMenuTree> listYnWebAccMenuTree = null; if (YnUserService.GetInstance().IsSuperAdministrator(ynUser.userId) || YnUserService.GetInstance().IsAdministrator(ynUser.userId)) { listYnWebAccMenuTree = YnWebAccMenuTreeService.GetInstance().GetList(string.Empty, string.Empty, string.Empty); } else { listYnWebAccMenuTree = YnWebAccMenuTreeService.GetInstance().GetListByUser(ynUser); } return listYnWebAccMenuTree; /*if(listYnWebAccMenuTree!=null){ //根据tree获取accmenu List<YnWebAccMenu> listYnWebAccMenu = new List<YnWebAccMenu>(); foreach(YnWebAccMenuTree ynWebAccMenuTree in listYnWebAccMenuTree){ if(ynWebAccMenuTree.getYnWebAccMenu()!=null){ YnWebAccMenu ynWebAccMenu=null; for(YnWebAccMenu _ynWebAccMenu :listYnWebAccMenu){ if(ynWebAccMenuTree.getYnWebAccMenu().getId().equals(_ynWebAccMenu.getId())){ ynWebAccMenu=_ynWebAccMenu; break; } } if(ynWebAccMenu==null){ listYnWebAccMenu.add(ynWebAccMenuTree.getYnWebAccMenu()); } } } GenerationMenu( listYnWebAccMenu, listYnWebAccMenuTree);*/ /*//根据accmenu生成菜单 for(YnWebAccMenu _ynWebAccMenu :listYnWebAccMenu){ if(ynWebAccMenuTree.getYnWebAccMenu().getId()==_ynWebAccMenu.getId()){ ynWebAccMenu=_ynWebAccMenu; break; } }*/ //} } catch (Exception ex) { throw ex; } return null; }
public List<YnWebAccMenu> GetYnWebAccMenuList(YnUser ynUser) { List<YnWebAccMenu> listYnWebAccMenu = null; if (ynUser != null) { List<YnWebAccMenuTree> listYnWebAccMenuTree = GetYnWebAccMenuTreeList(ynUser); if (listYnWebAccMenuTree != null && listYnWebAccMenuTree.Count > 0) { listYnWebAccMenu = new List<YnWebAccMenu>(); IEnumerable<IGrouping<YnWebAccMenu, YnWebAccMenuTree>> result = listYnWebAccMenuTree.GroupBy(P => P.ynWebAccMenu); foreach (IGrouping<YnWebAccMenu, YnWebAccMenuTree> ig in result) { YnWebAccMenu ynWebAccMenu = ig.Key; StringBuilder sb = new StringBuilder(); int count = ig.Count(); if (count > 0) { int parentId = ig.Min(P => P.parentId); List<YnWebAccMenuTree> listAccMenuTree = ig.ToList(); sb.Append("<ul id=\"" + parentId + "\" class=\"easyui-tree\" animate=\"true\">");// dnd=\"true\" List<YnWebAccMenuTree> parentList = listAccMenuTree.Where(P => P.parentId == parentId).ToList(); foreach (YnWebAccMenuTree ynWebAccMenuTree in parentList) { string url = string.Empty; if (ynWebAccMenuTree.ynWebModule != null && ynWebAccMenuTree.ynWebModule.url != null && !string.IsNullOrEmpty(ynWebAccMenuTree.ynWebModule.url.Trim())) { url = ynWebAccMenuTree.ynWebModule.url.Trim(); url += "?mi=" + ynWebAccMenuTree.ynWebModule.id; if (!string.IsNullOrEmpty(ynWebAccMenuTree.ynWebModule.parameter)) { url += "¶meter=" + System.Web.HttpContext.Current.Server.UrlEncode(ynWebAccMenuTree.ynWebModule.parameter); } } string onclick = ""; if (!string.IsNullOrEmpty(url)) onclick = "onclick=\"openTab('" + ynWebAccMenuTree.name + "','" + url.Trim() + "')\""; sb.Append("<li iconCls=\"" + ynWebAccMenuTree.iconCls + "\">"); sb.Append("<span><a href=\"javascript:void(0);\" " + onclick + ">" + ynWebAccMenuTree.name + "</a></span>"); List<YnWebAccMenuTree> childList = listAccMenuTree.Where(P => P.parentId == ynWebAccMenuTree.id).ToList(); if (childList.Count > 0) { GetAccMenuTree(ynWebAccMenuTree.id, listAccMenuTree, sb); } sb.Append("</li>"); } sb.Append("</ul>"); } ynWebAccMenu.accMenuTree = sb.ToString(); listYnWebAccMenu.Add(ynWebAccMenu); } } } if (listYnWebAccMenu != null) { //排序 YnBaseClass2.YnUc.SortableBindingList<YnWebAccMenu> sortableBindingLis1 = new YnBaseClass2.YnUc.SortableBindingList<YnWebAccMenu>(listYnWebAccMenu); sortableBindingLis1.SortDirection = System.ComponentModel.ListSortDirection.Ascending; sortableBindingLis1.DefaultSortItem = "sortNo"; //return listYnWebAccMenu; return sortableBindingLis1.ToList(); } return null; }
/*[AcceptVerbs(HttpVerbs.Post)]*/ public ActionResult LogOn(LogOnModel model, string returnUrl) { if (ModelState.IsValid) { try { YnUser ynUser = AscmUserInfoService.GetInstance().TryGet(model.UserName); /* * YnUser ynUser = YnUserService.GetInstance().Get(model.UserName); * if (ynUser == null) * { * //throw new Exception("用户不存在"); * //判断是否erp用户 * ynUser = YnUserService.GetInstance().Get("erp_"+model.UserName); * if (ynUser == null) * { * //判断是否mes用户 * } * } */ if (ynUser == null) { throw new Exception("用户不存在"); } if (!string.IsNullOrEmpty(ynUser.extExpandType)) { if (ynUser.extExpandType.Trim() == "erp") { //供应商登录显示供应商名称 AscmUserInfo ascmUserInfo = (AscmUserInfo)ynUser; AscmUserInfoService.GetInstance().SetSupplier(ascmUserInfo); if (ascmUserInfo.ascmSupplier != null) { ascmUserInfo.userName1 = ascmUserInfo.ascmSupplier.name; } if (!MembershipService.ValidateUser(ynUser.userId, model.Password)) { if (Request.IsAjaxRequest()) { return(Content("用户密码错误!")); } //ModelState.AddModelError("", "提供的用户名或密码不正确。"); throw new Exception("提供的用户名或密码不正确。"); } } else if (ynUser.extExpandType.Trim() == "mes") { cn.com.midea.mespda.TransferService service = new cn.com.midea.mespda.TransferService(); cn.com.midea.mespda.OutputWebMessage message = service.UserLogin(model.UserName, model.Password); if (!message.IsSuccess) { throw new Exception(message.ErrorMessage); } } } else { if (!MembershipService.ValidateUser(ynUser.userId, model.Password)) { if (Request.IsAjaxRequest()) { return(Content("用户密码错误!")); } //ModelState.AddModelError("", "提供的用户名或密码不正确。"); throw new Exception("提供的用户名或密码不正确。"); } } //HttpCookie cookie = Request.Cookies.Get("userName"); //Response.Cookies["userName"].Value = model.UserName; string _userName = HttpUtility.UrlEncode(model.UserName); Response.Cookies["userName"].Value = _userName; Response.Cookies["userName"].Expires = DateTime.MaxValue; int days = 0; int iExpires = 0; if (days > 0) { iExpires = 60 * 60 * 24 * days;//保存天数 } //YnUser ynUser = YnUserService.GetInstance().Get(model.UserName); FormsAuthenticationService.GetInstance().SignIn(ynUser.userId, 0, ynUser, true); PageInit(null); //this.ynSite.systemUser = true;//是系统用户 //this.ynSite.siteAdmin = YnUserService.GetInstance().IsSuperAdministrator(ynUser.userId) || YnUserService.GetInstance().IsAdministrator(ynUser.userId); //this.ynSite.userName = ynUser.userName;//是系统用户 if (Request.IsAjaxRequest()) { return(JavaScript("document.location.href='';")); } if (!String.IsNullOrEmpty(returnUrl)) { return(Redirect(returnUrl)); } else { //return RedirectToAction("Index", "Home"); return(RedirectToAction("YnFrame", "YnPublic")); } } catch (Exception ex) { //throw ex; ModelState.AddModelError("", ex.Message); } } // 如果我们进行到这一步时某个地方出错,则重新显示表单 return(View(model)); }