|
|
@@ -3,7 +3,6 @@ package com.jzg.quotation.zijin.api.service.Impl;
|
|
|
import com.jzg.commons.constants.dict.InsOrderStatusEnum;
|
|
|
import com.jzg.commons.entity.orders.po.InsOrdersCosts;
|
|
|
import com.jzg.commons.exception.SystemException;
|
|
|
-import com.jzg.commons.util.StringUtils;
|
|
|
import com.jzg.quotation.commons.constant.InsuranceCode;
|
|
|
import com.jzg.quotation.commons.entity.vo.aggregated.*;
|
|
|
import com.jzg.quotation.commons.entity.vo.base.OrderBase;
|
|
|
@@ -17,6 +16,7 @@ import com.jzg.quotation.zijin.api.component.ResponseMessageAbstractHandler;
|
|
|
import com.jzg.quotation.zijin.api.build.ZiJinAPIQuoteResultsVoBuild;
|
|
|
import com.jzg.quotation.zijin.api.component.ZiJinApiRequestComponent;
|
|
|
import com.jzg.quotation.zijin.api.entity.ZiJinApiConfigureParameters;
|
|
|
+import com.jzg.quotation.zijin.api.entity.constants.enums.BusType;
|
|
|
import com.jzg.quotation.zijin.api.entity.constants.enums.OrderStatusEnum;
|
|
|
import com.jzg.quotation.zijin.api.entity.constants.enums.ResultEnum;
|
|
|
import com.jzg.quotation.zijin.api.entity.po.ZiJinApiOrder;
|
|
|
@@ -25,15 +25,13 @@ import com.jzg.quotation.zijin.api.entity.response.*;
|
|
|
import com.jzg.quotation.zijin.api.service.ZiJinApiRequest;
|
|
|
import com.jzg.quotation.zijin.api.service.ZiJinCrawlerOrderService;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.jetbrains.annotations.NotNull;
|
|
|
import org.springframework.http.HttpHeaders;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.util.ObjectUtils;
|
|
|
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Optional;
|
|
|
+import java.util.*;
|
|
|
|
|
|
/**
|
|
|
* @description: 紫金财险 API 计算
|
|
|
@@ -175,12 +173,91 @@ public class ZiJinApiRequestImpl implements ZiJinApiRequest {
|
|
|
|
|
|
@Override
|
|
|
public DownloadPolicyResultVo downloadPolicy(DownloadPolicyVo downloadPolicyVo) {
|
|
|
+ DownloadPolicyResultVo downloadPolicyResultVo = new DownloadPolicyResultVo();
|
|
|
ZiJinApiOrder ziJinApiOrder = ziJinCrawlerOrderService.getById(downloadPolicyVo.getOrder().getOrdersNo());
|
|
|
- return null;
|
|
|
+ // 配置信息
|
|
|
+ ZiJinApiConfigureParameters parameters = ConfigureParametersConversion.conversionEntity(ZiJinApiConfigureParameters.class, downloadPolicyVo.getOrder()
|
|
|
+ .getAttributionInformationVo()
|
|
|
+ .getConfigInfo());
|
|
|
+
|
|
|
+ String jqPolicyNo = downloadPolicyVo.getPolicie().getJqPolicyNo();
|
|
|
+ if(Objects.nonNull(jqPolicyNo)) {
|
|
|
+ queryPolicy(jqPolicyNo, ziJinApiOrder, downloadPolicyResultVo,BusType.BT_1);
|
|
|
+ queryPolicy(jqPolicyNo, ziJinApiOrder, downloadPolicyResultVo,BusType.BT_2);
|
|
|
+ }
|
|
|
+
|
|
|
+ String syPolicyNo = downloadPolicyVo.getPolicie().getSyPolicyNo();
|
|
|
+ if(Objects.nonNull(syPolicyNo)) {
|
|
|
+ queryPolicy(syPolicyNo, ziJinApiOrder, downloadPolicyResultVo,BusType.BT_3);
|
|
|
+ }
|
|
|
+ String jyPolicyNo = downloadPolicyVo.getPolicie().getJyPolicyNo();
|
|
|
+ if(Objects.nonNull(jyPolicyNo)) {
|
|
|
+ queryPolicy(jyPolicyNo, ziJinApiOrder, downloadPolicyResultVo,BusType.BT_4);
|
|
|
+ }
|
|
|
+ return downloadPolicyResultVo;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取保单
|
|
|
+ * @param policyNo
|
|
|
+ * @param ziJinApiOrder
|
|
|
+ * @param downloadPolicyResultVo
|
|
|
+ */
|
|
|
+ private void queryPolicy(String policyNo, ZiJinApiOrder ziJinApiOrder, DownloadPolicyResultVo downloadPolicyResultVo,BusType busType) {
|
|
|
+ String identifyNo = ziJinApiOrder.getInsuredIdentify();
|
|
|
+ String code = busType.getCode();
|
|
|
+ if (busType.equals(BusType.BT_1)) {
|
|
|
+ String jqUrl = ziJinApiRequestComponent.getDownLoadDocumentUrl(policyNo, code, identifyNo);
|
|
|
+ downloadPolicyResultVo.setJqUrl(jqUrl);
|
|
|
+ }
|
|
|
+ if (busType.equals(BusType.BT_2)) {
|
|
|
+ String jqFlagUrl = ziJinApiRequestComponent.getDownLoadDocumentUrl(policyNo, code, identifyNo);
|
|
|
+ downloadPolicyResultVo.setJqFlagUrl(jqFlagUrl);
|
|
|
+ }
|
|
|
+ if (busType.equals(BusType.BT_3)) {
|
|
|
+ String syUrl = ziJinApiRequestComponent.getDownLoadDocumentUrl(policyNo, code, identifyNo);
|
|
|
+ downloadPolicyResultVo.setSyUrl(syUrl);
|
|
|
+ }
|
|
|
+ if (busType.equals(BusType.BT_4)) {
|
|
|
+ String jyUrl = ziJinApiRequestComponent.getDownLoadDocumentUrl(policyNo, code, identifyNo);
|
|
|
+ downloadPolicyResultVo.setJyUrl(jyUrl);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {
|
|
|
- return null;
|
|
|
+ OrderStatusResultVo orderStatusResultVo = new OrderStatusResultVo();
|
|
|
+ // 配置信息
|
|
|
+ ZiJinApiConfigureParameters parameters = ConfigureParametersConversion.conversionEntity(ZiJinApiConfigureParameters.class, orderStatusVo.getOrder()
|
|
|
+ .getAttributionInformationVo()
|
|
|
+ .getConfigInfo());
|
|
|
+ HttpHeaders httpHeaders = ziJinApiRequestComponent.getHttpHeaders(parameters);
|
|
|
+ try{
|
|
|
+ QueryOrderDetailResponse queryOrderDetailResponse = ziJinApiRequestComponent.getOrderDetail(orderStatusVo.getOrder().getCompanyOrderNo(), httpHeaders);
|
|
|
+ QueryOrderDetailResponse.ResultObjDTO resultObj = queryOrderDetailResponse.getResultObj();
|
|
|
+
|
|
|
+ if (OrderStatusEnum.O_2.getCode().equals(resultObj.getOrderStatus())) {
|
|
|
+ QueryOrderDetailResponse.BaseInfoDTO baseInfo = queryOrderDetailResponse.getResultObj().getBaseInfo();
|
|
|
+
|
|
|
+ orderStatusResultVo.setJqPolicyno(baseInfo.getPolicyNoCI());
|
|
|
+ orderStatusResultVo.setSyPolicyno(baseInfo.getPolicyNo());
|
|
|
+ // 2.2 投保单号
|
|
|
+ orderStatusResultVo.setJqApplyNo(baseInfo.getProposalNoCI());
|
|
|
+ orderStatusResultVo.setSyApplyNo(baseInfo.getProposalNo());
|
|
|
+ orderStatusResultVo.setOrderStatus(InsOrderStatusEnum.PAY_PENDING);
|
|
|
+
|
|
|
+ // 获取支付链接
|
|
|
+ PaymentLinkVo paymentLinkVo = new PaymentLinkVo();
|
|
|
+ paymentLinkVo.setOrder(orderStatusVo.getOrder());
|
|
|
+ PaymentLinkResultsVo paymentLinkResultsVo = getPaymentLink(paymentLinkVo);
|
|
|
+ orderStatusResultVo.setPaymentLink(paymentLinkResultsVo.getPaymentLink());
|
|
|
+
|
|
|
+ } else if (OrderStatusEnum.O_3.getCode().equals(resultObj.getOrderStatus())) {
|
|
|
+ orderStatusResultVo.setOrderStatus(InsOrderStatusEnum.AUDIT_FAIL);
|
|
|
+ }
|
|
|
+ }catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ return orderStatusResultVo;
|
|
|
}
|
|
|
}
|