更新文章接口

This commit is contained in:
2025-12-26 15:30:15 +08:00
parent 3e9a3731e5
commit 9edafa66e7
5 changed files with 199 additions and 30 deletions
+64 -1
View File
@@ -73,11 +73,74 @@ class ResourcesController extends BaseController
// 转换为数组并处理数据
$resource = $resource->toArray();
// 获取当前资源的分类ID(用于查询相关内容)
$currentCateId = $resource['cate'];
// 查询上一篇(同分类,ID更小的,按ID倒序取第一个)
$prevResource = Resources::where([
['id', '<', $id],
['cate', '=', $currentCateId],
['delete_time', '=', null],
['status', '=', 1],
['push', '=', 1]
])
->field('id,title,icon')
->order('id', 'desc')
->find();
// 查询下一篇(同分类,ID更大的,按ID正序取第一个)
$nextResource = Resources::where([
['id', '>', $id],
['cate', '=', $currentCateId],
['delete_time', '=', null],
['status', '=', 1],
['push', '=', 1]
])
->field('id,title,icon')
->order('id', 'asc')
->find();
// 查询相关文章(同分类,排除当前文章,按时间倒序取5个)
$relatedResources = Resources::where([
['id', '<>', $id],
['cate', '=', $currentCateId],
['delete_time', '=', null],
['status', '=', 1],
['push', '=', 1]
])
->field('id,title,icon,views,downloads,create_time')
->order('create_time', 'desc')
->limit(5)
->select();
// 将cate字段替换为分类名称
$resource['cate'] = $resource['cate_name'];
unset($resource['cate_name']);
// 返回数据
// 处理相关文章数据
$relatedData = [];
if ($relatedResources) {
foreach ($relatedResources as $related) {
$relatedData[] = [
'id' => $related['id'],
'title' => $related['title'],
'icon' => $related['icon']
];
}
}
// 将相关数据添加到资源对象中,保持原有数据结构
$resource['prev_resource'] = $prevResource ? [
'id' => $prevResource['id'],
'title' => $prevResource['title']
] : null;
$resource['next_resource'] = $nextResource ? [
'id' => $nextResource['id'],
'title' => $nextResource['title']
] : null;
$resource['related_resources'] = $relatedData;
// 返回数据,保持原有结构
return json([
'code' => 0,
'msg' => '获取成功',