Jelajahi Sumber

Merge remote-tracking branch 'origin/master'

jiakai 3 minggu lalu
induk
melakukan
203154236a

+ 3 - 3
tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/crawler/component/HuaTaiCrawlerCacheComponent.java

@@ -62,7 +62,7 @@ public class HuaTaiCrawlerCacheComponent {
     public void cacheYingXiangUploaded(String yx) {
         Map<String, String> authorizationMap = new HashMap<>();
 
-        authorizationMap.put(YINGXIANG_UPLOADED, yx);
+        authorizationMap.put(YINGXIANG_UPLOADED + yx, yx);
         RMap<Object, Object> map = redissonClient.getMap(HUATAI_YINGXIANG_UPLOADED);
         map.putAll(authorizationMap);
         map.expire(Duration.ofDays(30L));
@@ -80,8 +80,8 @@ public class HuaTaiCrawlerCacheComponent {
         return (String) redissonClient.getMap(accountKey(HUATAI_COMCODE, username, comcode)).get(COMCODE);
     }
 
-    public String getYingXiangUploaded() {
-        return (String) redissonClient.getMap(HUATAI_YINGXIANG_UPLOADED).get(YINGXIANG_UPLOADED);
+    public String getYingXiangUploaded(String yx) {
+        return (String) redissonClient.getMap(HUATAI_YINGXIANG_UPLOADED).get(YINGXIANG_UPLOADED + yx);
     }
 
     public void clearLoginCache(String username, String comcode) {

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

@@ -1045,7 +1045,7 @@ public class HuaTaiCrawlerRequestImpl implements HuaTaiCrawlerRequest {
         doLoginCookie(attr);
         HtCrawlerOrder order = orderService.findByOrdersNo(orderBase.getOrdersNo());
 
-        String uploaded = cache.getYingXiangUploaded();
+        String uploaded = cache.getYingXiangUploaded(order.getQuotationRelaNo());
         if (StringUtils.isNotBlank(uploaded) && uploaded.equals(order.getQuotationRelaNo())) return;
 
         HtCrawlerConfigureParameters params = ConfigureParametersConversion.conversionEntity(

+ 64 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/controller/InsOrdersController.java

@@ -6,6 +6,7 @@ import cn.hutool.core.util.NumberUtil;
 import cn.hutool.json.JSONUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.jzg.commons.aop.OperatorTrajectory;
 import com.jzg.commons.core.base.BaseController;
@@ -17,6 +18,8 @@ import com.jzg.commons.entity.finance.vo.BatchModifyVo;
 import com.jzg.commons.entity.finance.vo.UpdateCompanyBatchVo;
 import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersCarInfo;
+import com.jzg.commons.entity.orders.po.InsOrdersExternalPolicy;
+import com.jzg.commons.entity.orders.po.InsOrdersPolicy;
 import com.jzg.commons.entity.orders.vo.HistoryQuoteQueryVo;
 import com.jzg.commons.entity.orders.vo.HistoryQuoteResultVo;
 import com.jzg.commons.entity.po.InsFeeOrders;
@@ -29,6 +32,7 @@ import com.jzg.commons.request.RequestSingleParam;
 import com.jzg.quotation.summary.mapper.InsOrdersMapper;
 import com.jzg.quotation.summary.service.InsFeeOrdersService;
 import com.jzg.quotation.summary.service.InsOrdersCarInfoService;
+import com.jzg.quotation.summary.service.InsOrdersPolicyService;
 import com.jzg.quotation.summary.service.InsOrdersService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
@@ -65,6 +69,8 @@ public class InsOrdersController extends BaseController {
 
     @Autowired
     private BaseController baseController;
+    @Autowired
+    private InsOrdersPolicyService insOrdersPolicyService;
 
     @Resource
     private InsFeeOrdersService insFeeOrdersService;
@@ -75,6 +81,37 @@ public class InsOrdersController extends BaseController {
     @PostMapping("saveOrders")
     public HttpResult saveOrUpdate(@RequestBody InsOrdersAdd ordersAdd) {
         log.info("补录订单。 saveOrUpdate=[{}]", JSONUtil.toJsonStr(ordersAdd));
+
+        // 检查输入参数是否为空,如果为空则返回错误信息
+
+        if(ordersAdd.getInsOrders().getCompanyId().isEmpty()){
+            return HttpResult.error("请填写报价公司信息!");
+        }
+        if(ordersAdd.getInsOrders().getAgreementId().isEmpty()){
+            return HttpResult.error("请填写报价协议信息");
+        }
+        if(ordersAdd.getIsTemporarily() ==0){
+            InsOrdersExternalPolicy insOrdersExternalPolicy = ordersAdd.getInsOrdersExternalPolicy();
+            if(insOrdersExternalPolicy == null || (insOrdersExternalPolicy.getJqPolicy().isEmpty() && insOrdersExternalPolicy.getSyPolicy().isEmpty()) ){
+                return HttpResult.error("商业险保单和交强险保单不能都为空!");
+            }
+            if(!insOrdersExternalPolicy.getJqPolicy().isEmpty()){
+                LambdaQueryWrapper<InsOrdersPolicy> wrapper = new LambdaQueryWrapper<>();
+                wrapper.eq(InsOrdersPolicy::getJqPolicyNo, insOrdersExternalPolicy.getJqPolicy());
+                List<InsOrdersPolicy> list = insOrdersPolicyService.list(wrapper);
+                if(list != null && !list.isEmpty()){
+                    return HttpResult.error("该交强险保单号信息已存在!");
+                }
+            }
+            if(!insOrdersExternalPolicy.getSyPolicy().isEmpty()){
+                LambdaQueryWrapper<InsOrdersPolicy> wrapper = new LambdaQueryWrapper<>();
+                wrapper.eq(InsOrdersPolicy::getSyPolicyNo, insOrdersExternalPolicy.getSyPolicy());
+                List<InsOrdersPolicy> list = insOrdersPolicyService.list(wrapper);
+                if(list != null && !list.isEmpty()){
+                    return HttpResult.error("该商业保单号信息已存在!");
+                }
+            }
+        }
         ordersAdd.setSystemCode(getSystemCode());
         return insOrdersService.saveOrders(ordersAdd);
     }
@@ -91,6 +128,33 @@ public class InsOrdersController extends BaseController {
     @PostMapping("updateOrders")
     public HttpResult updateOrders(@RequestBody InsOrdersEnd ordersEnd) {
         ordersEnd.setSystemCode(getSystemCode());
+        if(ordersEnd.getIsTemporarily() ==0){
+            InsOrdersExternalPolicy insOrdersExternalPolicy = ordersEnd.getInsOrdersExternalPolicy();
+            if(insOrdersExternalPolicy == null || (insOrdersExternalPolicy.getJqPolicy().isEmpty() && insOrdersExternalPolicy.getSyPolicy().isEmpty()) ){
+                return HttpResult.error("商业险保单和交强险保单不能都为空!");
+            }
+            if(!insOrdersExternalPolicy.getJqPolicy().isEmpty()){
+                LambdaQueryWrapper<InsOrdersPolicy> wrapper = new LambdaQueryWrapper<>();
+                wrapper.eq(InsOrdersPolicy::getJqPolicyNo, insOrdersExternalPolicy.getJqPolicy());
+                List<InsOrdersPolicy> list = insOrdersPolicyService.list(wrapper);
+                if(list != null && !list.isEmpty()){
+                    // 修改订单时,排除原订单的问题
+                    if(!list.get(0).getOrderNo().equals(ordersEnd.getInsOrders().getId())){
+                        return HttpResult.error("该交强险保单号信息已存在!");
+                    }
+                }
+            }
+            if(!insOrdersExternalPolicy.getSyPolicy().isEmpty()){
+                LambdaQueryWrapper<InsOrdersPolicy> wrapper = new LambdaQueryWrapper<>();
+                wrapper.eq(InsOrdersPolicy::getSyPolicyNo, insOrdersExternalPolicy.getSyPolicy());
+                List<InsOrdersPolicy> list = insOrdersPolicyService.list(wrapper);
+                if(list != null && !list.isEmpty()){
+                    if(!list.get(0).getOrderNo().equals(ordersEnd.getInsOrders().getId())){
+                        return HttpResult.error("该商业保单号信息已存在!");
+                    }
+                }
+            }
+        }
         return insOrdersService.updateOrders(ordersEnd);
     }
 

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

@@ -382,39 +382,6 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
     public HttpResult saveOrders(InsOrdersAdd ordersAdd) {
         log.info("补录订单:ordersAdd=[{}]", JSONUtil.toJsonStr(ordersAdd));
         ordersAdd.getFeeOrdersVo().setIsrecordByLeader(ordersAdd.getInsOrdersOtherInfo().isIsrecordByLeader());
-
-        // 检查输入参数是否为空,如果为空则返回错误信息
-
-        if(ordersAdd.getInsOrders().getCompanyId().isEmpty()){
-            return HttpResult.error("请填写报价公司信息!");
-        }
-        if(ordersAdd.getInsOrders().getAgreementId().isEmpty()){
-            return HttpResult.error("请填写报价协议信息");
-        }
-        if(ordersAdd.getIsTemporarily() ==0){
-            InsOrdersExternalPolicy insOrdersExternalPolicy = ordersAdd.getInsOrdersExternalPolicy();
-            if(insOrdersExternalPolicy == null || (insOrdersExternalPolicy.getJqPolicy().isEmpty() && insOrdersExternalPolicy.getSyPolicy().isEmpty()) ){
-                return HttpResult.error("商业险保单和交强险保单不能都为空!");
-            }
-            if(!insOrdersExternalPolicy.getJqPolicy().isEmpty()){
-                LambdaQueryWrapper<InsOrdersPolicy> wrapper = new LambdaQueryWrapper<>();
-                wrapper.eq(InsOrdersPolicy::getJqPolicyNo, insOrdersExternalPolicy.getJqPolicy());
-                List<InsOrdersPolicy> list = insOrdersPolicyService.list(wrapper);
-                if(list != null && !list.isEmpty()){
-                    return HttpResult.error("该交强险保单号信息已存在!");
-                }
-            }
-            if(!insOrdersExternalPolicy.getSyPolicy().isEmpty()){
-                LambdaQueryWrapper<InsOrdersPolicy> wrapper = new LambdaQueryWrapper<>();
-                wrapper.eq(InsOrdersPolicy::getSyPolicyNo, insOrdersExternalPolicy.getSyPolicy());
-                List<InsOrdersPolicy> list = insOrdersPolicyService.list(wrapper);
-                if(list != null && !list.isEmpty()){
-                    return HttpResult.error("该商业保单号信息已存在!");
-                }
-            }
-        }
-
-
         try {
             // 获取订单对象并设置引用编号
             InsOrders insOrders = ordersAdd.getInsOrders();
@@ -543,6 +510,8 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
 
             // 发送订单状态变更消息
             this.orderStatusMessage(insOrders, insOrdersCarInfo, insOrdersCosts, baseController.getToken(), MessageCodeEnum.TEMPLATE_9);
+
+            // 生成子订单
             if (nullOrders) {
                 InsOrders orders = insOrdersAdd.getInsOrders();
                 orders.setQuoteNo(insOrders.getQuoteNo());
@@ -712,34 +681,6 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
     @Transactional(rollbackFor = Exception.class)
     public HttpResult updateOrders(InsOrdersEnd ordersEnd) {
 
-        if(ordersEnd.getIsTemporarily() ==0){
-            InsOrdersExternalPolicy insOrdersExternalPolicy = ordersEnd.getInsOrdersExternalPolicy();
-            if(insOrdersExternalPolicy == null || (insOrdersExternalPolicy.getJqPolicy().isEmpty() && insOrdersExternalPolicy.getSyPolicy().isEmpty()) ){
-                return HttpResult.error("商业险保单和交强险保单不能都为空!");
-            }
-            if(!insOrdersExternalPolicy.getJqPolicy().isEmpty()){
-                LambdaQueryWrapper<InsOrdersPolicy> wrapper = new LambdaQueryWrapper<>();
-                wrapper.eq(InsOrdersPolicy::getJqPolicyNo, insOrdersExternalPolicy.getJqPolicy());
-                List<InsOrdersPolicy> list = insOrdersPolicyService.list(wrapper);
-                if(list != null && !list.isEmpty()){
-                    // 修改订单时,排除原订单的问题
-                    if(!list.get(0).getOrderNo().equals(ordersEnd.getInsOrders().getId())){
-                        return HttpResult.error("该交强险保单号信息已存在!");
-                    }
-                }
-            }
-            if(!insOrdersExternalPolicy.getSyPolicy().isEmpty()){
-                LambdaQueryWrapper<InsOrdersPolicy> wrapper = new LambdaQueryWrapper<>();
-                wrapper.eq(InsOrdersPolicy::getSyPolicyNo, insOrdersExternalPolicy.getSyPolicy());
-                List<InsOrdersPolicy> list = insOrdersPolicyService.list(wrapper);
-                if(list != null && !list.isEmpty()){
-                    if(!list.get(0).getOrderNo().equals(ordersEnd.getInsOrders().getId())){
-                        return HttpResult.error("该商业保单号信息已存在!");
-                    }
-                }
-            }
-        }
-
         try {
             // 获取订单对象并设置引用编号
             InsOrders insOrders = ordersEnd.getInsOrders();

+ 1 - 1
tenant/organization/src/main/java/com/jzg/organization/service/impl/PtlAgreementCostServiceImpl.java

@@ -447,7 +447,7 @@ public class PtlAgreementCostServiceImpl extends ServiceImpl<PtlAgreementCostMap
                 ptlAgreementCost.setId(costId);
                 ptlAgreementCost.setCoverRuleId(costCopyParam.getCoverRuleId());
                 ptlAgreementCost.setPtlAgreementId(costCopyParam.getAgreementId());
-                ptlAgreementCost.setCostDescribe("复制的费用:" + ptlAgreementCost.getCostDescribe());
+                ptlAgreementCost.setCostDescribe(ptlAgreementCost.getCostDescribe());
                 ptlAgreementCost.setCreateTime(LocalDateTime.now());
                 ptlAgreementCost.setUpdateTime(LocalDateTime.now());
                 if(costCopyParam.getProductId() != null && !costCopyParam.getProductId().isEmpty()){

+ 13 - 0
tenant/organization/src/main/java/com/jzg/organization/service/impl/PtlAgreementUndwrtRulesServiceImpl.java

@@ -378,6 +378,19 @@ public class PtlAgreementUndwrtRulesServiceImpl extends ServiceImpl<PtlAgreement
                     }
                 }
 
+                // min 字段根据 minArray 进行重组(前端批量模式下传的是 minArray)
+                if (CollUtil.isNotEmpty(group.getRulesAttrList())) {
+                    group.getRulesAttrList().forEach(attr -> {
+                        if (attr.getMinArray() != null && attr.getMinArray().length > 0) {
+                            attr.setMin(String.join(",", attr.getMinArray()));
+                        }
+                        // 处理中文逗号
+                        if (attr.getMin() != null && attr.getMin().contains(",")) {
+                            attr.setMin(attr.getMin().replace(",", ","));
+                        }
+                    });
+                }
+
                 List<PtlAgreementUndwrtRulesAttrLink> andAttrLinks = processAndAttrs(group.getRulesAttrList(), undwrtRulesAttrList, ruleId);
 
                 // 已有规则做差异比较更新,避免全删全插产生垃圾数据