Explorar el Código

平安数据接口修改

hxl13994548489 hace 2 años
padre
commit
be14b71bcd

+ 2 - 2
src/main/java/com/ydtech/modules/order/controller/PingAnOrderApiController.java

@@ -213,8 +213,8 @@ public class PingAnOrderApiController {
      */
     @PostMapping("/repealDocument")
     @ApiOperation("11撤销单证")
-    public HttpResult<Object> repealDocument(String companyId,String documentType) throws Exception {
-        return this.pingAnOrderApiService.repealDocument(companyId,documentType);
+    public HttpResult<Object> repealDocument(String companyId,String documentType,String applyNO) throws Exception {
+        return this.pingAnOrderApiService.repealDocument(companyId,documentType,applyNO);
     }
     //========================================以下接口暂未使用后期可能使用=======================================
     /**

+ 5 - 4
src/main/java/com/ydtech/modules/order/entity/api/pingan/request/CarConfirmRequest.java

@@ -20,14 +20,14 @@ import java.io.Serializable;
 import java.util.Map;
 
 /**
- *  @version 
+ *  @version
  *  @author: hxl
  *  @Date: 2024/3/26 14:13
  *  @Description:  车辆信息确认  入参参数  4.2
  *
  *  flowid 流程ID  必传 使用接口3.1出参flowid
  *  userId    必传   合作伙伴操作用户ID,用来记录合作伙伴操作人身份
- */ 
+ */
 @EqualsAndHashCode(callSuper = true)
 @Data
 public class CarConfirmRequest extends PingAnBaseRequest {
@@ -196,7 +196,7 @@ public class CarConfirmRequest extends PingAnBaseRequest {
      */
     private String developmentStage;
     //todo
-    public CarConfirmRequest(PingAnConfigureParameters parameters, BaseQuoteInfoVo quoteInfo, SearchPAVehicleListResponse.ModelsDto modelsDto,String flowid) {
+    public CarConfirmRequest(PingAnConfigureParameters parameters, BaseQuoteInfoVo quoteInfo, SearchPAVehicleListResponse.ModelsDto modelsDto,String flowid,String type) {
         this.setUserId(parameters.getUserId());
         this.setFlowid(flowid);
         Map<String, String> map = NetworkUtils.printNetworkInfo();
@@ -226,7 +226,8 @@ public class CarConfirmRequest extends PingAnBaseRequest {
         this.bizQuote = new BizQuoteDTO(String.valueOf(carInfo.isTransferFlag()),carInfo.getTransferDate());
         //交强险信息
         this.forceQuote =new ForceQuoteDTO(carInfo.getPowertype());
-
+        // 设置新能源
+        this.setIsNewEnergy("XNY".equals(type)?"true":"false");
     }
 
     /***

+ 2 - 199
src/main/java/com/ydtech/modules/order/entity/api/pingan/request/QuoteRequest.java

@@ -1,10 +1,7 @@
 package com.ydtech.modules.order.entity.api.pingan.request;
 
 import cn.hutool.core.bean.BeanUtil;
-import com.ydtech.constants.enums.InsurKind;
-import com.ydtech.modules.ins.model.vo.KindInfoVo;
 import com.ydtech.modules.order.entity.InsOrders;
-import com.ydtech.modules.order.entity.api.pingan.response.CarConfirmResponse;
 import com.ydtech.modules.order.entity.api.pingan.utils.checkNull.CheckNotEmpty;
 import com.ydtech.modules.order.entity.api.pingan.utils.checkNull.FieldEmptyException;
 import com.ydtech.modules.order.entity.api.pingan.utils.checkNull.Validate;
@@ -58,7 +55,7 @@ public class QuoteRequest extends PingAnBaseRequest {
      * 默认false
      * c
      */
-    private boolean isAllowBizRepeat;
+    private String isAllowBizRepeat;
     /***
      * N:中介价1
      * Y:中介价2
@@ -880,6 +877,7 @@ public class QuoteRequest extends PingAnBaseRequest {
         // 组合险列表
         this.setCombinationInfoList(combinationInfoList);
         this.setIsOnlineProducts("N");
+        this.setIsAllowBizRepeat("true");
         this.setAmount22XNYChargingPostList(amount22XNYChargingPostList);
         this.setAmount23XNYChargingPostList(amount23XNYChargingPostList);
     }
@@ -981,94 +979,6 @@ public class QuoteRequest extends PingAnBaseRequest {
         }
         return unAutoListInfoList;
     }
-
-    public QuoteRequest transferPingAnRequestMsgNY(List<KindInfoVo> kinds, QuoteRequest quoteRequest, CarConfirmResponse.BizQuoteConfigDTO bizQuoteConfig) {
-        for (KindInfoVo kindInfoVo : kinds) {
-            String code = kindInfoVo.getKindCode();
-            //机动车损失险
-            String amount = String.format("%.0f", kindInfoVo.getAmount());
-            String unitAmount = String.format("%.0f", kindInfoVo.getUnitAmount());
-            if (InsurKind.A.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount01XNY(String.valueOf(kindInfoVo.getAmount()>0?1:0)) ;
-                if("1".equals(quoteRequest.getAmount01())){
-                    //车损险默认值
-                    String amount01Default = bizQuoteConfig.getAmount01Default();
-                    quoteRequest.setInputAmountXNY(amount01Default);
-                }
-            }
-            //车损险绝对免赔额(元)
-            //quoteRequest.setInputAmount01(" 109791.0");
-            //三者险
-            if (InsurKind.B.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount02XNY(amount) ;
-            }
-            //乘客责任险
-            if (InsurKind.D4.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount05XNY(unitAmount) ;
-            }
-            //乘客责任险
-            if (InsurKind.D3.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount04XNY(unitAmount) ;
-            }
-            //  附加车上货物责任险   暂时没有
-            //  附加医保外用药责任险(第三者责任保险)
-            if (InsurKind.SY_FJ_YBW1.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount07XNY(String.valueOf(kindInfoVo.getAmount()>1?1:0)) ;
-            }
-            // 附加医保外用药责任险(车上人员责任保险(乘客))
-            if (InsurKind.SY_FJ_YBW2.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount09XNY(String.valueOf(kindInfoVo.getAmount()>1?1:0)) ;
-            }
-            // 附加医保外用药责任险(车上人员责任保险(司机))
-            if (InsurKind.SY_FJ_YBW3.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount08XNY(String.valueOf(kindInfoVo.getAmount()>1?1:0)) ;
-            }
-            //附加修理期间费用补偿险  暂时没有
-            // 附加新增加设备损失险   暂时没有
-            //附加车身划痕损失险
-            if (InsurKind.L.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount17XNY(amount) ;
-            }
-            quoteRequest.setAmount10XNY("");
-            quoteRequest.setAmount11XNY("");
-            quoteRequest.setAmount12XNY("");
-            quoteRequest.setAmount12XNYFee("");
-            quoteRequest.setAmount13XNY("");
-            quoteRequest.setAmount14XNY("");
-            quoteRequest.setAmount15XNY("");
-            quoteRequest.setAmount16XNY("");
-            quoteRequest.setAmount17XNY("");
-            quoteRequest.setAmount18XNY("");
-            quoteRequest.setAmount18XNYFee("");
-            quoteRequest.setAmount19XNY("");
-            quoteRequest.setAmount19XNYFee("");
-            quoteRequest.setAmount20XNY("");
-            quoteRequest.setAmount21XNY("");
-            quoteRequest.setAmount20XNYFee("");
-            quoteRequest.setAmount22XNY("");
-            quoteRequest.setAmount23XNY("");
-            //附加发动机进水损坏除外特约条款
-            // 道路救援服务特约条款(9座以下非营业客车可以投保)
-            if (InsurKind.TY1.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount01SvXNY(amount) ;
-            }
-            //车辆安全检测特约条款
-            if (InsurKind.TY2.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount02SvXNY(amount) ;
-            }
-            //代为驾驶服务特约条款
-            if (InsurKind.TY3.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount03SvXNY(amount) ;
-            }
-            //代为送检服务特约条款
-            if (InsurKind.TY4.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount04SvXNY(amount);
-            }
-        }
-        return quoteRequest;
-
-    }
-
     /***
      * 商业险信息
      */
@@ -1412,111 +1322,4 @@ public class QuoteRequest extends PingAnBaseRequest {
             throw new FieldEmptyException(e.getMessage());
         }
     }
-
-    /**
-     *  @version
-     *  @author: hxl
-     *  @Date: 2024/7/19 8:44
-     *  @Description: 赋值平安的商业险字段
-     */
-    public static QuoteRequest transferPingAnRequestMsg(List<KindInfoVo> kinds, QuoteRequest quoteRequest, CarConfirmResponse.BizQuoteConfigDTO bizQuoteConfigDTO) {
-
-        for (KindInfoVo kindInfoVo : kinds) {
-            String code = kindInfoVo.getKindCode();
-            //机动车损失险
-            String amount = String.format("%.0f", kindInfoVo.getAmount());
-            String unitAmount = String.format("%.0f", kindInfoVo.getUnitAmount());
-            if (InsurKind.A.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount01(String.valueOf(kindInfoVo.getAmount()>0?1:0)) ;
-                if("1".equals(quoteRequest.getAmount01())){
-                    //车损险默认值
-                    String amount01Default = bizQuoteConfigDTO.getAmount01Default();
-                    quoteRequest.setInputAmount(amount01Default);
-
-                }
-            }
-            //车损险绝对免赔额(元)
-            //quoteRequest.setInputAmount01(" 109791.0");
-            //三者险
-            if (InsurKind.B.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount02(amount) ;
-            }
-            //乘客责任险
-            if (InsurKind.D4.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount05(unitAmount) ;
-            }
-            //乘客责任险
-            if (InsurKind.D3.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount04(unitAmount) ;
-            }
-            //  附加车上货物责任险   暂时没有
-            //  附加医保外用药责任险(第三者责任保险)
-            if (InsurKind.SY_FJ_YBW1.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount07(String.valueOf(kindInfoVo.getAmount()>1?1:0)) ;
-                quoteRequest.setAmount07Fee(amount) ;
-            }
-            // 附加医保外用药责任险(车上人员责任保险(乘客))
-            if (InsurKind.SY_FJ_YBW2.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount09(String.valueOf(kindInfoVo.getAmount()>1?1:0)) ;
-                quoteRequest.setAmount09Fee(amount) ;
-            }
-            // 附加医保外用药责任险(车上人员责任保险(司机))
-            if (InsurKind.SY_FJ_YBW3.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount08(String.valueOf(kindInfoVo.getAmount()>1?1:0)) ;
-                quoteRequest.setAmount08Fee(amount) ;
-            }
-            //附加修理期间费用补偿险  暂时没有
-            // 附加新增加设备损失险   暂时没有
-            //附加车身划痕损失险
-            if (InsurKind.L.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount17(amount) ;
-            }
-            // 附加精神损害抚慰金责任险(三者)
-            // 附加精神损害抚慰金责任险(司机)
-            // 附加精神损害抚慰金责任险(乘客)
-            //  附加车轮单独损失险
-            // 附加绝对免赔率特约险(车损)
-            if (InsurKind.MJ1.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount53(amount) ;
-            }
-            // 附加绝对免赔率特约险(车损)
-            if (InsurKind.MJ1.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount53(amount) ;
-            }
-            // 附加绝对免赔率特约险(三者)
-            if (InsurKind.MJ2.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount54(amount) ;
-            }
-            // 附加绝对免赔率特约险(司机)
-            if (InsurKind.MJ3.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount55(amount) ;
-            }
-            // 附加绝对免赔率特约险(乘客)
-            if (InsurKind.MJ4.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount56(amount) ;
-            }
-            // 附加法定节假日限额翻倍险
-            if (InsurKind.BD.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount74(amount) ;
-            }
-            //附加发动机进水损坏除外特约条款
-            // 道路救援服务特约条款(9座以下非营业客车可以投保)
-            if (InsurKind.TY1.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount01Sv(amount) ;
-            }
-            //车辆安全检测特约条款
-            if (InsurKind.TY2.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount02Sv(amount) ;
-            }
-            //代为驾驶服务特约条款
-            if (InsurKind.TY3.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount03Sv(amount) ;
-            }
-            //代为送检服务特约条款
-            if (InsurKind.TY4.getCode().equalsIgnoreCase(code)) {
-                quoteRequest.setAmount04Sv(amount);
-            }
-        }
-        return quoteRequest;
-    }
 }

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

@@ -146,7 +146,7 @@ public interface PingAnOrderApiService {
      * @Exception
      *
      */
-    HttpResult<Object> repealDocument(String companyId,String documentType);
+    HttpResult<Object> repealDocument(String companyId,String documentType,String applyNO);
 
 
     /**

+ 75 - 60
src/main/java/com/ydtech/modules/order/service/impl/PingAnOrderApiServiceImpl.java

@@ -233,6 +233,9 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
             String clauseCaseSwitch = indexResponse.getClauseCaseSwitch();
             // 此处返回的  flowid  4.1.续保确认  4.2.车辆信息确认  001 平安车型搜索接口  需要使用
             String flowid = indexResponse.getFlowid();
+
+           // carInfo.setModelcname("欧雅OCTAVIA 2.0L轿车");
+
             // 2. 车型查询
             SearchPAVehicleListRequest searchPAVehicleListRequest = new SearchPAVehicleListRequest(parameters.getUserId(), flowid,
                     carInfo.getModelcname() );
@@ -249,7 +252,6 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
             if (models != null && models.size() == 1) {
                 model = models.get(0);
             } else if (models != null && models.size() > 1) {
-                /**
                 //通过年款和新车购置价确定唯一
                 String purchasePrice = carInfo.getPurchasePrice();
                 String caryear = carInfo.getPurchasePrice();
@@ -276,19 +278,8 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
                 }else if(models.size()==1){
                     model = models.get(0);
                 }
-                 **/
-                model = models.get(0);
-            }
-            // 3. 车辆信息确认
-            pinganApiLog.setId(null);
-            CarConfirmRequest carConfirmRequest = new CarConfirmRequest(parameters, quoteInfo, model, flowid);
-            CarConfirmResponse carConfirmResponse = pinganRequestApiComponents.carConfirm(carConfirmRequest,pinganApiLog);
-            if (carConfirmResponse == null || !"0".equals(carConfirmResponse.getResultCode())) {
-                throw new SystemException(carConfirmResponse.getResultMessage());
+                //model = models.get(0);
             }
-            //4.报价  使用车辆确认返回的流程id
-            pinganApiLog.setId(null);
-            QuoteRequest quoteRequest = new QuoteRequest(parameters, quoteInfo,carConfirmResponse.getFlowid(), quoteVo.getAccommodationFlag(), quoteVo.getAmount22XNYChargingPostList(), quoteVo.getAmount23XNYChargingPostList(),quoteVo.getAccidentalDrivingVo());
             //能源车 判断 赋值能源参数
             String  flag="";
             if("1,2,3,".contains(carInfo.getEnergyType())){
@@ -298,6 +289,17 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
                 //客车、货车传递
                 flag="FXNY";
             }
+            // 3. 车辆信息确认
+            pinganApiLog.setId(null);
+            CarConfirmRequest carConfirmRequest = new CarConfirmRequest(parameters, quoteInfo, model, flowid,flag);
+            CarConfirmResponse carConfirmResponse = pinganRequestApiComponents.carConfirm(carConfirmRequest,pinganApiLog);
+            if (carConfirmResponse == null || !"0".equals(carConfirmResponse.getResultCode())) {
+                throw new SystemException(carConfirmResponse.getResultMessage());
+            }
+            //4.报价  使用车辆确认返回的流程id
+            pinganApiLog.setId(null);
+            QuoteRequest quoteRequest = new QuoteRequest(parameters, quoteInfo,carConfirmResponse.getFlowid(), quoteVo.getAccommodationFlag(), quoteVo.getAmount22XNYChargingPostList(), quoteVo.getAmount23XNYChargingPostList(),quoteVo.getAccidentalDrivingVo());
+
             quoteRequest = PingAnQuoteRequestAnnotationParser.processAnnotationsQuoteRequest(quoteRequest, quoteInfo.getKindList(), carConfirmResponse.getBizQuoteConfig(), flag);
             QuoteResponse quoteResponse = null;
             try {
@@ -676,7 +678,12 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
                 //查询核保状态
                 String bizApplyNo = submitApplyResponse.getBizApplyNo()==null?"":submitApplyResponse.getBizApplyNo();
                 String forceApplyNo = submitApplyResponse.getForceApplyNo()==null?"":submitApplyResponse.getForceApplyNo();
-                String accidentApplyNo = submitApplyResponse.getAccidentApplyNo() == null ? "" : submitApplyResponse.getAccidentApplyNo();
+                List<SubmitApplyResponse.AccidentApplyPolicyNoDTO> accidentApplyPolicyNoList = submitApplyResponse.getAccidentApplyPolicyNoList();
+                String accidentApplyNo =null;
+                if(accidentApplyPolicyNoList!=null && accidentApplyPolicyNoList.size()>0){
+                    SubmitApplyResponse.AccidentApplyPolicyNoDTO accidentApplyPolicyNoDTO = accidentApplyPolicyNoList.get(0);
+                    accidentApplyNo = accidentApplyPolicyNoDTO.getPolicyAppNumber();
+                }
                 List<String> list = new ArrayList<String>();
                 if (StringUtils.isNotBlank(bizApplyNo)) {
                     list.add(bizApplyNo);
@@ -685,7 +692,7 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
                     list.add(forceApplyNo);
                 }
                 if (StringUtils.isNotBlank(accidentApplyNo)) {
-                    list.add(accidentApplyNo);
+                   // list.add(accidentApplyNo);
                 }
                 pinganApiLog.setId(null);
                 DocumentStatusListRequest documentStatusListRequest = new DocumentStatusListRequest(list, parameters);
@@ -842,7 +849,7 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
         String fileBZName="";
         //驾意险
         if(type==3){
-            flag="true";
+           // flag="true";
             fileName="_非车险保单";
         }else if(type==1){
             //交强
@@ -868,35 +875,38 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
                 String flagPdf = policyPdfResponse.getFlagPdf();
                 String yqbdFileName = insAreaCompany.getOrderno()+"-"+ insAreaCompany.getId()+"-"+ policyno+fileName+".pdf";
                 jqbdPath = UPLOAD_PATH +  insAreaCompany.getOrderno()+"-"+ insAreaCompany.getId()+"-"+ policyno+fileName+"-decipher.pdf";;
-                if(type==1){
-                    String yqbzFileName = insAreaCompany.getOrderno()+"-"+ insAreaCompany.getId()+"-"+ policyno+fileBZName+".pdf";
-                    jqbzPath = UPLOAD_PATH +   insAreaCompany.getOrderno()+"-"+ insAreaCompany.getId()+"-"+ policyno+fileBZName+"-decipher.pdf";;
-                    String jqBzTargertPath = saveFilePath+yqbzFileName;
+                if(policyPdfBase64Str!=null ){
+                    if(type==1){
+                        String yqbzFileName = insAreaCompany.getOrderno()+"-"+ insAreaCompany.getId()+"-"+ policyno+fileBZName+".pdf";
+                        jqbzPath = UPLOAD_PATH +   insAreaCompany.getOrderno()+"-"+ insAreaCompany.getId()+"-"+ policyno+fileBZName+"-decipher.pdf";;
+                        String jqBzTargertPath = saveFilePath+yqbzFileName;
+                        try {
+                            PDFUtil.decryptFileByPassword(flagPdf, jqBzTargertPath, properties.getPingAnPublicKey());
+                        } catch (Exception e) {
+                            jqbzPath=null;
+                        }
+                        crawlerPolicyPrintVo.setJqxFlagUrl(jqbzPath);
+                    }
                     try {
-                        PDFUtil.decryptFileByPassword(flagPdf, jqBzTargertPath, properties.getPingAnPublicKey());
+                        String jqBdTargertPath = saveFilePath+yqbdFileName;
+                        PDFUtil.decryptFileByPassword(policyPdfBase64Str, jqBdTargertPath, properties.getPingAnPublicKey());
                     } catch (Exception e) {
-                        jqbzPath=null;
+                        jqbdPath=null;
+                    }
+                    if(type==1){
+                        crawlerPolicyPrintVo.setJqxPolicyUrl(jqbdPath);
+                    }else if(type==2){
+                        crawlerPolicyPrintVo.setSyxPolicyUrl(jqbdPath);
+                    }else if(type==3){
+                        List<CrawlerPolicyPrintVo.JyxInfoListDTO> jyxInfoListDTOS = new ArrayList<>();
+                        CrawlerPolicyPrintVo.JyxInfoListDTO jyxInfoListDTO = new CrawlerPolicyPrintVo.JyxInfoListDTO();
+                        jyxInfoListDTO.setJyxPolicyUrl(jqbdPath);
+                        jyxInfoListDTOS.add(jyxInfoListDTO);
+                        crawlerPolicyPrintVo.setJyxInfoList(jyxInfoListDTOS);
                     }
-                    crawlerPolicyPrintVo.setJqxFlagUrl(jqbzPath);
-                }
-                try {
-                    String jqBdTargertPath = saveFilePath+yqbdFileName;
-                    PDFUtil.decryptFileByPassword(policyPdfBase64Str, jqBdTargertPath, properties.getPingAnPublicKey());
-                } catch (Exception e) {
-                    jqbdPath=null;
-                }
-                if(type==1){
-                    crawlerPolicyPrintVo.setJqxPolicyUrl(jqbdPath);
-                }else if(type==2){
-                    crawlerPolicyPrintVo.setSyxPolicyUrl(jqbdPath);
-                }else if(type==3){
-                    List<CrawlerPolicyPrintVo.JyxInfoListDTO> jyxInfoListDTOS = new ArrayList<>();
-                    CrawlerPolicyPrintVo.JyxInfoListDTO jyxInfoListDTO = new CrawlerPolicyPrintVo.JyxInfoListDTO();
-                    jyxInfoListDTO.setJyxPolicyUrl(jqbdPath);
-                    jyxInfoListDTOS.add(jyxInfoListDTO);
-                    crawlerPolicyPrintVo.setJyxInfoList(jyxInfoListDTOS);
                 }
             }
+
         }
     }
 
@@ -1266,7 +1276,7 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
                 list.add(forceApplyNo);
             }
             if (StringUtils.isNotBlank(accidentApplyNo)) {
-                list.add(accidentApplyNo);
+               // list.add(accidentApplyNo);
             }
             pinganApiLog.setId(null);
             DocumentStatusListRequest documentStatusListRequest = new DocumentStatusListRequest(list, parameters);
@@ -1359,7 +1369,7 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
             list.add(forceApplyNo);
         }
         if (StringUtils.isNotBlank(accidentApplyNo)) {
-            list.add(accidentApplyNo);
+           // list.add(accidentApplyNo);
         }
         return  list;
     }
@@ -1373,7 +1383,7 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
      * @Exception
      */
     @Override
-    public HttpResult<Object> repealDocument(String companyId,String documentType) {
+    public HttpResult<Object> repealDocument(String companyId,String documentType,String applyNo) {
         try {
             //调用
             InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(companyId);
@@ -1385,10 +1395,7 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
             // 通过 协议id获取配置实体
             PingAnConfigureParameters parameters = configureParametersComponents.toEntity(PingAnConfigureParameters.class,
                     ptlAgreementAttribution);
-            if("1".equals(documentType)) {
-                String jqpolicyno = insAreaCompany.getJqpolicyno();
-            }
-            RepealDocumentRequest repealDocumentRequest = new RepealDocumentRequest(insAreaCompany.getJqpolicyno(), parameters.getUserId(), parameters.getCityCode(), documentType);
+            RepealDocumentRequest repealDocumentRequest = new RepealDocumentRequest(applyNo, parameters.getUserId(), parameters.getCityCode(), documentType);
             RepealDocumentResponse repealDocumentResponse = null;
             try {
                 repealDocumentResponse = pinganRequestApiComponents.repealDocument(repealDocumentRequest,pinganApiLog);
@@ -1875,7 +1882,7 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
                 list.add(forceApplyNo);
             }
             if (StringUtils.isNotBlank(accidentApplyNo)) {
-                list.add(accidentApplyNo);
+              //  list.add(accidentApplyNo);
             }
             pinganApiLog.setId(null);
             DocumentStatusListRequest documentStatusListRequest = new DocumentStatusListRequest(list, parameters);
@@ -1888,7 +1895,7 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
             if (documentStatusListResponse != null && "0".equals(documentStatusListResponse.getResultCode())) {
                 ArrayList<DocumentStatusListResponse.DocumentDTO> documentList = documentStatusListResponse.getDocumentList();
                 Boolean jqflag = false;
-                Boolean sqflag = false;
+                Boolean syflag = false;
                 Boolean fcflag = false;
                 String status="";
                 String jqPlicyNo=null;
@@ -1898,17 +1905,24 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
                     //B2 为 未缴费
                     for (DocumentStatusListResponse.DocumentDTO dto : documentList) {
                         status =dto.getStatus();
-                        if (OrderStatusCodeEnum.ORDER_STATUS_CODE_B2.getCode().equals(dto.getStatus()) && StringUtils.isNotBlank(bizApplyNo) && bizApplyNo.equals(dto.getApplyNo() == null ? "" : dto.getApplyNo())) {
-                            jqPlicyNo=dto.getPolicyNo();
-                            sqflag = true;
+                        if (StringUtils.isNotBlank(bizApplyNo) && bizApplyNo.equals(dto.getApplyNo() == null ? "" : dto.getApplyNo())) {
+                            syPlicyNo=dto.getPolicyNo();
+                            syflag = true;
                         }
-                        if (OrderStatusCodeEnum.ORDER_STATUS_CODE_B2.getCode().equals(dto.getStatus()) && StringUtils.isNotBlank(forceApplyNo) && forceApplyNo.equals(dto.getApplyNo() == null ? "" : dto.getApplyNo())) {
+                        if (StringUtils.isNotBlank(forceApplyNo) && forceApplyNo.equals(dto.getApplyNo() == null ? "" : dto.getApplyNo())) {
                             jqflag = true;
-                            syPlicyNo=dto.getPolicyNo();
+                            jqPlicyNo=dto.getPolicyNo();
                         }
-                        if (OrderStatusCodeEnum.ORDER_STATUS_CODE_B2.getCode().equals(dto.getStatus()) && StringUtils.isNotBlank(accidentApplyNo) && accidentApplyNo.equals(dto.getApplyNo() == null ? "" : dto.getApplyNo())) {
+                        List<DocumentStatusListResponse.DocumentDTO.UnAutoListInfoDTO> unAutoListInfo = dto.getUnAutoListInfo();
+                        String applyNo=null;
+                        String policyNo=null;
+                        if(unAutoListInfo!=null && unAutoListInfo.size()>0){
+                            applyNo = unAutoListInfo.get(0).getApplyNo();
+                            policyNo = unAutoListInfo.get(0).getPolicyNo();
+                        }
+                        if (StringUtils.isNotBlank(accidentApplyNo) && accidentApplyNo.equals(applyNo == null ? "" : applyNo)) {
                             fcflag = true;
-                            jyPlicyNo=dto.getPolicyNo();
+                            jyPlicyNo=policyNo;
                         }
                     }
                 }
@@ -1916,7 +1930,7 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
                     insAreaCompany.setJqapplyno(forceApplyNo);
                     insAreaCompany.setJqpolicyno(jqPlicyNo);
                 }
-                if (sqflag) {
+                if (syflag) {
                     insAreaCompany.setSyapplyno(bizApplyNo);
                     insAreaCompany.setSypolicyno(syPlicyNo);
                 }
@@ -1930,17 +1944,18 @@ public class PingAnOrderApiServiceImpl implements PingAnOrderApiService {
                     JSONArray objects = JSON.parseArray(JSON.toJSONString(jyList));
                     insAreaCompany.setCrossInsurance(objects);
                 }
-                if(InsOrderStatusEnum.WAIT_PAY.getCode().equals(status) && ("0".equals(insAreaCompany.getOrderstatus()) || "1".equals(insAreaCompany.getOrderstatus()) )){
+                if(OrderStatusCodeEnum.ORDER_STATUS_CODE_B2.getCode().equals(status) && ("0".equals(insAreaCompany.getOrderstatus()) || "1".equals(insAreaCompany.getOrderstatus()) )){
                     //说明核保成功,更新大订单和小订单的状态为1  更新为已核保待缴费
                     insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode() );
                     insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
-                }else if(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode().equals(status) && ("0".equals(insAreaCompany.getOrderstatus()) || "1".equals(insAreaCompany.getOrderstatus()) || "2".equals(insAreaCompany.getOrderstatus()))) {
+                }else if(OrderStatusCodeEnum.ORDER_STATUS_CODE_B5.getCode().equals(status) && ("0".equals(insAreaCompany.getOrderstatus()) || "1".equals(insAreaCompany.getOrderstatus()) || "2".equals(insAreaCompany.getOrderstatus()))) {
                     //承保
                     insAreaCompany.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
+                    insAreaCompany.setPayDate(LocalDateTime.now());
                     insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
                 }
             }
-            return HttpResult.error("支付成功");
+            return HttpResult.ok("支付成功");
         }else{
             PinganApiLog pinganApiLog = new PinganApiLog(null,null,null);
             pinganApiLog.setId(null);

+ 1 - 1
src/main/java/com/ydtech/modules/order/utils/pingan/PingAnQuoteRequestAnnotationParser.java

@@ -49,7 +49,7 @@ public class PingAnQuoteRequestAnnotationParser {
                         String nycflag = annotation.flag();
                         KindInfoVo kindInfoVo_A = map.get("A");
                         KindInfoVo kindInfoVo = map.get(key);
-                        if (nycflag.contains(flag) && kindInfoVo!=null) {
+                        if (nycflag.contains(flag) && kindInfoVo_A!=null) {
                             if ((InsurKind.A.getCode() + "_YN").equals(key)) {
                                 field.set(quoteRequest, kindInfoVo_A.getAmount() == 0 ? "0" : amount01Default);
                             } else {