# DW Ads Reporter — Faz 13

## Konu
Senkron sonrası veri kalite kontrolü.

Bu faz, snapshot çekildikten sonra her bağlantı için rapora hazır olma durumunu kontrol eder:

- Snapshot tablosu var mı?
- Seçilen tarih aralığında satır var mı?
- Beklenen günlerin tamamında veri var mı?
- Hangi günlerde veri eksik?
- Son sync tarihi rapor aralığını karşılıyor mu?
- Son bağlantı hatası var mı?
- Ana metrikler sıfır mı?
- Rapor üretmeye hazır mı?

## Eklenen dosyalar

- `app/Services/Quality/DataQualityService.php`
- `app/Http/Controllers/Admin/DataQualityController.php`
- `app/Console/Commands/DataQualityCommand.php`
- `resources/views/admin/sync/quality.blade.php`
- `resources/views/elements/sidebar.blade.php`
- `resources/views/admin/accounts/show.blade.php`
- `routes/web.php`
- `app/Console/Kernel.php`

## Yeni ekran

```text
/admin/sync/quality
```

## Yeni komut

```bash
php artisan dw:data-quality
```

Örnekler:

```bash
php artisan dw:data-quality --from=2026-05-01 --to=2026-05-07
php artisan dw:data-quality 1 --from=2026-05-01 --to=2026-05-07 --save
php artisan dw:data-quality --client=2 --platform=google_ads --save
```

## Kurulum

Faz 1-12 uygulanmış Vora `package` klasörünün üzerine bu patch içeriğini kopyalayın.

Sonra:

```bash
composer dump-autoload
php artisan optimize:clear
```

Bu fazda yeni migration yoktur.

## Scheduler

Aşağıdaki günlük kontrol `Kernel.php` içine eklendi:

```bash
php artisan dw:data-quality --from=yesterday --to=yesterday --save
```

Bu komut her gün senkron sonrası çalışır ve sonuçları bağlantının `meta.last_quality_check` alanına kaydeder.
