Ver código fonte

update 华农财险报价逻辑修改

wks 1 ano atrás
pai
commit
544ba9071e
38 arquivos alterados com 367 adições e 200 exclusões
  1. 2 0
      tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/component/RequestComponent.java
  2. 41 16
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/component/HuaNongCrawlerRequestComponent.java
  3. 3 1
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/constant/enums/RequestUrl.java
  4. 2 6
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerActualValueRequestRequest.java
  5. 49 0
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerBaseCodeRequestRequest.java
  6. 2 3
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerComInfoQueryRequestRequest.java
  7. 1 3
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerDocumentsPrintRequestRequest.java
  8. 2 3
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerFindBusinessesRequestRequest.java
  9. 2 3
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerFtpDownloadRequestRequest.java
  10. 3 4
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerLoginRequestRequest.java
  11. 2 3
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerModelsQueryRequestRequest.java
  12. 1 2
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerNewImageQueryRequestRequest.java
  13. 57 55
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerQuotedPriceRequestRequest.java
  14. 0 1
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerRequestBaseHead.java
  15. 7 8
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerSaveRequestRequest.java
  16. 2 3
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerSubmitRequestRequest.java
  17. 2 4
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerUserTypeAndProxyInfoQueryRequestRequest.java
  18. 2 4
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerVerificationCodeRequestRequest.java
  19. 8 1
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongHeadRequest.java
  20. 12 1
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerActualValueResponse.java
  21. 40 0
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerBaseCodeResponse.java
  22. 1 2
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerBaseResponseHead.java
  23. 5 1
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerComInfoQueryResponse.java
  24. 7 30
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerDocumentsPrintResponse.java
  25. 5 2
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerFindBusinessesResponse.java
  26. 5 2
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerFtpDownloadResponse.java
  27. 5 1
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerLoginResponse.java
  28. 6 2
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerModelsQueryResponse.java
  29. 6 1
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerNewImageQueryResponse.java
  30. 5 2
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerQuotedPriceResponse.java
  31. 5 2
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerSaveResponse.java
  32. 5 2
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerSubmitResponse.java
  33. 5 2
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.java
  34. 6 1
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerVerificationCodeResponse.java
  35. 19 0
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongHeadResponse.java
  36. 2 2
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/service/HuaNongCrawlerQuoteProcessService.java
  37. 27 15
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/service/impl/HuaNongCrawlerQuoteProcessServiceImpl.java
  38. 13 12
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/service/impl/HuaNongCrawlerRequestImpl.java

+ 2 - 0
tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/component/RequestComponent.java

@@ -6,6 +6,7 @@ import com.jzg.commons.exception.SystemException;
 import com.jzg.quotation.commons.utils.RequestObjectConversion;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
+import org.slf4j.MDC;
 import org.springframework.core.ParameterizedTypeReference;
 import org.springframework.core.io.buffer.DataBuffer;
 import org.springframework.core.io.buffer.DataBufferUtils;
@@ -229,6 +230,7 @@ public class RequestComponent {
      */
     public <Response> ResponseEntity<Response> stringPost(String url, Object body, Class<Response> responseClass, HttpHeaders headers) {
         String requestBody = JSON.toJSONString(body);
+        log.info(requestBody);
         return post(url, requestBody, responseClass, headers);
     }
 

+ 41 - 16
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/component/HuaNongCrawlerRequestComponent.java

@@ -14,7 +14,6 @@ import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.core.io.FileSystemResource;
 import org.springframework.http.HttpHeaders;
-import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Component;
 import org.springframework.util.LinkedMultiValueMap;
@@ -23,6 +22,7 @@ import org.springframework.util.StringUtils;
 
 import java.io.File;
 import java.net.URI;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Optional;
@@ -44,7 +44,7 @@ public class HuaNongCrawlerRequestComponent {
 
     private final RequestComponent requestComponent;
 
-    public <Request extends HuaNongHead, Response> Response post(RequestUrl requestUrl, Request body, Class<Response> responseClass, HttpHeaders headers) {
+    public <Request extends HuaNongHeadRequest, Response extends HuaNongHeadResponse> Response post(RequestUrl requestUrl, Request body, Class<Response> responseClass, HttpHeaders headers) {
         HuaNongCrawlerRequestBaseHead head = body.getHead();
         head.setTransCode(requestUrl.getUri());
         JSONObject json = JSONObject.from(body);
@@ -52,7 +52,14 @@ public class HuaNongCrawlerRequestComponent {
         RequestEncryptor.processRequest(json);
         String url = properties.getUrl() + "?" + requestUrl.getRequestSuffix();
         ResponseEntity<String> responseResponseEntity = requestComponent.stringPost(url, json, String.class, headers);
-        return JSON.parseObject(responseResponseEntity.getBody(), responseClass);
+        Response response = JSON.parseObject(responseResponseEntity.getBody(), responseClass);
+        HuaNongCrawlerBaseResponseHead responseHead = Optional.ofNullable(response)
+                .map(HuaNongHeadResponse::getHead)
+                .orElseThrow(() -> new SystemException(requestUrl.getRequestDescription() + "异常"));
+        if ("1".equals(responseHead.getReturnCode())) {
+            throw new SystemException(responseHead.getReturnMessage());
+        }
+        return response;
     }
 
     /**
@@ -62,7 +69,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 验证码信息
      */
-    public HuaNongCrawlerVerificationCodeResponse verificationCode(HuaNongCrawlerVerificationCodeRequest request, HttpHeaders headers) {
+    public HuaNongCrawlerVerificationCodeResponse verificationCode(HuaNongCrawlerVerificationCodeRequestRequest request, HttpHeaders headers) {
         return post(VERIFICATION_CODE, request, HuaNongCrawlerVerificationCodeResponse.class, headers);
     }
 
@@ -73,10 +80,28 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 登录后的信息
      */
-    public HuaNongCrawlerLoginResponse login(HuaNongCrawlerLoginRequest request, HttpHeaders headers) {
+    public HuaNongCrawlerLoginResponse login(HuaNongCrawlerLoginRequestRequest request, HttpHeaders headers) {
         return post(LOGIN, request, HuaNongCrawlerLoginResponse.class, headers);
     }
 
+
+    /**
+     * 归属机构
+     *
+     * @param request 查询归属机构
+     * @param headers 请求头
+     * @return 归属机构
+     */
+    public HuaNongCrawlerBaseCodeResponse.BaseInfoDTO channelSource(HuaNongCrawlerBaseCodeRequestRequest request, HttpHeaders headers, String channelSource) {
+        HuaNongCrawlerBaseCodeResponse baseCodeResponse = post(CHANNEL_SOURCE, request, HuaNongCrawlerBaseCodeResponse.class, headers);
+        return Optional.ofNullable(baseCodeResponse.getBaseInfo())
+                .orElseGet(Collections::emptyList)
+                .stream()
+                .filter(x -> x.getCode().equals(channelSource))
+                .findFirst()
+                .orElse(new HuaNongCrawlerBaseCodeResponse.BaseInfoDTO());
+    }
+
     /**
      * 查询归属信息
      *
@@ -84,7 +109,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 归属信息
      */
-    public HuaNongCrawlerComInfoQueryResponse comInfoQuery(HuaNongCrawlerComInfoQueryRequest request, HttpHeaders headers) {
+    public HuaNongCrawlerComInfoQueryResponse comInfoQuery(HuaNongCrawlerComInfoQueryRequestRequest request, HttpHeaders headers) {
         return post(COM_INFO_QUERY, request, HuaNongCrawlerComInfoQueryResponse.class, headers);
     }
 
@@ -95,7 +120,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 验证码信息
      */
-    public HuaNongCrawlerUserTypeAndProxyInfoQueryResponse userTypeAndProxyInfoQuery(HuaNongCrawlerUserTypeAndProxyInfoQueryRequest request, HttpHeaders headers) {
+    public HuaNongCrawlerUserTypeAndProxyInfoQueryResponse userTypeAndProxyInfoQuery(HuaNongCrawlerUserTypeAndProxyInfoQueryRequestRequest request, HttpHeaders headers) {
         return post(USER_TYPE_AND_PROXY_INFO_QUERY, request, HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.class, headers);
     }
 
@@ -106,7 +131,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 报价信息
      */
-    public HuaNongCrawlerModelsQueryResponse modelsQuery(HuaNongCrawlerModelsQueryRequest request, HttpHeaders headers) {
+    public HuaNongCrawlerModelsQueryResponse modelsQuery(HuaNongCrawlerModelsQueryRequestRequest request, HttpHeaders headers) {
         return post(MODELS_QUERY, request, HuaNongCrawlerModelsQueryResponse.class, headers);
     }
 
@@ -117,7 +142,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 折旧价
      */
-    public String actualValue(HuaNongCrawlerActualValueRequest request, HttpHeaders headers) {
+    public String actualValue(HuaNongCrawlerActualValueRequestRequest request, HttpHeaders headers) {
         HuaNongCrawlerActualValueResponse response = post(ACTUAL_VALUE, request, HuaNongCrawlerActualValueResponse.class, headers);
         return response.getActualValue();
     }
@@ -129,7 +154,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 报价信息
      */
-    public HuaNongCrawlerQuotedPriceResponse quotedPrice(HuaNongCrawlerQuotedPriceRequest request, HttpHeaders headers) {
+    public HuaNongCrawlerQuotedPriceResponse quotedPrice(HuaNongCrawlerQuotedPriceRequestRequest request, HttpHeaders headers) {
         return post(QUOTED_PRICE, request, HuaNongCrawlerQuotedPriceResponse.class, headers);
     }
 
@@ -140,7 +165,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 保存订单信息
      */
-    public void save(HuaNongCrawlerSaveRequest request, HttpHeaders headers) {
+    public void save(HuaNongCrawlerSaveRequestRequest request, HttpHeaders headers) {
         HuaNongCrawlerSaveResponse response = post(SAVE, request, HuaNongCrawlerSaveResponse.class, headers);
 
     }
@@ -152,7 +177,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 跳转页面需要的data
      */
-    public String newImageQuery(HuaNongCrawlerNewImageQueryRequest request, HttpHeaders headers) {
+    public String newImageQuery(HuaNongCrawlerNewImageQueryRequestRequest request, HttpHeaders headers) {
         HuaNongCrawlerNewImageQueryResponse response = post(NEW_IMAGE_QUERY, request, HuaNongCrawlerNewImageQueryResponse.class, headers);
         return response.getData();
     }
@@ -254,7 +279,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 提交核保信息
      */
-    public HuaNongCrawlerSubmitResponse submit(HuaNongCrawlerSubmitRequest request, HttpHeaders headers) {
+    public HuaNongCrawlerSubmitResponse submit(HuaNongCrawlerSubmitRequestRequest request, HttpHeaders headers) {
         return post(SUBMIT, request, HuaNongCrawlerSubmitResponse.class, headers);
     }
 
@@ -265,7 +290,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 保单链接
      */
-    public String ftpDownload(HuaNongCrawlerFtpDownloadRequest request, HttpHeaders headers) {
+    public String ftpDownload(HuaNongCrawlerFtpDownloadRequestRequest request, HttpHeaders headers) {
         HuaNongCrawlerFtpDownloadResponse response = post(FTP_DOWNLOAD, request, HuaNongCrawlerFtpDownloadResponse.class, headers);
         return response.getDowloadURL().get(0).getDowloadURL();
     }
@@ -277,7 +302,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 非车保单下载链接
      */
-    public String documentsPrint(HuaNongCrawlerDocumentsPrintRequest request, HttpHeaders headers) {
+    public String documentsPrint(HuaNongCrawlerDocumentsPrintRequestRequest request, HttpHeaders headers) {
         HuaNongCrawlerDocumentsPrintResponse response = post(DOCUMENTS_PRINT, request, HuaNongCrawlerDocumentsPrintResponse.class, headers);
         String fileUrl = response.getFileUrl();
         return fileUrl.replace(properties.getDocumentsPrintUrl(), properties.getFtpDownloadUrl());
@@ -290,7 +315,7 @@ public class HuaNongCrawlerRequestComponent {
      * @param headers 请求头
      * @return 订单列表
      */
-    public HuaNongCrawlerFindBusinessesResponse findBusinesses(HuaNongCrawlerFindBusinessesRequest request, HttpHeaders headers) {
+    public HuaNongCrawlerFindBusinessesResponse findBusinesses(HuaNongCrawlerFindBusinessesRequestRequest request, HttpHeaders headers) {
         return post(FIND_BUSINESSES, request, HuaNongCrawlerFindBusinessesResponse.class, headers);
     }
 

+ 3 - 1
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/constant/enums/RequestUrl.java

@@ -14,10 +14,12 @@ import lombok.Getter;
 public enum RequestUrl implements CrawlerRequestUrlStandard {
 
     // 登录
-    Message("Message", "发送验证码", "message"),
+    MESSAGE("Message", "发送验证码", "message"),
     VERIFICATION_CODE("VERIFICATIONCODE", "获取验证码", "message"),
     LOGIN("Login", "登录", "login"),
     // 归属信息
+    CHANNEL_SOURCE("BaseCode", "字典查询", "baseCode"),
+
     COM_INFO_QUERY("comInfoQuery", "查询归属机构", "comInfoQuery"),
     USER_TYPE_AND_PROXY_INFO_QUERY("userTypeAndProxyinfoQuery", "渠道类型和代理信息", "userTypeAndProxyinfoQuery"),
     // 报价

+ 2 - 6
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerActualValueRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerActualValueRequestRequest.java

@@ -8,11 +8,10 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerActualValueRequest implements Serializable, HuaNongHead {
+public class HuaNongCrawlerActualValueRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = 3848690084024362135L;
@@ -50,10 +49,7 @@ public class HuaNongCrawlerActualValueRequest implements Serializable, HuaNongHe
     @JsonProperty("EnergyType")
     private String energyType;
 
-    public HuaNongCrawlerActualValueRequest(String token,
-                                            String loginCom,
-                                            HuaNongCrawlerModelsQueryResponse.CarModelDTO carModelDTO,
-                                            CarInfoVo carInfoVo) {
+    public HuaNongCrawlerActualValueRequestRequest(String token, String loginCom, HuaNongCrawlerModelsQueryResponse.CarModelDTO carModelDTO, CarInfoVo carInfoVo) {
         this.head = new HuaNongCrawlerRequestBaseHead(token);
         this.localModelCode = carModelDTO.getFullCarData().getLocalModelCode();
         this.approvedPassengersCapacity = Integer.valueOf(carInfoVo.getSeatCount());

+ 49 - 0
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerBaseCodeRequestRequest.java

@@ -0,0 +1,49 @@
+package com.jzg.quotation.huanong.crawler.entity.request;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serial;
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * @description: 大家财险请求通用信息请求接口
+ * @author: wenks
+ * @date: 2025/6/18 16:47
+ **/
+@NoArgsConstructor
+@Data
+public class HuaNongCrawlerBaseCodeRequestRequest implements HuaNongHeadRequest {
+
+    @Serial
+    private static final long serialVersionUID = -2726060030361984854L;
+
+    @JsonProperty("head")
+    private HuaNongCrawlerRequestBaseHead head;
+
+    @JsonProperty("queryType")
+    private String queryType;
+
+    @JsonProperty("conditions")
+    private List<?> conditions;
+
+    @JsonProperty("loginCom")
+    private String loginCom;
+
+    @JsonProperty("userCode")
+    private String userCode;
+
+    @JsonProperty("riskCode")
+    private String riskCode;
+
+    public HuaNongCrawlerBaseCodeRequestRequest(String token, String loginCom, String userCode, String queryType) {
+        this.head = new HuaNongCrawlerRequestBaseHead(token);
+        this.conditions = Collections.emptyList();
+        this.queryType = queryType;
+        this.loginCom = loginCom;
+        this.userCode = userCode;
+        this.riskCode = "";
+    }
+}

+ 2 - 3
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerComInfoQueryRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerComInfoQueryRequestRequest.java

@@ -6,7 +6,6 @@ import lombok.Getter;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 
 
 /**
@@ -16,7 +15,7 @@ import java.io.Serializable;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerComInfoQueryRequest implements Serializable, HuaNongHead {
+public class HuaNongCrawlerComInfoQueryRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = -7566804567059721650L;
@@ -31,7 +30,7 @@ public class HuaNongCrawlerComInfoQueryRequest implements Serializable, HuaNongH
     @JsonProperty("flag")
     private String flag;
 
-    public HuaNongCrawlerComInfoQueryRequest(String comCode, String token) {
+    public HuaNongCrawlerComInfoQueryRequestRequest(String comCode, String token) {
         this.head = new HuaNongCrawlerRequestBaseHead(token);
         this.comCode = comCode;
         this.flag = "1";

+ 1 - 3
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerDocumentsPrintRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerDocumentsPrintRequestRequest.java

@@ -5,18 +5,16 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 import java.util.List;
 
 /**
- * @version
  * @description: 华农财险 爬虫 非车险保单请求
  * @author: wenks
  * @date: 2025/3/25 11:21
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerDocumentsPrintRequest implements Serializable, HuaNongHead  {
+public class HuaNongCrawlerDocumentsPrintRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = 4496389865677680959L;

+ 2 - 3
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerFindBusinessesRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerFindBusinessesRequestRequest.java

@@ -5,7 +5,6 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 import java.util.List;
 
 /**
@@ -15,7 +14,7 @@ import java.util.List;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerFindBusinessesRequest implements Serializable, HuaNongHead {
+public class HuaNongCrawlerFindBusinessesRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = -1977232815995533612L;
@@ -125,7 +124,7 @@ public class HuaNongCrawlerFindBusinessesRequest implements Serializable, HuaNon
     @JsonProperty("expireDateEnd")
     private String expireDateEnd;
 
-    public HuaNongCrawlerFindBusinessesRequest(String token, String loginCom) {
+    public HuaNongCrawlerFindBusinessesRequestRequest(String token, String loginCom) {
         this.head = new HuaNongCrawlerRequestBaseHead(token);
         this.loginCom = loginCom;
         this.rows = 1;

+ 2 - 3
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerFtpDownloadRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerFtpDownloadRequestRequest.java

@@ -5,7 +5,6 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 import java.util.List;
 
 /**
@@ -15,11 +14,11 @@ import java.util.List;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerFtpDownloadRequest implements Serializable, HuaNongHead {
+public class HuaNongCrawlerFtpDownloadRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = 6018163851123731993L;
-    
+
     @JsonProperty("head")
     private HuaNongCrawlerRequestBaseHead head;
 

+ 3 - 4
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerLoginRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerLoginRequestRequest.java

@@ -6,7 +6,6 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 
 /**
  * @description: 大家财险 登录 请求
@@ -15,7 +14,7 @@ import java.io.Serializable;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerLoginRequest implements Serializable, HuaNongHead {
+public class HuaNongCrawlerLoginRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = 4577459748247898283L;
@@ -50,7 +49,7 @@ public class HuaNongCrawlerLoginRequest implements Serializable, HuaNongHead {
     @JsonProperty("pwd")
     private String pwd;
 
-    public HuaNongCrawlerLoginRequest(String username, String password, String captchaKey, String captcha) {
+    public HuaNongCrawlerLoginRequestRequest(String username, String password, String captchaKey, String captcha) {
         this.head = new HuaNongCrawlerRequestBaseHead("");
         this.userCode = username;
         this.type = type;
@@ -60,6 +59,6 @@ public class HuaNongCrawlerLoginRequest implements Serializable, HuaNongHead {
         this.mobile = "";
         this.saaLoginFlag = "1";
         this.verificationNo = "";
-        this.pwd = Base64.encodeToString(password) ;
+        this.pwd = Base64.encodeToString(password);
     }
 }

+ 2 - 3
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerModelsQueryRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerModelsQueryRequestRequest.java

@@ -6,7 +6,6 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 
 /**
  * @description: 华农财险 车型查询 请求
@@ -15,7 +14,7 @@ import java.io.Serializable;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerModelsQueryRequest  implements Serializable, HuaNongHead {
+public class HuaNongCrawlerModelsQueryRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = 6713193234259181775L;
@@ -71,7 +70,7 @@ public class HuaNongCrawlerModelsQueryRequest  implements Serializable, HuaNongH
     @JsonProperty("windowsFlag")
     private String windowsFlag;
 
-    public HuaNongCrawlerModelsQueryRequest(String token, String loginCom,CarInfoVo carInfoVo) {
+    public HuaNongCrawlerModelsQueryRequestRequest(String token, String loginCom, CarInfoVo carInfoVo) {
         this.head = new HuaNongCrawlerRequestBaseHead(token);
         this.loginCom = loginCom;
         this.pageNo = "1";

+ 1 - 2
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerNewImageQueryRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerNewImageQueryRequestRequest.java

@@ -5,7 +5,6 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 
 /**
  * @description: 华农财险 爬虫 新影像上传
@@ -14,7 +13,7 @@ import java.io.Serializable;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerNewImageQueryRequest implements Serializable, HuaNongHead {
+public class HuaNongCrawlerNewImageQueryRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = 7337617295810357364L;

+ 57 - 55
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerQuotedPriceRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerQuotedPriceRequestRequest.java

@@ -2,12 +2,9 @@ package com.jzg.quotation.huanong.crawler.entity.request;
 
 import cn.hutool.core.codec.Base64;
 import com.fasterxml.jackson.annotation.JsonProperty;
-import com.jzg.commons.entity.quote.vo.CarInfoVo;
-import com.jzg.commons.entity.quote.vo.CustomerInfoVo;
-import com.jzg.commons.entity.quote.vo.KindInfoVo;
-import com.jzg.commons.entity.quote.vo.RiskInfoVo;
-import com.jzg.commons.entity.quote.vo.QuoteVo;
+import com.jzg.commons.entity.quote.vo.*;
 import com.jzg.quotation.huanong.crawler.entity.HuaNongCrawlerConfigureParameters;
+import com.jzg.quotation.huanong.crawler.entity.response.HuaNongCrawlerBaseCodeResponse;
 import com.jzg.quotation.huanong.crawler.entity.response.HuaNongCrawlerComInfoQueryResponse;
 import com.jzg.quotation.huanong.crawler.entity.response.HuaNongCrawlerModelsQueryResponse;
 import com.jzg.quotation.huanong.crawler.entity.response.HuaNongCrawlerUserTypeAndProxyInfoQueryResponse;
@@ -16,7 +13,6 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
@@ -29,7 +25,7 @@ import java.util.List;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerQuotedPriceRequest implements Serializable, HuaNongHead {
+public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = -5873004327248461555L;
@@ -52,19 +48,21 @@ public class HuaNongCrawlerQuotedPriceRequest implements Serializable, HuaNongHe
     @JsonProperty("businessData")
     private BusinessDataDTO businessData;
 
-    public HuaNongCrawlerQuotedPriceRequest(String token,
-                                            String username,
-                                            QuoteVo quoteVo,
-                                            String loginCom,
-                                            String comeCode,
-                                            HuaNongCrawlerModelsQueryResponse.CarModelDTO carModelDTO,
-                                            String actualValue) {
+    public HuaNongCrawlerQuotedPriceRequestRequest(String token,
+                                                   String username,
+                                                   QuoteVo quoteVo,
+                                                   String loginComCode,
+                                                   String actualValue,
+                                                   HuaNongCrawlerConfigureParameters parameters,
+                                                   HuaNongCrawlerModelsQueryResponse.CarModelDTO carModelDTO,
+                                                   HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.SaleInfoDTO saleInfoDTO) {
         this.head = new HuaNongCrawlerRequestBaseHead(token);
-        this.loginCom = loginCom;
+        this.loginCom = loginComCode;
         this.userCode = username;
-        this.comeCode = comeCode;
-        this.agentCode = "";
-        this.businessData = new BusinessDataDTO(quoteVo, carModelDTO, loginCom, comeCode, actualValue);
+        this.comeCode = parameters.getComCode();
+        this.agentCode = saleInfoDTO.getAgentCode();
+        this.businessData = new BusinessDataDTO(quoteVo, carModelDTO, loginComCode, parameters.getLoginCom(), actualValue, saleInfoDTO);
+
     }
 
     @NoArgsConstructor
@@ -150,8 +148,9 @@ public class HuaNongCrawlerQuotedPriceRequest implements Serializable, HuaNongHe
         private List<Object> glassInfo;
 
 
-        public BusinessDataDTO(QuoteVo quoteVo, HuaNongCrawlerModelsQueryResponse.CarModelDTO carModelDTO, String loginCom, String comeCode,  String actualValue) {
-            this.businessMain = new BusinessMainDTO(loginCom, comeCode);
+        public BusinessDataDTO(QuoteVo quoteVo, HuaNongCrawlerModelsQueryResponse.CarModelDTO carModelDTO, String loginCom, String loginComName, String actualValue, HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.SaleInfoDTO saleInfoDTO) {
+            this.saleInfo = saleInfoDTO;
+            this.businessMain = new BusinessMainDTO(loginCom, loginComName);
             this.insuredObject = new InsuredObjectDTO(carModelDTO, quoteVo.getCarInfoVo(), quoteVo.getOwnersInfo(), actualValue);
             this.platFormMessageNvehBean = new PlatFormMessageNvehBeanDTO("");
             this.sum = 0;
@@ -252,40 +251,40 @@ public class HuaNongCrawlerQuotedPriceRequest implements Serializable, HuaNongHe
             @JsonProperty("isAloneInsureNveh")
             private Integer isAloneInsureNveh;
 
-            public BusinessMainDTO(String loginCom, String comeCode) {
+            public BusinessMainDTO(String makeCom, String makeComName) {
                 this.accessSource = "";
                 this.agreementNo = "";
                 this.appointAreaCode = "";
-                this.argueSolution = "";
+                this.argueSolution = "1";
                 this.argueSolutionCom = "";
-                this.beforeFXQStockOnline = beforeFXQStockOnline;
-                this.billAcceptDate = billAcceptDate;
+                this.beforeFXQStockOnline = false;
+                this.billAcceptDate = "";
                 this.businessType = "2";
-                this.constract5 = constract5;
-                this.hnscoreGroup = hnscoreGroup;
-                this.inputDateTime = inputDateTime;
-                this.isAloneCorrectingNveh = isAloneCorrectingNveh;
-                this.isAsync = isAsync;
-                this.isCorrectGLASS = isCorrectGLASS;
-                this.isCorrectHOME = isCorrectHOME;
-                this.isCorrectNVEH = isCorrectNVEH;
-                this.isElectronicInsuredFlag = isElectronicInsuredFlag;
-                this.isFace = isFace;
+                this.constract5 = "";
+                this.hnscoreGroup = "";
+                this.inputDateTime = "";
+                this.isAloneCorrectingNveh = "";
+                this.isAsync = false;
+                this.isCorrectGLASS = false;
+                this.isCorrectHOME = false;
+                this.isCorrectNVEH = false;
+                this.isElectronicInsuredFlag = false;
+                this.isFace = "";
                 this.makeCom = makeCom;
                 this.makeComName = makeComName;
-                this.operateDateTime = operateDateTime;
-                this.operatorName = operatorName;
-                this.relateType = relateType;
-                this.underWriteEndDate = underWriteEndDate;
-                this.underwritingReminderFlag = underwritingReminderFlag;
-                this.verificationCode = verificationCode;
-                this.reCalculateFlag = reCalculateFlag;
-                this.suggestedDiscountQuoted = suggestedDiscountQuoted;
-                this.priceAdjustType = priceAdjustType;
-                this.quoteFlag = quoteFlag;
-                this.quoteMd5 = quoteMd5;
-                this.isPeerComparison = isPeerComparison;
-                this.isRunFlag = isRunFlag;
+                this.operateDateTime = "";
+                this.operatorName = "";
+                this.relateType = "";
+                this.underWriteEndDate = "";
+                this.underwritingReminderFlag = "";
+                this.verificationCode = "";
+                this.reCalculateFlag = "0";
+                this.suggestedDiscountQuoted = "";
+                this.priceAdjustType = "1";
+                this.quoteFlag = "0";
+                this.quoteMd5 = "";
+                this.isPeerComparison = "";
+                this.isRunFlag = "";
                 this.bjLogId = "";
                 this.lastPolicyNos = Collections.emptyList();
                 this.isAloneInsureNveh = 0;
@@ -501,7 +500,7 @@ public class HuaNongCrawlerQuotedPriceRequest implements Serializable, HuaNongHe
                 @JsonProperty("certificateDate")
                 private String certificateDate;
 
-                public PolicyCarDTO(CarInfoVo carInfoVo, CustomerInfoVo ownersInfo, HuaNongCrawlerModelsQueryResponse.CarModelDTO.FullCarDataDTO fullCarDataDTO,  String actualValue) {
+                public PolicyCarDTO(CarInfoVo carInfoVo, CustomerInfoVo ownersInfo, HuaNongCrawlerModelsQueryResponse.CarModelDTO.FullCarDataDTO fullCarDataDTO, String actualValue) {
                     this.actualValue = actualValue;
                     this.bankCode = "";
                     this.bankName = "";
@@ -879,6 +878,8 @@ public class HuaNongCrawlerQuotedPriceRequest implements Serializable, HuaNongHe
             public SaleInfoDTO(HuaNongCrawlerComInfoQueryResponse.ComListDTO comListDTO,
                                HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.HandlerListDTO handlerListDTO,
                                HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.AgentInfoListDTO agentInfoListDTO,
+                               HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.ProducerListDTO producerListDTO,
+                               HuaNongCrawlerBaseCodeResponse.BaseInfoDTO baseInfoDTO,
                                String callerName) {
                 this.agentAddress = agentInfoListDTO.getAgentAddress();
                 this.agentCode = agentInfoListDTO.getAgentCode();
@@ -902,12 +903,11 @@ public class HuaNongCrawlerQuotedPriceRequest implements Serializable, HuaNongHe
                 this.staffName = "";
                 this.teamCode = handlerListDTO.getTeamCode();
                 this.teamName = handlerListDTO.getTeamName();
-                this.channelSource = "";
-                this.channelSourceName = "";
-
-                this.producerCode = "";
-                this.producerName = "";
+                this.channelSource = baseInfoDTO.getCode();
+                this.channelSourceName = baseInfoDTO.getValue();
 
+                this.producerCode = producerListDTO.getProducerCode();
+                this.producerName = producerListDTO.getProducerName();
             }
 
             @NoArgsConstructor
@@ -954,7 +954,7 @@ public class HuaNongCrawlerQuotedPriceRequest implements Serializable, HuaNongHe
                     this.handlerName = handlerListDTO.getHandlerName();
                     this.handlerIdentifynumber = handlerListDTO.getHandlerCode();
                     this.handlerMobile = handlerListDTO.getHandlerMobile();
-                    this.riskClassType = "201705";
+                    this.riskClassType = handlerListDTO.getRiskClassType();
                 }
             }
         }
@@ -1256,7 +1256,9 @@ public class HuaNongCrawlerQuotedPriceRequest implements Serializable, HuaNongHe
             private static ContractDTO getBiContractDTO(RiskInfoVo biRiskInfoVo, List<KindInfoVo> kindInfoVo) {
                 ContractDTO contractDTO = new ContractDTO();
 
-                List<CoverageDTO> coverageDTOS = kindInfoVo.stream().map(kind -> new CoverageDTO(biRiskInfoVo, kind)).toList();
+                List<CoverageDTO> coverageDTOS = kindInfoVo.stream()
+                        .map(kind -> new CoverageDTO(biRiskInfoVo, kind))
+                        .toList();
                 contractDTO.setCoverage(coverageDTOS);
 
                 return new ContractDTO();

+ 0 - 1
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerRequestBaseHead.java

@@ -6,7 +6,6 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 /**
- * @version
  * @description: 华农财险 请求 head
  * @author: wenks
  * @date: 2025/3/20 11:21

+ 7 - 8
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerSaveRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerSaveRequestRequest.java

@@ -6,7 +6,6 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
@@ -19,7 +18,7 @@ import java.util.stream.Collectors;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerSaveRequest implements Serializable, HuaNongHead {
+public class HuaNongCrawlerSaveRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = 5383273187105919255L;
@@ -32,9 +31,9 @@ public class HuaNongCrawlerSaveRequest implements Serializable, HuaNongHead {
     private String loginCom;
 
 
-    public HuaNongCrawlerSaveRequest(List<HuaNongCrawlerQuotedPriceRequest.BusinessDataDTO.ContractDTO> contract,
-                                     List<HuaNongCrawlerQuotedPriceRequest.BusinessDataDTO.ContractAccidentDTO> contractAccident,
-                                     String token, String loginCom) {
+    public HuaNongCrawlerSaveRequestRequest(List<HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.ContractDTO> contract,
+                                            List<HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.ContractAccidentDTO> contractAccident,
+                                            String token, String loginCom) {
         this.head = new HuaNongCrawlerRequestBaseHead(token);
         this.businessData = new BusinessDataDTO(contract, contractAccident);
         this.loginCom = loginCom;
@@ -61,8 +60,8 @@ public class HuaNongCrawlerSaveRequest implements Serializable, HuaNongHead {
         @JsonProperty("ocrIdentityInfoId")
         private List<Object> ocrIdentityInfoId;
 
-        public BusinessDataDTO(List<HuaNongCrawlerQuotedPriceRequest.BusinessDataDTO.ContractDTO> contract,
-                               List<HuaNongCrawlerQuotedPriceRequest.BusinessDataDTO.ContractAccidentDTO> contractAccident) {
+        public BusinessDataDTO(List<HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.ContractDTO> contract,
+                               List<HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.ContractAccidentDTO> contractAccident) {
             this.contract = new ArrayList<>();
             contract.forEach(item -> {
                 String riskCode = item.getContractMain().getRiskCode();
@@ -120,7 +119,7 @@ public class HuaNongCrawlerSaveRequest implements Serializable, HuaNongHead {
             @JsonProperty("riskCode")
             private String riskCode;
 
-            public ContractNvehDTO(HuaNongCrawlerQuotedPriceRequest.BusinessDataDTO.ContractAccidentDTO.ContractMainDTO contractMain) {
+            public ContractNvehDTO(HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.ContractAccidentDTO.ContractMainDTO contractMain) {
                 this.provisonalNo = contractMain.getContractNo();
                 this.relationProNo = "";
                 this.proposalNo = "";

+ 2 - 3
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerSubmitRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerSubmitRequestRequest.java

@@ -7,7 +7,6 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Optional;
@@ -20,7 +19,7 @@ import java.util.Optional;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerSubmitRequest implements Serializable, HuaNongHead {
+public class HuaNongCrawlerSubmitRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = -5508418245097370566L;
@@ -50,7 +49,7 @@ public class HuaNongCrawlerSubmitRequest implements Serializable, HuaNongHead {
     private String htmlSource;
 
 
-    public HuaNongCrawlerSubmitRequest(HuaNongCrawlerOrder huaNongCrawlerOrder, String token, String loginCom) {
+    public HuaNongCrawlerSubmitRequestRequest(HuaNongCrawlerOrder huaNongCrawlerOrder, String token, String loginCom) {
         this.head = new HuaNongCrawlerRequestBaseHead(token);
         this.operateType = "1";
         this.contractMain = ContractMainDTO.toContractMainDTO(huaNongCrawlerOrder);

+ 2 - 4
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerUserTypeAndProxyInfoQueryRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerUserTypeAndProxyInfoQueryRequestRequest.java

@@ -5,18 +5,16 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serial;
-import java.io.Serializable;
 
 
 /**
- * @version
  * @description: 华农财险 渠道类型和代理信息 请求
  * @author: wenks
  * @date: 2025/3/20 11:22
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerUserTypeAndProxyInfoQueryRequest implements Serializable, HuaNongHead {
+public class HuaNongCrawlerUserTypeAndProxyInfoQueryRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = 6595377147028787981L;
@@ -37,7 +35,7 @@ public class HuaNongCrawlerUserTypeAndProxyInfoQueryRequest implements Serializa
     private String userCode;
 
 
-    public HuaNongCrawlerUserTypeAndProxyInfoQueryRequest(String username, String token, String loginCom, String comCode) {
+    public HuaNongCrawlerUserTypeAndProxyInfoQueryRequestRequest(String username, String token, String loginCom, String comCode) {
         this.head = new HuaNongCrawlerRequestBaseHead(token);
         this.loginCom = loginCom;
         this.comCode = comCode;

+ 2 - 4
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerVerificationCodeRequest.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongCrawlerVerificationCodeRequestRequest.java

@@ -4,16 +4,14 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 
 import java.io.Serial;
-import java.io.Serializable;
 
 /**
- * @version
  * @description: 华农财险 验证码 请求
  * @author: wenks
  * @date: 2025/3/20 11:23
  **/
 @Data
-public class HuaNongCrawlerVerificationCodeRequest implements Serializable, HuaNongHead  {
+public class HuaNongCrawlerVerificationCodeRequestRequest implements HuaNongHeadRequest {
 
     @Serial
     private static final long serialVersionUID = 4115125832315355447L;
@@ -21,7 +19,7 @@ public class HuaNongCrawlerVerificationCodeRequest implements Serializable, HuaN
     @JsonProperty("head")
     private HuaNongCrawlerRequestBaseHead head;
 
-    public HuaNongCrawlerVerificationCodeRequest() {
+    public HuaNongCrawlerVerificationCodeRequestRequest() {
         this.head = new HuaNongCrawlerRequestBaseHead("");
     }
 

+ 8 - 1
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongHead.java → tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/request/HuaNongHeadRequest.java

@@ -1,12 +1,19 @@
 package com.jzg.quotation.huanong.crawler.entity.request;
 
+import java.io.Serializable;
+
 /**
  * @description: head 接口
  * @author: wenks
  * @date: 2025/3/20 14:13
  **/
-public interface HuaNongHead {
+public interface HuaNongHeadRequest extends Serializable {
 
+    /**
+     * 获取请求head
+     *
+     * @return head
+     */
     HuaNongCrawlerRequestBaseHead getHead();
 
 }

+ 12 - 1
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerActualValueResponse.java

@@ -4,22 +4,33 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
+
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerActualValueResponse {
+public class HuaNongCrawlerActualValueResponse implements HuaNongHeadResponse {
+
+    @Serial
+    private static final long serialVersionUID = -1111614139013668844L;
 
     @JsonProperty("actualValue")
     private String actualValue;
+
     @JsonProperty("head")
     private HuaNongCrawlerBaseResponseHead head;
+
     @JsonProperty("lowValue")
     private Double lowValue;
+
     @JsonProperty("permonthRate")
     private Double permonthRate;
+
     @JsonProperty("supValue")
     private Double supValue;
+
     @JsonProperty("useYears")
     private Integer useYears;
+
     @JsonProperty("useYearsDetail")
     private Double useYearsDetail;
 

+ 40 - 0
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerBaseCodeResponse.java

@@ -0,0 +1,40 @@
+package com.jzg.quotation.huanong.crawler.entity.response;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serial;
+import java.util.List;
+
+@NoArgsConstructor
+@Data
+public class HuaNongCrawlerBaseCodeResponse implements HuaNongHeadResponse {
+
+    @Serial
+    private static final long serialVersionUID = 2043370098186424356L;
+
+    @JsonProperty("baseInfo")
+    private List<BaseInfoDTO> baseInfo;
+
+    @JsonProperty("head")
+    private HuaNongCrawlerBaseResponseHead head;
+
+    @JsonProperty("pageNo")
+    private Integer pageNo;
+
+    @JsonProperty("totalRow")
+    private Integer totalRow;
+
+    @NoArgsConstructor
+    @Data
+    public static class BaseInfoDTO {
+
+        @JsonProperty("code")
+        private String code;
+
+        @JsonProperty("value")
+        private String value;
+    }
+
+}

+ 1 - 2
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerBaseResponseHead.java

@@ -5,14 +5,13 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 /**
- * @version
  * @description: 华农财险 响应 head
  * @author: wenks
  * @date: 2025/3/20 11:23
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerBaseResponseHead {
+public class HuaNongCrawlerBaseResponseHead  {
 
     @JsonProperty("errorCode")
     private String errorCode;

+ 5 - 1
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerComInfoQueryResponse.java

@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
 import java.util.List;
 
 
@@ -14,7 +15,10 @@ import java.util.List;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerComInfoQueryResponse {
+public class HuaNongCrawlerComInfoQueryResponse implements HuaNongHeadResponse{
+
+    @Serial
+    private static final long serialVersionUID = 5714052780968307221L;
 
     @JsonProperty("comList")
     private List<ComListDTO> comList;

+ 7 - 30
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerDocumentsPrintResponse.java

@@ -4,6 +4,8 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
+
 /**
  * @description: 华农财险 非车险保单下载 响应
  * @author: wenks
@@ -11,7 +13,10 @@ import lombok.NoArgsConstructor;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerDocumentsPrintResponse {
+public class HuaNongCrawlerDocumentsPrintResponse implements HuaNongHeadResponse{
+
+    @Serial
+    private static final long serialVersionUID = -329060115522620265L;
 
     @JsonProperty("fileName")
     private String fileName;
@@ -20,34 +25,6 @@ public class HuaNongCrawlerDocumentsPrintResponse {
     private String fileUrl;
 
     @JsonProperty("head")
-    private HeadDTO head;
-
-    @NoArgsConstructor
-    @Data
-    public static class HeadDTO {
-
-        @JsonProperty("errorCode")
-        private String errorCode;
-
-        @JsonProperty("logId")
-        private String logId;
-
-        @JsonProperty("returnCode")
-        private String returnCode;
-
-        @JsonProperty("returnMessage")
-        private String returnMessage;
-
-        @JsonProperty("token")
-        private String token;
-
-        @JsonProperty("transCode")
-        private String transCode;
-
-        @JsonProperty("transType")
-        private String transType;
+    private HuaNongCrawlerBaseResponseHead head;
 
-        @JsonProperty("sign")
-        private String sign;
-    }
 }

+ 5 - 2
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerFindBusinessesResponse.java

@@ -4,17 +4,20 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
 import java.util.List;
 
 /**
- * @version
  * @description: 华农财险 投保单状态查询 响应
  * @author: wenks
  * @date: 2025/3/25 10:02
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerFindBusinessesResponse {
+public class HuaNongCrawlerFindBusinessesResponse implements HuaNongHeadResponse{
+
+    @Serial
+    private static final long serialVersionUID = -4673462603962561921L;
 
     @JsonProperty("business")
     private List<BusinessDTO> business;

+ 5 - 2
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerFtpDownloadResponse.java

@@ -5,17 +5,20 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
 import java.util.List;
 
 /**
- * @version
  * @description: 华农财险 下载保单
  * @author: wenks
  * @date: 2025/3/25 9:41
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerFtpDownloadResponse {
+public class HuaNongCrawlerFtpDownloadResponse implements HuaNongHeadResponse{
+
+    @Serial
+    private static final long serialVersionUID = 5993537141569990809L;
 
     @JsonProperty("dowloadURL")
     private List<DowloadURLDTO> dowloadURL;

+ 5 - 1
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerLoginResponse.java

@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
 import java.util.List;
 
 /**
@@ -13,7 +14,10 @@ import java.util.List;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerLoginResponse {
+public class HuaNongCrawlerLoginResponse implements HuaNongHeadResponse {
+
+    @Serial
+    private static final long serialVersionUID = -3099838282056091123L;
 
     @JsonProperty("carOwnerQiTaPower")
     private String carOwnerQiTaPower;

+ 6 - 2
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerModelsQueryResponse.java

@@ -5,6 +5,7 @@ import com.jzg.quotation.commons.filter.CarModelsFilter;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
 import java.util.List;
 
 /**
@@ -14,7 +15,10 @@ import java.util.List;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerModelsQueryResponse {
+public class HuaNongCrawlerModelsQueryResponse implements HuaNongHeadResponse {
+
+    @Serial
+    private static final long serialVersionUID = -6002742614927679583L;
 
     @JsonProperty("carModel")
     private List<CarModelDTO> carModel;
@@ -53,7 +57,7 @@ public class HuaNongCrawlerModelsQueryResponse {
 
         @NoArgsConstructor
         @Data
-        public static class FullCarDataDTO{
+        public static class FullCarDataDTO {
 
             @JsonProperty("absFlag")
             private String absFlag;

+ 6 - 1
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerNewImageQueryResponse.java

@@ -4,6 +4,8 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
+
 
 /**
  * @description: 大家财险 上传影像 跳转页面
@@ -12,7 +14,10 @@ import lombok.NoArgsConstructor;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerNewImageQueryResponse {
+public class HuaNongCrawlerNewImageQueryResponse implements HuaNongHeadResponse {
+
+    @Serial
+    private static final long serialVersionUID = -894572684497594836L;
 
     @JsonProperty("data")
     private String data;

+ 5 - 2
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerQuotedPriceResponse.java

@@ -4,17 +4,20 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
 import java.util.List;
 
 /**
- * @version
  * @description: 华农财险 保费计算 响应
  * @author: wenks
  * @date: 2025/3/20 11:24
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerQuotedPriceResponse {
+public class HuaNongCrawlerQuotedPriceResponse implements HuaNongHeadResponse{
+
+    @Serial
+    private static final long serialVersionUID = -5612292812326405141L;
 
     @JsonProperty("head")
     private HuaNongCrawlerBaseResponseHead head;

+ 5 - 2
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerSaveResponse.java

@@ -4,18 +4,21 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
 import java.util.List;
 
 
 /**
- * @version
  * @description: 华农财险 保存订单 响应
  * @author: wenks
  * @date: 2025/3/20 11:24
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerSaveResponse {
+public class HuaNongCrawlerSaveResponse implements HuaNongHeadResponse {
+
+    @Serial
+    private static final long serialVersionUID = 7498309693697089048L;
 
     @JsonProperty("businessData")
     private BusinessDataDTO businessData;

+ 5 - 2
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerSubmitResponse.java

@@ -4,17 +4,20 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
 import java.util.List;
 
 /**
- * @version
  * @description: 华农财险 提交核保 响应
  * @author: wenks
  * @date: 2025/3/20 11:24
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerSubmitResponse {
+public class HuaNongCrawlerSubmitResponse implements HuaNongHeadResponse {
+
+    @Serial
+    private static final long serialVersionUID = 8087394692131380596L;
 
     @JsonProperty("appliResult")
     private List<AppliResultDTO> appliResult;

+ 5 - 2
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.java

@@ -4,17 +4,20 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
 import java.util.List;
 
 /**
- * @version
  * @description: 华农财险 渠道类型和代理信息 响应
  * @author: wenks
  * @date: 2025/3/20 11:25
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerUserTypeAndProxyInfoQueryResponse {
+public class HuaNongCrawlerUserTypeAndProxyInfoQueryResponse implements HuaNongHeadResponse {
+
+    @Serial
+    private static final long serialVersionUID = -3010491639092019154L;
 
     @JsonProperty("agentInfoList")
     private List<AgentInfoListDTO> agentInfoList;

+ 6 - 1
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongCrawlerVerificationCodeResponse.java

@@ -4,6 +4,8 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.io.Serial;
+
 
 /**
  * @description: 华农财险 验证码 响应
@@ -12,7 +14,10 @@ import lombok.NoArgsConstructor;
  **/
 @NoArgsConstructor
 @Data
-public class HuaNongCrawlerVerificationCodeResponse {
+public class HuaNongCrawlerVerificationCodeResponse implements HuaNongHeadResponse {
+
+    @Serial
+    private static final long serialVersionUID = -1067345386688802815L;
 
     @JsonProperty("captchaKey")
     private String captchaKey;

+ 19 - 0
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/entity/response/HuaNongHeadResponse.java

@@ -0,0 +1,19 @@
+package com.jzg.quotation.huanong.crawler.entity.response;
+
+import java.io.Serializable;
+
+/**
+ * @description: 华农响应头
+ * @author: wenks
+ * @date: 2025/6/18 17:41
+ **/
+public interface HuaNongHeadResponse extends Serializable {
+
+    /**
+     * 获取响应head
+     *
+     * @return head
+     */
+    HuaNongCrawlerBaseResponseHead getHead();
+
+}

+ 2 - 2
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/service/HuaNongCrawlerQuoteProcessService.java

@@ -2,7 +2,7 @@ package com.jzg.quotation.huanong.crawler.service;
 
 import com.jzg.commons.entity.quote.vo.image.InsuranceImageVo;
 import com.jzg.quotation.huanong.crawler.entity.HuaNongCrawlerConfigureParameters;
-import com.jzg.quotation.huanong.crawler.entity.request.HuaNongCrawlerQuotedPriceRequest;
+import com.jzg.quotation.huanong.crawler.entity.request.HuaNongCrawlerQuotedPriceRequestRequest;
 
 import java.util.List;
 
@@ -25,7 +25,7 @@ public interface HuaNongCrawlerQuoteProcessService {
      * @param token                             token
      * @param loginComCode                      登录机构编码
      */
-    HuaNongCrawlerQuotedPriceRequest.BusinessDataDTO.SaleInfoDTO attributionInformation(HuaNongCrawlerConfigureParameters huaNongCrawlerConfigureParameters, String username, String token, String loginComCode);
+    HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.SaleInfoDTO attributionInformation(HuaNongCrawlerConfigureParameters huaNongCrawlerConfigureParameters, String username, String token, String loginComCode);
 
     /**
      * 上传影像

+ 27 - 15
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/service/impl/HuaNongCrawlerQuoteProcessServiceImpl.java

@@ -16,6 +16,7 @@ import org.springframework.http.HttpHeaders;
 import org.springframework.stereotype.Service;
 
 import java.io.File;
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import java.util.Optional;
@@ -62,12 +63,12 @@ public class HuaNongCrawlerQuoteProcessServiceImpl implements HuaNongCrawlerQuot
         for (int i = 0; i < LOGIN_RETRY_COUNT; i++) {
             HttpHeaders httpHeaders = new HttpHeaders();
             // 验证码
-            HuaNongCrawlerVerificationCodeRequest huaNongCrawlerVerificationCodeRequest = new HuaNongCrawlerVerificationCodeRequest();
+            HuaNongCrawlerVerificationCodeRequestRequest huaNongCrawlerVerificationCodeRequest = new HuaNongCrawlerVerificationCodeRequestRequest();
             HuaNongCrawlerVerificationCodeResponse huaNongCrawlerVerificationCodeResponse = huaNongCrawlerRequestComponent.verificationCode(huaNongCrawlerVerificationCodeRequest, httpHeaders);
             // 识别验证码
             String captcha = exteriorUtilsRequest.captchaIdentify(huaNongCrawlerVerificationCodeResponse.getImageStream());
             // 登录
-            HuaNongCrawlerLoginRequest huaNongCrawlerLoginRequest = new HuaNongCrawlerLoginRequest(username, password, huaNongCrawlerVerificationCodeResponse.getCaptchaKey(), captcha);
+            HuaNongCrawlerLoginRequestRequest huaNongCrawlerLoginRequest = new HuaNongCrawlerLoginRequestRequest(username, password, huaNongCrawlerVerificationCodeResponse.getCaptchaKey(), captcha);
             HuaNongCrawlerLoginResponse login = huaNongCrawlerRequestComponent.login(huaNongCrawlerLoginRequest, httpHeaders);
             if (isLoginSuccessful(login)) {
                 huaNongCrawlerCacheComponent.cacheLoginInfo(login, username);
@@ -92,45 +93,56 @@ public class HuaNongCrawlerQuoteProcessServiceImpl implements HuaNongCrawlerQuot
     }
 
     @Override
-    public HuaNongCrawlerQuotedPriceRequest.BusinessDataDTO.SaleInfoDTO attributionInformation(HuaNongCrawlerConfigureParameters huaNongCrawlerConfigureParameters, String username, String token, String loginComCode) {
+    public HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.SaleInfoDTO attributionInformation(HuaNongCrawlerConfigureParameters parameters, String username, String token, String loginComCode) {
         HttpHeaders httpHeaders = new HttpHeaders();
-
         // 归属机构
-        HuaNongCrawlerComInfoQueryRequest huaNongCrawlerComInfoQueryRequest = new HuaNongCrawlerComInfoQueryRequest(loginComCode, token);
+        HuaNongCrawlerComInfoQueryRequestRequest huaNongCrawlerComInfoQueryRequest = new HuaNongCrawlerComInfoQueryRequestRequest(loginComCode, token);
         HuaNongCrawlerComInfoQueryResponse huaNongCrawlerComInfoQueryResponse = huaNongCrawlerRequestComponent.comInfoQuery(huaNongCrawlerComInfoQueryRequest, httpHeaders);
         List<HuaNongCrawlerComInfoQueryResponse.ComListDTO> comList = huaNongCrawlerComInfoQueryResponse.getComList();
         Map<String, HuaNongCrawlerComInfoQueryResponse.ComListDTO> com = comList.stream()
                 .collect(Collectors.toMap(HuaNongCrawlerComInfoQueryResponse.ComListDTO::getComCode, x -> x));
 
         // 代理人信息
-        HuaNongCrawlerUserTypeAndProxyInfoQueryRequest huaNongCrawlerUserTypeAndProxyInfoQueryRequest = new HuaNongCrawlerUserTypeAndProxyInfoQueryRequest(username, token, loginComCode, huaNongCrawlerConfigureParameters.getComCode());
-        HuaNongCrawlerUserTypeAndProxyInfoQueryResponse huaNongCrawlerUserTypeAndProxyInfoQueryResponse = huaNongCrawlerRequestComponent.userTypeAndProxyInfoQuery(huaNongCrawlerUserTypeAndProxyInfoQueryRequest, httpHeaders);
+        HuaNongCrawlerUserTypeAndProxyInfoQueryRequestRequest userTypeAndProxyInfoQueryRequest = new HuaNongCrawlerUserTypeAndProxyInfoQueryRequestRequest(username, token, loginComCode, parameters.getComCode());
+        HuaNongCrawlerUserTypeAndProxyInfoQueryResponse userTypeAndProxyInfoQueryResponse = huaNongCrawlerRequestComponent.userTypeAndProxyInfoQuery(userTypeAndProxyInfoQueryRequest, httpHeaders);
 
         //代理人
-        List<HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.AgentInfoListDTO> agentInfoList = huaNongCrawlerUserTypeAndProxyInfoQueryResponse.getAgentInfoList();
+        List<HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.AgentInfoListDTO> agentInfoList = userTypeAndProxyInfoQueryResponse.getAgentInfoList();
         Map<String, HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.AgentInfoListDTO> agentInfoListDTOMap = agentInfoList.stream()
                 .collect(Collectors.toMap(HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.AgentInfoListDTO::getAgentCode, x -> x));
 
         // 协议号
-        List<HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.AgreementListDTO> agreementList = huaNongCrawlerUserTypeAndProxyInfoQueryResponse.getAgreementList();
+        List<HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.AgreementListDTO> agreementList = userTypeAndProxyInfoQueryResponse.getAgreementList();
         Map<String, String> map = agreementList.stream()
                 .collect(Collectors.toMap(HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.AgreementListDTO::getAgreementNo, HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.AgreementListDTO::getAgentCode));
 
         // 业务员
-        List<HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.HandlerListDTO> handlerList = huaNongCrawlerUserTypeAndProxyInfoQueryResponse.getHandlerList();
+        List<HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.HandlerListDTO> handlerList = userTypeAndProxyInfoQueryResponse.getHandlerList();
         Map<String, HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.HandlerListDTO> handler = handlerList.stream()
                 .collect(Collectors.toMap(HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.HandlerListDTO::getHandlerCode, x -> x));
 
-        HuaNongCrawlerComInfoQueryResponse.ComListDTO comListDTO = com.get(huaNongCrawlerConfigureParameters.getComCode());
-        HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.HandlerListDTO handlerListDTO = handler.get(huaNongCrawlerConfigureParameters.getHandlerCode());
-        HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.AgentInfoListDTO agentInfoListDTO = agentInfoListDTOMap.get(map.get(huaNongCrawlerConfigureParameters.getAgreementNo()));
-        return new HuaNongCrawlerQuotedPriceRequest.BusinessDataDTO.SaleInfoDTO(comListDTO, handlerListDTO, agentInfoListDTO, huaNongCrawlerConfigureParameters.getCallerName());
+        // 管理渠道
+        HuaNongCrawlerBaseCodeRequestRequest baseCodeRequest = new HuaNongCrawlerBaseCodeRequestRequest(token, loginComCode, parameters.getComCode(), "CHANNEL_SOURCE");
+        HuaNongCrawlerBaseCodeResponse.BaseInfoDTO baseInfoDTO = huaNongCrawlerRequestComponent.channelSource(baseCodeRequest, httpHeaders, userTypeAndProxyInfoQueryResponse.getChannelSource());
+
+        Map<String, HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.ProducerListDTO> producerMap = Optional.ofNullable(userTypeAndProxyInfoQueryResponse.getProducerList())
+                .orElseGet(Collections::emptyList)
+                .stream()
+                .collect(Collectors.toMap(HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.ProducerListDTO::getProducerName, x->x));
+        HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.ProducerListDTO producerListDTO = producerMap.get(parameters.getProducer());
+
+        HuaNongCrawlerComInfoQueryResponse.ComListDTO comListDTO = com.get(parameters.getComCode());
+        HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.HandlerListDTO handlerListDTO = handler.get(parameters.getHandlerCode());
+        HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.AgentInfoListDTO agentInfoListDTO = agentInfoListDTOMap.get(map.get(parameters.getAgreementNo()));
+        return new HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.SaleInfoDTO(comListDTO, handlerListDTO, agentInfoListDTO, producerListDTO, baseInfoDTO, parameters.getCallerName());
     }
 
+
+
     @Override
     public void uploadImage(List<InsuranceImageVo> imageVoList, String token) {
         // 跳转上传影像页面
-        HuaNongCrawlerNewImageQueryRequest huaNongCrawlerNewImageQueryRequest = new HuaNongCrawlerNewImageQueryRequest();
+        HuaNongCrawlerNewImageQueryRequestRequest huaNongCrawlerNewImageQueryRequest = new HuaNongCrawlerNewImageQueryRequestRequest();
         String data = huaNongCrawlerRequestComponent.newImageQuery(huaNongCrawlerNewImageQueryRequest, new HttpHeaders());
         // 获取accessToken
         HttpHeaders httpHeaders = new HttpHeaders();

+ 13 - 12
tenant/insurance/quotation-huanong/src/main/java/com/jzg/quotation/huanong/crawler/service/impl/HuaNongCrawlerRequestImpl.java

@@ -60,30 +60,31 @@ public class HuaNongCrawlerRequestImpl implements HuaNongCrawlerRequest {
         String loginCom = parameters.getLoginCom();
         String loginComCode = (String) authorization.get(loginCom);
         // 归属信息
-        HuaNongCrawlerQuotedPriceRequest.BusinessDataDTO.SaleInfoDTO saleInfoDTO = huaNongCrawlerQuoteProcessService.attributionInformation(parameters, attributionInformationVo.getUsername(), token, loginComCode);
+        HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.SaleInfoDTO saleInfoDTO = huaNongCrawlerQuoteProcessService.attributionInformation(parameters, attributionInformationVo.getUsername(), token, loginComCode);
 
         // 车型查询
         CarInfoVo carInfoVo = quoteVo.getCarInfoVo();
-        HuaNongCrawlerModelsQueryRequest huaNongCrawlerModelsQueryRequest = new HuaNongCrawlerModelsQueryRequest(token, loginComCode, carInfoVo);
+        HuaNongCrawlerModelsQueryRequestRequest huaNongCrawlerModelsQueryRequest = new HuaNongCrawlerModelsQueryRequestRequest(token, loginComCode, carInfoVo);
         HuaNongCrawlerModelsQueryResponse huaNongCrawlerModelsQueryResponse = huaNongCrawlerRequestComponent.modelsQuery(huaNongCrawlerModelsQueryRequest, httpHeaders);
         HuaNongCrawlerModelsQueryResponse.CarModelDTO carModelDTO = CarModelsFilterUtils.to(huaNongCrawlerModelsQueryResponse.getCarModel(), carInfoVo);
 
         // 折旧价查询
-        HuaNongCrawlerActualValueRequest huaNongCrawlerActualValueRequest = new HuaNongCrawlerActualValueRequest(token, loginComCode, carModelDTO, carInfoVo);
+        HuaNongCrawlerActualValueRequestRequest huaNongCrawlerActualValueRequest = new HuaNongCrawlerActualValueRequestRequest(token, loginComCode, carModelDTO, carInfoVo);
         String actualValue = huaNongCrawlerRequestComponent.actualValue(huaNongCrawlerActualValueRequest, httpHeaders);
 
         // 保费计算
-        HuaNongCrawlerQuotedPriceRequest huaNongCrawlerQuotedPriceRequest = new HuaNongCrawlerQuotedPriceRequest(token, attributionInformationVo.getUsername(), quoteVo, loginCom, parameters.getComCode(), carModelDTO, actualValue);
-        huaNongCrawlerQuotedPriceRequest.getBusinessData().setSaleInfo(saleInfoDTO);
+        HuaNongCrawlerQuotedPriceRequestRequest huaNongCrawlerQuotedPriceRequest
+                = new HuaNongCrawlerQuotedPriceRequestRequest(token, attributionInformationVo.getUsername(), quoteVo, loginComCode, actualValue, parameters, carModelDTO, saleInfoDTO);
+
         HuaNongCrawlerQuotedPriceResponse huaNongCrawlerQuotedPriceResponse = huaNongCrawlerRequestComponent.quotedPrice(huaNongCrawlerQuotedPriceRequest, httpHeaders);
 
         // 保存
-        List<HuaNongCrawlerQuotedPriceRequest.BusinessDataDTO.ContractDTO> contract = huaNongCrawlerQuotedPriceRequest.getBusinessData()
+        List<HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.ContractDTO> contract = huaNongCrawlerQuotedPriceRequest.getBusinessData()
                 .getContract();
-        List<HuaNongCrawlerQuotedPriceRequest.BusinessDataDTO.ContractAccidentDTO> contractAccident = huaNongCrawlerQuotedPriceRequest.getBusinessData()
+        List<HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.ContractAccidentDTO> contractAccident = huaNongCrawlerQuotedPriceRequest.getBusinessData()
                 .getContractAccident();
 
-        HuaNongCrawlerSaveRequest huaNongCrawlerSaveRequest = new HuaNongCrawlerSaveRequest(contract, contractAccident, token, loginComCode);
+        HuaNongCrawlerSaveRequestRequest huaNongCrawlerSaveRequest = new HuaNongCrawlerSaveRequestRequest(contract, contractAccident, token, loginComCode);
         huaNongCrawlerRequestComponent.save(huaNongCrawlerSaveRequest, httpHeaders);
 
         return HuaNongCrawlerQuoteResultsVoBuild.buildQuoteResultsVo(quoteVo.getOrder()
@@ -101,7 +102,7 @@ public class HuaNongCrawlerRequestImpl implements HuaNongCrawlerRequest {
         HuaNongCrawlerOrder huaNongCrawlerOrder = huaNongCrawlerOrderService.getById(underwritingVo.getOrder()
                 .getOrdersNo());
         // 提交核保
-        HuaNongCrawlerSubmitRequest huaNongCrawlerSubmitRequest = new HuaNongCrawlerSubmitRequest(huaNongCrawlerOrder, token, huaNongCrawlerConfigureParameters.getComCode());
+        HuaNongCrawlerSubmitRequestRequest huaNongCrawlerSubmitRequest = new HuaNongCrawlerSubmitRequestRequest(huaNongCrawlerOrder, token, huaNongCrawlerConfigureParameters.getComCode());
         HuaNongCrawlerSubmitResponse submit = huaNongCrawlerRequestComponent.submit(huaNongCrawlerSubmitRequest, new HttpHeaders());
         UnderwritingResultsVo underwritingResultsVo = new UnderwritingResultsVo();
         return underwritingResultsVo;
@@ -139,7 +140,7 @@ public class HuaNongCrawlerRequestImpl implements HuaNongCrawlerRequest {
         // 获取订单信息
         HuaNongCrawlerOrder order = huaNongCrawlerOrderService.getById(downloadPolicyVo.getOrder().getOrdersNo());
         HttpHeaders httpHeaders = new HttpHeaders();
-        HuaNongCrawlerFtpDownloadRequest huaNongCrawlerFtpDownloadRequest = new HuaNongCrawlerFtpDownloadRequest();
+        HuaNongCrawlerFtpDownloadRequestRequest huaNongCrawlerFtpDownloadRequest = new HuaNongCrawlerFtpDownloadRequestRequest();
         // 交强保单 标志
         Optional.ofNullable(order.getCiPolicyNo()).ifPresent(ciPolicyNo -> {
             // 交强保单
@@ -156,7 +157,7 @@ public class HuaNongCrawlerRequestImpl implements HuaNongCrawlerRequest {
         order.getNiInfos().forEach(niInfo -> {
             Optional.ofNullable(niInfo.getNiPolicyNo())
                     .ifPresent(x -> {
-                                HuaNongCrawlerDocumentsPrintRequest huaNongCrawlerDocumentsPrintRequest = new HuaNongCrawlerDocumentsPrintRequest();
+                                HuaNongCrawlerDocumentsPrintRequestRequest huaNongCrawlerDocumentsPrintRequest = new HuaNongCrawlerDocumentsPrintRequestRequest();
                                 huaNongCrawlerRequestComponent.documentsPrint(huaNongCrawlerDocumentsPrintRequest, httpHeaders);
                             }
                     );
@@ -172,7 +173,7 @@ public class HuaNongCrawlerRequestImpl implements HuaNongCrawlerRequest {
         HttpHeaders httpHeaders = new HttpHeaders();
         HuaNongCrawlerOrder order = huaNongCrawlerOrderService.getById(orderStatusVo.getOrder().getOrdersNo());
 
-        HuaNongCrawlerFindBusinessesRequest huaNongCrawlerFindBusinessesRequest = new HuaNongCrawlerFindBusinessesRequest();
+        HuaNongCrawlerFindBusinessesRequestRequest huaNongCrawlerFindBusinessesRequest = new HuaNongCrawlerFindBusinessesRequestRequest();
         huaNongCrawlerRequestComponent.findBusinesses(huaNongCrawlerFindBusinessesRequest, httpHeaders);
         return null;
     }