diff --git a/src/main/java/com/nis/web/controller/configuration/ConfigSynchronizationController.java b/src/main/java/com/nis/web/controller/configuration/ConfigSynchronizationController.java index fb5af666f..118f56fc1 100644 --- a/src/main/java/com/nis/web/controller/configuration/ConfigSynchronizationController.java +++ b/src/main/java/com/nis/web/controller/configuration/ConfigSynchronizationController.java @@ -126,6 +126,44 @@ public class ConfigSynchronizationController extends BaseController { map.put("syncStatus", 0); JSONObject result = ConfigServiceUtil.configSyncCmd(BaseService.gsonToJson(map));//取消同步 }else{ + boolean isFinished = true; + while(isFinished){ + JSONObject result = ConfigServiceUtil.configSyncStatus();//获取同步状态 + if(result.get("status").equals(200)){ + List> list = result.getJSONArray("data"); + if(!StringUtil.isEmpty(list)){ + Map map = list.get(0); + String serverStatus = map.get("status").toString(); + if(serverStatus.equals("-1")||serverStatus.equals("3")){ + isFinished = false; + SysDataDictionaryName sysDictName = new SysDataDictionaryName(); + sysDictName.setMark("currrent_sync_status"); + List dictList = dictService.findDicByName(sysDictName); + if(!StringUtil.isEmpty(dictList)){ + SysDataDictionaryName dict = dictList.get(0); + List itemList =dict.getDictItemList(); + if(!StringUtil.isEmpty(itemList)){ + SysDataDictionaryItem item = itemList.get(0); + if(!serverStatus.equals(item.getItemValue())){//如果状态不同,则更新状态 + item.setDictionaryId(dict.getId().intValue()); + item.setItemValue(serverStatus); + dictService.updateDictItem(item); + //删除字典缓存 + CacheUtils.remove(Constants.CACHE_DICT_MAP); + } + + } + } + } + + } + } + try{ + Thread.sleep(60000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } } }