|
|
|
@ -18,11 +18,12 @@ public class DataSetFakeData {
|
|
|
|
|
* @param table_name
|
|
|
|
|
* @param area_name
|
|
|
|
|
*/
|
|
|
|
|
public static void CopyData(String table_name, String area_name, String source_area_name) {
|
|
|
|
|
public static void CopyData(String table_name, String source_area_name, String area_name, String parent_name) {
|
|
|
|
|
String sql = "select * from `" + table_name + "` where `行政区划`='" + source_area_name + "'";
|
|
|
|
|
List<Record> list = Db.use(DataEaseModel.DB_NAME).find(sql);
|
|
|
|
|
for (Record r : list) {
|
|
|
|
|
r.set("行政区划", area_name);
|
|
|
|
|
r.set("上级行政区划", parent_name);
|
|
|
|
|
r.remove("id");
|
|
|
|
|
}
|
|
|
|
|
Db.use(DataEaseModel.DB_NAME).batchSave(table_name, list, 100);
|
|
|
|
@ -58,13 +59,9 @@ public class DataSetFakeData {
|
|
|
|
|
String table_name = record.getStr("table_name");
|
|
|
|
|
System.out.println("正在处理数据集:" + table_name);
|
|
|
|
|
//检查这个行政区划,在本数据表中是不是存在过,判断办法是 列名: `行政区划`= area_name,如果存在则不作处理,否则拷贝昆明市的数据
|
|
|
|
|
String sql = "select count(1) from `" + table_name + "` where `行政区划`='" + area_name + "'";
|
|
|
|
|
int cnt = Db.use(DataEaseModel.DB_NAME).queryInt(sql);
|
|
|
|
|
if (cnt == 0) {
|
|
|
|
|
CopyData(table_name, area_name, "昆明市");
|
|
|
|
|
} else {
|
|
|
|
|
System.out.println("数据集:" + table_name + " 已经存在,跳过");
|
|
|
|
|
}
|
|
|
|
|
String sql = "delete from `" + table_name + "` where `行政区划`='" + area_name + "'";
|
|
|
|
|
Db.use(DataEaseModel.DB_NAME).update(sql);
|
|
|
|
|
CopyData(table_name, "昆明市", area_name, "云南省");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//获取所有县区
|
|
|
|
@ -72,6 +69,10 @@ public class DataSetFakeData {
|
|
|
|
|
for (Record rArea : listArea) {
|
|
|
|
|
//城市名称
|
|
|
|
|
String area_name = rArea.getStr("area_name");
|
|
|
|
|
String parent_id = rArea.getStr("parent_id");
|
|
|
|
|
//隶属哪个市州
|
|
|
|
|
Record parentRecord = dm.getAreaById(parent_id);
|
|
|
|
|
String parent_name = parentRecord.getStr("area_name");
|
|
|
|
|
//如果在保留名单中,则跳过
|
|
|
|
|
if (keepArea.contains(area_name)) {
|
|
|
|
|
continue;
|
|
|
|
@ -83,13 +84,9 @@ public class DataSetFakeData {
|
|
|
|
|
String table_name = record.getStr("table_name");
|
|
|
|
|
System.out.println(area_name + "正在处理数据集:" + table_name);
|
|
|
|
|
//检查这个行政区划,在本数据表中是不是存在过,判断办法是 列名: `行政区划`= area_name,如果存在则不作处理,否则拷贝昆明市的数据
|
|
|
|
|
String sql = "select count(1) from `" + table_name + "` where `行政区划`='" + area_name + "'";
|
|
|
|
|
int cnt = Db.use(DataEaseModel.DB_NAME).queryInt(sql);
|
|
|
|
|
if (cnt == 0) {
|
|
|
|
|
CopyData(table_name, area_name, "寻甸县");
|
|
|
|
|
} else {
|
|
|
|
|
System.out.println("数据集:" + table_name + " 已经存在,跳过");
|
|
|
|
|
}
|
|
|
|
|
String sql = "delete from `" + table_name + "` where `行政区划`='" + area_name + "'";
|
|
|
|
|
Db.use(DataEaseModel.DB_NAME).update(sql);
|
|
|
|
|
CopyData(table_name, "寻甸县", area_name, parent_name);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|