feat: roles con modulos por rol + mejoras Mi dia y descarte
- Matriz de roles (vendedor, administracion_venta, director_ventas, escrituracion, direccion_general, admin) con modulos visibles por rol; auth/me y login incluyen 'modulos'; PATCH /usuarios/:id/rol (admin). - Landing: Cobranza -> Clientes, Chat IA -> Chat Hermes, nuevo modulo Contactos (vista interna leyendo el tablero Contactos), grid filtrado por rol, rol visible en Configuracion de cuenta. - Dashboards: tab 'Tablero comercial' y tabs filtrados por rol. - Boton '<- Menu' en el header de todas las apps. - Mi dia: cada lead muestra el ultimo cambio (que, quien, cuando) desde el activity log de Monday (normalizacion de created_at 100ns/us/ms). - Descarte: el motivo se crea en el grupo de su categoria en el tablero Motivos No Compra.
This commit is contained in:
@@ -6,7 +6,7 @@ export interface UsuarioMonday {
|
||||
email: string
|
||||
}
|
||||
|
||||
/** GET /auth/me — perfil del usuario autenticado (incluye mondayUserId) */
|
||||
/** GET /auth/me — perfil del usuario autenticado (incluye mondayUserId y modulos) */
|
||||
export async function getMe(): Promise<UsuarioSesion> {
|
||||
const resp = await fetch(`${API_URL}/auth/me`, conAuth())
|
||||
manejar401(resp)
|
||||
@@ -14,6 +14,23 @@ export async function getMe(): Promise<UsuarioSesion> {
|
||||
return (await resp.json()) as UsuarioSesion
|
||||
}
|
||||
|
||||
export interface Contacto {
|
||||
id: string
|
||||
nombre: string
|
||||
telefono: string
|
||||
email: string
|
||||
estado: string
|
||||
updatedAt: string
|
||||
}
|
||||
|
||||
/** GET /contactos — contactos del tablero Contactos de Monday (máx 100) */
|
||||
export async function getContactos(): Promise<Contacto[]> {
|
||||
const resp = await fetch(`${API_URL}/contactos`, conAuth())
|
||||
manejar401(resp)
|
||||
if (!resp.ok) throw new Error(`HTTP ${resp.status}`)
|
||||
return (await resp.json()) as Contacto[]
|
||||
}
|
||||
|
||||
/** GET /monday/usuarios — usuarios activos del workspace para el dropdown */
|
||||
export async function getUsuariosMonday(): Promise<UsuarioMonday[]> {
|
||||
const resp = await fetch(`${API_URL}/monday/usuarios`, conAuth())
|
||||
|
||||
Reference in New Issue
Block a user