trim($params['name']), 'icon' => $params['icon'] ?? '', 'sort' => $params['sort'] ?? 0, 'status' => $params['status'] ?? 1, ]); return true; } catch (\Exception $e) { self::setError($e->getMessage()); return false; } } public static function edit(array $params): bool { try { CommunityCategory::update([ 'id' => $params['id'], 'name' => trim($params['name']), 'icon' => $params['icon'] ?? '', 'sort' => $params['sort'] ?? 0, 'status' => $params['status'] ?? 1, ]); return true; } catch (\Exception $e) { self::setError($e->getMessage()); return false; } } public static function delete(array $params): bool { if (CommunityPost::where('category_id', $params['id'])->count() > 0) { self::setError('该分类下存在帖子,不能删除'); return false; } try { CommunityCategory::destroy($params['id']); return true; } catch (\Exception $e) { self::setError($e->getMessage()); return false; } } public static function detail(array $params): array { return CommunityCategory::findOrEmpty($params['id'])->toArray(); } public static function all(): array { return CommunityCategory::order('sort', 'desc') ->order('id', 'desc') ->select() ->toArray(); } }