Browse Source

feat(user): 新增稿件详情查看功能

- 在 CreationArticleReceiveRecordsController 中添加 read 方法用于获取稿件详情
- 在 CreationArticleReceiveRecordsService 中实现 readData 方法查询并返回指定稿件信息
- 添加路由规则 /read 指向新的 read 控制器方法,并设置权限 contributionRead
- 引入 ApiException 以处理数据不存在的情况
- 通过关联 media 模型查询稿件详情,确保返回完整数据结构
master
zhangf@suq.cn 2 days ago
parent
commit
486bfe46ba
  1. 5
      app/controller/user/CreationArticleReceiveRecordsController.php
  2. 2
      app/route/route.php
  3. 15
      app/service/admin/CreationArticleReceiveRecordsService.php

5
app/controller/user/CreationArticleReceiveRecordsController.php

@ -18,4 +18,9 @@ class CreationArticleReceiveRecordsController
return success($service->listData($params));
}
public function read(CreationArticleReceiveRecordsService $service, $id): Response
{
return success($service->readData($id));
}
}

2
app/route/route.php

@ -205,6 +205,8 @@ Route::group('/service/v1', function () {
Route::post('/receive', [OnlineMediasController::class, 'receive'])->setParams(['perm' => ['contributionReceive']]);
//稿件记录
Route::get('/index', [CreationArticleReceiveRecordsController::class, 'index'])->setParams(['perm' => ['contributionIndex']]);
//稿件详情
Route::get('/read', [CreationArticleReceiveRecordsController::class, 'read'])->setParams(['perm' => ['contributionRead']]);
});
//全局代理IP

15
app/service/admin/CreationArticleReceiveRecordsService.php

@ -5,6 +5,7 @@ namespace app\service\admin;
use app\dao\admin\OnlineMediasDao;
use app\dao\user\CreationArticleReceiveRecordsDao;
use plugin\piadmin\app\base\BaseService;
use plugin\piadmin\app\exception\ApiException;
use plugin\piadmin\app\utils\RequestUtils;
class CreationArticleReceiveRecordsService extends BaseService
@ -49,4 +50,18 @@ class CreationArticleReceiveRecordsService extends BaseService
return compact('list', 'count');
}
/**
* 获取信息
* @param mixed $id
* @return array
*/
public function readData(mixed $id): array
{
$package = $this->dao->get(['id' => $id], ['*'], ['media']);
if (empty($package)) {
throw new ApiException('数据不存在');
}
return $package->toArray();
}
}
Loading…
Cancel
Save