For Egg And Poultry Breeders

Truncate breeders before importing from Cafel
Trigger Breeder destroy event to remove pictures
This commit is contained in:
Jérémy Munsch 2022-10-27 15:51:40 +02:00
parent cb6778adb3
commit 35aab2df1f
No known key found for this signature in database
GPG key ID: 18361AF3BFEC0FEC
5 changed files with 39 additions and 0 deletions

View file

@ -16,6 +16,17 @@ class CafelEggBreederJob extends CafelJobs
*/
public function handle()
{
// ! We have to remove all breeders to reimport them all in order to make sure
// ! to delete breeders that dont exists anymore (Api fetch constrain)
// ! vu avec Sylvain 27/10/2022
// * Destroy breeder one by one to trigger destroy event
/** @var \Illuminate\Database\Eloquent\Collection<\App\Models\CafelEggBreeder> */
$eggBreeders = CafelEggBreeder::all();
$eggBreeders->each(function (CafelEggBreeder $breeder) {
$breeder->deleteOrFail();
});
$this->syncWithCafelApi(
ApiCafelEggBreeder::class,
'cafel.ldc.eleveursoeufs',

View file

@ -3,6 +3,7 @@
namespace App\Jobs;
use App\Lib\CafelApi\Models\CafelMepPoultry;
use App\Models\CafelPoultryBreeder;
use App\Models\CafelPoultryMiseEnPlace;
class CafelMepPoultryJob extends CafelJobs

View file

@ -16,6 +16,17 @@ class CafelPoultryBreederJob extends CafelJobs
*/
public function handle()
{
// ! We have to remove all breeders to reimport them all in order to make sure
// ! to delete breeders that dont exists anymore (Api fetch constrain)
// ! vu avec Sylvain 27/10/2022
// * Destroy breeder one by one to trigger destroy event
/** @var \Illuminate\Database\Eloquent\Collection<\App\Models\CafelEggBreeder> */
$poultryBreeders = CafelPoultryBreeder::all();
$poultryBreeders->each(function (CafelPoultryBreeder $breeder) {
$breeder->deleteOrFail();
});
$this->syncWithCafelApi(
ApiCafelPoultryBreeder::class,
'cafel.ldc.eleveursvolailles',

View file

@ -112,6 +112,14 @@ class CafelEggBreeder extends Model
return self::areInuavCodesUniques($model);
return self::isEdeCodeUnique($model);
});
static::deleting(function (self $model) {
if ($model->getRawOriginal('path_picture_1')) {
Storage::delete(\public_path($model->getRawOriginal('path_picture_1')));
}
if ($model->getRawOriginal('path_picture_2')) {
Storage::delete(\public_path($model->getRawOriginal('path_picture_2')));
}
});
}
// * METHODS

View file

@ -94,6 +94,14 @@ class CafelPoultryBreeder extends Model
}
return self::areInuavCodesUniques($model);
});
static::deleting(function (self $model) {
if ($model->getRawOriginal('path_picture_1')) {
Storage::delete(\public_path($model->getRawOriginal('path_picture_1')));
}
if ($model->getRawOriginal('path_picture_2')) {
Storage::delete(\public_path($model->getRawOriginal('path_picture_2')));
}
});
}
// * METHODS