/// <summary> /// 查询所有单位信息,AreaTreeModel, /// 如果为空或者. 则查询一级单位 /// 创建人:Joychen /// 创建时间:2018-04-23 /// </summary> /// <returns></returns> public List <AreaTreeModel> GetAreaData(int user_id) { List <AreaTreeModel> listModel = new List <AreaTreeModel>(); //1:获取当前用户对应的所有单位数据 var orgUser = DBSession.IT_Org_UserDAL.Select(s => s.user_id == user_id); int tempID = (orgUser == null || orgUser.Count <= 0) ? 0 : user_id; List <T_OrgFolder> list = DBSession.IT_OrgFolderDAL.GetOrgFolderInfo(tempID); if (list.Count <= 0) { return(null); } listModel = GetListData(list); if (tempID == 0) { AreaTreeModel model = new AreaTreeModel() { text = "系统用户", folder_id = 0, keyChild = 0, nodes = null }; listModel.Insert(0, model); } return(listModel); }
/// <summary> /// 递归查询单位信息 /// 创建人:Joychen /// 创建时间:2018-04-23 /// </summary> /// <param name="list"></param> /// <param name="unitID"></param> /// <returns></returns> private List <AreaTreeModel> GetAreaModelById(List <T_OrgFolder> list, int folder_id) { List <AreaTreeModel> listModel = null; List <T_OrgFolder> listKey = list.FindAll(s => s.folder_pid == folder_id); if (listKey.Count > 0) { listModel = new List <AreaTreeModel>(); AreaTreeModel temp = null; for (int i = 0; i < listKey.Count; i++) { temp = new AreaTreeModel(); temp.text = listKey[i].folder_name; temp.folder_id = listKey[i].folder_id; temp.keyChild = listKey[i].have_child?1:0; if (temp.keyChild > 0) { temp.nodes = GetAreaModelById(list, listKey[i].folder_id); } listModel.Add(temp); } } return(listModel); }