← Todos los flujos
FLUJO F08

Tesorería y cierre

La última etapa del siniestro: el analista agrupa los casos aprobados por el banco en grupos de pago, se los envía al tesorero con la solicitud firmada, el tesorero registra el pago con su comprobante (o lo rechaza), y el caso se cierra. Participan dos roles: el analista y el tesorero.

OK Rol: Analista + Tesorero Modifica datos
21pasos
19llamadas a la API
0errores de consola
0respuestas con error
0archivos descargados
57.9sduración

📁 Evidencias

Este flujo no descargó archivos. Sus 21 capturas están en la carpeta F08-tesoreria/; hacé clic en cualquiera para ampliarla.

⚠️ 3 hallazgo(s) en este flujo

Sin casos individuales en Tesorería: falta la precondiciónmedio

GET /state/treasury/grouping devolvió 0 casos. Para ejercitar las agrupaciones hace falta ≥1 caso del mismo banco aprobado por el banco en Aceptación (cadena E2→E6). No se simuló ningún resultado. (paso 7)

Sin grupos de pago: falta la precondiciónmedio

GET /state/treasury/grouped devolvió 0 grupos y no se pudo crear uno nuevo desde los casos individuales. El resto del flujo (envío al tesorero, pago, cierre) no tiene datos para operar. (paso 9)

El tesorero no tiene la acción «Registrar pago»medio

Acciones visibles en su bandeja: [1] grupo ? — acciones: (ninguna) (paso 12)

1

Pantalla de login

Formulario de acceso: usuario y contraseña (se validan contra LDAP)

Paso 1
Elemento
Login #User / #Password
Pantalla
#/login-page
2

Login como analista.extra4

POST /v1/Authentication/login → HTTP 200. El backend valida contra LDAP y devuelve el JWT (un solo rol). Landing: /dashboard-page

Paso 2
Elemento
Botón Ingresar button[type=submit]
Pantalla
#/dashboard-page
API
POST /v1/Authentication/login 200GET /v1/app/Dashboard/monthly-average-elapsed-time/all 200GET /v1/app/Dashboard/bank-claims/open 200GET /v1/app/Dashboard/oldest-claims 200GET /v1/app/Dashboard/state-claims/all 200
3

Consulta del estado real de la etapa Tesorería

Antes de tocar la pantalla se consulta la API con el token de la sesión. Casos individuales pendientes de agrupar (GET /state/treasury/grouping) → HTTP 200, 0 caso(s). Grupos de pago ya armados (GET /state/treasury/grouped) → HTTP 200, 0 grupo(s). Ojo: la bandeja clásica /state/Treasury NO existe para esta etapa (da 404); Tesorería usa estos dos endpoints propios.

Paso 3
Elemento
API state/treasury
Pantalla
#/dashboard-page
4

El analista abre «Mis casos» directo en la pestaña Tesorería

El carrusel de etapas del home se posiciona en «Gestión Tesorería». A diferencia de las otras etapas, acá no hay una tabla única: aparece un grupo de pestañas con los dos momentos del pago.

Paso 4
Elemento
Ruta /home-page?selectedOption=Treasury location.hash = '#/home-page?selectedOption=Treasury'
Pantalla
#/home-page
API
GET /v1/app/Claims/state/treasury/grouped 200GET /v1/app/Claims/state/treasury/grouping 200GET /v1/app/Claims/detail/states 200
5

Los dos sub-tabs de Tesorería

El tab Tesorería contiene 2 sub-pestañas: Casos individuales, Casos agrupados. «Casos individuales» lista los casos que el banco aprobó en Aceptación y esperan ser agrupados; «Casos agrupados» lista los grupos de pago ya armados con su numeración (tipo 001/2024).

Paso 5
Elemento
mat-tab-group Tesorería mat-tab-group.tab-tesoreria
Pantalla
#/home-page
6

Sub-tab «Casos individuales»

La tabla está VACÍA: ningún caso llegó aprobado desde la etapa Aceptación.

Paso 6
Elemento
Tabla casos individuales app-casos-en-tesoreria table
Pantalla
#/home-page
7

Sin casos individuales: se documenta la precondición faltante

Los casos llegan a esta tabla cuando el banco los aprueba en la etapa Aceptación (flujo F07). En esta corrida F05 (Pronunciamiento) y F07 (Aceptación) no pudieron fabricar esa precondición, así que no hay nada que agrupar. Las dos agrupaciones («Agrupar liquidación.» y «Agrupar para tesorería.») solo aparecen al seleccionar filas, por lo que tampoco pueden capturarse en pantalla.

Paso 7
Elemento
Precondición
Pantalla
#/home-page
8

Click en «Sub-tab «Casos agrupados»»

Cambia a la lista de grupos de pago ya armados (GET /state/treasury/grouped).

Paso 8
Elemento
Sub-tab «Casos agrupados» mat-tab-group.tab-tesoreria [role='tab']:has-text('Casos agrupados')
Pantalla
#/home-page
9

Los grupos de pago armados

La tabla está VACÍA: no hay ningún grupo de pago armado.

Paso 9
Elemento
Tabla casos agrupados app-agrupados-en-tesoreria table
Pantalla
#/home-page
10

Pantalla de login

Formulario de acceso: usuario y contraseña (se validan contra LDAP)

Paso 10
Elemento
Login #User / #Password
Pantalla
#/
11

Login como treasury1

POST /v1/Authentication/login → HTTP 200. El backend valida contra LDAP y devuelve el JWT (un solo rol). Landing: /tesorery-home-page

Paso 11
Elemento
Botón Ingresar button[type=submit]
Pantalla
#/tesorery-home-page
API
POST /v1/Authentication/login 200GET /v1/app/Claims/profile/treasurer 200
12

La bandeja del tesorero

El tesorero ve 1 grupo(s) que le enviaron a pagar, con su numeración, banco, fecha, cantidad de casos, monto y tiempo transcurrido. [1] grupo ? — acciones: (ninguna)

Paso 12
Elemento
Bandeja tesorero table[mat-table]
Pantalla
#/tesorery-home-page
13

Pantalla de login

Formulario de acceso: usuario y contraseña (se validan contra LDAP)

Paso 13
Elemento
Login #User / #Password
Pantalla
#/
14

Login como analista.extra4

POST /v1/Authentication/login → HTTP 200. El backend valida contra LDAP y devuelve el JWT (un solo rol). Landing: /dashboard-page

Paso 14
Elemento
Botón Ingresar button[type=submit]
Pantalla
#/dashboard-page
API
POST /v1/Authentication/login 200GET /v1/app/Dashboard/monthly-average-elapsed-time/all 200GET /v1/app/Dashboard/bank-claims/open 200GET /v1/app/Dashboard/oldest-claims 200GET /v1/app/Dashboard/state-claims/all 200
15

El analista vuelve a Tesorería para cerrar el ciclo

Tras el pago del tesorero, el grupo vuelve a la vista del analista con la acción «Enviar a cierre».

Paso 15
Elemento
Ruta /home-page?selectedOption=Treasury location.hash = '#/home-page?selectedOption=Treasury'
Pantalla
#/home-page
API
GET /v1/app/Claims/detail/states 200GET /v1/app/Claims/state/treasury/grouping 200GET /v1/app/Claims/state/treasury/grouped 200
16

Click en «Sub-tab «Casos agrupados»»

Los grupos pagados quedan en esta lista.

Paso 16
Elemento
Sub-tab «Casos agrupados» mat-tab-group.tab-tesoreria [role='tab']:has-text('Casos agrupados')
Pantalla
#/home-page
17

Estado de los grupos tras el paso por el tesorero

0 grupo(s). Sin grupos.

Paso 17
Elemento
Tabla casos agrupados
Pantalla
#/home-page
18

Ningún grupo ofrece «Enviar a cierre»

La acción aparece cuando el tesorero registró el pago del grupo. Acciones vistas: (sin grupos)

Paso 18
Elemento
Tabla casos agrupados
Pantalla
#/home-page
19

El analista abre la bandeja Cierre

GET /state/Closure → HTTP 200, 0 caso(s) por cerrar. Acá terminan los casos cuyos grupos fueron pagados y enviados a cierre.

Paso 19
Elemento
Ruta /home-page?selectedOption=Closure location.hash = '#/home-page?selectedOption=Closure'
Pantalla
#/home-page
API
GET /v1/app/Claims/state/Closure 200
20

Los casos por cerrar

La bandeja Cierre está VACÍA.

Paso 20
Elemento
Bandeja Cierre
Pantalla
#/home-page
21

Sin casos para cerrar: fin del recorrido posible hoy

El cierre necesita que un grupo pagado haya sido enviado a cierre — la cadena completa (agrupar → enviar al tesorero → pagar → enviar a cierre) no pudo completarse en esta corrida por las precondiciones documentadas arriba.

Paso 21
Elemento
Bandeja Cierre
Pantalla
#/home-page