Przeglądaj źródła

渤海报价相关

shenweidong 1 rok temu
rodzic
commit
bbd06f2ad4

+ 16 - 1
tenant/insurance/quotation-bohai/src/main/java/com/jzg/quote/bohai/api/entity/response/StatusDocumentsResponse.java

@@ -39,18 +39,33 @@ public class StatusDocumentsResponse extends BoHaiBaseResponse {
 
             @Serial
             private static final long serialVersionUID = 1436500973928431777L;
+            /**
+             * 保单号
+             */
             @JsonProperty("policyNo")
             private String policyNo;
 
+            /**
+             * 险种类别
+             */
             @JsonProperty("insuranceType")
             private String insuranceType;
 
-            @JsonProperty("applicationNo ")
+            /**
+             * 投保单号
+             */
+            @JsonProperty("applicationNo")
             private String applicationNo;
 
+            /**
+             * 投保单状态
+             */
             @JsonProperty("status")
             private String status;
 
+            /**
+             * 审批描述
+             */
             @JsonProperty("auditOpinion")
             private String auditOpinion;
 

+ 3 - 1
tenant/insurance/quotation-bohai/src/main/java/com/jzg/quote/bohai/api/repository/BoHaiApiOrderRepository.java

@@ -2,6 +2,7 @@ package com.jzg.quote.bohai.api.repository;
 
 import com.jzg.quote.bohai.api.entity.po.BoHaiApiOrder;
 import org.springframework.data.mongodb.repository.MongoRepository;
+import org.springframework.data.mongodb.repository.Query;
 
 /**
  * @description: todo
@@ -10,5 +11,6 @@ import org.springframework.data.mongodb.repository.MongoRepository;
  **/
 public interface BoHaiApiOrderRepository extends MongoRepository<BoHaiApiOrder, String> {
 
-    BoHaiApiOrder getByOrdersNo(String ordersNo);
+    @Query("{'ordersNo' :  ?0}")
+    BoHaiApiOrder findByOrdersNo(String ordersNo);
 }

+ 15 - 0
tenant/insurance/quotation-bohai/src/main/java/com/jzg/quote/bohai/api/service/BoHaiApiOrderService.java

@@ -0,0 +1,15 @@
+package com.jzg.quote.bohai.api.service;
+
+import com.jzg.quote.bohai.api.entity.po.BoHaiApiOrder;
+
+/**
+ * @description: 渤海财险 mongodb操作数据
+ * @author: shenwd
+ * @date: 2025/3/6 11:27
+ **/
+public interface BoHaiApiOrderService {
+    void save(BoHaiApiOrder bohaiApiOrder);
+
+    BoHaiApiOrder findByOrdersNo(String ordersNo);
+
+}

+ 36 - 0
tenant/insurance/quotation-bohai/src/main/java/com/jzg/quote/bohai/api/service/impl/BoHaiApiOrderServiceImpl.java

@@ -0,0 +1,36 @@
+package com.jzg.quote.bohai.api.service.impl;
+
+import com.jzg.quote.bohai.api.entity.po.BoHaiApiOrder;
+import com.jzg.quote.bohai.api.repository.BoHaiApiOrderRepository;
+import com.jzg.quote.bohai.api.service.BoHaiApiOrderService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+/**
+ * @description: todo
+ * @author: shenwd
+ * @date: 2025/3/6 11:29
+ **/
+@Service
+@RequiredArgsConstructor
+public class BoHaiApiOrderServiceImpl implements BoHaiApiOrderService {
+
+    private final BoHaiApiOrderRepository bohaiApiOrderRepository;
+
+    /**
+     * @param bohaiApiOrder
+     */
+    @Override
+    public void save(BoHaiApiOrder bohaiApiOrder) {
+        bohaiApiOrderRepository.save(bohaiApiOrder);
+    }
+
+    /**
+     * @param ordersNo
+     * @return
+     */
+    @Override
+    public BoHaiApiOrder findByOrdersNo(String ordersNo) {
+        return bohaiApiOrderRepository.findByOrdersNo(ordersNo);
+    }
+}

+ 25 - 5
tenant/insurance/quotation-bohai/src/main/java/com/jzg/quote/bohai/api/service/impl/BoHaiApiRequestImpl.java

@@ -20,6 +20,7 @@ import com.jzg.quote.bohai.api.entity.response.*;
 import com.jzg.quote.bohai.api.entity.vo.BoHaiQuoteAccidentVo;
 import com.jzg.quote.bohai.api.entity.vo.PersonAreaVo;
 import com.jzg.quote.bohai.api.repository.BoHaiApiOrderRepository;
+import com.jzg.quote.bohai.api.service.BoHaiApiOrderService;
 import com.jzg.quote.bohai.api.service.BoHaiApiRequest;
 import com.jzg.quote.bohai.api.entity.BoHaiConfigureParameters;
 import com.jzg.quote.bohai.api.util.StringSubStringUtils;
@@ -40,7 +41,7 @@ import java.util.Map;
 @RequiredArgsConstructor
 public class BoHaiApiRequestImpl implements BoHaiApiRequest {
 
-    private final BoHaiApiOrderRepository boHaiApiOrderRepository;
+    private final BoHaiApiOrderService boHaiApiOrderService;
 
     private final BoHaiRequestApiComponent boHaiRequestApiComponent;
     @Override
@@ -111,7 +112,7 @@ public class BoHaiApiRequestImpl implements BoHaiApiRequest {
         apiOrder.setOrdersNo(order.getOrdersNo());
         apiOrder.setBusUniqueId(quotationResponse.getData().getBusUniqueId());
         apiOrder.setOrderNo(orderNo);
-        boHaiApiOrderRepository.save(apiOrder);
+        boHaiApiOrderService.save(apiOrder);
         return BoHaiApiQuoteResultsVoBuild.buildQuoteResultsVo(order.getOrdersNo(), quoteVo, quotationResponse);
     }
 
@@ -122,7 +123,7 @@ public class BoHaiApiRequestImpl implements BoHaiApiRequest {
         BoHaiConfigureParameters parameters = ConfigureParametersConversion.conversionEntity(BoHaiConfigureParameters.class, order.getAttributionInformationVo().getConfigInfo());
 
         //核保请求
-        BoHaiApiOrder apiOrder = boHaiApiOrderRepository.getByOrdersNo(order.getOrdersNo());
+        BoHaiApiOrder apiOrder = boHaiApiOrderService.findByOrdersNo(order.getOrdersNo());
         UnderwritingRequest underwritingRequest = new UnderwritingRequest(parameters, apiOrder.getOrderNo());
         UnderwritingResponse underwritingResponse;
         try {
@@ -137,7 +138,7 @@ public class BoHaiApiRequestImpl implements BoHaiApiRequest {
     public String getPaymentLink(OrderBase orderBase) {
         //获取配置信息
         BoHaiConfigureParameters parameters = ConfigureParametersConversion.conversionEntity(BoHaiConfigureParameters.class, orderBase.getAttributionInformationVo().getConfigInfo());
-        BoHaiApiOrder apiOrder = boHaiApiOrderRepository.getByOrdersNo(orderBase.getOrdersNo());
+        BoHaiApiOrder apiOrder = boHaiApiOrderService.findByOrdersNo(orderBase.getOrdersNo());
         PaymentRequest paymentRequest = new PaymentRequest(parameters, apiOrder.getOrderNo(), apiOrder.getBusUniqueId());
         PaymentResponse paymentResponse;
         try {
@@ -154,7 +155,7 @@ public class BoHaiApiRequestImpl implements BoHaiApiRequest {
         OrderBase order = insuranceUploadImageVo.getOrder();
         //获取配置信息
         BoHaiConfigureParameters parameters = ConfigureParametersConversion.conversionEntity(BoHaiConfigureParameters.class, order.getAttributionInformationVo().getConfigInfo());
-        BoHaiApiOrder apiOrder = boHaiApiOrderRepository.getByOrdersNo(order.getOrdersNo());
+        BoHaiApiOrder apiOrder = boHaiApiOrderService.findByOrdersNo(order.getOrdersNo());
         ImageUploadRequest imageUploadRequest = new ImageUploadRequest(parameters, apiOrder.getOrderNo(), apiOrder.getBusUniqueId(), insuranceUploadImageVo.getImageVoList());
         ImageUploadResponse imageUploadResponse;
         try {
@@ -174,6 +175,25 @@ public class BoHaiApiRequestImpl implements BoHaiApiRequest {
 
     }
 
+    /**
+     * 后续需补充如何获取投保单号
+     * @param orderBase
+     */
+    @Override
+    public void queryOrderState(OrderBase orderBase) {
+        //获取配置信息
+        BoHaiConfigureParameters parameters = ConfigureParametersConversion.conversionEntity(BoHaiConfigureParameters.class, orderBase.getAttributionInformationVo().getConfigInfo());
+        BoHaiApiOrder apiOrder = boHaiApiOrderService.findByOrdersNo(orderBase.getOrdersNo());
+        StatusDocumentsRequest statusDocumentsRequest = new StatusDocumentsRequest(parameters, apiOrder.getOrderNo(),  apiOrder.getProposalNo());
+        StatusDocumentsResponse statusDocumentsResponse;
+        try {
+            statusDocumentsResponse = boHaiRequestApiComponent.statusDocuments(statusDocumentsRequest, parameters.getSysSourceCode());
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+
+    }
+
     public Map<String, Object> getVehicleConfirmationResponse(QuoteVo quoteVo, BoHaiConfigureParameters parameters,
                                                               CarInfoVo carInfo, String orderNo,
                                                               VehicleTypeQueryRequest vehicleTypeQueryRequest) throws Exception {