Explorar el Código

1、新用户注册可登录系统。
2、解决永诚过户车无法报价问题。

ligang134 hace 3 años
padre
commit
3a7d1ca63d

+ 4 - 4
src/main/java/com/ydtech/modules/admin/model/SysUser.java

@@ -162,10 +162,10 @@ public class SysUser extends BaseEntity {
         if (user.getStatus() == 0) {
             throw new SystemException("账号已被锁定,请联系管理员");
         }
-        // 新注册用户需要审核
-        if (user.getStatus() == 2) {
-            throw new SystemException("新注册用户需要审核,请联系管理员");
-        }
+//        // 新注册用户需要审核
+//        if (user.getStatus() == 2) {
+//            throw new SystemException("新注册用户需要审核,请联系管理员");
+//        }
         // 新注册用户审核不通过
         if (user.getStatus() == 3) {
             throw new SystemException("新注册用户审核不通过,请联系管理员");

+ 3 - 1
src/main/java/com/ydtech/modules/ins/model/yc/YcBuildData.java

@@ -221,7 +221,9 @@ public class YcBuildData {
         quoteRespVo.setCiSumPermium(jqPremium + sumTax);//交强险和车船税合计
         quoteRespVo.setSumPermium(sumPermium + sumTax);//保费合计
         quoteRespVo.setTaxAmount(sumTax);//车船税
-        quoteRespVo.setTotalAdjustRate(StringUtils.toDouble(rd.getPrmCoef().getNTotDisc()));
+        if(null != rd.getPrmCoef()){
+            quoteRespVo.setTotalAdjustRate(StringUtils.toDouble(rd.getPrmCoef().getNTotDisc()));
+        }
         quoteRespVo.setILogPreUdwMess(rd.getBase().getCWeRisk());//评分
         quoteRespVo.setOrderno(insOrder.getOrderno()); //订单号
         quoteRespVo.setJqPremium(jqPremium);

+ 15 - 3
src/main/java/com/ydtech/modules/ins/model/yc/ruote/Base.java

@@ -2,6 +2,7 @@ package com.ydtech.modules.ins.model.yc.ruote;
 
 import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
 import com.ydtech.components.InsAlltrustRequestApiComponents;
+import com.ydtech.modules.ins.model.vo.CustomerInfoVo;
 import com.ydtech.modules.ins.model.ya.YaQuoteInfoVo;
 import com.ydtech.modules.ins.model.vo.RiskInfoVo;
 import com.ydtech.modules.ins.model.yc.YcConfigureParameters;
@@ -270,6 +271,13 @@ public class Base {
     @JacksonXmlProperty(localName = "AppSYFlag")
     private String AppSYFlag;
 
+    /**
+     * 是否投保意外
+     * Y:是  N:否
+     */
+    @JacksonXmlProperty(localName = "AppYWFlag")
+    private String AppYWFlag;
+
     //    /**
 //     *  业务来源
 //     *  代理:19002,,直销:19008
@@ -278,7 +286,7 @@ public class Base {
     private String CBsnsTyp;
 
 
-    public static Base buildBase(YaQuoteInfoVo yaQuoteInfoVo, YcConfigureParameters ycConfigureParameters) {
+    public static Base buildBase(CustomerInfoVo policyHolderInfo, CustomerInfoVo insuredPersonInfo,List<RiskInfoVo> riskList, YcConfigureParameters ycConfigureParameters) {
 //    public static Base buildBase(YaQuoteInfoVo yaQuoteInfoVo, InsAlltrustRequestApiComponents apiComponents) {
 //    public static Base buildBase(YaQuoteInfoVo yaQuoteInfoVo,Agent agent) {
         Base base = new Base();
@@ -302,7 +310,7 @@ public class Base {
         base.setRenewalFlagSY("0");
         base.setOperateDate(DateUtil.getDateFormat(new Date(), DateUtil.FULL_TIME_SPLIT_PATTERN));
         base.setCBsnsTyp("19002");
-        base.setInsuredName(yaQuoteInfoVo.getInsuredPersonInfo().getName());
+        base.setInsuredName(insuredPersonInfo.getName());
         base.setTaxFlag("1");
         base.setRenewalFlagJQ("0");
         base.setRenewalFlagSY("0");
@@ -317,7 +325,11 @@ public class Base {
         base.setAppSYFlag("N");
         base.setCAppJqFlag("N");
 
-        List<RiskInfoVo> riskList = yaQuoteInfoVo.getRiskList();
+        base.setAppName(policyHolderInfo.getName());
+        base.setCustomerName(policyHolderInfo.getName());
+        base.setAppContact(policyHolderInfo.getName());
+        base.setAppYWFlag("N");
+
         riskList.stream().forEach(a -> {
 
             String endDateStr = DateTimeUtil.parseLocalDateToString(a.getEndDate(), DateTimeUtil.DATETIME_PATTERN);

+ 4 - 3
src/main/java/com/ydtech/modules/ins/model/yc/ruote/Ruote.java

@@ -4,6 +4,7 @@ import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
 import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
 import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement;
 import com.ydtech.components.InsAlltrustRequestApiComponents;
+import com.ydtech.modules.ins.model.vo.RiskInfoVo;
 import com.ydtech.modules.ins.model.ya.YaQuoteInfoVo;
 import com.ydtech.modules.ins.model.yc.AuthorityDataXml;
 import com.ydtech.modules.ins.model.yc.YcBuildData;
@@ -172,7 +173,7 @@ public class Ruote {
 
         CarInfoVo carInfo = yaQuoteInfoVo.getCarInfo();
 
-
+        List<RiskInfoVo> riskList = yaQuoteInfoVo.getRiskList();
 
 
 
@@ -180,14 +181,14 @@ public class Ruote {
         /**
          * 基本信息 base
          */
-        Base base = Base.buildBase(yaQuoteInfoVo, ycConfigureParameters);
+        Base base = Base.buildBase(policyHolderInfo,insuredPersonInfo,riskList, ycConfigureParameters);
         condition.setBase(base);
 
         /**
          * 车辆信息
          * 代码:vhl
          */
-        Vhl vhl = Vhl.buildVhl(yaQuoteInfoVo);
+        Vhl vhl = Vhl.buildVhl(carInfo,ownerInfo);
         String startTime = StringUtils.isNotEmpty(base.getTInsrncBgnTmJQ()) ? base.getTInsrncBgnTmJQ() : base.getTInsrncBgnTmSY();
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd");

+ 23 - 18
src/main/java/com/ydtech/modules/ins/model/yc/ruote/Vhl.java

@@ -139,6 +139,8 @@ public class Vhl {
 //    private String TTransferTm;
     /**
      * 是否外地车
+     *
+     * 本地0,省内异地1,省外异地2
      */
     @JacksonXmlProperty(localName = "CEcdemicMrk")
     private String CEcdemicMrk;
@@ -268,11 +270,11 @@ public class Vhl {
 //     */
 //    @JacksonXmlProperty(localName = "CInvoDate")
 //    private String CInvoDate;
-//    /**
-//     * 发证日期
-//     */
-//    @JacksonXmlProperty(localName = "TResvTm3")
-//    private String TResvTm3;
+    /**
+     * 发证日期
+     */
+    @JacksonXmlProperty(localName = "TResvTm3")
+    private String TResvTm3;
     /**
      * 转保校验码-商业
      */
@@ -288,11 +290,12 @@ public class Vhl {
      */
     @JacksonXmlProperty(localName = "NDefDisplacement")
     private String NDefDisplacement;
-//    /**
-//     * 特殊申明原因
-//     */
-//    @JacksonXmlProperty(localName = "SpecialDeclareReason")
-//    private String SpecialDeclareReason;
+    /**
+     * 特殊申明原因
+     * 默认为空,过户传,目前核心支持枚举(33901/33903/33904/33908/33909)
+     */
+    @JacksonXmlProperty(localName = "SpecialDeclareReason")
+    private String SpecialDeclareReason;
     /**
      * 能源类型
      */
@@ -328,14 +331,14 @@ public class Vhl {
     /**
      * @description: 车辆信息
      */
-    public static Vhl buildVhl(YaQuoteInfoVo yaQuoteInfoVo) {
+    public static Vhl buildVhl(CarInfoVo carInfo,CustomerInfoVo ownerInfo) {
 
         Vhl vhl = new Vhl();
-        //3 车辆信息
-        CarInfoVo carInfo = yaQuoteInfoVo.getCarInfo();
-
-        //2.2车主
-        CustomerInfoVo ownerInfo = yaQuoteInfoVo.getOwnerInfo();
+//        //3 车辆信息
+//        CarInfoVo carInfo = yaQuoteInfoVo.getCarInfo();
+//
+//        //2.2车主
+//        CustomerInfoVo ownerInfo = yaQuoteInfoVo.getOwnerInfo();
 
 
         vhl.setCPlateModelCde(carInfo.getCiModelCode());
@@ -354,13 +357,15 @@ public class Vhl {
 
         //玻璃类型 303011001	国产   303011002	进口
         vhl.setCGlassTyp("303011001");
-        vhl.setCEcdemicMrk("0");
+        vhl.setCEcdemicMrk("1");
 
         //过户
         if (carInfo.isTransferFlag() == true) {
             //必传。过户车传1;非过户车传0
             vhl.setCChgOwnerFlag("1");
             vhl.setTTransferDate(carInfo.getTransferDate());
+            vhl.setTResvTm3(carInfo.getTransferDate());
+            vhl.setSpecialDeclareReason("33908");
         } else {
             vhl.setCChgOwnerFlag("0");
 
@@ -380,7 +385,7 @@ public class Vhl {
         vhl.setNPureRange("0.0");
         vhl.setCDisplacementLvl(StringUtils.toInt(carInfo.getPowerScale()) + "");
 //        vhl.setCDisplacementLvl("67");
-        vhl.setCFstRegYm(carInfo.getIssueDate());
+        vhl.setCFstRegYm(carInfo.getRegisterDate());
         vhl.setNNewPriceValue(carInfo.getPurchasePrice());
 
 

+ 3 - 0
src/main/java/com/ydtech/modules/ins/scheduler/InsOrderScheduler.java

@@ -50,8 +50,11 @@ public class InsOrderScheduler {
      * 每隔300秒执行
      * fixedRate / 1000  = 秒
      *
+     * #:0 0/5 8 * * ? 每天8点到8:55期间的每5分钟触发
+     *
      */
     @Scheduled(fixedRate = 300000)
+//    @Scheduled(cron = "0 0/5 8 * * ?")
     public void alltrustCallbackTask() {
 //        logger.info("【定时任务执行 - 永城 - 补传回调】开始时间:" + dateFormat.format(new Date()) + "");