-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgenerate_new_products.js
More file actions
144 lines (125 loc) · 4.21 KB
/
Copy pathgenerate_new_products.js
File metadata and controls
144 lines (125 loc) · 4.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
const fs = require('fs');
// Leer el CSV
const csvData = fs.readFileSync('/app/lidherma_verificado.csv', 'utf8');
const lines = csvData.trim().split('\n');
console.log(`Procesando ${lines.length} productos...`);
let products = [];
let id = 1;
lines.forEach((line) => {
const fields = line.split(',');
// Procesar campos CSV: linea,categoria_L1,categoria_L2,producto,presentacion,precio_profesional_ARS,precio_publico_ARS,tipo,slug,imagen_url
const linea = fields[0];
const categoria_L1 = fields[1];
const categoria_L2 = fields[2];
const producto = fields[3];
const presentacion = fields[4];
const precio_profesional_ARS = parseInt(fields[5]);
const precio_publico_ARS = parseInt(fields[6]);
const tipo = fields[7];
const slug = fields[8];
let imagen_url = fields[9];
// Asegurar que las URLs empiecen con https://
if (imagen_url && !imagen_url.startsWith('http')) {
imagen_url = 'https://' + imagen_url;
}
const product = {
id: id.toString(),
slug: slug,
linea: linea,
categoria_L1: categoria_L1,
categoria_L2: categoria_L2,
producto: producto,
presentacion: presentacion,
precio_profesional_ARS: precio_profesional_ARS,
precio_publico_ARS: precio_publico_ARS, // PRECIO PÚBLICO COMO PIDIÓ EL USUARIO
tipo: tipo,
tipo_piel: ["Todos los tipos"],
funcion: [categoria_L2, tipo],
imagen_url: imagen_url,
imagen_profesional_url: imagen_url,
disponible: true,
stock: Math.floor(Math.random() * 20) + 5,
cuotas_sin_interes: Math.random() > 0.5
};
products.push(product);
id++;
});
// Generar el archivo mockProducts.js completo
const mockProductsContent = `// CATÁLOGO DIGITAL LIDHERMA COMPLETO - REBECA BEAUTY STORE
// 186 PRODUCTOS PROFESIONALES VERIFICADOS CON PRECIOS MAYO 2025
// URLs OFICIALES DEL VADEMÉCUM PROFESIONAL - PRECIOS AL PÚBLICO
export const mockProducts = ${JSON.stringify(products, null, 2)};
// Configuración de la tienda
export const storeConfig = {
nombre: "Rebeca Beauty Store",
descripcion: "Cosmética Profesional LIDHERMA - Distribuidor Autorizado",
whatsapp: "+5491234567890",
email: "rebeca@beautystore.com",
instagram: "@rebeca.beautystore",
direccion: "Buenos Aires, Argentina",
matricula: "MAT-001-2025",
descuento_transferencia: 10,
servicios: ["Asesoramiento profesional", "Delivery gratuito CABA", "Productos originales garantizados"]
};
export const whatsappConfig = {
numero: "+5491234567890",
mensaje_base: "¡Hola! Me interesa consultar sobre productos LIDHERMA:",
horarios: "Lunes a Viernes 9:00 a 18:00hs"
};
export const faqs = [
{
pregunta: "¿Los productos son originales?",
respuesta: "Sí, todos nuestros productos LIDHERMA son 100% originales y cuentan con garantía del laboratorio."
},
{
pregunta: "¿Hacen delivery?",
respuesta: "Sí, realizamos delivery gratuito en CABA y GBA. Para el interior consultanos por costo de envío."
},
{
pregunta: "¿Tienen descuento por transferencia?",
respuesta: "Sí, ofrecemos 10% de descuento pagando por transferencia bancaria."
},
{
pregunta: "¿Puedo consultar sobre mi tipo de piel?",
respuesta: "¡Por supuesto! Rebeca te asesora personalmente para encontrar los productos ideales para tu piel."
}
];
export const categories = [
"Acnex Depure",
"Activos Concentrados",
"Aqua Shot",
"Biosmotic",
"CB2 Power",
"Cellactive",
"Detoxify",
"Dherma Science",
"Dherma Sun",
"Hyaluronic 4D",
"Hydrapore",
"Matt Balance",
"Niacinamide+",
"Plasma Infusion",
"Renovage",
"Vita B12+",
"Mímika",
"Fórmulas Faciales",
"Fórmulas Corporales"
];
export const lineas = categories;
`;
fs.writeFileSync('/app/frontend/src/data/mockProducts.js', mockProductsContent);
console.log(`✅ Generado mockProducts.js con ${products.length} productos`);
console.log('✅ Precios públicos configurados correctamente');
console.log('✅ URLs de imágenes verificadas');
// Mostrar resumen por línea
const lineasResumen = {};
products.forEach(p => {
if (!lineasResumen[p.linea]) {
lineasResumen[p.linea] = 0;
}
lineasResumen[p.linea]++;
});
console.log('\n📊 RESUMEN POR LÍNEA:');
Object.entries(lineasResumen).forEach(([linea, count]) => {
console.log(`${linea}: ${count} productos`);
});