chore: add E2E demo showcase excel spreadsheet, generator script, and updated screenshots
|
Before Width: | Height: | Size: 200 KiB After Width: | Height: | Size: 200 KiB |
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 136 KiB After Width: | Height: | Size: 135 KiB |
|
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 82 KiB |
|
Before Width: | Height: | Size: 137 KiB After Width: | Height: | Size: 137 KiB |
|
Before Width: | Height: | Size: 98 KiB After Width: | Height: | Size: 98 KiB |
|
Before Width: | Height: | Size: 112 KiB After Width: | Height: | Size: 111 KiB |
|
Before Width: | Height: | Size: 233 KiB After Width: | Height: | Size: 233 KiB |
|
Before Width: | Height: | Size: 232 KiB After Width: | Height: | Size: 232 KiB |
|
Before Width: | Height: | Size: 100 KiB After Width: | Height: | Size: 126 KiB |
|
Before Width: | Height: | Size: 100 KiB After Width: | Height: | Size: 100 KiB |
|
Before Width: | Height: | Size: 118 KiB After Width: | Height: | Size: 117 KiB |
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
BIN
public/templates/demo_sales_data.xlsx
Normal file
36
scripts/generate-showcase-excel.js
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
const XLSX = require('xlsx');
|
||||||
|
const fs = require('fs');
|
||||||
|
const path = require('path');
|
||||||
|
|
||||||
|
const data = [
|
||||||
|
{
|
||||||
|
'Colaborador': 'colaborador_mde',
|
||||||
|
'Periodo': '2026-06',
|
||||||
|
'Hotel': 'EST-MDE',
|
||||||
|
'Monto': 120000,
|
||||||
|
'Cantidad': 10,
|
||||||
|
'Id_Transaccion': 'TX-MDE-001'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'Colaborador': 'lider_ctg',
|
||||||
|
'Periodo': '2026-06',
|
||||||
|
'Hotel': 'EST-CTG',
|
||||||
|
'Monto': 2500000, // Anomaly trigger (value > 1,000,000)
|
||||||
|
'Cantidad': 15,
|
||||||
|
'Id_Transaccion': 'TX-CTG-002'
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
const wb = XLSX.utils.book_new();
|
||||||
|
const ws = XLSX.utils.json_to_sheet(data);
|
||||||
|
XLSX.utils.book_append_sheet(wb, ws, 'Sales Import');
|
||||||
|
|
||||||
|
// Ensure target directories exist
|
||||||
|
const dir = path.join(__dirname, '../public/templates');
|
||||||
|
if (!fs.existsSync(dir)) {
|
||||||
|
fs.mkdirSync(dir, { recursive: true });
|
||||||
|
}
|
||||||
|
|
||||||
|
const outputPath = path.join(dir, 'demo_sales_data.xlsx');
|
||||||
|
XLSX.writeFile(wb, outputPath);
|
||||||
|
console.log(`Successfully generated demo spreadsheet at: ${outputPath}`);
|
||||||