.
This commit is contained in:
@@ -9,7 +9,7 @@ import net.tccn.dict.Dict;
|
|||||||
import net.tccn.meta.*;
|
import net.tccn.meta.*;
|
||||||
import net.tccn.plat.MetaDb;
|
import net.tccn.plat.MetaDb;
|
||||||
import net.tccn.plat.MetaPlat;
|
import net.tccn.plat.MetaPlat;
|
||||||
import net.tccn.qtask.TaskEntity;
|
import net.tccn.qtask.DbTask;
|
||||||
import net.tccn.qtask.TaskKit;
|
import net.tccn.qtask.TaskKit;
|
||||||
import net.tccn.user.MetaUser;
|
import net.tccn.user.MetaUser;
|
||||||
import org.redkale.convert.json.JsonConvert;
|
import org.redkale.convert.json.JsonConvert;
|
||||||
@@ -44,7 +44,7 @@ public final class MetaKit {
|
|||||||
@Getter
|
@Getter
|
||||||
private static List<MetaUser> users;
|
private static List<MetaUser> users;
|
||||||
@Getter
|
@Getter
|
||||||
private static List<TaskEntity> taskEntities;
|
private static List<DbTask> taskEntities;
|
||||||
@Getter
|
@Getter
|
||||||
private static List<Dict> dicts;
|
private static List<Dict> dicts;
|
||||||
|
|
||||||
@@ -60,7 +60,7 @@ public final class MetaKit {
|
|||||||
reload(DbAccount.class);
|
reload(DbAccount.class);
|
||||||
reload(MetaPlat.class);
|
reload(MetaPlat.class);
|
||||||
reload(MetaUser.class);
|
reload(MetaUser.class);
|
||||||
reload(TaskEntity.class);
|
reload(DbTask.class);
|
||||||
reload(Dict.class);
|
reload(Dict.class);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -122,8 +122,8 @@ public final class MetaKit {
|
|||||||
Type type = new TypeToken<List<MetaUser>>() {
|
Type type = new TypeToken<List<MetaUser>>() {
|
||||||
}.getType();
|
}.getType();
|
||||||
users = FileKit.readAs(file, type);;
|
users = FileKit.readAs(file, type);;
|
||||||
} else if (TaskEntity.class == clazz) {
|
} else if (DbTask.class == clazz) {
|
||||||
Type type = new TypeToken<List<TaskEntity>>() {
|
Type type = new TypeToken<List<DbTask>>() {
|
||||||
}.getType();
|
}.getType();
|
||||||
taskEntities = FileKit.readAs(file, type);;
|
taskEntities = FileKit.readAs(file, type);;
|
||||||
} else if (Dict.class == clazz) {
|
} else if (Dict.class == clazz) {
|
||||||
@@ -139,8 +139,8 @@ public final class MetaKit {
|
|||||||
else if (MetaDb.class == clazz) dbPlats = DbAccount.dao.find();
|
else if (MetaDb.class == clazz) dbPlats = DbAccount.dao.find();
|
||||||
else if (MetaPlat.class == clazz) sysPlats = MetaPlat.dao.find();
|
else if (MetaPlat.class == clazz) sysPlats = MetaPlat.dao.find();
|
||||||
else if (MetaUser.class == clazz) users = MetaUser.dao.find();
|
else if (MetaUser.class == clazz) users = MetaUser.dao.find();
|
||||||
else if (TaskEntity.class == clazz) {
|
else if (DbTask.class == clazz) {
|
||||||
taskEntities = TaskEntity.dao.find();
|
taskEntities = DbTask.dao.find();
|
||||||
TaskKit.init();
|
TaskKit.init();
|
||||||
} else if (Dict.class == clazz) {
|
} else if (Dict.class == clazz) {
|
||||||
dicts = Dict.dao.find();
|
dicts = Dict.dao.find();
|
||||||
@@ -159,7 +159,7 @@ public final class MetaKit {
|
|||||||
cacheSave(DbAccount.class);
|
cacheSave(DbAccount.class);
|
||||||
cacheSave(MetaPlat.class);
|
cacheSave(MetaPlat.class);
|
||||||
cacheSave(MetaUser.class);
|
cacheSave(MetaUser.class);
|
||||||
cacheSave(TaskEntity.class);
|
cacheSave(DbTask.class);
|
||||||
cacheSave(Dict.class);
|
cacheSave(Dict.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -171,7 +171,7 @@ public final class MetaKit {
|
|||||||
else if (DbAccount.class == clazz) list = dbPlats;
|
else if (DbAccount.class == clazz) list = dbPlats;
|
||||||
else if (MetaPlat.class == clazz) list = sysPlats;
|
else if (MetaPlat.class == clazz) list = sysPlats;
|
||||||
else if (MetaUser.class == clazz) list = users;
|
else if (MetaUser.class == clazz) list = users;
|
||||||
else if (TaskEntity.class == clazz) list = taskEntities;
|
else if (DbTask.class == clazz) list = taskEntities;
|
||||||
else if (Dict.class == clazz) list = dicts;
|
else if (Dict.class == clazz) list = dicts;
|
||||||
|
|
||||||
if (list == null || list.size() == 0) return;
|
if (list == null || list.size() == 0) return;
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
package net.tccn.base;
|
package net.tccn.base;
|
||||||
|
|
||||||
|
import net.tccn.base.dbq.jdbc.api.DbSource;
|
||||||
|
import net.tccn.base.dbq.jdbc.api.DbSourceMysql;
|
||||||
|
|
||||||
import java.lang.reflect.Array;
|
import java.lang.reflect.Array;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -12,6 +15,7 @@ public class Utils {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 将集合数组合并到一个Set<T> 集合中
|
* 将集合数组合并到一个Set<T> 集合中
|
||||||
|
*
|
||||||
* @param <T> 泛型
|
* @param <T> 泛型
|
||||||
* @param streams 集合数组
|
* @param streams 集合数组
|
||||||
* @return
|
* @return
|
||||||
@@ -26,6 +30,7 @@ public class Utils {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 将字符串第一个字母转大写
|
* 将字符串第一个字母转大写
|
||||||
|
*
|
||||||
* @param str 待转换字符串
|
* @param str 待转换字符串
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@@ -36,6 +41,7 @@ public class Utils {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 转化集合为数组,带泛型支持
|
* 转化集合为数组,带泛型支持
|
||||||
|
*
|
||||||
* @param values 集合
|
* @param values 集合
|
||||||
* @param <T> 泛型
|
* @param <T> 泛型
|
||||||
* @return
|
* @return
|
||||||
@@ -53,6 +59,7 @@ public class Utils {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 转化集合为数组,带泛型支持
|
* 转化集合为数组,带泛型支持
|
||||||
|
*
|
||||||
* @param values 集合
|
* @param values 集合
|
||||||
* @param <T> 泛型
|
* @param <T> 泛型
|
||||||
* @return
|
* @return
|
||||||
@@ -66,13 +73,12 @@ public class Utils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @param type 待加载的class 类型
|
* @param type 待加载的class 类型
|
||||||
* @param name class 的实现名称
|
* @param name class 的实现名称
|
||||||
* @param <T> 泛型<T>
|
* @param <T> 泛型<T>
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public static <T extends IService> T getDbSource(Class<T> type, String name) {
|
public static <T extends DbSource> T getDbSource(Class<T> type, String name) {
|
||||||
ServiceLoader<T> loader = ServiceLoader.load(type);
|
ServiceLoader<T> loader = ServiceLoader.load(type);
|
||||||
Iterator<T> iterator = loader.iterator();
|
Iterator<T> iterator = loader.iterator();
|
||||||
|
|
||||||
@@ -82,6 +88,11 @@ public class Utils {
|
|||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*if ("mysql".equalsIgnoreCase(name)) {
|
||||||
|
return (T) new DbSourceMysql();
|
||||||
|
}*/
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import net.tccn.base.arango.Doc;
|
|||||||
import org.redkale.convert.ConvertColumn;
|
import org.redkale.convert.ConvertColumn;
|
||||||
|
|
||||||
import javax.persistence.Table;
|
import javax.persistence.Table;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 数据库平台
|
* 数据库平台
|
||||||
@@ -12,7 +13,7 @@ import javax.persistence.Table;
|
|||||||
* @author: liangxianyou at 2018/11/14 12:58.
|
* @author: liangxianyou at 2018/11/14 12:58.
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
@Table(name = "db_plat", catalog = "db_meta")
|
@Table(name = "MetaDb", catalog = "db_meta")
|
||||||
public class DbAccount extends Doc<DbAccount> {
|
public class DbAccount extends Doc<DbAccount> {
|
||||||
public static DbAccount dao = dao(DbAccount.class);
|
public static DbAccount dao = dao(DbAccount.class);
|
||||||
|
|
||||||
@@ -22,7 +23,8 @@ public class DbAccount extends Doc<DbAccount> {
|
|||||||
private String url; //数据库连接地址
|
private String url; //数据库连接地址
|
||||||
private String user; //账号
|
private String user; //账号
|
||||||
private String pwd; //密码
|
private String pwd; //密码
|
||||||
private String[] catalogs; //库
|
private List<String> catalogs; //库
|
||||||
|
private Integer status;//状态 1启用, 0 未启用
|
||||||
|
|
||||||
//----------------------------
|
//----------------------------
|
||||||
private boolean tmp; // TODO: 处理临时连接对象
|
private boolean tmp; // TODO: 处理临时连接对象
|
||||||
|
|||||||
@@ -9,9 +9,9 @@ import javax.persistence.Table;
|
|||||||
* @author: liangxianyou at 2018/11/13 14:59.
|
* @author: liangxianyou at 2018/11/13 14:59.
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
@Table(name = "qtask", catalog = "db_dev")
|
@Table(name = "DbTask", catalog = "db_meta")
|
||||||
public class Qtask extends Doc<Qtask> {
|
public class DbTask extends Doc<DbTask> {
|
||||||
public static Qtask dao = dao(Qtask.class);
|
public static DbTask dao = dao(DbTask.class);
|
||||||
|
|
||||||
private String queryId; //查询id
|
private String queryId; //查询id
|
||||||
private String name; //业务名称
|
private String name; //业务名称
|
||||||
@@ -2,6 +2,7 @@ package net.tccn.plat;
|
|||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import net.tccn.base.arango.Doc;
|
import net.tccn.base.arango.Doc;
|
||||||
|
import org.redkale.convert.ConvertColumn;
|
||||||
|
|
||||||
import javax.persistence.Table;
|
import javax.persistence.Table;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -11,7 +12,7 @@ import java.util.List;
|
|||||||
* @author: liangxianyou at 2018/11/14 12:58.
|
* @author: liangxianyou at 2018/11/14 12:58.
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
@Table(name = "MetaDb", catalog = "db_dev")
|
@Table(name = "MetaDb", catalog = "db_meta")
|
||||||
public class MetaDb extends Doc<MetaDb> {
|
public class MetaDb extends Doc<MetaDb> {
|
||||||
public static MetaDb dao = dao(MetaDb.class);
|
public static MetaDb dao = dao(MetaDb.class);
|
||||||
|
|
||||||
@@ -21,6 +22,22 @@ public class MetaDb extends Doc<MetaDb> {
|
|||||||
private String url; //数据库连接地址
|
private String url; //数据库连接地址
|
||||||
private String user; //账号
|
private String user; //账号
|
||||||
private String pwd; //密码
|
private String pwd; //密码
|
||||||
private List<String> catalogs; //库
|
private String[] catalogs; //库
|
||||||
private Integer status;//状态 1启用, 0 未启用
|
private Integer status;//状态 1启用, 0 未启用
|
||||||
|
|
||||||
|
public String accountKey() {
|
||||||
|
int start = url.indexOf("//") + 2;
|
||||||
|
int end = url.indexOf("/", start);
|
||||||
|
int endDef = url.indexOf("?", end);
|
||||||
|
if (endDef == -1) {
|
||||||
|
endDef = url.length();
|
||||||
|
}
|
||||||
|
String host = url.substring(start, end == -1 ? url.length() : end);
|
||||||
|
return user + ":" + pwd + "@" + host;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ConvertColumn(ignore = true)
|
||||||
|
public String getPwd() {
|
||||||
|
return pwd;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,9 +9,9 @@ import javax.persistence.Table;
|
|||||||
* Created by liangxianyou at 2019/4/20 20:04.
|
* Created by liangxianyou at 2019/4/20 20:04.
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
@Table(name = "qtask", catalog = "db_meta")
|
@Table(name = "DbTask", catalog = "db_meta")
|
||||||
public class TaskEntity extends Doc<TaskEntity> {
|
public class DbTask extends Doc<DbTask> {
|
||||||
public static TaskEntity dao = dao(TaskEntity.class);
|
public static DbTask dao = dao(DbTask.class);
|
||||||
|
|
||||||
private String name; // 任务标识码
|
private String name; // 任务标识码
|
||||||
private String title; // 任务名称
|
private String title; // 任务名称
|
||||||
@@ -14,7 +14,7 @@ import java.util.Optional;
|
|||||||
*/
|
*/
|
||||||
public class TaskKit {
|
public class TaskKit {
|
||||||
static final JsonConvert convert = JsonConvert.root();
|
static final JsonConvert convert = JsonConvert.root();
|
||||||
private static List<TaskEntity> taskEntities;
|
private static List<DbTask> taskEntities;
|
||||||
|
|
||||||
static {
|
static {
|
||||||
init();
|
init();
|
||||||
@@ -25,11 +25,11 @@ public class TaskKit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static Task buildTask(String name, String platToken, Kv para) {
|
public static Task buildTask(String name, String platToken, Kv para) {
|
||||||
TaskEntity taskEntity = getTaskEntity(name, platToken);
|
DbTask taskEntity = getTaskEntity(name, platToken);
|
||||||
return buildTask(taskEntity, para);
|
return buildTask(taskEntity, para);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Task buildTask(TaskEntity taskEntity, Kv para) {
|
public static Task buildTask(DbTask taskEntity, Kv para) {
|
||||||
Task task = new Task();
|
Task task = new Task();
|
||||||
task.setName(taskEntity.getName());
|
task.setName(taskEntity.getName());
|
||||||
task.setTitle(taskEntity.getTitle());
|
task.setTitle(taskEntity.getTitle());
|
||||||
@@ -51,11 +51,11 @@ public class TaskKit {
|
|||||||
return task;
|
return task;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static TaskEntity getTaskEntity(String name, String platToken) {
|
public static DbTask getTaskEntity(String name, String platToken) {
|
||||||
Objects.requireNonNull(name);
|
Objects.requireNonNull(name);
|
||||||
Objects.requireNonNull(platToken);
|
Objects.requireNonNull(platToken);
|
||||||
|
|
||||||
Optional<TaskEntity> any = taskEntities.stream()
|
Optional<DbTask> any = taskEntities.stream()
|
||||||
.filter(x -> name.equals(x.getName()) && MetaKit.getPlatId(platToken).equals(x.getSysPlatId()))
|
.filter(x -> name.equals(x.getName()) && MetaKit.getPlatId(platToken).equals(x.getSysPlatId()))
|
||||||
.findAny();
|
.findAny();
|
||||||
return any.get();
|
return any.get();
|
||||||
@@ -66,7 +66,7 @@ public class TaskKit {
|
|||||||
return QRuner.query(task);
|
return QRuner.query(task);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Object taskRun(TaskEntity entity) {
|
public static Object taskRun(DbTask entity) {
|
||||||
Task task = buildTask(entity, Kv.of());
|
Task task = buildTask(entity, Kv.of());
|
||||||
return QRuner.query(task);
|
return QRuner.query(task);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,19 +13,19 @@ import org.redkale.util.Comment;
|
|||||||
public class _QtaskService extends BaseService {
|
public class _QtaskService extends BaseService {
|
||||||
|
|
||||||
@Comment("qtask列表")
|
@Comment("qtask列表")
|
||||||
public JBean list(TaskEntity task, Flipper flipper, @RestParam(name = "platToken") String token) {
|
public JBean list(DbTask task, Flipper flipper, @RestParam(name = "platToken") String token) {
|
||||||
if (task == null) {
|
if (task == null) {
|
||||||
task = new TaskEntity();
|
task = new DbTask();
|
||||||
}
|
}
|
||||||
task.setSysPlatId(platId(token));
|
task.setSysPlatId(platId(token));
|
||||||
PageBean<TaskEntity> page = TaskEntity.dao.findPage(task, flipper);
|
PageBean<DbTask> page = DbTask.dao.findPage(task, flipper);
|
||||||
|
|
||||||
|
|
||||||
return JBean.by(0, "", page);
|
return JBean.by(0, "", page);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Comment("qtask保存")
|
@Comment("qtask保存")
|
||||||
public JBean save(TaskEntity task, @RestParam(name = "platToken") String token) {
|
public JBean save(DbTask task, @RestParam(name = "platToken") String token) {
|
||||||
JBean jBean = new JBean();
|
JBean jBean = new JBean();
|
||||||
|
|
||||||
do {
|
do {
|
||||||
@@ -35,11 +35,11 @@ public class _QtaskService extends BaseService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 同平台name 唯一校验
|
// 同平台name 唯一校验
|
||||||
TaskEntity bean = new TaskEntity();
|
DbTask bean = new DbTask();
|
||||||
bean.setSysPlatId(platId(token));
|
bean.setSysPlatId(platId(token));
|
||||||
bean.setName(task.getName());
|
bean.setName(task.getName());
|
||||||
|
|
||||||
TaskEntity entity = TaskEntity.dao.findFirst(bean);
|
DbTask entity = DbTask.dao.findFirst(bean);
|
||||||
if (entity != null && !entity.getKey().equals(task.getKey())) {
|
if (entity != null && !entity.getKey().equals(task.getKey())) {
|
||||||
jBean.set(-1, "任务标识码被占用");
|
jBean.set(-1, "任务标识码被占用");
|
||||||
break;
|
break;
|
||||||
@@ -60,7 +60,7 @@ public class _QtaskService extends BaseService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Comment("debug调试接口")
|
@Comment("debug调试接口")
|
||||||
public JBean debug(TaskEntity task, @RestParam(name = "platToken") String token) {
|
public JBean debug(DbTask task, @RestParam(name = "platToken") String token) {
|
||||||
JBean jBean = new JBean();
|
JBean jBean = new JBean();
|
||||||
|
|
||||||
Object res = TaskKit.taskRun(task);
|
Object res = TaskKit.taskRun(task);
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import net.tccn.dict.Dict;
|
|||||||
import net.tccn.dict.DictKit;
|
import net.tccn.dict.DictKit;
|
||||||
import net.tccn.meta.MetaService;
|
import net.tccn.meta.MetaService;
|
||||||
import net.tccn.meta.MetaTable;
|
import net.tccn.meta.MetaTable;
|
||||||
import net.tccn.qtask.TaskEntity;
|
import net.tccn.qtask.DbTask;
|
||||||
import net.tccn.qtask.TaskKit;
|
import net.tccn.qtask.TaskKit;
|
||||||
import net.tccn.user.MetaUser;
|
import net.tccn.user.MetaUser;
|
||||||
import org.apache.poi.ss.usermodel.Workbook;
|
import org.apache.poi.ss.usermodel.Workbook;
|
||||||
@@ -284,7 +284,7 @@ public class RunTest<T> {
|
|||||||
|
|
||||||
//@Test
|
//@Test
|
||||||
public void taskRunTest() {
|
public void taskRunTest() {
|
||||||
TaskEntity entity = TaskEntity.dao.findByKey("23074420");
|
DbTask entity = DbTask.dao.findByKey("23074420");
|
||||||
|
|
||||||
if (entity != null) {
|
if (entity != null) {
|
||||||
System.out.printf("------------------------%n%s%n------------------------%n", convert.convertTo(TaskKit.taskRun(entity)));
|
System.out.printf("------------------------%n%s%n------------------------%n", convert.convertTo(TaskKit.taskRun(entity)));
|
||||||
|
|||||||
Reference in New Issue
Block a user