public IList <DataModel> GetGroupJSTreeDataWithChildByGroupID(int GroupID) { List <int> GroupIDList = new List <int>(); GroupIDList.Add(GroupID); PublicMethods.GetChildGroupIDs(GroupID, ref GroupIDList, db); int[] groupIDs = GroupIDList.ToArray <int>(); List <DataModel> jdmList = new List <DataModel>(); DataModel jdm; StateForJsonModel sfjm = new StateForJsonModel(); sfjm.opened = true; List <GroupMaster> gmList = db.GroupMaster.Where(a => groupIDs.Contains(a.GroupID) && a.UseFlag == true).ToList(); foreach (GroupMaster gm in gmList) { jdm = new DataModel(); jdm.id = gm.GroupID.ToString(); jdm.text = gm.GroupName; jdm.parent = gm.GroupID == GroupID ? "#":gm.GroupParentID.ToString(); jdm.state = sfjm; jdm.li_attr = gm; jdmList.Add(jdm); } return(jdmList); }
public async Task <IList <DataModel> > GetFolderJSTreeNodeWithInheritForcedByGroupID(int GroupID) { List <int> GroupIDList = new List <int>(); GroupIDList.Add(GroupID); PublicMethods.GetParentGroupIDs(GroupID, ref GroupIDList, db); int[] groupIDs = GroupIDList.ToArray <int>(); var jsonList = (from fm in db.FolderMaster join gm in db.GroupMaster on fm.GroupID equals gm.GroupID into ProjectV from pv in ProjectV.DefaultIfEmpty() where groupIDs.Contains((int)fm.GroupID) && fm.UseFlag == true select new { fm, pv.GroupName, pv.GroupID }).ToList(); List <DataModel> jdmList = new List <DataModel>(); DataModel jdm; StateForJsonModel sfjm = new StateForJsonModel(); sfjm.opened = false; foreach (var item in jsonList) { jdm = new DataModel(); jdm.id = item.fm.FolderID.ToString(); jdm.text = item.fm.FolderName; jdm.parent = item.fm.FolderParentID == null ? "#" : item.fm.FolderParentID.ToString(); jdm.state = sfjm; jdm.li_attr = item; jdmList.Add(jdm); } return(jdmList); }