- Las listas personales de Mi día (leads, oportunidades, apartados) se calculan por captura local (LeadCaptura/Cliente + mapping LeadOportunidad) ADEMÁS de la columna people de Monday: la app ya es totalmente usable sin cuenta Monday - Config MONDAY_VENDEDOR_COMPARTIDO_ID: cuando el usuario está ligado a la cuenta compartida, la columna people se ignora para 'lo mío' (si no, todos verían los leads de todos) - scripts/vincular-vendedores-compartido.js: vincula todos los usuarios con rol vendedor a la cuenta Monday compartida - Tests: 478 API, verde; verificado en vivo con usuario sin Monday
38 lines
1.4 KiB
JavaScript
38 lines
1.4 KiB
JavaScript
#!/usr/bin/env node
|
|
/**
|
|
* Vincula TODOS los usuarios con rol 'vendedor' del ecosistema a UNA sola
|
|
* cuenta de Monday (la cuenta compartida de vendedores de piso).
|
|
*
|
|
* Uso (desde api-gateway, donde vive la BD):
|
|
* cd api-gateway && node ../scripts/vincular-vendedores-compartido.js <mondayUserId>
|
|
*
|
|
* Ejemplo: node ../scripts/vincular-vendedores-compartido.js 106505920
|
|
*
|
|
* Después de correrlo, configura MONDAY_VENDEDOR_COMPARTIDO_ID=<mondayUserId>
|
|
* en el .env para que Mi día filtre por captura local (si no, todos verían
|
|
* los leads de todos por compartir la misma cuenta Monday).
|
|
*/
|
|
const { PrismaClient } = require('@prisma/client')
|
|
|
|
const mondayUserId = Number(process.argv[2])
|
|
if (!Number.isInteger(mondayUserId) || mondayUserId <= 0) {
|
|
console.error('Uso: node vincular-vendedores-compartido.js <mondayUserId>')
|
|
process.exit(1)
|
|
}
|
|
|
|
const prisma = new PrismaClient()
|
|
;(async () => {
|
|
const vendedores = await prisma.usuario.findMany({
|
|
where: { rol: 'vendedor', activo: true },
|
|
select: { id: true, nombre: true, mondayUserId: true },
|
|
})
|
|
console.log(`Vendedores activos: ${vendedores.length}`)
|
|
const r = await prisma.usuario.updateMany({
|
|
where: { rol: 'vendedor', activo: true },
|
|
data: { mondayUserId },
|
|
})
|
|
console.log(`Vinculados a Monday user ${mondayUserId}: ${r.count}`)
|
|
for (const v of vendedores) console.log(` - ${v.nombre} (antes: ${v.mondayUserId ?? 'sin vínculo'})`)
|
|
await prisma.$disconnect()
|
|
})()
|