rkljw před 5 měsíci
rodič
revize
8658bb462d

+ 1 - 0
composer.json

@@ -17,6 +17,7 @@
         "doctrine/annotations": "^2.0",
         "easyswoole/verifycode": "3.x",
         "hyperf/amqp": "^3.1",
+        "hyperf/async-queue": "^3.1",
         "hyperf/cache": "~3.1.0",
         "hyperf/command": "^3.1",
         "hyperf/config": "~3.1.0",

+ 80 - 3
composer.lock

@@ -4,7 +4,7 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
         "This file is @generated automatically"
     ],
-    "content-hash": "d5f7fd6fcee090d2a5947dfb2b5bd447",
+    "content-hash": "ec8b13cb76745a44071ba9a5223679f4",
     "packages": [
         {
             "name": "carbonphp/carbon-doctrine-types",
@@ -1182,6 +1182,83 @@
             ],
             "time": "2024-09-25T02:54:12+00:00"
         },
+        {
+            "name": "hyperf/async-queue",
+            "version": "v3.1.42",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/hyperf/async-queue.git",
+                "reference": "1cd25666ac1e1f23c9eab6be642e86802a96307b"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/hyperf/async-queue/zipball/1cd25666ac1e1f23c9eab6be642e86802a96307b",
+                "reference": "1cd25666ac1e1f23c9eab6be642e86802a96307b",
+                "shasum": ""
+            },
+            "require": {
+                "hyperf/codec": "~3.1.0",
+                "hyperf/collection": "~3.1.0",
+                "hyperf/command": "~3.1.0",
+                "hyperf/contract": "~3.1.0",
+                "hyperf/support": "~3.1.0",
+                "hyperf/utils": "~3.1.0",
+                "php": ">=8.1",
+                "psr/container": "^1.0 || ^2.0",
+                "psr/event-dispatcher": "^1.0"
+            },
+            "suggest": {
+                "hyperf/di": "Required to use annotations.",
+                "hyperf/event": "Required to dispatch a event.",
+                "hyperf/logger": "Required to use QueueHandleListener.",
+                "hyperf/process": "Auto register the consumer process for server."
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "3.1-dev"
+                },
+                "hyperf": {
+                    "config": "Hyperf\\AsyncQueue\\ConfigProvider"
+                }
+            },
+            "autoload": {
+                "files": [
+                    "src/Functions.php"
+                ],
+                "psr-4": {
+                    "Hyperf\\AsyncQueue\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "description": "A async queue component for hyperf.",
+            "homepage": "https://hyperf.io",
+            "keywords": [
+                "async-queue",
+                "hyperf",
+                "php"
+            ],
+            "support": {
+                "docs": "https://hyperf.wiki",
+                "issues": "https://github.com/hyperf/hyperf/issues",
+                "pull-request": "https://github.com/hyperf/hyperf/pulls",
+                "source": "https://github.com/hyperf/hyperf"
+            },
+            "funding": [
+                {
+                    "url": "https://hyperf.wiki/#/zh-cn/donate",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://opencollective.com/hyperf",
+                    "type": "open_collective"
+                }
+            ],
+            "time": "2024-09-25T02:54:12+00:00"
+        },
         {
             "name": "hyperf/cache",
             "version": "v3.1.43",
@@ -11708,12 +11785,12 @@
     ],
     "aliases": [],
     "minimum-stability": "dev",
-    "stability-flags": {},
+    "stability-flags": [],
     "prefer-stable": true,
     "prefer-lowest": false,
     "platform": {
         "php": ">=8.1"
     },
-    "platform-dev": {},
+    "platform-dev": [],
     "plugin-api-version": "2.6.0"
 }

+ 0 - 248
runtime/container/proxy/App_Controller_NewsController.proxy.php

@@ -1,248 +0,0 @@
-<?php
-
-declare (strict_types=1);
-namespace App\Controller;
-
-use App\JsonRpc\NewsServiceInterface;
-use App\Tools\PublicData;
-use Hyperf\Di\Annotation\Inject;
-use Hyperf\HttpServer\Annotation\AutoController;
-use App\Tools\Result;
-use Hyperf\Validation\Contract\ValidatorFactoryInterface;
-use Hyperf\Context\Context;
-/**
- * Class NewsController
- * @package App\Controller
- */
-//#[AutoController]
-class NewsController extends AbstractController
-{
-    use \Hyperf\Di\Aop\ProxyTrait;
-    use \Hyperf\Di\Aop\PropertyHandlerTrait;
-    function __construct()
-    {
-        if (method_exists(parent::class, '__construct')) {
-            parent::__construct(...func_get_args());
-        }
-        $this->__handlePropertyHandler(__CLASS__);
-    }
-    #[Inject]
-    protected ValidatorFactoryInterface $validationFactory;
-    /**
-     * @var NewsServiceInterface
-     */
-    #[Inject]
-    private $newsServiceClient;
-    /**
-     * 导航池列表
-     * @return void
-     */
-    public function getCategoryList()
-    {
-        $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->newsServiceClient->getCategoryList($requireData);
-        if ($result['data']) {
-            foreach ($result['data']['rows'] as $k => $v) {
-                $result['data']['rows'][$k]['pid_arr'] = $v['pid_arr'] ? json_decode($v['pid_arr']) : [0];
-            }
-        }
-        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
-    }
-    /**
-     * 站点下的导航池
-     * @return void
-     */
-    public function categoryList()
-    {
-        $requireData = $this->request->all();
-        $validator = $this->validationFactory->make($requireData, ['pid' => 'required'], ['pid.required' => '父级ID不能为空']);
-        if ($validator->fails()) {
-            $errorMessage = $validator->errors()->first();
-            return Result::error($errorMessage);
-        }
-        //        $requireData['website_id'] = Context::get("SiteId");
-        $result = $this->newsServiceClient->categoryList($requireData);
-        $rep = PublicData::buildMenuTree($result['data']);
-        return $result ? Result::success($rep) : Result::error($result['message']);
-    }
-    /**
-     * 添加导航
-     * @return array|void
-     */
-    public function addCategory()
-    {
-        $requireData = $this->request->all();
-        $validator = $this->validationFactory->make($requireData, ['name' => 'required', 'seo_title' => 'required', 'seo_keywords' => 'required', 'seo_description' => 'required'], ['name.required' => '导航池名称不能为空', 'seo_title.required' => 'seo标题名称不能为空', 'seo_keywords.required' => 'seo关键词不能为空', 'seo_description.required' => 'seo描述不能为空']);
-        if ($validator->fails()) {
-            $errorMessage = $validator->errors()->first();
-            return Result::error($errorMessage);
-        }
-        $requireData['pid'] = isset($requireData['pid_arr']) ? end($requireData['pid_arr']) : '';
-        $requireData['pid_arr'] = isset($requireData['pid_arr']) ? json_encode($requireData['pid_arr']) : '';
-        $requireData['city_id'] = isset($requireData['city_arr_id']) ? end($requireData['city_arr_id']) : '';
-        $requireData['city_arr_id'] = isset($requireData['city_arr_id']) ? json_encode($requireData['city_arr_id']) : '';
-        $requireData['department_id'] = isset($requireData['department_arr_id']) ? end($requireData['department_arr_id']) : '';
-        $requireData['department_arr_id'] = isset($requireData['department_arr_id']) ? json_encode($requireData['department_arr_id']) : '';
-        $result = $this->newsServiceClient->addCategory($requireData);
-        return $result ? Result::success($result['data']) : Result::error($result['message']);
-    }
-    /**
-     * 更新导航池
-     * @return array
-     */
-    public function updateCategory()
-    {
-        $requireData = $this->request->all();
-        $validator = $this->validationFactory->make($requireData, ['id' => 'required', 'name' => 'required', 'seo_title' => 'required', 'seo_keywords' => 'required', 'seo_description' => 'required'], ['id.required' => 'ID不能为空', 'name.required' => '栏目池名称不能为空', 'seo_title.required' => 'seo标题名称不能为空', 'seo_keywords.required' => 'seo关键词不能为空', 'seo_description.required' => 'seo描述不能为空']);
-        if ($validator->fails()) {
-            $errorMessage = $validator->errors()->first();
-            return Result::error($errorMessage);
-        }
-        $requireData['pid'] = isset($requireData['pid_arr']) ? end($requireData['pid_arr']) : '';
-        $requireData['pid_arr'] = isset($requireData['pid_arr']) ? json_encode($requireData['pid_arr']) : '';
-        $requireData['city_id'] = isset($requireData['city_arr_id']) ? end($requireData['city_arr_id']) : '';
-        $requireData['city_arr_id'] = isset($requireData['city_arr_id']) ? json_encode($requireData['city_arr_id']) : '';
-        $requireData['department_id'] = isset($requireData['department_arr_id']) ? end($requireData['department_arr_id']) : '';
-        $requireData['department_arr_id'] = isset($requireData['department_arr_id']) ? json_encode($requireData['department_arr_id']) : '';
-        $result = $this->newsServiceClient->updateCategory($requireData);
-        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
-    }
-    /**
-     * 删除分类
-     * @return array
-     */
-    public function delCategory()
-    {
-        $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->newsServiceClient->delCategory($requireData);
-        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
-    }
-    /**
-     * 资讯列表
-     * @return void
-     */
-    public function getArticleList()
-    {
-        $requireData = $this->request->all();
-        $validator = $this->validationFactory->make($requireData, ['page' => 'required', 'pageSize' => 'required'], ['page.required' => 'id不能为空', 'pageSize.required' => 'id不能为空']);
-        if ($validator->fails()) {
-            $errorMessage = $validator->errors()->first();
-            return Result::error($errorMessage);
-        }
-        $result = $this->newsServiceClient->getArticleList($requireData);
-        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
-    }
-    /**
-     * 获取导航池信息
-     * @return void
-     */
-    public function getCategoryInfo()
-    {
-        $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->newsServiceClient->getCategoryInfo($requireData);
-        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
-    }
-    /**
-     * 添加分类
-     * @return array|void
-     */
-    public function addArticle()
-    {
-        $requireData = $this->request->all();
-        $validator = $this->validationFactory->make($requireData, ['title' => 'required', 'cat_arr_id' => 'required', 'author' => 'required'], ['title.required' => '标题不能为空', 'cat_arr_id.required' => '导航池ID不能为空', 'author.required' => '作者不能为空']);
-        if ($validator->fails()) {
-            $errorMessage = $validator->errors()->first();
-            return Result::error($errorMessage);
-        }
-        $requireData['catid'] = isset($requireData['cat_arr_id']) ? end($requireData['cat_arr_id']) : '';
-        $requireData['cat_arr_id'] = isset($requireData['cat_arr_id']) ? json_encode($requireData['cat_arr_id']) : '';
-        $loginIp = $this->request->getHeader('x-forwarded-for')[0] ?? $this->request->getHeader('x-real-ip')[0] ?? $this->request->getServerParams()['remote_addr'] ?? '0.0.0.0';
-        $requireData['ip'] = $loginIp;
-        $requireData['admin_user_id'] = Context::get("UserId");
-        $requireData['level'] = isset($requireData['level']) && $requireData['level'] ? $requireData['level'] : 0;
-        $requireData['hits'] = isset($requireData['hits']) && $requireData['hits'] ? $requireData['hits'] : 0;
-        $requireData['is_original'] = isset($requireData['is_original']) && $requireData['is_original'] ? $requireData['is_original'] : 0;
-        $requireData['status'] = isset($requireData['status']) && $requireData['status'] ? $requireData['status'] : 0;
-        //        var_dump("入参:",$requireData);
-        $result = $this->newsServiceClient->addArticle($requireData);
-        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
-    }
-    /**
-     * 更新资讯
-     * @return array
-     */
-    public function updateArticle()
-    {
-        $requireData = $this->request->all();
-        $validator = $this->validationFactory->make($requireData, ['id' => 'required', 'title' => 'required', 'cat_arr_id' => 'required', 'author' => 'required'], ['title.required' => '标题不能为空', 'cat_arr_id.required' => '导航池ID不能为空', 'author.required' => '作者不能为空', 'id.required' => 'ID不能为空']);
-        if ($validator->fails()) {
-            $errorMessage = $validator->errors()->first();
-            return Result::error($errorMessage);
-        }
-        $requireData['catid'] = isset($requireData['cat_arr_id']) ? end($requireData['cat_arr_id']) : '';
-        $requireData['cat_arr_id'] = isset($requireData['cat_arr_id']) ? json_encode($requireData['cat_arr_id']) : '';
-        $result = $this->newsServiceClient->updateArticle($requireData);
-        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
-    }
-    /**
-     * 更新资讯状态
-     * @return array
-     */
-    public function upArticleStatus()
-    {
-        $requireData = $this->request->all();
-        $validator = $this->validationFactory->make($requireData, ['id' => 'required', 'status' => 'required'], ['id.required' => 'id不能为空', 'status.required' => '状态不能为空']);
-        if ($validator->fails()) {
-            $errorMessage = $validator->errors()->first();
-            return Result::error($errorMessage);
-        }
-        $result = $this->newsServiceClient->upArticleStatus($requireData);
-        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
-    }
-    /**
-     * 删除分类
-     * @return array
-     */
-    public function delArticle()
-    {
-        $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->newsServiceClient->delArticle($requireData);
-        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
-    }
-    /**
-     * 获取资讯信息
-     * @return array
-     */
-    public function getArticleInfo()
-    {
-        $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->newsServiceClient->getArticleInfo($requireData);
-        $result['data']['cat_arr_id'] = $result['data']['cat_arr_id'] ? json_decode($result['data']['cat_arr_id']) : [];
-        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
-    }
-}

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 0 - 0
runtime/container/scan.cache


Některé soubory nejsou zobrazeny, neboť je v těchto rozdílových datech změněno mnoho souborů