From c569069f3202d4694e3b89dee78116d4c67f2331 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期五, 31 七月 2020 13:14:08 +0800
Subject: [PATCH] 优化代码

---
 service-front/src/main/java/com/java110/front/controller/app/AppController.java |   18 +++++++++++++++++-
 1 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/service-front/src/main/java/com/java110/front/controller/app/AppController.java b/service-front/src/main/java/com/java110/front/controller/app/AppController.java
index 264d67b..43c3354 100644
--- a/service-front/src/main/java/com/java110/front/controller/app/AppController.java
+++ b/service-front/src/main/java/com/java110/front/controller/app/AppController.java
@@ -2,6 +2,7 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.base.controller.BaseController;
+import com.java110.core.context.IPageData;
 import com.java110.front.smo.api.IApiSMO;
 import com.java110.utils.constant.CommonConstant;
 import io.swagger.annotations.ApiImplicitParam;
@@ -12,6 +13,7 @@
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.client.RestTemplate;
 
 import javax.servlet.http.HttpServletRequest;
 import java.util.HashMap;
@@ -33,6 +35,9 @@
 
     @Autowired
     private IApiSMO apiSMOImpl;
+
+    @Autowired
+    private RestTemplate restTemplate;
 
     /**
      * 璧勬簮璇锋眰 post鏂瑰紡
@@ -60,6 +65,8 @@
             headers.put(CommonConstant.HTTP_SERVICE, service);
             headers.put(CommonConstant.HTTP_METHOD, CommonConstant.HTTP_METHOD_POST);
             logger.debug("api锛歿} 璇锋眰鎶ユ枃涓猴細{},header淇℃伅涓猴細{}", service, postInfo, headers);
+            IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);
+            hasPrivilege(restTemplate, pd, "/app/" + service);
             responseEntity = apiSMOImpl.doApi(postInfo, headers, request);
         } catch (Throwable e) {
             logger.error("璇锋眰post 鏂规硶[" + service + "]澶辫触锛�" + postInfo, e);
@@ -90,6 +97,8 @@
             headers.put(CommonConstant.HTTP_SERVICE, service);
             headers.put(CommonConstant.HTTP_METHOD, CommonConstant.HTTP_METHOD_GET);
             logger.debug("api锛歿} 璇锋眰鎶ユ枃涓猴細{},header淇℃伅涓猴細{}", "", headers);
+            IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);
+            hasPrivilege(restTemplate, pd, "/app/" + service);
             responseEntity = apiSMOImpl.doApi(JSONObject.toJSONString(getParameterStringMap(request)), headers, request);
         } catch (Throwable e) {
             logger.error("璇锋眰get 鏂规硶[" + service + "]澶辫触锛�", e);
@@ -123,6 +132,8 @@
             headers.put(CommonConstant.HTTP_ACTION, action);
             headers.put(CommonConstant.HTTP_METHOD, CommonConstant.HTTP_METHOD_GET);
             logger.debug("api锛歿} 璇锋眰鎶ユ枃涓猴細{},header淇℃伅涓猴細{}", "", headers);
+            IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);
+            hasPrivilege(restTemplate, pd, "/app/" + resource + "/" + action);
             responseEntity = apiSMOImpl.doApi(JSONObject.toJSONString(getParameterStringMap(request)), headers, request);
         } catch (Throwable e) {
             logger.error("璇锋眰get 鏂规硶[" + action + "]澶辫触锛�", e);
@@ -158,6 +169,8 @@
             headers.put(CommonConstant.HTTP_ACTION, action);
             headers.put(CommonConstant.HTTP_METHOD, CommonConstant.HTTP_METHOD_POST);
             logger.debug("api锛歿} 璇锋眰鎶ユ枃涓猴細{},header淇℃伅涓猴細{}", action, postInfo, headers);
+            IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);
+            hasPrivilege(restTemplate, pd, "/app/" + resource + "/" + action);
             responseEntity = apiSMOImpl.doApi(postInfo, headers, request);
         } catch (Throwable e) {
             logger.error("璇锋眰post 鏂规硶[" + action + "]澶辫触锛�" + postInfo, e);
@@ -190,6 +203,8 @@
             headers.put(CommonConstant.HTTP_SERVICE, service);
             headers.put(CommonConstant.HTTP_METHOD, CommonConstant.HTTP_METHOD_PUT);
             logger.debug("api锛歿} 璇锋眰鎶ユ枃涓猴細{},header淇℃伅涓猴細{}", service, postInfo, headers);
+            IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);
+            hasPrivilege(restTemplate, pd, "/app/" + service );
             responseEntity = apiSMOImpl.doApi(postInfo, headers, request);
         } catch (Throwable e) {
             logger.error("璇锋眰put 鏂规硶[" + service + "]澶辫触锛�", e);
@@ -219,7 +234,8 @@
             headers.put(CommonConstant.HTTP_SERVICE, service);
             headers.put(CommonConstant.HTTP_METHOD, CommonConstant.HTTP_METHOD_DELETE);
             logger.debug("api锛歿} 璇锋眰鎶ユ枃涓猴細{},header淇℃伅涓猴細{}", service, "", headers);
-
+            IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);
+            hasPrivilege(restTemplate, pd, "/app/" + service );
             responseEntity = apiSMOImpl.doApi(JSONObject.toJSONString(getParameterStringMap(request)), headers, request);
         } catch (Throwable e) {
             logger.error("璇锋眰delete 鏂规硶[" + service + "]澶辫触锛�", e);

--
Gitblit v1.8.0