LiuJ 3 天之前
父节点
当前提交
ab80fae159
共有 3 个文件被更改,包括 172 次插入160 次删除
  1. 163 140
      app/Controller/WebsiteController.php
  2. 1 0
      composer.json
  3. 8 20
      composer.lock

+ 163 - 140
app/Controller/WebsiteController.php

@@ -16,6 +16,7 @@ use Phper666\JWTAuth\JWT;
 use DateTime;
 use App\JsonRpc\UserServiceInterface;
 use PhpParser\Node\Stmt\Return_;
+use Hyperf\Redis\Redis;
 
 /**
  * Class WebsiteController
@@ -40,6 +41,10 @@ class WebsiteController extends AbstractController
     #[Inject]
     private $userServiceClient;
 
+    #[Inject]
+    protected Redis $redis;
+
+
 
     protected JWT $JWT;
     public function __construct(Jwt $JWT)
@@ -749,6 +754,7 @@ class WebsiteController extends AbstractController
         //        var_dump("有效时间:",$time);
 
         $typeId = intval(Context::get("TypeId"));
+        $cacheKey = "admin_index_processed_data_{$typeId}";
         var_dump("用户类型:", $typeId);
         switch ($typeId) {
             case 1:
@@ -783,13 +789,22 @@ class WebsiteController extends AbstractController
                 $res = array_merge($runturn, $res);
                 return $result['code'] == 200 ? Result::success($res) : Result::error($result['message']);
             case 10000:
-                $result = $this->websiteServiceClient->getAdminIndex(['type_id' => $typeId]);
-                if (!$result || $result['code'] != 200) {
-                    return Result::error($result['message'] ?? '获取数据失败');
+                // 检查 Redis 中是否存在缓存
+                $cachedData = $this->redis->get($cacheKey);
+                var_dump("缓存数据:", $cachedData);
+                if ($cachedData) {
+                    // 如果缓存存在,直接返回缓存数据
+                    $result = json_decode($cachedData, true);
+                } else {
+                    // 如果缓存不存在,处理数据并存入缓存
+                    $result = $this->websiteServiceClient->getAdminIndex(['type_id' => $typeId]);
+                    if (!$result || $result['code'] != 200) {
+                        return Result::error($result['message'] ?? '获取数据失败');
+                    }
+                    // 将处理后的数据存入 Redis,设置 1 天(86400 秒)的过期时间
+                    $this->redis->setex($cacheKey, 60 * 5, json_encode($result));
                 }
-
                 $data = $result['data'];
-
                 $userTypeMapping = [
                     1 => '个人会员',
                     2 => '政务会员',
@@ -808,6 +823,7 @@ class WebsiteController extends AbstractController
                     'monthJobRecruiting' => $this->processMonthlyData($data['monthJobRecruiting']),
                 ];
 
+
                 // 用户类型映射
                 if (!empty($data['userType'])) {
                     foreach ($data['userType'] as &$item) {
@@ -1295,7 +1311,7 @@ class WebsiteController extends AbstractController
         }
     }
 
-    
+
 
     /**
      * 获取分类下的模板
@@ -2189,12 +2205,12 @@ class WebsiteController extends AbstractController
     {
         $id = Context::get("SiteId");
         $result = $this->websiteServiceClient->getWebsiteInfo(intval($id));
-        if($result['code']==200){
-            $result['data']['website_url'] = isset($result['data']['website_url']) && $result['data']['website_url']?json_decode($result['data']['website_url']):'';
-            $result['data']['website_column_arr_id'] = isset($result['data']['website_column_arr_id']) && $result['data']['website_column_arr_id']?json_decode($result['data']['website_column_arr_id']):'';
-            $result['data']['city_arr_id'] = isset($result['data']['city_arr_id']) && $result['data']['city_arr_id']?json_decode($result['data']['city_arr_id']):'';
+        if ($result['code'] == 200) {
+            $result['data']['website_url'] = isset($result['data']['website_url']) && $result['data']['website_url'] ? json_decode($result['data']['website_url']) : '';
+            $result['data']['website_column_arr_id'] = isset($result['data']['website_column_arr_id']) && $result['data']['website_column_arr_id'] ? json_decode($result['data']['website_column_arr_id']) : '';
+            $result['data']['city_arr_id'] = isset($result['data']['city_arr_id']) && $result['data']['city_arr_id'] ? json_decode($result['data']['city_arr_id']) : '';
             return Result::success($result['data']);
-        }else{
+        } else {
             return Result::error($result['message']);
         }
     }
@@ -2219,12 +2235,12 @@ class WebsiteController extends AbstractController
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->getWebsiteInfo(intval($requireData['website_id']));
-        if($result['code']==200){
-            $result['data']['website_url'] = isset($result['data']['website_url']) && $result['data']['website_url']?json_decode($result['data']['website_url']):'';
-            $result['data']['website_column_arr_id'] = isset($result['data']['website_column_arr_id']) && $result['data']['website_column_arr_id']?json_decode($result['data']['website_column_arr_id']):'';
-            $result['data']['city_arr_id'] = isset($result['data']['city_arr_id']) && $result['data']['city_arr_id']?json_decode($result['data']['city_arr_id']):'';
+        if ($result['code'] == 200) {
+            $result['data']['website_url'] = isset($result['data']['website_url']) && $result['data']['website_url'] ? json_decode($result['data']['website_url']) : '';
+            $result['data']['website_column_arr_id'] = isset($result['data']['website_column_arr_id']) && $result['data']['website_column_arr_id'] ? json_decode($result['data']['website_column_arr_id']) : '';
+            $result['data']['city_arr_id'] = isset($result['data']['city_arr_id']) && $result['data']['city_arr_id'] ? json_decode($result['data']['city_arr_id']) : '';
             return Result::success($result['data']);
-        }else{
+        } else {
             return Result::error($result['message']);
         }
     }
@@ -2236,7 +2252,7 @@ class WebsiteController extends AbstractController
     {
         $requireData['website_id'] = Context::get("SiteId");
         $result = $this->websiteServiceClient->getWebsiteAllCategory($requireData);
-        return $result['code']==200?Result::success(PublicData::buildCategoryTree($result['data'])):Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success(PublicData::buildCategoryTree($result['data'])) : Result::error($result['message']);
     }
 
     /**
@@ -2245,9 +2261,9 @@ class WebsiteController extends AbstractController
     public function getFooterCategoryList()
     {
         $requireData['website_id'] = Context::get("SiteId");
-        var_dump("ceshi:",$requireData);
+        var_dump("ceshi:", $requireData);
         $result = $this->websiteServiceClient->getFooterCategoryList($requireData);
-        return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
 
     // --自助建站-----------20250522fr----------------------start
@@ -2255,13 +2271,14 @@ class WebsiteController extends AbstractController
      * 获取所有的静态资源
      * @return array
      */
-    public function getStaticResourceList(){
+    public function getStaticResourceList()
+    {
         $requireData = $this->request->all();
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'page' =>'required|integer',
-                'pageSize' =>'required|integer'
+                'page' => 'required|integer',
+                'pageSize' => 'required|integer'
             ],
             [
                 'page.required' => '页码不能为空',
@@ -2277,29 +2294,30 @@ class WebsiteController extends AbstractController
         }
         // return $requireData;
         $result = $this->websiteServiceClient->getStaticResourceList($requireData);
-        Return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 底部导航详细内容
      * @return array
      */
-    public function getFooterContentInfo(){
-        $requireData = $this->request->all();
-                $validator = $this->validationFactory->make(
-                    $requireData,
-                    [
-                        'content_id' => 'required',
-                    ],
-                    [
-                        'content_id.required' => '内容id不能为空',
-                    ]
-                );
-                if ($validator->fails()){
-                    $errorMessage = $validator->errors()->first();
-                    return Result::error($errorMessage);
-                }
+    public function getFooterContentInfo()
+    {
+        $requireData = $this->request->all();
+        $validator = $this->validationFactory->make(
+            $requireData,
+            [
+                'content_id' => 'required',
+            ],
+            [
+                'content_id.required' => '内容id不能为空',
+            ]
+        );
+        if ($validator->fails()) {
+            $errorMessage = $validator->errors()->first();
+            return Result::error($errorMessage);
+        }
         $result = $this->websiteServiceClient->getFooterContentInfo($requireData);
-        return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 底部导航详情页/列表页
@@ -2319,12 +2337,12 @@ class WebsiteController extends AbstractController
                 'type.required' => '类型不能为空',
             ]
         );
-        if ($validator->fails()){
+        if ($validator->fails()) {
             $errorMessage = $validator->errors()->first();
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->getFooterContentList($requireData);
-        return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 添加静态资源
@@ -2336,8 +2354,8 @@ class WebsiteController extends AbstractController
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'img_url' =>'required',
-                'img_size' =>'required',
+                'img_url' => 'required',
+                'img_size' => 'required',
             ],
             [
                 'img_url.required' => '图片地址不能为空',
@@ -2349,7 +2367,7 @@ class WebsiteController extends AbstractController
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->addStaticResource($requireData);
-        Return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 删除静态资源
@@ -2361,7 +2379,7 @@ class WebsiteController extends AbstractController
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'id' =>'required|integer',
+                'id' => 'required|integer',
             ],
             [
                 'id.required' => 'id不能为空',
@@ -2373,7 +2391,7 @@ class WebsiteController extends AbstractController
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->delStaticResource($requireData);
-        Return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 获取尺寸列表
@@ -2385,13 +2403,13 @@ class WebsiteController extends AbstractController
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'page' =>'required|integer',
-                'pageSize' =>'required|integer'
+                'page' => 'required|integer',
+                'pageSize' => 'required|integer'
             ],
             [
                 'page.required' => '页码不能为空',
                 'page.integer' => '页码必须是整数',
-                'pageSize.required' => '每页显示数量不能为空',  
+                'pageSize.required' => '每页显示数量不能为空',
                 'pageSize.integer' => '每页显示数量必须是整数'
             ]
         );
@@ -2400,7 +2418,7 @@ class WebsiteController extends AbstractController
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->getSizeList($requireData);
-        return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 添加尺寸
@@ -2412,8 +2430,8 @@ class WebsiteController extends AbstractController
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'width' =>'required|integer',
-                'height' =>'required|integer',
+                'width' => 'required|integer',
+                'height' => 'required|integer',
             ],
             [
                 'width.required' => '尺寸宽度不能为空',
@@ -2427,7 +2445,7 @@ class WebsiteController extends AbstractController
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->addSize($requireData);
-        return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 修改尺寸
@@ -2439,18 +2457,18 @@ class WebsiteController extends AbstractController
         $validator = $this->validationFactory->make(
             $requireData,
             [
-               'id' =>'required|integer',
-               'width' =>'required|integer',
-               'height' =>'required|integer',
-            
+                'id' => 'required|integer',
+                'width' => 'required|integer',
+                'height' => 'required|integer',
+
             ],
             [
-               'id.required' => 'id不能为空',
-               'id.integer' => 'id必须是整数类型',
-               'width.required' => '尺寸宽度不能为空',
-               'width.integer' => '尺寸宽度必须是整数类型',
-               'height.required' => '尺寸高度不能为空',
-               'height.integer' => '尺寸高度必须是整数类型',
+                'id.required' => 'id不能为空',
+                'id.integer' => 'id必须是整数类型',
+                'width.required' => '尺寸宽度不能为空',
+                'width.integer' => '尺寸宽度必须是整数类型',
+                'height.required' => '尺寸高度不能为空',
+                'height.integer' => '尺寸高度必须是整数类型',
             ]
         );
         if ($validator->fails()) {
@@ -2458,7 +2476,7 @@ class WebsiteController extends AbstractController
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->upSize($requireData);
-        return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 删除尺寸
@@ -2470,11 +2488,11 @@ class WebsiteController extends AbstractController
         $validator = $this->validationFactory->make(
             $requireData,
             [
-               'id' =>'required|integer',
+                'id' => 'required|integer',
             ],
             [
-               'id.required' => 'id不能为空',
-               'id.integer' => 'id必须是整数类型',
+                'id.required' => 'id不能为空',
+                'id.integer' => 'id必须是整数类型',
             ]
         );
         if ($validator->fails()) {
@@ -2482,7 +2500,7 @@ class WebsiteController extends AbstractController
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->delSize($requireData);
-        return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 获取网站模板信息
@@ -2494,11 +2512,11 @@ class WebsiteController extends AbstractController
         $validator = $this->validationFactory->make(
             $requireData,
             [
-               'id' =>'required|integer',
+                'id' => 'required|integer',
             ],
             [
-               'id.required' => 'id不能为空',
-               'id.integer' => 'id必须是整数类型',
+                'id.required' => 'id不能为空',
+                'id.integer' => 'id必须是整数类型',
             ]
         );
         if ($validator->fails()) {
@@ -2506,50 +2524,51 @@ class WebsiteController extends AbstractController
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->getSizeInfo($requireData);
-        return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
-
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     // --自助建站-----------20250522fr----------------------end
     /**
      * 获取网站路由白名单列表
      * @return array    
      */
-    public function getWhiteRouterList(){
+    public function getWhiteRouterList()
+    {
         $requireData = $this->request->all();
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'page' =>'required|integer',
-                'pageSize' =>'required|integer'
+                'page' => 'required|integer',
+                'pageSize' => 'required|integer'
             ],
             [
                 'page.required' => '页码不能为空',
                 'page.integer' => '页码必须是整数',
                 'pageSize.required' => '每页显示数量不能为空',
-                'pageSize.integer' => '每页显示数量必须是整数'  
+                'pageSize.integer' => '每页显示数量必须是整数'
             ]
 
-            );
-            if ($validator->fails()) {
-                $errorMessage = $validator->errors()->first();
-                return Result::error($errorMessage);
-            }
-            // return $requireData;
-            $result = $this->websiteServiceClient->getWhiteRouterList($requireData);
-            Return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        );
+        if ($validator->fails()) {
+            $errorMessage = $validator->errors()->first();
+            return Result::error($errorMessage);
+        }
+        // return $requireData;
+        $result = $this->websiteServiceClient->getWhiteRouterList($requireData);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 添加白名单
      * @return array
      */
-    public function addWhiteRouter(){
-        $requireData = $this->request->all();   
+    public function addWhiteRouter()
+    {
+        $requireData = $this->request->all();
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'website_id' =>'required',
-                'function_name' =>'required',
-                'router_url' =>'required',
+                'website_id' => 'required',
+                'function_name' => 'required',
+                'router_url' => 'required',
             ],
             [
                 'website_id.required' => '网站id不能为空',
@@ -2557,73 +2576,76 @@ class WebsiteController extends AbstractController
                 'router_url.required' => '路由地址不能为空',
             ]
 
-            );
-            if ($validator->fails()) {
-                $errorMessage = $validator->errors()->first();
-                return Result::error($errorMessage);    
-            }
-            $result = $this->websiteServiceClient->addWhiteRouter($requireData);    
-            Return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        );
+        if ($validator->fails()) {
+            $errorMessage = $validator->errors()->first();
+            return Result::error($errorMessage);
+        }
+        $result = $this->websiteServiceClient->addWhiteRouter($requireData);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 删除白名单
      * @return array
      */
-    public function delWhiteRouter(){
+    public function delWhiteRouter()
+    {
         $requireData = $this->request->all();
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'id' =>'required|integer',
+                'id' => 'required|integer',
             ],
             [
                 'id.required' => 'id不能为空',
                 'id.integer' => 'id必须是整数类型',
-            ]   
-            );
-            if ($validator->fails()) {
-                $errorMessage = $validator->errors()->first();
-                return Result::error($errorMessage);    
-            }
-            $result = $this->websiteServiceClient->delWhiteRouter($requireData);
-            Return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+            ]
+        );
+        if ($validator->fails()) {
+            $errorMessage = $validator->errors()->first();
+            return Result::error($errorMessage);
+        }
+        $result = $this->websiteServiceClient->delWhiteRouter($requireData);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 获取白名单信息
      * @return array
      */
-    public function getWhiteRouterInfo(){
-        $requireData = $this->request->all();       
+    public function getWhiteRouterInfo()
+    {
+        $requireData = $this->request->all();
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'id' =>'required|integer'
+                'id' => 'required|integer'
             ],
             [
                 'id.required' => '网站id不能为空',
                 'id.integer' => '网站id必须是整数类型'
             ]
-            );
-            if ($validator->fails()) {
-                $errorMessage = $validator->errors()->first();
-                return Result::error($errorMessage);
-            }
-            $result = $this->websiteServiceClient->getWhiteRouterInfo($requireData);
-            Return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        );
+        if ($validator->fails()) {
+            $errorMessage = $validator->errors()->first();
+            return Result::error($errorMessage);
+        }
+        $result = $this->websiteServiceClient->getWhiteRouterInfo($requireData);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 修改白名单
      * @return array
      */
-    public function upWhiteRouter(){
-        $requireData = $this->request->all();   
+    public function upWhiteRouter()
+    {
+        $requireData = $this->request->all();
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'id' =>'required|integer',
-                'website_id' =>'required',
-                'function_name' =>'required',
-                'router_url' =>'required',
+                'id' => 'required|integer',
+                'website_id' => 'required',
+                'function_name' => 'required',
+                'router_url' => 'required',
             ],
             [
                 'id.required' => 'id不能为空',
@@ -2631,13 +2653,13 @@ class WebsiteController extends AbstractController
                 'function_name.required' => '功能名称不能为空',
                 'router_url.required' => '路由地址不能为空',
             ]
-            );
-            if ($validator->fails()) {
-                $errorMessage = $validator->errors()->first();
-                return Result::error($errorMessage);    
-            }
-            $result = $this->websiteServiceClient->upWhiteRouter($requireData);
-            Return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        );
+        if ($validator->fails()) {
+            $errorMessage = $validator->errors()->first();
+            return Result::error($errorMessage);
+        }
+        $result = $this->websiteServiceClient->upWhiteRouter($requireData);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
 
     /**
@@ -2650,7 +2672,7 @@ class WebsiteController extends AbstractController
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'website_id' =>'required',
+                'website_id' => 'required',
             ],
             [
                 'website_id.required' => '网站id不能为空',
@@ -2661,18 +2683,19 @@ class WebsiteController extends AbstractController
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->cloneWebsite($requireData);
-        Return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 获取网站名称简称
      * @return array
      */
-    public function getWebsiteAdkey(){
+    public function getWebsiteAdkey()
+    {
         $requireData = $this->request->all();
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'website_name' =>'required',
+                'website_name' => 'required',
             ],
             [
                 'website_name.required' => '网站名称不能为空',
@@ -2683,19 +2706,20 @@ class WebsiteController extends AbstractController
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->getWebsiteAdkey($requireData);
-        return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
     /**
      * 静态资源-修改图片别名
      * @return array
      */
-    public function upStaticResource(){
+    public function upStaticResource()
+    {
         $requireData = $this->request->all();
         $validator = $this->validationFactory->make(
             $requireData,
             [
-                'id' =>'required',
-                'img_alias' =>'required',
+                'id' => 'required',
+                'img_alias' => 'required',
             ],
             [
                 'id.required' => '网站id不能为空',
@@ -2707,7 +2731,6 @@ class WebsiteController extends AbstractController
             return Result::error($errorMessage);
         }
         $result = $this->websiteServiceClient->upStaticResource($requireData);
-        return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
+        return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
     }
 }
-

+ 1 - 0
composer.json

@@ -48,6 +48,7 @@
         "hyperf/translation": "^3.1",
         "hyperf/validation": "^3.1",
         "hyperf/websocket-server": "^3.1",
+        "nesbot/carbon": "^2.73",
         "openai-php/client": "^0.10.3",
         "phper666/jwt-auth": "^4.0"
     },

+ 8 - 20
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": "38b67762f870df573a4d5ca8969673c8",
+    "content-hash": "9374f9159fb265d3d3df98964e8b512c",
     "packages": [
         {
             "name": "aws/aws-crt-php",
@@ -4409,23 +4409,17 @@
         },
         {
             "name": "hyperf/redis",
-            "version": "v3.1.53",
+            "version": "v3.1.56",
             "source": {
                 "type": "git",
                 "url": "https://github.com/hyperf/redis.git",
-                "reference": "d481e97926d8e12b41bfeb1ebf5d88e66482da64"
+                "reference": "25667386bb7d0bb1307e9e65d91ca8f80cf68b14"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/hyperf/redis/zipball/d481e97926d8e12b41bfeb1ebf5d88e66482da64",
-                "reference": "d481e97926d8e12b41bfeb1ebf5d88e66482da64",
-                "shasum": "",
-                "mirrors": [
-                    {
-                        "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
-                        "preferred": true
-                    }
-                ]
+                "url": "https://api.github.com/repos/hyperf/redis/zipball/25667386bb7d0bb1307e9e65d91ca8f80cf68b14",
+                "reference": "25667386bb7d0bb1307e9e65d91ca8f80cf68b14",
+                "shasum": ""
             },
             "require": {
                 "ext-redis": "^5.0 || ^6.0",
@@ -4483,7 +4477,7 @@
                     "type": "open_collective"
                 }
             ],
-            "time": "2025-04-03T07:31:20+00:00"
+            "time": "2025-06-05T06:49:03+00:00"
         },
         {
             "name": "hyperf/rpc",
@@ -6342,13 +6336,7 @@
                 "type": "zip",
                 "url": "https://api.github.com/repos/CarbonPHP/carbon/zipball/9228ce90e1035ff2f0db84b40ec2e023ed802075",
                 "reference": "9228ce90e1035ff2f0db84b40ec2e023ed802075",
-                "shasum": "",
-                "mirrors": [
-                    {
-                        "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
-                        "preferred": true
-                    }
-                ]
+                "shasum": ""
             },
             "require": {
                 "carbonphp/carbon-doctrine-types": "*",