diff --git a/bff/admin/Dockerfile b/bff/admin/Dockerfile
index 4810f6b..372661c 100644
--- a/bff/admin/Dockerfile
+++ b/bff/admin/Dockerfile
@@ -17,5 +17,5 @@
 
 COPY --chown=java-app:java-app target/${JAR_FILE} /home/java-app/lib/app.jar
 
-COPY --chown=java-app:java-app target/doc /home/java-app/doc
-COPY --chown=java-app:java-app target/api-docs /home/java-app/api-docs
+# COPY --chown=java-app:java-app target/doc /home/java-app/doc
+# COPY --chown=java-app:java-app target/api-docs /home/java-app/api-docs
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/Application.java b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/Application.java
index bde129e..77beb84 100644
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/Application.java
+++ b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/Application.java
@@ -2,8 +2,6 @@
 
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.openfeign.EnableFeignClients;
-//import org.springframework.cloud.openfeign.EnableFeignClients;
 import org.springframework.context.annotation.Bean;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpMethod;
@@ -24,7 +22,6 @@
 import static org.springframework.web.cors.CorsConfiguration.ALL;
 
 @SpringBootApplication
-@EnableFeignClients
 
 @EnableSimpleUserTransmit
 @EnableCustomExceptionHandler
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/controller/.gitkeep b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/controller/.gitkeep
deleted file mode 100644
index e69de29..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/controller/.gitkeep
+++ /dev/null
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/controller/biz/AdminBizController.java b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/controller/biz/AdminBizController.java
deleted file mode 100644
index 68bd37a..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/controller/biz/AdminBizController.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.supwisdom.institute.backend.admin.bff.apis.controller.biz;
-
-import org.springframework.util.MimeTypeUtils;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
-
-@RestController
-@RequestMapping(value = "/api/bff/v1/admin/biz")
-public class AdminBizController {
-
-  @RequestMapping(method = RequestMethod.GET, produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
-  public String biz() {
-    return "biz";
-  }
-
-}
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/controller/system/AdminSystemController.java b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/controller/system/AdminSystemController.java
deleted file mode 100644
index 84d0f3a..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/controller/system/AdminSystemController.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.supwisdom.institute.backend.admin.bff.apis.controller.system;
-
-import org.springframework.util.MimeTypeUtils;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
-
-@RestController
-@RequestMapping(value = "/api/bff/v1/admin/system")
-public class AdminSystemController {
-  
-  @RequestMapping(method = RequestMethod.GET, produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
-  public String hello() {
-    return "hello";
-  }
-
-}
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/model/.gitkeep b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/model/.gitkeep
deleted file mode 100644
index e69de29..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/model/.gitkeep
+++ /dev/null
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/model/biz/Biz.java b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/model/biz/Biz.java
deleted file mode 100644
index f1d904e..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/model/biz/Biz.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.supwisdom.institute.backend.admin.bff.apis.model.biz;
-
-import java.util.Date;
-
-import lombok.Getter;
-import lombok.Setter;
-
-import com.supwisdom.institute.backend.common.framework.model.ABaseModel;
-
-public class Biz extends ABaseModel {
-
-  /**
-   * 
-   */
-  private static final long serialVersionUID = 8755876583168251137L;
-  
-  @Getter
-  @Setter
-  private String id;
-
-  @Getter
-  @Setter
-  private String name;
-  
-  @Getter
-  @Setter
-  private Boolean bool;
-  
-  @Getter
-  @Setter
-  private Date date;
-
-  @Getter
-  @Setter
-  private Integer num;
-
-}
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/remote/.gitkeep b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/remote/.gitkeep
deleted file mode 100644
index e69de29..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/remote/.gitkeep
+++ /dev/null
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/remote/biz/BizRemoteFallbackFactory.java b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/remote/biz/BizRemoteFallbackFactory.java
deleted file mode 100644
index 30d312d..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/remote/biz/BizRemoteFallbackFactory.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package com.supwisdom.institute.backend.admin.bff.apis.remote.biz;
-
-import org.springframework.stereotype.Component;
-
-import com.alibaba.fastjson.JSONObject;
-import com.supwisdom.institute.backend.admin.bff.apis.model.biz.Biz;
-import com.supwisdom.institute.backend.admin.bff.remote.FallbackError;
-
-import feign.hystrix.FallbackFactory;
-
-@Component
-public class BizRemoteFallbackFactory implements FallbackFactory<BizRemoteFeignClient> {
-
-  @Override
-  public BizRemoteFeignClient create(Throwable cause) {
-    return new BizRemoteFeignClient() {
-
-      @Override
-      public JSONObject query(boolean loadAll, int pageIndex, int pageSize) {
-        if (cause != null) {
-          cause.printStackTrace();
-        }
-        return FallbackError.defaultErrorJson(cause);
-      }
-
-      @Override
-      public JSONObject load(String id) {
-        if (cause != null) {
-          cause.printStackTrace();
-        }
-        return FallbackError.defaultErrorJson(cause);
-      }
-
-      @Override
-      public JSONObject create(Biz biz) {
-        if (cause != null) {
-          cause.printStackTrace();
-        }
-        return FallbackError.defaultErrorJson(cause);
-      }
-
-      @Override
-      public JSONObject update(String id, Biz biz) {
-        if (cause != null) {
-          cause.printStackTrace();
-        }
-        return FallbackError.defaultErrorJson(cause);
-      }
-
-      @Override
-      public JSONObject delete(String id) {
-        if (cause != null) {
-          cause.printStackTrace();
-        }
-        return FallbackError.defaultErrorJson(cause);
-      }
-      
-    };
-  }
-
-}
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/remote/biz/BizRemoteFeignClient.java b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/remote/biz/BizRemoteFeignClient.java
deleted file mode 100644
index cccdd8a..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/remote/biz/BizRemoteFeignClient.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package com.supwisdom.institute.backend.admin.bff.apis.remote.biz;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RequestParam;
-
-import com.alibaba.fastjson.JSONObject;
-import com.supwisdom.institute.backend.admin.bff.apis.model.biz.Biz;
-
-@FeignClient(
-    name = "biz-biz-remote-feign-client",
-    url = "${sw-backend-biz-api.uri}/v1/admin/biz",
-    fallbackFactory = BizRemoteFallbackFactory.class
-)
-public interface BizRemoteFeignClient {
-  
-  @RequestMapping(method = RequestMethod.GET)
-  JSONObject query(
-      @RequestParam(name = "loadAll") boolean loadAll,
-      @RequestParam(name = "pageIndex") int pageIndex,
-      @RequestParam(name = "pageSize") int pageSize
-      
-  );
-  
-  @RequestMapping(method = RequestMethod.GET, path = "/{id}")
-  JSONObject load(
-      @PathVariable(name = "id") String id
-  );
-
-  @RequestMapping(method = RequestMethod.POST)
-  JSONObject create(
-      @RequestBody Biz biz
-  );
-
-  @RequestMapping(method = RequestMethod.PUT, path = "/{id}")
-  JSONObject update(
-      @PathVariable(name = "id") String id,
-      @RequestBody Biz biz
-  );
-  
-  @RequestMapping(method = RequestMethod.DELETE, path = "/{id}")
-  JSONObject delete(
-      @PathVariable(name = "id") String id
-  );
-
-}
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/service/.gitkeep b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/service/.gitkeep
deleted file mode 100644
index e69de29..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/service/.gitkeep
+++ /dev/null
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/service/biz/BizService.java b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/service/biz/BizService.java
deleted file mode 100644
index 7c6b8a7..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/service/biz/BizService.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.supwisdom.institute.backend.admin.bff.apis.service.biz;
-
-import org.springframework.beans.factory.annotation.Autowired;
-
-import com.alibaba.fastjson.JSONObject;
-import com.supwisdom.institute.backend.admin.bff.apis.remote.biz.BizRemoteFeignClient;
-import com.supwisdom.institute.backend.admin.bff.apis.vo.response.biz.data.BizQueryResponseData;
-
-public class BizService {
-  
-  @Autowired
-  private BizRemoteFeignClient bizRemote;
-  
-  public BizQueryResponseData query(boolean loadAll, int pageIndex, int pageSize) {
-    
-    JSONObject jsonObject = bizRemote.query(loadAll, pageIndex, pageSize);
-    if (jsonObject == null) {
-      return null;
-    }
-    
-    if (jsonObject.getIntValue("code") == 0) {
-      JSONObject data = jsonObject.getJSONObject("data");
-      
-      return data.toJavaObject(BizQueryResponseData.class);
-    }
-    
-    return null;
-  }
-
-}
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/vo/.gitkeep b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/vo/.gitkeep
deleted file mode 100644
index e69de29..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/vo/.gitkeep
+++ /dev/null
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/vo/response/biz/data/BizQueryResponseData.java b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/vo/response/biz/data/BizQueryResponseData.java
deleted file mode 100644
index 3699ff7..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/apis/vo/response/biz/data/BizQueryResponseData.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package com.supwisdom.institute.backend.admin.bff.apis.vo.response.biz.data;
-
-import java.util.List;
-import java.util.Map;
-
-import lombok.Getter;
-import lombok.Setter;
-
-import com.supwisdom.institute.backend.admin.bff.apis.model.biz.Biz;
-import com.supwisdom.institute.backend.common.framework.vo.response.data.IApiQueryResponseData;
-
-public class BizQueryResponseData implements IApiQueryResponseData<Biz> {
-
-  /**
-   * 
-   */
-  private static final long serialVersionUID = -380945463584664943L;
-
-  @Getter
-  private boolean loadAll;
-  @Getter
-  private int pageIndex;
-  @Getter
-  private int pageSize;
-  @Getter
-  private Map<String, Object> mapBean;
-  @Getter
-  private Map<String, String> orderBy;
-  
-  @Getter
-  @Setter
-  private int pageCount;
-  @Getter
-  @Setter
-  private long recordCount;
-  
-  @Getter
-  @Setter
-  private int currentItemCount;
-  
-  @Getter
-  @Setter
-  private List<Biz> items;
-  
-}
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/configuration/GatewayFilterConfig.java b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/configuration/GatewayFilterConfig.java
index f475158..5084419 100644
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/configuration/GatewayFilterConfig.java
+++ b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/configuration/GatewayFilterConfig.java
@@ -5,7 +5,8 @@
 
 import com.supwisdom.institute.backend.admin.bff.gateway.filter.factory.SimpleUserTransmitGatewayFilterFactory;
 
-@Configuration
+@Deprecated
+//@Configuration
 public class GatewayFilterConfig {
 
   @Bean
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/gateway/filter/factory/SimpleUserTransmitGatewayFilterFactory.java b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/gateway/filter/factory/SimpleUserTransmitGatewayFilterFactory.java
index 6d0d981..68b6ad3 100644
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/gateway/filter/factory/SimpleUserTransmitGatewayFilterFactory.java
+++ b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/gateway/filter/factory/SimpleUserTransmitGatewayFilterFactory.java
@@ -18,6 +18,7 @@
 import com.supwisdom.institute.backend.common.core.transmit.user.User;
 import com.supwisdom.institute.backend.common.core.transmit.user.UserContext;
 
+@Deprecated
 @Slf4j
 public class SimpleUserTransmitGatewayFilterFactory extends AbstractGatewayFilterFactory<SimpleUserTransmitGatewayFilterFactory.Config> {
   
diff --git a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/remote/FallbackError.java b/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/remote/FallbackError.java
deleted file mode 100644
index d46aa8d..0000000
--- a/bff/admin/src/main/java/com/supwisdom/institute/backend/admin/bff/remote/FallbackError.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package com.supwisdom.institute.backend.admin.bff.remote;
-
-import com.alibaba.fastjson.JSONObject;
-
-public class FallbackError {
-  
-  private FallbackError() {
-    
-  }
-  
-  public static JSONObject defaultErrorJson(Throwable cause) {
-    JSONObject error = new JSONObject();
-    
-    error.put("code", -1);
-    error.put("message", cause.getMessage());
-    error.put("error", cause.getMessage());
-    
-    return error;
-  }
-
-}
diff --git a/bff/admin/src/main/resources/application-docker.yml b/bff/admin/src/main/resources/application-docker.yml
index cc5555e..394e329 100644
--- a/bff/admin/src/main/resources/application-docker.yml
+++ b/bff/admin/src/main/resources/application-docker.yml
@@ -64,18 +64,3 @@
 
 #CAS服务地址
 cas.server.host.url: ${CAS_SERVER_HOST_URL:https://cas-server/cas}
-
-
-##
-# server url for feign
-#
-sw-backend-api-admin:
-  server:
-    url: ${CASSERVER_SA_API_SERVER_URL:https://sw-backend/sa-api}
-  client-auth:
-    enabled: ${CASSERVER_SA_API_CLIENT_AUTH_ENABLED:true}
-    key-password: ${CASSERVER_SA_API_CLIENT_AUTH_KEY_PASSWORD:}
-    key-store: ${CASSERVER_SA_API_CLIENT_AUTH_KEYSTORE_FILE:file:/certs/common/common.keystore}
-    key-store-password: ${CASSERVER_SA_API_CLIENT_AUTH_KEYSTORE_PASSWORD:}
-    trust-store: ${CASSERVER_SA_API_CLIENT_AUTH_TRUSTSTORE_FILE:file:/certs/common/common.truststore}
-    trust-store-password: ${CASSERVER_SA_API_CLIENT_AUTH_TRUSTSTORE_PASSWORD:}
diff --git a/bff/admin/src/main/resources/application.yml b/bff/admin/src/main/resources/application.yml
index a77dc9a..77789ac 100644
--- a/bff/admin/src/main/resources/application.yml
+++ b/bff/admin/src/main/resources/application.yml
@@ -25,6 +25,12 @@
       metrics:
         enabled: true
       routes:
+      - id: aggr-api
+        uri: http://localhost:8082
+        predicates:
+        - Path=/api/aggr/**
+        filters:
+        - RewritePath=/api/aggr/(?<suffix>.*), /$\{suffix}
       - id: base-api
         uri: http://localhost:8081
         predicates:
@@ -106,10 +112,3 @@
 
 #CAS服务地址
 cas.server.host.url: https://cas.supwisdom.com/cas
-
-
-##
-# server url for feign
-#
-sw-backend-system-api.uri: http://localhost:8081
-sw-backend-biz-api.uri: http://localhost:8081
