feat: add Warehouses + Integrations modules, /admin/configuracion page
- Schema v0.3: Warehouse + Integration models (db push applied) - WarehousesModule: CRUD, set-default, multi-warehouse support - IntegrationsModule: 26 keys across 7 groups (payment, notifications, customs, courier, marketplace, compliance, warehouse) - AuthService: suite address pulled from default Warehouse in DB (env fallback) - AuthModule: imports WarehousesModule - Seed: creates default warehouse from WAREHOUSE_ADDRESS_* env vars - Web: /admin/configuracion page (3 tabs: Bodegas, Integraciones, Estado APIs) - Web: admin layout adds Configuracion nav link - api.ts: warehouses + integrations client methods
This commit is contained in:
@@ -50,6 +50,30 @@ async function main() {
|
||||
});
|
||||
console.log("✓ Tarifa base configurada ($3.50/lb, 2% seguro, 0.5% FODINFA, 15% IVA)");
|
||||
|
||||
// ─── Bodega predeterminada (doc §07 + §12) ────────────────
|
||||
const warehouseCount = await prisma.warehouse.count({ where: { tenantId: tenant.id } });
|
||||
if (warehouseCount === 0) {
|
||||
await prisma.warehouse.create({
|
||||
data: {
|
||||
tenantId: tenant.id,
|
||||
name: "Bodega NJ — City of Orange",
|
||||
street: process.env.WAREHOUSE_ADDRESS_STREET ?? "150 N Day St",
|
||||
city: process.env.WAREHOUSE_ADDRESS_CITY ?? "City of Orange",
|
||||
state: process.env.WAREHOUSE_ADDRESS_STATE ?? "NJ",
|
||||
zip: process.env.WAREHOUSE_ADDRESS_ZIP ?? "07050",
|
||||
country: process.env.WAREHOUSE_ADDRESS_COUNTRY ?? "US",
|
||||
phone: "+1-555-0100",
|
||||
contactName: "Operaciones Moraworld NJ",
|
||||
schedule: "Lun–Vie 8:00–17:00 ET",
|
||||
isDefault: true,
|
||||
isActive: true,
|
||||
},
|
||||
});
|
||||
console.log("✓ Bodega predeterminada creada: 150 N Day St, City of Orange, NJ 07050");
|
||||
} else {
|
||||
console.log("→ Bodega predeterminada ya existe");
|
||||
}
|
||||
|
||||
// ─── Usuarios de prueba (uno por cada rol del §06) ────────
|
||||
|
||||
const usersToSeed: Array<{
|
||||
|
||||
Reference in New Issue
Block a user