.
This commit is contained in:
16
src/main/java/net/tccn/meta/MetaExecutor.java
Normal file
16
src/main/java/net/tccn/meta/MetaExecutor.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package net.tccn.meta;
|
||||
|
||||
import net.tccn.base.JBean;
|
||||
import net.tccn.qtask.QTask;
|
||||
|
||||
/**
|
||||
* Created by liangxianyou at 2019/3/7 16:13.
|
||||
*/
|
||||
public class MetaExecutor {
|
||||
|
||||
public JBean execute(Task task) {
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
package net.tccn.meta;
|
||||
|
||||
import net.tccn.base.Kv;
|
||||
import net.tccn.dbq.DbPlat;
|
||||
import net.tccn.dbq.jdbc.api.DbAccount;
|
||||
import net.tccn.dbq.Field;
|
||||
import net.tccn.dbq.fbean.FilterType;
|
||||
|
||||
@@ -13,6 +13,7 @@ import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.function.BiFunction;
|
||||
import java.util.function.Function;
|
||||
import java.util.function.Predicate;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@@ -25,14 +26,14 @@ public class MetaKit {
|
||||
private static List<MetaLink> metaLinks;
|
||||
private static List<MetaService> metaServices;
|
||||
|
||||
private static List<DbPlat> dbPlats;
|
||||
private static List<DbAccount> dbPlats;
|
||||
|
||||
static {
|
||||
metaTables = MetaTable.dao.find();
|
||||
metaLinks = MetaLink.dao.find();
|
||||
metaServices = MetaService.dao.find();
|
||||
|
||||
dbPlats = DbPlat.dao.find();
|
||||
dbPlats = DbAccount.dao.find();
|
||||
}
|
||||
|
||||
//----- get/set ----
|
||||
@@ -56,11 +57,11 @@ public class MetaKit {
|
||||
return metaServices;
|
||||
}
|
||||
|
||||
public static List<DbPlat> getDbPlats() {
|
||||
public static List<DbAccount> getDbPlats() {
|
||||
return dbPlats;
|
||||
}
|
||||
|
||||
public static void setDbPlats(List<DbPlat> dbPlats) {
|
||||
public static void setDbPlats(List<DbAccount> dbPlats) {
|
||||
MetaKit.dbPlats = dbPlats;
|
||||
}
|
||||
|
||||
@@ -74,7 +75,7 @@ public class MetaKit {
|
||||
* @param alias
|
||||
* @return
|
||||
*/
|
||||
private static MetaTable metaTableByAlias(String alias) {
|
||||
public static MetaTable getMetaTableByAlias(String alias) {
|
||||
Optional<MetaTable> table = metaTables.stream().filter(x -> x.getAlias().equals(alias)).findAny();
|
||||
return table.orElse(null);
|
||||
}
|
||||
@@ -114,9 +115,9 @@ public class MetaKit {
|
||||
Optional<MetaService> service = metaServices.stream().filter(x -> x.getName().equals(name)).findAny();
|
||||
//处理业务逻辑
|
||||
service.ifPresent(x -> {
|
||||
x.setMetaTable(metaTableByAlias(x.getTable()));
|
||||
x.setMetaLinks(metaLinks(x.getLinks()));
|
||||
x.setTables(metaTables(x.getMetaLinks()));
|
||||
//x.setMetaTable(metaTableByAlias(x.getTable()));
|
||||
//x.setMetaLinks(metaLinks(x.getLinks()));
|
||||
//x.setTables(metaTables(x.getMetaLinks()));
|
||||
});
|
||||
return service.orElse(null);
|
||||
}
|
||||
@@ -149,7 +150,7 @@ public class MetaKit {
|
||||
|
||||
public static Function<String, Field> getField = (n) -> {
|
||||
String[] arr = n.split("[.]");
|
||||
MetaTable metaTable = metaTableByAlias(arr[0]);
|
||||
MetaTable metaTable = getMetaTableByAlias(arr[0]);
|
||||
return metaTable.getItems().stream().filter(x -> x.getName().equals(arr[1])).findAny().orElse(null);
|
||||
};
|
||||
|
||||
@@ -229,8 +230,51 @@ public class MetaKit {
|
||||
return t;
|
||||
};
|
||||
|
||||
//showUpdate
|
||||
public static BiFunction<String, List<String>, MetaService> showUpdate = (serviceKey, shows) -> {
|
||||
|
||||
MetaService metaService = metaService(serviceKey);
|
||||
|
||||
MetaService _metaService = MetaService.dao.findByKey(metaService.getKey());
|
||||
_metaService.setShows(shows);
|
||||
_metaService.update();
|
||||
|
||||
metaService.setShows(shows);//更新缓存
|
||||
return metaService;
|
||||
};
|
||||
|
||||
|
||||
public static MetaTable getMetaTableByKey(String key) {
|
||||
return metaTables.stream().filter(x -> x.getKey().equals(key)).findAny().orElse(null);
|
||||
};
|
||||
}
|
||||
|
||||
public static List<MetaLink> getMetaLinks(String t, List<String> shows, List<String> filters) {
|
||||
|
||||
|
||||
Predicate<String> contain = s -> {
|
||||
for (String item : shows) {
|
||||
if (s.equals(item.split("[.]")[0])) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
for (String item : filters) {
|
||||
if (s.equals(item.split("[.]")[0])) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
};
|
||||
|
||||
//得到直接关联
|
||||
//1、直接关联 表: t.equals(x.getTables()[0]) || t.equals(x.getTables()[1]
|
||||
//2、关联且有过滤:
|
||||
//3、关联有展示:
|
||||
List<MetaLink> links = metaLinks.stream()
|
||||
.filter(x -> {
|
||||
return (t.equals(x.getTables()[0]) || t.equals(x.getTables()[1]))
|
||||
&& (contain.test(x.getTables()[0]) || contain.test(x.getTables()[1]));
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
return links;
|
||||
}
|
||||
}
|
||||
|
||||
7
src/main/java/net/tccn/meta/MetaParser.java
Normal file
7
src/main/java/net/tccn/meta/MetaParser.java
Normal file
@@ -0,0 +1,7 @@
|
||||
package net.tccn.meta;
|
||||
|
||||
/**
|
||||
* Created by liangxianyou at 2019/3/7 16:13.
|
||||
*/
|
||||
public class MetaParser {
|
||||
}
|
||||
@@ -16,7 +16,8 @@ public class MetaService extends Doc<MetaService> {
|
||||
|
||||
private String name; //业务标识
|
||||
private String table; //主体表别名
|
||||
private List<String> links; //["link._key1","link._key2"]
|
||||
private String comment; //业务中文名
|
||||
//private List<String> links; //["link._key1","link._key2"]
|
||||
|
||||
|
||||
private List<String> shows = new ArrayList<>();
|
||||
@@ -24,9 +25,9 @@ public class MetaService extends Doc<MetaService> {
|
||||
private List<Map> filters = new ArrayList<>();
|
||||
|
||||
//待组装数据
|
||||
private MetaTable metaTable;
|
||||
private List<MetaLink> metaLinks;//[{alias:"b", table:"dept", link:[mk,lk]}, xxxx]
|
||||
private Map<String, MetaTable> tables;
|
||||
//private MetaTable metaTable;
|
||||
//private List<MetaLink> metaLinks;//[{alias:"b", table:"dept", link:[mk,lk]}, xxxx]
|
||||
//private Map<String, MetaTable> tables;
|
||||
//-------------------------------------------
|
||||
|
||||
public String getName() {
|
||||
@@ -45,13 +46,21 @@ public class MetaService extends Doc<MetaService> {
|
||||
this.table = table;
|
||||
}
|
||||
|
||||
public List<String> getLinks() {
|
||||
public String getComment() {
|
||||
return comment;
|
||||
}
|
||||
|
||||
public void setComment(String comment) {
|
||||
this.comment = comment;
|
||||
}
|
||||
|
||||
/*public List<String> getLinks() {
|
||||
return links;
|
||||
}
|
||||
|
||||
public void setLinks(List<String> links) {
|
||||
this.links = links;
|
||||
}
|
||||
}*/
|
||||
|
||||
public List<String> getShows() {
|
||||
return shows;
|
||||
@@ -77,27 +86,27 @@ public class MetaService extends Doc<MetaService> {
|
||||
this.filters = filters;
|
||||
}
|
||||
|
||||
public MetaTable getMetaTable() {
|
||||
/*public MetaTable getMetaTable() {
|
||||
return metaTable;
|
||||
}
|
||||
|
||||
public void setMetaTable(MetaTable metaTable) {
|
||||
this.metaTable = metaTable;
|
||||
}
|
||||
}*/
|
||||
|
||||
public List<MetaLink> getMetaLinks() {
|
||||
/*public List<MetaLink> getMetaLinks() {
|
||||
return metaLinks;
|
||||
}
|
||||
|
||||
public void setMetaLinks(List<MetaLink> metaLinks) {
|
||||
this.metaLinks = metaLinks;
|
||||
}
|
||||
}*/
|
||||
|
||||
public Map<String, MetaTable> getTables() {
|
||||
/*public Map<String, MetaTable> getTables() {
|
||||
return tables;
|
||||
}
|
||||
|
||||
public void setTables(Map<String, MetaTable> tables) {
|
||||
this.tables = tables;
|
||||
}
|
||||
}*/
|
||||
}
|
||||
|
||||
7
src/main/java/net/tccn/meta/Task.java
Normal file
7
src/main/java/net/tccn/meta/Task.java
Normal file
@@ -0,0 +1,7 @@
|
||||
package net.tccn.meta;
|
||||
|
||||
/**
|
||||
* Created by liangxianyou at 2019/3/7 16:24.
|
||||
*/
|
||||
public class Task {
|
||||
}
|
||||
Reference in New Issue
Block a user