From 2b1de583fd0f857a6f530e8a5353b58f7b78487c Mon Sep 17 00:00:00 2001 From: BOHA Date: Fri, 29 May 2026 14:08:35 +0200 Subject: [PATCH] feat(warehouse): add entity types, permissions, and number sequences --- prisma/seed.ts | 35 ++++++++++++++++++++++++++++++++++- src/types/index.ts | 10 +++++++++- 2 files changed, 43 insertions(+), 2 deletions(-) diff --git a/prisma/seed.ts b/prisma/seed.ts index 76d6d4c..6a11e75 100644 --- a/prisma/seed.ts +++ b/prisma/seed.ts @@ -280,6 +280,32 @@ const PERMISSIONS: { module: "settings", description: "Prohlížet auditní logy", }, + + // Sklad + { + name: "warehouse.view", + display_name: "Zobrazit sklad", + module: "warehouse", + description: "Prohlížet stav skladu, položky, reporty a historii pohybů", + }, + { + name: "warehouse.operate", + display_name: "Příjem a výdej", + module: "warehouse", + description: "Vytvářet a potvrzovat příjmy, výdeje a rezervace", + }, + { + name: "warehouse.manage", + display_name: "Správa skladu", + module: "warehouse", + description: "Spravovat katalog materiálů, dodavatele, lokace a kategorie", + }, + { + name: "warehouse.inventory", + display_name: "Inventura", + module: "warehouse", + description: "Vytvářet a potvrzovat inventurní sčítkání", + }, ]; async function main() { @@ -407,7 +433,14 @@ async function main() { // 6. Initialize number_sequences for current year const year = new Date().getFullYear(); - const types = ["quotation", "order", "invoice"]; + const types = [ + "quotation", + "order", + "invoice", + "warehouse_receipt", + "warehouse_issue", + "warehouse_inventory", + ]; for (const type of types) { const existing = await prisma.number_sequences.findFirst({ where: { type, year }, diff --git a/src/types/index.ts b/src/types/index.ts index d479a88..232cb7b 100644 --- a/src/types/index.ts +++ b/src/types/index.ts @@ -131,4 +131,12 @@ export type EntityType = | "company_settings" | "leave_balance" | "project_file" - | "audit_logs"; + | "audit_logs" + | "warehouse_item" + | "warehouse_receipt" + | "warehouse_issue" + | "warehouse_reservation" + | "warehouse_inventory" + | "warehouse_supplier" + | "warehouse_category" + | "warehouse_location";