Esempio n. 1
0
        public OperatePageResult GetSubOrgs(QueryOrgReq req)
        {
            var query = from p in _context.Orgs.AsNoTracking().Where(w => w.FullPath.StartsWith(req.fullpath) && w.Status == (int)EDataStatus.valid && w.IsDelete == false)
                        join o in _context.Orgs.AsNoTracking().Where(w => w.Status == (int)EDataStatus.valid && w.IsDelete == false)
                        on p.Pid equals o.Id into temp
                        from tp in temp.DefaultIfEmpty()
                        select new OrgView()
            {
                Id           = p.Id,
                Sort         = p.Sort,
                FullPath     = p.FullPath,
                FullPathText = p.FullPathText,
                Name         = p.Name,
                ParentName   = tp.Name,
                Pid          = p.Pid
            };

            if (req.orgId > 0)
            {
                query = query.Where(w => w.Id == req.orgId || w.Pid == req.orgId);
            }
            OperatePageResult result = new OperatePageResult
            {
                count = query.Count(),
                data  = query.OrderBy(o => o.Id).Skip((req.page - 1) * req.limit).Take(req.limit).ToList()
            };

            return(result);
        }
Esempio n. 2
0
 public string GetSubOrgs(QueryOrgReq req)
 {
     req.fullpath = CurrentUser.OrgFullPath;
     return(JsonHelper.Instance.Serialize(_orgService.GetSubOrgs(req)));
 }