فهرست منبع

1. 永诚修改地区后台处理
2. 订单状态枚举类切换统一使用系统字典。
3.

ligang134 2 سال پیش
والد
کامیت
abaf1399b1
21فایلهای تغییر یافته به همراه375 افزوده شده و 290 حذف شده
  1. 16 0
      README.md
  2. 20 21
      src/main/java/com/ydtech/components/InsTaskHistoryComponents.java
  3. 0 1
      src/main/java/com/ydtech/components/scheduler/SchedulerTask.java
  4. 58 58
      src/main/java/com/ydtech/constants/enums/InsOrderStatus.java
  5. 14 0
      src/main/java/com/ydtech/constants/enums/dict/InsOrderStatusEnum.java
  6. 26 21
      src/main/java/com/ydtech/modules/ins/controller/InsAlltrustApiController.java
  7. 1 1
      src/main/java/com/ydtech/modules/ins/model/yc/ruote/Base.java
  8. 19 19
      src/main/java/com/ydtech/modules/ins/scheduler/InsOrderScheduler.java
  9. 7 7
      src/main/java/com/ydtech/modules/ins/service/InsAlltrustApiService.java
  10. 144 111
      src/main/java/com/ydtech/modules/ins/service/impl/InsAlltrustApiServiceImpl.java
  11. 5 5
      src/main/java/com/ydtech/modules/ins/service/impl/InsTaskHistoryServiceImpl.java
  12. 2 2
      src/main/java/com/ydtech/modules/order/entity/InsAreaCompany.java
  13. 3 3
      src/main/java/com/ydtech/modules/order/entity/InsOrders.java
  14. 3 3
      src/main/java/com/ydtech/modules/order/service/impl/InsCrawlerOrderServiceImpl.java
  15. 3 3
      src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java
  16. 5 5
      src/main/java/com/ydtech/modules/order/service/impl/YongAnOrderServiceImpl.java
  17. 13 13
      src/main/java/com/ydtech/modules/order/service/impl/ZhongMeiOrderApiServiceImpl.java
  18. 7 7
      src/main/java/com/ydtech/modules/order/service/impl/ZhongMeiOrderServiceImpl.java
  19. 5 6
      src/main/java/com/ydtech/modules/order/service/impl/ZijinOrderApiServiceImpl.java
  20. 20 0
      src/main/java/com/ydtech/utils/IPUtil.java
  21. 4 4
      src/main/resources/logback-spring.xml

+ 16 - 0
README.md

@@ -217,6 +217,22 @@
 
 
 
+**《掌柜鼎PC平台》临时更新公告**
+
+* 版本号:v0.0.4.3
+* 访问地址:http://sxzgkj.baoxianzhanggui.com/
+* 需求bug收集表:https://kdocs.cn/l/cloAn4eaINVw
+* 更新日期:2023-10-09
+* 更新时间:17:00  ~  17:30
+* 更新内容:
+  1. 省市区功能去掉。
+  2. 永诚定时订单刷新任务关闭,启用手动刷新订单状态。
+  3. 中煤电子保单下载跨域问题。
+  4. 部分代码优化。
+
+
+
+
 
 
 --------未发布

+ 20 - 21
src/main/java/com/ydtech/components/InsTaskHistoryComponents.java

@@ -1,7 +1,6 @@
 package com.ydtech.components;
 
 import com.ydtech.constants.InsTaskHistoryEnum;
-import com.ydtech.constants.enums.InsOrderStatus;
 import com.ydtech.modules.ins.model.InsOrder;
 import com.ydtech.modules.ins.model.InsTaskHistory;
 import com.ydtech.modules.ins.service.InsTaskHistoryService;
@@ -39,25 +38,25 @@ public class InsTaskHistoryComponents {
         insTaskHistoryService.insert(history7);
     }
 
-    /**
-     * 修改历史状态
-     *
-     * @param insOrderStatus 订单状态
-     * @param insAreaCompany 子订单
-     * @param insOrder       总订单
-     */
-    public void modifyOrderStatus(InsOrderStatus insOrderStatus, InsAreaCompany insAreaCompany, InsOrders insOrder) {
-        InsTaskHistory history7 = new InsTaskHistory();
-        history7.setId(String.valueOf(new Date().getTime()));
-        history7.setCompany(insAreaCompany.getInscompany());
-        history7.setTaskid(insOrder.getOrderno());
-        history7.setOperatorid(insOrder.getUserid());
-        history7.setOperator(insOrder.getUsername());
-        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        history7.setCreatetime(simpleDateFormat.format(new Date()));
-        history7.setStatus(String.valueOf(insOrderStatus.getCode()));
-        history7.setRemark(insOrderStatus.getDesc());
-        insTaskHistoryService.insert(history7);
-    }
+//    /**
+//     * 修改历史状态
+//     *
+//     * @param insOrderStatus 订单状态
+//     * @param insAreaCompany 子订单
+//     * @param insOrder       总订单
+//     */
+//    public void modifyOrderStatus(InsOrderStatus insOrderStatus, InsAreaCompany insAreaCompany, InsOrders insOrder) {
+//        InsTaskHistory history7 = new InsTaskHistory();
+//        history7.setId(String.valueOf(new Date().getTime()));
+//        history7.setCompany(insAreaCompany.getInscompany());
+//        history7.setTaskid(insOrder.getOrderno());
+//        history7.setOperatorid(insOrder.getUserid());
+//        history7.setOperator(insOrder.getUsername());
+//        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+//        history7.setCreatetime(simpleDateFormat.format(new Date()));
+//        history7.setStatus(String.valueOf(insOrderStatus.getCode()));
+//        history7.setRemark(insOrderStatus.getDesc());
+//        insTaskHistoryService.insert(history7);
+//    }
 
 }

+ 0 - 1
src/main/java/com/ydtech/components/scheduler/SchedulerTask.java

@@ -1,6 +1,5 @@
 package com.ydtech.components.scheduler;
 
-import com.ydtech.constants.enums.InsOrderStatus;
 import com.ydtech.modules.order.entity.InsAreaCompany;
 import com.ydtech.modules.order.service.InsAreaCompanyService;
 import com.ydtech.modules.order.service.ZhongMeiOrderService;

+ 58 - 58
src/main/java/com/ydtech/constants/enums/InsOrderStatus.java

@@ -1,58 +1,58 @@
-package com.ydtech.constants.enums;
-
-import com.ydtech.modules.ins.model.yc.audit.response.AuditResponse;
-import com.ydtech.modules.order.entity.InsAreaCompany;
-import lombok.AllArgsConstructor;
-import lombok.Getter;
-
-import java.util.Objects;
-
-
-/**
- * 保险  订单状态
- *
- * @author: lig
- * @date: 2023-02-16
- */
-@Getter
-@AllArgsConstructor
-public enum InsOrderStatus {
-
-    //所有未提交核保的均为报价中(包括拒保订单 )
-    S_0("0", "报价中"),
-
-    //已提交核保,并转人工核保状态
-    S_1("1", "待核保"),
-
-    //自动核保或者人工核保审核通过
-    S_2("2", "已核保待缴费"),
-
-    //客户缴费完成生成保单状态
-    S_3("3", "已承保"),
-
-    //人工核保退回状态,直至再次提交核保,状态修改为待核保
-    S_4("4", "核保退回"),
-
-
-    ;
-
-    public static InsOrderStatus matchKey(String key) {
-        InsOrderStatus result = null;
-        for (InsOrderStatus e : values()) {
-            if (Objects.equals(e.getCode(), key)) {
-                result = e;
-                break;
-            }
-        }
-        return result;
-    }
-
-
-    @Getter
-    private final String code;
-
-    @Getter
-    private final String desc;
-
-
-}
+//package com.ydtech.constants.enums;
+//
+//import com.ydtech.modules.ins.model.yc.audit.response.AuditResponse;
+//import com.ydtech.modules.order.entity.InsAreaCompany;
+//import lombok.AllArgsConstructor;
+//import lombok.Getter;
+//
+//import java.util.Objects;
+//
+//
+///**
+// * 保险  订单状态
+// *
+// * @author: lig
+// * @date: 2023-02-16
+// */
+//@Getter
+//@AllArgsConstructor
+//public enum InsOrderStatus {
+//
+//    //所有未提交核保的均为报价中(包括拒保订单 )
+//    S_0("0", "报价中"),
+//
+//    //已提交核保,并转人工核保状态
+//    S_1("1", "待核保"),
+//
+//    //自动核保或者人工核保审核通过
+//    S_2("2", "已核保待缴费"),
+//
+//    //客户缴费完成生成保单状态
+//    S_3("3", "已承保"),
+//
+//    //人工核保退回状态,直至再次提交核保,状态修改为待核保
+//    S_4("4", "核保退回"),
+//
+//
+//    ;
+//
+//    public static InsOrderStatus matchKey(String key) {
+//        InsOrderStatus result = null;
+//        for (InsOrderStatus e : values()) {
+//            if (Objects.equals(e.getCode(), key)) {
+//                result = e;
+//                break;
+//            }
+//        }
+//        return result;
+//    }
+//
+//
+//    @Getter
+//    private final String code;
+//
+//    @Getter
+//    private final String desc;
+//
+//
+//}

+ 14 - 0
src/main/java/com/ydtech/constants/enums/dict/InsOrderStatusEnum.java

@@ -4,6 +4,8 @@ import com.ydtech.aop.request.DictEnum;
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 
+import java.util.Objects;
+
 
 @Getter
 @AllArgsConstructor
@@ -36,4 +38,16 @@ public enum InsOrderStatusEnum implements IBaseEnum {
     private Integer status;
 
 
+    public static InsOrderStatusEnum matchKey(String key) {
+        InsOrderStatusEnum result = null;
+        for (InsOrderStatusEnum e : values()) {
+            if (Objects.equals(e.getCode(), key)) {
+                result = e;
+                break;
+            }
+        }
+        return result;
+    }
+
+
 }

+ 26 - 21
src/main/java/com/ydtech/modules/ins/controller/InsAlltrustApiController.java

@@ -84,12 +84,6 @@ public class InsAlltrustApiController {
     }
 
 
-    @ApiOperation(value = "永诚API方式 - 补传回调及订单信息查询接口")
-    @PostMapping("/callbackAnOrder")
-    public HttpResult callbackAnOrder(@RequestSingleParam(value = "companyId") String companyId) {
-        return insYongchengApiService.callbackAnOrder(companyId);
-    }
-
 
     @ApiOperation(value = "永诚API方式 - 第三方回调通知(支付+承保)")
     @PostMapping(value = "/callBack")
@@ -170,21 +164,21 @@ public class InsAlltrustApiController {
     }
 
 
-//    /**
-//     * 获取地区 通过身份证地址
-//     */
-//    @ApiOperation(value = "永诚API方式 - 身份证地址获取地区")
-//    @PostMapping("/addressGainArea")
-//    public HttpResult syncAccidentInsure(String address) {
-//        Map<String, String> ownerMap = insYongchengApiService.gainRegionCode(address);
-//
-//        if (null == ownerMap) {
-//            throw new SystemException("地区获取失败,请检查参数是否正确。");
-//
-//        }
-//
-//        return HttpResult.ok(ownerMap);
-//    }
+    /**
+     * 获取地区 通过身份证地址
+     */
+    @ApiOperation(value = "永诚API方式 - 身份证地址获取地区")
+    @PostMapping("/addressGainArea")
+    public HttpResult syncAccidentInsure(String address) {
+        Map<String, String> ownerMap = insYongchengApiService.gainRegionCode(address);
+
+        if (null == ownerMap) {
+            throw new SystemException("地区获取失败,请检查参数是否正确。");
+
+        }
+
+        return HttpResult.ok(ownerMap);
+    }
 
     /**
      * 手动补传回调
@@ -198,4 +192,15 @@ public class InsAlltrustApiController {
 
 
 
+    @GetMapping(value = "/orderStatusBySuborderId/{suborderId}")
+    @ApiOperation(value = "永诚API方式 - 手动刷新订单状态 通过子订单ID")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "suborderId", value = "子订单ID", required = true, dataType = "String")
+    })
+    public HttpResult orderStatusBySuborderId(@PathVariable String suborderId) {
+        return insYongchengApiService.callbackAnOrder(suborderId);
+    }
+
+
+
 }

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

@@ -367,7 +367,7 @@ public class Base {
     private boolean isNowToTodayEnd(String dateTime){
         LocalDateTime now = LocalDateTime.now();
         LocalDateTime todayEnd = LocalDateTime.of(LocalDate.now(), LocalTime.MAX);
-        LocalDateTime startDateTime = LocalDateTime.parse(dateTime);
+        LocalDateTime startDateTime = DateTimeUtil.parseLocalDateTime(dateTime,DateTimeUtil.DATETIME_PATTERN);
 
         return startDateTime.isAfter(now) && startDateTime.isBefore(todayEnd);
     }

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

@@ -46,25 +46,25 @@ public class InsOrderScheduler {
 
 
 
-    /**
-     * 永诚定时任务
-     * 补传回调
-     * 每隔300秒执行
-     * fixedRate / 1000  = 秒
-     *
-     * #:0 0/5 7,22 * * ?  7点到22点 每隔5分钟执行
-     *
-     */
-//    @Scheduled(fixedRate = 300000)
-//    @Scheduled(cron = "0 0/5 7,22 * * ? ")
-    @Scheduled(cron = "0 0/5 * * * ?")
-    public void alltrustCallbackTask() {
-//        logger.info("【定时任务执行 - 永城 - 补传回调】开始时间:" + dateFormat.format(new Date()) + "");
-
-        insYongchengApiService.callbackAnOrder();
-
-//        logger.info("【定时任务执行 - 永城 - 补传回调】结束时间:" + dateFormat.format(new Date())+ "" );
-    }
+//    /**
+//     * 永诚定时任务
+//     * 补传回调
+//     * 每隔300秒执行
+//     * fixedRate / 1000  = 秒
+//     *
+//     * #:0 0/5 7,22 * * ?  7点到22点 每隔5分钟执行
+//     *
+//     */
+////    @Scheduled(fixedRate = 300000)
+////    @Scheduled(cron = "0 0/5 7,22 * * ? ")
+//    @Scheduled(cron = "0 0/5 * * * ?")
+//    public void alltrustCallbackTask() {
+////        logger.info("【定时任务执行 - 永城 - 补传回调】开始时间:" + dateFormat.format(new Date()) + "");
+//
+//        insYongchengApiService.callbackAnOrder();
+//
+////        logger.info("【定时任务执行 - 永城 - 补传回调】结束时间:" + dateFormat.format(new Date())+ "" );
+//    }
 
 
     /**

+ 7 - 7
src/main/java/com/ydtech/modules/ins/service/InsAlltrustApiService.java

@@ -99,13 +99,13 @@ public interface InsAlltrustApiService {
     HttpResult getPolicyPrintApi(PolicyPrintVo policyPrintVo);
 
 
-//    /**
-//     * 获取地区编码   通过身份证地址
-//     *
-//     * @author: lig
-//     * @date: 2023年04月12日 0012
-//     */
-//    Map<String, String> gainRegionCode(String address);
+    /**
+     * 获取地区编码   通过身份证地址
+     *
+     * @author: lig
+     * @date: 2023年04月12日 0012
+     */
+    Map<String, String> gainRegionCode(String address);
 
 
 //

+ 144 - 111
src/main/java/com/ydtech/modules/ins/service/impl/InsAlltrustApiServiceImpl.java

@@ -1,6 +1,7 @@
 package com.ydtech.modules.ins.service.impl;
 
 import cn.hutool.core.collection.CollUtil;
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.fasterxml.jackson.annotation.JsonInclude;
@@ -10,9 +11,9 @@ import com.fasterxml.jackson.dataformat.xml.XmlMapper;
 import com.ydtech.components.InsAlltrustRequestApiComponents;
 import com.ydtech.constants.InsTaskHistoryEnum;
 import com.ydtech.constants.SysConstants;
-import com.ydtech.constants.enums.InsOrderStatus;
 import com.ydtech.constants.enums.InsQuoteFlow;
 import com.ydtech.constants.enums.dict.AttachInsureEnum;
+import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
 import com.ydtech.constants.enums.dict.WhetherEnum;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
@@ -71,6 +72,8 @@ import org.springframework.transaction.annotation.Transactional;
 
 import java.io.IOException;
 import java.math.BigDecimal;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
 import java.text.SimpleDateFormat;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
@@ -422,7 +425,7 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
             String ciMsg = tfiWarnData.getWarnMessage();
             requestInfoList.add(ciMsg);
 
-            if(ciMsg.contains("终保日期: 以上为所有结果信息"))return true;
+            if (ciMsg.contains("终保日期: 以上为所有结果信息")) return true;
 
 
             //终保日期
@@ -559,7 +562,7 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
             // 获取协议配置信息
             YcConfigureParameters ycConfigureParameters = gainYcConfigParams(iac.getAgreementId());
 
-//            if (InsOrderStatus.S_5.getCode().equals(iac.getOrderstatus()) || InsOrderStatus.S_4.getCode().equals(iac.getOrderstatus())) {
+//            if (InsOrderStatus.S_5.getCode().equals(iac.getOrderstatus()) || InsOrderStatusEnum.TO_BACK.getCode().equals(iac.getOrderstatus())) {
 //                return HttpResult.ok(InsOrderStatus.matchKey(iac.getOrderstatus()).getDesc());
 //            }
 
@@ -575,25 +578,21 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
             //组装参数
             Audit m = Audit.buildAuditParam(ownerInfo, insureInfo, applyInfo, ycConfigureParameters, iac);
 
-            //构造被保人地区
-            InsAlltrustRegion insureInfoRegion = findRegion(insureInfo);
-            if(null != insureInfoRegion){
-                m.getRequestLabel().getCondition().getCustomer().setCProvince(insureInfoRegion.getProvinceCode());
-                m.getRequestLabel().getCondition().getCustomer().setCCity(insureInfoRegion.getCityCode());
-                m.getRequestLabel().getCondition().getCustomer().setCCounty(insureInfoRegion.getArea());
-            }else{
-                throw new SystemException("永诚 - 被保人地区获取失败,请确认页面是否填写");
-            }
 
-
-//            //处理地区
-//            Map<String, String> insureMap = gainRegionCode(insureInfo.getAddr());
-//            if (null != insureMap && insureMap.size() > 0) {
-//                m.getRequestLabel().getCondition().getCustomer().setCProvince(insureMap.get("provinceCode"));
-//                m.getRequestLabel().getCondition().getCustomer().setCCity(insureMap.get("cityCode"));
-//                m.getRequestLabel().getCondition().getCustomer().setCCounty(insureMap.get("areaCode"));
+            //构造被保人地区
+            //处理地区 车主
+            Map<String, String> insureMap = gainRegionCode(insureInfo.getAddr());
+            m.getRequestLabel().getCondition().getCustomer().setCProvince(insureMap.get("provinceCode"));
+            m.getRequestLabel().getCondition().getCustomer().setCCity(insureMap.get("cityCode"));
+            m.getRequestLabel().getCondition().getCustomer().setCCounty(insureMap.get("areaCode"));
+
+//            InsAlltrustRegion insureInfoRegion = findRegion(insureInfo);
+//            if (null != insureInfoRegion) {
+//                m.getRequestLabel().getCondition().getCustomer().setCProvince(insureInfoRegion.getProvinceCode());
+//                m.getRequestLabel().getCondition().getCustomer().setCCity(insureInfoRegion.getCityCode());
+//                m.getRequestLabel().getCondition().getCustomer().setCCounty(insureInfoRegion.getArea());
 //            } else {
-//                throw new SystemException("永诚 - 被保人地区获取失败,请联系管理员");
+//                throw new SystemException("永诚 - 被保人地区获取失败,请确认页面是否填写");
 //            }
 
 
@@ -613,11 +612,11 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
                 String statusJq = StringUtils.toString(rd.getStatusJq(), "");
                 String statusSy = StringUtils.toString(rd.getStatusSY(), "");
                 if (statusJq.equals("0") || statusSy.equals("0")) {
-                    iac.setOrderstatus(InsOrderStatus.S_1.getCode());
+                    iac.setOrderstatus(InsOrderStatusEnum.WAIT_AUDIT.getCode());
                 } else if (statusJq.equals("3") || statusSy.equals("3")) {
-                    iac.setOrderstatus(InsOrderStatus.S_4.getCode());
+                    iac.setOrderstatus(InsOrderStatusEnum.TO_BACK.getCode());
                 } else {
-                    iac.setOrderstatus(InsOrderStatus.S_2.getCode());
+                    iac.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
                 }
                 if (StringUtils.toInt(order.getOrderstatus()) < StringUtils.toInt(iac.getOrderstatus())) {
                     order.setOrderstatus(iac.getOrderstatus());
@@ -639,16 +638,16 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
             iac.setJqappoint(""); //交强特别约定
             iac.setSyappoint(""); //商业特别约定
 
-            if (InsOrderStatus.S_2.getCode().equals(InsOrderStatus.matchKey(iac.getOrderstatus()).getCode())) {
+            if (InsOrderStatusEnum.WAIT_PAY.getCode().equals(InsOrderStatusEnum.matchKey(iac.getOrderstatus()).getCode())) {
                 //获取缴费地址
                 getPayUrlApi(iac);
             } else {
-                h = HttpResult.error(msg + "状态:" + InsOrderStatus.matchKey(iac.getOrderstatus()).getDesc());
+                h = HttpResult.error(msg + "状态:" + InsOrderStatusEnum.matchKey(iac.getOrderstatus()).getDesc());
             }
             insAreaCompanyService.updateById(iac);
             insOrdersService.updateByOrderStatus(order.getOrderno(), order.getOrderstatus());
 
-//            if (InsOrderStatus.S_2.getCode().equals(InsOrderStatus.matchKey(iac.getOrderstatus()).getCode())) {
+//            if (InsOrderStatusEnum.WAIT_PAY.getCode().equals(InsOrderStatus.matchKey(iac.getOrderstatus()).getCode())) {
 //                return HttpResult.ok(msg);
 //            } else {
 //                return HttpResult.error(msg + "状态:" + InsOrderStatus.matchKey(iac.getOrderstatus()).getDesc());
@@ -756,7 +755,6 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
     @Override
     public HttpResult callbackAnOrder(String quoteOrderNo) {
 //        log.debug("=========永诚API方式 - xml请求 - 补传回调开始======");
-        HttpResult httpResult = new HttpResult();
 
         try {
             InsAreaCompany iac = insAreaCompanyService.getById(quoteOrderNo);
@@ -772,7 +770,7 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
             //0 支付回调 1核保回调 5直接返回字符串信息
 //            String type = "0";
             String type = "5";
-//            if(iac.getOrderstatus().equals(InsOrderStatus.S_1.getCode())) type = "1";
+//            if(iac.getOrderstatus().equals(InsOrderStatusEnum.WAIT_AUDIT.getCode())) type = "1";
             //组装参数
             CallbackAnOrder o = CallbackAnOrder.buildCallbackAnOrderParam(iac, ycConfigureParameters.gainAuthorityDataXml(), type);
 
@@ -781,12 +779,6 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
 //            InsApiLog apiLog = httpPostResultLog(xmlMapper, o, YcBuildData.API_ORDER_QUERY);
             String respData = httpPostResultLog(xmlMapper, o, YcBuildData.API_ORDER_QUERY, "永诚API方式 - 补传回调 - ");
 
-//            log.info("永诚API方式 - xml请求 - 参数:" + apiLog.getRequestData());
-//            log.info("永诚API方式 - xml请求 ------------分割线----------------");
-//            log.info("永诚API方式 - xml请求 - 响应:" + apiLog.getResponseData());
-
-//            verifyRequest(apiLog, iac, InsQuoteFlow.Q_S_5);
-//            String responseData = apiLog.getResponseData();
 
 
             String cleanStr = YcBuildData.cleanResponseStr(respData);
@@ -799,12 +791,7 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
 
                 //成功
                 if (param.getResult().equals("0")) {
-//                    LambdaQueryWrapper<InsAreaCompany> lqw = new LambdaQueryWrapper();
-//                    //交强投保单号查询
-//                    lqw.eq(StringUtils.isNotEmpty(param.getCiPolicyAppNo()), InsAreaCompany::getJqapplyno, param.getCiPolicyAppNo());
-//                    //商业投保单号查询
-//                    lqw.eq(StringUtils.isNotEmpty(param.getBizPolicyAppNo()), InsAreaCompany::getSyapplyno, param.getBizPolicyAppNo());
-//                    InsAreaCompany iac = insAreaCompanyService.getOne(lqw);
+                    if(StringUtils.isEmpty(param.getBizPolicyNo()) && StringUtils.isEmpty(param.getCiPolicyNo())) return HttpResult.ok("操作成功,状态未变动。");;
 
 
                     if (StringUtils.isNotEmpty(param.getBizPolicyNo())) iac.setSypolicyno(param.getBizPolicyNo());
@@ -820,10 +807,10 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
 
                 } else {
                     //失败原因
-                    httpResult = HttpResult.error(param.getMessage());
                     log.info(String.format("永诚API方式 - 补传回调 - 失败,交强保单号:{} ,商业保单号:{},类型:{}", param.getCiPolicyNo(), param.getBizPolicyNo(), param.getType()));
+                    return HttpResult.error(param.getMessage());
                 }
-                return HttpResult.ok(param);
+                return HttpResult.ok("操作成功,状态已更新。");
 
             }
 
@@ -840,7 +827,7 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
             return HttpResult.error("系统错误,请联系管理员");
         }
 //        log.debug("=========永诚API方式 - xml请求 - 补传回调结束!======");
-        return httpResult;
+        return HttpResult.error("操作失败,请联系管理员");
     }
 
     /**
@@ -850,7 +837,7 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
     public void callbackAnOrder() {
 
         LambdaQueryWrapper<InsAreaCompany> lqw = new LambdaQueryWrapper<>();
-        lqw.eq(InsAreaCompany::getOrderstatus, InsOrderStatus.S_2.getCode());
+        lqw.eq(InsAreaCompany::getOrderstatus, InsOrderStatusEnum.WAIT_PAY.getCode());
         lqw.gt(InsAreaCompany::getAudittime, LocalDate.now().minusDays(1));
         List<InsAreaCompany> list = insAreaCompanyService.list(lqw);
 
@@ -1588,8 +1575,9 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
         insAreaCompany.setSumpremium(BigDecimal.valueOf(quoteRespVo.getSumPermium()));
 //        insAreaCompany.setSumpremium(BigDecimal.valueOf(add(quoteRespVo.getSumPermium(), insOrder.getTaxamount())));
         insAreaCompany.setOrderstatus(InsTaskHistoryEnum.WAITING_NUCLEAR_INSURANCE.getState() + "");
-        insAreaCompany.setRiskinfo(JSONObject.parseArray(JSONObject.toJSONString(quoteRespVo.getRiskList())));
-        insAreaCompany.setKindinfo(JSONObject.parseArray(JSONObject.toJSONString(quoteRespVo.getKindList())));
+
+
+
         insAreaCompany.setCreatetime(LocalDateTime.now());
         insAreaCompany.setInsOrderNo(insOrderNo);
         insAreaCompany.setJqapplyno(queryCodeJq);
@@ -1604,6 +1592,19 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
         insAreaCompany.setSyEndDate(responseData.getBase().getTInsrncEndTmSY());
 
 
+        if(CollUtil.isEmpty(quoteRespVo.getRiskList())){
+            insAreaCompany.setRiskinfo(new JSONArray());
+        }else{
+            insAreaCompany.setRiskinfo(JSONObject.parseArray(JSONObject.toJSONString(quoteRespVo.getRiskList())));
+        }
+
+        if(CollUtil.isEmpty(quoteRespVo.getKindList())){
+            insAreaCompany.setKindinfo(new JSONArray());
+        }else{
+            insAreaCompany.setKindinfo(JSONObject.parseArray(JSONObject.toJSONString(quoteRespVo.getKindList())));
+        }
+
+
         insAreaCompanyService.save(insAreaCompany);
         return insAreaCompany;
 
@@ -1696,51 +1697,62 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
     }
 
 
-//    @Override
-//    public Map<String, String> gainRegionCode(String address) {
-//
-//        log.debug("*********永诚API方式 - 身份证地址解析 参数:" + address);
-//        Map<String, String> m = IDCardUtils.addressResolution(address);
-//        if (null == m) return null;
-//        String city = m.get("city");
-//        String district = m.get("district");
-////        if(StringUtils.isNullOrEmpty(district)){
-////            //第二级赋值到第三级
-////            district = city;
-////        }
-//
-//        List<InsAlltrustRegion> areaList = new ArrayList<>();
-//        if (StringUtils.isNotEmpty(district)) {
-//            //查询地区
-//            LambdaQueryWrapper<InsAlltrustRegion> lqw = new LambdaQueryWrapper<>();
-//            lqw.eq(InsAlltrustRegion::getArea, district);
-//            areaList = insAlltrustRegionMapper.selectList(lqw);
-//        }
-//
-//
-//        //如果地区查不到 用城市当地区查
-//        if (null == areaList || areaList.size() < 1) {
-//            LambdaQueryWrapper<InsAlltrustRegion> cityLqw = new LambdaQueryWrapper<>();
-//            cityLqw.eq(InsAlltrustRegion::getArea, city);
-//            areaList = insAlltrustRegionMapper.selectList(cityLqw);
-//        }
-//        //如果地区查不到 用城市当地区查
-//        if (null == areaList || areaList.size() < 1) {
-//            LambdaQueryWrapper<InsAlltrustRegion> cityLqw = new LambdaQueryWrapper<>();
-//            cityLqw.eq(InsAlltrustRegion::getArea, city);
-//            areaList = insAlltrustRegionMapper.selectList(cityLqw);
-//        }
-//
-//
-//        if (null != areaList && areaList.size() > 0) {
-//            Map rMap = new HashMap();
-//            rMap.put("provinceCode", areaList.get(0).getProvinceCode());
-//            rMap.put("cityCode", areaList.get(0).getCityCode());
-//            rMap.put("areaCode", areaList.get(0).getAreaCode());
-//            return rMap;
+    @Override
+    public Map<String, String> gainRegionCode(String address) {
+
+        log.debug("*********永诚API方式 - 身份证地址解析 参数:" + address);
+        Map rMap = new HashMap();
+
+
+        if (address.indexOf("湖北省仙桃市") == 0) {
+            rMap.put("provinceCode", "420000");
+            rMap.put("cityCode", "429004");
+            rMap.put("areaCode", "");
+            return rMap;
+        }
+
+
+        Map<String, String> m = IDCardUtils.addressResolution(address);
+        if (null == m) return null;
+        String city = m.get("city");
+        String district = m.get("district");
+//        if(StringUtils.isNullOrEmpty(district)){
+//            //第二级赋值到第三级
+//            district = city;
 //        }
+
+        List<InsAlltrustRegion> areaList = new ArrayList<>();
+        if (StringUtils.isNotEmpty(district)) {
+            //查询地区
+            LambdaQueryWrapper<InsAlltrustRegion> lqw = new LambdaQueryWrapper<>();
+            lqw.eq(InsAlltrustRegion::getArea, district);
+            areaList = insAlltrustRegionMapper.selectList(lqw);
+        }
+
+
+        //如果地区查不到 用城市当地区查
+        if (null == areaList || areaList.size() < 1) {
+            LambdaQueryWrapper<InsAlltrustRegion> cityLqw = new LambdaQueryWrapper<>();
+            cityLqw.eq(InsAlltrustRegion::getArea, city);
+            areaList = insAlltrustRegionMapper.selectList(cityLqw);
+        }
+        //如果地区查不到 用城市当地区查
+        if (null == areaList || areaList.size() < 1) {
+            LambdaQueryWrapper<InsAlltrustRegion> cityLqw = new LambdaQueryWrapper<>();
+            cityLqw.eq(InsAlltrustRegion::getArea, city);
+            areaList = insAlltrustRegionMapper.selectList(cityLqw);
+        }
+
+
+        if (null != areaList && areaList.size() > 0) {
+            rMap.put("provinceCode", areaList.get(0).getProvinceCode());
+            rMap.put("cityCode", areaList.get(0).getCityCode());
+            rMap.put("areaCode", areaList.get(0).getAreaCode());
+            return rMap;
+        }
+        throw new SystemException("永诚(日志号:" + IPUtil.gainServerNo() + ") - 被保人地区解析失败,请联系管理员,地址:" + address);
 //        return null;
-//    }
+    }
 
 
     private void buildRegion(Ruote m, BaseQuoteInfoVo yaQuoteInfoVo) {
@@ -1757,30 +1769,51 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
 
 
         if (null != owner) {
-            InsAlltrustRegion ownerRegion = findRegion(owner);
-            if (null != ownerRegion) {
-                m.getRequestLabel().getCondition().getVhlowner().setCProvince(ownerRegion.getProvinceCode());
-                m.getRequestLabel().getCondition().getVhlowner().setCCity(ownerRegion.getCityCode());
-                m.getRequestLabel().getCondition().getVhlowner().setCCounty(ownerRegion.getAreaCode());
-            }
+            //处理地区 车主
+            Map<String, String> ownerMap = gainRegionCode(owner.getAddr());
+            m.getRequestLabel().getCondition().getVhlowner().setCProvince(ownerMap.get("provinceCode"));
+            m.getRequestLabel().getCondition().getVhlowner().setCCity(ownerMap.get("cityCode"));
+            m.getRequestLabel().getCondition().getVhlowner().setCCounty(ownerMap.get("areaCode"));
+
+
+//            InsAlltrustRegion ownerRegion = findRegion(owner);
+//            if (null != ownerRegion) {
+//                m.getRequestLabel().getCondition().getVhlowner().setCProvince(ownerRegion.getProvinceCode());
+//                m.getRequestLabel().getCondition().getVhlowner().setCCity(ownerRegion.getCityCode());
+//                m.getRequestLabel().getCondition().getVhlowner().setCCounty(ownerRegion.getAreaCode());
+//            }
         }
 
         if (null != insured) {
-            InsAlltrustRegion insuredRegion = findRegion(insured);
-            if (null != insuredRegion) {
-                m.getRequestLabel().getCondition().getInsured().setCProvince(insuredRegion.getProvinceCode());
-                m.getRequestLabel().getCondition().getInsured().setCCity(insuredRegion.getCityCode());
-                m.getRequestLabel().getCondition().getInsured().setCCounty(insuredRegion.getAreaCode());
-            }
+            //处理地区 被保人
+            Map<String, String> insureMap = gainRegionCode(insured.getAddr());
+            m.getRequestLabel().getCondition().getInsured().setCProvince(insureMap.get("provinceCode"));
+            m.getRequestLabel().getCondition().getInsured().setCCity(insureMap.get("cityCode"));
+            m.getRequestLabel().getCondition().getInsured().setCCounty(insureMap.get("areaCode"));
+
+
+//            InsAlltrustRegion insuredRegion = findRegion(insured);
+//            if (null != insuredRegion) {
+//                m.getRequestLabel().getCondition().getInsured().setCProvince(insuredRegion.getProvinceCode());
+//                m.getRequestLabel().getCondition().getInsured().setCCity(insuredRegion.getCityCode());
+//                m.getRequestLabel().getCondition().getInsured().setCCounty(insuredRegion.getAreaCode());
+//            }
         }
 
         if (null != applicant) {
-            InsAlltrustRegion applicantRegion = findRegion(applicant);
-            if (null != applicantRegion) {
-                m.getRequestLabel().getCondition().getApplicant().setCProvince(applicantRegion.getProvinceCode());
-                m.getRequestLabel().getCondition().getApplicant().setCCity(applicantRegion.getCityCode());
-                m.getRequestLabel().getCondition().getApplicant().setCCounty(applicantRegion.getAreaCode());
-            }
+            //处理地区 投保人
+            Map<String, String> applicantMap = gainRegionCode(applicant.getAddr());
+            m.getRequestLabel().getCondition().getApplicant().setCProvince(applicantMap.get("provinceCode"));
+            m.getRequestLabel().getCondition().getApplicant().setCCity(applicantMap.get("cityCode"));
+            m.getRequestLabel().getCondition().getApplicant().setCCounty(applicantMap.get("areaCode"));
+
+
+//            InsAlltrustRegion applicantRegion = findRegion(applicant);
+//            if (null != applicantRegion) {
+//                m.getRequestLabel().getCondition().getApplicant().setCProvince(applicantRegion.getProvinceCode());
+//                m.getRequestLabel().getCondition().getApplicant().setCCity(applicantRegion.getCityCode());
+//                m.getRequestLabel().getCondition().getApplicant().setCCounty(applicantRegion.getAreaCode());
+//            }
         }
 
     }
@@ -1795,7 +1828,7 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
             throw new SystemException("永诚报价需要录入省市县");
         }
 
-        if(info.getAddr().indexOf("湖北省仙桃市")==0){
+        if (info.getAddr().indexOf("湖北省仙桃市") == 0) {
             InsAlltrustRegion r = new InsAlltrustRegion();
             r.setProvinceCode("420000");
             r.setProvince("湖北省");
@@ -1893,17 +1926,17 @@ public class InsAlltrustApiServiceImpl implements InsAlltrustApiService {
      */
     private InsAreaCompany buildCallBackStatus(InsAreaCompany iac, String status) {
         if (status.equals("9")) {
-            iac.setOrderstatus(InsOrderStatus.S_2.getCode());
+            iac.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
             //更新支付连接
             log.debug("准备进入获取支付连接######################");
             iac = getPayUrlApi(iac);
             log.debug("结束 - 准备进入获取支付连接######################");
         }
         if (status.equals("3")) {
-            iac.setOrderstatus(InsOrderStatus.S_4.getCode());
+            iac.setOrderstatus(InsOrderStatusEnum.TO_BACK.getCode());
         }
         if (status.equals("1")) {
-            iac.setOrderstatus(InsOrderStatus.S_3.getCode());
+            iac.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
         }
         return iac;
     }

+ 5 - 5
src/main/java/com/ydtech/modules/ins/service/impl/InsTaskHistoryServiceImpl.java

@@ -1,6 +1,6 @@
 package com.ydtech.modules.ins.service.impl;
 
-import com.ydtech.constants.enums.InsOrderStatus;
+import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
 import com.ydtech.modules.ins.dao.impl.InsTaskHistoryDaoImpl;
 import com.ydtech.modules.ins.model.InsOrder;
 import com.ydtech.modules.ins.model.InsTaskHistory;
@@ -29,8 +29,8 @@ public class InsTaskHistoryServiceImpl extends InsTaskHistoryDaoImpl
             history.setOperatorid(order.getUserid());
             history.setOperator(order.getUsername());
             history.setCreatetime(sdf.format(new Date()));
-            history.setStatus(InsOrderStatus.S_2.getCode());
-            history.setRemark(InsOrderStatus.S_2.getDesc());
+            history.setStatus(InsOrderStatusEnum.WAIT_PAY.getCode());
+            history.setRemark(InsOrderStatusEnum.WAIT_PAY.getDesc());
             insert(history);
 
 //            history.setId(String.valueOf(new Date().getTime() + 1000));
@@ -50,8 +50,8 @@ public class InsTaskHistoryServiceImpl extends InsTaskHistoryDaoImpl
             history.setOperatorid(order.getUserid());
             history.setOperator(order.getUsername());
             history.setCreatetime(sdf.format(new Date()));
-            history.setStatus(InsOrderStatus.matchKey(order.getOrderstatus()).getCode());
-            history.setRemark(InsOrderStatus.matchKey(order.getOrderstatus()).getDesc());
+            history.setStatus(InsOrderStatusEnum.matchKey(order.getOrderstatus()).getCode());
+            history.setRemark(InsOrderStatusEnum.matchKey(order.getOrderstatus()).getDesc());
             insert(history);
         }
 

+ 2 - 2
src/main/java/com/ydtech/modules/order/entity/InsAreaCompany.java

@@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
 import com.fasterxml.jackson.annotation.JsonFormat;
-import com.ydtech.constants.enums.InsOrderStatus;
+import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
 import com.ydtech.modules.ins.model.vo.QuoteRespVo;
 import com.ydtech.modules.protocol.entity.po.PtlAgreementAttribution;
 import com.ydtech.utils.idgen.IdGenerate;
@@ -281,7 +281,7 @@ public class InsAreaCompany implements Serializable {
         this.accidentInfo = JSON.parseArray(JSON.toJSONString(quoteRespVo.getAccidentInfo()));
         this.riskinfo = JSON.parseArray(JSON.toJSONString(quoteRespVo.getRiskList()));
         this.kindinfo = JSON.parseArray(JSON.toJSONString(quoteRespVo.getKindList()));
-        this.orderstatus = InsOrderStatus.S_0.getCode();
+        this.orderstatus = InsOrderStatusEnum.QUOTE_ING.getCode();
 
         this.jqStartDate =  quoteRespVo.getStartDateJq();
         this.jqEndDate = quoteRespVo.getEndDateJq();

+ 3 - 3
src/main/java/com/ydtech/modules/order/entity/InsOrders.java

@@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
 import com.fasterxml.jackson.annotation.JsonFormat;
-import com.ydtech.constants.enums.InsOrderStatus;
+import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
 import com.ydtech.constants.enums.dict.agreement.ProductsType;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.admin.model.SysDept;
@@ -195,7 +195,7 @@ public class InsOrders implements Serializable {
     public InsOrders(SysUser user, SysDept dept, BaseQuoteInfoVo quoteInfoVo) {
         // 2. 组装订单
         this.setQuoteno(String.valueOf(quoteInfoVo.getQuoteno()));
-        this.setOrderstatus(InsOrderStatus.S_0.getCode());  // 0 报价 1 待核保 2 已核保待缴费 3 核保退回 4 核保不通过
+        this.setOrderstatus(InsOrderStatusEnum.QUOTE_ING.getCode());  // 0 报价 1 待核保 2 已核保待缴费 3 核保退回 4 核保不通过
         this.setFrameno(quoteInfoVo.getCarInfo().getFrameNo());
         this.setLicenseno(quoteInfoVo.getCarInfo().getLicenseNo());
 
@@ -300,4 +300,4 @@ public class InsOrders implements Serializable {
     }
 
 
-}
+}

+ 3 - 3
src/main/java/com/ydtech/modules/order/service/impl/InsCrawlerOrderServiceImpl.java

@@ -1,8 +1,8 @@
 package com.ydtech.modules.order.service.impl;
 
 import com.alibaba.fastjson.JSON;
-import com.ydtech.constants.enums.InsOrderStatus;
 import com.ydtech.constants.enums.InsurKind;
+import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.ins.model.vo.*;
@@ -128,7 +128,7 @@ public class InsCrawlerOrderServiceImpl implements InsCrawlerOrderService {
         // 保单号
         insAreaCompany.setJqpolicyno(crawlerAuditResponse.getJqApplication());
         insAreaCompany.setSypolicyno(crawlerAuditResponse.getSyApplication());
-        insAreaCompany.setOrderstatus(InsOrderStatus.S_2.getCode());
+        insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
         insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
         return HttpResult.ok("核保成功");
     }
@@ -145,7 +145,7 @@ public class InsCrawlerOrderServiceImpl implements InsCrawlerOrderService {
 
         // 0未缴费,1已缴费
         if (crawlerAuditResponse.getState() == CrawlerVerifyPaymentConstants.PAID) {
-            insAreaCompany.setOrderstatus(InsOrderStatus.S_3.getCode());//已承保
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());//已承保
             insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
             return HttpResult.ok("支付成功");
         }

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

@@ -10,7 +10,7 @@ import com.github.pagehelper.PageInfo;
 import com.github.pagehelper.page.PageMethod;
 import com.ydtech.components.OrderComponents;
 import com.ydtech.constants.InsuranceEnum;
-import com.ydtech.constants.enums.InsOrderStatus;
+import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.admin.model.SysDept;
@@ -92,7 +92,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
 
     @Override
     public void updateByOrderStatus(String orderNo, String orderStatus) {
-        if (InsOrderStatus.S_4.getCode().equals(orderStatus)) {
+        if (InsOrderStatusEnum.TO_BACK.getCode().equals(orderStatus)) {
             return;
         }
         InsOrders insOrders = getById(orderNo);
@@ -108,7 +108,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         LambdaQueryWrapper<InsOrders> wrapper = new LambdaQueryWrapper<>();
         wrapper.select(InsOrders::getCarinfo);
         wrapper.eq(InsOrders::getFrameno, vin)
-                .eq(InsOrders::getOrderstatus, InsOrderStatus.S_3.getCode())
+                .eq(InsOrders::getOrderstatus, InsOrderStatusEnum.ACCEPT_INSURANCE.getCode())
                 .orderByAsc(InsOrders::getCreatetime)
                 .last("limit 1");
         InsOrders insOrders = baseMapper.selectOne(wrapper);

+ 5 - 5
src/main/java/com/ydtech/modules/order/service/impl/YongAnOrderServiceImpl.java

@@ -5,8 +5,8 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.dataformat.xml.XmlMapper;
 import com.ydtech.constants.InsuranceImageEnum;
-import com.ydtech.constants.enums.InsOrderStatus;
 import com.ydtech.constants.enums.InsurKind;
+import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.esm.service.EsmInsCompanyService;
@@ -408,7 +408,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
                 UnderwriteDTO[] underwriteInfo = responseBody.getUnderwriteInfo();
                 String jqunderwriteStatus = "3";
                 String syunderwriteStatus = "3";
-                String orderstatus = InsOrderStatus.S_0.getCode(); // 4
+                String orderstatus = InsOrderStatusEnum.QUOTE_ING.getCode(); // 4
                 if (underwriteInfo != null && underwriteInfo.length > 0) {
                     for (UnderwriteDTO underwriteDTO : underwriteInfo) {
                         if ("CI".equals(underwriteDTO.getResultType())) {
@@ -419,10 +419,10 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
                         }
                     }
                     if (jqunderwriteStatus.equals("3") && syunderwriteStatus.equals("3")) {
-                        orderstatus = InsOrderStatus.S_2.getCode(); // 5
+                        orderstatus = InsOrderStatusEnum.WAIT_PAY.getCode(); // 5
                     }
                 } else {
-                    orderstatus = InsOrderStatus.S_2.getCode(); // 5
+                    orderstatus = InsOrderStatusEnum.WAIT_PAY.getCode(); // 5
                 }
                 insAreaCompany.setAuditid(orders.getUserid());
                 insAreaCompany.setPaymentLink(payUrl);
@@ -634,7 +634,7 @@ public class YongAnOrderServiceImpl implements YongAnOrderService {
             }
             insAreaCompany.setJqpolicyno(StringUtils.isEmpty(cplyNoCI) ? "" : cplyNoCI);
             insAreaCompany.setSypolicyno(StringUtils.isEmpty(cplyNoBI) ? "" : cplyNoBI);
-            insAreaCompany.setOrderstatus(InsOrderStatus.S_3.getCode());//7 已承保
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());//7 已承保
 //            insAreaCompany.setPaytype(payAppNo);
 //            insAreaCompany.setPaytime(payTime);
             insAreaCompanyService.updateById(insAreaCompany);

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

@@ -4,8 +4,8 @@ import cn.hutool.core.util.ArrayUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.ydtech.components.ZhongmeiRequestComponents;
-import com.ydtech.constants.enums.InsOrderStatus;
 import com.ydtech.constants.enums.InsuranceRisk;
+import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.fee.dto.FeeSchemeReqDto;
@@ -176,7 +176,7 @@ public class ZhongMeiOrderApiServiceImpl implements ZhongMeiOrderApiService {
         SubmitResponse response = submitForUnderwriting(insAreaCompany.getId(), insOrders.getFrameno(), customerInfoVo, zmConfigureParameters);
         // 3. 人工核保
         if (SubmitStatus.S_3.getCode().equals(response.getSubmitStatus())) {
-            insAreaCompany.setOrderstatus(InsOrderStatus.S_1.getCode());
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_AUDIT.getCode());
             insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
             return HttpResult.error(response.getSubmitNotion());
         }
@@ -187,7 +187,7 @@ public class ZhongMeiOrderApiServiceImpl implements ZhongMeiOrderApiService {
         insAreaCompany.setSyapplyno(response.getBizProposalNo());
 //        insAreaCompany.setJyapplyno(response.getAccidentProposalNo());
         insAreaCompany.setInsOrderNo(response.getProposalNo());
-        insAreaCompany.setOrderstatus(InsOrderStatus.S_2.getCode());
+        insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
         insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
         return HttpResult.ok("核保成功");
     }
@@ -223,7 +223,7 @@ public class ZhongMeiOrderApiServiceImpl implements ZhongMeiOrderApiService {
                 insAreaCompany.setJqpolicyno(coverageRequest.getForcePolicyNo());
                 insAreaCompany.setSypolicyno(coverageRequest.getBizPolicyNo());
 //                insAreaCompany.setJypolicyno(coverageRequest.getAccidentPolicyNo());
-                insAreaCompany.setOrderstatus(InsOrderStatus.S_3.getCode());
+                insAreaCompany.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
                 insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
             }
         } catch (Exception e) {
@@ -244,9 +244,9 @@ public class ZhongMeiOrderApiServiceImpl implements ZhongMeiOrderApiService {
                 insAreaCompany.setSyapplyno(approvedRequest.getProposalNoS());
 //                insAreaCompany.setJyapplyno(approvedRequest.getProposalNoCP());
                 insAreaCompany.setPaymentLink(approvedRequest.getPayUrl());
-                insAreaCompany.setOrderstatus(InsOrderStatus.S_2.getCode());
+                insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
             } else {
-                insAreaCompany.setOrderstatus(InsOrderStatus.S_4.getCode());
+                insAreaCompany.setOrderstatus(InsOrderStatusEnum.TO_BACK.getCode());
             }
             insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
         } catch (Exception e) {
@@ -262,8 +262,8 @@ public class ZhongMeiOrderApiServiceImpl implements ZhongMeiOrderApiService {
         // 1. 协议id获取配置实体
         ZmConfigureParameters zmConfigureParameters = configureParametersComponents.toEntity(ZmConfigureParameters.class, insAreaCompany.getAgreementId());
 
-        if (insAreaCompany.getOrderstatus().equals(InsOrderStatus.S_3.getCode())) {
-            return HttpResult.ok(InsOrderStatus.S_3.getDesc());
+        if (insAreaCompany.getOrderstatus().equals(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode())) {
+            return HttpResult.ok(InsOrderStatusEnum.ACCEPT_INSURANCE.getDesc());
         }
 
         // 2. 组装请求体
@@ -280,7 +280,7 @@ public class ZhongMeiOrderApiServiceImpl implements ZhongMeiOrderApiService {
             insAreaCompany.setJqpolicyno(orderStatusResponse.getSubContractNoJ());
             insAreaCompany.setSypolicyno(orderStatusResponse.getSubContractNoS());
 //            insAreaCompany.setJypolicyno(orderStatusResponse.getAccidentNo());
-            insAreaCompany.setOrderstatus(InsOrderStatus.S_3.getCode());
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
             insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
 
             return HttpResult.ok(PaymentStatusEnum.P_2.getMeaning());
@@ -419,8 +419,8 @@ public class ZhongMeiOrderApiServiceImpl implements ZhongMeiOrderApiService {
         // 1. 协议id获取配置实体
         ZmConfigureParameters zmConfigureParameters = configureParametersComponents.toEntity(ZmConfigureParameters.class, insAreaCompany.getAgreementId());
 
-        if (insAreaCompany.getOrderstatus().equals(InsOrderStatus.S_2.getCode())) {
-            return HttpResult.ok(InsOrderStatus.S_2.getDesc());
+        if (insAreaCompany.getOrderstatus().equals(InsOrderStatusEnum.WAIT_PAY.getCode())) {
+            return HttpResult.ok(InsOrderStatusEnum.WAIT_PAY.getDesc());
         }
 
         // 2. 组装请求体
@@ -434,11 +434,11 @@ public class ZhongMeiOrderApiServiceImpl implements ZhongMeiOrderApiService {
         // 3. 通过返回核保状态修改状态
         if ("核保通过".equals(underWriteInd) || "自动核保".equals(underWriteInd)) {
             insAreaCompany.setPaymentLink(submitStatusQueryResponse.getPayUrl());
-            insAreaCompany.setOrderstatus(InsOrderStatus.S_2.getCode());//当核保状态返回核保通过时,调整保单状态为已核保待缴费
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());//当核保状态返回核保通过时,调整保单状态为已核保待缴费
             insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
             return HttpResult.ok(underWriteInd);
         }else if("核保不通过".equals(underWriteInd)){//当状态为核保不通过时,调整保单状态为报价中
-            insAreaCompany.setOrderstatus(InsOrderStatus.S_0.getCode());
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.QUOTE_ING.getCode());
             insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
             return HttpResult.error("核保不通过:"+submitStatusQueryResponse.getIssuedReason());
         }else {

+ 7 - 7
src/main/java/com/ydtech/modules/order/service/impl/ZhongMeiOrderServiceImpl.java

@@ -2,7 +2,7 @@ package com.ydtech.modules.order.service.impl;
 
 import com.alibaba.fastjson.JSON;
 import com.ydtech.components.ZhongmeiRequestComponents;
-import com.ydtech.constants.enums.InsOrderStatus;
+import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.admin.model.SysUser;
@@ -150,7 +150,7 @@ public class ZhongMeiOrderServiceImpl implements ZhongMeiOrderService {
         Response<Map<String, String>> body = zhongmeiRequestComponents.audit(zmRequestParameter, new ParameterizedTypeReference<Response<Map<String, String>>>() {
         });
         if (body.getCode() == 10001) {
-            insAreaCompany.setOrderstatus(InsOrderStatus.S_4.getCode()); // 1
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.TO_BACK.getCode()); // 1
         } else {
             String qrCodeImage = body.getData().get("qrCodeImage");
             // 3.核保不通过插入轨迹表
@@ -161,12 +161,12 @@ public class ZhongMeiOrderServiceImpl implements ZhongMeiOrderService {
             String epolicyUrlImg = qrCodeImage;
             insAreaCompany.setAuditid(insOrders.getUserid());
             insAreaCompany.setPaymentLink(epolicyUrlImg);
-            insAreaCompany.setOrderstatus(InsOrderStatus.S_2.getCode()); // 2
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode()); // 2
         }
         insAreaCompanyService.updateById(insAreaCompany);
         insOrdersService.updateByOrderStatus(insAreaCompany.getOrderno(), insAreaCompany.getOrderstatus());
 
-        if (InsOrderStatus.S_4.getCode().equals(insAreaCompany.getOrderstatus())) {
+        if (InsOrderStatusEnum.TO_BACK.getCode().equals(insAreaCompany.getOrderstatus())) {
             return HttpResult.error(body.getMessage());
         }
         return HttpResult.ok();
@@ -187,7 +187,7 @@ public class ZhongMeiOrderServiceImpl implements ZhongMeiOrderService {
         String epolicyUrlImg = qrCodeImage;
         insAreaCompany.setAuditid(insOrders.getUserid());
         insAreaCompany.setPaymentLink(epolicyUrlImg);
-        insAreaCompany.setOrderstatus(InsOrderStatus.S_2.getCode()); // 5
+        insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode()); // 5
         insAreaCompanyService.updateById(insAreaCompany);
         insOrdersService.updateByOrderStatus(insAreaCompany.getOrderno(), insAreaCompany.getOrderstatus());
         return HttpResult.ok();
@@ -212,7 +212,7 @@ public class ZhongMeiOrderServiceImpl implements ZhongMeiOrderService {
         insAreaCompany.setSypolicyno(data.getContractNo2());
 //        insAreaCompany.setJypolicyno(data.getContractNo_CP());
         insAreaCompany.setInsOrderNo(data.getContractMainNo());
-        insAreaCompany.setOrderstatus(InsOrderStatus.S_3.getCode());//已承保
+        insAreaCompany.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());//已承保
         //  order.setPaytype(payAppNo);
         //  order.setPaytime(payTime);
         insAreaCompanyService.updateById(insAreaCompany);
@@ -332,7 +332,7 @@ public class ZhongMeiOrderServiceImpl implements ZhongMeiOrderService {
             add = CalculateUtils.add(response.getTrafficStrength(), response.getBusiness(), response.getSumTax(), sumPremium);
         }
         insAreaCompany.setSumpremium(BigDecimal.valueOf(add));
-        insAreaCompany.setOrderstatus(InsOrderStatus.S_0.getCode()); // "1"
+        insAreaCompany.setOrderstatus(InsOrderStatusEnum.QUOTE_ING.getCode()); // "1"
         insAreaCompany.setRiskinfo(JSON.parseArray(JSON.toJSONString(quoteRespVo.getRiskList())));
         insAreaCompany.setKindinfo(JSON.parseArray(JSON.toJSONString(quoteRespVo.getKindList())));
         insAreaCompany.setJqapplyno(response.getJContractNo());

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

@@ -4,7 +4,6 @@ import cn.hutool.core.util.ArrayUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
-import com.ydtech.constants.enums.InsOrderStatus;
 import com.ydtech.constants.enums.InsuranceRisk;
 import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
 import com.ydtech.core.page.HttpResult;
@@ -181,7 +180,7 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
         // 2.2 投保单号
         insAreaCompany.setJqapplyno(submitVerifyInfo.getProposalNoCI());
         insAreaCompany.setSyapplyno(submitVerifyInfo.getProposalNo());
-        insAreaCompany.setOrderstatus(InsOrderStatus.S_2.getCode());
+        insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
 
         // 3. 聚合支付服务
         BigDecimal multiply = insAreaCompany.getSumpremium().multiply(new BigDecimal(100));
@@ -283,7 +282,7 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
             List<DrivingInsuranceDto> drivingInsuranceDto = queryOrderDetailResponse.getDrivingInsuranceDto();
             insAreaCompany.setCrossInsurance(JSON.parseArray(JSON.toJSONString(drivingInsuranceDto)));
 
-            insAreaCompany.setOrderstatus(InsOrderStatus.S_3.getCode());
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
             insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
             return HttpResult.ok("订单已支付,订单状态修改完成");
         }
@@ -303,7 +302,7 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
         zijinRequestApiComponents.cancel(orderNoRequest, httpHeaders);
 
         // 3 撤销成功后修改状态为报价中
-        insAreaCompany.setOrderstatus(InsOrderStatus.S_0.getCode());
+        insAreaCompany.setOrderstatus(InsOrderStatusEnum.QUOTE_ING.getCode());
         insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
 
         return HttpResult.ok("撤单成功");
@@ -320,7 +319,7 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
             String proposalNo = paymentCallbacksRequest.getOrderId();
             InsAreaCompany insAreaCompany = insAreaCompanyService.getByInsOrderNo(proposalNo);
             // 保单号
-            insAreaCompany.setOrderstatus(InsOrderStatus.S_3.getCode());
+            insAreaCompany.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
             insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
         } catch (Exception e) {
             log.debug("支付回调{}", e.getMessage());
@@ -419,7 +418,7 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
         // 协议id
         insAreaCompany.setId(orderNo);
         insAreaCompany.setReptxt(JSON.parseObject(JSON.toJSONString(calculatePremiumResponse)));
-        insAreaCompany.setOrderstatus(InsOrderStatus.S_0.getCode());
+        insAreaCompany.setOrderstatus(InsOrderStatusEnum.QUOTE_ING.getCode());
         insAreaCompany.setInsOrderNo(orderId);
         insAreaCompanyService.insertCompanyAndOrders(insAreaCompany);
         quoteRespVo.setCompanyId(orderNo);

+ 20 - 0
src/main/java/com/ydtech/utils/IPUtil.java

@@ -52,4 +52,24 @@ public class IPUtil {
         return ipAddress;
 
     }
+
+
+    /**
+     *  获取服务器号
+     *
+     * @author: lig
+     * @date: 2023年10月09日 0009
+     */
+    public static String gainServerNo() {
+        String ip = "";
+        String serverNo = "0";
+        try {
+            ip = InetAddress.getLocalHost().getHostAddress();
+        } catch (UnknownHostException e) {
+            throw new RuntimeException(e);
+        }
+        if(ip.equals("172.24.144.220"))serverNo = "1";
+        if(ip.equals("172.24.144.219"))serverNo = "2";
+        return serverNo;
+    }
 }

+ 4 - 4
src/main/resources/logback-spring.xml

@@ -115,11 +115,11 @@
         <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
             <!-- 日志文件名格式 -->
-            <fileNamePattern>${log.path}/sys-alltrust.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <fileNamePattern>${log.path}/alltrust/sys-alltrust.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
 
             <!--            <fileNamePattern>${log.path}/sys-alltrust.%d{yyyy-MM-dd}.log</fileNamePattern>-->
             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-                <maxFileSize>50MB</maxFileSize>
+                <maxFileSize>30MB</maxFileSize>
             </timeBasedFileNamingAndTriggeringPolicy>
             <!--日志文件保留天数-->
             <maxHistory>30</maxHistory>
@@ -159,11 +159,11 @@
         <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
             <!-- 日志文件名格式 -->
-            <fileNamePattern>${log.path}/sys-guoRen.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <fileNamePattern>${log.path}/guoRen/sys-guoRen.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
 
 <!--            <fileNamePattern>${log.path}/sys-alltrust.%d{yyyy-MM-dd}.log</fileNamePattern>-->
             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-                <maxFileSize>50MB</maxFileSize>
+                <maxFileSize>30MB</maxFileSize>
             </timeBasedFileNamingAndTriggeringPolicy>
             <!--日志文件保留天数-->
             <maxHistory>30</maxHistory>