Hello à tous;
J'ai un problème avec un de mes jobs.
La tache est chargée de décrémenter le quota des cartes des utilisateurs qui ont fait une commande du jour en cours qui ont l'état confirmé. Tout se déroulait parfaitement quand on avait une dizaine d'utilisateur et maintenant qu'on n'est en production et qu'on a une centaine d'utilisateur, le job s'exécute mais ne décrémente pas de cartes de certains utilisateurs qui ont une commande en cours.
Voici le contenu de ma function handle
public function handle()
{
Order::with('user.accessCard')->today()->whereState('state', Confirmed::class)->each(function (Order $order) {
DB::transaction(function () use ($order) {
$order->user->accessCard->decrement('quota_lunch');
$order->update([
'payment_method_id' => $order->user->accessCard->payment_method_id,
'access_card_id' => $order->user->accessCard->id,
]);
});
});
return Command::SUCCESS;
}
Le comble est qu'y a des utilisateurs qui ont leur quota décrémenter aujourd'hui et le jour suivant le quota se décrémente pas et vis versa.
Besoin d'aide pour resoudre le probleme. Merci d'avance pour votre aide.