Browse Source

修改后台管理同步接口

huxz 8 years ago
parent
commit
d9db6d49c4

+ 20 - 8
sso-manage-console/src/main/java/com/uas/sso/sso/backend/service/impl/AppealServiceImpl.java

@@ -273,30 +273,39 @@ public class AppealServiceImpl implements AppealService {
             spaceDao.save(space);
 
             JSONObject data = JacksonUtils.fromJson(JacksonUtils.toJson(space), JSONObject.class);
-            transferDataToOtherPlatforms("BackChangeAdmin", data, "同步更换管理员信息");
+            transferDataToOtherPlatforms("BackChangeAdmin", space.getApps(), data, "同步更换管理员信息");
             synSendMail(appeal.getContactEmail(), appeal.getType(), appeal.getContactName(), space.getSpaceName(), isPass);
         } else {
             logger.info("暂无支持申诉类型");
         }
     }
 
-    private void transferDataToOtherPlatforms(String type, JSONObject data, String message) {
+    private void transferDataToOtherPlatforms(String type, List<App> appList, JSONObject data, String message) {
 
         List<String> urls = new ArrayList<>();
         if ("BackUser".equals(type)) {
-            urls = getBackUrl(new BackAppUrl() {
+            urls = getBackUrl(appList, new BackAppUrl() {
                 @Override
                 public String getUrl(App app) {
                     return app.getBackUserUrl();
                 }
             });
         } else if ("BackChangeAdmin".equals(type)) {
-            urls = getBackUrl(new BackAppUrl() {
+            urls = getBackUrl(appList, new BackAppUrl() {
                 @Override
                 public String getUrl(App app) {
-                    return app.getBackChangeAdminUrl();
+                    return app.getBackSpaceUrl();
                 }
             });
+
+            User admin = data.getObject("admin", User.class);
+            data.remove("admin");
+
+            @SuppressWarnings("unchecked")
+            Map<String, Object> map = (Map<String, Object>)JacksonUtils.fromJson(JacksonUtils.toJson(admin), Map.class);
+            if (!CollectionUtils.isEmpty(map)) {
+                data.putAll(map);
+            }
         }
 
         for (String backUrl : urls) {
@@ -326,12 +335,15 @@ public class AppealServiceImpl implements AppealService {
         }
     }
 
-    private List<String> getBackUrl(BackAppUrl backAppUrl) {
+    private List<String> getBackUrl(List<App> appList, BackAppUrl backAppUrl) {
         List<String> urls = new ArrayList<>();
 
-        List<App> appList = getAppList();
+        if (CollectionUtils.isEmpty(appList)) {
+            appList = Collections.emptyList();
+        }
+
         for (App app : appList) {
-            if (StringUtils.hasText(app.getBackChangeAdminUrl())) {
+            if (StringUtils.hasText(backAppUrl.getUrl(app))) {
                 urls.add(app.getUid() + "_" + backAppUrl.getUrl(app));
             }
         }