Эх сурвалжийг харах

1.子订单修改
2.紫金非车险存入

wks 3 жил өмнө
parent
commit
f060ce9c3c

+ 3 - 0
src/main/java/com/ydtech/modules/order/entity/api/zj/constants/enums/RiskCodeEnum.java

@@ -21,5 +21,8 @@ public enum RiskCodeEnum {
 
     private final String desc;
 
+    public static String[] getRiskCode() {
+        return new String[]{RiskCodeEnum.RC_0590.getCode(), RiskCodeEnum.RC_050A.getCode()};
+    }
 
 }

+ 8 - 3
src/main/java/com/ydtech/modules/order/entity/api/zj/response/QueryOrderDetailResponse.java

@@ -1,13 +1,14 @@
 package com.ydtech.modules.order.entity.api.zj.response;
 
 import com.fasterxml.jackson.annotation.JsonProperty;
-import com.ydtech.modules.order.entity.crawler.response.CrawlerAuditResponse;
+import com.ydtech.modules.order.entity.api.zj.constants.enums.RiskCodeEnum;
 import com.ydtech.modules.order.entity.dto.DrivingInsuranceDto;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
 
 import java.io.Serializable;
+import java.util.Arrays;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -43,8 +44,12 @@ public class QueryOrderDetailResponse extends BaseResponse implements Serializab
     @JsonProperty("orderPolicyList")
     private List<OrderPolicyListDTO> orderPolicyList;
 
-    public List<DrivingInsuranceDto> getDrivingInsuranceDto(){
-        return orderPolicyList.stream().map(QueryOrderDetailResponse.OrderPolicyListDTO::toDrivingInsuranceDto).collect(Collectors.toList());
+    public List<DrivingInsuranceDto> getDrivingInsuranceDto() {
+        return orderPolicyList.stream()
+                // 过滤商业险和交强险
+                .filter(x -> !Arrays.asList(RiskCodeEnum.getRiskCode()).contains(x.getTypeCode()))
+                .map(QueryOrderDetailResponse.OrderPolicyListDTO::toDrivingInsuranceDto)
+                .collect(Collectors.toList());
     }
 
     @NoArgsConstructor

+ 11 - 1
src/main/java/com/ydtech/modules/order/entity/vo/OrderVo.java

@@ -149,7 +149,11 @@ public class OrderVo implements Serializable {
      */
     @TableId(value = "id")
     private String id;
-
+    /**
+     * 保险公司编号
+     */
+    @TableField(value = "company_id")
+    private String companyId;
     /**
      * 保险名称
      */
@@ -310,6 +314,12 @@ public class OrderVo implements Serializable {
     @TableField(value = "reptxt", typeHandler = FastjsonTypeHandler.class)
     private JSONObject reptxt;
 
+    /**
+     * 交叉销售信息(非车险信息)
+     */
+    @TableField(value = "cross_insurance", typeHandler = FastjsonTypeHandler.class)
+    private JSONArray crossInsurance;
+
     /**
      * 扩展字段
      */

+ 15 - 13
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java

@@ -3,12 +3,12 @@ package com.ydtech.modules.order.service.impl;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.github.pagehelper.PageInfo;
 import com.github.pagehelper.page.PageMethod;
 import com.ydtech.components.OrderComponents;
+import com.ydtech.constants.InsuranceEnum;
 import com.ydtech.constants.enums.InsOrderStatus;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
@@ -166,20 +166,20 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
 
     @Override
     public BasePageResult<InsOrders> queryOrdersAndAreaCompany(OrderQueryVo orderQueryVo) {
-        Page<InsOrders> page = query()
-                .eq(StringUtils.isNotEmpty(orderQueryVo.getUserId()), "userid", orderQueryVo.getUserId())
-                .eq(StringUtils.isNotEmpty(orderQueryVo.getOrderStatus()), "orderstatus", orderQueryVo.getOrderStatus())
-                .like(StringUtils.isNotEmpty(orderQueryVo.getFrameNo()), "frameno", orderQueryVo.getFrameNo())
-                .like(StringUtils.isNotEmpty(orderQueryVo.getLicenseNo()), "licenseno", orderQueryVo.getLicenseNo())
-                .like(StringUtils.isNotEmpty(orderQueryVo.getInsuredName()), "insuredname", orderQueryVo.getInsuredName())
-                .between(!ObjectUtils.isEmpty(orderQueryVo.getStartDate()) && !ObjectUtils.isEmpty(orderQueryVo.getEndDate()), "createtime", orderQueryVo.getStartDate(), orderQueryVo.getEndDate())
+        Page<InsOrders> page = lambdaQuery()
+                .eq(StringUtils.isNotEmpty(orderQueryVo.getUserId()), InsOrders::getUserid, orderQueryVo.getUserId())
+                .eq(StringUtils.isNotEmpty(orderQueryVo.getOrderStatus()), InsOrders::getOrderstatus, orderQueryVo.getOrderStatus())
+                .like(StringUtils.isNotEmpty(orderQueryVo.getFrameNo()), InsOrders::getFrameno, orderQueryVo.getFrameNo())
+                .like(StringUtils.isNotEmpty(orderQueryVo.getLicenseNo()), InsOrders::getLicenseno, orderQueryVo.getLicenseNo())
+                .like(StringUtils.isNotEmpty(orderQueryVo.getInsuredName()), InsOrders::getInsuredname, orderQueryVo.getInsuredName())
+                .between(!ObjectUtils.isEmpty(orderQueryVo.getStartDate()) && !ObjectUtils.isEmpty(orderQueryVo.getEndDate()), InsOrders::getCreatetime, orderQueryVo.getStartDate(), orderQueryVo.getEndDate())
                 .page(new Page<>(orderQueryVo.getPageNum(), orderQueryVo.getPageSize()));
 
         return new BasePageResult<>(orderQueryVo.getPageNum(), page.getSize(), page.getTotal(), page.getPages(), page.getRecords());
     }
 
     @Override
-    public BasePageResult queryOrders(OrderQueryVo orderQueryVo) {
+    public BasePageResult<InsOrders> queryOrders(OrderQueryVo orderQueryVo) {
         if ("admin".equals(orderQueryVo.getUserId())) {
             orderQueryVo.setUserId("");
         }
@@ -193,9 +193,10 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
 
         List<String> collect = pageInfo.getList().stream().map(InsOrders::getOrderno).collect(Collectors.toList());
         // 2. 查询订单信息包括的子订单信息
-        QueryWrapper<InsAreaCompany> queryWrapper = new QueryWrapper<InsAreaCompany>()
-                .in("orderno", collect)
-                .eq(StringUtils.isNotEmpty(orderQueryVo.getOrderStatus()), "orderstatus", orderQueryVo.getOrderStatus());
+        LambdaQueryWrapper<InsAreaCompany> queryWrapper = new LambdaQueryWrapper<InsAreaCompany>()
+                .in(InsAreaCompany::getInsOrderNo, collect)
+                .eq(StringUtils.isNotEmpty(orderQueryVo.getOrderStatus()), InsAreaCompany::getOrderstatus, orderQueryVo.getOrderStatus());
+
         List<InsAreaCompany> insAreaCompanies = insAreaCompanyService.getBaseMapper()
                 .selectList(queryWrapper);
         // 3. 包装订单信息
@@ -207,7 +208,8 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
     @Override
     public HttpResult<OrderVo> getByCompanyId(@NotBlank(message = "子订单不能为空") String companyId) {
         OrderVo orderAndAreaCompany = baseMapper.getOrderAndAreaCompany(companyId);
-        if ("永安财险".equals(orderAndAreaCompany.getInscompany())) {
+        // 永安财险
+        if (InsuranceEnum.YAIC.getCode().equals(orderAndAreaCompany.getCompanyId().substring(0, 4))) {
             JSONObject reptxt = orderAndAreaCompany.getReptxt();
             ResponseDataC2 responseDataC2 = JSON.toJavaObject(reptxt, ResponseDataC2.class);
             List<ExtendInfoDto> extendInfoDtos = responseDataC2.getResponseBody().getExtendInfo();

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

@@ -264,7 +264,7 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
         String orderStatus = queryOrderDetailResponse.getResultObj().getOrderStatus();
 
         if (OrderStatusEnum.O_4.getCode().equals(orderStatus)) {
-            // 交叉销售
+            // 3 交叉销售
             List<DrivingInsuranceDto> drivingInsuranceDto = queryOrderDetailResponse.getDrivingInsuranceDto();
             insAreaCompany.setCrossInsurance(JSON.parseArray(JSON.toJSONString(drivingInsuranceDto)));
 

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

@@ -37,7 +37,7 @@
         <result property="attributionId" column="attribution_id" jdbcType="VARCHAR"/>
         <result property="accidentInfo" column="accident_info" javaType="com.alibaba.fastjson.JSONObject" typeHandler = "com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
         <result property="taxArrears" column="tax_arrears" javaType="com.alibaba.fastjson.JSONArray" typeHandler = "com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
-
+        <result property="crossInsurance" column="cross_insurance" javaType="com.alibaba.fastjson.JSONArray" typeHandler = "com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR" />
     </resultMap>
 
     <sql id="Base_Column_List">

+ 6 - 1
src/main/resources/mapper/modules/order/InsOrdersMapper.xml

@@ -65,6 +65,7 @@
         <result property="systartdate" column="systartdate" jdbcType="VARCHAR"/>
         <result property="syenddate" column="syenddate" jdbcType="VARCHAR"/>
         <result property="id" column="id" jdbcType="BIGINT"/>
+        <result property="companyId" column="company_id" jdbcType="BIGINT"/>
         <result property="reptxt" column="reptxt" javaType="com.alibaba.fastjson.JSONObject" typeHandler = "com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
         <result property="inscompany" column="inscompany" jdbcType="VARCHAR"/>
         <result property="jqapplyno" column="jqapplyno" jdbcType="VARCHAR"/>
@@ -96,6 +97,8 @@
                 typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
         <result property="taxArrears" column="tax_arrears" javaType="com.alibaba.fastjson.JSONArray"
                 typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
+        <result property="crossInsurance" column="cross_insurance" javaType="com.alibaba.fastjson.JSONArray"
+                typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
     </resultMap>
 
     <sql id="Base_Column_List">
@@ -131,6 +134,7 @@
                o.systartdate,
                o.syenddate,
                iac.id,
+               iac.company_id,
                iac.reptxt,
                iac.orderstatus,
                iac.inscompany,
@@ -158,7 +162,8 @@
                iac.createtime,
                iac.payment_link,
                iac.accident_info,
-               iac.tax_arrears
+               iac.tax_arrears,
+               iac.cross_insurance
         from ins_orders as o
                  join ins_area_company iac on o.orderno = iac.orderno
         where iac.id = #{companyId}