|
|
@ -13,6 +13,7 @@ import com.jfinal.plugin.activerecord.Record;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
|
|
import static com.dsideal.base.DataEase.Model.DataEaseModel.DB_NAME;
|
|
|
|
import static com.dsideal.base.DataEase.Model.DataEaseModel.DB_NAME;
|
|
|
|
|
|
|
|
import static com.dsideal.base.DataEase.Util.Step3_CopyBigScreen.*;
|
|
|
|
|
|
|
|
|
|
|
|
public class Step2_CopyFilter {
|
|
|
|
public class Step2_CopyFilter {
|
|
|
|
//DataEase部署的地址
|
|
|
|
//DataEase部署的地址
|
|
|
@ -20,18 +21,7 @@ public class Step2_CopyFilter {
|
|
|
|
|
|
|
|
|
|
|
|
public static DataEaseModel dm = new DataEaseModel();
|
|
|
|
public static DataEaseModel dm = new DataEaseModel();
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* 功能:获取DataEase的Token
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* @return
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
public static String getToken() {
|
|
|
|
|
|
|
|
//读取Data目录下DataEaseLogin.json文件
|
|
|
|
|
|
|
|
JSONObject jo = FileUtil.readJsonFile(PathKit.getRootClassPath() + "/Data/DataEaseLogin.json");
|
|
|
|
|
|
|
|
String url = urlPrefix + "/de2api/login/localLogin";
|
|
|
|
|
|
|
|
String res = HttpUtil.createPost(url).contentType("application/json").body(jo.toString()).execute().body();
|
|
|
|
|
|
|
|
return JSONObject.parseObject(res).getJSONObject("data").getString("token");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
@ -72,46 +62,6 @@ public class Step2_CopyFilter {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* 获取指定大屏的信息
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* @param dataVisualizationNameCity
|
|
|
|
|
|
|
|
* @return
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
public static Record getVisualizationByName(String dataVisualizationNameCity) {
|
|
|
|
|
|
|
|
String sql = "select * from data_visualization_info where name =?";
|
|
|
|
|
|
|
|
return Db.use(DataEaseModel.DB_NAME).findFirst(sql, dataVisualizationNameCity);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* 调用API拷贝大屏
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* @param screenName 目标大屏名称
|
|
|
|
|
|
|
|
* @param id 源大屏ID
|
|
|
|
|
|
|
|
* @param pid 源大屏所属文件夹id
|
|
|
|
|
|
|
|
* @return
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
public static long callApiToCopy(String screenName, long id, long pid) throws InterruptedException {
|
|
|
|
|
|
|
|
//拷贝API
|
|
|
|
|
|
|
|
String url = urlPrefix + "/de2api/dataVisualization/copy";
|
|
|
|
|
|
|
|
JSONObject jo = new JSONObject();
|
|
|
|
|
|
|
|
jo.put("nodeType", "leaf");
|
|
|
|
|
|
|
|
jo.put("name", screenName);
|
|
|
|
|
|
|
|
jo.put("type", "dataV");
|
|
|
|
|
|
|
|
jo.put("id", id);
|
|
|
|
|
|
|
|
jo.put("pid", pid);
|
|
|
|
|
|
|
|
String res = HttpUtil.createPost(url).contentType("application/json")
|
|
|
|
|
|
|
|
.header("x-de-token", getToken()).body(jo.toString()).execute().body();
|
|
|
|
|
|
|
|
Thread.sleep(2000);
|
|
|
|
|
|
|
|
long childId = Long.parseLong(JSONObject.parseObject(res).getString("data"));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//更新pid,没有这步的话,在界面上看不到拷贝出来的大屏!
|
|
|
|
|
|
|
|
String sql = "update data_visualization_info set pid=? where id=?";
|
|
|
|
|
|
|
|
Db.use(DB_NAME).update(sql, pid, childId);
|
|
|
|
|
|
|
|
return childId;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 拷贝城市大屏
|
|
|
|
* 拷贝城市大屏
|
|
|
|
*
|
|
|
|
*
|
|
|
@ -170,23 +120,9 @@ public class Step2_CopyFilter {
|
|
|
|
|
|
|
|
|
|
|
|
//发布共享链接
|
|
|
|
//发布共享链接
|
|
|
|
publishShare(motherShareRecord, childId);
|
|
|
|
publishShare(motherShareRecord, childId);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* 发布共享链接
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* @param motherShareRecord
|
|
|
|
|
|
|
|
* @param childId
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
public static void publishShare(Record motherShareRecord, long childId) {
|
|
|
|
|
|
|
|
//发布共享链接
|
|
|
|
|
|
|
|
Record shareRecord = new Record().setColumns(motherShareRecord);
|
|
|
|
|
|
|
|
shareRecord.set("resource_id", childId);
|
|
|
|
|
|
|
|
shareRecord.set("id", CommonUtil.getSnowId());
|
|
|
|
|
|
|
|
shareRecord.set("uuid", CommonUtil.randomString(8));//大小写字母和数字组合,长度为8
|
|
|
|
|
|
|
|
Db.use(DataEaseModel.DB_NAME).save("xpack_share", "id", shareRecord);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void main(String[] args) throws InterruptedException {
|
|
|
|
public static void main(String[] args) throws InterruptedException {
|
|
|
|
//连接本地数据库系统
|
|
|
|
//连接本地数据库系统
|
|
|
|