|
@@ -5,8 +5,10 @@ import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.alibaba.nacos.common.utils.CollectionUtils;
|
|
import com.alibaba.nacos.common.utils.CollectionUtils;
|
|
|
import com.jzg.commons.constants.dict.InsOrderStatusEnum;
|
|
import com.jzg.commons.constants.dict.InsOrderStatusEnum;
|
|
|
|
|
+import com.jzg.commons.constants.quote.enums.quote.KindCode;
|
|
|
import com.jzg.commons.entity.po.InsFeeOrders;
|
|
import com.jzg.commons.entity.po.InsFeeOrders;
|
|
|
import com.jzg.commons.entity.quote.vo.KindInfoVo;
|
|
import com.jzg.commons.entity.quote.vo.KindInfoVo;
|
|
|
|
|
+import com.jzg.commons.entity.quote.vo.QuoteVo;
|
|
|
import com.jzg.commons.entity.quote.vo.RiskInfoVo;
|
|
import com.jzg.commons.entity.quote.vo.RiskInfoVo;
|
|
|
import com.jzg.commons.entity.quote.vo.aggregated.QuoteResultsVo;
|
|
import com.jzg.commons.entity.quote.vo.aggregated.QuoteResultsVo;
|
|
|
import com.jzg.commons.util.DateTimeUtils;
|
|
import com.jzg.commons.util.DateTimeUtils;
|
|
@@ -20,6 +22,8 @@ import lombok.extern.slf4j.Slf4j;
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
|
+import java.util.Map;
|
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* @description: 紫金财险爬虫报价结果构建器
|
|
* @description: 紫金财险爬虫报价结果构建器
|
|
@@ -48,14 +52,14 @@ public class ZiJinCrawlerQuoteResultsVoBuild {
|
|
|
/**
|
|
/**
|
|
|
* 处理报价结果
|
|
* 处理报价结果
|
|
|
*
|
|
*
|
|
|
- * @param ordersNo
|
|
|
|
|
|
|
+ * @param quoteVo
|
|
|
* @param ziJinCrawlerQuotationResponse
|
|
* @param ziJinCrawlerQuotationResponse
|
|
|
* @param ziJinCrawlerSaveProposalResponse
|
|
* @param ziJinCrawlerSaveProposalResponse
|
|
|
* @return QuoteResultsVo
|
|
* @return QuoteResultsVo
|
|
|
*/
|
|
*/
|
|
|
- public static QuoteResultsVo buildQuoteResultsVo(String ordersNo, ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse, ZiJinCrawlerSaveProposalResponse ziJinCrawlerSaveProposalResponse) {
|
|
|
|
|
|
|
+ public static QuoteResultsVo buildQuoteResultsVo(QuoteVo quoteVo, ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse, ZiJinCrawlerSaveProposalResponse ziJinCrawlerSaveProposalResponse) {
|
|
|
QuoteResultsVo quoteResultsVo = new QuoteResultsVo();
|
|
QuoteResultsVo quoteResultsVo = new QuoteResultsVo();
|
|
|
- quoteResultsVo.setOrdersNo(ordersNo);
|
|
|
|
|
|
|
+ quoteResultsVo.setOrdersNo(quoteVo.getOrder().getOrdersNo());
|
|
|
|
|
|
|
|
if (ziJinCrawlerQuotationResponse.getItemKindList() != null) {
|
|
if (ziJinCrawlerQuotationResponse.getItemKindList() != null) {
|
|
|
// 设置交强险投保时间信息
|
|
// 设置交强险投保时间信息
|
|
@@ -65,7 +69,7 @@ public class ZiJinCrawlerQuoteResultsVoBuild {
|
|
|
// 设置驾意险投保时间信息
|
|
// 设置驾意险投保时间信息
|
|
|
// quoteResultsVo.setJyRiskInfoVo(buildJyRiskInfoVo(ziJinCrawlerQuotationResponse));
|
|
// quoteResultsVo.setJyRiskInfoVo(buildJyRiskInfoVo(ziJinCrawlerQuotationResponse));
|
|
|
// 设置险种明细列表
|
|
// 设置险种明细列表
|
|
|
- quoteResultsVo.setKindInfoVo(buildKindInfoVoList(ziJinCrawlerQuotationResponse));
|
|
|
|
|
|
|
+ quoteResultsVo.setKindInfoVo(buildKindInfoVoList(quoteVo.getKindInfoVo(), ziJinCrawlerQuotationResponse));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 设置投保单号
|
|
// 设置投保单号
|
|
@@ -84,7 +88,7 @@ public class ZiJinCrawlerQuoteResultsVoBuild {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 交强保费 车船税 商业保费
|
|
// 交强保费 车船税 商业保费
|
|
|
- buildPremium(quoteResultsVo, ziJinCrawlerQuotationResponse);
|
|
|
|
|
|
|
+ buildResultsPremium(quoteResultsVo, ziJinCrawlerQuotationResponse);
|
|
|
|
|
|
|
|
// 设置警告消息(预核保消息)
|
|
// 设置警告消息(预核保消息)
|
|
|
warnMessageList(ziJinCrawlerQuotationResponse, quoteResultsVo);
|
|
warnMessageList(ziJinCrawlerQuotationResponse, quoteResultsVo);
|
|
@@ -165,27 +169,21 @@ public class ZiJinCrawlerQuoteResultsVoBuild {
|
|
|
/**
|
|
/**
|
|
|
* 处理险种明细列表
|
|
* 处理险种明细列表
|
|
|
*
|
|
*
|
|
|
|
|
+ * @param kindInfoVo
|
|
|
* @param quotationResponse
|
|
* @param quotationResponse
|
|
|
* @return List<KindInfoVo>
|
|
* @return List<KindInfoVo>
|
|
|
*/
|
|
*/
|
|
|
- public static List<KindInfoVo> buildKindInfoVoList(ZiJinCrawlerQuotationResponse quotationResponse) {
|
|
|
|
|
- List<KindInfoVo> kindInfoVoList = new java.util.ArrayList<>();
|
|
|
|
|
- if (quotationResponse.getItemKindList() == null) {
|
|
|
|
|
- return kindInfoVoList;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- for (ZiJinCrawlerQuotationResponse.ItemKindList item : quotationResponse.getItemKindList()) {
|
|
|
|
|
- KindInfoVo kindInfoVo = new KindInfoVo();
|
|
|
|
|
- kindInfoVo.setKindCode(item.getKindCode());
|
|
|
|
|
- kindInfoVo.setKindName(item.getKindName());
|
|
|
|
|
- kindInfoVo.setAmount(item.getAmount());
|
|
|
|
|
- kindInfoVo.setUnitAmount(item.getUnitAmount());
|
|
|
|
|
- kindInfoVo.setQuantity(item.getQuantity());
|
|
|
|
|
- kindInfoVo.setPremium(item.getPremium());
|
|
|
|
|
- kindInfoVoList.add(kindInfoVo);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- return kindInfoVoList;
|
|
|
|
|
|
|
+ public static List<KindInfoVo> buildKindInfoVoList(List<KindInfoVo> kindInfoVo, ZiJinCrawlerQuotationResponse quotationResponse) {
|
|
|
|
|
+ Map<String, ZiJinCrawlerQuotationResponse.ItemKindList> collect = quotationResponse.getItemKindList().stream().collect(Collectors.toMap(ZiJinCrawlerQuotationResponse.ItemKindList::getKindCode, x -> x));
|
|
|
|
|
+ kindInfoVo.forEach(kind -> {
|
|
|
|
|
+ ZiJinCrawlerQuotationResponse.ItemKindList itemKindListDTO = collect.get(kind.getKindCode());
|
|
|
|
|
+ if (KindCode.A.getCode().equals(kind.getPlatformKindCode())) {
|
|
|
|
|
+ kind.setAmount(itemKindListDTO.getPremium());
|
|
|
|
|
+ }
|
|
|
|
|
+ // 设置保费
|
|
|
|
|
+ kind.setPremium(itemKindListDTO.getPremium());
|
|
|
|
|
+ });
|
|
|
|
|
+ return kindInfoVo;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -194,7 +192,7 @@ public class ZiJinCrawlerQuoteResultsVoBuild {
|
|
|
* @param quoteResultsVo
|
|
* @param quoteResultsVo
|
|
|
* @param quotationResponse
|
|
* @param quotationResponse
|
|
|
*/
|
|
*/
|
|
|
- private static void buildPremium(QuoteResultsVo quoteResultsVo, ZiJinCrawlerQuotationResponse quotationResponse) {
|
|
|
|
|
|
|
+ private static void buildResultsPremium(QuoteResultsVo quoteResultsVo, ZiJinCrawlerQuotationResponse quotationResponse) {
|
|
|
if (CollectionUtils.isEmpty(quotationResponse.getPlanList())) {
|
|
if (CollectionUtils.isEmpty(quotationResponse.getPlanList())) {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|