785834757 1 год назад
Родитель
Сommit
e57b616820

+ 31 - 17
src/main/java/com/ydtech/modules/fee/service/impl/FeeRuleSchemeServiceNewImpl.java

@@ -3087,14 +3087,13 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
 //            }
             return inputNumberEqual(ptlAgreementUndwrtRulesAttrLink, value);
         } else if (ptlAgreementUndwrtRulesAttr.getAttrType().equals("input")) {
-            return inputTextEqual(ptlAgreementUndwrtRulesAttrLink, value);
-        } else if (ptlAgreementUndwrtRulesAttr.getAttrType().equals("select")) {
-
             //截取身份证号码
             if (ptlAgreementUndwrtRulesAttr.getAttrCode().equals("CarOwnersIDNumber") || ptlAgreementUndwrtRulesAttr.getAttrCode().equals("ApplicantIDNumber") ||
                     ptlAgreementUndwrtRulesAttr.getAttrCode().equals("InsuredIDNumber")) {
                 value = value.substring(0, ptlAgreementUndwrtRulesAttr.getMin().length());
             }
+            return inputTextEqual(ptlAgreementUndwrtRulesAttrLink, value);
+        } else if (ptlAgreementUndwrtRulesAttr.getAttrType().equals("select")) {
 
             //截取车牌
             if (ptlAgreementUndwrtRulesAttr.getAttrCode().equals("LicenseNo")) {
@@ -3243,21 +3242,36 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
     private boolean inputTextEqual(PtlAgreementUndwrtRulesAttrLink ptlAgreementUndwrtRulesAttrLink, String value) {
         //将值进行分割
         String[] split = ptlAgreementUndwrtRulesAttrLink.getMin().split(",");
-        AtomicBoolean returnBool = new AtomicBoolean(true);
-        if (ptlAgreementUndwrtRulesAttrLink.getAttrCode().equals("NatureOfUse")) {
-            Arrays.stream(split).forEach(x -> {
-                if (!x.equals("") && value.equals(x)) {
-                    returnBool.set(false);
-                }
-            });
-        } else {
-            Arrays.stream(split).forEach(x -> {
-                if (!x.equals("") && value.contains(x)) {
-                    returnBool.set(false);
-                }
-            });
+        AtomicBoolean returnBool = new AtomicBoolean(false);
+
+        List<String> equalsMap = new ArrayList<>();
+        //字符型评分
+        equalsMap.add("CharacterBasedRating");
+        //交强字符型评分
+        equalsMap.add("JqCharacterBasedRating");
+        //商业字符型评分
+        equalsMap.add("SyCharacterBasedRating");
+
+
+
+        //equest 等于判断
+        if(equalsMap.contains(ptlAgreementUndwrtRulesAttrLink.getAttrCode())){
+            boolean b = Arrays.stream(split).anyMatch(value::equals);
+            returnBool.set(b);
+        }else if((ptlAgreementUndwrtRulesAttrLink.getAttrCode().equals("BrandandModel") || ptlAgreementUndwrtRulesAttrLink.getAttrCode().equals("CarOwnerName")
+                || ptlAgreementUndwrtRulesAttrLink.getAttrCode().equals("CarOwnersAddress") || ptlAgreementUndwrtRulesAttrLink.getAttrCode().equals("ApplicantAddress")
+                || ptlAgreementUndwrtRulesAttrLink.getAttrCode().equals("InsuredAddress"))
+                && ptlAgreementUndwrtRulesAttrLink.getOperator().equals("2")){
+            //处理品牌型号  不包含的情况
+            boolean anyMatch = Arrays.stream(split)
+                    .anyMatch(value::contains);
+            returnBool.set(!anyMatch);
+        }else {
+            boolean anyMatch = Arrays.stream(split)
+                    .anyMatch(value::contains);
+            returnBool.set(anyMatch);
         }
-        return returnBool.get();
+        return !returnBool.get();
     }
 
     /**