Browse Source

Merge remote-tracking branch 'origin/test'

y 2 years ago
parent
commit
ae71ff27cb

+ 11 - 1
src/main/java/com/ydtech/modules/ins/model/yc/ruote/Tax.java

@@ -3,8 +3,12 @@ package com.ydtech.modules.ins.model.yc.ruote;
 import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
 import com.ydtech.modules.ins.model.vo.CarInfoVo;
 import com.ydtech.modules.ins.model.vo.CustomerInfoVo;
+import com.ydtech.modules.protocol.utils.AssertionUtils;
+import com.ydtech.utils.StringUtils;
 import lombok.Data;
 
+import java.math.BigDecimal;
+
 
 /**
  * @description: 交强险车船税     车船税tax
@@ -139,7 +143,7 @@ public class Tax {
         tax.setCalculatedType("349003001");
         tax.setVehecleTypeDetail("3490010013");
         tax.setTaxpayerAddress(policyHolderInfo.getAddr());
-
+        tax.setVehicleQuality(extracted(carInfo.getCompleteKerbMass()));
         //纳税人识别号 =  投保人身份证号
         tax.setTaxpayerNO(policyHolderInfo.getIdentifyNumber());
 
@@ -153,5 +157,11 @@ public class Tax {
         return tax;
     }
 
+    private static String extracted(String completeKerbMass) {
+        AssertionUtils.isFail(StringUtils.isEmpty(completeKerbMass), "整备质量为空");
+        BigDecimal bigDecimal = new BigDecimal(completeKerbMass);
+        BigDecimal divide = bigDecimal.divide(new BigDecimal(1000));
+        return divide.toString();
+    }
 
 }

+ 6 - 5
src/main/java/com/ydtech/modules/ins/model/yc/ruote/Vhl.java

@@ -190,11 +190,11 @@ public class Vhl {
 //     */
 //    @JacksonXmlProperty(localName = "CResvTxt2")
 //    private String CResvTxt2;
-//    /**
-//     * 整备质量
-//     */
-//    @JacksonXmlProperty(localName = "NPoWeight")
-//    private String NPoWeight;
+    /**
+     * 整备质量
+     */
+    @JacksonXmlProperty(localName = "NPoWeight")
+    private String NPoWeight;
     /**
      * 折旧价
      */
@@ -367,6 +367,7 @@ public class Vhl {
         //0:新保 1:续保 2:转保
         vhl.setCBusType("0");
         vhl.setCMortgageMrk("0");
+        vhl.setNPoWeight(carInfo.getCompleteKerbMass());
         //305005001:未验 305005002:已验车 305005003:免验车 305005004:需验车
         vhl.setCInspectionCde("305005003");
         vhl.setCDevice8Mrk("0");

+ 25 - 0
src/main/java/com/ydtech/modules/order/entity/crawler/constants/CrawlerAuditStatus.java

@@ -0,0 +1,25 @@
+package com.ydtech.modules.order.entity.crawler.constants;
+
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @version python对接 核保状态查询
+ * @author: wenks
+ * @date: 2024/2/23 8:56
+ **/
+@AllArgsConstructor
+@Getter
+public enum CrawlerAuditStatus {
+
+    CAS_200(200, "成功"),
+    CAS_400(400, "审核中"),
+    CAS_500(500, "审核失败"),
+    CAS_501(501, "查询失败");
+
+    private final int code;
+
+    private final String desc;
+
+}

+ 1 - 1
src/main/java/com/ydtech/modules/order/service/InsCrawlerOrderService.java

@@ -41,7 +41,7 @@ public interface InsCrawlerOrderService extends BaseOrderService<Object> {
 
 
     /**
-     * 获取驾意险
+     * 核保状态查询
      *
      * @param subOrderNo 子订单
      * @return Object

+ 4 - 3
src/main/java/com/ydtech/modules/order/service/impl/DaJiaOrderServiceImpl.java

@@ -404,8 +404,8 @@ public class DaJiaOrderServiceImpl implements DaJiaOrderService {
             insAreaCompany.setTaxArrears(JSON.parseArray(JSON.toJSONString(taxArrearsList)));
         }
         //添加调用费用匹配功能
-        feeRuleSchemeService.dealFeeOrderInfo(quoteInfoVo, quoteRespVo, ptlAgreementAttribution.getId(),
-                insAreaCompany.getId());
+//        feeRuleSchemeService.dealFeeOrderInfo(quoteInfoVo, quoteRespVo, ptlAgreementAttribution.getId(),
+//                insAreaCompany.getId());
         return HttpResult.ok("报价成功", quoteRespVo);
     }
 
@@ -922,7 +922,8 @@ public class DaJiaOrderServiceImpl implements DaJiaOrderService {
     @Override
     public HttpResult<Object> accidentalDrivingList(AccidentalInsuranceQueryVo queryVo) {
         List<InsAccidentalDrivingDajia> list =
-                insAccidentalDrivingDaJiaService.list(new LambdaQueryWrapper<InsAccidentalDrivingDajia>().eq(InsAccidentalDrivingDajia::getAgreementId, queryVo.getAgreementId()));
+                insAccidentalDrivingDaJiaService.list();
+
         return HttpResult.ok("获取驾意险列表成功", list);
     }
 

+ 1 - 1
src/main/java/com/ydtech/modules/order/service/impl/GuorenOrderApiServiceImpl.java

@@ -246,7 +246,7 @@ public class GuorenOrderApiServiceImpl implements GuorenOrderApiService {
         // 返回核心车型
         quoteRespVo.setCoreModels(vinQ.toCoreModelsVo());
         //这里调用费用匹配功能
-        feeRuleSchemeService.dealFeeOrderInfo(yaQuoteInfoVo, quoteRespVo, quoteVo.getAgreementId(), iac.getId());
+//        feeRuleSchemeService.dealFeeOrderInfo(yaQuoteInfoVo, quoteRespVo, quoteVo.getAgreementId(), iac.getId());
 
         log.debug("--------报价结束,车牌:{},vin:{}--------------", carInfo.getLicenseNo(), carInfo.getVinNo());
         return HttpResult.ok("报价成功", quoteRespVo);

+ 1 - 1
src/main/java/com/ydtech/modules/order/service/impl/HuaTaiOrderApiServiceImpl.java

@@ -594,7 +594,7 @@ public class HuaTaiOrderApiServiceImpl implements HuaTaiOrderApiService {
         quoteRespVo.setCompanyId(insAreaCompany.getId());
         insAreaCompanyService.insertCompanyAndOrders(insAreaCompany);
         //这里调用费用匹配功能
-        feeRuleSchemeService.dealFeeOrderInfo(quoteInfo, quoteRespVo, ptlAgreementAttribution.getId(), insAreaCompany.getId());
+//        feeRuleSchemeService.dealFeeOrderInfo(quoteInfo, quoteRespVo, ptlAgreementAttribution.getId(), insAreaCompany.getId());
         return HttpResult.ok(quotedPriceResponse.getHead().getReturnMessage(), quoteRespVo);
     }
 

+ 9 - 3
src/main/java/com/ydtech/modules/order/service/impl/InsCrawlerOrderServiceImpl.java

@@ -12,6 +12,7 @@ import com.ydtech.modules.order.components.InsImagesUploadCacheComponents;
 import com.ydtech.modules.order.entity.InsAreaCompany;
 import com.ydtech.modules.order.entity.InsOrders;
 import com.ydtech.modules.order.entity.TaxArrears;
+import com.ydtech.modules.order.entity.crawler.constants.CrawlerAuditStatus;
 import com.ydtech.modules.order.entity.crawler.constants.CrawlerVerifyPaymentConstants;
 import com.ydtech.modules.order.entity.crawler.request.*;
 import com.ydtech.modules.order.entity.crawler.response.*;
@@ -127,7 +128,7 @@ public class InsCrawlerOrderServiceImpl implements InsCrawlerOrderService {
             insCom = ptlAgreementAttribution.getInsCompanyId().substring(0, 4);
         }
         //这里调用费用匹配功能
-        feeRuleSchemeService.dealFeeOrderInfo(quoteInfoVo, quoteRespVo, ptlAgreementAttribution.getId(), responseVo.getCompanyId());
+//        feeRuleSchemeService.dealFeeOrderInfo(quoteInfoVo, quoteRespVo, ptlAgreementAttribution.getId(), responseVo.getCompanyId());
         return HttpResult.ok("成功", responseVo);
     }
 
@@ -397,7 +398,13 @@ public class InsCrawlerOrderServiceImpl implements InsCrawlerOrderService {
         CrawlerAuditResponse crawlerAuditResponse = insCrawlerOrderComponents.request(apiUrl, insAreaCompany.getCompanyId(),
                 PtlCrawlerApiType.API_8.getDesc(), crawlerBaseRequest, CrawlerAuditResponse.class);
 
-        if (crawlerAuditResponse.getCode() != 200) {
+        if(crawlerAuditResponse.getCode() == CrawlerAuditStatus.CAS_500.getCode()){
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.TO_BACK.getCode());
+            insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
+            return HttpResult.error(crawlerAuditResponse.getMessage());
+        } else if (crawlerAuditResponse.getCode() == CrawlerAuditStatus.CAS_200.getCode()) {
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
+        }else {
             throw new SystemException(crawlerAuditResponse.getMessage());
         }
 
@@ -405,7 +412,6 @@ public class InsCrawlerOrderServiceImpl implements InsCrawlerOrderService {
         insAreaCompany.setPaymentLink(crawlerAuditResponse.getPayUrl());
         insAreaCompany.setJqapplyno(crawlerAuditResponse.getJqPolicy());
         insAreaCompany.setSyapplyno(crawlerAuditResponse.getSyPolicy());
-        insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
         insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
         return HttpResult.ok("核保通过");
     }

+ 1 - 1
src/main/java/com/ydtech/modules/order/service/impl/YongAnOrderServiceImpl.java

@@ -1171,7 +1171,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
             insAreaCompanyService.insertCompanyAndOrders(insAreaCompany);
             quoteRespVo.setCompanyId(insAreaCompany.getId());
             //这里调用费用匹配功能
-            feeRuleSchemeService.dealFeeOrderInfo(quoteInfoVo, quoteRespVo, ptlAgreementAttribution.getId(), insAreaCompany.getId());
+//            feeRuleSchemeService.dealFeeOrderInfo(quoteInfoVo, quoteRespVo, ptlAgreementAttribution.getId(), insAreaCompany.getId());
         } else {
             return HttpResult.error(responseDataC2.getResponseHead().getAppMessage());
         }

+ 1 - 1
src/main/java/com/ydtech/modules/order/service/impl/YongchengOrderApiServiceImpl.java

@@ -386,7 +386,7 @@ public class YongchengOrderApiServiceImpl implements YongchengOrderApiService {
         // 核心车型返回
         quoteRespVo.setCoreModels(coreModelsVo);
         //添加调用费用匹配功能
-        feeRuleSchemeService.dealFeeOrderInfo(yaQuoteInfoVo, quoteRespVo, quoteVo.getAgreementId(), iac.getId());
+//        feeRuleSchemeService.dealFeeOrderInfo(yaQuoteInfoVo, quoteRespVo, quoteVo.getAgreementId(), iac.getId());
         return HttpResult.ok("报价成功", quoteRespVo);
 
     }

+ 1 - 1
src/main/java/com/ydtech/modules/order/service/impl/ZhongMeiOrderApiServiceImpl.java

@@ -585,7 +585,7 @@ public class ZhongMeiOrderApiServiceImpl implements ZhongMeiOrderApiService {
         quoteRespVo.setCompanyId(insAreaCompany.getId());
         quoteRespVo.setTaxArrears(taxArrearsList);
         //这里调用费用匹配功能
-        feeRuleSchemeService.dealFeeOrderInfo(quoteInfo, quoteRespVo, ptlAgreementAttribution.getId(), insAreaCompany.getId());
+//        feeRuleSchemeService.dealFeeOrderInfo(quoteInfo, quoteRespVo, ptlAgreementAttribution.getId(), insAreaCompany.getId());
         return HttpResult.ok(quotedPriceResponse.getHead().getReturnMessage(), quoteRespVo);
     }
 

+ 1 - 1
src/main/java/com/ydtech/modules/order/service/impl/ZijinOrderApiServiceImpl.java

@@ -573,7 +573,7 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
         insAreaCompanyService.insertCompanyAndOrders(insAreaCompany);
         quoteRespVo.setCompanyId(orderNo);
         //添加调用费用匹配功能
-        feeRuleSchemeService.dealFeeOrderInfo(quoteInfoVo, quoteRespVo, ptlAgreementAttribution.getId(), insAreaCompany.getId());
+//        feeRuleSchemeService.dealFeeOrderInfo(quoteInfoVo, quoteRespVo, ptlAgreementAttribution.getId(), insAreaCompany.getId());
         return HttpResult.ok("报价成功", quoteRespVo);
     }
 

+ 4 - 4
src/main/resources/mapper/modules/inv/InvReceivableMapper.xml

@@ -223,14 +223,14 @@
         a.premium,
         a.non_copying,
         a.receivable,
-        a.subsidy_ratio,
-        a.subsidy_amount,
+        if (a.subsidy_ratio is null, 0, a.subsidy_ratio) as subsidy_ratio,
+        if (a.subsidy_amount is null, 0, a.subsidy_amount) as subsidy_amount,
         a.max_jq_receivable_ratio,
         a.max_sy_receivable_ratio,
         a.max_non_car_receivable_ratio,
         a.max_receivable,
-        (a.receivable + a.subsidy_amount) as total_receivable_amount,
-        a.settlement_amount,
+        (a.receivable + if(a.subsidy_amount is null, 0, a.subsidy_amount) )                                                          AS total_receivable_amount,
+        if(a.settlement_amount is null, 0, a.settlement_amount) as settlement_amount,
         ( CASE a.clearing_state WHEN 1 THEN '已结算' WHEN 0 THEN '未结算' WHEN 2 THEN '孤儿单' END ) AS clearing_state,
         ( CASE a.insurance_clearing_state WHEN 1 THEN '已结算' WHEN 0 THEN '未结算' END ) AS insurance_clearing_state
         FROM