orderBy('level', 'ASC')->get(); $result = []; if ($items->count()) { $result = $items->toArray(); } return $result; } /** * 获取规则(带缓存, 并格式化数据). * @return mixed */ public function getRules() { $cacheRepo = make(CacheInterface::class); $arrItems = $cacheRepo->rememberForever(CreatorConstant::CACHE_KEY_RULE, function () { $lists = $this->getRulesWithoutCache(); if (!empty($lists)) { foreach ($lists as &$v) { $tmpLevel = intval($v['level']); $v['level_name'] = $v['level']; $v['coin_desc'] = sprintf('累计%d元', $v['lowest_coin'] / 10); if ($tmpLevel == 0) { $v['level_name'] = '未认证'; $v['coin_desc'] = '无'; } elseif ($tmpLevel == 1) { $v['coin_desc'] = '认证通过即可'; } unset($v['id'], $v['created_at'], $v['updated_at']); } } return $lists; }); return $arrItems; } /** * 根据等级获取规则. * @param $level * @return \Hyperf\Database\Model\Builder|\Hyperf\Database\Model\Model|object|null */ public function getRuleByLevel($level) { return CreatorRuleModel::query()->where(['level' => $level])->first(); } }