finance_details
finance_details, finansal kayıtlar için kategori/sınıflandırma sözlüğünü tutar. Sistem geneli kategoriler (user_id = null) ve kullanıcıya özel kategoriler (user_id dolu) aynı tabloda yönetilir.
Bu yapı, gelir/gider analizlerinin kullanıcı bazında özelleştirilebilmesini ve ortak kategori setinin korunmasını sağlar.
FK Davranis Notlari
| FK | ON DELETE | ON UPDATE | Not |
|---|---|---|---|
finance_details.user_id -> users.id | SET NULL | CASCADE | Kullaniciya ozel kategori, kullanici silindiginde globale dusurulebilir. |
Kolonlar
| Kolon | Tip | Null | Anlamı |
|---|---|---|---|
id | int | hayır | Kategori birincil anahtarı |
user_id | int | evet | Kategori sahibi kullanıcı; users.id (null ise global) |
name | varchar(150) | hayır | Kategori adı |
description | varchar(255) | evet | Kategori açıklaması |
is_active | boolean | hayır | Kategori aktif mi (DEFAULT: true) |
update_time | timestamp | hayır | Son güncelleme zamanı |
create_time | timestamp | hayır | Kayıt oluşturulma zamanı |
İndeksler
| İndeks | Tip | Açıklama |
|---|---|---|
id | Primary Key | Tablo birincil anahtarı |
(user_id, name) | Unique | Aynı kullanıcı için aynı kategori adı tekrar edemez |
Örnek Kayıtlar
- Global - Elektrik Geliri
- Global - Bakım Gideri
- Kullanıcı 1 - Mazot
- Kullanıcı 1 - İşçilik
{
"id": 1,
"user_id": null,
"name": "Elektrik Geliri",
"description": "Enerji üretim veya tasarruf kaynaklı gelir kaydı",
"is_active": true,
"update_time": "2026-04-03 10:00:00",
"create_time": "2026-04-03 10:00:00"
}
Özet: Tüm kullanıcılar için ortak kullanılabilen global gelir kategorisi.
{
"id": 2,
"user_id": null,
"name": "Bakım Gideri",
"description": "Bakım ve servis giderleri",
"is_active": true,
"update_time": "2026-04-03 10:00:00",
"create_time": "2026-04-03 10:00:00"
}
Özet: Sistem genelinde bakım/servis masrafları için kullanılan global gider kategorisi.
{
"id": 3,
"user_id": 1,
"name": "Mazot",
"description": "Kullanıcıya özel yakıt gider kategorisi",
"is_active": true,
"update_time": "2026-04-03 10:00:00",
"create_time": "2026-04-03 10:00:00"
}
Özet: Kullanıcı 1'e özel tanımlanmış yakıt gider kategorisi.
{
"id": 4,
"user_id": 1,
"name": "İşçilik",
"description": "Kullanıcıya özel işçilik gider kategorisi",
"is_active": true,
"update_time": "2026-04-03 10:00:00",
"create_time": "2026-04-03 10:00:00"
}
Özet: Kullanıcı 1 için işçilik maliyetlerini ayrı izlemeye yarayan kategori kaydı.