diff --git a/app/Cache/Redis/Api/SiteCache.php b/app/Cache/Redis/Api/SiteCache.php index 23ba2e0..c9a057a 100644 --- a/app/Cache/Redis/Api/SiteCache.php +++ b/app/Cache/Redis/Api/SiteCache.php @@ -97,17 +97,17 @@ class SiteCache /** * @param int $siteId - * @return array|false|\Redis|null + * @return array|false|\Redis * @throws ContainerExceptionInterface * @throws NotFoundExceptionInterface */ - public function getSiteInfo(int $siteId): false|array|\Redis|null + public function getSiteInfo(int $siteId): false|array|\Redis { $siteKey = CommonRedisKey::siteInfoKey($siteId); if (!$this->redis->exists($siteKey,RedisCode::SYSTEM_DB)) $this->setSiteInfo($siteId); - return $this->redis->hGetAll($siteKey,RedisCode::SYSTEM_DB) ?? null; + return $this->redis->hGetAll($siteKey,RedisCode::SYSTEM_DB) ?? false; } /** diff --git a/app/Service/Api/Good/OptionalListService.php b/app/Service/Api/Good/OptionalListService.php index 8cc0d10..2007d7f 100644 --- a/app/Service/Api/Good/OptionalListService.php +++ b/app/Service/Api/Good/OptionalListService.php @@ -55,6 +55,12 @@ class OptionalListService extends BaseService #[Inject] protected Category $categoryModel; + /** + * 默认地址 + * @var array|false + */ + private array|false $siteInfo = []; + /** * @return array * @throws ContainerExceptionInterface @@ -67,12 +73,13 @@ class OptionalListService extends BaseService if (empty($cycleId)) return $this->return->success('success', ['list' => []]); $this->goodCache->cycleId = (int)$cycleId; - if (!empty($this->request->input('site_id'))){ - $siteInfo = $this->siteCache->getSiteInfo((int)$this->request->input('site_id')); - } - if (empty($siteInfo) || empty($siteInfo['kitchen_id'])) $siteInfo['kitchen_id'] = config('system.kitchen_id'); - $this->goodCache->kitchenId = (int)$siteInfo['kitchen_id']; + if (!empty($this->request->input('site_id'))){ + $this->siteInfo = $this->siteCache->getSiteInfo((int)$this->request->input('site_id')); + } + if (empty($this->siteInfo) || empty($this->siteInfo['kitchen_id'])) $this->siteInfo['kitchen_id'] = config('system.default_kitchen_id'); + + $this->goodCache->kitchenId = (int)$this->siteInfo['kitchen_id']; $data = $this->goodCache->getOptionalGoodList(); if (empty($data)) return $this->return->success('success', ['list' => []]);