Browse Source

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	tenant/insurance/quotation-chengtai/src/main/java/com/jzg/quotation/chengtai/api/build/ChengTaiAPIQuoteResultsVoBuild.java
dongxin 1 year ago
parent
commit
e25594e84c
51 changed files with 513 additions and 204 deletions
  1. 20 15
      authentication/src/main/java/com/jzg/config/JzgAuthenticationProvider.java
  2. 1 0
      authentication/src/main/java/com/jzg/config/JzgUsernamePasswordAuthenticationToken.java
  3. 1 1
      authentication/src/main/java/com/jzg/config/SecurityConfig.java
  4. 1 0
      authentication/src/main/java/com/jzg/filter/TokenAuthenticationFilter.java
  5. 1 1
      authentication/src/main/java/com/jzg/service/impl/SysUserServiceImpl.java
  6. 3 0
      commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrders.java
  7. 26 0
      commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrdersAccidentalDriving.java
  8. 3 0
      commons/src/main/java/com/jzg/commons/entity/vo/InsOrdersOtherInfoVo.java
  9. 3 0
      gateway/src/main/java/com/jzg/config/CorsConfig.java
  10. 6 6
      tenant/insurance/quotation-bohai/src/main/java/com/jzg/quotation/bohai/api/build/BoHaiApiQuoteResultsVoBuild.java
  11. 2 2
      tenant/insurance/quotation-bohai/src/main/java/com/jzg/quotation/bohai/api/service/impl/BoHaiApiRequestImpl.java
  12. 2 2
      tenant/insurance/quotation-chengtai/src/main/java/com/jzg/quotation/chengtai/api/build/ChengTaiAPIQuoteResultsVoBuild.java
  13. 2 2
      tenant/insurance/quotation-chengtai/src/main/java/com/jzg/quotation/chengtai/api/service/impl/ChengTaiApiRequestImpl.java
  14. 2 1
      tenant/insurance/quotation-chengtai/src/main/java/com/jzg/quotation/chengtai/crawler/service/ChengTaiCrawlerRequestService.java
  15. 55 0
      tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/entity/vo/aggregated/OrderStatusResultVo.java
  16. 87 6
      tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/entity/vo/aggregated/QuoteEchoVo.java
  17. 44 23
      tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/entity/vo/aggregated/QuoteResultsVo.java
  18. 3 1
      tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/entity/vo/aggregated/QuoteVo.java
  19. 3 1
      tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/entity/vo/orders/InsOrdersVo.java
  20. 1 1
      tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/service/QuotationBaseService.java
  21. 6 6
      tenant/insurance/quotation-dajia/src/main/java/com/jzg/quotation/dajia/api/build/DaJiaAPIQuoteResultsVoBuild.java
  22. 2 2
      tenant/insurance/quotation-dajia/src/main/java/com/jzg/quotation/dajia/api/service/impl/DaJiaApiRequestImpl.java
  23. 3 3
      tenant/insurance/quotation-dajia/src/main/java/com/jzg/quotation/dajia/crawler/build/DaJiaCrawlerQuoteResultsVoBuild.java
  24. 2 1
      tenant/insurance/quotation-dajia/src/main/java/com/jzg/quotation/dajia/crawler/service/impl/DaJiaCrawlerRequestImpl.java
  25. 3 3
      tenant/insurance/quotation-guoren/src/main/java/com/jzg/quotation/guoren/api/build/GuoRenApiQuoteResultsVoBuild.java
  26. 2 1
      tenant/insurance/quotation-guoren/src/main/java/com/jzg/quotation/guoren/api/service/Impl/GuoRenApiRequestImpl.java
  27. 2 2
      tenant/insurance/quotation-huanong/src/main/java/com/jzg/quote/huanong/crawler/service/impl/HuaNongCrawlerRequestImpl.java
  28. 3 3
      tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/api/build/HuaTaiApiQuoteResultsVoBuild.java
  29. 6 1
      tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/api/component/HuiTaiUploadImageComponent.java
  30. 8 8
      tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/api/entity/request/HuaTaiSaveFileIdxRequest.java
  31. 3 3
      tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/api/service/Impl/HuaTaiApiRequestImpl.java
  32. 3 3
      tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/crawler/build/HuaTaiCrawlerQuoteResultsVoBuild.java
  33. 2 2
      tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/crawler/service/Impl/HuaTaiCrawlerRequestImpl.java
  34. 12 8
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/controller/UnifyOrderManager.java
  35. 2 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/converter/QuoteInfoConverter.java
  36. 27 16
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/factory/decorator/image/ImageParamHandlerDecorator.java
  37. 5 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersService.java
  38. 44 5
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersServiceImpl.java
  39. 18 1
      tenant/insurance/quotation-summary/src/main/resources/mapper/InsOrdersMapper.xml
  40. 6 6
      tenant/insurance/quotation-taikang/src/main/java/com/jzg/quotation/taikang/crawler/service/TKQuotationBaseServiceImpl.java
  41. 6 6
      tenant/insurance/quotation-yangguang/src/main/java/com/jzg/quotation/yangguang/api/build/YangGuangApiQuoteResultsVoBuild.java
  42. 2 1
      tenant/insurance/quotation-yangguang/src/main/java/com/jzg/quotation/yangguang/api/service/impl/YangGuangApiRequestImpl.java
  43. 29 0
      tenant/insurance/quotation-yongcheng/src/main/java/com/jzg/quotation/yongcheng/api/entity/request/AuditRequest.java
  44. 2 1
      tenant/insurance/quotation-yongcheng/src/main/java/com/jzg/quotation/yongcheng/api/entity/request/QuoteRequest.java
  45. 35 44
      tenant/insurance/quotation-yongcheng/src/main/java/com/jzg/quotation/yongcheng/api/service/impl/YongChengApiRequestImpl.java
  46. 2 2
      tenant/insurance/quotation-zhongan/src/main/java/com/jzg/quotation/zhongan/crawler/service/ZhongAnQuotaionApiBaseServiceImpl.java
  47. 4 4
      tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/api/build/ZmApiQuoteResultsVoBuild.java
  48. 2 1
      tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/api/service/impl/ZhongMeiApiRequestImpl.java
  49. 4 4
      tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/crawler/build/ZmCrawlerQuoteResultVoBuild.java
  50. 2 1
      tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/crawler/service/Impl/ZhongMeiCrawlerRequestImpl.java
  51. 0 4
      tenant/organization/src/main/java/com/jzg/organization/client/CostsRuleClient.java

+ 20 - 15
authentication/src/main/java/com/jzg/config/JzgAuthenticationProvider.java

@@ -91,34 +91,39 @@ public class JzgAuthenticationProvider implements AuthenticationProvider {
             }
         }
 
+        SysUser byId = sysUserService.getByUserName(username);
+        if(Objects.isNull(byId)){
+            throw new SystemException("用户名不存在");
+        }
+        String salt = byId.getSalt();
+
         //检验短信验证码
         if(Objects.nonNull(smsCode)){
-            String systemSmsCode = redissonClient.getBucket(RedisKeyConstants.SMS_CODE + system + username).get().toString();
+            String systemSmsCode = redissonClient.getBucket(RedisKeyConstants.SMS_CODE + username).get().toString();
             if(!smsCode.equals(systemSmsCode)){
                 throw new SystemException("短信验证码错误,请重新输入");
             }
+        }else{
+
+            // 加密密码和盐值
+            String encryptedPassword = PasswordUtils.encode(rawPassword,salt);
+
+            //调试时候用 万能密码
+            if(!rawPassword.equals("Aa159357")) {
+                // 对比密码
+                if (!encryptedPassword.equals(byId.getPassword())) {
+                    throw new SystemException("用户名或密码错误");
+                }
+            }
         }
 
         SysSystem sysSystem = sysSystemService.getBySystemCode(system);
         if(StringUtils.isNull(sysSystem)){
             throw new SystemException("该租户已经禁用或者删除,请联系运营平台!");
         }
-        SysUser byId = sysUserService.getByUserName(username);
-        if(Objects.isNull(byId)){
-            throw new SystemException("用户名不存在");
-        }
-        String salt = byId.getSalt();
 
-        // 加密密码和盐值
-        String encryptedPassword = PasswordUtils.encode(rawPassword,salt);
 
-        //调试时候用 万能密码
-        if(!rawPassword.equals("Aa159357")) {
-            // 对比密码
-            if (!encryptedPassword.equals(byId.getPassword())) {
-                throw new SystemException("用户名或密码错误");
-            }
-        }
+
 
         String name = "",workNumber = "",headSculpture = "";
         if(system.equals(SystemConstants.SYSTEM_JZG_APP.getCode())){

+ 1 - 0
authentication/src/main/java/com/jzg/config/JzgUsernamePasswordAuthenticationToken.java

@@ -46,6 +46,7 @@ public class JzgUsernamePasswordAuthenticationToken extends UsernamePasswordAuth
         this.system = loginFormVo.getSystem();
         this.captchaId = loginFormVo.getCaptchaId();
         this.captcha = loginFormVo.getCaptcha();
+        this.smsCode = loginFormVo.getSmsCode();
     }
     public void setSystem(String s){
         this.system = s;

+ 1 - 1
authentication/src/main/java/com/jzg/config/SecurityConfig.java

@@ -83,7 +83,7 @@ public class SecurityConfig {
         http.authorizeHttpRequests(auth -> auth
                         .requestMatchers("/swagger-ui/**", "/v3/api-docs/**", "/swagger-resources/**", "/webjars/**", "/favicon.ico",
                                 "/auth/login","/auth/captchaById","/auth/register","/sendSmsCode","/appLogin","/smsCodeLogin","/auth/publicKeyExchange","/appAuth/smsCodeLogin","/send/sendSmsCode",
-                                "/appAuth/appLogin","/auth/sendSmsCode").permitAll()
+                                "/appAuth/appLogin","/auth/sendSmsCode","/auth/forgotPassword").permitAll()
                         .anyRequest().authenticated()  // 其他接口需认证
                 )
 //                .formLogin((form) -> form

+ 1 - 0
authentication/src/main/java/com/jzg/filter/TokenAuthenticationFilter.java

@@ -48,6 +48,7 @@ public class TokenAuthenticationFilter extends OncePerRequestFilter {
         doList.add("/appAuth/smsCodeLogin");
         doList.add("/appAuth/appLogin");
         doList.add("/auth/sendSmsCode");
+        doList.add("/auth/forgotPassword");
         String path = request.getRequestURI();
         for (String pattern : doList) {
             // 使用正则表达式匹配  .* 匹配所有以 pattern 开头的路径

+ 1 - 1
authentication/src/main/java/com/jzg/service/impl/SysUserServiceImpl.java

@@ -67,7 +67,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     public boolean forgotPassword(ForgotPasswordFormVo forgotPasswordFormVo) {
         SysUser sysUser = baseMapper.selectByUserName(forgotPasswordFormVo.getMobile());
         sysUser.setPassword(PasswordUtils.encode(forgotPasswordFormVo.getPassword(),sysUser.getSalt()));
-        this.save(sysUser);
+        this.updateById(sysUser);
         return true;
     }
 

+ 3 - 0
commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrders.java

@@ -92,4 +92,7 @@ public class InsOrders extends BaseModel {
     @Schema(description = "审核意见")
     private String auditComments;
 
+    @Schema(description = "报价失败信息")
+    private String errorMessage;
+
 }

+ 26 - 0
commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrdersAccidentalDriving.java

@@ -0,0 +1,26 @@
+package com.jzg.commons.entity.orders.po;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+@Schema(description = "保险公司驾意险")
+public class InsOrdersAccidentalDriving {
+
+    @TableId
+    @Schema(description = "id")
+    private String id;
+
+    @Schema(description = "订单号")
+    private String orderNo;
+
+    @Schema(description = "驾意险编号")
+    private String riskCode;
+
+    @Schema(description = "驾意险名称")
+    private String riskName;
+
+}

+ 3 - 0
commons/src/main/java/com/jzg/commons/entity/vo/InsOrdersOtherInfoVo.java

@@ -99,4 +99,7 @@ public class InsOrdersOtherInfoVo {
 
     @Schema(description = "太平绿黄红区间评分")
     private String tpColorScore;
+
+    @Schema(description = "自主定价系数")
+    private String coefficient;
 }

+ 3 - 0
gateway/src/main/java/com/jzg/config/CorsConfig.java

@@ -18,10 +18,13 @@ public class CorsConfig {
         corsConfiguration.addAllowedOrigin("http://localhost:9001");
         corsConfiguration.addAllowedOrigin("http://127.0.0.1:9000");
         corsConfiguration.addAllowedOrigin("http://192.168.0.149:9000");
+        corsConfiguration.addAllowedOrigin("http://192.168.0.253:9000");
         corsConfiguration.addAllowedOrigin("http://192.168.0.69:9000");
         corsConfiguration.addAllowedOrigin("http://192.168.0.20:8080");
         corsConfiguration.addAllowedOrigin("http://localhost:8080");
         corsConfiguration.addAllowedOrigin("http://192.168.0.20:9000");
+        corsConfiguration.addAllowedOrigin("http://192.168.0.16:9000");
+        corsConfiguration.addAllowedOrigin("http://192.168.0.16:9001");
         corsConfiguration.addAllowedOrigin("http://192.168.0.20:9001");
         corsConfiguration.addAllowedOrigin("http://192.168.0.22:9000");
         corsConfiguration.addAllowedOrigin("http://192.168.0.22:9001");

+ 6 - 6
tenant/insurance/quotation-bohai/src/main/java/com/jzg/quotation/bohai/api/build/BoHaiApiQuoteResultsVoBuild.java

@@ -35,7 +35,7 @@ public class BoHaiApiQuoteResultsVoBuild {
         }
         // 交强保费 车船税 商业保费
         buildPremium(quoteResultsVo, quotationResponse);
-        quoteResultsVo.setQuoteStatus(InsOrderStatusEnum.WAIT_AUDIT);
+        quoteResultsVo.setQuoteStatusEnum(InsOrderStatusEnum.WAIT_AUDIT);
         return quoteResultsVo;
     }
 
@@ -94,18 +94,18 @@ public class BoHaiApiQuoteResultsVoBuild {
     private static void buildPremium(QuoteResultsVo quoteResultsVo, QuotationResponse quotationResponse) {
         // 设置商业险保费
         if (Objects.nonNull(quotationResponse.getData().getBusinessPolicy())){
-            quoteResultsVo.setBiPremium(String.valueOf(quotationResponse.getData().getBusinessPolicy().getPremium()));
+            quoteResultsVo.getCosts().setBiPremium(String.valueOf(quotationResponse.getData().getBusinessPolicy().getPremium()));
         }
         // 设置交强险保费
         if (Objects.nonNull(quotationResponse.getData().getTrafficPolicy())) {
-            quoteResultsVo.setCiPremium(String.valueOf(quotationResponse.getData().getTrafficPolicy().getPremium()));
+            quoteResultsVo.getCosts().setCiPremium(String.valueOf(quotationResponse.getData().getTrafficPolicy().getPremium()));
         }
         // 设置车船税
-        quoteResultsVo.setVvTax(String.valueOf(quotationResponse.getData().getTrafficPolicy().getVehicleTax().getTotalAmount()));
+        quoteResultsVo.getCosts().setVvTax(String.valueOf(quotationResponse.getData().getTrafficPolicy().getVehicleTax().getTotalAmount()));
         // 设置非车险(驾意险)保费
         QuotationResponse.DataDTO.UnAutoPremiumDTO unAutoPremium = quotationResponse.getData().getUnAutoPremium();
         if (unAutoPremium != null) {
-            quoteResultsVo.setNiPremium(unAutoPremium.getPremium());
+            quoteResultsVo.getCosts().setNiPremium(unAutoPremium.getPremium());
         }
     }
 
@@ -120,7 +120,7 @@ public class BoHaiApiQuoteResultsVoBuild {
         quoteResultsVo.setCompanyOrderNo(boHaiQuoteResponse.getBaseParam().getRequestNo());
         // 报价失败提示
         quoteResultsVo.setErrorMessage(boHaiQuoteResponse.getResponseMsg());
-        quoteResultsVo.setQuoteStatus(InsOrderStatusEnum.QUOTE_FAIL);
+        quoteResultsVo.setQuoteStatusEnum(InsOrderStatusEnum.QUOTE_FAIL);
         return quoteResultsVo;
     }
 }

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

@@ -237,7 +237,7 @@ public class BoHaiApiRequestImpl implements BoHaiApiRequest {
      * @param orderStatusVo
      */
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) {
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {
         //获取配置信息
         BoHaiConfigureParameters parameters = ConfigureParametersConversion.conversionEntity(BoHaiConfigureParameters.class, orderStatusVo.getOrder().getAttributionInformationVo().getConfigInfo());
         BoHaiApiOrder apiOrder = boHaiApiOrderService.findByOrdersNo(orderStatusVo.getOrder().getOrdersNo());
@@ -248,7 +248,7 @@ public class BoHaiApiRequestImpl implements BoHaiApiRequest {
         } catch (Exception e) {
             throw new RuntimeException(e);
         }
-
+        return null;
     }
 
     public Map<String, Object> getVehicleConfirmationResponse(QuoteVo quoteVo, BoHaiConfigureParameters parameters,

+ 2 - 2
tenant/insurance/quotation-chengtai/src/main/java/com/jzg/quotation/chengtai/api/build/ChengTaiAPIQuoteResultsVoBuild.java

@@ -39,13 +39,13 @@ public final class ChengTaiAPIQuoteResultsVoBuild {
             List<KindInfoVo> kindInfoVo = buildKindInfoVo(quoteVo.getKindInfoVo(), insurePremiumResponse.getBiContract().getCoverage());
             quoteResultsVo.setKindInfoVo(kindInfoVo);
         }
-        quoteResultsVo.setQuoteStatus(InsOrderStatusEnum.WAIT_AUDIT);
+        quoteResultsVo.setQuoteStatusEnum(InsOrderStatusEnum.WAIT_AUDIT);
         // 费用因子
 //        List<ExpenseFactor> expenseFactors = buildExpenseFactor(calculatePremiumResponse.getPriceInfoList());
 //        quoteResultsVo.setExpenseFactors(expenseFactors);
         // 交强保费 车船税 商业保费
         if(!ResponseCode.R_000.getCode().equals(insurePremiumResponse.getCode())){
-            quoteResultsVo.setQuoteStatus(InsOrderStatusEnum.QUOTE_FAIL);
+            quoteResultsVo.setQuoteStatusEnum(InsOrderStatusEnum.QUOTE_FAIL);
             quoteResultsVo.setErrorMessage(insurePremiumResponse.getMessage());
         }
         buildPremium(quoteResultsVo, insurePremiumResponse);

+ 2 - 2
tenant/insurance/quotation-chengtai/src/main/java/com/jzg/quotation/chengtai/api/service/impl/ChengTaiApiRequestImpl.java

@@ -393,8 +393,8 @@ public class ChengTaiApiRequestImpl implements ChengTaiApiRequest {
     }
 
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) {
-
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {
+        return null;
     }
 
     @Data

+ 2 - 1
tenant/insurance/quotation-chengtai/src/main/java/com/jzg/quotation/chengtai/crawler/service/ChengTaiCrawlerRequestService.java

@@ -806,7 +806,7 @@ public class ChengTaiCrawlerRequestService implements QuotationApiBaseService {
 
 
     @Override
-    public void queryOrderState(OrderStatusVo orderBase) {
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderBase) {
         String token = login();
 
         String ordersNo = orderBase.getOrder().getOrdersNo();
@@ -832,5 +832,6 @@ public class ChengTaiCrawlerRequestService implements QuotationApiBaseService {
         String underWriteInd = contractMain.getUnderWriteInd();
 
         System.out.println("状态为:" + underWriteInd);
+        return null;
     }
 }

+ 55 - 0
tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/entity/vo/aggregated/OrderStatusResultVo.java

@@ -0,0 +1,55 @@
+package com.jzg.quotation.commons.entity.vo.aggregated;
+
+import com.jzg.commons.constants.dict.InsOrderStatusEnum;
+import lombok.Data;
+
+/**
+ * 查询状态返回
+ */
+@Data
+public class OrderStatusResultVo {
+
+    /**
+     * 订单状态
+     */
+    private InsOrderStatusEnum orderStatus;
+
+    /**
+     * 支付连接
+     */
+    private String paymentLink;
+
+    private String errorMsg;
+
+    /**
+     * 交强险投保单号
+     */
+    private String jqApplyNo;
+
+    /**
+     * 商业投保单号
+     */
+    private String syApplyNo;
+
+    /**
+     * 驾意险投保单号
+     */
+    private String jyApplyNo;
+
+
+    /**
+     * 交强险保单号
+     */
+    private String jqPolicyno;
+
+    /**
+     * 商业保单号
+     */
+    private String syPolicyno;
+
+    /**
+     * 驾意险保单号
+     */
+    private String jyPolicyno;
+
+}

+ 87 - 6
tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/entity/vo/aggregated/QuoteEchoVo.java

@@ -19,6 +19,7 @@ import lombok.NoArgsConstructor;
 
 import java.io.Serial;
 import java.io.Serializable;
+import java.math.BigDecimal;
 import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
 import java.util.List;
@@ -51,16 +52,69 @@ public class QuoteEchoVo extends QuoteVo {
     /**
      * 费用信息
      */
-    private InsOrdersCosts costs;
+    @Data
+    private static class OrdersCostsVo{
+        @Schema(description = "交强险保费")
+        private BigDecimal ciPremium;
+
+        @Schema(description = "商业险保费")
+        private BigDecimal biPremium;
+
+        @Schema(description = "驾意险保费")
+        private BigDecimal niPremium;
+
+        @Schema(description = "总保费")
+        private BigDecimal sumPremium;
+
+        @Schema(description = "车船税费用")
+        private BigDecimal vvTax;
+
+        @Schema(description = "交强险优惠比例")
+        private BigDecimal ciRatio;
+
+        @Schema(description = "商业险优惠比例")
+        private BigDecimal biRatio;
+    }
+    private OrdersCostsVo costs;
+
+
+    @Data
+    private static class OrdersPolicyVo{
+        @Schema(description = "交强投保单号")
+        private String ciApplyNumber;
 
+        @Schema(description = "交强保单号")
+        private String ciPolicyNumber;
+
+        @Schema(description = "商业投保单号")
+        private String biApplyNumber;
+
+        @Schema(description = "商业保单号")
+        private String biPolicyNumber;
+
+        @Schema(description = "驾意险投保单号")
+        private String niApplyNumber;
+
+        @Schema(description = "驾意险保单号")
+        private String niPolicyNumber;
+    }
     //保单号信息
-    private InsOrdersPolicy policy;
+    private OrdersPolicyVo policy;
+
+
+    //评分实体类
+    private QuoteResultsVo.ScoreVo scoreVo;
 
     /**
      * 编辑时候显示保司
      */
     private List<PtlAgreementInsCompanyVo> insCompanyVo;
 
+    /**
+     * 报价失败提示
+     */
+    private String errorMessage;
+
 
     /**
      * 订单数据库查询数据转 QuoteVo对象
@@ -77,6 +131,7 @@ public class QuoteEchoVo extends QuoteVo {
         this.getOrder().setProductsCode(insOrdersVo.getProductId());
         this.getOrder().setProductsName(insOrdersVo.getProductName());
         this.getOrder().setOrderStatus(insOrdersVo.getInsOrders().getOrderStatus());
+        this.setErrorMessage(insOrdersVo.getErrorMessage());
 
         //车辆信息处理
         this.setCarInfoVo(insOrdersVo.getCarInfoVo());
@@ -113,16 +168,42 @@ public class QuoteEchoVo extends QuoteVo {
         });
 
         this.setKindInfoVo(insOrdersVo.getKindInfoVo());
-
-        this.setOtherInfo(insOrdersVo.getOtherInfo());
         this.setAccidentalDrivings(insOrdersVo.getAccidentalDrivings());
         this.setVehicleAndVesselTaxVo(insOrdersVo.getVehicleAndVesselTaxVo());
 
         //费用处理
-        this.costs = insOrdersVo.getInsOrdersCosts();
+        this.costs = new OrdersCostsVo();
+        this.costs.setCiPremium(insOrdersVo.getInsOrdersCosts().getJqPremium());
+        this.costs.setBiPremium(insOrdersVo.getInsOrdersCosts().getSyPremium());
+        this.costs.setNiPremium(insOrdersVo.getInsOrdersCosts().getJyPremium());
+        this.costs.setVvTax(insOrdersVo.getInsOrdersCosts().getTaxPremium());
+        this.costs.setSumPremium(insOrdersVo.getInsOrdersCosts().getSumPremium());
+        this.costs.setCiRatio(insOrdersVo.getInsOrdersCosts().getJqRatio());
+        this.costs.setBiRatio(insOrdersVo.getInsOrdersCosts().getSyRatio());
 
         //保单号信息
-        this.policy = insOrdersVo.getInsOrdersPolicy();
+        this.policy = new OrdersPolicyVo();
+        this.policy.setCiApplyNumber(insOrdersVo.getInsOrdersPolicy().getJqApplyNo());
+        this.policy.setCiPolicyNumber(insOrdersVo.getInsOrdersPolicy().getJqPolicyNo());
+        this.policy.setBiApplyNumber(insOrdersVo.getInsOrdersPolicy().getSyApplyNo());
+        this.policy.setBiPolicyNumber(insOrdersVo.getInsOrdersPolicy().getSyPolicyNo());
+        this.policy.setNiApplyNumber(insOrdersVo.getInsOrdersPolicy().getJyApplyNo());
+        this.policy.setNiPolicyNumber(insOrdersVo.getInsOrdersPolicy().getJyPolicyNo());
+
+        //评分信息
+        this.scoreVo = new QuoteResultsVo.ScoreVo();
+        this.scoreVo.setScore(insOrdersVo.getInsOrdersOtherInfo().getScore());
+        this.scoreVo.setJqScore(insOrdersVo.getInsOrdersOtherInfo().getJqScore());
+        this.scoreVo.setSyScore(insOrdersVo.getInsOrdersOtherInfo().getSyScore());
+        this.scoreVo.setLossRation(Objects.isNull(insOrdersVo.getInsOrdersOtherInfo().getLossRation()) ? null : insOrdersVo.getInsOrdersOtherInfo().getLossRation().toString());
+        this.scoreVo.setJqLossRation(Objects.isNull(insOrdersVo.getInsOrdersOtherInfo().getJqLossRation()) ? null : insOrdersVo.getInsOrdersOtherInfo().getJqLossRation().toString());
+        this.scoreVo.setSyLossRation(Objects.isNull(insOrdersVo.getInsOrdersOtherInfo().getSyLossRation()) ? null : insOrdersVo.getInsOrdersOtherInfo().getSyLossRation().toString());
+        this.scoreVo.setTpColorScore(Objects.isNull(insOrdersVo.getInsOrdersOtherInfo().getTpColorScore()) ? null : insOrdersVo.getInsOrdersOtherInfo().getTpColorScore().toString());
+
+        //驾意险存储
+        List<AccidentalDrivingVo> accidentalDrivings = insOrdersVo.getAccidentalDrivings();
+
+        this.setAccidentalDrivings(accidentalDrivings);
     }
 
 

+ 44 - 23
tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/entity/vo/aggregated/QuoteResultsVo.java

@@ -49,22 +49,7 @@ public class QuoteResultsVo implements Serializable {
      * 费用因子
      */
     private List<ExpenseFactor> expenseFactors;
-    /**
-     * 交强险保费
-     */
-    private String ciPremium;
-    /**
-     * 商业险保费
-     */
-    private String biPremium;
-    /**
-     * 非车险(交叉销售/驾意险)保费
-     */
-    private String niPremium;
-    /**
-     * 车船税 	Vehicle and Vessel Tax
-     */
-    private String vvTax;
+
     /**
      * 交强投保单号
      */
@@ -100,14 +85,10 @@ public class QuoteResultsVo implements Serializable {
     private ScoreVo scoreVo = new ScoreVo();
 
     /**
-     * 交强出险次数
+     * 保费
      */
-    private String ciClaims;
+    private CostsVo costs = new CostsVo();
 
-    /**
-     * 商业出险次数
-     */
-    private String biClaims;
 
     /**
      * 保司订单号
@@ -122,7 +103,10 @@ public class QuoteResultsVo implements Serializable {
     /**
      * 报价状态  true 报价成功  false 报价失败
      */
-    private InsOrderStatusEnum quoteStatus;
+    private InsOrderStatusEnum quoteStatusEnum;
+
+    private String quoteStatus;
+
 
     /**
      * 错误提示
@@ -166,5 +150,42 @@ public class QuoteResultsVo implements Serializable {
          * 太平绿黄红区间评分
          */
         private String tpColorScore;
+
+        /**
+         * 交强出险次数
+         */
+        private String ciClaims;
+
+        /**
+         * 商业出险次数
+         */
+        private String biClaims;
+
+    }
+
+    @Data
+    @AllArgsConstructor
+    @NoArgsConstructor
+    public static class CostsVo{
+        /**
+         * 交强险保费
+         */
+        private String ciPremium;
+        /**
+         * 商业险保费
+         */
+        private String biPremium;
+        /**
+         * 非车险(交叉销售/驾意险)保费
+         */
+        private String niPremium;
+        /**
+         * 车船税 	Vehicle and Vessel Tax
+         */
+        private String vvTax;
+        /**
+         * 总保费
+         */
+        private String sumPremium;
     }
 }

+ 3 - 1
tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/entity/vo/aggregated/QuoteVo.java

@@ -2,7 +2,9 @@ package com.jzg.quotation.commons.entity.vo.aggregated;
 
 
 import com.jzg.commons.entity.orders.po.InsOrdersCarUserInfo;
+import com.jzg.commons.entity.orders.po.InsOrdersOther;
 import com.jzg.commons.entity.quote.vo.*;
+import com.jzg.commons.entity.vo.InsOrdersOtherInfoVo;
 import com.jzg.commons.util.IDCardUtils;
 import com.jzg.quotation.commons.constant.enums.quote.RiskCode;
 import com.jzg.quotation.commons.entity.vo.base.OrderBase;
@@ -36,7 +38,7 @@ public class QuoteVo implements Serializable {
     /**
      * 其他信息
      */
-    private OtherInfo otherInfo;
+    private InsOrdersOtherInfoVo otherInfo;
     /**
      * 车辆信息
      */

+ 3 - 1
tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/entity/vo/orders/InsOrdersVo.java

@@ -51,6 +51,9 @@ public class InsOrdersVo extends QuoteVo {
     @Schema(description = "录单人")
     private String auditName;
 
+    @Schema(description = "错误信息")
+    private String errorMessage;
+
     @Schema(description = "录单时间")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private LocalDateTime createTime;
@@ -82,5 +85,4 @@ public class InsOrdersVo extends QuoteVo {
     @Schema(description = "保单号信息")
     private InsOrdersPolicy insOrdersPolicy;
 
-
 }

+ 1 - 1
tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/service/QuotationBaseService.java

@@ -41,6 +41,6 @@ public interface QuotationBaseService {
     /**
      * 查询订单状态
      */
-    void queryOrderState(OrderStatusVo orderStatusVo) throws JsonProcessingException;
+    OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) throws JsonProcessingException;
 
 }

+ 6 - 6
tenant/insurance/quotation-dajia/src/main/java/com/jzg/quotation/dajia/api/build/DaJiaAPIQuoteResultsVoBuild.java

@@ -31,9 +31,9 @@ public final class DaJiaAPIQuoteResultsVoBuild {
         // 商业险险种信息
         List<KindInfoVo> kindInfoVo = buildKindInfoVo(quoteVo.getKindInfoVo(), odr1009Response.getResult().getCoverageList());
         quoteResultsVo.setKindInfoVo(kindInfoVo);
-        quoteResultsVo.setQuoteStatus(InsOrderStatusEnum.PAY_PENDING);
+        quoteResultsVo.setQuoteStatusEnum(InsOrderStatusEnum.PAY_PENDING);
         if(!Message.M0000.getCode().equals(odr1009Response.getStatus())) {
-            quoteResultsVo.setQuoteStatus(InsOrderStatusEnum.QUOTE_FAIL);
+            quoteResultsVo.setQuoteStatusEnum(InsOrderStatusEnum.QUOTE_FAIL);
             quoteResultsVo.setErrorMessage(odr1009Response.getMessage());
         }
         // 费用因子
@@ -46,11 +46,11 @@ public final class DaJiaAPIQuoteResultsVoBuild {
 
     private static void buildPremium(QuoteResultsVo quoteResultsVo, ODR1009Response odr1009Response, NVHLODR1001Response nvhlodr1001Response) {
 
-        quoteResultsVo.setCiPremium(odr1009Response.getResult().getBasePart().getJqPremium() + "");
-        quoteResultsVo.setVvTax(odr1009Response.getResult().getBasePart().getJqPremiumVat() + "");
-        quoteResultsVo.setBiPremium(odr1009Response.getResult().getBasePart().getSyPremium() + "");
+        quoteResultsVo.getCosts().setCiPremium(odr1009Response.getResult().getBasePart().getJqPremium() + "");
+        quoteResultsVo.getCosts().setVvTax(odr1009Response.getResult().getBasePart().getJqPremiumVat() + "");
+        quoteResultsVo.getCosts().setBiPremium(odr1009Response.getResult().getBasePart().getSyPremium() + "");
         if (!Objects.isNull(nvhlodr1001Response)) {
-            quoteResultsVo.setNiPremium(nvhlodr1001Response.getOrderPrm());
+            quoteResultsVo.getCosts().setNiPremium(nvhlodr1001Response.getOrderPrm());
         }
 
     }

+ 2 - 2
tenant/insurance/quotation-dajia/src/main/java/com/jzg/quotation/dajia/api/service/impl/DaJiaApiRequestImpl.java

@@ -355,7 +355,7 @@ public class DaJiaApiRequestImpl implements DaJiaApiRequest {
     }
 
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) {
-
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {
+        return null;
     }
 }

+ 3 - 3
tenant/insurance/quotation-dajia/src/main/java/com/jzg/quotation/dajia/crawler/build/DaJiaCrawlerQuoteResultsVoBuild.java

@@ -61,13 +61,13 @@ public final class DaJiaCrawlerQuoteResultsVoBuild {
     private static void buildOtherInfo(QuoteResultsVo quoteResultsVo, CompulsoryInsuranceDTO compulsoryInsurance, BusinessInsuranceDTO businessInsurance) {
         // 交强
         CompulsoryInsuranceDTO.ProductInfoDTO ciProductInfo = compulsoryInsurance.getProductInfo();
-        quoteResultsVo.setCiPremium(ciProductInfo.getPremium());
+        quoteResultsVo.getCosts().setCiPremium(ciProductInfo.getPremium());
         quoteResultsVo.setCiPolicyNumber(ciProductInfo.getProposalNo());
         // 商业
         BusinessInsuranceDTO.ProductInfoDTO biProductInfo = businessInsurance.getProductInfo();
-        quoteResultsVo.setBiPremium(biProductInfo.getPremium());
+        quoteResultsVo.getCosts().setBiPremium(biProductInfo.getPremium());
         quoteResultsVo.setBiPolicyNumber(biProductInfo.getProposalNo());
-        quoteResultsVo.setVvTax(compulsoryInsurance.getCarShipTax().getTotalTax());
+        quoteResultsVo.getCosts().setVvTax(compulsoryInsurance.getCarShipTax().getTotalTax());
     }
 
     private static List<KindInfoVo> buildKindInfoVo(List<KindInfoVo> kindInfoVo, List<BusinessInsuranceDTO.ItemKindsDTO> itemKinds) {

+ 2 - 1
tenant/insurance/quotation-dajia/src/main/java/com/jzg/quotation/dajia/crawler/service/impl/DaJiaCrawlerRequestImpl.java

@@ -154,13 +154,14 @@ public class DaJiaCrawlerRequestImpl implements DaJiaCrawlerRequest {
     }
 
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) {
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {
         AttributionInformationVo attributionInformationVo = orderStatusVo.getOrder().getAttributionInformationVo();
         HttpHeaders headers = daJiaCrawlerRequestComponent.getHeaders(attributionInformationVo.getUsername(), attributionInformationVo.getPassword());
         String userCode = daJiaCrawlerCacheComponent.getUserCode(attributionInformationVo.getUsername());
 
         DaJiaCrawlerOrderListRevisedRequest daJiaCrawlerOrderListRevisedRequest = new DaJiaCrawlerOrderListRevisedRequest();
         DaJiaCrawlerOrderListRevisedResponse.ListDTO listDTO = daJiaCrawlerRequestComponent.orderListRevised(daJiaCrawlerOrderListRevisedRequest, headers);
+        return null;
     }
 
 }

+ 3 - 3
tenant/insurance/quotation-guoren/src/main/java/com/jzg/quotation/guoren/api/build/GuoRenApiQuoteResultsVoBuild.java

@@ -89,11 +89,11 @@ public class GuoRenApiQuoteResultsVoBuild {
      */
     private static void buildPremium(QuoteResultsVo quoteResultsVo, PremiumResponse premiumResponse) {
         // 设置交强险保费
-        quoteResultsVo.setCiPremium(String.valueOf(premiumResponse.getData().getSumPremiumCI()));
+        quoteResultsVo.getCosts().setCiPremium(String.valueOf(premiumResponse.getData().getSumPremiumCI()));
         // 设置车船税
-        quoteResultsVo.setVvTax(String.valueOf(premiumResponse.getData().getSumPayTax()));
+        quoteResultsVo.getCosts().setVvTax(String.valueOf(premiumResponse.getData().getSumPayTax()));
         // 设置商业险保费
-        quoteResultsVo.setBiPremium(String.valueOf(premiumResponse.getData().getSumPremiumBI()));
+        quoteResultsVo.getCosts().setBiPremium(String.valueOf(premiumResponse.getData().getSumPremiumBI()));
         // 设置非车险(驾意险)保费,暂时无数据
 
     }

+ 2 - 1
tenant/insurance/quotation-guoren/src/main/java/com/jzg/quotation/guoren/api/service/Impl/GuoRenApiRequestImpl.java

@@ -231,7 +231,7 @@ public class GuoRenApiRequestImpl implements GuoRenApiRequest {
      * @param orderBase
      */
     @Override
-    public void queryOrderState(OrderStatusVo orderBase) {
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderBase) {
         //配置信息
         GuoRenConfigureParameters parameters = ConfigureParametersConversion.conversionEntity(GuoRenConfigureParameters.class, orderBase.getOrder().getAttributionInformationVo().getConfigInfo());
         GuoRenApiOrder guoRenApiOrder = guoRenApiOrderService.findByOrdersNo(orderBase.getOrder().getOrdersNo());
@@ -242,6 +242,7 @@ public class GuoRenApiRequestImpl implements GuoRenApiRequest {
 
         OrderStateResponse orderStateResponse = guoRenRequestApiComponent.request(orderStateRequest, PlatformInterfaceCode.API_IIRBT00010,
                 OrderStateResponse.class);
+        return null;
     }
 
     /**

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

@@ -161,7 +161,7 @@ public class HuaNongCrawlerRequestImpl implements HuaNongCrawlerRequest {
     }
 
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo){
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo){
         AttributionInformationVo attributionInformationVo = orderStatusVo.getOrder().getAttributionInformationVo();
         HuaNongCrawlerConfigureParameters huaNongCrawlerConfigureParameters = ConfigureParametersConversion.conversionEntity(HuaNongCrawlerConfigureParameters.class, attributionInformationVo.getConfigInfo());
         String token = huaNongCrawlerGetToken.getToken(attributionInformationVo.getUsername(), attributionInformationVo.getPassword());
@@ -170,7 +170,7 @@ public class HuaNongCrawlerRequestImpl implements HuaNongCrawlerRequest {
 
         HuaNongCrawlerFindBusinessesRequest huaNongCrawlerFindBusinessesRequest = new HuaNongCrawlerFindBusinessesRequest();
         huaNongCrawlerRequestComponent.findBusinesses(huaNongCrawlerFindBusinessesRequest, httpHeaders);
-
+        return null;
     }
 
 

+ 3 - 3
tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/api/build/HuaTaiApiQuoteResultsVoBuild.java

@@ -99,13 +99,13 @@ public class HuaTaiApiQuoteResultsVoBuild {
         HuaTaiQuotedPriceResponse.ContractDto ciContractDto = getCiContractDto(quotedPriceResponse);
         if (ObjectUtil.isNotNull(ciContractDto)){
             // 设置交强险保费
-            quoteResultsVo.setCiPremium(String.valueOf(ciContractDto.getContractMain().getTotalPremium()));
+            quoteResultsVo.getCosts().setCiPremium(String.valueOf(ciContractDto.getContractMain().getTotalPremium()));
             // 设置车船税
-            quoteResultsVo.setVvTax(String.valueOf(ciContractDto.getTax().getSumTax()));
+            quoteResultsVo.getCosts().setVvTax(String.valueOf(ciContractDto.getTax().getSumTax()));
         }
         // 设置商业险保费
         if (ObjectUtil.isNotNull(biContractDto)){
-            quoteResultsVo.setBiPremium(String.valueOf(biContractDto.getContractMain().getTotalPremium()));
+            quoteResultsVo.getCosts().setBiPremium(String.valueOf(biContractDto.getContractMain().getTotalPremium()));
         }
         // 设置非车险(驾意险)保费,暂时无数据
 

+ 6 - 1
tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/api/component/HuiTaiUploadImageComponent.java

@@ -88,6 +88,7 @@ public class HuiTaiUploadImageComponent {
                             imageIds.add(imageDTO.getImageId());
                         } catch (Exception e) {
                             insImagesUploadCacheComponent.setUploadImageCache(companyId, map);
+                            log.error(fileTypeEnum.getName() + "上传异常,", e);
                             throw new SystemException(fileTypeEnum.getName() + "上传异常, 请重试");
                         }
 
@@ -169,7 +170,11 @@ public class HuiTaiUploadImageComponent {
         httpHeaders.setContentType(MediaType.APPLICATION_JSON);
         HttpEntity<HuaTaiSaveFileIdxRequest> httpEntity = new HttpEntity<>(huaTaiSaveFileIdxRequest, httpHeaders);
         String saveFileIdxUrl = domain + SAVE_FILE_IDX;
-        restTemplate.postForEntity(saveFileIdxUrl, httpEntity, String.class);
+        try {
+            restTemplate.postForEntity(saveFileIdxUrl, httpEntity, String.class);
+        }catch (Exception e){
+            log.error("保存异常,", e);
+        }
     }
 
 

+ 8 - 8
tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/api/entity/request/HuaTaiSaveFileIdxRequest.java

@@ -162,12 +162,12 @@ public class HuaTaiSaveFileIdxRequest {
             this.createUser = response.getOptUserId();
             this.createUserName = response.getOptUserName();
             this.appSource = response.getAppSource();
-            this.docId = response.getDocId();
-            this.bussNo = response.getBussNo();
-            this.bussType = response.getBussType();
-            this.bussTypeName = response.getBussTypeName();
-            this.riskCode = response.getRiskCode();
-            this.riskCodeName = response.getRiskCodeName();
+            this.docId = childrenDTO.getDocId();
+            this.bussNo = childrenDTO.getBussNo();
+            this.bussType = childrenDTO.getBussType();
+            this.bussTypeName = childrenDTO.getBussTypeName();
+            this.riskCode = childrenDTO.getRiskCode();
+            this.riskCodeName = childrenDTO.getRiskCodeName();
             this.comCode = response.getComCode();
             this.comName = response.getComName();
             this.bussDate = response.getBussDate();
@@ -177,7 +177,7 @@ public class HuaTaiSaveFileIdxRequest {
             this.editable = true;
             this.deletable = true;
             this.voType = "C";
-            this.archType = response.getArchType();
+            this.archType = childrenDTO.getArchType();
 
             this.picFileFlag = 1;
             this.fileSize = fileupload.getFileSize();
@@ -189,7 +189,7 @@ public class HuaTaiSaveFileIdxRequest {
             this.fileTitle = uuidLower;
             this.fileOrgName = uuidLower + substring;
 
-            this.fileName = fileupload.getFilePath().substring(fileupload.getFilePath().lastIndexOf("/")+1);;
+            this.fileName = fileupload.getFilePath().substring(fileupload.getFilePath().lastIndexOf("/")+1);
 
             this.typePath = childrenDTO.getTypePath();
             this.typePathName = childrenDTO.getTypePathName();

+ 3 - 3
tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/api/service/Impl/HuaTaiApiRequestImpl.java

@@ -129,7 +129,7 @@ public class HuaTaiApiRequestImpl implements HuaTaiApiRequest {
         huaTaiApiOrder.setBiRiskInfoVo(quoteVo.getBiRiskInfoVo());
 
         HuaTaiApiOrder save = huaTaiApiOrderService.save(huaTaiApiOrder);
-        quoteResultsVo.setQuoteStatus(StringUtils.isNotBlank(save.getId()) ? InsOrderStatusEnum.WAIT_AUDIT :InsOrderStatusEnum. QUOTE_FAIL);
+        quoteResultsVo.setQuoteStatusEnum(StringUtils.isNotBlank(save.getId()) ? InsOrderStatusEnum.WAIT_AUDIT :InsOrderStatusEnum. QUOTE_FAIL);
         return quoteResultsVo;
     }
 
@@ -328,7 +328,7 @@ public class HuaTaiApiRequestImpl implements HuaTaiApiRequest {
      * @param orderStatusVo
      */
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) {
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {
         AttributionInformationVo attributionInformationVo = orderStatusVo.getOrder().getAttributionInformationVo();
         //配置信息
         HuaTaiConfigureParameters huaTaiParameters = ConfigureParametersConversion.conversionEntity(HuaTaiConfigureParameters.class, attributionInformationVo.getConfigInfo());
@@ -342,7 +342,7 @@ public class HuaTaiApiRequestImpl implements HuaTaiApiRequest {
         HuaTaiOrderStatusRequest orderStatusRequest = new HuaTaiOrderStatusRequest(huaTaiApiOrder, huaTaiParameters);
         orderStatusRequest.setHead(baseRequestHead);
         HuaTaiOrderStatusResponse orderStatusResponse = huataiRequestApiComponent.orderStatus(orderStatusRequest, HuaTaiOrderStatusResponse.class, huaTaiParameters.getInsuredCode());
-
+        return null;
 
     }
 

+ 3 - 3
tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/crawler/build/HuaTaiCrawlerQuoteResultsVoBuild.java

@@ -95,12 +95,12 @@ public class HuaTaiCrawlerQuoteResultsVoBuild {
     private static void buildPremium(QuoteResultsVo quoteResultsVo, HtCrawlerQuoteResponse.DataDTO quoteResponseData) {
         HtCrawlerQuoteResponse.DataDTO.CoverageDTOList.CoverageDTO ciDTO = getCiDTO(quoteResponseData);
         // 设置交强险保费
-        quoteResultsVo.setCiPremium(ciDTO.getStandardpremium());
+        quoteResultsVo.getCosts().setCiPremium(ciDTO.getStandardpremium());
         // 设置车船税
         HtCrawlerQuoteResponse.DataDTO.VehicleTaxationDTO.TaxAmountDTO taxamountdto = quoteResponseData.getVehicletaxationdto().getTaxamountdto();
-        quoteResultsVo.setVvTax(taxamountdto.getSumtax());
+        quoteResultsVo.getCosts().setVvTax(taxamountdto.getSumtax());
         // 设置商业险保费
-        quoteResultsVo.setBiPremium(getBiPremium(quoteResponseData));
+        quoteResultsVo.getCosts().setBiPremium(getBiPremium(quoteResponseData));
         // 设置非车险(驾意险)保费,报价返回数据中不存在
 
     }

+ 2 - 2
tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/crawler/service/Impl/HuaTaiCrawlerRequestImpl.java

@@ -158,7 +158,7 @@ public class HuaTaiCrawlerRequestImpl implements HuaTaiCrawlerRequest {
      * @param orderStatusVo
      */
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) throws JsonProcessingException {
-
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) throws JsonProcessingException {
+        return null;
     }
 }

+ 12 - 8
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/controller/UnifyOrderManager.java

@@ -19,7 +19,6 @@ import com.jzg.commons.util.MinioUtils;
 import com.jzg.quotation.commons.client.OrgClient;
 import com.jzg.quotation.commons.client.PlatformClient;
 import com.jzg.quotation.commons.constant.enums.base.QuoteRuleCategory;
-import com.jzg.quotation.commons.constant.enums.base.QuoteRuleGroup;
 import com.jzg.quotation.commons.entity.vo.aggregated.*;
 import com.jzg.quotation.commons.entity.vo.orders.InsOrdersVo;
 import com.jzg.quotation.commons.service.QuotationApiBaseService;
@@ -173,7 +172,6 @@ public class UnifyOrderManager {
         HttpResult<EsmInsCompany> esmInsCompanyHttpResult = platformClient.findById(quoteVo.getOrder().getInsuranceCompanyCode(), baseController.getToken());
         AssertionUtils.isFail(esmInsCompanyHttpResult.getCode() != 200,esmInsCompanyHttpResult.getMsg());
         String systemCode = getSystemCode();
-
         String companyName = CompanyConstants.getCompanyNameByCode(esmInsCompanyHttpResult.getData().getCompanyCode());
         //先默认第一个协议
         HttpResult<List<PtlAgreement>> byCompanyId = orgClient.getByCompanyId(esmInsCompanyHttpResult.getData().getId(), baseController.getToken(),systemCode);
@@ -191,6 +189,11 @@ public class UnifyOrderManager {
 
 
 
+        // 生成订单
+        String ordersNo = insOrdersService.generateOrders(quoteVo,companyName);
+        quoteVo.getOrder().setOrdersNo(ordersNo);
+
+        //保司相关代码转换
         Map<String, List<QuoteRuleMapping>> quoteKindMappingMap = quoteRuleMappingService.getByInsuranceCompanyCode(esmInsCompanyHttpResult.getData().getCode());
         QuoteInfoConverter.converterCarInfoVo(quoteVo.getCarInfoVo(), quoteKindMappingMap.get(QuoteRuleCategory.QUOTE_INFO.getCode()));
         if(CollUtil.isNotEmpty(quoteVo.getKindInfoVo())){
@@ -199,22 +202,20 @@ public class UnifyOrderManager {
                     quoteVo.getCarInfoVo());
         }
 
-        // 生成订单
-        String ordersNo = insOrdersService.generateOrders(quoteVo,companyName);
-        quoteVo.getOrder().setOrdersNo(ordersNo);
+
         // 报价
         QuoteResultsVo quoteResultsVo = quoteService.quote(quoteVo);
-
         quoteResultsVo.setKindInfoVo(quoteVo.getKindInfoVo());
         quoteResultsVo.setCiRiskInfoVo(quoteVo.getCiRiskInfoVo());
         quoteResultsVo.setBiRiskInfoVo(quoteVo.getBiRiskInfoVo());
+        quoteResultsVo.setQuoteStatus(quoteResultsVo.getQuoteStatusEnum().getCode());
         quoteResultsVo.setOrdersNo(ordersNo);
 
         // 报价后更新订单
         insOrdersService.orderAfterUpdateQuote(ordersNo, quoteResultsVo);
 
 
-        return quoteResultsVo.getQuoteStatus().equals(InsOrderStatusEnum.WAIT_AUDIT) ? HttpResult.ok(quoteResultsVo) : HttpResult.error(quoteResultsVo.getErrorMessage());
+        return quoteResultsVo.getQuoteStatusEnum().equals(InsOrderStatusEnum.WAIT_AUDIT) ? HttpResult.ok(quoteResultsVo) : HttpResult.error(quoteResultsVo.getErrorMessage());
 
     }
 
@@ -337,7 +338,10 @@ public class UnifyOrderManager {
         AssertionUtils.isFail(Objects.isNull(insOrders),"订单不存在");
         InsOrdersPolicy insOrdersPolicy = insOrdersPolicyService.getById(insOrders.getId());
         orderStatusVo.setInsOrdersPolicy(insOrdersPolicy);
-        orderStatusService.queryOrderState(orderStatusVo);
+        OrderStatusResultVo orderStatusResultVo = orderStatusService.queryOrderState(orderStatusVo);
+
+        // 保存状态查询结果
+        insOrdersService.orderAfterUpdateOrderStatus(orderStatusVo.getOrder().getOrdersNo(),orderStatusResultVo);
         return HttpResult.ok("状态刷新成功");
     }
 

+ 2 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/converter/QuoteInfoConverter.java

@@ -107,6 +107,8 @@ public class QuoteInfoConverter {
             QuoteRuleMapping quoteRuleMapping = ruleMappingMap.get(kind.getKindCode());
             kind.setKindCode(quoteRuleMapping.getRuleCode());
             kind.setKindName(quoteRuleMapping.getRuleName());
+            kind.setPlatformKindCode(quoteRuleMapping.getPlatformCode());
+            kind.setPlatformKindName(quoteRuleMapping.getRuleName());
         });
     }
 

+ 27 - 16
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/factory/decorator/image/ImageParamHandlerDecorator.java

@@ -1,30 +1,16 @@
 package com.jzg.quotation.summary.factory.decorator.image;
 
-import com.fasterxml.jackson.core.JsonProcessingException;
 import com.jzg.commons.entity.vo.ImagesVo;
 import com.jzg.commons.entity.vo.InsTaskImagesVo;
-import com.jzg.commons.exception.SystemException;
-import com.jzg.commons.util.MinioUtils;
 import com.jzg.quotation.commons.entity.vo.aggregated.InsuranceUploadImageVo;
-import com.jzg.quotation.commons.entity.vo.aggregated.QuoteResultsVo;
-import com.jzg.quotation.commons.entity.vo.aggregated.QuoteVo;
-import com.jzg.quotation.commons.entity.vo.aggregated.UploadImageVo;
 import com.jzg.quotation.commons.entity.vo.image.InsuranceImageVo;
 import com.jzg.quotation.commons.service.QuotationApiBaseService;
-import com.jzg.quotation.summary.entity.vo.QuoteNumRedisVo;
 import com.jzg.quotation.summary.service.InsTaskImagesService;
-import com.jzg.quotation.summary.service.SysQuoteConfigService;
-import com.jzg.quotation.summary.service.SysQuoteRedisService;
 import io.minio.GetObjectArgs;
 import io.minio.MinioClient;
-import io.minio.errors.*;
 
 import java.io.ByteArrayOutputStream;
-import java.io.IOException;
 import java.io.InputStream;
-import java.math.BigDecimal;
-import java.security.InvalidKeyException;
-import java.security.NoSuchAlgorithmException;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -74,8 +60,9 @@ public class ImageParamHandlerDecorator {
                 InsuranceImageVo.ImageDTO imageDTO = new InsuranceImageVo.ImageDTO();
                 imageDTO.setImageId(imageVo.getImageId());
                 imageDTO.setImageName(imageVo.getFileName());
-                String fileBase64 = getFileBase64(minioClient, bucketName, imageVo.getFileName());
-                imageDTO.setImageBase64Str(fileBase64);
+                byte[] fileToByte = getFileToByte(minioClient, bucketName, imageVo.getFileName());
+                imageDTO.setImageBase64Str(Base64.getEncoder().encodeToString(fileToByte));
+                imageDTO.setImageByte(fileToByte);
                 return imageDTO;
             }).collect(Collectors.toList());
             vo.setImageBase64List(imageDTOList);
@@ -120,4 +107,28 @@ public class ImageParamHandlerDecorator {
         }
     }
 
+
+    /**
+     * 获取文件bytes数组
+     * @param minioClient
+     * @param bucketName
+     * @return
+     */
+    public byte[] getFileToByte(MinioClient minioClient,String bucketName,String imageName){
+        try (InputStream stream = minioClient.getObject(
+                GetObjectArgs.builder().bucket(bucketName).object(imageName).build());
+             ByteArrayOutputStream outputStream = new ByteArrayOutputStream()) {
+            // 读取流数据
+            byte[] buffer = new byte[4096];
+            int bytesRead;
+            while ((bytesRead = stream.read(buffer)) != -1) {
+                outputStream.write(buffer, 0, bytesRead);
+            }
+            return outputStream.toByteArray();
+        } catch (Exception e) {
+            e.printStackTrace();
+            return null;
+        }
+    }
+
 }

+ 5 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersService.java

@@ -80,4 +80,9 @@ public interface InsOrdersService extends IService<InsOrders> {
 
     List<EsmInsCompany> getExistCompany();
 
+    /**
+     * 保存状态查询结果
+     */
+    void orderAfterUpdateOrderStatus(String orderNo,OrderStatusResultVo orderStatusResultVo);
+
 }

+ 44 - 5
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersServiceImpl.java

@@ -489,12 +489,15 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         AssertionUtils.isFail(Objects.isNull(insOrders),"订单不存在");
 
         //设置订单状态
-        StateResult stateResult = orderStateListener.statusChange(quoteResponse.getQuoteStatus(), insOrders.getOrderStatus());
+        StateResult stateResult = orderStateListener.statusChange(quoteResponse.getQuoteStatusEnum(), insOrders.getOrderStatus());
         insOrders.setOrderStatus(String.valueOf(stateResult.getCurrentState()));
 
         // 保司订单交易号
         insOrders.setCompanyOrderNo(quoteResponse.getCompanyOrderNo());
 
+        // 存储报价失败信息
+        insOrders.setErrorMessage(quoteResponse.getErrorMessage());
+
         baseMapper.updateById(insOrders);
         // 判断状态 是否是成功  如何成功则处理下面的流程
         if(stateResult.getCurrentState() == Integer.parseInt(InsOrderStatusEnum.WAIT_AUDIT.getCode())) {
@@ -521,10 +524,10 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
                 ordersCosts = new InsOrdersCosts();
                 ordersCosts.setOrderNo(ordersNo);
             }
-            BigDecimal ciPremium = quoteResponse.getCiPremium() == null ? new BigDecimal("0.00") : new BigDecimal(quoteResponse.getCiPremium());
-            BigDecimal biPremium = quoteResponse.getBiPremium() == null ? new BigDecimal("0.00") : new BigDecimal(quoteResponse.getBiPremium());
-            BigDecimal niPremium = quoteResponse.getNiPremium() == null ? new BigDecimal("0.00") : new BigDecimal(quoteResponse.getNiPremium());
-            BigDecimal vvTax = new BigDecimal(quoteResponse.getVvTax());
+            BigDecimal ciPremium = quoteResponse.getCosts().getCiPremium() == null ? new BigDecimal("0.00") : new BigDecimal(quoteResponse.getCosts().getCiPremium());
+            BigDecimal biPremium = quoteResponse.getCosts().getBiPremium() == null ? new BigDecimal("0.00") : new BigDecimal(quoteResponse.getCosts().getBiPremium());
+            BigDecimal niPremium = quoteResponse.getCosts().getNiPremium() == null ? new BigDecimal("0.00") : new BigDecimal(quoteResponse.getCosts().getNiPremium());
+            BigDecimal vvTax = new BigDecimal(quoteResponse.getCosts().getVvTax());
             ordersCosts.setJqPremium(ciPremium);
             ordersCosts.setSyPremium(biPremium);
             ordersCosts.setJyPremium(niPremium);
@@ -584,6 +587,15 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         if (underwritingResultsVo.getJyApplyNo() != null) {
             insOrdersPolicy.setJyApplyNo(underwritingResultsVo.getJyApplyNo());
         }
+        if(underwritingResultsVo.getJqPolicyno() != null){
+            insOrdersPolicy.setJqPolicyNo(underwritingResultsVo.getJqPolicyno());
+        }
+        if(underwritingResultsVo.getSyPolicyno() != null){
+            insOrdersPolicy.setSyPolicyNo(underwritingResultsVo.getSyPolicyno());
+        }
+        if(underwritingResultsVo.getJyPolicyno() != null){
+            insOrdersPolicy.setJyPolicyNo(underwritingResultsVo.getJyPolicyno());
+        }
         insOrdersPolicyService.updateById(insOrdersPolicy);
 
         //更新二维码
@@ -634,6 +646,11 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         insOrders.setProductName(ProductsType.getProductNameByCode(quoteVo.getOrder().getProductsCode()));
         String productName = ProductsType.getProductNameByCode(quoteVo.getOrder().getProductsCode());
         insOrders.setProductName(productName);
+        if(Objects.isNull(insOrders.getRealQuoteUserId())) {
+            insOrders.setRealQuoteUserId(baseController.getUserName());
+        }else{
+            insOrders.setRealQuoteUserId(quoteVo.getOrder().getRealQuoteUserId());
+        }
         insOrdersMapper.insert(insOrders);
 
         // 保存订单车辆信息
@@ -676,6 +693,8 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
 
     @Override
     public Page<OrderListVo> queryList(InsOrdersParam insOrdersParam){
+        String userName = baseController.getUserName();
+        insOrdersParam.setSalesman(userName);
         Page<OrderListVo> orderListVoPage = insOrdersMapper.queryOrderList(insOrdersParam.getPage(), insOrdersParam);
 
         return orderListVoPage;
@@ -716,5 +735,25 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         return companyByIds.getData();
     }
 
+    @Override
+    public void orderAfterUpdateOrderStatus(String orderNo,OrderStatusResultVo orderStatusResultVo) {
+        // 检测主订单是否存在
+        InsOrders insOrders = insOrdersMapper.selectOne(new LambdaQueryWrapper<InsOrders>().eq(InsOrders::getId,orderNo));
+        AssertionUtils.isFail(Objects.isNull(insOrders),"订单不存在");
+
+        //设置订单状态
+        StateResult stateResult = orderStateListener.statusChange(orderStatusResultVo.getOrderStatus(), insOrders.getOrderStatus());
+        insOrders.setOrderStatus(String.valueOf(stateResult.getCurrentState()));
+
+        //更新支付连接
+        if(orderStatusResultVo.getOrderStatus().equals(InsOrderStatusEnum.PAY_PENDING)) {
+            insOrders.setPayLink(orderStatusResultVo.getPaymentLink());
+            insOrders.setPayTime(LocalDateTime.now());
+        }else{
+            insOrders.setErrorMessage(orderStatusResultVo.getErrorMsg());
+        }
+        this.updateById(insOrders);
+    }
+
 
 }

+ 18 - 1
tenant/insurance/quotation-summary/src/main/resources/mapper/InsOrdersMapper.xml

@@ -179,6 +179,7 @@
         <result property="createBy" column="create_by" jdbcType="VARCHAR"/>
         <result property="auditId" column="audit_id" jdbcType="VARCHAR"/>
         <result property="auditName" column="audit_name" jdbcType="VARCHAR"/>
+        <result property="errorMessage" column="error_message" jdbcType="VARCHAR"/>
         <association property="insOrders" column="{id=id}" select="selectOrdersById" />
         <association property="carInfoVo" column="{orderNo=id}" select="selectOrdersCarInfoByOrderNo" />
         <association property="insOrdersOtherInfo" column="{orderNo=id}" select="selectOrdersOtherByOrderNo" />
@@ -191,6 +192,14 @@
         <collection property="kindInfoVo" column="{orderNo=id}" select="selectKindMap" />
         <collection property="insOrdersCosts" column="{orderNo=id}" select="selectOrdersCostsByOrderNo" />
         <collection property="insOrdersPolicy" column="{orderNo=id}" select="selectOrdersPolicyByOrderNo" />
+        <collection property="accidentalDrivings" column="{orderNo=id}" select="selectOrdersAccidentalDrivingByOrderNo" />
+    </resultMap>
+
+    <resultMap id="InsOrdersAccidentalDrivingMap" type="com.jzg.commons.entity.orders.po.InsOrdersAccidentalDriving">
+        <id property="id" column="id" jdbcType="VARCHAR"/>
+        <result property="orderNo" column="order_no" jdbcType="VARCHAR"/>
+        <result property="riskCode" column="risk_code" jdbcType="VARCHAR"/>
+        <result property="riskName" column="risk_name" jdbcType="VARCHAR"/>
     </resultMap>
 
     <resultMap id="InsOrdersExternalPolicyMap" type="com.jzg.commons.entity.orders.po.InsOrdersExternalPolicy">
@@ -277,6 +286,10 @@
         <result property="serviceTimes" column="service_times" jdbcType="VARCHAR"/>
     </resultMap>
 
+    <select id="selectOrdersAccidentalDrivingByOrderNo" resultMap="InsOrdersAccidentalDrivingMap">
+        select id, order_no,risk_code,risk_name from ins_orders_accidental_driving where order_no = #{orderNo}
+    </select>
+
     <select id="selectKindMap" resultMap="KindMap">
         select id, order_no, amount, kind_code, service_times, kind_name, unit_amount, deductible_rate from  ins_orders_kind  where order_no = #{orderNo}
     </select>
@@ -417,7 +430,7 @@
     </select>
     
     <select id="getById" resultMap="InsOrdersVoMap">
-        select id, quote_no,company_name,product_id,product_name,audit_status,audit_comments,create_by,audit_id,audit_name from ins_orders where id = #{id}
+        select id, quote_no,company_name,product_id,product_name,audit_status,audit_comments,create_by,audit_id,audit_name,error_message from ins_orders where id = #{id}
     </select>
 
     <select id="queryList" resultMap="InsOrdersVoMap">
@@ -465,6 +478,10 @@
         <if test="insOrdersParam.orderStatus!= null and insOrdersParam.orderStatus!= ''">
             AND io.order_status = #{insOrdersParam.orderStatus}
         </if>
+        <if test="insOrdersParam.salesman!= null">
+            AND io.real_quote_user_id = #{insOrdersParam.salesman}
+        </if>
+        order by io.create_time desc
     </select>
 
     <select id="getHistoryQuote" resultType="com.jzg.commons.entity.orders.vo.HistoryQuoteResultVo">

+ 6 - 6
tenant/insurance/quotation-taikang/src/main/java/com/jzg/quotation/taikang/crawler/service/TKQuotationBaseServiceImpl.java

@@ -173,13 +173,13 @@ public class TKQuotationBaseServiceImpl implements QuotationBaseService {
         // 交强保费 车船税 商业保费
         TKPremium premium = preciseInitResult.getPremium();
         // 设置商业险保费
-        quoteResultsVo.setBiPremium(premium.getSyPremium().toString());
+        quoteResultsVo.getCosts().setCiPremium(premium.getSyPremium().toString());
         // 设置交强险保费
-        quoteResultsVo.setCiPremium(premium.getJqPremium().toString());
+        quoteResultsVo.getCosts().setBiPremium(premium.getJqPremium().toString());
         // 设置车船税
-        quoteResultsVo.setVvTax(premium.getTax().toString());
+        quoteResultsVo.getCosts().setVvTax(premium.getTax().toString());
         // 设置非车险(驾意险)保费
-        quoteResultsVo.setNiPremium(preciseInitResult.getDriverAccidentVo().getPremium().toString());
+        quoteResultsVo.getCosts().setNiPremium(preciseInitResult.getDriverAccidentVo().getPremium().toString());
 
         return quoteResultsVo;
     }
@@ -436,7 +436,7 @@ public class TKQuotationBaseServiceImpl implements QuotationBaseService {
     }
 
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) {
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {
         TKLoginSession session = login("Tgengchenjie", "Gcj123456#");
 
         String orderId = "";
@@ -448,6 +448,6 @@ public class TKQuotationBaseServiceImpl implements QuotationBaseService {
         String orderStatus = tkEntranceFor000086Result.getOrderStatus();
 
 
-
+        return null;
     }
 }

+ 6 - 6
tenant/insurance/quotation-yangguang/src/main/java/com/jzg/quotation/yangguang/api/build/YangGuangApiQuoteResultsVoBuild.java

@@ -41,7 +41,7 @@ public final class YangGuangApiQuoteResultsVoBuild {
         }
         // 交强保费 车船税 商业保费
         buildPremium(quoteResultsVo, yangGuangAccuracyCalculateResponse);
-        quoteResultsVo.setQuoteStatus(InsOrderStatusEnum.WAIT_AUDIT);
+        quoteResultsVo.setQuoteStatusEnum(InsOrderStatusEnum.WAIT_AUDIT);
         quoteResultsVo.setScoreVo(buildScoreVo(yangGuangAccuracyCalculateResponse.getDiscount()));
         return quoteResultsVo;
     }
@@ -57,7 +57,7 @@ public final class YangGuangApiQuoteResultsVoBuild {
         quoteResultsVo.setCompanyOrderNo(yangGuangAccuracyCalculateResponse.getInfotransNo());
         // 报价失败提示
         quoteResultsVo.setErrorMessage(yangGuangAccuracyCalculateResponse.getErrorMessage());
-        quoteResultsVo.setQuoteStatus(InsOrderStatusEnum.QUOTE_FAIL);
+        quoteResultsVo.setQuoteStatusEnum(InsOrderStatusEnum.QUOTE_FAIL);
         return quoteResultsVo;
     }
 
@@ -86,14 +86,14 @@ public final class YangGuangApiQuoteResultsVoBuild {
     }
 
     private static void buildPremium(QuoteResultsVo quoteResultsVo, YangGuangAccuracyCalculateResponse yangGuangAccuracyCalculateResponse) {
-        quoteResultsVo.setCiPremium(yangGuangAccuracyCalculateResponse.getCiSumPremium());
-        quoteResultsVo.setBiPremium(yangGuangAccuracyCalculateResponse.getBiSumPremium());
-        quoteResultsVo.setVvTax(yangGuangAccuracyCalculateResponse.getSumPayTax());
+        quoteResultsVo.getCosts().setCiPremium(yangGuangAccuracyCalculateResponse.getCiSumPremium());
+        quoteResultsVo.getCosts().setBiPremium(yangGuangAccuracyCalculateResponse.getBiSumPremium());
+        quoteResultsVo.getCosts().setVvTax(yangGuangAccuracyCalculateResponse.getSumPayTax());
         // 驾意险
         List<YangGuangAccuracyCalculateResponse.PtptNonVehicleProductInformationList> notCarList = yangGuangAccuracyCalculateResponse.getPtptNonVehicleProductInformationList();
         //驾意险价格
         BigDecimal bigDecimal = YangGuangAccuracyCalculateResponse.PtptNonVehicleProductInformationList.sumPremium(notCarList);
-        quoteResultsVo.setNiPremium(bigDecimal.toString());
+        quoteResultsVo.getCosts().setNiPremium(bigDecimal.toString());
     }
 
     /**

+ 2 - 1
tenant/insurance/quotation-yangguang/src/main/java/com/jzg/quotation/yangguang/api/service/impl/YangGuangApiRequestImpl.java

@@ -228,7 +228,7 @@ public class YangGuangApiRequestImpl implements YangGuangApiRequest {
 
 
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) throws JsonProcessingException {
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) throws JsonProcessingException {
         OrderBase orderBase = orderStatusVo.getOrder();
         InsOrders insOrders = orderStatusVo.getInsOrders();
         InsOrdersPolicy insOrdersPolicy = orderStatusVo.getInsOrdersPolicy();
@@ -278,6 +278,7 @@ public class YangGuangApiRequestImpl implements YangGuangApiRequest {
                 insOrdersPolicy.setSyPolicyNo(syPolicyNo);
             }
         }
+        return null;
     }
 
 }

+ 29 - 0
tenant/insurance/quotation-yongcheng/src/main/java/com/jzg/quotation/yongcheng/api/entity/request/AuditRequest.java

@@ -105,6 +105,31 @@ public class AuditRequest {
         @JacksonXmlProperty(localName = "cScsyxz")
         private String cScsyxz;
 
+        /**
+         * 销售人员
+         */
+        @JsonProperty("cPintubeName")
+        @JacksonXmlProperty(localName = "cPintubeName")
+        private String cPintubeName;
+
+        /**
+         * 销售人员执业证号
+         */
+        @JsonProperty("cPintubeLicenceNo")
+        @JacksonXmlProperty(localName = "cPintubeLicenceNo")
+        private String cPintubeLicenceNo;
+
+
+        @JsonProperty("cPintubeTel")
+        @JacksonXmlProperty(localName = "cPintubeTel")
+        private String cPintubeTel;
+
+
+
+        @JsonProperty("maintenanceStaffCode")
+        @JacksonXmlProperty(localName = "maintenanceStaffCode")
+        private String maintenanceStaffCode;
+
 
         /**
          * 商业险产品号
@@ -373,6 +398,10 @@ public class AuditRequest {
         condition.setNgo("");
         condition.setTResvTm("");
         condition.setCScsyxz("");
+        condition.setCPintubeName("测试");
+        condition.setCPintubeLicenceNo("110");
+        condition.setCPintubeTel("110");
+        condition.setMaintenanceStaffCode("110");
         //<condition>
 
         Condition.Customer customer = new Condition.Customer();

+ 2 - 1
tenant/insurance/quotation-yongcheng/src/main/java/com/jzg/quotation/yongcheng/api/entity/request/QuoteRequest.java

@@ -340,7 +340,8 @@ public class QuoteRequest {
                 base.setCSlsCde(ycConfigureParameters.getSalesmanNo());
                 base.setOperatorCode(ycConfigureParameters.getOperatorCode());
                 base.setTIssueTm(DateUtil.getDateFormat(new Date(), "yyyy-MM-dd"));
-                base.setCChaType("191010");
+                base.setCChaType(ycConfigureParameters.getCChaType());
+
 
 
                 base.setCProdNoSY("");

+ 35 - 44
tenant/insurance/quotation-yongcheng/src/main/java/com/jzg/quotation/yongcheng/api/service/impl/YongChengApiRequestImpl.java

@@ -200,6 +200,8 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
                     //人工核保
                     underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.STAFF_PROCESS);
                     underwritingResultsVo.setUnderwritingResult("人工处理");
+                    underwritingResultsVo.setJqPolicyno(auditResponse.getPolicyAppNoJQ());
+                    underwritingResultsVo.setSyPolicyno(auditResponse.getPolicyAppNoSY());
                 } else if ("3".equals(statusJq) || "3".equals(statusSy)) {
                     //核保退回
                     underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.AUDIT_FAIL);
@@ -221,6 +223,8 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
                     PaymentLinkResultsVo paymentLinkResultsVo = getPaymentLink(paymentLinkVo);
                     underwritingResultsVo.setPaymentLink(paymentLinkResultsVo.getPaymentLink());
                     underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.PAY_PENDING);
+                    underwritingResultsVo.setJqPolicyno(auditResponse.getPolicyAppNoJQ());
+                    underwritingResultsVo.setSyPolicyno(auditResponse.getPolicyAppNoSY());
                 }
                 underwritingResultsVo.setCompanyOrderNo(auditResponse.getOrderCode());
             } else {
@@ -350,8 +354,8 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
     }
 
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) {
-
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {
+        OrderStatusResultVo orderStatusResultVo = new OrderStatusResultVo();
         YcApiConfigurationProperties configurationProperties = ConfigureParametersConversion.conversionEntity(YcApiConfigurationProperties.class, orderStatusVo.getOrder().getAttributionInformationVo().getConfigInfo());
         //0 支付回调 1核保回调 5直接返回字符串信息
         String type = "5";
@@ -360,56 +364,42 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
             String cleanStr = ycRequestApiComponents.payCallback(callbackRequest);
             CallBackResponse response = CallBackResponse.buildCallBackParam(cleanStr);
             if (response.getResult().equals("0")) {
+                // 刷新支付连接
+                PaymentLinkVo paymentLinkVo = new PaymentLinkVo();
+                paymentLinkVo.setOrder(orderStatusVo.getOrder());
+                PaymentLinkResultsVo paymentLink = getPaymentLink(paymentLinkVo);
+                String paymentLinkResult = paymentLink.getPaymentLink();
+                orderStatusResultVo.setOrderStatus(InsOrderStatusEnum.PAY_PENDING);
+                orderStatusResultVo.setPaymentLink(paymentLinkResult);
+                if (StringUtils.isNotEmpty(response.getBizPolicyNo())) {
+                    orderStatusResultVo.setSyPolicyno(response.getBizPolicyNo());
+                }
 
-//                if (orderStatusVo.getInsorders().getOrderStatus().equals(InsOrderStatusEnum.WAIT_PAY.getCode())) {
-//                    buildCallBackStatus(iac, param.getJqstatus());
-//                    if (StringUtils.isNotEmpty(param.getBizPolicyNo())) {
-//                        iac.setSypolicyno(param.getBizPolicyNo());
-//                    }
-//
-//                    if (StringUtils.isNotEmpty(param.getCiPolicyNo())) {
-//                        iac.setJqpolicyno(param.getCiPolicyNo());
-//                    }
-//
-//                    if (StringUtils.isNotEmpty(param.getYwPolicyAppNo())) {
-//                        DrivingInsuranceDto drivingInsuranceDto = new DrivingInsuranceDto();
-//                        drivingInsuranceDto.setPolicyNumber(param.getYwPolicyNo());
-//                        drivingInsuranceDto.setApplicationNumber(param.getYwPolicyAppNo());
-//                        JSONArray objects = JSON.parseArray(JSON.toJSONString(Collections.singletonList(drivingInsuranceDto)));
-//                        iac.setCrossInsurance(objects);
-//                    }
-//
-//                    if (StringUtils.isNotEmpty(param.getPay_date()) && !"null".equals(param.getPay_date())) {
-//                        iac.setPayDate(LocalDateTime.parse(param.getPay_date(), DateTimeFormatter.ofPattern("yyyy-MM" + "-dd HH:mm:ss")));
-//                    }
-//
-//                } else {
-//                    iac = buildCallBack(iac, param);
-//                }
-//
-//                if (iac.getOrderstatus().equals(InsOrderStatusEnum.TO_BACK.getCode())) {
-//                    iac.setAuditopinion("交强审核意见:" + param.getJqmessage() + "| 商业审核意见:" + param.getSymessage());
-//                }
-//                //  add  by  hxl  添加自动更新状态
-//                insSubOrderUpdateDetailService.insertData(iac,oldStatus,iac.getOrderstatus(),"1");
-//                insAreaCompanyService.updateCompanyAndOrdersMessage(iac, iac.getAuditopinion());
+                if (StringUtils.isNotEmpty(response.getCiPolicyNo())) {
+                    orderStatusResultVo.setJqPolicyno(response.getCiPolicyNo());
+                }
 
+                if (StringUtils.isNotEmpty(response.getYwPolicyAppNo())) {
+                    orderStatusResultVo.setJyPolicyno(response.getYwPolicyNo());
+                    orderStatusResultVo.setJyApplyNo(response.getYwPolicyAppNo());
+                }
             } else {
                 //失败原因
-//                return HttpResult.error(response.getMessage());
+                orderStatusResultVo.setOrderStatus(InsOrderStatusEnum.AUDIT_FAIL);
+                orderStatusResultVo.setErrorMsg(response.getMessage());
             }
 //            return HttpResult.ok("操作成功,状态已更新。");
         } catch (JsonProcessingException jsonProcessingException) {
             jsonProcessingException.printStackTrace();
         }
-
+        return orderStatusResultVo;
     }
 
     public static QuoteResultsVo buildQuoteRespVo(String ordersNo, QuoteResponse rd, QuoteVo quoteVo) {
         QuoteResultsVo quoteRespVo = new QuoteResultsVo();
         quoteRespVo.setCiRiskInfoVo(quoteVo.getCiRiskInfoVo());
         quoteRespVo.setBiRiskInfoVo(quoteVo.getBiRiskInfoVo());
-        quoteRespVo.setQuoteStatus(InsOrderStatusEnum.WAIT_AUDIT);
+        quoteRespVo.setQuoteStatusEnum(InsOrderStatusEnum.WAIT_AUDIT);
 
         if (!"000000".equals(rd.getHead().getErrorCode())) {
             //保存报价失败的子订单
@@ -418,7 +408,7 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
             if (StringUtils.isNotEmpty(errorInfo)) {
                 rd.getHead().setErrorMessage(errorInfo.toString());
             }
-            quoteRespVo.setQuoteStatus(InsOrderStatusEnum.QUOTE_FAIL);
+            quoteRespVo.setQuoteStatusEnum(InsOrderStatusEnum.QUOTE_FAIL);
             quoteRespVo.setErrorMessage(rd.getHead().getErrorMessage());
             return quoteRespVo;
         }
@@ -464,10 +454,11 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
 
         quoteRespVo.getScoreVo().setScore(rd.getBase().getCWeRisk());//评分
         quoteRespVo.setOrdersNo(ordersNo); //订单号
-        quoteRespVo.setCiPremium(String.valueOf(jqPremium));
-        quoteRespVo.setBiPremium(String.valueOf(syPremium));
-        quoteRespVo.setNiPremium(String.valueOf(jyPremium));
-        quoteRespVo.setVvTax(BigDecimal.valueOf(sumTax).toString());//车船税
+        quoteRespVo.getCosts().setCiPremium(String.valueOf(jqPremium));
+        quoteRespVo.getCosts().setBiPremium(String.valueOf(syPremium));
+        quoteRespVo.getCosts().setNiPremium(String.valueOf(jyPremium));
+        quoteRespVo.getCosts().setVvTax(String.valueOf(sumTax));
+        quoteRespVo.getCosts().setSumPremium(String.valueOf(jqPremium + syPremium + jyPremium + sumTax));
 
         //起保日期
         quoteRespVo.setCiStartDate(rd.getBase().getTInsrncBgnTmJQ());
@@ -478,10 +469,10 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
 
         // 交强出险次数
         String ciClaims = Optional.ofNullable(rd.getBase()).map(QuoteResponse.BaseResponse::getAccidentNum).orElse(null);
-        quoteRespVo.setCiClaims(ciClaims);
+        quoteRespVo.getScoreVo().setCiClaims(ciClaims);
         // 商业出险次数
         String biClaims = Optional.ofNullable(rd.getPrmCoef()).map(QuoteResponse.PrmCoefResponse::getNClaimTimes).orElse(null);
-        quoteRespVo.setBiClaims(biClaims);
+        quoteRespVo.getScoreVo().setBiClaims(biClaims);
 
         //光博分
         quoteRespVo.getScoreVo().setScore(rd.getBase().getCWeRisk());

+ 2 - 2
tenant/insurance/quotation-zhongan/src/main/java/com/jzg/quotation/zhongan/crawler/service/ZhongAnQuotaionApiBaseServiceImpl.java

@@ -147,7 +147,7 @@ public class ZhongAnQuotaionApiBaseServiceImpl implements QuotationApiBaseServic
     }
 
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) {
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {
         String token = null;
 
         String policyId = null;
@@ -164,7 +164,7 @@ public class ZhongAnQuotaionApiBaseServiceImpl implements QuotationApiBaseServic
         // PAYMENTED_POLICY_INSURE 支付完成状态
         String policyStatus = vehiclePolicyDTO.getPolicyStatus();
         String policyStatusText = vehiclePolicyDTO.getPolicyStatusText();
-
+        return null;
 
     }
 }

+ 4 - 4
tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/api/build/ZmApiQuoteResultsVoBuild.java

@@ -80,16 +80,16 @@ public class ZmApiQuoteResultsVoBuild {
      */
     private static void buildPremium(QuoteResultsVo quoteResultsVo, QuotedPriceResponse quotedPriceResponse) {
         // 设置商业险保费
-        quoteResultsVo.setBiPremium(String.valueOf(quotedPriceResponse.getBizPremium().getSumPremium()));
+        quoteResultsVo.getCosts().setBiPremium(String.valueOf(quotedPriceResponse.getBizPremium().getSumPremium()));
         // 设置交强险保费
-        quoteResultsVo.setCiPremium(String.valueOf(quotedPriceResponse.getForcePrimium().getPremium()));
+        quoteResultsVo.getCosts().setCiPremium(String.valueOf(quotedPriceResponse.getForcePrimium().getPremium()));
         // 设置车船税
-        quoteResultsVo.setVvTax(String.valueOf(quotedPriceResponse.getTaxinfo().getSumPayTax()));
+        quoteResultsVo.getCosts().setVvTax(String.valueOf(quotedPriceResponse.getTaxinfo().getSumPayTax()));
         // 设置非车险(驾意险)保费
         List<QuotedPriceResponse.AccidentPrimium> accidentPremiums = quotedPriceResponse.getAccidentPremium();
         if (accidentPremiums != null && !accidentPremiums.isEmpty()) {
             double niPremium = accidentPremiums.stream().mapToDouble(QuotedPriceResponse.AccidentPrimium::getSumPremium).sum();
-            quoteResultsVo.setNiPremium(String.valueOf(niPremium));
+            quoteResultsVo.getCosts().setNiPremium(String.valueOf(niPremium));
         }
     }
 }

+ 2 - 1
tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/api/service/impl/ZhongMeiApiRequestImpl.java

@@ -170,7 +170,8 @@ public class ZhongMeiApiRequestImpl implements ZhongMeiApiRequest {
 
 
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) {
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {
+        return null;
     }
 
 }

+ 4 - 4
tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/crawler/build/ZmCrawlerQuoteResultVoBuild.java

@@ -91,12 +91,12 @@ public final class ZmCrawlerQuoteResultVoBuild {
         contractDTOList.forEach(contract -> {
             ZmCrawlerQuotedPriceResponse.BussinessMainDTO.ContractDTO.ContractMainDTO contractMain = contract.getContractMain();
             if (!contractMain.getRiskCode().equals(ProductsType.PT_0330.getCode())) {//设置商业险数据
-                quoteResultsVo.setBiPremium(String.valueOf(contractMain.getTotalPremium()));
+                quoteResultsVo.getCosts().setBiPremium(String.valueOf(contractMain.getTotalPremium()));
                 quoteResultsVo.setBiPolicyNumber(contractMain.getContractNo());
             } else {//设置交强险数据
-                quoteResultsVo.setCiPremium(String.valueOf(contractMain.getTotalPremium()));
+                quoteResultsVo.getCosts().setCiPremium(String.valueOf(contractMain.getTotalPremium()));
                 quoteResultsVo.setCiPolicyNumber(contractMain.getContractNo());
-                quoteResultsVo.setVvTax(String.valueOf(contract.getTax().getSumTax()));
+                quoteResultsVo.getCosts().setVvTax(String.valueOf(contract.getTax().getSumTax()));
             }
         });
         //设置非车保费
@@ -106,7 +106,7 @@ public final class ZmCrawlerQuoteResultVoBuild {
             accidentDTOList.forEach(accident -> {
                 niPremium.updateAndGet(v -> v + accident.getSumPremium());
             });
-            quoteResultsVo.setNiPremium(String.valueOf(niPremium));
+            quoteResultsVo.getCosts().setNiPremium(String.valueOf(niPremium));
         }
     }
 

+ 2 - 1
tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/crawler/service/Impl/ZhongMeiCrawlerRequestImpl.java

@@ -244,7 +244,7 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
      * @param orderStatusVo
      */
     @Override
-    public void queryOrderState(OrderStatusVo orderStatusVo) {
+    public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {
         OrderBase orderBase = orderStatusVo.getOrder();
         AttributionInformationVo attributionInformationVo = orderBase.getAttributionInformationVo();
         String authorization = zmCrawlerRequestComponent.getAuthorization(attributionInformationVo.getUsername());
@@ -256,5 +256,6 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
         orderStatusRequest.setHead(requestHead);
 
         ZmCrawlerOrderStatusResponse zmCrawlerOrderStatusResponse = zmCrawlerRequestComponent.orderStatusQuery(orderStatusRequest);
+        return null;
     }
 }

+ 0 - 4
tenant/organization/src/main/java/com/jzg/organization/client/CostsRuleClient.java

@@ -1,14 +1,10 @@
 package com.jzg.organization.client;
 
 import com.jzg.commons.core.page.HttpResult;
-import com.jzg.commons.entity.po.EsmInsCompany;
 import com.jzg.costsorrule.model.ValidateSchemeRuleVo;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestParam;
-
-import java.util.List;
 
 @FeignClient(name="jzg-costsorrule",url = "http://localhost:8001/")
 public interface CostsRuleClient {