EMPRESA_JOSESAID · ui-ms

Uso de IA · Interfaz web (ui-ms)

Pantallas que usa la persona: Asistente Nexus, Agiliza con IA y la sugerencia de póliza. No llama al modelo directamente.

Cómo se usa la IA aquí. Los fragmentos son código real del repositorio.

Usuario a ser usado: contador@demo.empresa.mx (contraseña Demo2026!)

No expone herramientas propias a la IA.

01 Agiliza con IA: muestra textos de ayuda guiados por rol

Agiliza con IA: muestra textos de ayuda guiados por rol. No llama a servicios ni al modelo.

AgilizaIaController.java
    @GetMapping("/agiliza-ia")
    public String agilizaIa(@RequestParam(required = false) String opcion, Authentication usuario, Model modelo) {
        Set<String> roles = usuario.getAuthorities().stream()
                .map(a -> a.getAuthority().replace("ROLE_", ""))
                .collect(Collectors.toSet());
        modelo.addAttribute("titulo", "Agiliza con IA");
        modelo.addAttribute("seccion", "agiliza");
        modelo.addAttribute("opciones", SugerenciasIa.opciones(roles));
        modelo.addAttribute("elegida", SugerenciasIa.opcion(roles, opcion).orElse(null));
        return "agiliza/ia";
    }
Qué hace: Las opciones dependen de los roles del usuario y solo muestran texto de ayuda.

02 La sugerencia de póliza sí llega a Nexus

La sugerencia de póliza sí llega a Nexus.

HerramientasPolizas.java
    @Tool(name = "sugerir_poliza",
          description = "Propone una póliza contable a partir de la descripción de una operación. No la registra. "
                  + "Devuelve el identificador de la acción y un código de confirmación de una sola vez; "
                  + "la póliza solo se registra cuando se confirma con confirmar_accion usando ese código.")
    public String sugerirPoliza(
            @ToolParam(description = "Descripción de la operación contable, con montos y moneda", required = true) String descripcion) {
        RegistroHerramientasUsadas.registrar("sugerir_poliza");
        AccionPendiente accion = servicio.get().preparar(usuarioActual(), descripcion);
        return "Acción " + accion.id() + " preparada, vence " + accion.expiraUtc() + ". "
                + accion.resumen() + ". Código de confirmación: " + codigos.generar(accion.id(), accion.usuario())
                + ". Nada se ha registrado todavía.";
    }
Qué hace: La herramienta sugerir_poliza es la que usa la pantalla de pólizas para proponer el asiento.
Regla del proyecto: la IA propone o prepara; la persona confirma con el código de 8 dígitos. Ninguna herramienta de escritura cambia datos por sí sola.