xf 3 сар өмнө
parent
commit
d5c40a54f3

+ 7 - 3
src/Hotline.Application/Knowledge/KnowApplication.cs

@@ -108,7 +108,7 @@ namespace Hotline.Application.Knowledge
                     switch (pagedDto.ModuleCode)
                     switch (pagedDto.ModuleCode)
                     {
                     {
                         case "add":
                         case "add":
-                            query.Where(d => d.KnowledgeApproves.Any(x => x.KnowledgeApproveType == EKnowledgeApproveType.Add 
+                            query.Where(d => d.KnowledgeApproves.Any(x => x.KnowledgeApproveType == EKnowledgeApproveType.Add
                                                                           && x.KnowledgeApproveStatus == EKnowledgeApproveStatus.Unhandle));
                                                                           && x.KnowledgeApproveStatus == EKnowledgeApproveStatus.Unhandle));
                             break;
                             break;
                         case "update":
                         case "update":
@@ -148,6 +148,10 @@ namespace Hotline.Application.Knowledge
                     throw new ArgumentOutOfRangeException();
                     throw new ArgumentOutOfRangeException();
             }
             }
 
 
+            if (!_sessionContext.OrgIsCenter)
+                query.Where(x => x.KnowledgeTypes.Any(t => t.Orgs.Any(to => to.Id == _sessionContext.RequiredOrgId)));
+
+
             var (total, temp) = await query
             var (total, temp) = await query
                 //.Includes(x => x.User)
                 //.Includes(x => x.User)
                 .Includes(x => x.SystemOrganize)
                 .Includes(x => x.SystemOrganize)
@@ -163,8 +167,8 @@ namespace Hotline.Application.Knowledge
                 //                                     || t.KnowledgeType.Orgs.Any() == false))
                 //                                     || t.KnowledgeType.Orgs.Any() == false))
                 //.Where(x => x.KnowledgeTypes.Any(t => t.KnowledgeTypeOrgs.Any(to => to.OrgId == _sessionContext.RequiredOrgId)
                 //.Where(x => x.KnowledgeTypes.Any(t => t.KnowledgeTypeOrgs.Any(to => to.OrgId == _sessionContext.RequiredOrgId)
                 //                                      || t.KnowledgeTypeOrgs.Any() == false))
                 //                                      || t.KnowledgeTypeOrgs.Any() == false))
-                .Where(x => x.KnowledgeTypes.Any(t => t.Orgs.Any(to => to.Id == _sessionContext.RequiredOrgId)
-                                                      || t.Orgs.Any() == false))
+                //.Where(x => x.KnowledgeTypes.Any(t => t.Orgs.Any(to => to.Id == _sessionContext.RequiredOrgId)
+                //                                      /*|| t.Orgs.Any() == false*/))
                 //.Where(x => (x.Status == EKnowledgeStatus.Drafts && x.CreatorId == _sessionContext.UserId) || (x.Status != EKnowledgeStatus.Drafts))
                 //.Where(x => (x.Status == EKnowledgeStatus.Drafts && x.CreatorId == _sessionContext.UserId) || (x.Status != EKnowledgeStatus.Drafts))
                 .WhereIF(!string.IsNullOrEmpty(pagedDto.Title), x => x.Title.Contains(pagedDto.Title!))
                 .WhereIF(!string.IsNullOrEmpty(pagedDto.Title), x => x.Title.Contains(pagedDto.Title!))
                 .WhereIF(!string.IsNullOrEmpty(pagedDto.Keyword), x => x.Title.Contains(pagedDto.Keyword!) || x.CreatorName.Contains(pagedDto.Keyword!) || x.CreatorOrgName.Contains(pagedDto.Keyword!) || x.SourceOrganize.Name.Contains(pagedDto.Keyword!))
                 .WhereIF(!string.IsNullOrEmpty(pagedDto.Keyword), x => x.Title.Contains(pagedDto.Keyword!) || x.CreatorName.Contains(pagedDto.Keyword!) || x.CreatorOrgName.Contains(pagedDto.Keyword!) || x.SourceOrganize.Name.Contains(pagedDto.Keyword!))