Quellcode durchsuchen

fix(配额机构树查询修改): 配额机构树查询修改

配额机构树查询修改

(cherry picked from commit d5085fb43ccac6db0d200acb3cabf9990803b42e)
mazq vor 3 Jahren
Ursprung
Commit
cb0076c2d7

+ 19 - 4
src/main/java/com/dragoninfo/dcuc/authweb/restcontroller/auth/ApplicationController.java

@@ -6,7 +6,9 @@ import com.dragoninfo.dcuc.app.facade.IApplyInfoFacade;
 import com.dragoninfo.dcuc.auth.auth.enumresources.YesNotEnum;
 import com.dragoninfo.dcuc.auth.auth.vo.ApplicationInfoVO;
 import com.dragoninfo.dcuc.auth.power.facade.IApplicationInfoFacade;
+import com.dragoninfo.dcuc.auth.sub.dto.AuthOrgDTO;
 import com.dragoninfo.dcuc.auth.sub.dto.AuthUserDTO;
+import com.dragoninfo.dcuc.auth.sub.facade.IAuthOrgInfoFacade;
 import com.dragoninfo.dcuc.auth.sub.facade.IAuthUserInfoFacade;
 import com.dragoninfo.dcuc.authweb.restcontroller.auth.vo.ApplicationInfoVo;
 import com.dragoninfo.duceap.core.response.Result;
@@ -29,6 +31,8 @@ import org.springframework.web.bind.annotation.RestController;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 @Api(tags = {"授权模块-应用管理接口"})
 @RestController
@@ -43,7 +47,8 @@ public class ApplicationController {
     private IApplyInfoFacade applyInfoFacade;
     @Autowired
     private IAuthUserInfoFacade authUserInfoFacade;
-
+    @Autowired
+    private IAuthOrgInfoFacade authOrgInfoFacade;
 
     /**
      * 根据机构Id获取应用信息列表
@@ -75,11 +80,24 @@ public class ApplicationController {
     }
 
     private List<ApplicationInfoVO> objectConvert(Page<ApplyInfo> applyInfos) {
+        //TODO
+        //需要填充权限中心的机构id
+        //后续业务优化需要改掉
+        List<String> orgCodes = applyInfos.getContent()
+                .stream()
+                .map(ApplyInfo::getOrgCode)
+                .distinct()
+                .collect(Collectors.toList());
+        List<AuthOrgDTO> orgIdInfos = authOrgInfoFacade.convertCodesToIds(orgCodes);
+        Map<String, String> codeIdMap = orgIdInfos
+                .stream()
+                .collect(Collectors.toMap(AuthOrgDTO::getCode, AuthOrgDTO::getId));
         List<ApplicationInfoVO> apps = new ArrayList<ApplicationInfoVO>();
         for (ApplyInfo applyInfo : applyInfos) {
             ApplicationInfoVO applicationInfoVO = new ApplicationInfoVO();
             applicationInfoVO.setId(applyInfo.getId());
             applicationInfoVO.setCode(applyInfo.getApplyCode());
+            applicationInfoVO.setAppOrgId(codeIdMap.get(applyInfo.getOrgCode()));
             applicationInfoVO.setName(applyInfo.getApplyName());
             applicationInfoVO.setMenus(0L);
             applicationInfoVO.setRoles(0L);
@@ -108,9 +126,6 @@ public class ApplicationController {
         if (applyInfos.getContent().size() < 1) {
             return Result.success(new ArrayList<>());
         }
-        //填充统计数据
-        //TODO
-        //DTO待设计
         List<ApplicationInfoVO> apps = iApplicationInfoFacade.addCountInfoInLimitRole(objectConvert(applyInfos));
         for (ApplicationInfoVO source : apps) {
             ApplicationInfoVo vo = new ApplicationInfoVo();