Browse Source

fix:解决多项目无法注入的问题

liusw 6 years ago
parent
commit
1ed89034bb

+ 1 - 0
sso-manage-console/build.gradle

@@ -31,6 +31,7 @@ dependencies {
   compile("org.springframework.boot:spring-boot-starter-mail")
   compile("org.springframework.boot:spring-boot-starter-data-redis")
   compile("net.sourceforge.nekohtml:nekohtml:1.9.15")
+  compile("com.usoft.framework:usoft-mq-utils:dev-1.3-SNAPSHOT")
 
   compile('commons-codec:commons-codec:1.11')
   compile("mysql:mysql-connector-java:5.1.41")

+ 1 - 2
sso-manage-console/src/main/java/com/uas/sso/sso/backend/ManageConsoleApplication.java

@@ -12,8 +12,7 @@ import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
  * @author huxz
  */
 @SpringBootApplication
-@ComponentScan(basePackages = "com.uas.sso.sync")
-@EntityScan(basePackages = {"com.uas.sso.entity", "com.uas.sso.sso.backend.entity"})
+@EntityScan(basePackages = {"com.uas.sso.entity", "com.uas.sso.sso.backend.entity", "com.uas.sso.sync.entity"})
 @EnableJpaRepositories(basePackages = {"com.uas.sso.dao", "com.uas.sso.sso.backend.dao"})
 public class ManageConsoleApplication {
 

+ 6 - 10
sso-manage-console/src/main/java/com/uas/sso/sso/backend/config/SyncThreadPool.java

@@ -10,6 +10,7 @@ import com.uas.sso.entity.App;
 import com.uas.sso.entity.SyncLog;
 import com.uas.sso.entity.User;
 import com.uas.sso.entity.UserView;
+import com.uas.sso.sso.backend.service.SyncToSsoService;
 import com.uas.sso.sso.backend.util.JacksonUtils;
 import java.util.ArrayList;
 import java.util.Collections;
@@ -17,8 +18,6 @@ import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ExecutorService;
 
-import com.uas.sso.sync.service.SyncUserService;
-import com.uas.sso.sync.service.SyncUserspaceService;
 import org.apache.log4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -44,18 +43,15 @@ public class SyncThreadPool {
 
     private final AppDao appDao;
 
-    private final SyncUserService syncUserService;
-
-    private final SyncUserspaceService syncUserspaceService;
+    @Autowired
+    private SyncToSsoService syncToSsoService;
 
     @Autowired
-    public SyncThreadPool(ExecutorService executorService, SyncLogDao syncLogDao, UserDao userDao, AppDao appDao, SyncUserService syncUserService, SyncUserspaceService syncUserspaceService) {
+    public SyncThreadPool(ExecutorService executorService, SyncLogDao syncLogDao, UserDao userDao, AppDao appDao) {
         this.executorService = executorService;
         this.syncLogDao = syncLogDao;
         this.userDao = userDao;
         this.appDao = appDao;
-        this.syncUserspaceService = syncUserspaceService;
-        this.syncUserService = syncUserService;
     }
 
     public void transferDataToOtherPlatforms(BackInfoType type, List<App> appList, JSONObject data, String message) {
@@ -65,7 +61,7 @@ public class SyncThreadPool {
         if (BackInfoType.BACK_USER_INFO.equals(type)) {
             isBackUser = true;
             urls = getBackUrl(appList, BACK_USER_URL);
-            syncUserService.sendUserToSso(data.getLong("userUU"));
+            syncToSsoService.sendUserToSso(data.getLong("userUU"));
         }
 
         if (BackInfoType.BACK_RELATION_INFO.equals(type)) {
@@ -84,7 +80,7 @@ public class SyncThreadPool {
             if (!CollectionUtils.isEmpty(map)) {
                 data.putAll(map);
             }
-            syncUserspaceService.sendUserspaceToSso(data.getLong("spaceUU"));
+            syncToSsoService.sendUserspaceToSso(data.getLong("spaceUU"));
         }
 
         final boolean flag = isBackUser;

+ 22 - 0
sso-manage-console/src/main/java/com/uas/sso/sso/backend/service/SyncToSsoService.java

@@ -0,0 +1,22 @@
+package com.uas.sso.sso.backend.service;
+
+/**
+ * 同步账号服务
+ *
+ * @author liusw
+ * @date 2019-02-14 09:53
+ */
+public interface SyncToSsoService {
+
+    /**
+     * 发送用户信息到账号服务
+     * @param userUU
+     */
+    void sendUserToSso(Long userUU);
+
+    /**
+     * 发送企业信息到账号服务
+     * @param spaceUU
+     */
+    void sendUserspaceToSso(Long spaceUU);
+}

+ 54 - 0
sso-manage-console/src/main/java/com/uas/sso/sso/backend/service/impl/SyncToSsoServiceImpl.java

@@ -0,0 +1,54 @@
+package com.uas.sso.sso.backend.service.impl;
+
+import com.uas.sso.sso.backend.service.SyncToSsoService;
+import com.uas.sso.sync.entity.AppIdConstant;
+import com.uas.sso.sync.entity.MqBizTypeConstant;
+import com.usoft.mq.utils.RabbitSendService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 同步账户服务 实现类
+ *
+ * @author liusw
+ * @date 2019-02-14 09:54
+ */
+@Service
+public class SyncToSsoServiceImpl implements SyncToSsoService {
+
+    @Autowired
+    private RabbitSendService rabbitSendService;
+
+
+    /**
+     * 发送用户信息到账户中心
+     * @param userUU
+     */
+    @Override
+    public void sendUserToSso(Long userUU) {
+        if (userUU == null) {
+            return;
+        }
+        try {
+            rabbitSendService.sendMessage("CTS", userUU + "", AppIdConstant.ACCOUNT_SERVICE, MqBizTypeConstant.CTS_USER, userUU + "");
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+    /**
+     * 发送企业信息到账户中心
+     * @param spaceUU
+     */
+    @Override
+    public void sendUserspaceToSso(Long spaceUU) {
+        if (spaceUU == null) {
+            return;
+        }
+        try {
+            rabbitSendService.sendMessage("CTS", spaceUU + "", AppIdConstant.ACCOUNT_SERVICE, MqBizTypeConstant.CTS_ENTERPRISE, spaceUU + "");
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+}