|
|
@@ -62,32 +62,46 @@ public class ListenTask {
|
|
|
@Scheduled(cron = "0 */10 * * * *")
|
|
|
public void listen() {
|
|
|
List<Master> masters = new ArrayList<>();
|
|
|
+ List<Master> all = new ArrayList<>();
|
|
|
try {
|
|
|
String resultStr = restTemplate.getForObject(getUrl() + "/v1/master/list?cloudEnabled=true", String.class);
|
|
|
+ String allStr = restTemplate.getForObject(getUrl() + "/v1/master/list", String.class);
|
|
|
ResultListWrap<Master> result = JSON.parseObject(resultStr, new TypeReference<ResultListWrap<Master>>(Master.class) {
|
|
|
});
|
|
|
+ ResultListWrap<Master> allList = JSON.parseObject(allStr, new TypeReference<ResultListWrap<Master>>(Master.class) {
|
|
|
+ });
|
|
|
if (result.isSuccess()) {
|
|
|
masters = result.getContent();
|
|
|
}
|
|
|
+ if (allList.isSuccess()) {
|
|
|
+ masters = allList.getContent();
|
|
|
+ }
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
} finally {
|
|
|
if (CollectionUtils.isEmpty(masters)) {
|
|
|
- ListenDomain listenDomain = new ListenDomain(MACADDRESS, "" );
|
|
|
+ StringBuilder str = new StringBuilder();
|
|
|
+ if (CollectionUtils.isEmpty(all)) {
|
|
|
+ for (Master master : all) {
|
|
|
+ if ("".equals(str.toString())) {
|
|
|
+ str.append(StringUtils.isEmpty(master.getMa_function()) ? master.getMa_name() : master.getMa_function());
|
|
|
+ } else {
|
|
|
+ str.append("、" + (StringUtils.isEmpty(master.getMa_function()) ? master.getMa_name() : master.getMa_function()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ListenDomain listenDomain = new ListenDomain(MACADDRESS, str == null ? "" : str.toString());
|
|
|
List<ListenDomain> listenDomains = new ArrayList<>();
|
|
|
- listenDomain.setDescription("h2数据库查询异常或oracle数据库设置异常");
|
|
|
+ if ("".equals(str.toString())) {
|
|
|
+ listenDomain.setDescription("所有账套都未启用轮询");
|
|
|
+ } else {
|
|
|
+ listenDomain.setDescription("h2数据库查询异常或oracle数据库设置异常");
|
|
|
+ }
|
|
|
listenDomains.add(listenDomain);
|
|
|
postForList(getApiDomain() + "/erp/listen", ListenDomain.class, dataWrap(listenDomains));
|
|
|
return;
|
|
|
}
|
|
|
}
|
|
|
-// Iterator<Master> iterator = masters.iterator();
|
|
|
-// while (iterator.hasNext()) {
|
|
|
-// Master checkProd = iterator.next();
|
|
|
-// if (!"prod".equals(checkProd.getMa_env())) {
|
|
|
-// iterator.remove();
|
|
|
-// }
|
|
|
-// }
|
|
|
if (!CollectionUtils.isEmpty(masters)) {
|
|
|
ContextHolder.setMaster(masters.get(0));
|
|
|
int dual = jdbcTemplate.getInt("select 1 from dual");
|