|
|
@@ -4,12 +4,15 @@ import cn.hutool.core.collection.CollectionUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
import com.alibaba.fastjson2.JSONObject;
|
|
|
import com.jzg.commons.constants.dict.InsOrderStatusEnum;
|
|
|
+import com.jzg.commons.core.page.HttpResult;
|
|
|
import com.jzg.commons.entity.orders.po.InsOrdersPolicy;
|
|
|
+import com.jzg.commons.entity.po.SysUploadFiles;
|
|
|
import com.jzg.commons.entity.quote.vo.AccidentalDrivingVo;
|
|
|
import com.jzg.commons.entity.quote.vo.AttributionInformationVo;
|
|
|
import com.jzg.commons.entity.quote.vo.CarInfoVo;
|
|
|
import com.jzg.commons.entity.quote.vo.RiskInfoVo;
|
|
|
import com.jzg.commons.exception.SystemException;
|
|
|
+import com.jzg.quotation.commons.client.PlatformClient;
|
|
|
import com.jzg.quotation.commons.constant.InsuranceCode;
|
|
|
import com.jzg.quotation.commons.entity.vo.aggregated.*;
|
|
|
import com.jzg.quotation.commons.entity.vo.base.OrderBase;
|
|
|
@@ -26,13 +29,17 @@ import com.jzg.quotation.huatai.api.entity.response.*;
|
|
|
import com.jzg.quotation.huatai.api.entity.vo.InsHuataiContributingVo;
|
|
|
import com.jzg.quotation.huatai.api.service.HuaTaiApiOrderService;
|
|
|
import com.jzg.quotation.huatai.api.service.HuaTaiApiRequest;
|
|
|
+import com.jzg.quotation.huatai.api.utils.InMemoryZipExtractor;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
+import java.io.File;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
* @description: 华泰财险
|
|
|
@@ -48,6 +55,10 @@ public class HuaTaiApiRequestImpl implements HuaTaiApiRequest {
|
|
|
private final HuaTaiApiOrderService huaTaiApiOrderService;
|
|
|
|
|
|
private final HuiTaiUploadImageComponent huiTaiUploadImageComponent;
|
|
|
+
|
|
|
+ private final PlatformClient platformClient;
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 报价
|
|
|
*
|
|
|
@@ -152,9 +163,6 @@ public class HuaTaiApiRequestImpl implements HuaTaiApiRequest {
|
|
|
HuaTaiSubmitRequest submitRequest = new HuaTaiSubmitRequest(huaTaiApiOrder, huaTaiParameters, engageList);
|
|
|
HuaTaiSubmitResponse submitResponse = huataiRequestApiComponent.submit(submitRequest, HuaTaiSubmitResponse.class, huaTaiParameters.getInsuredCode());
|
|
|
|
|
|
- // String str = "{\"appliResult\":[{\"contractNo\":\"B2781250425MM000003\",\"notion\":[{\"uWNotion\":\"交强险:2278110022025000020 投保预确认失败 \\n原因:投保业务:投保业务:中国银保信车险平台友情提示:投保(预)确认时间应早于或等于保险起期。\",\"uWResult\":\"您的业务无法正常生成订单,请联系店主15175223697咨询\",\"uWType\":\"CI\"}],\"status\":\"6\"}],\"head\":{\"returnCode\":\"0\",\"returnMessage\":\"成功\",\"token\":\"\",\"transCode\":\"SAVE\",\"transType\":\"RES\"}}";
|
|
|
-
|
|
|
-
|
|
|
log.info("提交保单返回信息:{}", JSONObject.toJSONString(submitResponse));
|
|
|
if ("-1".equals(submitResponse.getHead().getReturnCode())) {
|
|
|
throw new SystemException(submitResponse.getHead().getReturnMessage());
|
|
|
@@ -320,11 +328,12 @@ public class HuaTaiApiRequestImpl implements HuaTaiApiRequest {
|
|
|
HuaTaiConfigureParameters huaTaiParameters = ConfigureParametersConversion.conversionEntity(HuaTaiConfigureParameters.class, attributionInformationVo.getConfigInfo());
|
|
|
HuaTaiInsurancePolicyPrintRequest request = new HuaTaiInsurancePolicyPrintRequest();
|
|
|
request.setHead(new HuaTaiBaseRequestHead(huaTaiParameters));
|
|
|
+ HuaTaiApiOrder huaTaiApiOrder = huaTaiApiOrderService.findByOrdersNo(downloadPolicyVo.getOrder().getOrdersNo());
|
|
|
if (StringUtils.isNotBlank(police.getJqPolicyNo())){
|
|
|
request.setBusinessNo(police.getJqPolicyNo());
|
|
|
HuaTaiInsurancePolicyPrintResponse response = huataiRequestApiComponent.insurancePolicyPrint(request, HuaTaiInsurancePolicyPrintResponse.class, huaTaiParameters.getInsuredCode());
|
|
|
response.getElecDownLoadResultList().forEach(elecDownLoadResultDto -> {
|
|
|
- resultVo.setJqUrl(elecDownLoadResultDto.getDownURL());
|
|
|
+ getPdfLink(elecDownLoadResultDto.getDownURL(), resultVo, true,huaTaiApiOrder.getOwnersInfo().getIdentifyNumber());
|
|
|
});
|
|
|
}
|
|
|
if (StringUtils.isNotBlank(police.getJyPolicyNo())){
|
|
|
@@ -337,6 +346,51 @@ public class HuaTaiApiRequestImpl implements HuaTaiApiRequest {
|
|
|
return resultVo;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ public void getPdfLink(String downURL,DownloadPolicyResultVo resultVo, boolean type,String idCar){
|
|
|
+ try {
|
|
|
+ Map<String, MultipartFile> inputStreamMap = InMemoryZipExtractor.extractFromUrl(downURL, idCar);
|
|
|
+ inputStreamMap.forEach((fileName, file) -> {
|
|
|
+ //saveFile(file);
|
|
|
+ HttpResult<SysUploadFiles> upload = platformClient.upload(file);
|
|
|
+ System.out.println("文件名: " + upload.getData().getDownloadUrl());
|
|
|
+ if (type){
|
|
|
+ if (fileName.contains("bz")){
|
|
|
+ resultVo.setJqFlagUrl(upload.getData().getDownloadUrl());
|
|
|
+ }else {
|
|
|
+ resultVo.setJqUrl(upload.getData().getDownloadUrl());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ }catch (Exception e){
|
|
|
+ log.error("获取保单失败",e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 测试文件
|
|
|
+ * @param file
|
|
|
+ */
|
|
|
+ public void saveFile(MultipartFile file){
|
|
|
+ String targetDir = "F:\\img\\xx";
|
|
|
+ if (file.isEmpty()) {
|
|
|
+ throw new IllegalArgumentException("文件不能为空");
|
|
|
+ }
|
|
|
+ File dir = new File(targetDir);
|
|
|
+ if (!dir.exists()) {
|
|
|
+ dir.mkdirs();
|
|
|
+ }
|
|
|
+ try {
|
|
|
+ file.transferTo(new File(targetDir + File.separator + file.getOriginalFilename()));
|
|
|
+ }catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 查询订单状态
|
|
|
*
|