Преглед на файлове

feature(人员同步和机构同步修改): 人员同步和机构同步修改

人员同步和机构同步修改
mazq преди 4 години
родител
ревизия
ed5884e5d8

+ 4 - 7
dcuc-app-service/src/main/java/com/dragoninfo/dcuc/app/facade/DataResourceFacade.java

@@ -314,13 +314,12 @@ public class DataResourceFacade implements IDataResourceFacade {
                 .supplyAsync(this::getSecurityLevelListFromRemote)
                 .exceptionally(e->{
                     log.error("getSecurityLevelListFromRemote error.",e);
-                    return new ArrayList<>();
-                })
+                    return new ArrayList<>(); })
                 .thenAccept((list)->dataSecService.sync(list))
                 .exceptionally(e->{
                             log.error("sync error.",e);
                             return null;
-                        });
+                });
         return ResponseStatus.success();
     }
 
@@ -329,8 +328,7 @@ public class DataResourceFacade implements IDataResourceFacade {
         CompletableFuture.supplyAsync(this::getDataClassifyTreeFromRemote)
                 .exceptionally(e->{
                     log.error("getDataClassifyTreeFromRemote error.",e);
-                    return new ArrayList<>();
-                })
+                    return new ArrayList<>(); })
                 .thenAccept((nodes)-> dataClaService.sync(nodes, null))
                 .exceptionally(e->{
                     log.error("sync error.",e);
@@ -344,8 +342,7 @@ public class DataResourceFacade implements IDataResourceFacade {
         CompletableFuture.supplyAsync(this::getFieldClassifyTreeFromRemote)
                 .exceptionally(e->{
                     log.error("getFieldClassifyTreeFromRemote error.",e);
-                    return new ArrayList<>();
-                })
+                    return new ArrayList<>(); })
                 .thenAccept((nodes)-> fieldClaService.sync(nodes, null))
                 .exceptionally(e->{
                     log.error("sync error.",e);

+ 24 - 12
dcuc-app-service/src/main/java/com/dragoninfo/dcuc/app/facade/ResourceFacade.java

@@ -2,7 +2,6 @@ package com.dragoninfo.dcuc.app.facade;
 
 import com.dragoninfo.dcuc.app.business.IResourceBusiness;
 import com.dragoninfo.dcuc.app.dto.*;
-import com.dragoninfo.dcuc.app.dto.dataresource.ResourceType;
 import com.dragoninfo.dcuc.app.entity.ApplyInfo;
 import com.dragoninfo.dcuc.app.entity.ResourceSync;
 import com.dragoninfo.dcuc.app.entity.ServiceResource;
@@ -11,9 +10,8 @@ import com.dragoninfo.dcuc.app.service.IResourceService;
 import com.dragoninfo.dcuc.app.service.IResourceSyncService;
 import com.dragonsoft.duceap.base.entity.http.ResponseStatus;
 import com.dragonsoft.duceap.base.entity.search.SearchDTO;
-import com.dragonsoft.duceap.base.entity.security.BaseSecurityUser;
-import com.dragonsoft.duceap.base.utils.UserContextUtils;
 import com.dragonsoft.duceap.core.search.Searchable;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
@@ -28,6 +26,7 @@ import java.util.concurrent.CompletableFuture;
  * @author mazq
  * @date 2021/2/26
  **/
+@Slf4j
 @RestController
 @RequestMapping(value = "/dcuc/app/resourceFacade")
 public class ResourceFacade implements IResourceFacade {
@@ -102,12 +101,7 @@ public class ResourceFacade implements IResourceFacade {
         paramDTO.setListingAll(true);
         paramDTO.setMenuSync(true);
         paramDTO.setListAllResourceType(list);
-        //应用资源获取
-        //因为功能菜单是异步获取
-        //启动延时任务进行资源同步
-        CompletableFuture
-                .runAsync(()-> iResourceBusiness.getResourceRequestResults(paramDTO))
-                .thenRun(()-> iResourceBusiness.resourceSync());
+        asyncResource(paramDTO);
         return ResponseStatus.success();
     }
 
@@ -118,11 +112,29 @@ public class ResourceFacade implements IResourceFacade {
         ResourceRequestParamDTO paramDTO = new ResourceRequestParamDTO();
         paramDTO.setListingAll(true);
         paramDTO.setListAllResourceType(list);
-        CompletableFuture
-                .runAsync(()-> iResourceBusiness.getResourceRequestResults(paramDTO))
-                .thenRun(()-> iResourceBusiness.resourceSync());
+        asyncResource(paramDTO);
         return ResponseStatus.success();
     }
 
+    /**
+     * 进行资源同步
+     * @param paramDTO
+     */
+    private void asyncResource(ResourceRequestParamDTO paramDTO) {
+        CompletableFuture
+                .supplyAsync(() -> {
+                    iResourceBusiness.getResourceRequestResults(paramDTO);
+                    return true; })
+                .exceptionally(e -> {
+                    log.error("getResourceRequestResults error.", e);
+                    return false; })
+                .thenAccept((result) -> {
+                    if(result) {
+                        iResourceBusiness.resourceSync();}})
+                .exceptionally(e -> {
+                    log.error("resourceSync error.", e);
+                    return null; });
+    }
+
 
 }