|
@@ -7,6 +7,7 @@ import com.jzg.commons.entity.quote.vo.AttributionInformationVo;
|
|
|
import com.jzg.commons.entity.quote.vo.CarInfoVo;
|
|
import com.jzg.commons.entity.quote.vo.CarInfoVo;
|
|
|
import com.jzg.commons.entity.quote.vo.QuoteVo;
|
|
import com.jzg.commons.entity.quote.vo.QuoteVo;
|
|
|
import com.jzg.commons.entity.quote.vo.aggregated.*;
|
|
import com.jzg.commons.entity.quote.vo.aggregated.*;
|
|
|
|
|
+import com.jzg.commons.exception.SystemException;
|
|
|
import com.jzg.commons.util.StringUtils;
|
|
import com.jzg.commons.util.StringUtils;
|
|
|
import com.jzg.quotation.commons.annotation.QuoteCrawlerService;
|
|
import com.jzg.quotation.commons.annotation.QuoteCrawlerService;
|
|
|
import com.jzg.quotation.commons.constant.InsuranceCode;
|
|
import com.jzg.quotation.commons.constant.InsuranceCode;
|
|
@@ -24,6 +25,7 @@ import com.jzg.quotation.zhongmei.crawler.entity.Response.*;
|
|
|
import com.jzg.quotation.zhongmei.crawler.entity.ZmCrawlerConfigureParameters;
|
|
import com.jzg.quotation.zhongmei.crawler.entity.ZmCrawlerConfigureParameters;
|
|
|
import com.jzg.quotation.zhongmei.crawler.entity.dto.SaleInfoDTO;
|
|
import com.jzg.quotation.zhongmei.crawler.entity.dto.SaleInfoDTO;
|
|
|
import com.jzg.quotation.zhongmei.crawler.entity.po.ZmCrawlerOrder;
|
|
import com.jzg.quotation.zhongmei.crawler.entity.po.ZmCrawlerOrder;
|
|
|
|
|
+import com.jzg.quotation.zhongmei.crawler.service.ZhongMeiCrawlerQuoteProcessService;
|
|
|
import com.jzg.quotation.zhongmei.crawler.service.ZhongMeiCrawlerRequest;
|
|
import com.jzg.quotation.zhongmei.crawler.service.ZhongMeiCrawlerRequest;
|
|
|
import com.jzg.quotation.zhongmei.crawler.service.ZmCrawlerOrderService;
|
|
import com.jzg.quotation.zhongmei.crawler.service.ZmCrawlerOrderService;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.RequiredArgsConstructor;
|
|
@@ -45,6 +47,10 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
|
|
|
|
|
|
|
|
private final ZmCrawlerOrderService zmCrawlerOrderService;
|
|
private final ZmCrawlerOrderService zmCrawlerOrderService;
|
|
|
|
|
|
|
|
|
|
+ private final ZhongMeiCrawlerQuoteProcessService zhongMeiCrawlerQuoteProcessService;
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 登录
|
|
* 登录
|
|
|
* @param loginBase 登录信息
|
|
* @param loginBase 登录信息
|
|
@@ -86,11 +92,11 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
|
|
|
ZmCrawlerQuotedPriceRequest quotedPriceRequest = new ZmCrawlerQuotedPriceRequest(zmCrawlerConfigureParameters, quoteVo, saleInfoDTO, fullCarDataDTO, actualValueResponse, userCode, head);
|
|
ZmCrawlerQuotedPriceRequest quotedPriceRequest = new ZmCrawlerQuotedPriceRequest(zmCrawlerConfigureParameters, quoteVo, saleInfoDTO, fullCarDataDTO, actualValueResponse, userCode, head);
|
|
|
ZmCrawlerQuotedPriceResponse quotedPriceResponse = zmCrawlerRequestComponent.quotedPrice(quotedPriceRequest);
|
|
ZmCrawlerQuotedPriceResponse quotedPriceResponse = zmCrawlerRequestComponent.quotedPrice(quotedPriceRequest);
|
|
|
// 3.1 缓存数据
|
|
// 3.1 缓存数据
|
|
|
- zmCrawlerRequestComponent.cacheZmCrawlerSaveResponse(quotedPriceResponse, quotedPriceResponse.getBussinessMain().getContractMainNo());
|
|
|
|
|
-
|
|
|
|
|
- // 4.0 保存数据
|
|
|
|
|
- zmCrawlerOrderService.save(quoteVo,quotedPriceResponse);
|
|
|
|
|
-
|
|
|
|
|
|
|
+ if(quotedPriceResponse.getHead().getReturnCode().equals("0")){
|
|
|
|
|
+ zmCrawlerRequestComponent.cacheZmCrawlerSaveResponse(quotedPriceResponse, quotedPriceResponse.getBussinessMain().getContractMainNo());
|
|
|
|
|
+ // 4.0 保存数据
|
|
|
|
|
+ zmCrawlerOrderService.save(quoteVo,quotedPriceResponse);
|
|
|
|
|
+ }
|
|
|
return ZmCrawlerQuoteResultVoBuild.build(quoteVo, quotedPriceResponse);
|
|
return ZmCrawlerQuoteResultVoBuild.build(quoteVo, quotedPriceResponse);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -106,16 +112,17 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
|
|
|
AttributionInformationVo attributionInformationVo = underwritingVo
|
|
AttributionInformationVo attributionInformationVo = underwritingVo
|
|
|
.getOrder()
|
|
.getOrder()
|
|
|
.getAttributionInformationVo();
|
|
.getAttributionInformationVo();
|
|
|
|
|
+ ZmCrawlerOrder zmCrawlerOrder = zmCrawlerOrderService.findByOrdersNo(underwritingVo.getOrder().getOrdersNo());
|
|
|
String userCode = zmCrawlerRequestComponent.getUserCode(attributionInformationVo.getUsername());
|
|
String userCode = zmCrawlerRequestComponent.getUserCode(attributionInformationVo.getUsername());
|
|
|
String authorization = zmCrawlerRequestComponent.getAuthorization(attributionInformationVo.getUsername());
|
|
String authorization = zmCrawlerRequestComponent.getAuthorization(attributionInformationVo.getUsername());
|
|
|
//获取配置信息
|
|
//获取配置信息
|
|
|
ZmCrawlerConfigureParameters zmCrawlerConfigureParameters = ConfigureParametersConversion.conversionEntity(ZmCrawlerConfigureParameters.class, attributionInformationVo.getConfigInfo());
|
|
ZmCrawlerConfigureParameters zmCrawlerConfigureParameters = ConfigureParametersConversion.conversionEntity(ZmCrawlerConfigureParameters.class, attributionInformationVo.getConfigInfo());
|
|
|
BaseRequestHead head = new BaseRequestHead(authorization, "2");
|
|
BaseRequestHead head = new BaseRequestHead(authorization, "2");
|
|
|
|
|
|
|
|
- ZmCrawlerSubmitRequest submitRequest = new ZmCrawlerSubmitRequest();
|
|
|
|
|
|
|
+ ZmCrawlerSubmitRequest submitRequest = new ZmCrawlerSubmitRequest(zmCrawlerOrder.getBussinessNo(),zmCrawlerConfigureParameters);
|
|
|
submitRequest.setHead(head);
|
|
submitRequest.setHead(head);
|
|
|
ZmCrawlerSubmitResponse submit = zmCrawlerRequestComponent.submit(submitRequest);
|
|
ZmCrawlerSubmitResponse submit = zmCrawlerRequestComponent.submit(submitRequest);
|
|
|
- return null;
|
|
|
|
|
|
|
+ return new UnderwritingResultsVo();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -183,41 +190,46 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
|
|
|
ZmCrawlerConfigureParameters parameters = ConfigureParametersConversion.conversionEntity(ZmCrawlerConfigureParameters.class, attributionInformationVo.getConfigInfo());
|
|
ZmCrawlerConfigureParameters parameters = ConfigureParametersConversion.conversionEntity(ZmCrawlerConfigureParameters.class, attributionInformationVo.getConfigInfo());
|
|
|
|
|
|
|
|
ZmCrawlerOrder crawlerOrder = zmCrawlerOrderService.findByOrdersNo(insuranceUploadImageVo.getOrder().getOrdersNo());
|
|
ZmCrawlerOrder crawlerOrder = zmCrawlerOrderService.findByOrdersNo(insuranceUploadImageVo.getOrder().getOrdersNo());
|
|
|
- //打开影像系统
|
|
|
|
|
- zmCrawlerRequestComponent.startUploadImage(userCode.substring(0,2), authorization, crawlerOrder.getBussinessNo());
|
|
|
|
|
- //生成影像批次号,如果存在多次上传该字段需保存
|
|
|
|
|
- String batchId = MD5.create().digestHex(ZmCrawlerImageConstant.ZM_IMAGE_BATCHID_PRE + crawlerOrder.getBussinessNo());
|
|
|
|
|
|
|
|
|
|
- //导入影像
|
|
|
|
|
- ZmCrawlerImageImportResponse importResponse = null;
|
|
|
|
|
- Map<String, List<Map<String, String>>> docCodeAndImage = new HashMap<>();
|
|
|
|
|
- for (InsuranceImageVo image : insuranceUploadImageVo.getImageVoList()) {
|
|
|
|
|
- List<InsuranceImageVo.ImageDTO> imageBase64List = image.getImageBase64List();
|
|
|
|
|
- if (imageBase64List != null && !imageBase64List.isEmpty()) {
|
|
|
|
|
- //判断照片类型是否属于中煤影像类型,不属于则默认为01
|
|
|
|
|
- String code = Arrays.stream(ZmCrawlerImageConstant.ZM_IMAGE_TYPE).collect(Collectors.toList()).contains(image.getImageCode()) ? image.getImageCode() : "01";
|
|
|
|
|
- ZmCrawlerImageImportRequest imageImportRequest = new ZmCrawlerImageImportRequest(imageBase64List.size(), crawlerOrder.getBussinessNo(), code, batchId);
|
|
|
|
|
- importResponse = zmCrawlerRequestComponent.importImage(imageImportRequest, imageBase64List);
|
|
|
|
|
- if (importResponse != null) {
|
|
|
|
|
- Map<String, Object> result = importResponse.getResult();
|
|
|
|
|
- List<Map<String, String>> maps = docCodeAndImage.get(imageImportRequest.getDocCode());
|
|
|
|
|
- List<Map<String, String>> imageResList = new ArrayList<>();
|
|
|
|
|
- //先判断是否存在一样的图片类型
|
|
|
|
|
- if (maps != null) {
|
|
|
|
|
- imageResList = maps;
|
|
|
|
|
- }
|
|
|
|
|
- for (int i = 0; i < result.size()-1; i++) {
|
|
|
|
|
- imageResList.add((Map<String, String>)result.get(String.valueOf(i)));
|
|
|
|
|
- }
|
|
|
|
|
- docCodeAndImage.put(imageImportRequest.getDocCode(), imageResList);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
|
|
|
|
|
- //上传影像
|
|
|
|
|
- //获取已上传的影像
|
|
|
|
|
- String uploadedXml = zmCrawlerRequestComponent.getUploadedImages(userCode, batchId);
|
|
|
|
|
- String uploadedImages = zmCrawlerRequestComponent.submitImage(parameters, userCode, docCodeAndImage, uploadedXml, crawlerOrder);
|
|
|
|
|
|
|
+ // 上传影像 封装
|
|
|
|
|
+ zhongMeiCrawlerQuoteProcessService.uploadImage(authorization, crawlerOrder, insuranceUploadImageVo.getImageVoList());
|
|
|
|
|
+
|
|
|
|
|
+// //打开影像系统
|
|
|
|
|
+// zmCrawlerRequestComponent.startUploadImage(userCode.substring(0,2), authorization, crawlerOrder.getBussinessNo());
|
|
|
|
|
+// //生成影像批次号,如果存在多次上传该字段需保存
|
|
|
|
|
+// String batchId = MD5.create().digestHex(ZmCrawlerImageConstant.ZM_IMAGE_BATCHID_PRE + crawlerOrder.getBussinessNo());
|
|
|
|
|
+//
|
|
|
|
|
+// //导入影像
|
|
|
|
|
+// ZmCrawlerImageImportResponse importResponse = null;
|
|
|
|
|
+// Map<String, List<Map<String, String>>> docCodeAndImage = new HashMap<>();
|
|
|
|
|
+// for (InsuranceImageVo image : insuranceUploadImageVo.getImageVoList()) {
|
|
|
|
|
+// List<InsuranceImageVo.ImageDTO> imageBase64List = image.getImageBase64List();
|
|
|
|
|
+// if (imageBase64List != null && !imageBase64List.isEmpty()) {
|
|
|
|
|
+// //判断照片类型是否属于中煤影像类型,不属于则默认为01
|
|
|
|
|
+// String code = Arrays.stream(ZmCrawlerImageConstant.ZM_IMAGE_TYPE).collect(Collectors.toList()).contains(image.getImageCode()) ? image.getImageCode() : "01";
|
|
|
|
|
+// ZmCrawlerImageImportRequest imageImportRequest = new ZmCrawlerImageImportRequest(imageBase64List.size(), crawlerOrder.getBussinessNo(), code, batchId);
|
|
|
|
|
+// importResponse = zmCrawlerRequestComponent.importImage(imageImportRequest, imageBase64List);
|
|
|
|
|
+// if (importResponse != null) {
|
|
|
|
|
+// Map<String, Object> result = importResponse.getResult();
|
|
|
|
|
+// List<Map<String, String>> maps = docCodeAndImage.get(imageImportRequest.getDocCode());
|
|
|
|
|
+// List<Map<String, String>> imageResList = new ArrayList<>();
|
|
|
|
|
+// //先判断是否存在一样的图片类型
|
|
|
|
|
+// if (maps != null) {
|
|
|
|
|
+// imageResList = maps;
|
|
|
|
|
+// }
|
|
|
|
|
+// for (int i = 0; i < result.size()-1; i++) {
|
|
|
|
|
+// imageResList.add((Map<String, String>)result.get(String.valueOf(i)));
|
|
|
|
|
+// }
|
|
|
|
|
+// docCodeAndImage.put(imageImportRequest.getDocCode(), imageResList);
|
|
|
|
|
+// }
|
|
|
|
|
+// }
|
|
|
|
|
+// }
|
|
|
|
|
+//
|
|
|
|
|
+// //上传影像
|
|
|
|
|
+// //获取已上传的影像
|
|
|
|
|
+// String uploadedXml = zmCrawlerRequestComponent.getUploadedImages(userCode, batchId);
|
|
|
|
|
+// String uploadedImages = zmCrawlerRequestComponent.submitImage(parameters, userCode, docCodeAndImage, uploadedXml, crawlerOrder);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|