subDays(config('cafel.mises_en_places_retain', 370)); $this->syncWithCafelApi( CafelMepEgg::class, 'cafel.ldc.mepoeufs', [ 'dateDebut' => $dateDebut->format('Y-m-d'), 'dateFin' => now()->format('Y-m-d') ], function (array $row) { // * Explode inuav if (\array_key_exists('inuav_codes', $row)) { $row['inuav_codes'] = explode(',', $row['inuav_codes']); } // * Validate row data CafelMepEgg::validateDataRow($row); /** @var array Unique Key columns */ $uniqueColumnsKey = []; foreach (CafelMepEgg::UNIQUE_COLUMN_KEYS as $uField) { $uniqueColumnsKey[$uField] = $row[$uField]; } forward_static_call_array( [CafelEggMiseEnPlace::class, 'updateOrCreate'], [$uniqueColumnsKey, $row] ); } ); $this->mailInvalidRows(CafelMepEgg::UNIQUE_COLUMN_KEYS, CafelMepEgg::class); // * DeleteOld MEPs // * Garder une interstice de X jours entre la suppression et ce qu'on récupère de CAFEL CafelEggMiseEnPlace::whereDate('transfert_date', '<', $dateDebut->subDays( config('cafel.mises_en_places_retain', 370) ))->delete(); } }