old mode 100644
new mode 100755
| | |
| | | import org.springframework.web.client.RestTemplate; |
| | | |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.net.URLEncoder; |
| | | import java.util.Map; |
| | | |
| | | @Service("apiSMOImpl") |
| | |
| | | private RestTemplate restTemplate; |
| | | |
| | | @Override |
| | | protected ResponseEntity<String> getStoreInfo(IPageData pd, RestTemplate restTemplate) { |
| | | |
| | | if (StringUtil.isEmpty(pd.getUserId())) { |
| | | return new ResponseEntity<>("未包含用户信息", HttpStatus.BAD_REQUEST); |
| | | } |
| | | return super.getStoreInfo(pd, restTemplate); |
| | | } |
| | | |
| | | @Override |
| | | protected ComponentValidateResult validateStoreStaffCommunityRelationship(IPageData pd, RestTemplate restTemplate) { |
| | | // 校验 员工和商户是否有关系 |
| | | ResponseEntity responseEntity = getStoreInfo(pd, restTemplate); |
| | | if (responseEntity.getStatusCode() != HttpStatus.OK) { |
| | | return new ComponentValidateResult("", "", "", pd.getUserId(), pd.getUserName()); |
| | | } |
| | | |
| | | JSONObject storeInfo = JSONObject.parseObject(responseEntity.getBody().toString()); |
| | | if (!storeInfo.containsKey("storeId")) { |
| | | return new ComponentValidateResult("", "", "", pd.getUserId(), pd.getUserName()); |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | @Override |
| | | public ResponseEntity<String> doApi(String body, Map<String, String> headers, HttpServletRequest request) { |
| | | public ResponseEntity<String> doApi(String body, Map<String, String> headers, HttpServletRequest request) throws UnsupportedEncodingException { |
| | | HttpHeaders header = new HttpHeaders(); |
| | | IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA); |
| | | |
| | | for (String key : headers.keySet() |
| | | ) { |
| | | header.add(key, headers.get(key)); |
| | | } |
| | | |
| | | ComponentValidateResult result = this.validateStoreStaffCommunityRelationship(pd, restTemplate); |
| | | header.add("user-id", result.getUserId()); |
| | | header.add("user-name", result.getUserName()); |
| | | if (!StringUtil.isEmpty(result.getUserId())) { |
| | | header.remove("user-id"); |
| | | header.add("user-id", result.getUserId()); |
| | | if (!StringUtil.isEmpty(result.getUserName())) { |
| | | header.add("user-name", URLEncoder.encode(result.getUserName(), "UTF-8")); |
| | | } |
| | | } |
| | | |
| | | header.add("store-id", result.getStoreId()); |
| | | logger.debug("api请求头" + headers + ";请求内容:" + body); |
| | | HttpMethod method = null; |
| | |
| | | } |
| | | |
| | | |
| | | for (String key : headers.keySet() |
| | | ) { |
| | | header.add(key, headers.get(key)); |
| | | } |
| | | |
| | | HttpEntity<String> httpEntity = new HttpEntity<String>(body, header); |
| | | logger.debug("请求后端url" + url); |
| | | ResponseEntity<String> responseEntity = null; |
| | |
| | | responseEntity = new ResponseEntity<String>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR); |
| | | } finally { |
| | | logger.debug("api返回信息" + responseEntity); |
| | | return responseEntity; |
| | | } |
| | | return responseEntity; |
| | | } |
| | | |
| | | |