Browse Source

En esta version ya se enlazo con la instancia de proyman en productivo sustituyendo la url y la apiKey, tambien se cambiaron algunos iconos y correciones en textos

pull/1/head
parent
commit
689c414393
4 changed files with 15 additions and 28 deletions
  1. +1
    -1
      src/main/java/com/example/application/views/MainLayout.java
  2. +1
    -1
      src/main/java/com/example/application/views/crearnuevoticket/CrearnuevoTicketView.java
  3. +11
    -24
      src/main/java/com/example/application/views/tickets/MisTicketsView.java
  4. +2
    -2
      src/main/resources/application.properties

+ 1
- 1
src/main/java/com/example/application/views/MainLayout.java View File

@ -85,7 +85,7 @@ public class MainLayout extends AppLayout {
nav.addItem(new SideNavItem("Crear nuevo ticket", CrearnuevoTicketView.class, LineAwesomeIcon.EDIT.create()));
nav.addItem(new SideNavItem("Mis tickets", MisTicketsView.class, LineAwesomeIcon.TICKET_ALT_SOLID.create()));
nav.addItem(new SideNavItem("Todos los tickets", AllTicketsView.class, LineAwesomeIcon.TICKET_ALT_SOLID.create()));
nav.addItem(new SideNavItem("Todos los tickets", AllTicketsView.class, LineAwesomeIcon.LIST_ALT.create()));
return nav;


+ 1
- 1
src/main/java/com/example/application/views/crearnuevoticket/CrearnuevoTicketView.java View File

@ -70,7 +70,7 @@ public class CrearnuevoTicketView extends VerticalLayout {
// Boton para crear los tickets
Button createButton = new Button("Enviar ticket", event -> {
Map<String, String> issueDetails = new HashMap<>();
issueDetails.put("project_id", "proyecto-de-prueba");
issueDetails.put("project_id", "soporte-tecnico-t-i");
issueDetails.put("subject", asunto.getValue());
issueDetails.put("description", descripcion.getValue());


+ 11
- 24
src/main/java/com/example/application/views/tickets/MisTicketsView.java View File

@ -1,7 +1,6 @@
package com.example.application.views.tickets;
import com.example.application.api.RedmineClient;
import com.example.application.api.SecurityService;
import com.example.application.api.ServerPrpperties;
import com.example.application.models.Ticket;
import com.example.application.views.MainLayout;
@ -23,15 +22,12 @@ public class MisTicketsView extends VerticalLayout {
private final RedmineClient redmineClient;
private final Grid<Ticket> grid;
private final SecurityService securityService;
@Autowired
public MisTicketsView(ServerPrpperties prpperties, SecurityService securityService) {
public MisTicketsView(ServerPrpperties prpperties) {
this.redmineClient = new RedmineClient(prpperties.REDMINE_URL, prpperties.API_KEY);
this.grid = new Grid<>(Ticket.class, false);
this.securityService = securityService;
// Definir columnas en el orden deseado
grid.addColumn(Ticket::getId).setHeader("No.")
.setWidth("4em").setFlexGrow(0);
grid.addColumn(Ticket::getSubject).setHeader("Asunto")
@ -41,6 +37,7 @@ public class MisTicketsView extends VerticalLayout {
grid.addColumn(Ticket::getDescription).setHeader("Descripción")
.setAutoWidth(true).setFlexGrow(1);
// Ajustar tamaño del Grid y Layout
grid.setSizeFull();
setSizeFull();
@ -51,39 +48,29 @@ public class MisTicketsView extends VerticalLayout {
add(grid);
expand(grid);
loadTickets(getAuthenticatedUsername());
loadTickets();
}
private void loadTickets(String authenticatedUsername) {
private void loadTickets() {
List<Ticket> tickets = redmineClient.getTickets();
tickets.removeIf(ticket -> !ticket.getAuthor().getUsername().equals(authenticatedUsername));
System.out.println("Tickets para mostrar: " + tickets.size());
grid.setItems(tickets);
}
private String getAuthenticatedUsername() {
String username = securityService.getAuthenticatedUser().getUsername();
System.out.println("Usuario autenticado: " + username);
return username;
}
private ComponentRenderer<Span, Ticket> createStatusRender() {
return new ComponentRenderer<>(ticket -> {
Span span = new Span(ticket.getStatus());
switch (ticket.getStatus().toLowerCase()) {
case "open":
span.getElement().getStyle().set("color", "white");
case "en curso":
span.getElement().getStyle().set("color","purple");
break;
case "closed":
span.getElement().getStyle().set("color", "white");
case "comentarios":
span.getElement().getStyle().set("color","orange");
break;
case "in progress":
span.getElement().getStyle().set("background-color", "orange");
span.getElement().getStyle().set("color", "black");
case "resuelta":
span.getElement().getStyle().set("color","green");
break;
default:
span.getElement().getStyle().set("background-color", "blue");
span.getElement().getStyle().set("color", "white");
span.getElement().getStyle().set("color","blue");
break;
}
return span;


+ 2
- 2
src/main/resources/application.properties View File

@ -20,5 +20,5 @@ password: Dr3na%134$4guA
####################################################
redmine.url=http://localhost:3000/
redmine.api_key=35164d2320404b66a71df90d514107790bc1aed6
redmine.url=https://proyman.jumapacelaya.gob.mx/
redmine.api_key=ad58996f706a48474f1c74368bb35b4614428d90

Loading…
Cancel
Save