|
|
|
@ -30,6 +30,7 @@ public class CityScreenCopy {
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 生成随机字符串
|
|
|
|
|
*
|
|
|
|
|
* @param len
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
@ -47,34 +48,49 @@ public class CityScreenCopy {
|
|
|
|
|
return randomString.toString();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static DataEaseModel dm = new DataEaseModel();
|
|
|
|
|
|
|
|
|
|
public static void main(String[] args) {
|
|
|
|
|
LocalMysqlConnectUtil.Init();
|
|
|
|
|
|
|
|
|
|
//一、先删除后插入保持健康:保留:【云南省教育决策支持系统【市州】】,删除掉云南省教育决策支持系统【市州】+昆明市,云南省教育决策支持系统【市州】+楚雄州等数据
|
|
|
|
|
String sql = "select * from data_visualization_info where name like '%" + dataVisualizationName + "%' and name <>'" + dataVisualizationName + "'";
|
|
|
|
|
List<Record> toDelList = Db.use(DataEaseModel.DB_NAME).find(sql);
|
|
|
|
|
for (Record record : toDelList) {
|
|
|
|
|
long id = record.getLong("id");
|
|
|
|
|
//(1) 删除关联的表core_chart_view
|
|
|
|
|
sql = "delete from core_chart_view where scene_id=?";
|
|
|
|
|
Db.use(DataEaseModel.DB_NAME).update(sql, id);
|
|
|
|
|
//(2) 删除共享链接表
|
|
|
|
|
sql = "delete from xpack_share WHERE resource_id=?";
|
|
|
|
|
Db.use(DataEaseModel.DB_NAME).update(sql, id);
|
|
|
|
|
//(3) 删除主表数据
|
|
|
|
|
Db.use(DataEaseModel.DB_NAME).deleteById("data_visualization_info", id);
|
|
|
|
|
}
|
|
|
|
|
System.out.println("成功删除城市大屏数据" + toDelList.size() + "条~");
|
|
|
|
|
|
|
|
|
|
// 二、开始全新插入数据
|
|
|
|
|
//1、获取母屏数据
|
|
|
|
|
String sql = "select * from data_visualization_info where name =?";
|
|
|
|
|
sql = "select * from data_visualization_info where name =?";
|
|
|
|
|
Record motherRecord = Db.use(DataEaseModel.DB_NAME).findFirst(sql, dataVisualizationName);
|
|
|
|
|
long motherId = motherRecord.getLong("id");
|
|
|
|
|
//妈妈的细节表
|
|
|
|
|
//母屏细节表
|
|
|
|
|
sql = "select * from core_chart_view where scene_id=?";
|
|
|
|
|
List<Record> motherChartList = Db.use(DataEaseModel.DB_NAME).find(sql, motherId);
|
|
|
|
|
|
|
|
|
|
//妈妈的共享链接
|
|
|
|
|
sql = "SELECT * FROM xpack_share WHERE resource_id=?";
|
|
|
|
|
//母屏共享链接
|
|
|
|
|
sql = "select * from xpack_share where resource_id=?";
|
|
|
|
|
Record motherShareRecord = Db.use(DataEaseModel.DB_NAME).findFirst(sql, motherId);
|
|
|
|
|
|
|
|
|
|
//2、需要生成16个城市,这16个城市是哪些
|
|
|
|
|
DataEaseModel dm = new DataEaseModel();
|
|
|
|
|
List<String> cityNameList = dm.getCityNameList();
|
|
|
|
|
|
|
|
|
|
for (String cityName : cityNameList) {
|
|
|
|
|
//2、需要哪16个城市
|
|
|
|
|
for (String cityName : dm.getCityNameList()) {
|
|
|
|
|
//(1)复制16个大屏
|
|
|
|
|
//复制record对象
|
|
|
|
|
Record cityRecord = new Record().setColumns(motherRecord);
|
|
|
|
|
Record cityRecord = new Record().setColumns(motherRecord);//复制record对象
|
|
|
|
|
cityRecord.set("name", "教育决策支持系统【市州】" + cityName);
|
|
|
|
|
long bigScreenId = getSnowId();
|
|
|
|
|
cityRecord.set("id", bigScreenId);
|
|
|
|
|
Db.save("data_visualization_info", "id", cityRecord);
|
|
|
|
|
|
|
|
|
|
// (2) 复制16个大屏的细节配置信息
|
|
|
|
|
// (2) 复制16个大屏的细节表
|
|
|
|
|
List<Record> writeList = new ArrayList<>();
|
|
|
|
|
for (Record rMotherChart : motherChartList) {
|
|
|
|
|
Record rCityChart = new Record().setColumns(rMotherChart);//克隆出来
|
|
|
|
@ -110,8 +126,10 @@ public class CityScreenCopy {
|
|
|
|
|
Record shareRecord = new Record().setColumns(motherShareRecord);
|
|
|
|
|
shareRecord.set("resource_id", bigScreenId);
|
|
|
|
|
shareRecord.set("id", getSnowId());
|
|
|
|
|
shareRecord.set("uuid",randomString(8));//大小写字母和数字组合,长度为8
|
|
|
|
|
shareRecord.set("uuid", randomString(8));//大小写字母和数字组合,长度为8
|
|
|
|
|
Db.save("xpack_share", "id", shareRecord);
|
|
|
|
|
|
|
|
|
|
System.out.println("完成城市" + cityName + "的数据填充~");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
System.out.println("生成完毕");
|
|
|
|
|