增加新版本下单接口调用
This commit is contained in:
@@ -267,7 +267,7 @@ public class CTServiceImpl implements CTService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 线上下单
|
* 线上下单,新版
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public CTResponse<String> saveOrder(String name, String idCard, String contactMobile,
|
public CTResponse<String> saveOrder(String name, String idCard, String contactMobile,
|
||||||
@@ -280,37 +280,81 @@ public class CTServiceImpl implements CTService {
|
|||||||
if (ObjectUtil.isNotNull(requestBody)) {
|
if (ObjectUtil.isNotNull(requestBody)) {
|
||||||
log.error(sn+" ------------------检查接口登录状态完成-------------------");
|
log.error(sn+" ------------------检查接口登录状态完成-------------------");
|
||||||
requestBody.setInterfaceName("SaveOrder");
|
requestBody.setInterfaceName("SaveOrder");
|
||||||
|
Map<String, Object> spiParam = new HashMap<>();
|
||||||
|
spiParam.put("name", name);
|
||||||
|
spiParam.put("idCard", idCard);
|
||||||
|
spiParam.put("contactMobile", contactMobile);
|
||||||
|
spiParam.put("installedAddress", installedAddress);
|
||||||
|
spiParam.put("saleId", saleId);
|
||||||
|
spiParam.put("storeId", storeId);
|
||||||
|
spiParam.put("personnelId", personnelId);
|
||||||
|
spiParam.put("province", province);
|
||||||
|
spiParam.put("city", city);
|
||||||
|
spiParam.put("county", county);
|
||||||
|
spiParam.put("serialNumber", serialNumber);
|
||||||
|
spiParam.put("number", number);
|
||||||
|
spiParam.put("logiRemark", logiRemark);
|
||||||
|
spiParam.put("pageUrl", pageUrl);
|
||||||
|
spiParam.put("remark", remark);
|
||||||
|
spiParam.put("installAddress", installAddress);
|
||||||
|
|
||||||
|
requestBody.setEncryption(JSONUtil.toJsonStr(spiParam), publicKey);
|
||||||
|
|
||||||
|
Map<String, Object> headers = new HashMap<>();
|
||||||
|
headers.put("account", personnelId);
|
||||||
|
headers.put("business_model", "SSLExtInterface");
|
||||||
|
headers.put("opt_tye", "2");
|
||||||
|
headers.put("client_ip", ip);
|
||||||
Map<String, Object> body = new HashMap<>();
|
Map<String, Object> body = new HashMap<>();
|
||||||
body.put("name", name);
|
body.put("spiParam", requestBody.toMap());
|
||||||
body.put("idCard", idCard);
|
body.put("headers", headers);
|
||||||
body.put("contactMobile", contactMobile);
|
|
||||||
body.put("installedAddress", installedAddress);
|
|
||||||
body.put("saleId", saleId);
|
log.error(sn+" 加密后数据:"+body.toString());
|
||||||
body.put("storeId", storeId);
|
// log.error(sn+" 加密后数据:"+requestBody.toMap());
|
||||||
body.put("personnelId", personnelId);
|
String saveOrderUrl = String.format("%sdqServer/api_out/openapiEopHttps/v1/eop.SSLExtInterface/requestEop/", host);
|
||||||
body.put("province", province);
|
log.error(sn+" 请求地址:"+saveOrderUrl);
|
||||||
body.put("city", city);
|
HttpResponse httpResponse = HttpRequest.post(saveOrderUrl)
|
||||||
body.put("county", county);
|
.header("token", token).header("Content-Type", "application/json")
|
||||||
body.put("serialNumber", serialNumber);
|
.body(body.toString())
|
||||||
body.put("number", number);
|
|
||||||
body.put("logiRemark", logiRemark);
|
|
||||||
body.put("pageUrl", pageUrl);
|
|
||||||
body.put("remark", remark);
|
|
||||||
body.put("installAddress", installAddress);
|
|
||||||
// body.put("ynumber2", ynumber2);
|
|
||||||
// body.put("images", images);
|
|
||||||
requestBody.setEncryption(JSONUtil.toJsonStr(body), publicKey);
|
|
||||||
log.error(sn+" 加密前数据:"+body);
|
|
||||||
log.error(sn+" 加密后数据:"+requestBody.toMap());
|
|
||||||
HttpResponse httpResponse = HttpRequest.post(url)
|
|
||||||
.header("token", token)
|
|
||||||
.form(requestBody.toMap())
|
|
||||||
.execute();
|
.execute();
|
||||||
// log.error("body:"+httpResponse.body());
|
|
||||||
|
boolean checkOK = false;
|
||||||
|
|
||||||
if (httpResponse.isOk()) {
|
if (httpResponse.isOk()) {
|
||||||
if (ObjectUtil.isNotNull(httpResponse.body()) && ObjectUtil.isNull(JSONUtil.toBean(httpResponse.body(), JSONObject.class).getStr("status"))) {
|
if (ObjectUtil.isNotNull(httpResponse.body())) {
|
||||||
|
/**
|
||||||
|
* response body
|
||||||
|
* {resCode: "0000", "resMsg": "",resObj:{isSuccess:1, result:{exopData:{data:"xxx", status: "success"}}}}
|
||||||
|
*/
|
||||||
|
JSONObject resBody = JSONUtil.toBean(httpResponse.body(), JSONObject.class);
|
||||||
|
try {
|
||||||
|
if (ObjectUtil.equal(resBody.getStr("resCode"), "0000")) {
|
||||||
|
JSONObject resObj = resBody.getJSONObject("resBody");
|
||||||
|
if (ObjectUtil.equal(resObj.getStr("isSuccess"), 1)) {
|
||||||
|
JSONObject result = resObj.getJSONObject("result");
|
||||||
|
JSONObject eopData = result.getJSONObject("eopData");
|
||||||
|
return JSONUtil.toBean(eopData, CTResponse.class);
|
||||||
|
}
|
||||||
|
}
|
||||||
// 其他异常状态,如504等
|
// 其他异常状态,如504等
|
||||||
log.error(sn+" ------------------下单异常------------------- ");
|
log.error(sn+" ------------------下单异常0------------------- ");
|
||||||
|
log.error(sn+" 请求电信异常,状态码:"+httpResponse.getStatus());
|
||||||
|
log.error(sn+" 返回:"+httpResponse.body());
|
||||||
|
LambdaQueryWrapper<AgentOrder> lqw = new LambdaQueryWrapper<>();
|
||||||
|
lqw.eq(AgentOrder::getSerialNumber, serialNumber);
|
||||||
|
lqw.last("limit 1");
|
||||||
|
AgentOrderVo agentOrderVo = agentOrderMapper.selectVoOne(lqw);
|
||||||
|
AgentOrder agentOrder = new AgentOrder();
|
||||||
|
agentOrder.setId(agentOrderVo.getId());
|
||||||
|
agentOrder.setStatus("-2");
|
||||||
|
agentOrder.setHasError(1);
|
||||||
|
agentOrderMapper.updateById(agentOrder);
|
||||||
|
log.error(sn+" --------------------------------------------");
|
||||||
|
throw new CTNetException();
|
||||||
|
} catch (Exception e) {
|
||||||
|
// 其他异常状态,如504等
|
||||||
|
log.error(sn+" ------------------下单异常1------------------- ");
|
||||||
log.error(sn+" 请求电信异常,状态码:"+httpResponse.getStatus());
|
log.error(sn+" 请求电信异常,状态码:"+httpResponse.getStatus());
|
||||||
log.error(sn+" 返回:"+httpResponse.body());
|
log.error(sn+" 返回:"+httpResponse.body());
|
||||||
LambdaQueryWrapper<AgentOrder> lqw = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<AgentOrder> lqw = new LambdaQueryWrapper<>();
|
||||||
@@ -325,11 +369,12 @@ public class CTServiceImpl implements CTService {
|
|||||||
log.error(sn+" --------------------------------------------");
|
log.error(sn+" --------------------------------------------");
|
||||||
throw new CTNetException();
|
throw new CTNetException();
|
||||||
}
|
}
|
||||||
CTResponse<String> response = JSONUtil.toBean(httpResponse.body(), CTResponse.class);
|
|
||||||
return response;
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
// 返回的不是200,或者没有返回
|
// 返回的不是200,或者没有返回
|
||||||
log.error(sn+" ------------------下单异常-------------------");
|
log.error(sn+" ------------------下单异常2-------------------");
|
||||||
log.error(sn+" 请求电信异常,状态码:"+httpResponse.getStatus());
|
log.error(sn+" 请求电信异常,状态码:"+httpResponse.getStatus());
|
||||||
log.error(sn+" 返回:"+httpResponse.body());
|
log.error(sn+" 返回:"+httpResponse.body());
|
||||||
log.error(sn+" --------------------------------------------");
|
log.error(sn+" --------------------------------------------");
|
||||||
|
|||||||
@@ -3,9 +3,11 @@ package com.ruoyi.web.controller.api;
|
|||||||
import cn.dev33.satoken.annotation.SaIgnore;
|
import cn.dev33.satoken.annotation.SaIgnore;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
|
import cn.hutool.http.HttpRequest;
|
||||||
import cn.hutool.json.JSONObject;
|
import cn.hutool.json.JSONObject;
|
||||||
import com.ruoyi.common.core.domain.CTResponse;
|
import com.ruoyi.common.core.domain.CTResponse;
|
||||||
import com.ruoyi.common.core.domain.R;
|
import com.ruoyi.common.core.domain.R;
|
||||||
|
import com.ruoyi.common.utils.StringUtils;
|
||||||
import com.ruoyi.common.utils.poi.ExcelUtil;
|
import com.ruoyi.common.utils.poi.ExcelUtil;
|
||||||
import com.ruoyi.ct.domain.Bill;
|
import com.ruoyi.ct.domain.Bill;
|
||||||
import com.ruoyi.ct.domain.vo.AgentOrderVo;
|
import com.ruoyi.ct.domain.vo.AgentOrderVo;
|
||||||
@@ -19,12 +21,10 @@ import com.ruoyi.system.service.ISysOssService;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -47,11 +47,31 @@ public class APIController {
|
|||||||
return R.ok(ctService.selectNumber(personnelId, saleId, page, pageSize));
|
return R.ok(ctService.selectNumber(personnelId, saleId, page, pageSize));
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/saveOrder")
|
@PostMapping("/saveOrder")
|
||||||
public R<String> saveOrder() throws Exception {
|
public R<String> saveOrder(HttpServletRequest request, @RequestBody JSONObject body) throws Exception {
|
||||||
CTResponse<String> response = ctService.saveOrder("", "", "", "", "", "",
|
System.out.println("body = " + body);
|
||||||
"", "", "", "", "", "", "", "", "",
|
String ip = StringUtils.blankToDefault(request.getHeader("x-real-ip"), request.getRemoteAddr());
|
||||||
"", "", "", "");
|
CTResponse<String> response = ctService.saveOrder(
|
||||||
|
body.getStr("name"),
|
||||||
|
body.getStr("idCard"),
|
||||||
|
body.getStr("contactMobile"),
|
||||||
|
body.getStr("installedAddress"),
|
||||||
|
body.getStr("saleId"),
|
||||||
|
body.getStr("storeId"),
|
||||||
|
body.getStr("personnelId"),
|
||||||
|
body.getStr("province"),
|
||||||
|
body.getStr("city"),
|
||||||
|
body.getStr("county"),
|
||||||
|
body.getStr("serialNumber"),
|
||||||
|
body.getStr("number"),
|
||||||
|
body.getStr("logiRemark"),
|
||||||
|
body.getStr("pageUrl"),
|
||||||
|
body.getStr("remark"),
|
||||||
|
body.getStr("installAddress"),
|
||||||
|
body.getStr("ynumber2"),
|
||||||
|
body.getStr("images"),
|
||||||
|
body.getStr("sn"),
|
||||||
|
ip, true);
|
||||||
return R.ok(response.getData());
|
return R.ok(response.getData());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ package com.ruoyi.common.core.domain;
|
|||||||
import cn.hutool.json.JSONObject;
|
import cn.hutool.json.JSONObject;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
import netscape.javascript.JSObject;
|
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
|
|||||||
Reference in New Issue
Block a user