فهرست منبع

python 核保状态查询

wks 2 سال پیش
والد
کامیت
567cbdc35c

+ 4 - 4
src/main/java/com/ydtech/modules/largescreen/controller/DataController.java

@@ -2,18 +2,18 @@ package com.ydtech.modules.largescreen.controller;
 
 
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
-import com.beust.ah.A;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.largescreen.model.*;
 import com.ydtech.modules.largescreen.model.query.CompanyQuery;
 import com.ydtech.modules.largescreen.model.query.DataQuery;
 import com.ydtech.modules.largescreen.service.IAgreementDataService;
 import io.swagger.annotations.Api;
-import lombok.Data;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 import java.text.DecimalFormat;
 import java.time.LocalDate;

+ 5 - 0
src/main/java/com/ydtech/modules/order/controller/InsCrawlerOrderController.java

@@ -68,5 +68,10 @@ public class InsCrawlerOrderController extends BaseController {
         return insuranceCrawlerOrderService.getDrivingInsurance(agreementId);
     }
 
+    @PostMapping("/auditStatusQuery")
+    @ApiOperation(value = "核保状态查询")
+    public HttpResult<Object> auditStatusQuery(@RequestSingleParam(value = "companyId") String companyId) {
+        return insuranceCrawlerOrderService.auditStatusQuery(companyId);
+    }
 
 }

+ 56 - 58
src/main/java/com/ydtech/modules/order/entity/api/dajia/request/ODR1008Request.java

@@ -19,11 +19,9 @@ import java.util.List;
 import java.util.Objects;
 
 import static com.ydtech.modules.order.entity.api.dajia.constants.CFuelType.*;
-import static com.ydtech.modules.order.entity.api.dajia.constants.CInspectRec.INSREC1;
 
 
 /**
- * @version
  * @description: ODR1008 车辆和客户信息确认 请求参数
  * @author: wenks
  * @date: 2023/11/14 16:51
@@ -62,7 +60,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
 
         @NoArgsConstructor
         @Data
-        public static class ApplicantInfoDTO implements Serializable{
+        public static class ApplicantInfoDTO implements Serializable {
             private static final long serialVersionUID = 2368014689374178222L;
             @JsonProperty("applicantCBusiness")
             private Integer applicantCBusiness;
@@ -148,7 +146,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
 
         @NoArgsConstructor
         @Data
-        public static class BusinessInfoDTO implements Serializable{
+        public static class BusinessInfoDTO implements Serializable {
             private static final long serialVersionUID = 2058043103906170015L;
             @JsonProperty("busiAgentNme")
             private String busiAgentNme;
@@ -204,7 +202,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
 
         @NoArgsConstructor
         @Data
-        public static class InsuredInfoDTO  implements Serializable{
+        public static class InsuredInfoDTO implements Serializable {
             private static final long serialVersionUID = 1471113087138506721L;
             @JsonProperty("insuredBusiness")
             private Integer insuredBusiness;
@@ -274,7 +272,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
 
         @NoArgsConstructor
         @Data
-        public static class VehicleInfoDTO implements Serializable{
+        public static class VehicleInfoDTO implements Serializable {
             private static final long serialVersionUID = 8099502440213359843L;
             @JsonProperty("vehicleAnswer")
             private String vehicleAnswer;
@@ -375,7 +373,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
 
         @NoArgsConstructor
         @Data
-        public static class VehicleOwnerInfoDTO implements Serializable{
+        public static class VehicleOwnerInfoDTO implements Serializable {
             private static final long serialVersionUID = 3725955472263478330L;
             @JsonProperty("vehicleOwnerCCertfCde")
             private String vehicleOwnerCCertfCde;
@@ -420,23 +418,24 @@ public class ODR1008Request extends DaJiaBaseRequest {
         }
     }
 
-    public ODR1008Request(String orderNo, String busiId, BaseQuoteInfoVo quoteInfoVo, DaJiaConfigureParameters daJiaConfigureParameters, ODR2009Response odr2009Response, PersonAreaVo policyHolderPersonArea,PersonAreaVo insuredPersonArea,PersonAreaVo ownerPersonArea){
+    public ODR1008Request(String orderNo, String busiId, BaseQuoteInfoVo quoteInfoVo, DaJiaConfigureParameters daJiaConfigureParameters,
+                          ODR2009Response odr2009Response, PersonAreaVo policyHolderPersonArea, PersonAreaVo insuredPersonArea,
+                          PersonAreaVo ownerPersonArea) {
         super(daJiaConfigureParameters.getChannelCode(), ServiceCode.ODR1008.getCode());
-        if(Objects.isNull(body))
-        {
+        if (Objects.isNull(body)) {
             this.body = new BodyDTO();
         }
         this.body.setOrderNo(orderNo);
         //设置车主信息
-        setVehicleOwnerInfo(quoteInfoVo,ownerPersonArea);
+        setVehicleOwnerInfo(quoteInfoVo, ownerPersonArea);
         //设置投保人信息
-        setApplicantInfo(quoteInfoVo,policyHolderPersonArea);
+        setApplicantInfo(quoteInfoVo, policyHolderPersonArea);
         //设置被保人信息
-        setInsuredInfo(quoteInfoVo,insuredPersonArea);
+        setInsuredInfo(quoteInfoVo, insuredPersonArea);
         //设置车辆信息
-        setVehicleInfo(quoteInfoVo,odr2009Response);
+        setVehicleInfo(quoteInfoVo, odr2009Response);
         //设置业务归属信息
-        setBusinessInfo(daJiaConfigureParameters,busiId);
+        setBusinessInfo(daJiaConfigureParameters, busiId);
     }
 
     //根据身份证获取生日
@@ -460,7 +459,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
     }
 
     //设置车主信息
-    public void setVehicleOwnerInfo(BaseQuoteInfoVo quoteInfoVo,PersonAreaVo OwnerPersonArea){
+    public void setVehicleOwnerInfo(BaseQuoteInfoVo quoteInfoVo, PersonAreaVo OwnerPersonArea) {
         BodyDTO.VehicleOwnerInfoDTO vehicleOwnerInfoDTO = new BodyDTO.VehicleOwnerInfoDTO();
         //设置证件号码
         vehicleOwnerInfoDTO.setVehicleOwnerCCertfCde(quoteInfoVo.getOwnerInfo().getIdentifyNumber());
@@ -506,20 +505,20 @@ public class ODR1008Request extends DaJiaBaseRequest {
         vehicleOwnerInfoDTO.setVehicleOwnerCity(OwnerPersonArea.getCityCode());
         vehicleOwnerInfoDTO.setVehicleOwnerCounty(OwnerPersonArea.getCountyCode());
         int index = -1;
-        if(OwnerPersonArea.getCountyName() != null){
+        if (OwnerPersonArea.getCountyName() != null) {
             index = quoteInfoVo.getOwnerInfo().getAddr().indexOf(OwnerPersonArea.getCountyName());
         }
 
-        if(index > -1){
+        if (index > -1) {
             vehicleOwnerInfoDTO.setVehicleOwnerSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr().substring(index + OwnerPersonArea.getCountyName().length()));
-        }else{
+        } else {
             vehicleOwnerInfoDTO.setVehicleOwnerSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr());
         }
         this.body.setVehicleOwnerInfo(vehicleOwnerInfoDTO);
     }
 
     //设置投保人信息
-    public void setApplicantInfo(BaseQuoteInfoVo quoteInfoVo,PersonAreaVo policyHolderPersonArea){
+    public void setApplicantInfo(BaseQuoteInfoVo quoteInfoVo, PersonAreaVo policyHolderPersonArea) {
         BodyDTO.ApplicantInfoDTO applicantInfoDTO = new BodyDTO.ApplicantInfoDTO();
         //设置证件号码
         applicantInfoDTO.setApplicantCCertfCde(quoteInfoVo.getPolicyHolderInfo().getIdentifyNumber());
@@ -557,12 +556,12 @@ public class ODR1008Request extends DaJiaBaseRequest {
         applicantInfoDTO.setApplicantCity(policyHolderPersonArea.getCityCode());
         applicantInfoDTO.setApplicantCounty(policyHolderPersonArea.getCountyCode());
         int index = -1;
-        if(policyHolderPersonArea.getCountyName() != null){
+        if (policyHolderPersonArea.getCountyName() != null) {
             index = quoteInfoVo.getOwnerInfo().getAddr().indexOf(policyHolderPersonArea.getCountyName());
         }
-        if(index > -1){
+        if (index > -1) {
             applicantInfoDTO.setApplicantSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr().substring(index + policyHolderPersonArea.getCountyName().length()));
-        }else{
+        } else {
             applicantInfoDTO.setApplicantSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr());
         }
 //        applicantInfoDTO.setApplicantZipCde("030024");
@@ -570,7 +569,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
     }
 
     //设置被保人信息
-    public void setInsuredInfo(BaseQuoteInfoVo quoteInfoVo,PersonAreaVo insuredPersonArea){
+    public void setInsuredInfo(BaseQuoteInfoVo quoteInfoVo, PersonAreaVo insuredPersonArea) {
         BodyDTO.InsuredInfoDTO insuredInfoDTO = new BodyDTO.InsuredInfoDTO();
         //设置证件号码
         insuredInfoDTO.setInsuredCertfCde(quoteInfoVo.getInsuredPersonInfo().getIdentifyNumber());
@@ -607,12 +606,12 @@ public class ODR1008Request extends DaJiaBaseRequest {
         insuredInfoDTO.setInsuredCounty(insuredPersonArea.getCountyCode());
         insuredInfoDTO.setInsuredSuffixAddr(quoteInfoVo.getInsuredPersonInfo().getAddr());
         int index = -1;
-        if(insuredPersonArea.getCountyName() != null){
+        if (insuredPersonArea.getCountyName() != null) {
             index = quoteInfoVo.getOwnerInfo().getAddr().indexOf(insuredPersonArea.getCountyName());
         }
-        if(index > -1){
+        if (index > -1) {
             insuredInfoDTO.setInsuredSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr().substring(index + insuredPersonArea.getCountyName().length()));
-        }else{
+        } else {
             insuredInfoDTO.setInsuredSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr());
         }
         //邮编
@@ -621,21 +620,21 @@ public class ODR1008Request extends DaJiaBaseRequest {
     }
 
     //设置车辆信息
-    public void setVehicleInfo(BaseQuoteInfoVo quoteInfoVo,ODR2009Response odr2009Response){
+    public void setVehicleInfo(BaseQuoteInfoVo quoteInfoVo, ODR2009Response odr2009Response) {
         BodyDTO.VehicleInfoDTO vehicleInfoDTO = new BodyDTO.VehicleInfoDTO();
         //设置发动机号
         vehicleInfoDTO.setVehicleEngNo(quoteInfoVo.getCarInfo().getEngineNo());
         //设置车架号
         vehicleInfoDTO.setVehicleFrmNo(quoteInfoVo.getCarInfo().getFrameNo());
         //是否是过户车
-        if(quoteInfoVo.getCarInfo().isTransferFlag()){
+        if (quoteInfoVo.getCarInfo().isTransferFlag()) {
             //过户
             vehicleInfoDTO.setVehicleTfiSpecialMrk(1);
             vehicleInfoDTO.setVehicleTransferTm(quoteInfoVo.getCarInfo().getTransferDate());
             //商业过户标志
             vehicleInfoDTO.setVehicleChgOwnerFlag(1);
             vehicleInfoDTO.setVehicleTTransferDate(quoteInfoVo.getCarInfo().getTransferDate());
-        }else{
+        } else {
             //没有过户
             vehicleInfoDTO.setVehicleTfiSpecialMrk(0);
             //商业过户标志
@@ -645,13 +644,13 @@ public class ODR1008Request extends DaJiaBaseRequest {
         vehicleInfoDTO.setVehicleFstRegYmBar(quoteInfoVo.getCarInfo().getRegisterDate());
         //能源类型
         String EnergyType = "0";
-        if(FUEL1.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())){
-            EnergyType="1";  //纯电动
+        if (FUEL1.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())) {
+            EnergyType = "1";  //纯电动
             vehicleInfoDTO.setVehicleModelEnergyType(EnergyType);
-        }else if(FUEL2.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())){
-            EnergyType="2";  //燃料电池
-        }else if(FUEL3.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())){
-            EnergyType="3";  //插电式混合动力
+        } else if (FUEL2.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())) {
+            EnergyType = "2";  //燃料电池
+        } else if (FUEL3.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())) {
+            EnergyType = "3";  //插电式混合动力
         }
         vehicleInfoDTO.setVehicleFuelType(EnergyType);
         //行驶证车辆类型
@@ -664,11 +663,11 @@ public class ODR1008Request extends DaJiaBaseRequest {
         String vehicleUse = quoteInfoVo.getCarInfo().getVehicleUse();
         //运营性质
         TypeVehicleMapping typeVehicleMapping = Enum.valueOf(TypeVehicleMapping.class, "TM_" + vehicleUse);
-        if(riskList.size() > 1){
+        if (riskList.size() > 1) {
             //交商联合
             vehicleInfoDTO.setVehicleUsageCde(typeVehicleMapping.getCUsageCdeSy());
             vehicleInfoDTO.setVehicleTraUsageCde(Integer.valueOf(typeVehicleMapping.getCUsageCdeSy()));
-        }else if(riskList.size() == 1) {
+        } else if (riskList.size() == 1) {
             if (riskList.get(0).getRiskCode().equals(InsuranceRisk.BUSINESS_CODE)) {
                 //单商业
                 vehicleInfoDTO.setVehicleUsageCde(typeVehicleMapping.getCUsageCdeJq());
@@ -683,7 +682,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
         //特殊风险标识
 
         //是否上牌
-        if(!quoteInfoVo.getCarInfo().isNoLicenseFlag()) {
+        if (!quoteInfoVo.getCarInfo().isNoLicenseFlag()) {
             //上牌车
             vehicleInfoDTO.setVehicleNewPlate(0);
             vehicleInfoDTO.setVehicleNewMrk(0);
@@ -701,8 +700,8 @@ public class ODR1008Request extends DaJiaBaseRequest {
             vehicleInfoDTO.setVehiclePlateTyp("02");
 
             //是否为外地车
-            vehicleInfoDTO.setVehicleEcdemicMrk(quoteInfoVo.getCarInfo().getLicenseNo().contains("晋") ?"0":"1");
-        }else{
+            vehicleInfoDTO.setVehicleEcdemicMrk(quoteInfoVo.getCarInfo().getLicenseNo().contains("晋") ? "0" : "1");
+        } else {
             //新车
             vehicleInfoDTO.setVehicleNewPlate(1);
             vehicleInfoDTO.setVehicleNewMrk(1);
@@ -710,14 +709,14 @@ public class ODR1008Request extends DaJiaBaseRequest {
 
         boolean consistentPrice = false;
         ODR2009Response.ResultDTO resultDTO = new ODR2009Response.ResultDTO();
-        for(ODR2009Response.ResultDTO item : odr2009Response.getResult()){
-            if(item.getVehiclePrice().equals(quoteInfoVo.getCarInfo().getPurchasePrice())){
+        for (ODR2009Response.ResultDTO item : odr2009Response.getResult()) {
+            if (item.getVehiclePrice().equals(quoteInfoVo.getCarInfo().getPurchasePrice())) {
                 consistentPrice = true;
                 resultDTO = item;
                 break;
             }
         }
-        if(!consistentPrice){
+        if (!consistentPrice) {
             resultDTO = odr2009Response.getResult().get(0);
         }
         //厂牌车型码
@@ -727,11 +726,10 @@ public class ODR1008Request extends DaJiaBaseRequest {
         //车型名称
         vehicleInfoDTO.setVehicleModelNme(resultDTO.getVehicleName());
         //排气量
-        if("0".equals(resultDTO.getVehicleExhaust()) && "0".equals(resultDTO.getCfuelType()))
-        {
+        if ("0".equals(resultDTO.getVehicleExhaust()) && "0".equals(resultDTO.getCfuelType())) {
             //如果排量为空,则默认为1.0
             vehicleInfoDTO.setVehicleNDisplacement("1.0");
-        }else{
+        } else {
             vehicleInfoDTO.setVehicleNDisplacement(resultDTO.getVehicleExhaust());
         }
 
@@ -741,23 +739,23 @@ public class ODR1008Request extends DaJiaBaseRequest {
         //座位数
         vehicleInfoDTO.setVehicleNSeatNum(quoteInfoVo.getCarInfo().getSeatCount());
         //车辆种类
-        if(VehicleType.VT_A0.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())) {
+        if (VehicleType.VT_A0.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())) {
             //客车
-            if(Integer.parseInt(resultDTO.getVehicleSeat()) < 6){
+            if (Integer.parseInt(resultDTO.getVehicleSeat()) < 6) {
                 vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T01.getCode().toString());
-            }else{
+            } else {
                 vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T02.getCode().toString());
             }
-        }else if(VehicleType.VT_A1.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())){
+        } else if (VehicleType.VT_A1.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())) {
             //货车
             float limitLoad = Float.parseFloat(quoteInfoVo.getCarInfo().getLimitLoad()) / 1000;
-            if(limitLoad < 2){
+            if (limitLoad < 2) {
                 vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T06.getCode().toString());
-            }else if(limitLoad >= 2 && limitLoad < 5) {
+            } else if (limitLoad >= 2 && limitLoad < 5) {
                 vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T07.getCode().toString());
-            }else if(limitLoad >= 5 && limitLoad < 10) {
+            } else if (limitLoad >= 5 && limitLoad < 10) {
                 vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T08.getCode().toString());
-            }else if(limitLoad >= 10) {
+            } else if (limitLoad >= 10) {
                 vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T09.getCode().toString());
             }
         }
@@ -767,9 +765,9 @@ public class ODR1008Request extends DaJiaBaseRequest {
         //整备质量
         vehicleInfoDTO.setVehicleNCurbWt(Float.parseFloat(quoteInfoVo.getCarInfo().getCompleteKerbMass()) / 1000);
         //货车传递吨位
-        if(VehicleType.VT_A1.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())) {
+        if (VehicleType.VT_A1.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())) {
             //核定载质量
-            vehicleInfoDTO.setVehicleNTonage(Double.parseDouble(quoteInfoVo.getCarInfo().getLimitLoad())/1000);
+            vehicleInfoDTO.setVehicleNTonage(Double.parseDouble(quoteInfoVo.getCarInfo().getLimitLoad()) / 1000);
         }
 
         //验车情况
@@ -780,7 +778,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
     }
 
     //设置业务归属信息
-    public void setBusinessInfo(DaJiaConfigureParameters daJiaConfigureParameters,String busiId){
+    public void setBusinessInfo(DaJiaConfigureParameters daJiaConfigureParameters, String busiId) {
         BodyDTO.BusinessInfoDTO businessInfoDTO = new BodyDTO.BusinessInfoDTO();
         //设置id
         businessInfoDTO.setBusiId(busiId);

+ 6 - 8
src/main/java/com/ydtech/modules/order/entity/crawler/response/CrawlerAuditResponse.java

@@ -1,16 +1,10 @@
 package com.ydtech.modules.order.entity.crawler.response;
 
 import com.fasterxml.jackson.annotation.JsonProperty;
-import com.ydtech.modules.order.entity.dto.DrivingInsuranceDto;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
 
-import java.io.Serializable;
-import java.util.Collections;
-import java.util.List;
-import java.util.stream.Collectors;
-
 @EqualsAndHashCode(callSuper = true)
 @NoArgsConstructor
 @Data
@@ -18,6 +12,12 @@ public class CrawlerAuditResponse extends CrawlerBaseResponse {
 
     private static final long serialVersionUID = 8990977573134495552L;
 
+    /**
+     * 是否人工核保
+     */
+    @JsonProperty("manual")
+    private String manual;
+
     /**
      * 交强险投保单号
      */
@@ -37,6 +37,4 @@ public class CrawlerAuditResponse extends CrawlerBaseResponse {
     private String payUrl;
 
 
-
-
 }

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

@@ -38,4 +38,13 @@ public interface InsCrawlerOrderService extends BaseOrderService<Object> {
      * @return Object
      */
     HttpResult<Object> getDrivingInsurance(String agreementId);
+
+
+    /**
+     * 获取驾意险
+     *
+     * @param subOrderNo 子订单
+     * @return Object
+     */
+    HttpResult<Object> auditStatusQuery(String subOrderNo);
 }

+ 34 - 2
src/main/java/com/ydtech/modules/order/service/impl/InsCrawlerOrderServiceImpl.java

@@ -166,16 +166,24 @@ public class InsCrawlerOrderServiceImpl implements InsCrawlerOrderService {
         CrawlerBaseRequest crawlerBaseRequest = new CrawlerBaseRequest(insAreaCompany.getInsOrderNo());
         CrawlerAuditResponse crawlerAuditResponse = insCrawlerOrderComponents.request(apiUrl, insAreaCompany.getCompanyId(),
                 PtlCrawlerApiType.API_4.getDesc(), crawlerBaseRequest, CrawlerAuditResponse.class);
+
         if (crawlerAuditResponse.getCode() != 200) {
             throw new SystemException(crawlerAuditResponse.getMessage());
         }
-        // 投保单号
+
+        // 是否人工核保
+        if (StringUtils.isNotEmpty(crawlerAuditResponse.getManual())) {
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.TO_BACK.getCode());
+            insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
+            return HttpResult.error(crawlerAuditResponse.getMessage());
+        }
+            // 投保单号
         insAreaCompany.setPaymentLink(crawlerAuditResponse.getPayUrl());
         insAreaCompany.setJqapplyno(crawlerAuditResponse.getJqPolicy());
         insAreaCompany.setSyapplyno(crawlerAuditResponse.getSyPolicy());
-
         insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
         insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
+
         return HttpResult.ok("核保成功");
     }
 
@@ -373,4 +381,28 @@ public class InsCrawlerOrderServiceImpl implements InsCrawlerOrderService {
         return HttpResult.ok(request.getOverlayPlanList());
     }
 
+    @Override
+    public HttpResult<Object> auditStatusQuery(String subOrderNo) {
+        InsAreaCompany insAreaCompany = insAreaCompanyService.getById(subOrderNo);
+        String agreementId = insAreaCompany.getAgreementId();
+        String apiUrl = ptlCrawlerApiService.getApiUrl(agreementId, PtlCrawlerApiType.API_8);
+        //组装参数
+        CrawlerBaseRequest crawlerBaseRequest = new CrawlerBaseRequest(insAreaCompany.getInsOrderNo());
+
+        CrawlerAuditResponse crawlerAuditResponse = insCrawlerOrderComponents.request(apiUrl, insAreaCompany.getCompanyId(),
+                PtlCrawlerApiType.API_8.getDesc(), crawlerBaseRequest, CrawlerAuditResponse.class);
+
+        if (crawlerAuditResponse.getCode() != 200) {
+            throw new SystemException(crawlerAuditResponse.getMessage());
+        }
+
+        // 投保单号
+        insAreaCompany.setPaymentLink(crawlerAuditResponse.getPayUrl());
+        insAreaCompany.setJqapplyno(crawlerAuditResponse.getJqPolicy());
+        insAreaCompany.setSyapplyno(crawlerAuditResponse.getSyPolicy());
+        insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
+        insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
+        return HttpResult.ok("核保通过");
+    }
+
 }