devices
devices, sistemdeki fiziksel IoT cihazlarının kimlik, proje, model, firmware ve adres bağlamındaki ana envanter kaydını tutar.
Bu yapı, cihaz yaşam döngüsü yönetimi için merkez tablo görevi görür. Yetkilendirme, telemetri, kural motoru ve saha operasyonları cihaz kaydına referansla çalışır. Son baglanti bilgileri ve register degerleri ayri tablolarda tutulur; gerektiginde o tablolardan join/read ile cekilir.
Yapilacaklar (Soft Delete ve Audit)
-
is_deletedvedelete_timealanlari eklendi; fiziksel silmeyi operasyonel olarak kapatma hedefi belirlendi. -
created_byveupdated_byactor alanlari eklendi. -
create_time/update_timezorunlu yasam dongusu alanlari olarak korundu. - Audit trigger migrationi ile kritik degisikliklerin append-only loga yazimi uygulama asamasinda.
FK Davranis Notlari
| Bu tabloyu referanslayan FK | ON DELETE | ON UPDATE | Not |
|---|---|---|---|
authorities.device_id -> devices.id | CASCADE | CASCADE | Cihaz kaydi silinirse authority baglantilari temizlenir. |
inbox.device_id -> devices.id | SET NULL | CASCADE | Mesaj gecmisi korunur, cihaz referansi bosaltilir. |
streams.device_id -> devices.id | RESTRICT | CASCADE | Telemetri gecmisi olan cihazin fiziksel silinmesi engellenir. |
finances.device_id -> devices.id | RESTRICT | CASCADE | Finans gecmisi olan cihazin fiziksel silinmesi engellenir. |
logs.device_id -> devices.id | SET NULL | CASCADE | Log denetim izi korunur. |
Kolonlar
| Kolon | Tip | Null | Anlamı |
|---|---|---|---|
id | varchar(21) | hayır | Cihaz birincil anahtarı (benzersiz cihaz kimliği) |
status_id | int | evet | Cihaz durumu; statuses.id |
project_id | int | evet | Cihazın bağlı olduğu proje; projects.id |
manufacturer_model_id | int | evet | Cihaz modeli; manufacturer_models.id |
firmware_id | int | evet | Yüklü firmware sürümü; firmwares.id |
address_id | int | evet | Cihaz lokasyonu; addresses.id |
name | varchar(100) | evet | Cihaz görünen adı |
description | text | evet | Cihaz hakkında açıklama notu |
is_deleted | boolean | hayır | Soft delete bayrağı (default: false) |
delete_time | timestamp | evet | Soft delete zamanı |
created_by | int | hayır | Kaydı oluşturan actor; users.id |
updated_by | int | hayır | Kaydı güncelleyen actor; users.id |
create_time | timestamp | hayır | Kayıt oluşturulma zamanı |
update_time | timestamp | hayır | Son güncelleme zamanı |
İndeksler
| İndeks | Tip | Açıklama |
|---|---|---|
id | Primary Key | Tablo birincil anahtarı |
Örnek Kayıtlar
- Kuyu 1 PowerStat
- Organize Sanayi PowerStat
- Qapu Test Cihazı
- Maraba Tarla Cihazı
- WeatherStat Ofis Cihazı
{
"id": "46000000C47CA670",
"status_id": null,
"project_id": 1,
"manufacturer_model_id": 8,
"firmware_id": 1,
"address_id": 3,
"name": "Kuyu 1 PowerStat",
"description": "Kuyu 1 sahasında çalışan PowerStat V1 cihazı",
"is_deleted": false,
"delete_time": null,
"created_by": 1,
"updated_by": 1,
"create_time": "2026-03-01 09:00:00",
"update_time": "2026-04-03 10:30:00"
}
Özet: Konya sahasındaki PowerStat V1 cihazı için temel envanter ve bağlantı kaydı.
{
"id": "46000000C47CA671",
"status_id": null,
"project_id": 2,
"manufacturer_model_id": 9,
"firmware_id": 3,
"address_id": 5,
"name": "Organize Sanayi PowerStat",
"description": "Organize sanayi sahasında çalışan PowerStat V2 cihazı",
"is_deleted": false,
"delete_time": null,
"created_by": 1,
"updated_by": 2,
"create_time": "2026-03-05 11:00:00",
"update_time": "2026-04-03 10:25:00"
}
Özet: Organize sanayi lokasyonunda çalışan ve aktif publish biti olan cihaz kaydı.
{
"id": "46000000C47CA672",
"status_id": null,
"project_id": 5,
"manufacturer_model_id": 12,
"firmware_id": 6,
"address_id": 6,
"name": "Qapu Test Cihazı",
"description": "Qapu V1 test kurulumu cihazı",
"is_deleted": false,
"delete_time": null,
"created_by": 2,
"updated_by": 2,
"create_time": "2026-03-10 14:00:00",
"update_time": "2026-04-03 10:20:00"
}
Özet: Test ortamı için kullanılan ve stop register biti set edilmiş cihaz kaydı.
{
"id": "46000000C47CA673",
"status_id": null,
"project_id": 3,
"manufacturer_model_id": 10,
"firmware_id": 4,
"address_id": 3,
"name": "Maraba Tarla Cihazı",
"description": "Maraba V1 tarımsal saha izleme cihazı",
"is_deleted": false,
"delete_time": null,
"created_by": 3,
"updated_by": 3,
"create_time": "2026-03-12 08:30:00",
"update_time": "2026-04-03 10:10:00"
}
Özet: Tarımsal sahada çalışan ve publish biti aktif cihaz kaydı.
{
"id": "46000000C47CA674",
"status_id": null,
"project_id": 4,
"manufacturer_model_id": 11,
"firmware_id": 5,
"address_id": 1,
"name": "WeatherStat Ofis Cihazı",
"description": "WeatherStat V1 çevresel ölçüm cihazı",
"is_deleted": false,
"delete_time": null,
"created_by": 1,
"updated_by": 1,
"create_time": "2026-03-15 13:45:00",
"update_time": "2026-04-03 10:05:00"
}
Özet: Ofis ortamında çalışan çevresel ölçüm cihazı için envanter kaydı.