Ejemplo n.º 1
0
        /// <summary>
        /// 得到一条部门信息
        /// </summary>
        /// <returns></returns>
        public DepartmentResultDTO GetDepartment(int id)
        {
            DepartmentResultDTO result = new DepartmentResultDTO();
            var tcdmse = SingleQueryObject.GetObj();

            var pp = tcdmse.master_DepartmentInfo.AsNoTracking().Where(p => p.DepartID == id).FirstOrDefault();

            if (pp == null)
            {
                throw new Exception("此条信息不存在!");
            }
            result = AutoMapper.Mapper.Map <master_DepartmentInfo, DepartmentResultDTO>(pp);

            return(result);
        }
Ejemplo n.º 2
0
        private DepartmentResultDTO GetDepartTree(DepartmentResultDTO root)
        {
            var tcdmse = SingleQueryObject.GetObj();

            var roots      = tcdmse.master_DepartmentInfo.AsNoTracking().Where(p => p.DepartParentID == root.DepartID).ToList();
            var departlist = Mapper.Map <List <master_DepartmentInfo>, List <DepartmentResultDTO> >(roots);

            for (int i = 0; i < departlist.Count; i++)
            {
                departlist[i].ParentPathName = root.PathName;
                departlist[i] = GetDepartTree(departlist[i]);
            }
            if (departlist.Count > 0)
            {
                root.children = departlist;
            }

            return(root);
        }
Ejemplo n.º 3
0
        private static DepartmentTreeDTO GenerateDepartmentTree(DepartmentResultDTO root)
        {
            DepartmentTreeDTO result = new DepartmentTreeDTO();

            result.children = new List <DepartmentTreeDTO>();
            result.id       = root.DepartID;
            result.path     = root.DepartPath;
            result.text     = root.DepartName;
            if (root.children != null)
            {
                foreach (var child in root.children)
                {
                    var item = GenerateDepartmentTree(child);
                    result.children.Add(item);
                }
            }

            return(result);
        }
Ejemplo n.º 4
0
        public static void FictitiousDepaArea(List <DepaAreaTreeModel> result, ref int i, DepartmentResultDTO resultdepa, List <DepartmentResultDTO> resultdepas, List <AreaResultDTO> resultarea)
        {
            i--;
            DepaAreaTreeModel depareas = new DepaAreaTreeModel();

            depareas.id       = i;
            depareas.text     = resultdepa.DepartName;
            depareas.children = new List <DepaAreaTreeModel>();
            var ss = resultarea.Where(p => p.DepartID == resultdepa.DepartID).Select(s => new DepaAreaTreeModel
            {
                id   = s.AreaID,
                text = s.AreaName
            }).ToList();

            depareas.children.AddRange(ss);
            result.Add(depareas);

            var ww = resultdepas.Where(q => q.DepartParentID == resultdepa.DepartID).ToList();

            foreach (var w in ww)
            {
                FictitiousDepaArea(depareas.children, ref i, w, resultdepas, resultarea);
            }
        }