Files
help_desk/views/agent/dashboard.ejs
T

76 lines
3.0 KiB
Plaintext

<%- include('../partials/header') %>
<% title = 'Panel de ' + (user.rol === 'admin' ? 'Administración' : 'Agente'); %>
<% if (success_msg && success_msg.length > 0) { %>
<% success_msg.forEach(msg => { %>
<div class="alert alert-success alert-dismissible fade show mt-3"><%= msg %><button type="button" class="btn-close" data-bs-dismiss="alert"></button></div>
<% }) %>
<% } %>
<% if (error_msg && error_msg.length > 0) { %>
<% error_msg.forEach(msg => { %>
<div class="alert alert-danger alert-dismissible fade show mt-3"><%= msg %><button type="button" class="btn-close" data-bs-dismiss="alert"></button></div>
<% }) %>
<% } %>
<div class="d-flex justify-content-between align-items-center pt-3 pb-2 mb-3 border-bottom">
<h1 class="h2">Panel de <%= user.rol === 'admin' ? 'Administración' : 'Agente' %></h1>
</div>
<div class="row mb-4">
<% stats.forEach(s => { %>
<% const color = s.status === 'abierto' ? 'success' : s.status === 'en_progreso' ? 'primary' : 'secondary' %>
<div class="col-md-4 mb-3">
<div class="card border-<%= color %> text-<%= color %>">
<div class="card-body text-center">
<h5 class="card-title"><%= s.status %></h5>
<h2><%= s.total %></h2>
</div>
</div>
</div>
<% }) %>
</div>
<div class="table-responsive">
<table class="table table-striped table-hover">
<thead class="table-dark">
<tr>
<th>#</th>
<th>Usuario</th>
<th>Asunto</th>
<th>Departamento</th>
<th>Prioridad</th>
<th>Estado</th>
<th>Asignado</th>
<th>Fecha</th>
<th>Acción</th>
</tr>
</thead>
<tbody>
<% if (tickets.length === 0) { %>
<tr><td colspan="9" class="text-center">No hay tickets</td></tr>
<% } %>
<% tickets.forEach(t => { %>
<tr>
<td>#<%= t.id %></td>
<td><%= t.usuario_nombre || '' %></td>
<td><%= t.asunto %></td>
<td><%= t.departamento_nombre || 'Sin depto' %></td>
<td>
<span class="badge bg-<%= t.prioridad === 'alta' ? 'danger' : t.prioridad === 'critica' ? 'dark' : t.prioridad === 'media' ? 'warning' : 'info' %>"><%= t.prioridad %></span>
</td>
<td>
<span class="badge bg-<%= t.status === 'abierto' ? 'success' : t.status === 'en_progreso' ? 'primary' : 'secondary' %>"><%= t.status %></span>
</td>
<td><%= t.asignado_nombre || 'Sin asignar' %></td>
<td><%= t.created_at %></td>
<td>
<a href="/agent/ticket/<%= t.id %>" class="btn btn-sm btn-info"><i class="fas fa-eye"></i></a>
</td>
</tr>
<% }) %>
</tbody>
</table>
</div>
<%- include('../partials/footer') %>