示例#1
0
  /**
   * Interfaz que inicia la construcción del organigrama.
   *
   * @param auxUnidades Lista de unidades extraidan de la base de datos
   */
  public void armarModelo(List<Unidad> auxUnidades) {

    if (auxUnidades != null && auxUnidades.size() != 0) {

      unidades = new ArrayList<Unidad>();
      unidades.addAll(auxUnidades);

      Unidad universidad = new Unidad("0", "Universidad Nacional", "UNA");
      universidad.setTipo(0);
      DefaultMutableTreeNode raiz = agregarNodo(null, universidad);

      separarUnidades(raiz, raiz);

      model = new DefaultTreeModel(raiz);
    }
  }
示例#2
0
  /**
   * Recolecta los datos para asignarlos a una unidad, que va a ser la que se ingresará a la base de
   * datos.
   *
   * @return Nueva unidad formada con los datos de los campos en la página.
   */
  public Unidad crearUnidad() {
    String codigo = "";

    if (((UnidadUserObject) unidadSeleccionada.getUserObject())
            .getUnidad()
            .getCodigo()
            .compareTo("0")
        != 0) {
      codigo +=
          ((UnidadUserObject) unidadSeleccionada.getUserObject()).getUnidad().getCodigo() + ".";
    }

    if (unidadSeleccionada.getChildCount() > 0) {
      UnidadUserObject nuevo =
          (UnidadUserObject)
              ((DefaultMutableTreeNode)
                      unidadSeleccionada.getChildAt(unidadSeleccionada.getChildCount() - 1))
                  .getUserObject();
      String cod = nuevo.getUnidad().getCodigo();
      cod = getCodigoUltimaUnidad();
      if (cod.length() > 1) {
        cod = cod.substring(cod.length() - 2, cod.length());
        cod = cod.replace(".", "");
      }

      codigo += Integer.toString(Integer.parseInt(cod) + 1);
    } else {
      codigo += "1";
    }

    Unidad unidad = new Unidad(codigo, nuevaUnidad, nuevoAcron);
    unidad.setTipo(
        ((UnidadUserObject) unidadSeleccionada.getUserObject()).getUnidad().getTipo() + 1);

    return unidad;
  }