Browse Source

Ahora ya permite editar los campos de texto, asi como tambien los registros del grid dando clic en el boton de editar

master
mramirezg 2 months ago
parent
commit
4473e15de9
1 changed files with 69 additions and 7 deletions
  1. +69
    -7
      src/main/java/mx/gob/jumapacelaya/ui/DetallesMantView.java

+ 69
- 7
src/main/java/mx/gob/jumapacelaya/ui/DetallesMantView.java View File

@ -3,16 +3,20 @@ package mx.gob.jumapacelaya.ui;
import java.time.format.DateTimeFormatter;
import java.util.List;
import org.vaadin.lineawesome.LineAwesomeIcon;
import com.vaadin.flow.component.button.Button;
import com.vaadin.flow.component.dependency.CssImport;
import com.vaadin.flow.component.grid.Grid;
import com.vaadin.flow.component.grid.GridVariant;
import com.vaadin.flow.component.gridpro.GridPro;
import com.vaadin.flow.component.html.H3;
import com.vaadin.flow.component.icon.Icon;
import com.vaadin.flow.component.icon.VaadinIcon;
import com.vaadin.flow.component.orderedlayout.HorizontalLayout;
import com.vaadin.flow.component.orderedlayout.VerticalLayout;
import com.vaadin.flow.component.textfield.TextField;
import com.vaadin.flow.data.binder.Binder;
import com.vaadin.flow.function.ValueProvider;
import com.vaadin.flow.router.BeforeEnterEvent;
import com.vaadin.flow.router.BeforeEnterObserver;
@ -44,9 +48,11 @@ public class DetallesMantView extends VerticalLayout implements BeforeEnterObser
private TextField txtFechaRealizacion;
private TextField txtUsuario;
private TextField txtDepartamento;
private Grid<HardwareDetalle> gridHardware;
private GridPro<HardwareDetalle> gridHardware;
private Button btnEditar;
private Button btnImprimirRepo;
private Button btnCancelar;
private Button btnGuardar;
public DetallesMantView() {
setPadding(true);
@ -95,12 +101,30 @@ public class DetallesMantView extends VerticalLayout implements BeforeEnterObser
txtDepartamento.setWidthFull();
layout3.add(txtUsuario,txtDepartamento);
gridHardware = new Grid<>();
gridHardware.addColumn(HardwareDetalle::getDescripcion).setHeader("Descripción");
gridHardware.addColumn(HardwareDetalle::getModelo).setHeader("Modelo");
gridHardware.addColumn(HardwareDetalle::getNumSerie).setHeader("No. Serie");
gridHardware.addColumn(HardwareDetalle::getPlaca).setHeader("Placa");
gridHardware = new GridPro<>();
gridHardware.addEditColumn(HardwareDetalle::getDescripcion)
.text((item, newValue) -> item.setDescripcion(newValue))
.setHeader("Descripción")
.setEditorComponent(new TextField());
gridHardware.addEditColumn(HardwareDetalle::getNumSerie)
.text((item, newValue) -> item.setNumSerie(newValue))
.setHeader("No. Serie")
.setEditorComponent(new TextField());
gridHardware.addEditColumn(HardwareDetalle::getModelo)
.text((item, newValue) -> item.setModelo(newValue))
.setHeader("Modelo")
.setEditorComponent(new TextField());
gridHardware.addEditColumn(HardwareDetalle::getPlaca)
.text((item, newValue) -> item.setPlaca(newValue))
.setHeader("Placa")
.setEditorComponent(new TextField());
gridHardware.setWidthFull();
gridHardware.setEditOnClick(false);
gridHardware.setHeight("250px");
gridHardware.addThemeVariants(GridVariant.LUMO_ROW_STRIPES);
@ -110,7 +134,45 @@ public class DetallesMantView extends VerticalLayout implements BeforeEnterObser
botonesLayout.setJustifyContentMode(JustifyContentMode.CENTER);
btnEditar = new Button("Editar", new Icon(VaadinIcon.EDIT));
btnImprimirRepo = new Button("Imprimir Reporte", new Icon(VaadinIcon.PRINT));
botonesLayout.add(btnEditar,btnImprimirRepo);
btnGuardar = new Button("Guardar", LineAwesomeIcon.SAVE_SOLID.create());
btnCancelar = new Button("Cancelar", new Icon(VaadinIcon.CLOSE_CIRCLE_O));
botonesLayout.add(btnEditar,btnImprimirRepo,btnGuardar,btnCancelar);
btnGuardar.setVisible(false);
btnGuardar.getStyle().set("background-color", "green");
btnGuardar.getStyle().set("color", "white");
btnCancelar.setVisible(false);
btnCancelar.getStyle().set("background-color", "red");
btnCancelar.getStyle().set("color", "white");
btnEditar.addClickListener(e -> {
txtEquipo.setReadOnly(false);
txtTipo.setReadOnly(false);
txtFecha.setReadOnly(false);
txtFechaRealizacion.setReadOnly(false);
txtUsuario.setReadOnly(false);
txtDepartamento.setReadOnly(false);
btnImprimirRepo.setVisible(false);
btnEditar.setVisible(false);
btnGuardar.setVisible(true);
btnCancelar.setVisible(true);
gridHardware.setEditOnClick(true);
});
btnCancelar.addClickListener(e -> {
txtEquipo.setReadOnly(true);
txtTipo.setReadOnly(true);
txtFecha.setReadOnly(true);
txtFechaRealizacion.setReadOnly(true);
txtUsuario.setReadOnly(true);
txtDepartamento.setReadOnly(true);
btnImprimirRepo.setVisible(true);
btnEditar.setVisible(true);
btnGuardar.setVisible(false);
btnCancelar.setVisible(false);
gridHardware.setEditOnClick(false);
gridHardware.getEditor().cancel();
});
mainLayout.add(headerLayout,layout2,fechasLayout,layout3,gridHardware,botonesLayout);
add(mainLayout);


Loading…
Cancel
Save