feat(stock): stok kategorileri, ürün tipleri, hareketler ve FIFO SKT

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-11-06 08:10:10 +03:00
parent abf2ea6dd7
commit d9de29c18d
18 changed files with 2544 additions and 1 deletions
+45
View File
@@ -0,0 +1,45 @@
/**
* Varsayılan stok kategori seti (Bölüm 6.10). `key` sabittir (tekrar yüklemede kopya olmaz).
* `expenseKey`: eşlenen gider kategorisinin varsayılan anahtarı (Faz 13'te alışveriş giderleri).
* Parantez içindeki örnekler (Kırmızı Mercimek, Toz Deterjan …) ürün tipidir; birim ve hedef
* haneye göre değiştiği için otomatik eklenmez (seed örnek verisinde vardır).
*/
export type DefaultStockCategory = {
key: string;
name: string;
expenseKey?: string;
children?: Omit<DefaultStockCategory, "children" | "expenseKey">[];
};
export const DEFAULT_STOCK_CATEGORIES: DefaultStockCategory[] = [
{
key: "mutfak",
name: "Mutfak",
expenseKey: "market.gida",
children: [
{ key: "mutfak.manav", name: "Manav" },
{ key: "mutfak.sarkuteri", name: "Şarküteri" },
{ key: "mutfak.bakliyat", name: "Bakliyat" },
],
},
{
key: "genel-temizlik",
name: "Genel Temizlik",
expenseKey: "market.temizlik",
children: [
{ key: "genel-temizlik.bulasik", name: "Bulaşık" },
{ key: "genel-temizlik.camasir", name: "Çamaşır" },
{ key: "genel-temizlik.genel", name: "Genel" },
],
},
{
key: "kisisel-temizlik",
name: "Kişisel Temizlik",
expenseKey: "market.kisisel-bakim",
children: [
{ key: "kisisel-temizlik.sampuan", name: "Şampuan" },
{ key: "kisisel-temizlik.tiras", name: "Tıraş" },
{ key: "kisisel-temizlik.kisisel-bakim", name: "Kişisel Bakım" },
],
},
];