goodsSku)){ //查询库存是否满足告警规则 //查找昨日统计的库存数据 $inventory = $event->goodsSku['yesterday_num'] ?? 0; $expireTime = Carbon::now()->addMinutes(30)->toDateTimeString(); $proportion = Cache::remember(CacheKeyEnum::STOCK_RULE_PROPORTION, $expireTime, function () { $developerConfig = DeveloperConfig::query()->where("key", "=", DevConfigKeyEnum::STOCK_RULE_PROPORTION)->first(); return $developerConfig['value'] ?? DevConfigKeyEnum::DEFAULT_STOCK_RULE_PROPORTION; }); //库存比例小于最近盘点多少告警 一天也只是告警一次 if ($inventory > 10 && $inventory * $proportion > $event->goodsSku->stock) { $messageService = new MessageService(); $messageService->createLowerStockNoticeMessage($inventory, $event->goodsSku->toArray()); } } }catch(\Exception $exception) { Log::error("库存告警发生异常",["error"=>$exception->getMessage()]); } } }