diff --git a/app/Listeners/BindBusinessGoods.php b/app/Listeners/BindBusinessGoods.php deleted file mode 100644 index b6c3ed8..0000000 --- a/app/Listeners/BindBusinessGoods.php +++ /dev/null @@ -1,34 +0,0 @@ -shop = $shop; - } - - /** - * Handle the event. - * - * @param Registered $event - * @return void - */ - public function handle(Registered $event) - { - // - } -} diff --git a/app/Listeners/StockWarning.php b/app/Listeners/StockWarning.php index b688d40..cb33eed 100644 --- a/app/Listeners/StockWarning.php +++ b/app/Listeners/StockWarning.php @@ -23,21 +23,24 @@ class StockWarning implements ShouldQueue public function handle($event) { if (isset($event->goodsSku->stock)) { - if (5 >= $event->goodsSku->stock) { - // 修改状态为预警,发送通知给管理员 - $event->goodsSku->status = 2; - } else { + $event->goodsSku->status = 2; + if (0 >= $event->goodsSku->stock) { + $event->goodsSku->status = 0; + } + if (5 < $event->goodsSku->stock) { $event->goodsSku->status = 1; } $event->goodsSku->save(); } if (isset($event->goodsSkus)) { - $warningIds = $normalIds = []; + $warningIds = $normalIds = $downIds = []; foreach ($event->goodsSkus as $goodsSku) { - if (5 >= $goodsSku['stock']) { - $warningIds[] = $goodsSku['id']; - } else { + if (0 >= $goodsSku['stock']) { + $downIds[] = $goodsSku['id']; + } elseif (5 < $goodsSku['stock']) { $normalIds[] = $goodsSku['id']; + } else { + $warningIds[] = $goodsSku['id']; } } if ($warningIds) { @@ -46,6 +49,9 @@ class StockWarning implements ShouldQueue if ($normalIds) { GoodsSku::query()->whereIn('id', $normalIds)->update(['status' => 1]); } + if ($downIds) { + GoodsSku::query()->whereIn('id', $downIds)->update(['status' => 0]); + } } } }