123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 |
- <?php
- declare(strict_types=1);
- namespace App\Controller;
- use App\JsonRpc\LinkServiceInterface;
- use Hyperf\Di\Annotation\Inject;
- use Hyperf\HttpServer\Annotation\AutoController;
- use App\Tools\Result;
- use Hyperf\Context\Context;
- use Hyperf\Logger;
- use Hyperf\Validation\Contract\ValidatorFactoryInterface;
- /**
- * Class LinkController
- * @package App\Controller
- */
- //#[AutoController]
- class LinkController extends AbstractController
- {
- #[Inject]
- protected ValidatorFactoryInterface $validationFactory;
- /**
- * @var LinkServiceInterface
- */
- #[Inject]
- private $linkServiceClient;
- /**
- * 友情链接列表
- * @return array
- */
- public function getLinkList()
- {
- $requireData = $this->request->all();
- $validator = $this->validationFactory->make(
- $requireData,
- [
- 'page' => 'required',
- 'pageSize' => 'required',
- ],
- [
- 'page.required' => '当前页码不能为空',
- 'pageSize.required' => '每页显示条数不能为空',
- ]
- );
- if ($validator->fails()){
- $errorMessage = $validator->errors()->first();
- return Result::error($errorMessage);
- }
- $result = $this->linkServiceClient->getLinkList($requireData);
- return $result?Result::success($result['data']):Result::error($result['message']);
- }
- /**
- * 创建友情链接
- * @return array
- */
- public function createLink()
- {
- $requireData = $this->request->all();
- $validator = $this->validationFactory->make(
- $requireData,
- [
- 'title' => 'required',
- 'website_id' => 'required',
- 'sort' => 'required',
- 'url' => 'required',
- 'type' => 'required',
- ],
- [
- 'title.required' => '名称不能为空',
- 'website_id.required' => '网站id不能为空',
- 'sort.required' => '排序不能为空',
- 'url.required' => '跳转地址不能为空',
- 'type.required' => '类型不能为空',
- ]
- );
- if ($validator->fails()){
- $errorMessage = $validator->errors()->first();
- return Result::error($errorMessage);
- }
- $result = $this->linkServiceClient->createLink($requireData);
- return $result?Result::success($result['data']):Result::error($result['message']);
- }
- /**
- * 更新友情链接
- * @return array
- */
- public function updateLink()
- {
- $requireData = $this->request->all();
- $validator = $this->validationFactory->make(
- $requireData,
- [
- 'id' => 'required',
- 'title' => 'required',
- 'website_id' => 'required',
- 'sort' => 'required',
- 'url' => 'required',
- 'type' => 'required',
- ],
- [
- 'id.required' => 'id不能为空',
- 'title.required' => '名称不能为空',
- 'website_id.required' => '网站id不能为空',
- 'sort.required' => '排序不能为空',
- 'url.required' => '跳转地址不能为空',
- 'type.required' => '类型不能为空',
- ]
- );
- if ($validator->fails()){
- $errorMessage = $validator->errors()->first();
- return Result::error($errorMessage);
- }
- $result = $this->linkServiceClient->updateLink($requireData);
- return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
- }
- /**
- * 删除友情链接
- * @return array
- */
- public function delLink()
- {
- $requireData = $this->request->all();
- $validator = $this->validationFactory->make(
- $requireData,
- [
- 'id' => 'required',
- ],
- [
- 'id.required' => 'id不能为空',
- ]
- );
- if ($validator->fails()){
- $errorMessage = $validator->errors()->first();
- return Result::error($errorMessage);
- }
- $result = $this->linkServiceClient->delLink($requireData);
- return $result?Result::success($result['data']):Result::error($result['message']);
- }
- /**
- * 获取友情链接详情
- * @return array
- */
- public function getLinkInfo()
- {
- $requireData = $this->request->all();
- $validator = $this->validationFactory->make(
- $requireData,
- [
- 'id' => 'required',
- ],
- [
- 'id.required' => 'id不能为空',
- ]
- );
- if ($validator->fails()){
- $errorMessage = $validator->errors()->first();
- return Result::error($errorMessage);
- }
- $result = $this->linkServiceClient->getLinkInfo($requireData);
- return $result?Result::success($result['data']):Result::error($result['message']);
- }
- }
|