Files
hyperf_service/app/Cache/Redis/Common/CycleCache.php
2025-01-21 16:20:16 +08:00

53 lines
1.1 KiB
PHP

<?php
namespace App\Cache\Redis\Common;
use App\Cache\Redis\RedisCache;
use App\Constants\RedisCode;
use App\Model\Cycle;
use Hyperf\Di\Annotation\Inject;
use Psr\Container\ContainerExceptionInterface;
use Psr\Container\NotFoundExceptionInterface;
class CycleCache
{
/**
* @var RedisCache
*/
#[Inject]
protected RedisCache $redis;
/**
* @var Cycle $cycleModel
*/
#[Inject]
protected Cycle $cycleModel;
/**
* @return void
* @throws ContainerExceptionInterface
* @throws NotFoundExceptionInterface
*/
public function setAllCycleCache(): void
{
$key = CommonRedisKey::getCycleList();
if ($this->redis->exists($key,RedisCode::SYSTEM_DB)) return;
$allData = $this->cycleModel->get();
if (empty($allData)) return;
$allData = $allData->toArray();
foreach ($allData as $item) {
$this->redis->zAdd($key, $item['id'],$item['dates'],RedisCode::SYSTEM_DB);
}
}
// public function getCycleCache(string $key)
// {
// $this->redis->zScore()
// }
}