/** * 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; }
/** * Agrega una nueva unidad al árbol, como hijo de un nodo padre * * @param padre Padre de la nueva unidad * @param nuevaUnidad Nueva unidad * @return El nodo con la unidad dentro, ya asignado al padre */ public DefaultMutableTreeNode agregarNodo(DefaultMutableTreeNode padre, Unidad nuevaUnidad) { DefaultMutableTreeNode node = new DefaultMutableTreeNode(); UnidadUserObject userObject = new UnidadUserObject(node); node.setUserObject(userObject); userObject.setUnidad(nuevaUnidad); node.setAllowsChildren(true); userObject.setText(nuevaUnidad.getNombre()); userObject.setLeaf(false); if (nuevaUnidad.getTipo() == 0) { userObject.setExpanded(true); } else { userObject.setExpanded(false); } if (padre != null) { padre.add(node); } return node; }