cache = Factory::cache('default'); } /** * 缓存企业和商铺关系数据 * @param $enterpriseId * @param $shopData * @return ResultWrapper */ public function cacheEnterpriseAndShop($enterpriseId, $shopData) { if( empty($shopData) ){ return ResultWrapper::fail('要缓存的数据为空', ErrorCode::$paramError); } // 写入之前先清理 self::cleanUserRelationEnterprise($enterpriseId); $pipe = $this->cache->multi(); foreach ($shopData as $key => $value){ $writeCache = $this->cache->sadd($this->EnterpriseRelationShopKey.'::'.$enterpriseId, $value['id']); } $pipe->exec(); } /** * 判断当前商铺id是否在当前企业下 * @param $enterpriseId * @param $shopId * @return boolean */ public function isHaveShopId($enterpriseId, $shopId) { $result = $this->cache->sismember($this->EnterpriseRelationShopKey.'::'.$enterpriseId, $shopId); return $result; } /** * 清除指定企业和商铺关联数据 * @param $enterpriseId */ public function cleanUserRelationEnterprise($enterpriseId) { $result = $this->cache->del($this->EnterpriseRelationShopKey.'::'.$enterpriseId); } /** * 缓存企业下所有商铺的销售区域 * @param $enterpriseId * @param array $salesArea */ public function cacheEnterpriseSalesArea($enterpriseId,$salesArea=[]) { $this->cache->hset($this->EnterpriseSalesAreaKey, $enterpriseId, json_encode(array_unique($salesArea))); } /** * 获取企业下的销售区域 * @param $enterpriseId * @return mixed */ public function getEnterpriseSalesArea($enterpriseId) { return $this->cache->hget($this->EnterpriseSalesAreaKey, $enterpriseId); } /** * 缓存商铺token * @param $enterpriseId * @param $shopId * @param $token * @return bool */ public function setShopToken($enterpriseId, $shopId, $token) { return $this->cache->zadd($this->shopToken.'::'.$enterpriseId, $shopId, $token); } /** * 根据token获取商铺id 反解token需要 * @param $enterpriseId * @param $token * @return float */ public function getShopToken($enterpriseId, $token) { return $this->cache->zscore($this->shopToken.'::'.$enterpriseId, $token); } }