Commit inicial: GTI Maquina Comercial

App local (Node + SQLite) para captura, tratamento e exportacao de leads
comerciais, com dashboard de gestao, login/usuarios e integracao Z-PRO.

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
DESKTOP-F2O4A80\User
2026-07-12 14:22:21 -03:00
co-authored by Claude
commit b8d10b210c
78 changed files with 19781 additions and 0 deletions
+49
View File
@@ -0,0 +1,49 @@
import { buildLeadFromPlace } from './common.mjs';
// Fonte mock: 3 leads ficticios para testar o fluxo completo (captura ->
// banco -> tratamento -> exportacao) sem tocar em nenhuma API externa.
const MOCK_PLACES = [
{
name: 'Mercado Central SAJ',
phone: '(75) 99999-0001',
city: 'Santo Antonio de Jesus',
state: 'BA',
segment: 'mercados_de_bairro',
website: 'https://mercadocentral.example'
},
{
name: 'Clinica Vida Plena',
phone: '(75) 99999-0002',
city: 'Santo Antonio de Jesus',
state: 'BA',
segment: 'clinicas_medicas',
website: ''
},
{
name: 'Restaurante Sabor da Terra',
phone: '(75) 99999-0003',
city: 'Santo Antonio de Jesus',
state: 'BA',
segment: 'restaurantes',
website: ''
}
];
export async function* collect(params, ctx) {
const segments = params.segments || [];
const leads = MOCK_PLACES.map((place) => {
const segment = segments.find((item) => item.name === place.segment)
|| segments[0]
|| { name: place.segment, interest: 'ERP / sistema de gestao', pains: [] };
return buildLeadFromPlace(
{ ...place, query: `mock ${place.segment}` },
segment,
place.city,
place.state,
'mock'
);
});
ctx.emit({ phase: 'mock', message: `${leads.length} leads de teste gerados` });
yield { origin: 'mock', label: 'mock', leads };
}