Commit c885e44c authored by 黎博's avatar 黎博

修改请求参数获取方式

parent 0c3d15d3
...@@ -18,6 +18,7 @@ import org.springframework.web.servlet.ModelAndView; ...@@ -18,6 +18,7 @@ import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.BufferedReader;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
...@@ -35,7 +36,8 @@ public class XinchengInterceptor implements HandlerInterceptor { ...@@ -35,7 +36,8 @@ public class XinchengInterceptor implements HandlerInterceptor {
@Override @Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception{ public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception{
String uri = request.getRequestURI(); String uri = request.getRequestURI();
Map<String, String[]> parameterMap = request.getParameterMap(); // Map<String, String[]> parameterMap = request.getParameterMap();
Map<String, String> parameterMap = getParamsMap(request);
QueryWrapper<Mock> mockQueryWrapper = new QueryWrapper<>(); QueryWrapper<Mock> mockQueryWrapper = new QueryWrapper<>();
mockQueryWrapper.eq("url", uri); mockQueryWrapper.eq("url", uri);
Mock mock = mockMapper.selectOne(mockQueryWrapper); Mock mock = mockMapper.selectOne(mockQueryWrapper);
...@@ -47,26 +49,26 @@ public class XinchengInterceptor implements HandlerInterceptor { ...@@ -47,26 +49,26 @@ public class XinchengInterceptor implements HandlerInterceptor {
responseStr = mock.getFail(); responseStr = mock.getFail();
} }
// 解析请求 // 解析请求
Map<String, Object> requestMap = new HashMap<>(); Map<String, Object> requestContentMap = new HashMap<>();
if (parameterMap.size() != 0) { if (parameterMap.size() != 0) {
requestMap = JSON.parseObject(encryptConvertor.decrypt(JSON.toJSONString(convertParameterMap(parameterMap))), Map.class); requestContentMap = JSON.parseObject(encryptConvertor.decrypt(JSON.toJSONString(parameterMap.get("content"))), Map.class);
} }
Map<String, Object> responseMap = JSON.parseObject(responseStr, Map.class); Map<String, Object> responseMap = JSON.parseObject(responseStr, Map.class);
// 进件 // 进件
if (uri.equals("/webservice/api/lhp/v1/credit/creditApply")) { if (uri.equals("/webservice/api/lhp/v1/credit/creditApply")) {
redisUtils.set(requestMap.get("orderNo").toString(), requestMap); redisUtils.set(requestContentMap.get("orderNo").toString(), requestContentMap);
} }
// 还款试算 // 还款试算
if (uri.equals("/webservice/api/lhp/v1/loan/calculator")) { if (uri.equals("/webservice/api/lhp/v1/loan/calculator")) {
String amount = requestMap.get("trialAmount").toString(); String amount = requestContentMap.get("trialAmount").toString();
String term = requestMap.get("terms").toString(); String term = requestContentMap.get("terms").toString();
Map<String, Object> caculatorMap = getLoanCaculatorResult(amount, term); Map<String, Object> caculatorMap = getLoanCaculatorResult(amount, term);
constructResponse(response, encryptConvertor.encrypt(JSON.toJSONString(caculatorMap)), "application/json; charset=utf-8"); constructResponse(response, encryptConvertor.encrypt(JSON.toJSONString(caculatorMap)), "application/json; charset=utf-8");
return false; return false;
} }
// 还款计划 // 还款计划
if (uri.equals("/webservice/api/lhp/v1/loan/repay/plan")) { if (uri.equals("/webservice/api/lhp/v1/loan/repay/plan")) {
String orderNo = requestMap.get("orderNo").toString(); String orderNo = requestContentMap.get("orderNo").toString();
Map<String, Object> redisValue = JSONObject.parseObject(JSON.toJSONString(redisUtils.get(orderNo)), Map.class); Map<String, Object> redisValue = JSONObject.parseObject(JSON.toJSONString(redisUtils.get(orderNo)), Map.class);
Map<String, Object> loanInfo = JSONObject.parseObject(redisValue.get("loanInfo").toString(), Map.class); Map<String, Object> loanInfo = JSONObject.parseObject(redisValue.get("loanInfo").toString(), Map.class);
String amount = loanInfo.get("amount").toString(); String amount = loanInfo.get("amount").toString();
...@@ -79,7 +81,7 @@ public class XinchengInterceptor implements HandlerInterceptor { ...@@ -79,7 +81,7 @@ public class XinchengInterceptor implements HandlerInterceptor {
constructResponse(response, encryptConvertor.encrypt(JSON.toJSONString(repayPlanMap)), "application/json; charset=utf-8"); constructResponse(response, encryptConvertor.encrypt(JSON.toJSONString(repayPlanMap)), "application/json; charset=utf-8");
return false; return false;
} }
responseMap = disposeResponseMap(requestMap, responseMap); responseMap = disposeResponseMap(requestContentMap, responseMap);
constructResponse(response, encryptConvertor.encrypt(JSON.toJSONString(responseMap)), "application/json; charset=utf-8"); constructResponse(response, encryptConvertor.encrypt(JSON.toJSONString(responseMap)), "application/json; charset=utf-8");
return false; return false;
} }
...@@ -94,6 +96,18 @@ public class XinchengInterceptor implements HandlerInterceptor { ...@@ -94,6 +96,18 @@ public class XinchengInterceptor implements HandlerInterceptor {
@Nullable Exception ex) { @Nullable Exception ex) {
} }
public static Map<String, String> getParamsMap(HttpServletRequest request) throws Exception{
BufferedReader br = request.getReader();
String str = "";
StringBuilder requestData = new StringBuilder();
while((str = br.readLine()) != null){
requestData.append(str);
}
br.close();
Map<String, String> paramsMap = JSON.parseObject(JSON.toJSONString(requestData), Map.class);
return paramsMap;
}
/** /**
* 生成还款计划 * 生成还款计划
* @param orderNo * @param orderNo
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment