private JsonResult SelectList(string type, int id) { IList <PermissionItemType> objList = NSession.CreateQuery("from PermissionItemType").List <PermissionItemType>(); //获得这个类型的菜单权限 List <PermissionScopeType> scopeList = NSession.CreateQuery("from PermissionScopeType where ResourceCategory=:p1 and ResourceId=:p2 and TargetCategory =:p3").SetString("p1", type).SetInt32("p2", Convert.ToInt32(id)).SetString("p3", TargetCategoryEnum.PermissionItem.ToString()).List <PermissionScopeType>().ToList <PermissionScopeType>(); IList <PermissionItemType> fristList = objList.Where(p => p.ParentId == 0).OrderByDescending(p => p.SortCode).ToList(); List <SystemTree> tree = new List <SystemTree>();; SystemTree root = new SystemTree { id = "0", text = "所有权限" }; foreach (PermissionItemType item in fristList) { List <PermissionItemType> fooList = objList.Where(p => p.ParentId == item.Id).OrderByDescending(p => p.SortCode).ToList(); item.children = fooList; List <SystemTree> tree2 = ConvertToTree(fooList, scopeList); if (scopeList.FindIndex(p => p.TargetId == item.Id) >= 0) { root.children.Add(new SystemTree { id = item.Id.ToString(), text = item.FullName, children = tree2 }); } else { root.children.Add(new SystemTree { id = item.Id.ToString(), text = item.FullName, children = tree2 }); } GetChildren(objList, item, tree2); } tree.Add(root); return(Json(tree)); }
public JsonResult SelectList(int Id) { IList <AccountType> objList = NSession.CreateQuery("from AccountType").List <AccountType>(); //获得这个类型的菜单权限 List <PermissionScopeType> scopeList = NSession.CreateQuery("from PermissionScopeType where ResourceCategory=:p1 and ResourceId=:p2 and TargetCategory =:p3").SetString("p1", ResourceCategoryEnum.User.ToString()).SetInt32("p2", Id).SetString("p3", TargetCategoryEnum.Account.ToString()).List <PermissionScopeType>().ToList <PermissionScopeType>(); List <SystemTree> tree = new List <SystemTree>();; SystemTree root = new SystemTree { id = "0", text = "所有账户" }; foreach (string item in Enum.GetNames(typeof(PlatformEnum))) { List <AccountType> fooList = objList.Where(p => p.Platform == item).OrderByDescending(p => p.AccountName).ToList(); List <SystemTree> tree2 = ConvertToTree(fooList, scopeList); if (scopeList.FindIndex(p => p.TargetId == Convert.ToInt32((PlatformEnum)Enum.Parse(typeof(PlatformEnum), item))) >= 0) { root.children.Add(new SystemTree { id = Convert.ToInt32((PlatformEnum)Enum.Parse(typeof(PlatformEnum), item)).ToString(), text = item, children = tree2, @checked = true }); } else { root.children.Add(new SystemTree { id = Convert.ToInt32((PlatformEnum)Enum.Parse(typeof(PlatformEnum), item)).ToString(), text = item, children = tree2 }); } } tree.Add(root); return(Json(tree)); }
/// <summary> /// Creates a new branch in the system tree. /// </summary> /// <returns>The generated branch.</returns> public SystemTree Branch(Planet node = null) { SystemTree nextBranch = new SystemTree(); nextBranch.Node = node; _subSystems.Add(nextBranch); return(nextBranch); }
private void GetChildren(IList <ProductCategoryType> objList, ProductCategoryType item, List <SystemTree> trees) { foreach (ProductCategoryType k in item.children) { SystemTree tree = trees.Find(p => p.id == k.Id.ToString()); List <ProductCategoryType> kList = objList.Where(p => p.ParentId == k.Id).OrderByDescending(p => p.SortCode).ToList(); k.children = kList; List <SystemTree> mlist = ConvertToTree(kList); tree.children = mlist; GetChildren(objList, k, mlist); } }
/// <summary> /// Creates the root. /// </summary> private void CreateRoot() { GameObject systemRoot = new GameObject("Root"); _systemRoot = systemRoot.transform; _systemRoot.SetParent(transform); _systemRoot.localPosition = Vector3.zero; _systemRoot.localRotation = Quaternion.identity; _systemRoot.localScale = Vector3.one; _systemTree = new SystemTree(); }
/// <summary> /// Creates a planet asynchronously. /// </summary> /// <param name="node">The parent node.</param> /// <param name="parent">The parent transform.</param> /// <param name="radius">The radius of the planet.</param> /// <param name="moonsCount">The number of moons.</param> /// <param name="maxDistance">The maximum distance around the parent transform the planet can generate in.</param> /// <returns>An awaitable task</returns> private async Task CreatePlanetAsync(SystemTree node, Transform parent, System.Random seeder, float radius, int moonsCount, float maxDistance, bool hasAtmosphere, bool canHaveRings = true, float minDistance = 0) { GameObject nextPlanet = new GameObject("AutoPlanet"); nextPlanet.layer = LayerMask.NameToLayer("Backdrop"); Transform planetTransform = nextPlanet.transform; planetTransform.SetParent(parent); planetTransform.localPosition = Random.insideUnitSphere * maxDistance; if (planetTransform.localPosition.sqrMagnitude < minDistance * minDistance) { planetTransform.localPosition = planetTransform.localPosition.normalized * minDistance; } Planet planetComponent = nextPlanet.AddComponent <Planet>(); planetComponent.Radius = radius; planetComponent.Steps = _detail; planetComponent.GroundMaterial = _planetGroundMaterial; planetComponent.AtmosphereMaterial = _planetAtmosphereMaterial; planetComponent.SetSun(_sun); planetComponent.Rotation = new Vector3(Random.Range(0, 360), Random.Range(0, 360), Random.Range(0, 360)); planetComponent.Seed = seeder.Next(); planetComponent.HasAtmosphere = hasAtmosphere; planetComponent.HasRings = canHaveRings && seeder.NextDouble() > (1 - _ringChance); await planetComponent.Load(); SystemTree newRoot = node.Branch(planetComponent); while (moonsCount-- > 0) { float moonRadius = Random.Range(_minMoonSize, _maxMoonSize); float moonDistance = radius + moonRadius + _maxMoonDistance; await CreatePlanetAsync( newRoot, planetTransform, seeder, moonRadius, 0, moonDistance, false, false, moonDistance ); } }
public SystemTree GetList(Guid ParentID) { SystemTree model = new SystemTree(); model.IsLastTree = true; //默认其自身是最后一级 model.IsChildLastTree = true; //默认其自身为最后一级 则无子集 model.TreeList = _cSystemTreeAdapter.GetSystemTreeListByID(ParentID).ToList(); if (model.TreeList.Count > 0) { model.IsLastTree = false; // List <C_SystemTree> ChildTree = _cSystemTreeAdapter.GetSystemTreeListByID(model.TreeList[0].ID).ToList(); //取其子集的第一项,看其是否有子集 if (ChildTree.Count > 0) { model.IsChildLastTree = false; } } return(model); }
public void Bind(IEnumerable <SysDepartment> entitys, string myMyParentId, ref List <SystemTree> myChildren) { listTree = from o in entitys where o.MyParentId == myMyParentId select o;//叶子节点 foreach (var item in listTree) { SystemTree node = new SystemTree() { id = item.Id, text = item.Name }; if (entitys.Any(t => t.MyParentId == item.Id)) {//包含子节点可以展示 node.state = "closed"; } myChildren.Add(node); } }
public JsonResult ParentList() { IList <ProductCategoryType> objList = NSession.CreateQuery("from ProductCategoryType").List <ProductCategoryType>(); IList <ProductCategoryType> fristList = objList.Where(p => p.ParentId == 0).OrderByDescending(p => p.SortCode).ToList(); SystemTree tree = new SystemTree { id = "0", text = "根目录" }; List <SystemTree> trees = new List <SystemTree>(); foreach (ProductCategoryType item in fristList) { List <ProductCategoryType> fooList = objList.Where(p => p.ParentId == item.Id).OrderByDescending(p => p.SortCode).ToList(); item.children = fooList; List <SystemTree> tree2 = ConvertToTree(fooList); tree.children.Add(new SystemTree { id = item.Id.ToString(), text = item.Name, children = tree2 }); GetChildren(objList, item, tree2); } trees.Add(tree); return(Json(trees)); }
public JsonResult ParentList() { var root = new SystemTree { id = "0", text = "root" }; IList <OrganizeType> objList = NSession.CreateQuery("from OrganizeType").List <OrganizeType>(); IList <OrganizeType> fristList = objList.Where(p => p.ParentId == 0).OrderByDescending(p => p.SortCode).ToList(); List <SystemTree> tree = new List <SystemTree>(); tree.Add(root); foreach (OrganizeType item in fristList) { List <OrganizeType> fooList = objList.Where(p => p.ParentId == item.Id).OrderByDescending(p => p.SortCode).ToList(); item.children = fooList; List <SystemTree> tree2 = ConvertToTree(fooList); GetChildren(objList, item, tree2); root.children.Add(new SystemTree { id = item.Id.ToString(), text = item.ShortName, children = tree2 }); } return(Json(tree)); }
public JsonResult ParentList() { var root = new SystemTree { id = "0", text = "root" }; IList<OrganizeType> objList = NSession.CreateQuery("from OrganizeType").List<OrganizeType>(); IList<OrganizeType> fristList = objList.Where(p => p.ParentId == 0).OrderByDescending(p => p.SortCode).ToList(); List<SystemTree> tree = new List<SystemTree>(); tree.Add(root); foreach (OrganizeType item in fristList) { List<OrganizeType> fooList = objList.Where(p => p.ParentId == item.Id).OrderByDescending(p => p.SortCode).ToList(); item.children = fooList; List<SystemTree> tree2 = ConvertToTree(fooList); GetChildren(objList, item, tree2); root.children.Add(new SystemTree { id = item.Id.ToString(), text = item.ShortName, children = tree2 }); } return Json(tree); }
private JsonResult SelectList(string type, int id) { IList<PermissionItemType> objList = NSession.CreateQuery("from PermissionItemType").List<PermissionItemType>(); //获得这个类型的菜单权限 List<PermissionScopeType> scopeList = NSession.CreateQuery("from PermissionScopeType where ResourceCategory=:p1 and ResourceId=:p2 and TargetCategory =:p3").SetString("p1", type).SetInt32("p2", Convert.ToInt32(id)).SetString("p3", TargetCategoryEnum.PermissionItem.ToString()).List<PermissionScopeType>().ToList<PermissionScopeType>(); IList<PermissionItemType> fristList = objList.Where(p => p.ParentId == 0).OrderByDescending(p => p.SortCode).ToList(); List<SystemTree> tree = new List<SystemTree>(); ; SystemTree root = new SystemTree { id = "0", text = "所有权限" }; foreach (PermissionItemType item in fristList) { List<PermissionItemType> fooList = objList.Where(p => p.ParentId == item.Id).OrderByDescending(p => p.SortCode).ToList(); item.children = fooList; List<SystemTree> tree2 = ConvertToTree(fooList, scopeList); if (scopeList.FindIndex(p => p.TargetId == item.Id) >= 0) { root.children.Add(new SystemTree { id = item.Id.ToString(),text = item.FullName, children = tree2}); } else { root.children.Add(new SystemTree { id = item.Id.ToString(), text = item.FullName, children = tree2 }); } GetChildren(objList, item, tree2); } tree.Add(root); return Json(tree); }
public JsonResult SelectList(int Id) { IList<AccountType> objList = NSession.CreateQuery("from AccountType").List<AccountType>(); //获得这个类型的菜单权限 List<PermissionScopeType> scopeList = NSession.CreateQuery("from PermissionScopeType where ResourceCategory=:p1 and ResourceId=:p2 and TargetCategory =:p3").SetString("p1", ResourceCategoryEnum.User.ToString()).SetInt32("p2", Id).SetString("p3", TargetCategoryEnum.Account.ToString()).List<PermissionScopeType>().ToList<PermissionScopeType>(); List<SystemTree> tree = new List<SystemTree>(); ; SystemTree root = new SystemTree { id = "0", text = "所有账户" }; foreach (string item in Enum.GetNames(typeof(PlatformEnum))) { List<AccountType> fooList = objList.Where(p => p.Platform == item).OrderByDescending(p => p.AccountName).ToList(); List<SystemTree> tree2 = ConvertToTree(fooList, scopeList); if (scopeList.FindIndex(p => p.TargetId == Convert.ToInt32((PlatformEnum)Enum.Parse(typeof(PlatformEnum), item))) >= 0) { root.children.Add(new SystemTree { id = Convert.ToInt32((PlatformEnum)Enum.Parse(typeof(PlatformEnum), item)).ToString(), text = item, children = tree2, @checked = true }); } else { root.children.Add(new SystemTree { id = Convert.ToInt32((PlatformEnum)Enum.Parse(typeof(PlatformEnum), item)).ToString(), text = item, children = tree2 }); } } tree.Add(root); return Json(tree); }
public JsonResult ParentList() { IList<ProductCategoryType> objList = NSession.CreateQuery("from ProductCategoryType").List<ProductCategoryType>(); IList<ProductCategoryType> fristList = objList.Where(p => p.ParentId == 0).OrderByDescending(p => p.SortCode).ToList(); SystemTree tree = new SystemTree { id = "0", text = "根目录" }; List<SystemTree> trees = new List<SystemTree>(); foreach (ProductCategoryType item in fristList) { List<ProductCategoryType> fooList = objList.Where(p => p.ParentId == item.Id).OrderByDescending(p => p.SortCode).ToList(); item.children = fooList; List<SystemTree> tree2 = ConvertToTree(fooList); tree.children.Add(new SystemTree { id = item.Id.ToString(), text = item.Name, children = tree2 }); GetChildren(objList, item, tree2); } trees.Add(tree); return Json(trees); }