Skip to content

feat(personal): ficha de empleado, mapa de mesas y cubrir turno - #16

Merged
davidpp09 merged 2 commits into
mainfrom
feat/personal-mesas-y-ficha
Oct 3, 2026
Merged

davidpp09 merged 2 commits into
mainfrom
feat/personal-mesas-y-ficha

Conversation

@davidpp09

@davidpp09 davidpp09 commented Oct 3, 2026 •

Copy link
Copy Markdown
Owner

Qué resuelve

Personal pasa de ser una tabla con tres botones a una pantalla para manejar el equipo y el reparto de mesas.

Cambios

  • Equipo: filtro por rol, buscador y dados de baja con reactivar. Usa /usuarios/todos, porque el listado anterior solo leía la primera página de 10.
  • Mesas: mapa con el color de cada mesera; se toca para seleccionar y se asigna desde la barra de abajo. También nueva mesa, renombrar, dar de baja y reactivar, cubrir turno, y aviso rojo si hay mesas sin asignar.
  • Ficha del empleado: ventas de hoy, la semana y el mes (con la fecha desde la que cuenta cada una), sus mesas para agregar o quitar, y acciones. Al dar de alta a una mesera se abre su ficha.
  • Tablet de la mesera: lee /mesas/mias en lugar de los rangos quemados en MeseroPanel. Si no tiene mesas, ve un aviso en vez de una pantalla vacía.
  • Se quitó el selector de "Sección", que además ofrecía una "Sección 4" inexistente. Se borraron columns.jsx y DataTable.jsx, que quedaron sin uso.

Pruebas

  • npm run lint en 0 y npm run build OK.
  • Recorrido con Playwright a 800×1280 contra el backend nuevo: lista, ficha, guardar mesas, mapa, selector con nombres, asignación masiva y tablet de la mesera, verificado contra la base. La sesión del encargado no dio errores de consola.

Deploy

Requiere RestFoodB feat/mesas-asignadas-a-meseras desplegado antes.

Pendiente aparte, que ya existía: MesaMesero.jsx:151 usa DialogTrigger asChild (API de Radix), lo que anida un botón dentro de otro y ensucia la consola.

Agregado después: mesas por lote

El diálogo de Nueva mesa tiene Una mesa y Varias (rango). Muestra cuántas se crean y para quién, y deshabilita el botón si el rango va al revés o pasa de 50. Probado con Playwright sobre una copia del respaldo: 51-65 para MAGUI creó 15; 60-70 chocó y no creó ninguna.

Personal deja de ser una tabla con tres botones. Ahora tiene dos
pestanas:

- Equipo: filtro por rol, buscador, y los dados de baja (antes no se
  veian, y el endpoint de reactivar no tenia pantalla). Lee
  /usuarios/todos: el listado anterior traia solo la primera pagina de
  10 y el empleado 11 habria desaparecido sin aviso.
- Mesas: todas las mesas pintadas del color de su mesera. Se tocan para
  seleccionar y se asignan desde la barra de abajo; con una sola
  seleccionada se puede renombrar o dar de baja. Nueva mesa, cubrir
  turno, y aviso rojo si hay mesas que no le aparecen a nadie.

Al tocar a alguien se abre su ficha: ventas de hoy, la semana y el mes
(con la fecha desde la que cuenta cada una), sus mesas para agregar o
quitar, y las acciones (editar, contrasena, cubrir su turno, dar de
baja o reactivar). Al dar de alta a una mesera se abre su ficha para
asignarle mesas.

La tablet de la mesera lee /mesas/mias en vez de los rangos quemados
en MeseroPanel (1-15, 16-30, 31-50). El formulario ofrecia ademas
"Seccion 4 — Mesas 31 al 40", que no existia: caia en la seccion 1.

Requiere el backend de RestFoodB feat/mesas-asignadas-a-meseras.
El dialogo de Nueva mesa tiene dos modos: Una mesa y Varias (rango).
En rango muestra antes de crear cuantas salen y para quien, y bloquea
el boton si el rango va al reves o pasa de 50 (mismo tope que el
backend). Si alguna ya existe el backend no crea ninguna y el aviso
dice cuales chocan.
@davidpp09
davidpp09 merged commit 1132512 into main Oct 3, 2026
1 check passed
@davidpp09
davidpp09 deleted the feat/personal-mesas-y-ficha branch October 3, 2026 23:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant