特定の人員と部門のツリーデータに対して、新しいツリーデータの構想を再分割して構築します.
19072 ワード
クラスを新規作成java.
次のクラスを参照すると、ツリーデータ構造フロントに必要な新しいツリーデータを再分割できます.
次のクラスを参照すると、ツリーデータ構造フロントに必要な新しいツリーデータを再分割できます.
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSON;
public class RecursiveRescreening {
public static void main(String[] args) {
String jsonStr = "[{\"num\":\"1000\",\"name\":\"******* \",\"superiorDept\":\"-1\",\"leaderPerNums\":[],\"children\":[{\"num\":\"101\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"42\",\"6\"],\"children\":[{\"num\":\"3\",\"name\":\" \"},{\"num\":\"4\",\"name\":\" 11 \"},{\"num\":\"5\",\"name\":\" \"},{\"num\":\"6\",\"name\":\" \"},{\"num\":\"7\",\"name\":\" 11 \"},{\"num\":\"8\",\"name\":\" \"},{\"num\":\"9\",\"name\":\" \"},{\"num\":\"10\",\"name\":\" \"},{\"num\":\"11\",\"name\":\" \"},{\"num\":\"42\",\"name\":\" \"},{\"num\":\"64\",\"name\":\" \"},{\"num\":\"65\",\"name\":\" 1 \"},{\"num\":\"66\",\"name\":\" \"}]},{\"num\":\"102\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"2\"],\"children\":[{\"num\":\"12\",\"name\":\" 1 \"},{\"num\":\"13\",\"name\":\" \"},{\"num\":\"14\",\"name\":\" 1 \"},{\"num\":\"15\",\"name\":\" \"},{\"num\":\"16\",\"name\":\" \"},{\"num\":\"17\",\"name\":\" \"},{\"num\":\"18\",\"name\":\" \"},{\"num\":\"51\",\"name\":\" 1 \"},{\"num\":\"58\",\"name\":\" \"},{\"num\":\"59\",\"name\":\" \"},{\"num\":\"73\",\"name\":\" \"},{\"num\":\"74\",\"name\":\" \"}]},{\"num\":\"103\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"20\"],\"children\":[{\"num\":\"20\",\"name\":\" \"},{\"num\":\"21\",\"name\":\" \"},{\"num\":\"22\",\"name\":\" \"},{\"num\":\"23\",\"name\":\" \"},{\"num\":\"24\",\"name\":\" \"},{\"num\":\"25\",\"name\":\" \"},{\"num\":\"26\",\"name\":\" \"},{\"num\":\"27\",\"name\":\" \"},{\"num\":\"28\",\"name\":\" \"},{\"num\":\"29\",\"name\":\" \"},{\"num\":\"49\",\"name\":\" \"},{\"num\":\"52\",\"name\":\" \"},{\"num\":\"53\",\"name\":\" \"},{\"num\":\"55\",\"name\":\" \"},{\"num\":\"56\",\"name\":\" \"},{\"num\":\"57\",\"name\":\" \"},{\"num\":\"60\",\"name\":\" \"},{\"num\":\"61\",\"name\":\" \"},{\"num\":\"62\",\"name\":\" \"},{\"num\":\"63\",\"name\":\" \"},{\"num\":\"69\",\"name\":\" \"},{\"num\":\"70\",\"name\":\" \"},{\"num\":\"72\",\"name\":\" \"},{\"num\":\"76\",\"name\":\" \"},{\"num\":\"77\",\"name\":\" \"}]},{\"num\":\"104\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"30\"],\"children\":[{\"num\":\"30\",\"name\":\" \"},{\"num\":\"31\",\"name\":\" \"},{\"num\":\"32\",\"name\":\" \"},{\"num\":\"33\",\"name\":\" \"},{\"num\":\"34\",\"name\":\" \"},{\"num\":\"35\",\"name\":\" \"},{\"num\":\"36\",\"name\":\" \"},{\"num\":\"37\",\"name\":\" \"},{\"num\":\"38\",\"name\":\" \"},{\"num\":\"39\",\"name\":\" \"},{\"num\":\"40\",\"name\":\" \"},{\"num\":\"41\",\"name\":\" \"},{\"num\":\"67\",\"name\":\" \"},{\"num\":\"68\",\"name\":\" \"},{\"num\":\"75\",\"name\":\" \"}]},{\"num\":\"105\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"42\"],\"children\":[{\"num\":\"43\",\"name\":\" \"},{\"num\":\"44\",\"name\":\" \"},{\"num\":\"71\",\"name\":\" \"}]},{\"num\":\"106\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"2\"],\"children\":[{\"num\":\"2\",\"name\":\" \"},{\"num\":\"45\",\"name\":\" \"},{\"num\":\"46\",\"name\":\" \"},{\"num\":\"47\",\"name\":\" \"},{\"num\":\"48\",\"name\":\" \"},{\"num\":\"50\",\"name\":\" \"},{\"num\":\"54\",\"name\":\" \"}]},{\"num\":\"1001\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[],\"children\":[{\"num\":\"1\",\"name\":\" \"}]}]}]";
new RecursiveRescreening().rescreeningDeptAndPersonTree(jsonStr);
}
/**
* String jsonStr
* ="[{\"num\":\"1000\",\"name\":\"******* \",\"superiorDept\":\"-1\",\"leaderPerNums\":[],\"children\":[{\"num\":\"101\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"42\",\"6\"],\"children\":[{\"num\":\"3\",\"name\":\" \"},{\"num\":\"4\",\"name\":\" \"},{\"num\":\"5\",\"name\":\" \"},{\"num\":\"6\",\"name\":\" \"},{\"num\":\"7\",\"name\":\" \"},{\"num\":\"8\",\"name\":\" \"},{\"num\":\"9\",\"name\":\" \"},{\"num\":\"10\",\"name\":\" \"},{\"num\":\"11\",\"name\":\" \"},{\"num\":\"42\",\"name\":\" \"},{\"num\":\"64\",\"name\":\" \"},{\"num\":\"65\",\"name\":\" \"},{\"num\":\"66\",\"name\":\" \"}]},{\"num\":\"102\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"2\"],\"children\":[{\"num\":\"12\",\"name\":\" \"},{\"num\":\"13\",\"name\":\" \"},{\"num\":\"14\",\"name\":\" \"},{\"num\":\"15\",\"name\":\" \"},{\"num\":\"16\",\"name\":\" \"},{\"num\":\"17\",\"name\":\" \"},{\"num\":\"18\",\"name\":\" \"},{\"num\":\"51\",\"name\":\" \"},{\"num\":\"58\",\"name\":\" \"},{\"num\":\"59\",\"name\":\" \"},{\"num\":\"73\",\"name\":\" \"},{\"num\":\"74\",\"name\":\" \"}]},{\"num\":\"103\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"20\"],\"children\":[{\"num\":\"20\",\"name\":\" \"},{\"num\":\"21\",\"name\":\" \"},{\"num\":\"22\",\"name\":\" \"},{\"num\":\"23\",\"name\":\" \"},{\"num\":\"24\",\"name\":\" \"},{\"num\":\"25\",\"name\":\" \"},{\"num\":\"26\",\"name\":\" \"},{\"num\":\"27\",\"name\":\" \"},{\"num\":\"28\",\"name\":\" \"},{\"num\":\"29\",\"name\":\" \"},{\"num\":\"49\",\"name\":\" \"},{\"num\":\"52\",\"name\":\" \"},{\"num\":\"53\",\"name\":\" \"},{\"num\":\"55\",\"name\":\" \"},{\"num\":\"56\",\"name\":\" \"},{\"num\":\"57\",\"name\":\" \"},{\"num\":\"60\",\"name\":\" \"},{\"num\":\"61\",\"name\":\" \"},{\"num\":\"62\",\"name\":\" \"},{\"num\":\"63\",\"name\":\" \"},{\"num\":\"69\",\"name\":\" \"},{\"num\":\"70\",\"name\":\" \"},{\"num\":\"72\",\"name\":\" \"},{\"num\":\"76\",\"name\":\" \"},{\"num\":\"77\",\"name\":\" \"}]},{\"num\":\"104\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"30\"],\"children\":[{\"num\":\"30\",\"name\":\" \"},{\"num\":\"31\",\"name\":\" \"},{\"num\":\"32\",\"name\":\" \"},{\"num\":\"33\",\"name\":\" \"},{\"num\":\"34\",\"name\":\" \"},{\"num\":\"35\",\"name\":\" \"},{\"num\":\"36\",\"name\":\" \"},{\"num\":\"37\",\"name\":\" \"},{\"num\":\"38\",\"name\":\" \"},{\"num\":\"39\",\"name\":\" \"},{\"num\":\"40\",\"name\":\" \"},{\"num\":\"41\",\"name\":\" \"},{\"num\":\"67\",\"name\":\" \"},{\"num\":\"68\",\"name\":\" \"},{\"num\":\"75\",\"name\":\" \"}]},{\"num\":\"105\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"42\"],\"children\":[{\"num\":\"43\",\"name\":\" \"},{\"num\":\"44\",\"name\":\" \"},{\"num\":\"71\",\"name\":\" \"}]},{\"num\":\"106\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[\"2\"],\"children\":[{\"num\":\"2\",\"name\":\" \"},{\"num\":\"45\",\"name\":\" \"},{\"num\":\"46\",\"name\":\" \"},{\"num\":\"47\",\"name\":\" \"},{\"num\":\"48\",\"name\":\" \"},{\"num\":\"50\",\"name\":\" \"},{\"num\":\"54\",\"name\":\" \"}]},{\"num\":\"1001\",\"name\":\" \",\"superiorDept\":\"1000\",\"leaderPerNums\":[],\"children\":[{\"num\":\"1\",\"name\":\" \"}]}]}]";
*
* @param jsonStr
* @return
*/
@SuppressWarnings("unchecked")
public List