|
@@ -126,7 +126,7 @@ public class CanalScheduling implements Runnable, ApplicationContextAware {
|
|
|
if (column == null) {
|
|
|
return;
|
|
|
}
|
|
|
- map.put(StrUtil.toCamelCase(column.getName()), JdbcTypeUtil.typeConvert(tableName, column.getName(), column.getValue(), column.getSqlType(), column.getMysqlType()));
|
|
|
+ map.put(StrUtil.lowerFirst(StrUtil.toCamelCase(column.getName())), JdbcTypeUtil.typeConvert(tableName, column.getName(), column.getValue(), column.getSqlType(), column.getMysqlType()));
|
|
|
});
|
|
|
return map;
|
|
|
}
|
|
@@ -142,7 +142,10 @@ public class CanalScheduling implements Runnable, ApplicationContextAware {
|
|
|
if (!StrUtil.equalsAnyIgnoreCase(table, "ship_recognition",
|
|
|
"alert",
|
|
|
"monitor_point",
|
|
|
- "ship_static_info")) {
|
|
|
+ "ship_static_info",
|
|
|
+ "illegal_ship",
|
|
|
+ "sem_instrument",
|
|
|
+ "sem_instrument_test")) {
|
|
|
return;
|
|
|
}
|
|
|
|
|
@@ -177,6 +180,20 @@ public class CanalScheduling implements Runnable, ApplicationContextAware {
|
|
|
afterDataMap.put("monitorPointName", data.get("name"));
|
|
|
}
|
|
|
client.createDocument(ElasticConstants.SO2_ALERT, Convert.toStr(afterDataMap.get("id")), afterDataMap);
|
|
|
+ } else if (StrUtil.equalsIgnoreCase(database, "ais_database") && (StrUtil.equalsIgnoreCase(table, "sem_instrument_test") || StrUtil.equalsIgnoreCase(table, "sem_instrument"))) {
|
|
|
+ // 嗅探系统-站点信息
|
|
|
+ client.createDocument(ElasticConstants.AIS_SEM_INSTRUMENT, Convert.toStr(afterDataMap.get("id")), afterDataMap);
|
|
|
+ } else if (StrUtil.equalsIgnoreCase(database, "ais_database") && StrUtil.equalsIgnoreCase(table, "illegal_ship")) {
|
|
|
+ // 嗅探系统-违规船舶
|
|
|
+ // 查询站点信息
|
|
|
+ Map<String, Object> sem = client.getDocById(ElasticConstants.AIS_SEM_INSTRUMENT, Convert.toStr(afterDataMap.get("semId")), "name");
|
|
|
+ if (sem != null && ObjectUtil.equal(sem.get("code"), 200)) {
|
|
|
+ Map<String, String> data = Convert.toMap(String.class, String.class, sem.get("data"));
|
|
|
+ afterDataMap.put("semName", data.get("name"));
|
|
|
+ }
|
|
|
+ // 初始化设为未上传状态
|
|
|
+ afterDataMap.put("uploadFlag", 0);
|
|
|
+ client.createDocument(ElasticConstants.AIS_ILLEGAL_SHIP, Convert.toStr(afterDataMap.get("id")), afterDataMap);
|
|
|
}
|
|
|
break;
|
|
|
case UPDATE:
|
|
@@ -191,6 +208,18 @@ public class CanalScheduling implements Runnable, ApplicationContextAware {
|
|
|
} else if (StrUtil.equalsIgnoreCase(database, "so2") && StrUtil.equalsIgnoreCase(table, "alert")) {
|
|
|
// 违规船舶
|
|
|
client.updateDocument(ElasticConstants.SO2_ALERT, Convert.toStr(afterDataMap.get("id")), afterDataMap);
|
|
|
+ } else if (StrUtil.equalsIgnoreCase(database, "ais_database") && (StrUtil.equalsIgnoreCase(table, "sem_instrument_test") || StrUtil.equalsIgnoreCase(table, "sem_instrument"))) {
|
|
|
+ // 嗅探系统-站点信息
|
|
|
+ client.updateDocument(ElasticConstants.AIS_SEM_INSTRUMENT, Convert.toStr(afterDataMap.get("id")), afterDataMap);
|
|
|
+ } else if (StrUtil.equalsIgnoreCase(database, "ais_database") && StrUtil.equalsIgnoreCase(table, "illegal_ship")) {
|
|
|
+ // 嗅探系统-违规船舶
|
|
|
+ // 查询站点信息
|
|
|
+ Map<String, Object> sem = client.getDocById(ElasticConstants.AIS_SEM_INSTRUMENT, Convert.toStr(afterDataMap.get("semId")), "name");
|
|
|
+ if (sem != null && ObjectUtil.equal(sem.get("code"), 200)) {
|
|
|
+ Map<String, String> data = Convert.toMap(String.class, String.class, sem.get("data"));
|
|
|
+ afterDataMap.put("semName", data.get("name"));
|
|
|
+ }
|
|
|
+ client.updateDocument(ElasticConstants.AIS_ILLEGAL_SHIP, Convert.toStr(afterDataMap.get("id")), afterDataMap);
|
|
|
}
|
|
|
break;
|
|
|
case DELETE:
|
|
@@ -205,6 +234,12 @@ public class CanalScheduling implements Runnable, ApplicationContextAware {
|
|
|
} else if (StrUtil.equalsIgnoreCase(database, "so2") && StrUtil.equalsIgnoreCase(table, "alert")) {
|
|
|
// 违规船舶
|
|
|
client.deleteDocument(ElasticConstants.SO2_ALERT, Convert.toStr(afterDataMap.get("id")));
|
|
|
+ } else if (StrUtil.equalsIgnoreCase(database, "ais_database") && (StrUtil.equalsIgnoreCase(table, "sem_instrument_test") || StrUtil.equalsIgnoreCase(table, "sem_instrument"))) {
|
|
|
+ // 嗅探系统-站点信息
|
|
|
+ client.deleteDocument(ElasticConstants.AIS_SEM_INSTRUMENT, Convert.toStr(afterDataMap.get("id")));
|
|
|
+ } else if (StrUtil.equalsIgnoreCase(database, "ais_database") && StrUtil.equalsIgnoreCase(table, "illegal_ship")) {
|
|
|
+ // 嗅探系统-违规船舶
|
|
|
+ client.deleteDocument(ElasticConstants.AIS_ILLEGAL_SHIP, Convert.toStr(afterDataMap.get("id")));
|
|
|
}
|
|
|
break;
|
|
|
default:
|