예제 #1
0
        //无限接循环子节点添加到根节点下面
        private void ForeachPropertyNode(PP_DepartmentInfo node, string pid, DeptInfoList nodes)
        {
            foreach (DeptInfo tempNode in nodes)
            {
                if (tempNode.ParentDeptID == pid)
                {
                    PP_DepartmentInfo pp_department = CreateDepartmentInfoSource(tempNode);

                    ForeachPropertyNode(pp_department, pp_department.GUID, nodes);

                    node.Children.Add(pp_department);
                }
            }
        }
예제 #2
0
        private void OrganizationClientOnGetDeptInfos(DeptInfoList pDeptInfos)
        {
            try
            {
                var deptinfos = pDeptInfos;
                if (deptinfos == null)
                {
                    throw new Exception("组织结构初始化失败。");
                }
                if (deptinfos.Count == 0)
                {
                    return;
                }
                DeptInfo foundRoot = (from i in deptinfos where i.DistrictCode == _areaCode && i.IsOrganization select i).FirstOrDefault();
                if (foundRoot == null)
                {
                    return;
                }

                PP_DepartmentInfoList.Clear();
                PP_DepartmentInfo rootdepartment = CreateDepartmentInfoSource(foundRoot);

                ForeachPropertyNode(rootdepartment, rootdepartment.GUID, pDeptInfos);
                PP_DepartmentInfoList.Add(rootdepartment);

                this.tv_PersonPlan.ItemsSource = null;
                this.tv_PersonPlan.ItemsSource = PP_DepartmentInfoList;
            }
            catch
            {
                ////LogHelper.WriteLog("初始化组织结构", Utile.GetExceptionContext(ex));
                //OnInitializeCompleted(false);
            }
            finally
            {
                //if (!completed)
                //    OnInitializeCompleted(false);
            }
        }