|
|
@@ -6,9 +6,13 @@ import com.github.microservice.core.util.net.apache.HttpModel;
|
|
|
import com.github.microservice.core.util.net.apache.MethodType;
|
|
|
import com.github.microservice.core.util.net.apache.ResponseModel;
|
|
|
import com.github.microservice.models.requestModel.SuperResponseModel;
|
|
|
+import com.zhongshu.card.client.model.payment.RequestInfoSaveParam;
|
|
|
+import com.zhongshu.card.client.service.feign.RequestInfoFeignService;
|
|
|
+import com.zhongshu.card.client.utils.type.payment.RequestType;
|
|
|
import com.zhongshu.payment.client.payModel.unionFrictionlessPay.model.ApiConfParam;
|
|
|
import com.zhongshu.payment.server.core.service.base.SuperService;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.util.StopWatch;
|
|
|
|
|
|
@@ -20,28 +24,39 @@ import org.springframework.util.StopWatch;
|
|
|
*/
|
|
|
@Slf4j
|
|
|
@Service
|
|
|
-public class UnionUserOpenRequestService extends SuperService {
|
|
|
+public class UnionRequestService extends SuperService {
|
|
|
|
|
|
+ @Autowired
|
|
|
+ RequestInfoFeignService requestInfoFeignService;
|
|
|
|
|
|
public SuperResponseModel requestAPI(String url,
|
|
|
Object data,
|
|
|
- Class<? extends SuperResponseModel> cls) {
|
|
|
- SuperResponseModel responseModel = new SuperResponseModel();
|
|
|
+ Class<? extends SuperResponseModel> tClass) {
|
|
|
+ RequestInfoSaveParam param = new RequestInfoSaveParam();
|
|
|
+ param.setParam(data);
|
|
|
+ param.setApiParam(url);
|
|
|
+ param.setUserId(getCurrentUserId());
|
|
|
+
|
|
|
+ SuperResponseModel responseModel = null;
|
|
|
try {
|
|
|
+ responseModel = tClass.newInstance();
|
|
|
ApiConfParam apiConfParam = new ApiConfParam();
|
|
|
apiConfParam.setApiName(url);
|
|
|
apiConfParam.setMethodType(MethodType.Json);
|
|
|
+
|
|
|
+ // 请求时间记时
|
|
|
StopWatch stopWatch = new StopWatch();
|
|
|
stopWatch.start();
|
|
|
+ // 发送请求
|
|
|
ResponseModel request = HttpClientUtil.request(HttpModel.builder()
|
|
|
.url(url).method(apiConfParam.getMethodType()).charset("utf-8").body(data).build());
|
|
|
int code = request.getCode();
|
|
|
if (code == 200) {
|
|
|
- responseModel = BeanUtil.copyProperties(request.getBody(), cls.getClass().newInstance());
|
|
|
+ BeanUtil.copyProperties(request.getBody(), responseModel);
|
|
|
} else if (code == 404) {
|
|
|
responseModel.setFailed("404 not found");
|
|
|
} else {
|
|
|
- responseModel = BeanUtil.copyProperties(request.getBody(), cls.getClass().newInstance());
|
|
|
+ BeanUtil.copyProperties(request.getBody(), responseModel);
|
|
|
}
|
|
|
stopWatch.stop();
|
|
|
responseModel.setMillis(stopWatch.getTotalTimeMillis());
|
|
|
@@ -50,8 +65,12 @@ public class UnionUserOpenRequestService extends SuperService {
|
|
|
responseModel.setFailed(String.format("请求出错:%s", e.getMessage()));
|
|
|
return responseModel;
|
|
|
}
|
|
|
- // 记录请求日志
|
|
|
-// requestInfoService.addRequestInfo(data, responseModel);
|
|
|
+ param.setMillis(responseModel.getMillis());
|
|
|
+ param.setIsSuccess(responseModel.isSuccess);
|
|
|
+ param.setMsg(responseModel.getMsg());
|
|
|
+ param.setResponse(responseModel);
|
|
|
+ param.setRequestType(RequestType.UnionFrictionlessPay);
|
|
|
+ requestInfoFeignService.saveRequestInfo(param);
|
|
|
return responseModel;
|
|
|
}
|
|
|
|