/*
   * 刷新topNList
   */
  private void refreshiControl() {
    ChartUtil.clearListbox(topNList);
    TopNListitemModel model = new TopNListitemModel(topNReport);
    //		ChartUtil.makelistData(topNList, model, model);

    try {
      for (TopNBean m : model.getTopNData()) {
        Image image = null;
        if (m.getDeny().equals("允许")) {
          image = new Image("/main/images/button/ico/enable_bt.gif");
        } else {
          image = new Image("/main/images/button/ico/disable_bt.gif");
        }
        Listitem item =
            ChartUtil.addRow(
                topNList,
                m,
                m.getTitle(),
                m.getDescript(),
                m.getPeriod(),
                new Image("/main/images/filetype/" + m.getFiletype() + ".gif"),
                image,
                m.getEditImage());
        item.setId(m.getSection());
        item.addForward("onClick", topNReport, "onSelecttopNList");
      }
    } catch (Exception e) {
      e.printStackTrace();
    }
    String section =
        (String) Executions.getCurrent().getDesktop().getSession().getAttribute("topNReportlit_id");

    if (null == section) return;

    Listitem selectedItem = null;
    for (Object obj : topNList.getItems()) {
      if (obj instanceof Listitem) {
        Listitem tmpItem = (Listitem) obj;
        if (tmpItem.getId().equals(section)) {
          selectedItem = tmpItem;
        }
      }
    }

    if (null != selectedItem) {
      selectedItem.setSelected(true);
      Events.sendEvent(new Event(Events.ON_SELECT, topNList));
      topNList.setActivePage(selectedItem);
    }
  }
  public void buscarProcedimientos() {
    String parametro = bandboxBusqueda.getValue().trim();
    if (!parametro.isEmpty()) {
      List<Listitem> listado_items = listboxProcedimientos.getItems();
      if (parametro.toUpperCase().equals(parametro_current)) {
        index_current++;
        if (index_current >= listado_resultados.size()) {
          index_current = 0;
        }
      } else {
        parametro_current = parametro.toUpperCase();
        listado_resultados.clear();
        for (int i = 0; i < listado_items.size(); i++) {
          Listitem listitem = listado_items.get(i);
          Map<String, Object> pcd = (Map<String, Object>) listitem.getValue();
          String codigo_cups = (String) pcd.get("codigo_cups");
          String nombre_procedimiento = (String) pcd.get("nombre_procedimiento");
          if (codigo_cups.toUpperCase().contains(parametro.toUpperCase())
              || nombre_procedimiento.toUpperCase().contains(parametro.toUpperCase())) {
            listado_resultados.add(i);
          }
        }

        if (!listado_resultados.isEmpty()) {
          index_current = 0;
        } else {
          index_current = -1;
        }
      }

      if (index_current != -1) {
        Listitem listitem = listado_items.get(listado_resultados.get(index_current));
        listboxProcedimientos.setActivePage(listitem);
        Clients.scrollIntoView(listitem);
        MensajesUtil.notificarInformacion("Resultado encontrado", listitem);
      } else {
        MensajesUtil.notificarAlerta("No se encontraron resultado", bandboxBusqueda);
      }
    }
  }
  @Listen("onClick=#editBtn")
  public void editCodeDb() {
    try {
      List<ErmCodeDb> codeDbList =
          ((ErmCodeDbService) SpringUtil.getBean("ermCodeDbService")).findAllCodeDb(webEmployee);
      String tempId = "OB";
      Long number = (long) codeDbList.size();
      number = number + 1;
      String dbId = tempId + RandomIDGenerator.fmtLong(number, 9);
      if (!aDbId.equals("") && aDbId != null) {
        codeDb.setDbId(aDbId);
      } else {
        codeDb.setDbId(dbId);
      }
      aDbId = dbId;
      dbIdTxt.setValue(dbId);
      if (dbNameTxt.getValue() != null && !"".equals(dbNameTxt.getValue())) {
        codeDb.setName(dbNameTxt.getValue());
      } else {
        ZkUtils.showExclamation(
            Labels.getLabel("webErwSource.nameZhTw") + " " + Labels.getLabel("cannottNull"),
            Labels.getLabel("warn"));
        dbNameTxt.focus();
        return;
      }
      if (resourcesIdTxt.getValue() != null) {
        codeDb.setResourcesId(resourcesIdTxt.getValue());
      }
      codeDb.setHistory("N");
      if (ezproxyRdo.getSelectedItem().getValue() != null) {
        codeDb.setEzproxy(ezproxyRdo.getSelectedItem().getValue().toString());
      }
      if (urlTxt.getValue() != null && !"".equals(urlTxt.getValue())) {
        codeDb.setUrl(urlTxt.getValue());
      }
      if (orderNoIbx.getValue() != null) {
        codeDb.setOrderNo(orderNoIbx.getValue());
      }
      codeDb.setIsDataEffid(1);
      codeDb.setLatelyChangedDate(new Date());
      codeDb.setLatelyChangedUser(webEmployee.getEmployeesn());
      ((ErmCodeDbService) SpringUtil.getBean("ermCodeDbService")).saveCodeDb(codeDb);
      ((WebSysLogService) SpringUtil.getBean("webSysLogService"))
          .editLog(
              ZkUtils.getRemoteAddr(),
              codeDb.getWebEmployee().getEmployeesn(),
              "codeDb_" + codeDb.getDbId());

      ZkUtils.showInformation(Labels.getLabel("saveOK"), Labels.getLabel("info"));
      Listbox resCodeDbLix =
          (Listbox) editErmResDataBaseWin.getParent().getFellowIfAny("resCodeDbLix");
      Textbox name = (Textbox) editErmResDataBaseWin.getParent().getFellowIfAny("nameTxt");
      Textbox dbIdParent = (Textbox) editErmResDataBaseWin.getParent().getFellowIfAny("dbIdTxt");
      List<ErmCodeDb> codeDbList1 =
          ((ErmCodeDbService) SpringUtil.getBean("ermCodeDbService"))
              .findPublisherList("", "", name.getValue(), dbIdParent.getValue(), webEmployee);
      ListModelList<ErmCodeDb> model = new ListModelList<ErmCodeDb>(codeDbList1);
      model.setMultiple(true);
      resCodeDbLix.setModel(model);
      resCodeDbLix.setActivePage(Integer.valueOf(currentPage));
      dbIdTxt.setValue(codeDb.getDbId());
      addSuunitBtn.setDisabled(false);
      delSuunitBtn.setDisabled(false);
      /*
       * String url = "ermCodeDb/ermCodeDb.zul";
       * ZkUtils.refurbishMethod(url);
       */

    } catch (WrongValueException e) {
      log.error("新增資料庫異常" + e);
    }
  }