xufei 3 years ago
parent
commit
db7b58a751

+ 1 - 1
src/main/java/com/winhc/bigdata/bean/Category.java

@@ -522,6 +522,6 @@ public class Category {
 
 
 
 
     public static void main(String[] args) {
     public static void main(String[] args) {
-        System.out.println(getCategoryName("515","1"));
+        System.out.println(getCategoryName("28","1"));
     }
     }
 }
 }

+ 53 - 0
src/main/java/com/winhc/bigdata/udf/CompareName.java

@@ -0,0 +1,53 @@
+package com.winhc.bigdata.udf;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONPath;
+import com.aliyun.odps.udf.UDF;
+import org.apache.commons.lang.StringUtils;
+
+import java.util.*;
+import java.util.stream.Collectors;
+
+/**
+ * @Author: π
+ * @Date: 2020/5/14 16:26
+ * @Description: 比较两个字符串数组包含关系
+ */
+public class CompareName extends UDF {
+
+    public Boolean evaluate(String ygName, String bgName) {
+        if (StringUtils.isBlank(ygName) || StringUtils.isBlank(bgName)) {
+            return false;
+        }
+        //原告
+        List<String> list1 = parse(ygName, "$.name").stream().distinct().collect(Collectors.toList());
+        //被告
+        List<String> list2 = Arrays.stream(bgName.split(",", -1))
+                .filter(StringUtils::isNotBlank).distinct().collect(Collectors.toList());
+        if (list1.isEmpty() || list2.isEmpty()) {
+            return false;
+        }
+        List<String> intersection = list1.stream().filter(list2::contains).collect(Collectors.toList());
+        return !intersection.isEmpty();
+    }
+
+    public List<String> parse(String json, String json_path) {
+        JSONArray jsonArray = ((JSONArray) JSONPath.eval(JSON.parse(json), json_path));
+        ArrayList<String> list = new ArrayList<>();
+        for (Object o : jsonArray) {
+            list.add((String) o);
+        }
+        return list;
+    }
+
+    public static void main(String[] args) {
+
+        String yg_name = "[{\"name\":\"张司\",\"litigant_id\":\"4aed1cb57bf538d0aca90ec8b2c9f8bc\"}]";
+        String bg_name = "张司,,李四";
+        CompareName c = new CompareName();
+        System.out.println(c.evaluate(yg_name, bg_name));
+    }
+}
+
+

+ 43 - 0
src/main/java/com/winhc/bigdata/udf/Flag2Tn.java

@@ -0,0 +1,43 @@
+package com.winhc.bigdata.udf;
+
+import com.aliyun.odps.udf.UDF;
+import org.apache.commons.lang.StringUtils;
+
+import java.util.HashMap;
+
+/**
+ * @Author: π
+ * @Date: 2020/5/14 16:26
+ * @Description: id 转 tn 映射
+ */
+public class Flag2Tn extends UDF {
+
+    public static HashMap<String, String> map = new HashMap<String, String>() {{
+        //映射
+        put("0", "company_lawsuit");
+        put("1", "company_court_open_announcement");
+        put("2", "company_court_announcement");
+        put("3", "company_dishonest_info");
+        put("4", "company_send_announcement");
+        put("5", "company_zxr_restrict");
+        put("6", "company_zxr_final_case");
+        put("7", "company_zxr");
+        put("8", "company_court_register");
+    }};
+
+    public String evaluate(String tn) {
+        if (StringUtils.isBlank(tn)) return null;
+        if (map.containsKey(tn)) {
+            return map.get(tn);
+        }
+        return null;
+    }
+
+    public static void main(String[] args) {
+        String s = "0";
+        Flag2Tn t = new Flag2Tn();
+        System.out.println(t.evaluate(s));
+    }
+}
+
+

+ 44 - 0
src/main/java/com/winhc/bigdata/udf/Tn2Flag.java

@@ -0,0 +1,44 @@
+package com.winhc.bigdata.udf;
+
+import com.aliyun.odps.udf.UDF;
+import com.google.gson.Gson;
+import org.apache.commons.lang.StringUtils;
+
+import java.util.HashMap;
+
+/**
+ * @Author: π
+ * @Date: 2020/5/14 16:26
+ * @Description: tn 转 id 映射
+ */
+public class Tn2Flag extends UDF {
+
+    public static HashMap<String, String> map = new HashMap<String, String>() {{
+        //映射
+        put("company_lawsuit", "0");
+        put("company_court_open_announcement", "1");
+        put("company_court_announcement", "2");
+        put("company_dishonest_info", "3");
+        put("company_send_announcement", "4");
+        put("company_zxr_restrict", "5");
+        put("company_zxr_final_case", "6");
+        put("company_zxr", "7");
+        put("company_court_register", "8");
+    }};
+
+    public String evaluate(String tn) {
+        if (StringUtils.isBlank(tn)) return null;
+        if (map.containsKey(tn)) {
+            return map.get(tn);
+        }
+        return null;
+    }
+
+    public static void main(String[] args) {
+        String s = "company_court_register";
+        Tn2Flag t = new Tn2Flag();
+        System.out.println(t.evaluate(s));
+    }
+}
+
+

+ 2 - 3
src/main/java/com/winhc/bigdata/udf/id_trans.java

@@ -18,7 +18,7 @@ public class id_trans extends UDF {
         }
         }
         if (isNumeric(id.substring(0,id.length() - 1))) {
         if (isNumeric(id.substring(0,id.length() - 1))) {
             if (id.length() == 18) {
             if (id.length() == 18) {
-                return id;
+                return id.replaceAll("\\*","X");
             } else if (id.length() == 15) {
             } else if (id.length() == 15) {
                 return trans15bitTo18bit(id);
                 return trans15bitTo18bit(id);
             }
             }
@@ -101,8 +101,7 @@ public class id_trans extends UDF {
     }
     }
 
 
     public static void main(String[] args) {
     public static void main(String[] args) {
-        String id = "5101025409306126";
-        System.out.println(isNumeric(id));
+        String id = "43010219570921303*";
         id_trans n = new id_trans();
         id_trans n = new id_trans();
         System.out.println(n.evaluate(id));
         System.out.println(n.evaluate(id));
     }
     }