Jelajahi Sumber

永诚增加支付时间

wks 2 tahun lalu
induk
melakukan
45d61037d5

+ 7 - 4
src/main/java/com/ydtech/modules/order/components/gouren/GuorenRequestApiComponent.java

@@ -119,13 +119,15 @@ public class GuorenRequestApiComponent {
      * 查询非车险保单号
      * 查询非车险保单号
      */
      */
     public void queryNoCarPolicyNo(InsAreaCompany iac) {
     public void queryNoCarPolicyNo(InsAreaCompany iac) {
-        if(iac.getJypremium() == null || iac.getJypremium().compareTo(new BigDecimal(0)) == 0){
+        if (iac.getJypremium() == null || iac.getJypremium().compareTo(new BigDecimal(0)) == 0) {
             return;
             return;
         }
         }
 
 
         //构造请求参数
         //构造请求参数
-        QueryNoCarPolicyNoRequest queryNoCarPolicyNoRequest = new QueryNoCarPolicyNoRequest(StringUtils.isNotEmpty(iac.getSyapplyno()) ? iac.getSyapplyno() : iac.getJqapplyno());
-        QueryNoCarPolicyNoResponse request = request(queryNoCarPolicyNoRequest, PlatformInterfaceCode.API_IIIRBT00052, QueryNoCarPolicyNoResponse.class);
+        QueryNoCarPolicyNoRequest queryNoCarPolicyNoRequest = new QueryNoCarPolicyNoRequest(StringUtils.isNotEmpty(iac.getSyapplyno()) ?
+                iac.getSyapplyno() : iac.getJqapplyno());
+        QueryNoCarPolicyNoResponse request = request(queryNoCarPolicyNoRequest, PlatformInterfaceCode.API_IIIRBT00052,
+                QueryNoCarPolicyNoResponse.class);
         QueryNoCarPolicyNoResponse.DataDTO data = request.getData();
         QueryNoCarPolicyNoResponse.DataDTO data = request.getData();
         // 非车保单号
         // 非车保单号
         List<String> noCarPolicyNo = data.getNoCarPolicyNo();
         List<String> noCarPolicyNo = data.getNoCarPolicyNo();
@@ -186,7 +188,8 @@ public class GuorenRequestApiComponent {
      */
      */
     public String noCarElectronicPolicy(String channelCode, String othBusinessNo, String policyNo) {
     public String noCarElectronicPolicy(String channelCode, String othBusinessNo, String policyNo) {
         NoCarElectronicPolicyRequest noCarElectronicPolicyRequest = new NoCarElectronicPolicyRequest(channelCode, othBusinessNo, policyNo);
         NoCarElectronicPolicyRequest noCarElectronicPolicyRequest = new NoCarElectronicPolicyRequest(channelCode, othBusinessNo, policyNo);
-        NoCarElectronicPolicyResponse request = request(noCarElectronicPolicyRequest, PlatformInterfaceCode.API_IIRBT00089, NoCarElectronicPolicyResponse.class);
+        NoCarElectronicPolicyResponse request = request(noCarElectronicPolicyRequest, PlatformInterfaceCode.API_IIRBT00089,
+                NoCarElectronicPolicyResponse.class);
         return request.getData().getEpolicyUrl();
         return request.getData().getEpolicyUrl();
     }
     }
 
 

+ 11 - 2
src/main/java/com/ydtech/modules/order/dao/InsAreaCompanyMapper.java

@@ -18,18 +18,27 @@ public interface InsAreaCompanyMapper extends BaseMapper<InsAreaCompany> {
 
 
     /**
     /**
      * 分组查询
      * 分组查询
+     *
      * @param orderNo 订单号
      * @param orderNo 订单号
      * @return
      * @return
      */
      */
     List<InsAreaCompanyQueryDto> selectByOrderNo(@Param("orderNo") String orderNo);
     List<InsAreaCompanyQueryDto> selectByOrderNo(@Param("orderNo") String orderNo);
 
 
+    /**
+     * 查询承保的订单
+     *
+     * @param orderNo
+     * @return
+     */
+    List<InsAreaCompanyQueryDto> selectAcceptInsurance(@Param("orderNo") String orderNo);
+
     /**
     /**
      * 查询最新订单的订单号
      * 查询最新订单的订单号
+     *
      * @param orderNo 订单号
      * @param orderNo 订单号
      * @return
      * @return
      */
      */
-    InsAreaCompany  queryLatestStatus(@Param("orderNo") String orderNo);
-
+    InsAreaCompany queryLatestStatus(@Param("orderNo") String orderNo);
 
 
 
 
 }
 }

+ 0 - 2
src/main/java/com/ydtech/modules/order/service/impl/GuorenOrderApiServiceImpl.java

@@ -329,7 +329,6 @@ public class GuorenOrderApiServiceImpl implements GuorenOrderApiService {
         //子订单
         //子订单
         InsAreaCompany iac = insAreaCompanyService.getByIdIsExist(iacNo);
         InsAreaCompany iac = insAreaCompanyService.getByIdIsExist(iacNo);
         // 获取协议配置信息
         // 获取协议配置信息
-        InsOrders order = insOrdersService.getById(iac.getOrderno());
         InsOrderStatusResp iosr = insOrderStatus(iac);
         InsOrderStatusResp iosr = insOrderStatus(iac);
 
 
         if (null != iosr && CollUtil.isNotEmpty(iosr.getData())) {
         if (null != iosr && CollUtil.isNotEmpty(iosr.getData())) {
@@ -374,7 +373,6 @@ public class GuorenOrderApiServiceImpl implements GuorenOrderApiService {
             // 支付
             // 支付
             if (updateFlag) {
             if (updateFlag) {
                 iac.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
                 iac.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
-                order.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
                 guorenRequestApiComponent.queryNoCarPolicyNo(iac);
                 guorenRequestApiComponent.queryNoCarPolicyNo(iac);
                 insAreaCompanyService.updateCompanyAndOrders(iac);
                 insAreaCompanyService.updateCompanyAndOrders(iac);
                 return HttpResult.ok("订单已支付,订单状态修改完成");
                 return HttpResult.ok("订单已支付,订单状态修改完成");

+ 8 - 1
src/main/java/com/ydtech/modules/order/service/impl/InsAreaCompanyServiceImpl.java

@@ -2,6 +2,7 @@ package com.ydtech.modules.order.service.impl;
 
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
 import com.ydtech.exception.SystemException;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.order.dao.InsAreaCompanyMapper;
 import com.ydtech.modules.order.dao.InsAreaCompanyMapper;
 import com.ydtech.modules.order.entity.InsAreaCompany;
 import com.ydtech.modules.order.entity.InsAreaCompany;
@@ -9,12 +10,12 @@ import com.ydtech.modules.order.entity.dto.InsAreaCompanyQueryDto;
 import com.ydtech.modules.order.service.InsAreaCompanyService;
 import com.ydtech.modules.order.service.InsAreaCompanyService;
 import com.ydtech.modules.order.service.InsOrdersService;
 import com.ydtech.modules.order.service.InsOrdersService;
 import com.ydtech.modules.order.service.InsOrdersTrackService;
 import com.ydtech.modules.order.service.InsOrdersTrackService;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.ObjectUtils;
 import org.springframework.util.ObjectUtils;
 
 
+import java.util.Collections;
 import java.util.List;
 import java.util.List;
 
 
 /**
 /**
@@ -66,6 +67,12 @@ public class InsAreaCompanyServiceImpl extends ServiceImpl<InsAreaCompanyMapper,
 
 
     @Override
     @Override
     public List<InsAreaCompanyQueryDto> getByOrderNo(String orderNo) {
     public List<InsAreaCompanyQueryDto> getByOrderNo(String orderNo) {
+        List<InsAreaCompanyQueryDto> insAreaCompanyQueryDtos = this.baseMapper.selectAcceptInsurance(orderNo);
+
+        if(!insAreaCompanyQueryDtos.isEmpty()){
+            return insAreaCompanyQueryDtos;
+        }
+
         return baseMapper.selectByOrderNo(orderNo);
         return baseMapper.selectByOrderNo(orderNo);
     }
     }
 
 

+ 10 - 1
src/main/java/com/ydtech/modules/order/service/impl/ZijinOrderApiServiceImpl.java

@@ -49,6 +49,8 @@ import org.springframework.http.HttpHeaders;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Collections;
 import java.util.List;
 import java.util.List;
@@ -340,11 +342,18 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
         // 2 请求查看订单状态
         // 2 请求查看订单状态
         OrderNoRequest orderNoRequest = new OrderNoRequest(insAreaCompany.getId());
         OrderNoRequest orderNoRequest = new OrderNoRequest(insAreaCompany.getId());
         QueryOrderDetailResponse queryOrderDetailResponse = zijinRequestApiComponents.getOrderDetail(orderNoRequest, httpHeaders);
         QueryOrderDetailResponse queryOrderDetailResponse = zijinRequestApiComponents.getOrderDetail(orderNoRequest, httpHeaders);
-        String orderStatus = queryOrderDetailResponse.getResultObj().getOrderStatus();
+        QueryOrderDetailResponse.ResultObjDTO resultObj = queryOrderDetailResponse.getResultObj();
+
+        String orderStatus = resultObj.getOrderStatus();
 
 
         // 3. 订单生效以后修改状态
         // 3. 订单生效以后修改状态
         if (OrderStatusEnum.O_4.getCode().equals(orderStatus)) {
         if (OrderStatusEnum.O_4.getCode().equals(orderStatus)) {
             // 3.1 非车险订单存入数据
             // 3.1 非车险订单存入数据
+            String payTime = resultObj.getPayTime();
+            if (StringUtils.isNotEmpty(payTime)) {
+                insAreaCompany.setPayDate(LocalDateTime.parse(payTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+            }
+
             List<DrivingInsuranceDto> drivingInsuranceDto = queryOrderDetailResponse.getDrivingInsuranceDto();
             List<DrivingInsuranceDto> drivingInsuranceDto = queryOrderDetailResponse.getDrivingInsuranceDto();
             insAreaCompany.setCrossInsurance(JSON.parseArray(JSON.toJSONString(drivingInsuranceDto)));
             insAreaCompany.setCrossInsurance(JSON.parseArray(JSON.toJSONString(drivingInsuranceDto)));
 
 

+ 9 - 0
src/main/resources/mapper/modules/order/InsAreaCompanyMapper.xml

@@ -76,6 +76,15 @@
         WHERE iac.orderno = #{orderNo}
         WHERE iac.orderno = #{orderNo}
     </select>
     </select>
 
 
+    <select id="selectAcceptInsurance" resultMap="InsAreaCompanyQueryDto">
+        SELECT iac.*, pa.agreement_name
+        FROM ins_area_company as iac
+                 left join ptl_agreement as pa on pa.id = iac.agreement_id
+        WHERE iac.orderstatus = 3 and orderno = #{orderNo};
+    </select>
+
+
+
     <select id="queryLatestStatus"  resultMap="BaseResultMap">
     <select id="queryLatestStatus"  resultMap="BaseResultMap">
         SELECT iac.*
         SELECT iac.*
         FROM ins_area_company as iac
         FROM ins_area_company as iac

TEMPAT SAMPAH
target/classes/com/ydtech/modules/ins/model/InsOrdersExcel.class