|
@@ -12,10 +12,12 @@ import com.ydtech.modules.esm.model.EsmInsCompany;
|
|
|
import com.ydtech.modules.esm.service.EsmInsCompanyService;
|
|
import com.ydtech.modules.esm.service.EsmInsCompanyService;
|
|
|
import com.ydtech.modules.ins.model.vo.*;
|
|
import com.ydtech.modules.ins.model.vo.*;
|
|
|
import com.ydtech.modules.ins.model.ya.*;
|
|
import com.ydtech.modules.ins.model.ya.*;
|
|
|
|
|
+import com.ydtech.modules.order.components.ConfigureParametersComponents;
|
|
|
import com.ydtech.modules.order.convert.MapToYaExtendInfoDto;
|
|
import com.ydtech.modules.order.convert.MapToYaExtendInfoDto;
|
|
|
import com.ydtech.modules.order.entity.InsAreaCompany;
|
|
import com.ydtech.modules.order.entity.InsAreaCompany;
|
|
|
import com.ydtech.modules.order.entity.InsOrders;
|
|
import com.ydtech.modules.order.entity.InsOrders;
|
|
|
import com.ydtech.modules.order.entity.TaxArrears;
|
|
import com.ydtech.modules.order.entity.TaxArrears;
|
|
|
|
|
+import com.ydtech.modules.order.entity.config.YaConfigureParameters;
|
|
|
import com.ydtech.modules.order.entity.po.InsTaskImagesBase64;
|
|
import com.ydtech.modules.order.entity.po.InsTaskImagesBase64;
|
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
|
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
|
|
@@ -25,6 +27,8 @@ import com.ydtech.modules.order.service.InsAreaCompanyService;
|
|
|
import com.ydtech.modules.order.service.InsOrdersService;
|
|
import com.ydtech.modules.order.service.InsOrdersService;
|
|
|
import com.ydtech.modules.order.service.InsTaskImagesService;
|
|
import com.ydtech.modules.order.service.InsTaskImagesService;
|
|
|
import com.ydtech.modules.order.service.YongAnOrderService;
|
|
import com.ydtech.modules.order.service.YongAnOrderService;
|
|
|
|
|
+import com.ydtech.modules.protocol.entity.po.PtlAgreementAttribution;
|
|
|
|
|
+import com.ydtech.modules.protocol.service.PtlAgreementAttributionService;
|
|
|
import com.ydtech.utils.HMAC256Uitil;
|
|
import com.ydtech.utils.HMAC256Uitil;
|
|
|
import com.ydtech.utils.HttpXmlUtil;
|
|
import com.ydtech.utils.HttpXmlUtil;
|
|
|
import com.ydtech.utils.idgen.IdGenerate;
|
|
import com.ydtech.utils.idgen.IdGenerate;
|
|
@@ -48,20 +52,20 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
@Value("${ya.url.sign}")
|
|
@Value("${ya.url.sign}")
|
|
|
String urlSign = "";
|
|
String urlSign = "";
|
|
|
|
|
|
|
|
- @Value("${ya.consumerID}")
|
|
|
|
|
- String consumerID = "";
|
|
|
|
|
|
|
+// @Value("${ya.consumerID}")
|
|
|
|
|
+// String consumerID = "";
|
|
|
|
|
|
|
|
- @Value("${ya.consumerAccessKey}")
|
|
|
|
|
- String consumerAccessKeyInit = "";
|
|
|
|
|
|
|
+// @Value("${ya.consumerAccessKey}")
|
|
|
|
|
+// String consumerAccessKeyInit = "";
|
|
|
|
|
|
|
|
- @Value("${ya.matchCode}")
|
|
|
|
|
- String matchCode = "";
|
|
|
|
|
|
|
+// @Value("${ya.matchCode}")
|
|
|
|
|
+// String matchCode = "";
|
|
|
|
|
|
|
|
- @Value("${ya.userCode}")
|
|
|
|
|
- String userCode = "";
|
|
|
|
|
|
|
+// @Value("${ya.userCode}")
|
|
|
|
|
+// String userCode = "";
|
|
|
|
|
|
|
|
- @Value("${ya.comCode}")
|
|
|
|
|
- String comCode = "";
|
|
|
|
|
|
|
+// @Value("${ya.comCode}")
|
|
|
|
|
+// String comCode = "";
|
|
|
|
|
|
|
|
@Value("${ya.callbackUrl}")
|
|
@Value("${ya.callbackUrl}")
|
|
|
String callbackUrl;
|
|
String callbackUrl;
|
|
@@ -74,35 +78,48 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
|
|
|
|
|
private final EsmInsCompanyService esmInsCompanyService;
|
|
private final EsmInsCompanyService esmInsCompanyService;
|
|
|
|
|
|
|
|
- public YongAnOrderServiceImpl(InsAreaCompanyService insAreaCompanyService, InsOrdersService insOrdersService, InsTaskImagesService insTaskImagesService, EsmInsCompanyService esmInsCompanyService) {
|
|
|
|
|
|
|
+ private final PtlAgreementAttributionService ptlAgreementAttributionService;
|
|
|
|
|
+
|
|
|
|
|
+ private final ConfigureParametersComponents configureParametersComponents;
|
|
|
|
|
+
|
|
|
|
|
+ public YongAnOrderServiceImpl(InsAreaCompanyService insAreaCompanyService, InsOrdersService insOrdersService, InsTaskImagesService insTaskImagesService, EsmInsCompanyService esmInsCompanyService, PtlAgreementAttributionService ptlAgreementAttributionService, ConfigureParametersComponents configureParametersComponents) {
|
|
|
this.insAreaCompanyService = insAreaCompanyService;
|
|
this.insAreaCompanyService = insAreaCompanyService;
|
|
|
this.insOrdersService = insOrdersService;
|
|
this.insOrdersService = insOrdersService;
|
|
|
this.insTaskImagesService = insTaskImagesService;
|
|
this.insTaskImagesService = insTaskImagesService;
|
|
|
this.esmInsCompanyService = esmInsCompanyService;
|
|
this.esmInsCompanyService = esmInsCompanyService;
|
|
|
|
|
+ this.ptlAgreementAttributionService = ptlAgreementAttributionService;
|
|
|
|
|
+ this.configureParametersComponents = configureParametersComponents;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- @Override
|
|
|
|
|
- public List<CarModelDTO> vinSearch(String vin) {
|
|
|
|
|
- CarModel_Req carModelReq = new CarModel_Req();
|
|
|
|
|
- carModelReq.setFrameNo(vin); // 车架号
|
|
|
|
|
- try {
|
|
|
|
|
- ResponseDataC1 responseDataC1 = getResponseDataC1(carModelReq);
|
|
|
|
|
- List<CarModelDTO> carModel = responseDataC1.getResponseBody().getCarModel();
|
|
|
|
|
- if (!carModel.isEmpty()) {
|
|
|
|
|
- return carModel;
|
|
|
|
|
- }
|
|
|
|
|
- } catch (Exception ignored) {
|
|
|
|
|
- }
|
|
|
|
|
- return Collections.emptyList();
|
|
|
|
|
- }
|
|
|
|
|
|
|
+// @Override
|
|
|
|
|
+// public List<CarModelDTO> vinSearch(String vin) {
|
|
|
|
|
+// CarModel_Req carModelReq = new CarModel_Req();
|
|
|
|
|
+// carModelReq.setFrameNo(vin); // 车架号
|
|
|
|
|
+// try {
|
|
|
|
|
+// ResponseDataC1 responseDataC1 = getResponseDataC1(carModelReq);
|
|
|
|
|
+// List<CarModelDTO> carModel = responseDataC1.getResponseBody().getCarModel();
|
|
|
|
|
+// if (!carModel.isEmpty()) {
|
|
|
|
|
+// return carModel;
|
|
|
|
|
+// }
|
|
|
|
|
+// } catch (Exception ignored) {
|
|
|
|
|
+// }
|
|
|
|
|
+// return Collections.emptyList();
|
|
|
|
|
+// }
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public HttpResult quote(BaseQuoteInfoVo quoteInfoVo, BaseQuoteVo<Object> quoteVo) {
|
|
public HttpResult quote(BaseQuoteInfoVo quoteInfoVo, BaseQuoteVo<Object> quoteVo) {
|
|
|
- EsmInsCompany esmInsCompany = esmInsCompanyService.isOpen(quoteVo.getCompanyId());
|
|
|
|
|
|
|
|
|
|
|
|
+ // 1. 协议id获取配置实体
|
|
|
|
|
+ String agreementId = quoteVo.getAgreementId();
|
|
|
|
|
+ // 账号信息
|
|
|
|
|
+ PtlAgreementAttribution ptlAgreementAttribution = ptlAgreementAttributionService.getById(agreementId);
|
|
|
|
|
+ YaConfigureParameters yaConfigureParameters = new YaConfigureParameters();
|
|
|
|
|
+ configureParametersComponents.toEntity(yaConfigureParameters, ptlAgreementAttribution);
|
|
|
|
|
+
|
|
|
|
|
+ EsmInsCompany esmInsCompany = esmInsCompanyService.getById(ptlAgreementAttribution.getInsCompanyId());
|
|
|
HttpResult httpResult = new HttpResult();
|
|
HttpResult httpResult = new HttpResult();
|
|
|
RequestData requestData = new RequestData();
|
|
RequestData requestData = new RequestData();
|
|
|
- RequestHead requestHead = getRequestHead("C2");
|
|
|
|
|
|
|
+ RequestHead requestHead = getRequestHead("C2", yaConfigureParameters);
|
|
|
RequestBodyC2 requestBodyC2 = new RequestBodyC2();
|
|
RequestBodyC2 requestBodyC2 = new RequestBodyC2();
|
|
|
ResponseDataC2 responseDataC2;
|
|
ResponseDataC2 responseDataC2;
|
|
|
ObjectMapper mapper = new XmlMapper();
|
|
ObjectMapper mapper = new XmlMapper();
|
|
@@ -132,12 +149,12 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
carModelReq.setFrameNo(carInfo.getFrameNo()); // 车架号
|
|
carModelReq.setFrameNo(carInfo.getFrameNo()); // 车架号
|
|
|
carModelReq.setEnrollDate(carInfo.getRegisterDate()); // 初登日期
|
|
carModelReq.setEnrollDate(carInfo.getRegisterDate()); // 初登日期
|
|
|
carModelReq.setEngineNo(carInfo.getEngineNo()); //发动机号
|
|
carModelReq.setEngineNo(carInfo.getEngineNo()); //发动机号
|
|
|
- ResponseDataC1 responseDataC1 = getResponseDataC1(carModelReq);
|
|
|
|
|
|
|
+ ResponseDataC1 responseDataC1 = getResponseDataC1(carModelReq, yaConfigureParameters);
|
|
|
|
|
|
|
|
// 无法通过车架号查出车型 通过车型查询
|
|
// 无法通过车架号查出车型 通过车型查询
|
|
|
if ("100001".equals(responseDataC1.getResponseHead().getAppCode())) {
|
|
if ("100001".equals(responseDataC1.getResponseHead().getAppCode())) {
|
|
|
carModelReq.setModelName(carInfo.getModelcname());
|
|
carModelReq.setModelName(carInfo.getModelcname());
|
|
|
- responseDataC1 = getResponseDataC1(carModelReq);
|
|
|
|
|
|
|
+ responseDataC1 = getResponseDataC1(carModelReq, yaConfigureParameters);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if (responseDataC1.getResponseHead().getAppMessage().contains("对应精友车型代码为:")) {
|
|
if (responseDataC1.getResponseHead().getAppMessage().contains("对应精友车型代码为:")) {
|
|
@@ -147,7 +164,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
int i = appMessage.indexOf(":");
|
|
int i = appMessage.indexOf(":");
|
|
|
String substring = appMessage.substring(i + 1);
|
|
String substring = appMessage.substring(i + 1);
|
|
|
carModelReq.setModelCode(substring);
|
|
carModelReq.setModelCode(substring);
|
|
|
- responseDataC1 = getResponseDataC1(carModelReq);
|
|
|
|
|
|
|
+ responseDataC1 = getResponseDataC1(carModelReq, yaConfigureParameters);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if (!responseDataC1.getResponseHead().getStatus().equals("0")) {
|
|
if (!responseDataC1.getResponseHead().getStatus().equals("0")) {
|
|
@@ -251,7 +268,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
DeviceItem[] devices = new DeviceItem[0];
|
|
DeviceItem[] devices = new DeviceItem[0];
|
|
|
ChargingPileDTO[] chargingPiles = new ChargingPileDTO[0];
|
|
ChargingPileDTO[] chargingPiles = new ChargingPileDTO[0];
|
|
|
ExtendInfoDto[] extendInfo = new ExtendInfoDto[2];
|
|
ExtendInfoDto[] extendInfo = new ExtendInfoDto[2];
|
|
|
- extendInfo[0] = new ExtendInfoDto("matchCode", matchCode);
|
|
|
|
|
|
|
+ extendInfo[0] = new ExtendInfoDto("matchCode", yaConfigureParameters.getMatchCode());
|
|
|
|
|
|
|
|
requestBodyC2.setDevices(devices);
|
|
requestBodyC2.setDevices(devices);
|
|
|
requestBodyC2.setChargingPiles(chargingPiles);
|
|
requestBodyC2.setChargingPiles(chargingPiles);
|
|
@@ -260,7 +277,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
log.info("===永安--报价接口开始请求===");
|
|
log.info("===永安--报价接口开始请求===");
|
|
|
requestData.setRequestHead(requestHead);
|
|
requestData.setRequestHead(requestHead);
|
|
|
requestData.setRequestBody(requestBodyC2);
|
|
requestData.setRequestBody(requestBodyC2);
|
|
|
- String responseString = httpPost(mapper, requestData);
|
|
|
|
|
|
|
+ String responseString = httpPost(mapper, requestData, yaConfigureParameters.getConsumerAccessKey());
|
|
|
responseDataC2 = mapper.readValue(responseString, ResponseDataC2.class);
|
|
responseDataC2 = mapper.readValue(responseString, ResponseDataC2.class);
|
|
|
|
|
|
|
|
// 6.1 替换成正确的车型重新
|
|
// 6.1 替换成正确的车型重新
|
|
@@ -272,7 +289,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
String substring = appMessage.substring(i + 1, i1);
|
|
String substring = appMessage.substring(i + 1, i1);
|
|
|
carModelReq.setModelCode(substring);
|
|
carModelReq.setModelCode(substring);
|
|
|
|
|
|
|
|
- responseDataC1 = getResponseDataC1(carModelReq);
|
|
|
|
|
|
|
+ responseDataC1 = getResponseDataC1(carModelReq, yaConfigureParameters);
|
|
|
responseBody = responseDataC1.getResponseBody();
|
|
responseBody = responseDataC1.getResponseBody();
|
|
|
carModel = responseBody.getCarModel();
|
|
carModel = responseBody.getCarModel();
|
|
|
CarModelDTO carModelDTO1 = carModel.get(0);
|
|
CarModelDTO carModelDTO1 = carModel.get(0);
|
|
@@ -282,7 +299,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
carDTO.setPurchasePrice(Double.parseDouble(carModelDTO1.getReplacementValue()));
|
|
carDTO.setPurchasePrice(Double.parseDouble(carModelDTO1.getReplacementValue()));
|
|
|
requestBodyC2.setCars(carDTO);
|
|
requestBodyC2.setCars(carDTO);
|
|
|
log.info(carModel.toString());
|
|
log.info(carModel.toString());
|
|
|
- responseString = httpPost(mapper, requestData);
|
|
|
|
|
|
|
+ responseString = httpPost(mapper, requestData, yaConfigureParameters.getConsumerAccessKey());
|
|
|
responseDataC2 = mapper.readValue(responseString, ResponseDataC2.class);
|
|
responseDataC2 = mapper.readValue(responseString, ResponseDataC2.class);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -315,7 +332,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
QuoteRespVo quoteRespVo = getQuoteRespVo(orderNo, carDTO, responseBodyC2);
|
|
QuoteRespVo quoteRespVo = getQuoteRespVo(orderNo, carDTO, responseBodyC2);
|
|
|
quoteRespVo.setExtendInfo(yaExtendInfoDto);
|
|
quoteRespVo.setExtendInfo(yaExtendInfoDto);
|
|
|
//8 生成订单
|
|
//8 生成订单
|
|
|
- return responseOrder(quoteInfoVo.getOrderNo(), quoteRespVo, requestData, responseDataC2, jq_falg, esmInsCompany);
|
|
|
|
|
|
|
+ return responseOrder(quoteInfoVo.getOrderNo(), quoteRespVo, requestData, responseDataC2, jq_falg, esmInsCompany, agreementId, ptlAgreementAttribution.getApiType());
|
|
|
} catch (SystemException e) {
|
|
} catch (SystemException e) {
|
|
|
return HttpResult.error(e.getMessage());
|
|
return HttpResult.error(e.getMessage());
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
@@ -327,9 +344,14 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
@Override
|
|
@Override
|
|
|
public HttpResult audit(String companyId) {
|
|
public HttpResult audit(String companyId) {
|
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(companyId);
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(companyId);
|
|
|
|
|
+
|
|
|
|
|
+ // 账号配置
|
|
|
|
|
+ YaConfigureParameters yaConfigureParameters = new YaConfigureParameters();
|
|
|
|
|
+ configureParametersComponents.toEntity(yaConfigureParameters, insAreaCompany.getAgreementId());
|
|
|
|
|
+
|
|
|
InsOrders orders = insOrdersService.getById(insAreaCompany.getOrderno());
|
|
InsOrders orders = insOrdersService.getById(insAreaCompany.getOrderno());
|
|
|
RequestData requestData = new RequestData();
|
|
RequestData requestData = new RequestData();
|
|
|
- RequestHead requestHead = getRequestHead("C3");
|
|
|
|
|
|
|
+ RequestHead requestHead = getRequestHead("C3", yaConfigureParameters);
|
|
|
RequestBodyC3 requestBodyC3 = new RequestBodyC3();
|
|
RequestBodyC3 requestBodyC3 = new RequestBodyC3();
|
|
|
ResponseDataC3 responseDataC3 = new ResponseDataC3();
|
|
ResponseDataC3 responseDataC3 = new ResponseDataC3();
|
|
|
ObjectMapper mapper = new XmlMapper();
|
|
ObjectMapper mapper = new XmlMapper();
|
|
@@ -369,7 +391,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
requestData.setRequestHead(requestHead);
|
|
requestData.setRequestHead(requestHead);
|
|
|
requestData.getRequestHead().setSeqNo(insAreaCompany.getId());//支付后保单同步接口根据此号进行同步
|
|
requestData.getRequestHead().setSeqNo(insAreaCompany.getId());//支付后保单同步接口根据此号进行同步
|
|
|
requestData.setRequestBody(requestBodyC3);
|
|
requestData.setRequestBody(requestBodyC3);
|
|
|
- String responseString = httpPost(mapper, requestData);
|
|
|
|
|
|
|
+ String responseString = httpPost(mapper, requestData, yaConfigureParameters.getConsumerAccessKey());
|
|
|
responseDataC3 = mapper.readValue(responseString, ResponseDataC3.class);
|
|
responseDataC3 = mapper.readValue(responseString, ResponseDataC3.class);
|
|
|
System.out.println(responseDataC3);
|
|
System.out.println(responseDataC3);
|
|
|
if (!responseDataC3.getResponseHead().getStatus().equals("0")) {
|
|
if (!responseDataC3.getResponseHead().getStatus().equals("0")) {
|
|
@@ -438,6 +460,10 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
public HttpResult submitImage(String companyId) {
|
|
public HttpResult submitImage(String companyId) {
|
|
|
try {
|
|
try {
|
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getById(companyId);
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getById(companyId);
|
|
|
|
|
+ // 账号配置
|
|
|
|
|
+ YaConfigureParameters yaConfigureParameters = new YaConfigureParameters();
|
|
|
|
|
+ configureParametersComponents.toEntity(yaConfigureParameters, insAreaCompany.getAgreementId());
|
|
|
|
|
+
|
|
|
InsOrders insOrders = insOrdersService.existOrder(insAreaCompany.getOrderno());
|
|
InsOrders insOrders = insOrdersService.existOrder(insAreaCompany.getOrderno());
|
|
|
List<InsTaskImagesBase64> insTaskImagesBase64s = insTaskImagesService.findByOrderNo(insOrders.getOrderno());
|
|
List<InsTaskImagesBase64> insTaskImagesBase64s = insTaskImagesService.findByOrderNo(insOrders.getOrderno());
|
|
|
if (insTaskImagesBase64s.isEmpty()) {
|
|
if (insTaskImagesBase64s.isEmpty()) {
|
|
@@ -445,7 +471,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
RequestData requestData = new RequestData();
|
|
RequestData requestData = new RequestData();
|
|
|
- RequestHead requestHead = getRequestHead("B25");
|
|
|
|
|
|
|
+ RequestHead requestHead = getRequestHead("B25", yaConfigureParameters);
|
|
|
RequestBodyB25 requestBodyB25 = new RequestBodyB25();
|
|
RequestBodyB25 requestBodyB25 = new RequestBodyB25();
|
|
|
ObjectMapper mapper = new XmlMapper();
|
|
ObjectMapper mapper = new XmlMapper();
|
|
|
mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
|
|
mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
|
|
@@ -456,8 +482,8 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
InsTaskImagesBase64 insTaskImagesBase64 = insTaskImagesBase64s.get(i);
|
|
InsTaskImagesBase64 insTaskImagesBase64 = insTaskImagesBase64s.get(i);
|
|
|
String image = insTaskImagesBase64.getBase64String();
|
|
String image = insTaskImagesBase64.getBase64String();
|
|
|
requestBodyB25.setBussNo("yx" + insAreaCompany.getId());
|
|
requestBodyB25.setBussNo("yx" + insAreaCompany.getId());
|
|
|
- requestBodyB25.setUserCode(userCode);
|
|
|
|
|
- requestBodyB25.setComCode(comCode);
|
|
|
|
|
|
|
+ requestBodyB25.setUserCode(yaConfigureParameters.getUserCode());
|
|
|
|
|
+ requestBodyB25.setComCode(yaConfigureParameters.getComCode());
|
|
|
requestBodyB25.setFile(image);
|
|
requestBodyB25.setFile(image);
|
|
|
String fileName = "";
|
|
String fileName = "";
|
|
|
String fileName1 = insTaskImagesBase64s.get(i).getFileName();
|
|
String fileName1 = insTaskImagesBase64s.get(i).getFileName();
|
|
@@ -480,7 +506,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
log.info("===永安--上传影像开始请求===");
|
|
log.info("===永安--上传影像开始请求===");
|
|
|
requestData.setRequestHead(requestHead);
|
|
requestData.setRequestHead(requestHead);
|
|
|
requestData.setRequestBody(requestBodyB25);
|
|
requestData.setRequestBody(requestBodyB25);
|
|
|
- String responseString = httpPost(mapper, requestData);
|
|
|
|
|
|
|
+ String responseString = httpPost(mapper, requestData, yaConfigureParameters.getConsumerAccessKey());
|
|
|
ResponseDataB25 responseDataB25 = mapper.readValue(responseString, ResponseDataB25.class);
|
|
ResponseDataB25 responseDataB25 = mapper.readValue(responseString, ResponseDataB25.class);
|
|
|
if (!responseDataB25.getResponseHead().getStatus().equals("0")) {
|
|
if (!responseDataB25.getResponseHead().getStatus().equals("0")) {
|
|
|
return HttpResult.error("永安--上传影像失败:" + responseDataB25.getResponseHead().getAppMessage());
|
|
return HttpResult.error("永安--上传影像失败:" + responseDataB25.getResponseHead().getAppMessage());
|
|
@@ -504,9 +530,13 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(companyId);
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(companyId);
|
|
|
|
|
+ // 账号配置
|
|
|
|
|
+ YaConfigureParameters yaConfigureParameters = new YaConfigureParameters();
|
|
|
|
|
+ configureParametersComponents.toEntity(yaConfigureParameters, insAreaCompany.getAgreementId());
|
|
|
|
|
+
|
|
|
InsOrders insOrders = insOrdersService.getById(insAreaCompany.getOrderno());
|
|
InsOrders insOrders = insOrdersService.getById(insAreaCompany.getOrderno());
|
|
|
RequestData requestData = new RequestData();
|
|
RequestData requestData = new RequestData();
|
|
|
- RequestHead requestHead = getRequestHead("B7");
|
|
|
|
|
|
|
+ RequestHead requestHead = getRequestHead("B7", yaConfigureParameters);
|
|
|
RequestBodyB7 requestBodyB7 = new RequestBodyB7();
|
|
RequestBodyB7 requestBodyB7 = new RequestBodyB7();
|
|
|
ResponseDataB7 responseDataB7 = new ResponseDataB7();
|
|
ResponseDataB7 responseDataB7 = new ResponseDataB7();
|
|
|
ObjectMapper mapper = new XmlMapper();
|
|
ObjectMapper mapper = new XmlMapper();
|
|
@@ -531,14 +561,14 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
privy.add(privyDTO);
|
|
privy.add(privyDTO);
|
|
|
privy.add(privyDTO2);
|
|
privy.add(privyDTO2);
|
|
|
ExtendInfoDto[] extendInfo = new ExtendInfoDto[1];
|
|
ExtendInfoDto[] extendInfo = new ExtendInfoDto[1];
|
|
|
- extendInfo[0] = new ExtendInfoDto("matchCode", matchCode);
|
|
|
|
|
|
|
+ extendInfo[0] = new ExtendInfoDto("matchCode", yaConfigureParameters.getMatchCode());
|
|
|
requestBodyB7.setExtendInfo(extendInfo);
|
|
requestBodyB7.setExtendInfo(extendInfo);
|
|
|
requestBodyB7.setPrivy(privy);
|
|
requestBodyB7.setPrivy(privy);
|
|
|
//2 接口请求
|
|
//2 接口请求
|
|
|
log.info("===永安--获取短信验证码接口开始请求===");
|
|
log.info("===永安--获取短信验证码接口开始请求===");
|
|
|
requestData.setRequestHead(requestHead);
|
|
requestData.setRequestHead(requestHead);
|
|
|
requestData.setRequestBody(requestBodyB7);
|
|
requestData.setRequestBody(requestBodyB7);
|
|
|
- String responseString = httpPost(mapper, requestData);
|
|
|
|
|
|
|
+ String responseString = httpPost(mapper, requestData, yaConfigureParameters.getConsumerAccessKey());
|
|
|
responseDataB7 = mapper.readValue(responseString, ResponseDataB7.class);
|
|
responseDataB7 = mapper.readValue(responseString, ResponseDataB7.class);
|
|
|
if (!responseDataB7.getResponseHead().getStatus().equals("0")) {
|
|
if (!responseDataB7.getResponseHead().getStatus().equals("0")) {
|
|
|
return HttpResult.error("永安--获取短信验证码接口失败:" + responseDataB7.getResponseHead().getAppMessage());
|
|
return HttpResult.error("永安--获取短信验证码接口失败:" + responseDataB7.getResponseHead().getAppMessage());
|
|
@@ -561,11 +591,11 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(yaPayUrlVo.getCompanyId());
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(yaPayUrlVo.getCompanyId());
|
|
|
- if (insAreaCompany == null) {
|
|
|
|
|
- return HttpResult.error("子订单不存在");
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ // 账号配置
|
|
|
|
|
+ YaConfigureParameters yaConfigureParameters = new YaConfigureParameters();
|
|
|
|
|
+ configureParametersComponents.toEntity(yaConfigureParameters, insAreaCompany.getAgreementId());
|
|
|
RequestData requestData = new RequestData();
|
|
RequestData requestData = new RequestData();
|
|
|
- RequestHead requestHead = getRequestHead("B13");
|
|
|
|
|
|
|
+ RequestHead requestHead = getRequestHead("B13", yaConfigureParameters);
|
|
|
RequestBodyB13 requestBodyB13 = new RequestBodyB13();
|
|
RequestBodyB13 requestBodyB13 = new RequestBodyB13();
|
|
|
ResponseDataB13 responseDataB13 = new ResponseDataB13();
|
|
ResponseDataB13 responseDataB13 = new ResponseDataB13();
|
|
|
ObjectMapper mapper = new XmlMapper();
|
|
ObjectMapper mapper = new XmlMapper();
|
|
@@ -578,7 +608,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
log.info("===永安--提交短信验证码接口开始请求===");
|
|
log.info("===永安--提交短信验证码接口开始请求===");
|
|
|
requestData.setRequestHead(requestHead);
|
|
requestData.setRequestHead(requestHead);
|
|
|
requestData.setRequestBody(requestBodyB13);
|
|
requestData.setRequestBody(requestBodyB13);
|
|
|
- String responseString = httpPost(mapper, requestData);
|
|
|
|
|
|
|
+ String responseString = httpPost(mapper, requestData, yaConfigureParameters.getConsumerAccessKey());
|
|
|
responseDataB13 = mapper.readValue(responseString, ResponseDataB13.class);
|
|
responseDataB13 = mapper.readValue(responseString, ResponseDataB13.class);
|
|
|
if (!responseDataB13.getResponseHead().getStatus().equals("0")) {
|
|
if (!responseDataB13.getResponseHead().getStatus().equals("0")) {
|
|
|
return HttpResult.error("永安--提交短信验证码接口失败:" + responseDataB13.getResponseHead().getAppMessage());
|
|
return HttpResult.error("永安--提交短信验证码接口失败:" + responseDataB13.getResponseHead().getAppMessage());
|
|
@@ -635,12 +665,12 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
HttpResult httpResult = new HttpResult();
|
|
HttpResult httpResult = new HttpResult();
|
|
|
try {
|
|
try {
|
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(companyId);
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(companyId);
|
|
|
- if (insAreaCompany == null) {
|
|
|
|
|
- return HttpResult.error("子订单不存在");
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ // 账号配置
|
|
|
|
|
+ YaConfigureParameters yaConfigureParameters = new YaConfigureParameters();
|
|
|
|
|
+ configureParametersComponents.toEntity(yaConfigureParameters, insAreaCompany.getAgreementId());
|
|
|
|
|
|
|
|
RequestData requestData = new RequestData();
|
|
RequestData requestData = new RequestData();
|
|
|
- RequestHead requestHead = getRequestHead("B21");
|
|
|
|
|
|
|
+ RequestHead requestHead = getRequestHead("B21", yaConfigureParameters);
|
|
|
RequestBodyB21 requestBodyB21 = new RequestBodyB21();
|
|
RequestBodyB21 requestBodyB21 = new RequestBodyB21();
|
|
|
ResponseDataB21 responseDataB21 = new ResponseDataB21();
|
|
ResponseDataB21 responseDataB21 = new ResponseDataB21();
|
|
|
ObjectMapper mapper = new XmlMapper();
|
|
ObjectMapper mapper = new XmlMapper();
|
|
@@ -659,7 +689,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
log.info("===永安--获取电子保单接口开始请求===");
|
|
log.info("===永安--获取电子保单接口开始请求===");
|
|
|
requestData.setRequestHead(requestHead);
|
|
requestData.setRequestHead(requestHead);
|
|
|
requestData.setRequestBody(requestBodyB21);
|
|
requestData.setRequestBody(requestBodyB21);
|
|
|
- String responseString = httpPost(mapper, requestData);
|
|
|
|
|
|
|
+ String responseString = httpPost(mapper, requestData, yaConfigureParameters.getConsumerAccessKey());
|
|
|
responseDataB21 = mapper.readValue(responseString, ResponseDataB21.class);
|
|
responseDataB21 = mapper.readValue(responseString, ResponseDataB21.class);
|
|
|
System.out.println(responseDataB21);
|
|
System.out.println(responseDataB21);
|
|
|
ResponseBodyB21 responseBody21 = responseDataB21.getResponseBody();
|
|
ResponseBodyB21 responseBody21 = responseDataB21.getResponseBody();
|
|
@@ -680,11 +710,11 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
return httpResult;
|
|
return httpResult;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private RequestHead getRequestHead(String type) {
|
|
|
|
|
|
|
+ private RequestHead getRequestHead(String type, YaConfigureParameters yaConfigureParameters) {
|
|
|
RequestHead requestHead = new RequestHead();
|
|
RequestHead requestHead = new RequestHead();
|
|
|
requestHead.setSeqNo(geneReqNo());
|
|
requestHead.setSeqNo(geneReqNo());
|
|
|
- requestHead.setConsumerID(consumerID);
|
|
|
|
|
- requestHead.setConsumerAccessKey(consumerAccessKeyInit);
|
|
|
|
|
|
|
+ requestHead.setConsumerID(yaConfigureParameters.getConsumerID());
|
|
|
|
|
+ requestHead.setConsumerAccessKey(yaConfigureParameters.getConsumerAccessKey());
|
|
|
requestHead.setTransCode(type);
|
|
requestHead.setTransCode(type);
|
|
|
requestHead.setRegionCode("D");
|
|
requestHead.setRegionCode("D");
|
|
|
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
@@ -698,11 +728,11 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
- public ResponseDataC1 getResponseDataC1(CarModel_Req carModelReq) throws Exception {
|
|
|
|
|
|
|
+ public ResponseDataC1 getResponseDataC1(CarModel_Req carModelReq, YaConfigureParameters yaConfigureParameters) throws Exception {
|
|
|
ResponseDataC1 responseDataC1;
|
|
ResponseDataC1 responseDataC1;
|
|
|
ObjectMapper mapper = new XmlMapper();
|
|
ObjectMapper mapper = new XmlMapper();
|
|
|
RequestData requestData = new RequestData();
|
|
RequestData requestData = new RequestData();
|
|
|
- RequestHead requestHead = getRequestHead("C1");
|
|
|
|
|
|
|
+ RequestHead requestHead = getRequestHead("C1", yaConfigureParameters);
|
|
|
|
|
|
|
|
RequestBodyC1 requestBody = new RequestBodyC1();
|
|
RequestBodyC1 requestBody = new RequestBodyC1();
|
|
|
|
|
|
|
@@ -715,20 +745,20 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
requestBody.setLicenseNo(carModelReq.getLicenseNo());
|
|
requestBody.setLicenseNo(carModelReq.getLicenseNo());
|
|
|
requestBody.setModelCode(carModelReq.getModelCode());
|
|
requestBody.setModelCode(carModelReq.getModelCode());
|
|
|
ExtendInfoDto[] extendInfo = new ExtendInfoDto[1];
|
|
ExtendInfoDto[] extendInfo = new ExtendInfoDto[1];
|
|
|
- extendInfo[0] = new ExtendInfoDto("matchCode", matchCode);
|
|
|
|
|
|
|
+ extendInfo[0] = new ExtendInfoDto("matchCode", yaConfigureParameters.getMatchCode());
|
|
|
requestBody.setExtendInfo(extendInfo);
|
|
requestBody.setExtendInfo(extendInfo);
|
|
|
requestData.setRequestHead(requestHead);
|
|
requestData.setRequestHead(requestHead);
|
|
|
requestData.setRequestBody(requestBody);
|
|
requestData.setRequestBody(requestBody);
|
|
|
log.info("===永安--车型查询接口开始请求===");
|
|
log.info("===永安--车型查询接口开始请求===");
|
|
|
- String responseString = httpPost(mapper, requestData);
|
|
|
|
|
|
|
+ String responseString = httpPost(mapper, requestData, yaConfigureParameters.getConsumerAccessKey());
|
|
|
responseDataC1 = mapper.readValue(responseString, ResponseDataC1.class);
|
|
responseDataC1 = mapper.readValue(responseString, ResponseDataC1.class);
|
|
|
return responseDataC1;
|
|
return responseDataC1;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private String httpPost(ObjectMapper mapper, RequestData requestData) throws Exception {
|
|
|
|
|
|
|
+ private String httpPost(ObjectMapper mapper, RequestData requestData, String consumerAccessKeyInit) throws Exception {
|
|
|
//加签
|
|
//加签
|
|
|
String xmlString_sign = mapper.writeValueAsString(requestData);
|
|
String xmlString_sign = mapper.writeValueAsString(requestData);
|
|
|
- String consumerAccessKey = getConsumerAccessKey(xmlString_sign);
|
|
|
|
|
|
|
+ String consumerAccessKey = getConsumerAccessKey(xmlString_sign, consumerAccessKeyInit);
|
|
|
//替换签名,请求接口
|
|
//替换签名,请求接口
|
|
|
requestData.getRequestHead().setConsumerAccessKey(consumerAccessKey);
|
|
requestData.getRequestHead().setConsumerAccessKey(consumerAccessKey);
|
|
|
String xmlString = mapper.writeValueAsString(requestData);
|
|
String xmlString = mapper.writeValueAsString(requestData);
|
|
@@ -738,7 +768,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
return s;
|
|
return s;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- public String getConsumerAccessKey(String xmlString) throws Exception {
|
|
|
|
|
|
|
+ public String getConsumerAccessKey(String xmlString, String consumerAccessKeyInit) throws Exception {
|
|
|
String consumerAccessKey = "";
|
|
String consumerAccessKey = "";
|
|
|
xmlString = xmlString.substring(xmlString.lastIndexOf("<requestBody>") + 13, xmlString.lastIndexOf("</requestBody>"));
|
|
xmlString = xmlString.substring(xmlString.lastIndexOf("<requestBody>") + 13, xmlString.lastIndexOf("</requestBody>"));
|
|
|
consumerAccessKey = HMAC256Uitil.hmac256(xmlString, consumerAccessKeyInit);
|
|
consumerAccessKey = HMAC256Uitil.hmac256(xmlString, consumerAccessKeyInit);
|
|
@@ -1061,13 +1091,16 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
return b1.add(b2).doubleValue();
|
|
return b1.add(b2).doubleValue();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private HttpResult responseOrder(String orderNo, QuoteRespVo quoteRespVo, RequestData requestData, ResponseDataC2 responseDataC2, boolean jq_falg, EsmInsCompany esmInsCompany) {
|
|
|
|
|
|
|
+ private HttpResult<QuoteRespVo> responseOrder(String orderNo, QuoteRespVo quoteRespVo, RequestData requestData, ResponseDataC2 responseDataC2, boolean jq_falg, EsmInsCompany esmInsCompany, String agreementId, Integer apiType) {
|
|
|
//保存订单信息
|
|
//保存订单信息
|
|
|
|
|
|
|
|
if (responseDataC2.getResponseHead().getStatus() != null && responseDataC2.getResponseHead().getStatus().equals("0")) {
|
|
if (responseDataC2.getResponseHead().getStatus() != null && responseDataC2.getResponseHead().getStatus().equals("0")) {
|
|
|
InsAreaCompany insAreaCompany = new InsAreaCompany();
|
|
InsAreaCompany insAreaCompany = new InsAreaCompany();
|
|
|
insAreaCompany.setId(IdGenerate.nextId());
|
|
insAreaCompany.setId(IdGenerate.nextId());
|
|
|
insAreaCompany.setOrderno(orderNo);
|
|
insAreaCompany.setOrderno(orderNo);
|
|
|
|
|
+ // 协议id
|
|
|
|
|
+ insAreaCompany.setAgreementId(agreementId);
|
|
|
|
|
+ insAreaCompany.setApiType(apiType);
|
|
|
//报价成功更新险种信息
|
|
//报价成功更新险种信息
|
|
|
ResponseBodyC2 responseBody = responseDataC2.getResponseBody();
|
|
ResponseBodyC2 responseBody = responseDataC2.getResponseBody();
|
|
|
insAreaCompany.setKindinfo(JSON.parseArray(JSON.toJSONString(quoteRespVo.getKindList())));
|
|
insAreaCompany.setKindinfo(JSON.parseArray(JSON.toJSONString(quoteRespVo.getKindList())));
|
|
@@ -1082,6 +1115,8 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
|
|
|
insAreaCompany.setInscompany(esmInsCompany.getId());
|
|
insAreaCompany.setInscompany(esmInsCompany.getId());
|
|
|
insAreaCompany.setInscompany(esmInsCompany.getNamesimple());
|
|
insAreaCompany.setInscompany(esmInsCompany.getNamesimple());
|
|
|
insAreaCompany.setTaxArrears(JSON.parseArray(JSON.toJSONString(quoteRespVo.getTaxArrears())));
|
|
insAreaCompany.setTaxArrears(JSON.parseArray(JSON.toJSONString(quoteRespVo.getTaxArrears())));
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
insAreaCompanyService.save(insAreaCompany);
|
|
insAreaCompanyService.save(insAreaCompany);
|
|
|
insOrdersService.updateByOrderStatus(orderNo, InsOrderStatus.S_0.getCode());
|
|
insOrdersService.updateByOrderStatus(orderNo, InsOrderStatus.S_0.getCode());
|
|
|
quoteRespVo.setCompanyId(insAreaCompany.getId());
|
|
quoteRespVo.setCompanyId(insAreaCompany.getId());
|