| | |
| | | /* |
| | | * Copyright 2017-2020 吴学文 and java110 team. |
| | | * |
| | | * Licensed under the Apache License, Version 2.0 (the "License"); |
| | | * you may not use this file except in compliance with the License. |
| | | * You may obtain a copy of the License at |
| | | * |
| | | * http://www.apache.org/licenses/LICENSE-2.0 |
| | | * |
| | | * Unless required by applicable law or agreed to in writing, software |
| | | * distributed under the License is distributed on an "AS IS" BASIS, |
| | | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| | | * See the License for the specific language governing permissions and |
| | | * limitations under the License. |
| | | */ |
| | | package com.java110.front.controller; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | |
| | | import com.java110.utils.exception.SMOException; |
| | | import com.java110.utils.factory.ApplicationContextFactory; |
| | | import com.java110.utils.util.Assert; |
| | | import com.java110.utils.util.DateUtil; |
| | | import com.java110.utils.util.StringUtil; |
| | | import com.java110.vo.ResultVo; |
| | | import org.slf4j.Logger; |
| | |
| | | ResponseEntity<String> responseEntity = null; |
| | | String componentCode = "api"; |
| | | String componentMethod = "callApi"; |
| | | long startTime = DateUtil.getCurrentDate().getTime(); |
| | | try { |
| | | Assert.hasLength(api, "参数错误,未传入api编码"); |
| | | |
| | | IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA); |
| | | pd.setApiUrl("/api/" + api); |
| | | //权限校验 |
| | | hasPrivilege(restTemplate, pd, "/" + api); |
| | | hasPrivilege(restTemplate, pd, "/callComponent/" + api); |
| | | |
| | | Object componentInstance = ApplicationContextFactory.getBean(componentCode); |
| | | |
| | |
| | | responseEntity = new ResponseEntity<>(msg, HttpStatus.INTERNAL_SERVER_ERROR); |
| | | } finally { |
| | | logger.debug("api调用返回信息为{}", responseEntity); |
| | | logger.debug(componentCode + "::" + componentCode + "back耗时:" + (DateUtil.getCurrentDate().getTime() - startTime)); |
| | | |
| | | if (responseEntity.getStatusCode() == HttpStatus.OK) { |
| | | return responseEntity; |
| | | } |
| | |
| | | //@RequestBody String info, |
| | | HttpServletRequest request) { |
| | | ResponseEntity<String> responseEntity = null; |
| | | long startTime = DateUtil.getCurrentDate().getTime(); |
| | | logger.debug(componentCode + "::" + componentMethod + "调用back开始:" + (startTime)); |
| | | |
| | | try { |
| | | Assert.hasLength(componentCode, "参数错误,未传入组件编码"); |
| | | Assert.hasLength(componentMethod, "参数错误,未传入调用组件方法"); |
| | | |
| | | IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA); |
| | | //权限校验 |
| | | hasPrivilege(restTemplate, pd, "/" + componentCode + "/" + componentMethod); |
| | | hasPrivilege(restTemplate, pd, "/callComponent/" + componentCode + "/" + componentMethod); |
| | | |
| | | Object componentInstance = ApplicationContextFactory.getBean(componentCode); |
| | | |
| | |
| | | responseEntity = new ResponseEntity<>(msg, HttpStatus.INTERNAL_SERVER_ERROR); |
| | | } finally { |
| | | logger.debug("组件调用返回信息为{}", responseEntity); |
| | | logger.debug(componentCode + "::" + componentMethod + "调用back耗时:" + (DateUtil.getCurrentDate().getTime() - startTime)); |
| | | if (responseEntity.getStatusCode() == HttpStatus.OK) { |
| | | return responseEntity; |
| | | } |
| | |
| | | |
| | | pd = freshPageDate(request); |
| | | //权限校验 |
| | | hasPrivilege(restTemplate, pd, "/" + componentCode + "/" + componentMethod); |
| | | hasPrivilege(restTemplate, pd, "/callComponent/" + componentCode + "/" + componentMethod); |
| | | |
| | | Object componentInstance = ApplicationContextFactory.getBean(componentCode); |
| | | |
| | |
| | | Assert.hasLength(componentMethod, "参数错误,未传入调用组件方法"); |
| | | pd = freshPageDate(request); |
| | | |
| | | hasPrivilege(restTemplate, pd, "/" + componentCode + "/" + componentMethod); |
| | | hasPrivilege(restTemplate, pd, "/callComponent/download/" + componentCode + "/" + componentMethod); |
| | | |
| | | |
| | | Object componentInstance = ApplicationContextFactory.getBean(componentCode); |