docs: @Override
      public DaoPageResult<ConfListVo> getConfigList(ConfListForm confListForm, boolean fetchZk,
                                                     final boolean getErrorMessage) {
  
          //
          // 数据据结果
          //
          DaoPageResult<Config> configList = configDao.getConfigList(confListForm.getAppId(), confListForm.getEnvId(),
                  confListForm.getVersion(),
                  confListForm.getPage());
  
          //
          //
          //
          final App app = appMgr.getById(confListForm.getAppId());
          final Env env = envMgr.getById(confListForm.getEnvId());
  
          //
          //
          //
          final boolean myFetchZk = fetchZk;
          Map<String, ZkDisconfData> zkDataMap = new HashMap<String, ZkDisconfData>();
          if (myFetchZk) {
              zkDataMap = zkDeployMgr.getZkDisconfDataMap(app.getName(), env.getName(), confListForm.getVersion());
          }
          final Map<String, ZkDisconfData> myzkDataMap = zkDataMap;
  
          //
          // 进行转换
          //
          DaoPageResult<ConfListVo> configListVo =
                  ServiceUtil.getResult(configList, new DataTransfer<Config, ConfListVo>() {
  
                      @Override
                      public ConfListVo transfer(Config input) {
  
                          String appNameString = app.getName();
                          String envName = env.getName();
  
                          ZkDisconfData zkDisconfData = null;
                          if (myzkDataMap != null && myzkDataMap.keySet().contains(input.getName())) {
                              zkDisconfData = myzkDataMap.get(input.getName());
                          }
                          ConfListVo configListVo = convert(input, appNameString, envName, zkDisconfData);
  
                          // 列表操作不要显示值, 为了前端显示快速(只是内存里操作)
                          if (!myFetchZk && !getErrorMessage) {
  
                              // 列表 value 设置为 ""
                              configListVo.setValue("");
                              configListVo.setMachineList(new ArrayList<ZkDisconfData.ZkDisconfDataItem>());
                          }
  
                          return configListVo;
                      }
                  });
  
          return configListVo;
      }