dongxin hai 1 ano
pai
achega
b98fcf15b4

+ 25 - 21
src/main/java/com/ydtech/modules/order/service/impl/ChengTaiOrderApiServiceImpl.java

@@ -411,35 +411,39 @@ public class ChengTaiOrderApiServiceImpl implements ChengTaiOrderApiService {
             UnderwritingRequest underwritingRequest = new UnderwritingRequest(parameters,submitVerifyResponse.getOrderId());
             UnderwritingResponse underwritingResponse = chengTaiRequestApiComponents.audit(underwritingRequest,httpHeaders);
 
-            // 查询投保结果
-            SubmitVerifyResultRequest submitVerifyResultRequest = new SubmitVerifyResultRequest(parameters,submitVerifyResponse.getOrderId());
-            SubmitVerifyResultResponse submitVerifyResultResponse = chengTaiRequestApiComponents.auditSaveResult(submitVerifyResultRequest,httpHeaders);
-            List<SubmitVerifyResultResponse.DataDTO> data = submitVerifyResultResponse.getData();
-            if(CollUtil.isNotEmpty(data)){
-                for (SubmitVerifyResultResponse.DataDTO dataDTO : data) {
-                    if(RiskCodeEnum.R1002.getCode().equals(dataDTO.getRiskCode())){
-                        insAreaCompany.setJqpolicyno(dataDTO.getPolicyCode());
-                        insAreaCompany.setJqapplyno(dataDTO.getInsCode());
-                    }
-                    if (RiskCodeEnum.R0821.getCode().equals(dataDTO.getRiskCode())) {
-                        insAreaCompany.setSypolicyno(dataDTO.getPolicyCode());
-                        insAreaCompany.setSyapplyno(dataDTO.getInsCode());
+            if(OrderStatusEnum.A2000.getCode().equals(underwritingResponse.getFinalRuleResult())){
+                // 查询投保结果
+                SubmitVerifyResultRequest submitVerifyResultRequest = new SubmitVerifyResultRequest(parameters,submitVerifyResponse.getOrderId());
+                SubmitVerifyResultResponse submitVerifyResultResponse = chengTaiRequestApiComponents.auditSaveResult(submitVerifyResultRequest,httpHeaders);
+                List<SubmitVerifyResultResponse.DataDTO> data = submitVerifyResultResponse.getData();
+                if(CollUtil.isNotEmpty(data)){
+                    for (SubmitVerifyResultResponse.DataDTO dataDTO : data) {
+                        if(RiskCodeEnum.R1002.getCode().equals(dataDTO.getRiskCode())){
+                            insAreaCompany.setJqpolicyno(dataDTO.getPolicyCode());
+                            insAreaCompany.setJqapplyno(dataDTO.getInsCode());
+                        }
+                        if (RiskCodeEnum.R0821.getCode().equals(dataDTO.getRiskCode())) {
+                            insAreaCompany.setSypolicyno(dataDTO.getPolicyCode());
+                            insAreaCompany.setSyapplyno(dataDTO.getInsCode());
+                        }
                     }
                 }
+                insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
+                // 获取支付链接
+                PayUrlRequest payUrlRequest = new PayUrlRequest(parameters,submitVerifyResponse.getOrderId());
+                PayUrlResponse payUrlResponse = chengTaiRequestApiComponents.getPayUrl(payUrlRequest, httpHeaders);
+                insAreaCompany.setPaymentLink(payUrlResponse.getSmsUrl());
+                insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
+                return HttpResult.ok("核保成功");
+            }else{
+                throw new SystemException(underwritingResponse.getData().get(0).getReasondescription());
             }
-            insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
-            // 获取支付链接
-            PayUrlRequest payUrlRequest = new PayUrlRequest(parameters,submitVerifyResponse.getOrderId());
-            PayUrlResponse payUrlResponse = chengTaiRequestApiComponents.getPayUrl(payUrlRequest, httpHeaders);
-            insAreaCompany.setPaymentLink(payUrlResponse.getSmsUrl());
-            insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
-            return HttpResult.ok("核保成功");
         }catch (SystemException systemException){
             // 查询核保结果
             UnderwritingResultRequest resultRequest = new UnderwritingResultRequest(parameters,insAreaCompany.getInsOrderNo());
             UnderwritingResultResponse underwritingResultResponse = chengTaiRequestApiComponents.auditResult(resultRequest,httpHeaders);
             String uwMsg = systemException.getMessage();
-            if (OrderStatusEnum.A2001.getCode().equals(underwritingResultResponse.getFinalRuleResult())) {
+            if (OrderStatusEnum.A2001.getCode().equals(underwritingResultResponse.getFinalRuleResult()) || OrderStatusEnum.A2007.getCode().equals(underwritingResultResponse.getFinalRuleResult())) {
                 //  add  by  hxl  添加手动更新状态
                 insSubOrderUpdateDetailService.insertData(insAreaCompany, insAreaCompany.getOrderstatus(), InsOrderStatusEnum.TO_BACK.getCode(), "1");
                 insAreaCompany.setOrderstatus(InsOrderStatusEnum.TO_BACK.getCode());