Răsfoiți Sursa

重构核心模块:优化User服务,调整GameItems模型,清理废弃Protobuf文件

Your Name 8 luni în urmă
părinte
comite
b91ffd79f9
52 a modificat fișierele cu 827 adăugiri și 488 ștergeri
  1. 18 0
      UCore/App.php
  2. 2 0
      app/Module/AppGame/Handler/BaseHandler.php
  3. 6 1
      app/Module/AppGame/Handler/Public/LoginHandler.php
  4. 3 2
      app/Module/AppGame/Handler/Public/TokenHandler.php
  5. 41 2
      app/Module/AppGame/Handler/User/DataHandler.php
  6. 6 2
      app/Module/AppGame/HttpControllers/ProtobufController.php
  7. 14 10
      app/Module/AppGame/Middleware/LoginCheck.php
  8. 6 6
      app/Module/AppGame/SessionApp.php
  9. 1 1
      app/Module/Game/Logics/ItemCache.php
  10. 0 7
      app/Module/GameItems/AdminControllers/ChestContentController.php
  11. 2 2
      app/Module/GameItems/AdminControllers/DismantleRuleController.php
  12. 1 1
      app/Module/GameItems/AdminControllers/Helper/FilterHelperTrait.php
  13. 1 1
      app/Module/GameItems/AdminControllers/TransactionLogController.php
  14. 23 6
      app/Module/GameItems/AdminControllers/UserItemController.php
  15. 91 0
      app/Module/GameItems/AdminForms/AddItemForm.php
  16. 3 3
      app/Module/GameItems/Models/ItemChestOpenLog.php
  17. 3 3
      app/Module/GameItems/Models/ItemCraftLog.php
  18. 3 3
      app/Module/GameItems/Models/ItemDismantleLog.php
  19. 3 3
      app/Module/GameItems/Models/ItemDismantleResult.php
  20. 3 3
      app/Module/GameItems/Models/ItemDismantleRule.php
  21. 3 3
      app/Module/GameItems/Models/ItemInstance.php
  22. 4 4
      app/Module/GameItems/Models/ItemOutputLimit.php
  23. 3 3
      app/Module/GameItems/Models/ItemPityTime.php
  24. 4 4
      app/Module/GameItems/Models/ItemRecipe.php
  25. 4 4
      app/Module/GameItems/Models/ItemRecipeMaterial.php
  26. 4 4
      app/Module/GameItems/Models/ItemTransactionLog.php
  27. 3 3
      app/Module/GameItems/Models/ItemUser.php
  28. 3 3
      app/Module/GameItems/Services/ChestService.php
  29. 4 4
      app/Module/GameItems/Services/ItemService.php
  30. 2 2
      app/Module/Ulogic/Models/Internal.php
  31. 2 2
      app/Module/User/Services/ActionService.php
  32. 0 243
      app/Module/User/Services/User.php
  33. 213 19
      app/Module/User/Services/UserService.php
  34. 2 2
      app/Module/User/Validation/SPasswordCheck.php
  35. 2 2
      app/Module/User/Validator/AutoRegPhone.php
  36. 2 2
      app/Module/User/Validator/Google2FA.php
  37. 2 2
      app/Module/User/Validator/NotMe.php
  38. 2 2
      app/Module/User/Validator/UserIdExsit.php
  39. 2 2
      app/Module/User/Validator/UserIdInfo.php
  40. 2 2
      app/Module/User/Validator/UserIdInfo2.php
  41. 1 1
      app/Module/User/Validator/Username.php
  42. 4 7
      config/proto_route.php
  43. 21 18
      protophp/GPBMetadata/Proto/Game.php
  44. 109 45
      protophp/Uraus/Kku/Request.php
  45. 3 3
      protophp/Uraus/Kku/Request/RequestPublicResetPassword.php
  46. 34 0
      protophp/Uraus/Kku/Request/RequestShopQuery.php
  47. 16 0
      protophp/Uraus/Kku/Request_RequestPublicResetPassword.php
  48. 0 16
      protophp/Uraus/Kku/Request_RequestResetPassword.php
  49. 129 13
      protophp/Uraus/Kku/Response.php
  50. 9 9
      protophp/Uraus/Kku/Response/UserInfo.php
  51. 4 4
      vendor/composer/autoload_classmap.php
  52. 4 4
      vendor/composer/autoload_static.php

+ 18 - 0
UCore/App.php

@@ -0,0 +1,18 @@
+<?php
+
+namespace UCore;
+
+class App
+{
+
+    public static function is_debug(): bool
+    {
+        return config('app.debug');
+    }
+
+    public static function is_local(): bool
+    {
+        return app()->isLocal();
+    }
+
+}

+ 2 - 0
app/Module/AppGame/Handler/BaseHandler.php

@@ -15,6 +15,8 @@ abstract class BaseHandler
      */
     protected bool $need_login = false;
 
+    public $user_id = 0;
+
     /**
      * @var Response
      */

+ 6 - 1
app/Module/AppGame/Handler/Public/LoginHandler.php

@@ -15,8 +15,10 @@ use Uraus\Kku\Response\LastLoginInfo;
  */
 class LoginHandler extends BaseHandler
 {
+
     /**
      * 是否需要登录
+     *
      * @var bool
      */
     protected bool $need_login = false;
@@ -31,11 +33,14 @@ class LoginHandler extends BaseHandler
     {
         $validation = LoginValidation::makeByProrobuf($data);
         $validation->validated();
+        $user = $validation->user;
         // 创建响应对象
         $response = new ResponsePublicLogin();
         $response->setToken(SessionApp::getSessionId());
-
+        $res = SessionApp::setLogin($user);
+//        dd($res);
 
         return $response;
     }
+
 }

+ 3 - 2
app/Module/AppGame/Handler/Public/TokenHandler.php

@@ -3,6 +3,7 @@
 namespace App\Module\AppGame\Handler\Public;
 
 use App\Module\AppGame\Handler\BaseHandler;
+use App\Module\AppGame\SessionApp;
 use Google\Protobuf\Internal\Message;
 use Uraus\Kku\Request\RequestPublicToken;
 use Uraus\Kku\Response\ResponsePublicToken;
@@ -28,8 +29,8 @@ class TokenHandler extends BaseHandler
     {
         // 创建响应对象
         $response = new ResponsePublicToken();
-        // TODO: 添加具体的处理逻辑
 
+        $response->setToken(SessionApp::getSessionId());
         return $response;
     }
-}
+}

+ 41 - 2
app/Module/AppGame/Handler/User/DataHandler.php

@@ -3,9 +3,14 @@
 namespace App\Module\AppGame\Handler\User;
 
 use App\Module\AppGame\Handler\BaseHandler;
+use App\Module\GameItems\Services\ItemService;
+use App\Module\User\Services\UserService;
 use Google\Protobuf\Internal\Message;
+use Uraus\Kku\Common\DataItem;
+use Uraus\Kku\Common\LastData;
 use Uraus\Kku\Request\RequestUserData;
 use Uraus\Kku\Response\ResponseUserData;
+use Uraus\Kku\Response\UserInfo;
 
 /**
  * 处理用户信息请求
@@ -27,10 +32,44 @@ class DataHandler extends BaseHandler
     public function handle(Message $data): Message
     {
         // 创建响应对象
+        $uinfo = UserService::info($this->user_id);
+        $uinfo2 = UserService::infoinfo($this->user_id);
         $response = new ResponseUserData();
+        $info = new UserInfo();
+        $info->setMobile($uinfo->username);
+        $info->setUserId($uinfo->id);
+        $info->setSkinId($uinfo2->avatar);
+        $info->setAvatar($uinfo2->avatar);
+        $info->setNickName($uinfo2->nickname);
+
+        $response->setInfo($info);
+
+        // 激活 物品 lastData
+        $itemService = new ItemService();
+        $items = $itemService->getUserItems($this->user_id);
+        $itemLs = [];
+        foreach ($items as $item) {
+            $li= new DataItem();
+            if($item->instance_id){
+                $li->setInstanceId($item->instance_id);
+            }
+            $li->setItemId($item->item_id);
+            $li->setQuantity($item->quantity);
+            $itemLs[] = $li;
+        }
+        $lastData = new LastData();
+        $lastData->setItems($itemLs);
+        $this->response->setLastData($lastData);
+
+        // 激活 货币 lastData
+
+        // 神像
+        // 土地
+        // 宠物
+        // 房屋
+
 
-        // TODO: 实现具体逻辑
 
         return $response;
     }
-}
+}

+ 6 - 2
app/Module/AppGame/HttpControllers/ProtobufController.php

@@ -7,6 +7,7 @@ use App\Module\AppGame\Tools\Protobuf;
 use Illuminate\Http\Request as HttpRequest;
 use Illuminate\Support\Facades\Log;
 use Illuminate\Support\Str;
+use UCore\App;
 use UCore\Exception\HandleNotException;
 use UCore\Exception\ValidateException;
 use UCore\Helper\Logger;
@@ -129,7 +130,7 @@ class ProtobufController extends Controller
                                          is_object($methodResponse) ? get_class($methodResponse) : gettype($methodResponse)
                                      ));
             }
-          
+
             // 设置主响应
             $setter = 'set' . ucfirst($field).ucfirst($method);
             $response->$setter($methodResponse);
@@ -164,6 +165,9 @@ class ProtobufController extends Controller
             $response->setCode(RESPONSE_CODE::VALIDATE_ERROR);
             $response->setMsg($errorMsg);
         } catch (\Exception $e) {
+            if(App::is_local()){
+                throw $e;
+            }
             $errorMsg = $e->getMessage();
             Log::error('请求处理发生异常', [
                 'error' => $errorMsg,
@@ -185,7 +189,7 @@ class ProtobufController extends Controller
             $response->setCallpath($callpath);
         }
 
-    
+
         // 更新请求日志记录响应信息
         $requestLogger->setResponse($response);
         $requestLogger->setRunTime($startTime);

+ 14 - 10
app/Module/AppGame/Middleware/LoginCheck.php

@@ -2,6 +2,7 @@
 
 namespace App\Module\AppGame\Middleware;
 
+use App\Module\AppGame\Handler\BaseHandler;
 use App\Module\AppGame\SessionApp;
 use App\Module\AppGame\Tools\Protobuf;
 use Closure;
@@ -22,8 +23,11 @@ class LoginCheck
      */
     public function handle(Request $request, Closure $next)
     {
-        return $next($request);
+//        return $next($request);
         // 获取当前请求的Handler类
+        /**
+         * @var BaseHandler $handler
+         */
         $handler = $request->attributes->get('_handler');
 
         $need_login = false;
@@ -34,24 +38,26 @@ class LoginCheck
         $login_ok = false;
 
         // 需要登陆,进行登陆判断
-        $token = $request->header('token','');
-       // dump($token);
+        $token = $request->header('token', '');
+        // dump($token);
         if (get_class($handler) == 'App\Module\AppGame\Handler\Public\TokenUsefulHandler') {
             SessionApp::$session_id = $token;
+
             return $next($request);
         }
-        if (get_class($handler) == 'App\ProtoLogic\Public\TokenHandler'){
+        if (get_class($handler) == 'App\Module\AppGame\Handler\Public\TokenHandler') {
 
             SessionApp::$session_id = SessionApp::genSessionID();
 
-        }else{
+        } else {
             if (empty($token)) {
                 $token = SessionApp::getSessionId();
-                if(get_class($handler) != 'App\Module\AppGame\Handler\Public\TokenHandler'){
+                if (get_class($handler) != 'App\Module\AppGame\Handler\Public\TokenHandler') {
                     //  token 不合法
                     $response = new Response();
                     $response->setCode(RESPONSE_CODE::REQUEST_ERROR);
                     $response->setMsg('请求错误-Token is import!');
+
                     return \App\Module\AppGame\Tools\Protobuf::response($response);
                 }
             } else {
@@ -70,15 +76,13 @@ class LoginCheck
                 //            dump($uid);
 
                 if ($uid > 0) {
-                    $login_ok = true;
+                    $handler->user_id = $uid;
+                    $login_ok         = true;
                 }
             }
         }
 
 
-
-
-
         if ($need_login && !$login_ok) {
             $response = new Response();
             $response->setCode(RESPONSE_CODE::NOT_LOGIN);

+ 6 - 6
app/Module/AppGame/SessionApp.php

@@ -3,7 +3,7 @@
 namespace App\Module\AppGame;
 
 
-use App\Module\System\Services\Config;
+
 use App\Module\Ulogic\Enum\RULE;
 use App\Module\Ulogic\Unit\User;
 use UCore\Exception\LogicException;
@@ -52,7 +52,7 @@ class SessionApp extends TokenSession
     {
         // todo 不清楚作用
 //        \App\Module\User\User::infoinfo($user->id, true);
-        self::set(self::ID_KEY, $user->user_id);
+        self::set(self::ID_KEY, $user->id);
         // todo 用户角色:是否社区长,后续补齐流程
 //        if (!$role) {
 //            $role = self::getRole($user);
@@ -62,10 +62,10 @@ class SessionApp extends TokenSession
 
         $sData = self::get();
 //        dd($sData,self::$session_id);
-//        $data = [
-//            'user_id' => $user->user_id,
-//            'role'    => $role
-//        ];
+        $data = [
+            'user_id' => $user->id,
+            'role'    => $role
+        ];
         if ($token) {
             $data['token'] = self::getSessionId();
             // todo 单点登录

+ 1 - 1
app/Module/Game/Logics/ItemCache.php

@@ -58,7 +58,7 @@ class ItemCache
 
             // 使用物品ID作为键,实现同一物品多次变更的数据覆盖
             $userItemsCache[$event->itemId] = $itemData;
-            dump($userItemsCache);
+//            dump($userItemsCache);
             // 将更新后的数据存回缓存
             Cache::put($cacheKey, $userItemsCache, self::CACHE_TTL);
 

+ 0 - 7
app/Module/GameItems/AdminControllers/ChestContentController.php

@@ -3,14 +3,7 @@
 namespace App\Module\GameItems\AdminControllers;
 
 use App\Module\GameItems\AdminControllers\Actions\DuplicateChestContentAction;
-use App\Module\GameItems\AdminControllers\LazyRenderable\ItemLazyRenderable;
-use App\Module\GameItems\Enums\ITEM_TYPE;
-use App\Module\GameItems\Models\Item;
-use App\Module\GameItems\Models\ItemGroup;
 use App\Module\GameItems\Repositorys\ItemChestContentRepository;
-use App\Module\GameItems\Repositorys\ItemGroupRepository;
-use App\Module\GameItems\Repositorys\ItemRepository;
-use App\Module\GameItems\Models\Item as ItemItem;
 use Dcat\Admin\Form;
 use Dcat\Admin\Grid;
 use Dcat\Admin\Show;

+ 2 - 2
app/Module/GameItems/AdminControllers/DismantleRuleController.php

@@ -217,7 +217,7 @@ class DismantleRuleController extends AdminController
                 ->default('item')
                 ->when('item', function (Form $form) {
                     $form->select('item_id', '物品')
-                        ->options(ItemItem::pluck('name', 'id'))
+                        ->options(Item::pluck('name', 'id'))
                         ->required();
                 })
                 ->when('category', function (Form $form) {
@@ -240,7 +240,7 @@ class DismantleRuleController extends AdminController
             // 分解结果
             $form->hasMany('results', '分解结果', function (Form\NestedForm $form) {
                 $form->select('result_item_id', '物品')
-                    ->options(ItemItem::pluck('name', 'id'))
+                    ->options(Item::pluck('name', 'id'))
                     ->required();
                 $form->number('min_quantity', '最小数量')
                     ->default(1)

+ 1 - 1
app/Module/GameItems/AdminControllers/Helper/FilterHelperTrait.php

@@ -34,7 +34,7 @@ trait FilterHelperTrait
      * @param $table
      * @return void
      */
-    public function equalSelectModelItem($field, $label = '宝箱')
+    public function equalSelectModelItem($field, $label = '物品')
     {
         $table = ItemLazyRenderable::make();
 

+ 1 - 1
app/Module/GameItems/AdminControllers/TransactionLogController.php

@@ -43,7 +43,7 @@ class TransactionLogController extends AdminController
      */
     protected function grid()
     {
-        return Grid::make(new ItemTransactionLogRepository(), function (Grid $grid) {
+        return Grid::make(new ItemTransactionLogRepository(['item']), function (Grid $grid) {
             $helper = new GridHelper($grid, $this);
 
             // 禁用创建、编辑和删除按钮

+ 23 - 6
app/Module/GameItems/AdminControllers/UserItemController.php

@@ -2,6 +2,7 @@
 
 namespace App\Module\GameItems\AdminControllers;
 
+use App\Module\GameItems\AdminForms\AddItemForm;
 use App\Module\GameItems\Repositorys\ItemUserRepository;
 use App\Module\GameItems\Repositorys\ItemRepository;
 use App\Module\GameItems\Repositorys\ItemInstanceRepository;
@@ -9,6 +10,7 @@ use Dcat\Admin\Form;
 use Dcat\Admin\Grid;
 use Dcat\Admin\Show;
 use Dcat\Admin\Layout\Content;
+use Dcat\Admin\Widgets\Modal;
 use Spatie\RouteAttributes\Attributes\Resource;
 use \App\Module\GameItems\AdminControllers\Helper\FilterHelper;
 use \App\Module\GameItems\AdminControllers\Helper\FormHelper;
@@ -38,7 +40,14 @@ class UserItemController extends AdminController
      */
     protected function grid()
     {
-        return Grid::make(new ItemUserRepository(), function (Grid $grid) {
+        return Grid::make(new ItemUserRepository(['item']), function (Grid $grid) {
+            // 禁用创建、编辑、查看和删除按钮
+            $grid->disableCreateButton();
+            $grid->disableActions();
+            $grid->disableBatchDelete();
+
+
+
             $helper = new GridHelper($grid, $this);
             $helper->columnId();
             $grid->column('user_id', '用户ID');
@@ -54,12 +63,20 @@ class UserItemController extends AdminController
                 $helper = new FilterHelper($filter, $this);
                 $helper->equal('id', 'ID');
                 $helper->equal('user_id', '用户ID');
-                $filter->equal('item_id', '物品')->select(
-                    (new ItemRepository())->pluck('name', 'id')
-                );
+                $helper->equalSelectModelItem('item_id', '物品');
                 $helper->equal('instance_id', '实例ID');
-                $helper->between('quantity', '数量');
-                $helper->between('expire_at', '过期时间')->datetime();
+                $filter->between('quantity', '数量');
+                $filter->between('expire_at', '过期时间')->datetime();
+            });
+            // 添加自定义"增加物品"按钮
+            $grid->tools(function (Grid\Tools $tools) {
+                $tools->append(
+                    Modal::make()
+                        ->lg()
+                        ->title('增加物品')
+                        ->body(AddItemForm::make())
+                        ->button('<button class="btn btn-primary"><i class="feather icon-plus"></i><span class="d-none d-sm-inline">&nbsp; 增加物品</span></button>')
+                );
             });
         });
     }

+ 91 - 0
app/Module/GameItems/AdminForms/AddItemForm.php

@@ -0,0 +1,91 @@
+<?php
+
+namespace App\Module\GameItems\AdminForms;
+
+use App\Module\GameItems\Repositorys\ItemRepository;
+use App\Module\GameItems\Services\ItemService;
+use Dcat\Admin\Contracts\LazyRenderable;
+use Dcat\Admin\Traits\LazyWidget;
+use Dcat\Admin\Widgets\Form;
+use Exception;
+
+/**
+ * 添加物品表单
+ *
+ * 用于在后台添加物品到用户背包
+ */
+class AddItemForm extends Form implements LazyRenderable
+{
+    use LazyWidget;
+
+    /**
+     * 处理表单提交
+     *
+     * @param array $input
+     * @return mixed
+     */
+    public function handle(array $input)
+    {
+        try {
+            $userId = (int) $input['user_id'];
+            $itemId = (int) $input['item_id'];
+            $quantity = (int) $input['quantity'];
+
+            // 调用ItemService添加物品
+            $itemService = new ItemService();
+            $result = $itemService->addItem($userId, $itemId, $quantity, [
+                'source_type' => 'admin_add',
+                'source_id' => 0,
+                'details' => [
+                    'admin_id' => auth('admin')->id(),
+                    'admin_name' => auth('admin')->user()->name,
+                    'remark' => $input['remark'] ?? '',
+                ],
+            ]);
+
+            if (!empty($result['success'])) {
+                return $this->response()
+                    ->success('物品添加成功')
+                    ->refresh();
+            }
+
+            return $this->response()->error('物品添加失败');
+        } catch (Exception $e) {
+            return $this->response()->error('操作失败: ' . $e->getMessage());
+        }
+    }
+
+    /**
+     * 构建表单
+     */
+    public function form()
+    {
+        // 添加确认提示
+        $this->confirm('确定要添加物品吗?');
+
+        // 用户ID
+        $this->text('user_id', '用户ID')
+            ->required()
+            ->help('物品将添加到该用户的背包中');
+
+        // 物品选择
+        $this->select('item_id', '物品')
+            ->options(function () {
+                return \App\Module\GameItems\Models\Item::pluck('name', 'id')->toArray();
+            })
+            ->required()
+            ->help('选择要添加的物品');
+
+        // 数量
+        $this->number('quantity', '数量')
+            ->default(1)
+            ->min(1)
+            ->required()
+            ->help('添加物品的数量,单独属性物品将自动设为1');
+
+        // 备注
+        $this->textarea('remark', '备注')
+            ->rows(3)
+            ->help('添加物品的备注信息,仅用于记录');
+    }
+}

+ 3 - 3
app/Module/GameItems/Models/ItemChestOpenLog.php

@@ -8,7 +8,7 @@ use UCore\ModelCore;
 /**
  * 宝箱开启记录
  *
- * field start 
+ * field start
  * @property   int  $id  记录ID,主键
  * @property   int  $user_id  用户ID
  * @property   int  $chest_id  宝箱ID,外键关联kku_item_items表
@@ -31,7 +31,7 @@ class ItemChestOpenLog extends ModelCore
      */
     protected $table = 'item_chest_open_logs';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'user_id',
@@ -74,7 +74,7 @@ class ItemChestOpenLog extends ModelCore
      */
     public function chest(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'chest_id');
+        return $this->belongsTo(Item::class, 'chest_id');
     }
 
     /**

+ 3 - 3
app/Module/GameItems/Models/ItemCraftLog.php

@@ -9,7 +9,7 @@ use UCore\ModelCore;
 /**
  * 物品合成记录
  *
- * field start 
+ * field start
  * @property   int  $id  记录ID,主键
  * @property   int  $user_id  用户ID
  * @property   int  $recipe_id  配方ID,外键关联kku_item_recipes表
@@ -33,7 +33,7 @@ class ItemCraftLog extends ModelCore
      */
     protected $table = 'item_craft_logs';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'user_id',
@@ -95,7 +95,7 @@ class ItemCraftLog extends ModelCore
      */
     public function resultItem(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'result_item_id');
+        return $this->belongsTo(Item::class, 'result_item_id');
     }
 
     /**

+ 3 - 3
app/Module/GameItems/Models/ItemDismantleLog.php

@@ -9,7 +9,7 @@ use UCore\ModelCore;
 /**
  * 物品分解记录
  *
- * field start 
+ * field start
  * @property   int  $id  记录ID,主键
  * @property   int  $user_id  用户ID
  * @property   int  $item_id  被分解的物品ID,外键关联kku_item_items表
@@ -32,7 +32,7 @@ class ItemDismantleLog extends ModelCore
      */
     protected $table = 'item_dismantle_logs';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'user_id',
@@ -77,7 +77,7 @@ class ItemDismantleLog extends ModelCore
      */
     public function item(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'item_id');
+        return $this->belongsTo(Item::class, 'item_id');
     }
 
     /**

+ 3 - 3
app/Module/GameItems/Models/ItemDismantleResult.php

@@ -8,7 +8,7 @@ use UCore\ModelCore;
 /**
  * 物品分解结果
  *
- * field start 
+ * field start
  * @property   int  $id  记录ID,主键
  * @property   int  $rule_id  分解规则ID,外键关联kku_item_dismantle_rules表
  * @property   int  $result_item_id  结果物品ID,外键关联kku_item_items表
@@ -30,7 +30,7 @@ class ItemDismantleResult extends ModelCore
      */
     protected $table = 'item_dismantle_results';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'rule_id',
@@ -73,7 +73,7 @@ class ItemDismantleResult extends ModelCore
      */
     public function resultItem(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'result_item_id');
+        return $this->belongsTo(Item::class, 'result_item_id');
     }
 
     /**

+ 3 - 3
app/Module/GameItems/Models/ItemDismantleRule.php

@@ -9,7 +9,7 @@ use UCore\ModelCore;
 /**
  * 物品分解规则
  *
- * field start 
+ * field start
  * @property   int  $id  规则ID,主键
  * @property   int  $item_id  物品ID,外键关联kku_item_items表
  * @property   int  $category_id  分类ID,外键关联kku_item_categories表
@@ -30,7 +30,7 @@ class ItemDismantleRule extends ModelCore
      */
     protected $table = 'item_dismantle_rules';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'item_id',
@@ -62,7 +62,7 @@ class ItemDismantleRule extends ModelCore
      */
     public function item(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'item_id');
+        return $this->belongsTo(Item::class, 'item_id');
     }
 
     /**

+ 3 - 3
app/Module/GameItems/Models/ItemInstance.php

@@ -9,7 +9,7 @@ use UCore\ModelCore;
 /**
  * 物品实例(单独属性物品)
  *
- * field start 
+ * field start
  * @property   int  $id  唯一物品ID,主键
  * @property   int  $item_id  关联的基础物品ID,外键关联kku_item_items表
  * @property   string  $name  物品名称(可以与基础物品不同)
@@ -33,7 +33,7 @@ class ItemInstance extends ModelCore
      */
     protected $table = 'item_instances';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'item_id',
@@ -79,7 +79,7 @@ class ItemInstance extends ModelCore
      */
     public function item(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'item_id');
+        return $this->belongsTo(Item::class, 'item_id');
     }
 
     /**

+ 4 - 4
app/Module/GameItems/Models/ItemOutputLimit.php

@@ -9,7 +9,7 @@ use UCore\ModelCore;
 /**
  * 物品产出限制
  *
- * field start 
+ * field start
  * @property   int  $id  记录ID,主键
  * @property   int  $item_id  物品ID,外键关联kku_item_items表
  * @property   int  $limit_type  限制类型(1:全局总量, 2:单个用户, 3:单日全局, 4:单日用户)
@@ -31,7 +31,7 @@ class ItemOutputLimit extends ModelCore
      */
     protected $table = 'item_output_limits';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'item_id',
@@ -44,7 +44,7 @@ class ItemOutputLimit extends ModelCore
     ];
     // attrlist end
 
-    
+
 
     /**
      * 应该被转换为日期的属性
@@ -85,7 +85,7 @@ class ItemOutputLimit extends ModelCore
      */
     public function item(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'item_id');
+        return $this->belongsTo(Item::class, 'item_id');
     }
 
     /**

+ 3 - 3
app/Module/GameItems/Models/ItemPityTime.php

@@ -8,7 +8,7 @@ use UCore\ModelCore;
 /**
  * 宝箱保底计数
  *
- * field start 
+ * field start
  * @property   int  $id  记录ID,主键
  * @property   int  $user_id  用户ID
  * @property   int  $chest_id  宝箱ID,外键关联kku_item_items表
@@ -28,7 +28,7 @@ class ItemPityTime extends ModelCore
      */
     protected $table = 'item_pity_times';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'user_id',
@@ -57,7 +57,7 @@ class ItemPityTime extends ModelCore
      */
     public function chest(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'chest_id');
+        return $this->belongsTo(Item::class, 'chest_id');
     }
 
     /**

+ 4 - 4
app/Module/GameItems/Models/ItemRecipe.php

@@ -10,7 +10,7 @@ use UCore\ModelCore;
 /**
  * 物品合成配方
  *
- * field start 
+ * field start
  * @property   int  $id  配方ID,主键
  * @property   string  $name  配方名称
  * @property   int  $result_item_id  产出物品ID,外键关联kku_item_items表
@@ -38,7 +38,7 @@ class ItemRecipe extends ModelCore
      */
     protected $table = 'item_recipes';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'name',
@@ -57,7 +57,7 @@ class ItemRecipe extends ModelCore
     ];
     // attrlist end
 
-    
+
 
     /**
      * 应该被转换为原生类型的属性
@@ -80,7 +80,7 @@ class ItemRecipe extends ModelCore
      */
     public function resultItem(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'result_item_id');
+        return $this->belongsTo(Item::class, 'result_item_id');
     }
 
     /**

+ 4 - 4
app/Module/GameItems/Models/ItemRecipeMaterial.php

@@ -8,7 +8,7 @@ use UCore\ModelCore;
 /**
  * 合成配方材料
  *
- * field start 
+ * field start
  * @property   int  $id  记录ID,主键
  * @property   int  $recipe_id  配方ID,外键关联kku_item_recipes表
  * @property   int  $item_id  材料物品ID,外键关联kku_item_items表
@@ -27,7 +27,7 @@ class ItemRecipeMaterial extends ModelCore
      */
     protected $table = 'item_recipe_materials';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'recipe_id',
@@ -37,7 +37,7 @@ class ItemRecipeMaterial extends ModelCore
     ];
     // attrlist end
 
-    
+
 
     /**
      * 应该被转换为原生类型的属性
@@ -66,6 +66,6 @@ class ItemRecipeMaterial extends ModelCore
      */
     public function item(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'item_id');
+        return $this->belongsTo(Item::class, 'item_id');
     }
 }

+ 4 - 4
app/Module/GameItems/Models/ItemTransactionLog.php

@@ -8,7 +8,7 @@ use UCore\ModelCore;
 /**
  * 物品交易记录
  *
- * field start 
+ * field start
  * @property   int  $id  记录ID,主键
  * @property   int  $user_id  用户ID
  * @property   int  $item_id  物品ID,外键关联kku_item_items表
@@ -33,7 +33,7 @@ class ItemTransactionLog extends ModelCore
      */
     protected $table = 'item_transaction_logs';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'user_id',
@@ -50,7 +50,7 @@ class ItemTransactionLog extends ModelCore
     ];
     // attrlist end
 
-    
+
 
     /**
      * 应该被转换为日期的属性
@@ -92,7 +92,7 @@ class ItemTransactionLog extends ModelCore
      */
     public function item(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'item_id');
+        return $this->belongsTo(Item::class, 'item_id');
     }
 
     /**

+ 3 - 3
app/Module/GameItems/Models/ItemUser.php

@@ -8,7 +8,7 @@ use UCore\ModelCore;
 /**
  * 用户物品关联
  *
- * field start 
+ * field start
  * @property   int  $id  记录ID,主键
  * @property   int  $user_id  用户ID
  * @property   int  $item_id  统一属性物品ID,外键关联kku_item_items表
@@ -28,7 +28,7 @@ class ItemUser extends ModelCore
      */
     protected $table = 'item_users';
 
-    // attrlist start 
+    // attrlist start
     protected $fillable = [
         'id',
         'user_id',
@@ -57,7 +57,7 @@ class ItemUser extends ModelCore
      */
     public function item(): BelongsTo
     {
-        return $this->belongsTo(ItemItem::class, 'item_id');
+        return $this->belongsTo(Item::class, 'item_id');
     }
 
     /**

+ 3 - 3
app/Module/GameItems/Services/ChestService.php

@@ -8,7 +8,7 @@ use App\Module\GameItems\Logics\Item as ItemLogic;
 use App\Module\GameItems\Logics\PityTime as PityTimeLogic;
 use App\Module\GameItems\Models\ItemChestContent;
 use App\Module\GameItems\Models\ItemChestOpenLog;
-use App\Module\GameItems\Models\ItemItem;
+use App\Module\GameItems\Models\Item;
 use App\Module\GameItems\Models\ItemPityTime;
 use Exception;
 use Illuminate\Support\Collection;
@@ -69,7 +69,7 @@ class ChestService
     public function openChest(int $userId, int $chestId, int $quantity = 1, array $options = []): array
     {
         // 获取宝箱信息
-        $chest = ItemItem::findOrFail($chestId);
+        $chest = Item::findOrFail($chestId);
 
         // 检查是否为宝箱类型
         if ($chest->type != ITEM_TYPE::OPENABLE) {
@@ -395,7 +395,7 @@ class ChestService
     public function getChestContentPreview(int $chestId): array
     {
         // 获取宝箱信息
-        $chest = ItemItem::findOrFail($chestId);
+        $chest = Item::findOrFail($chestId);
 
         // 检查是否为宝箱类型
         if ($chest->type != ITEM_TYPE::OPENABLE) {

+ 4 - 4
app/Module/GameItems/Services/ItemService.php

@@ -3,7 +3,7 @@
 namespace App\Module\GameItems\Services;
 
 use App\Module\GameItems\Logics\Item as ItemLogic;
-use App\Module\GameItems\Models\ItemItem;
+use App\Module\GameItems\Models\Item;
 use App\Module\GameItems\Models\ItemUser;
 use Exception;
 use Illuminate\Database\Eloquent\Collection;
@@ -37,7 +37,7 @@ class ItemService
      * @param int $userId 用户ID
      * @param array $filters 过滤条件
      * @param bool $includeExpired 是否包含已过期物品
-     * @return Collection
+     * @return Collection|ItemUser[]
      */
     public function getUserItems(int $userId, array $filters = [], bool $includeExpired = false): Collection
     {
@@ -91,7 +91,7 @@ class ItemService
     public function addItem(int $userId, int $itemId, int $quantity, array $options = []): array
     {
         // 获取物品信息
-        $item = ItemItem::findOrFail($itemId);
+        $item = Item::findOrFail($itemId);
 
         // 检查物品是否已过期(全局过期)
         if ($this->itemLogic->isExpired($item)) {
@@ -121,7 +121,7 @@ class ItemService
     public function consumeItem(int $userId, int $itemId, ?int $instanceId, int $quantity, array $options = []): array
     {
         // 获取物品信息
-        $item = ItemItem::findOrFail($itemId);
+        $item = Item::findOrFail($itemId);
 
         if ($instanceId) {
             // 消耗单独属性物品

+ 2 - 2
app/Module/Ulogic/Models/Internal.php

@@ -3,7 +3,7 @@
 namespace App\Module\Ulogic\Model;
 
 use App\Module\Ulogic\Enum\INTERNAL_TYPE;
-use App\Module\User\Services\User;
+use App\Module\User\Services\UserService;
 use Illuminate\Database\Eloquent\SoftDeletes;
 use UCore\ModelCore;
 
@@ -73,7 +73,7 @@ class Internal extends ModelCore
             ];
         }
 
-        $infos = User::pinfos([ $this->from_id ]);
+        $infos = UserService::pinfos([ $this->from_id ]);
 
         return $infos[$this->from_id] ?? [
             'nickname' => '未知',

+ 2 - 2
app/Module/User/Services/ActionService.php

@@ -74,7 +74,7 @@ class ActionService
             throw new \LogicException("user - Action call_type type error. ");
         }
         //  处理账号
-        $info = User::info($user_id,true);
+        $info = UserService::info($user_id, true);
 
         $info->status2 = $status;
         if(    ! $info->save()){
@@ -177,7 +177,7 @@ class ActionService
             Logger::info("callItem  $action->id  $type have other. ");
             return;
         }
-        $info = User::infoinfo($action->user_id,true);
+        $info = UserService::infoinfo($action->user_id, true);
         if($action->type === ACTION_TYPE::BAN){
             if($info->status2 === STATUS2::Ban){
                 // 接触 封禁

+ 0 - 243
app/Module/User/Services/User.php

@@ -1,243 +0,0 @@
-<?php
-
-namespace App\Module\User\Services;
-
-use App\Module\User\Enums\STATUS2;
-use App\Module\User\Models;
-use App\Module\User\Unit\UserPublic;
-use Dcore\Db\Arr;
-use Dcore\Exception\LogicException;
-use Illuminate\Support\Facades\Hash;
-
-class User
-{
-
-    /**
-     * 创建用户
-     *
-     * @param $username
-     * @param $password
-     * @param $mobile
-     * @param $role
-     * @return string|true
-     */
-    static public function create($username, $password)
-    {
-        $user           = new \App\Module\User\Models\User();
-        $user->username = $username;
-        $user->password = Hash::make($password);
-        $user->status2 = STATUS2::Normal;
-        $res = $user->save();
-
-        if(\App\Module\Sys\User::isSysUid($user->id)){
-            $user->delete();
-            throw new \LogicException("错误34");
-        }
-        if ($res === false) {
-            return 'create-error';
-        }
-        User::infoinfo($user->id,true);
-
-        return $user;
-    }
-
-
-    /**
-     * 使用手机号码注册
-     *
-     * @param $phone
-     * @param $password
-     * @return Models\User|string|true
-     * @throws LogicException
-     */
-    static public function createPhone($phone, $password)
-    {
-        $user = self::create($phone, $password);
-        if ($user === false) {
-            throw new LogicException("create error");
-        }
-        $b = Phone::bind($user->id, $phone);
-        if ($user === false) {
-            throw new LogicException("create bind error");
-        }
-
-        return $user;
-
-    }
-
-
-    /**
-     * 更改密码
-     *
-     * @param $id
-     * @param $password
-     * @return string|true
-     */
-    static public function resetPassword($id, $password)
-    {
-        $user = \App\Module\User\Models\User::query()->find($id);
-        if (!$user) {
-            return 'user-notfind';
-        }
-        $user->password = Hash::make($password);
-        $res            = $user->save();
-
-
-        if ($res === false) {
-            return 'update-error';
-        }
-
-        return true;
-    }
-
-    /**
-     * 列表
-     *
-     * @param $page
-     * @param $limit
-     * @param $where
-     * @return \Illuminate\Pagination\LengthAwarePaginator
-     */
-    static public function lisss($page, $limit, $where)
-    {
-        $q    = \App\Module\User\Models\User::query()->with([
-                                                               'fund', 'merchant', 'info'
-                                                           ]);
-        $wArr = new Arr($where, $q);
-        $wArr->queryNumber('user_id')
-            ->queryString('mobile');
-
-        return $q->paginate($limit, [
-            'user_id',
-            'nick_name'
-        ],                  '', $page);
-
-    }
-
-    /**
-     * @param $id
-     * @return Models\User|null
-     */
-    static public function info($id, $create = false)
-    {
-        $info = \App\Module\User\Logic\User::info($id, $create);
-
-        return $info;
-    }
-
-    /**
-     *
-     * @param $id
-     * @param $create
-     * @return Models\UserInfo|null
-     */
-    static public function infoinfo($id, $create = false)
-    {
-        $info = \App\Module\User\Logic\User::infoinfo($id, $create);
-
-        return $info;
-    }
-
-
-    /**
-     * 获取用户公共信息
-     *
-     * @param $ids
-     * @return array
-     */
-    static public function pinfos($ids = [])
-    {
-
-        if(empty($ids)){
-            return [];
-        }
-        $ids2 = [];
-        foreach ($ids as $id) {
-            if(empty($id)){
-                continue;
-            }
-            if(\App\Module\Sys\User::isSysUid($id)){
-                continue;
-            }
-            $ids2[$id] = $id;
-        }
-        $res = self::pinfoCaches($ids2);
-        if ($ids2) {
-            /**
-             * @var \App\Module\User\Models\UserInfo[] $users
-             */
-            $users = \App\Module\User\Models\UserInfo::query()->whereIn('user_id', $ids2)->with([
-                                                                                                   'merchant'
-                                                                                               ])->get();
-
-            foreach ($users as $user) {
-                $userp            = new UserPublic();
-                $userp->avatar    = $user->avatar;
-                $userp->user_id   = $user->user_id;
-                $userp->nick_name = $user->nickname;
-                $userp->status    = $user->status->value();
-
-                $res[$userp->user_id] = $userp;
-                \Illuminate\Support\Facades\Cache::put(self::publicInfoKey($user->user_id), $userp);
-                unset($ids2[$userp->user_id]);
-            }
-        }
-
-
-        if (count($ids2)) {
-            foreach ($ids2 as $id) {
-                $userp                = new UserPublic();
-                $userp->avatar        = '';
-                $userp->user_id       = $id;
-                $userp->nick_name     = '已注销';
-                $res[$userp->user_id] = $userp;
-                \Illuminate\Support\Facades\Cache::put(self::publicInfoKey($userp->user_id), $userp);
-                unset($ids2[$userp->user_id]);
-            }
-        }
-
-        return $res;
-    }
-
-    /**
-     *
-     * @param $ids
-     * @return void
-     */
-    static public function pinfoCaches(&$ids)
-    {
-        $res = [];
-
-        return $res;
-        foreach ($ids as $id) {
-            $c = \Illuminate\Support\Facades\Cache::get(self::publicInfoKey($id));
-            if ($c) {
-                $res[$id] = $c;
-                unset($ids[$id]);
-            }
-        }
-
-        return $res;
-
-    }
-
-
-    /**
-     * 用户公共数据缓存key
-     *
-     * @param $uid
-     * @return string
-     */
-    static public function publicInfoKey($uid)
-    {
-        return 'lan_userpublic_' . $uid;
-    }
-
-
-    static public function getPhone()
-    {
-
-    }
-
-}
-

+ 213 - 19
app/Module/User/Services/UserService.php

@@ -2,46 +2,240 @@
 
 namespace App\Module\User\Services;
 
-use App\Module\AppGame\SessionApp;
+use App\Module\User\Enums\STATUS2;
+use App\Module\User\Models;
+use App\Module\User\Unit\UserPublic;
+use Illuminate\Support\Facades\Hash;
 
 class UserService
 {
 
-    public function getToken()
+    /**
+     * 创建用户
+     *
+     * @param $username
+     * @param $password
+     * @param $mobile
+     * @param $role
+     * @return string|true
+     */
+    static public function create($username, $password)
+    {
+        $user           = new \App\Module\User\Models\User();
+        $user->username = $username;
+        $user->password = Hash::make($password);
+        $user->status2 = STATUS2::Normal;
+        $res = $user->save();
+
+        if(\App\Module\Sys\User::isSysUid($user->id)){
+            $user->delete();
+            throw new \LogicException("错误34");
+        }
+        if ($res === false) {
+            return 'create-error';
+        }
+        UserService::infoinfo($user->id, true);
+
+        return $user;
+    }
+
+
+    /**
+     * 使用手机号码注册
+     *
+     * @param $phone
+     * @param $password
+     * @return Models\User|string|true
+     * @throws LogicException
+     */
+    static public function createPhone($phone, $password)
+    {
+        $user = self::create($phone, $password);
+        if ($user === false) {
+            throw new LogicException("create error");
+        }
+        $b = Phone::bind($user->id, $phone);
+        if ($user === false) {
+            throw new LogicException("create bind error");
+        }
+
+        return $user;
+
+    }
+
+
+    /**
+     * 更改密码
+     *
+     * @param $id
+     * @param $password
+     * @return string|true
+     */
+    static public function resetPassword($id, $password)
+    {
+        $user = \App\Module\User\Models\User::query()->find($id);
+        if (!$user) {
+            return 'user-notfind';
+        }
+        $user->password = Hash::make($password);
+        $res            = $user->save();
+
+
+        if ($res === false) {
+            return 'update-error';
+        }
+
+        return true;
+    }
+
+    /**
+     * 列表
+     *
+     * @param $page
+     * @param $limit
+     * @param $where
+     * @return \Illuminate\Pagination\LengthAwarePaginator
+     */
+    static public function lisss($page, $limit, $where)
+    {
+        $q    = \App\Module\User\Models\User::query()->with([
+                                                               'fund', 'merchant', 'info'
+                                                           ]);
+        $wArr = new Arr($where, $q);
+        $wArr->queryNumber('user_id')
+            ->queryString('mobile');
+
+        return $q->paginate($limit, [
+            'user_id',
+            'nick_name'
+        ],                  '', $page);
+
+    }
+
+    /**
+     * @param $id
+     * @return Models\User|null
+     */
+    static public function info($id, $create = false)
+    {
+        $info = \App\Module\User\Logic\User::info($id, $create);
+
+        return $info;
+    }
+
+    /**
+     *
+     * @param $id
+     * @param $create
+     * @return Models\UserInfo|null
+     */
+    static public function infoinfo($id, $create = false)
     {
-        return SessionApp::$session_id;
+        $info = \App\Module\User\Logic\User::infoinfo($id, $create);
+
+        return $info;
     }
 
-    public function __construct(protected int $user_id)
+
+    /**
+     * 获取用户公共信息
+     *
+     * @param $ids
+     * @return array
+     */
+    static public function pinfos($ids = [])
     {
 
+        if(empty($ids)){
+            return [];
+        }
+        $ids2 = [];
+        foreach ($ids as $id) {
+            if(empty($id)){
+                continue;
+            }
+            if(\App\Module\Sys\User::isSysUid($id)){
+                continue;
+            }
+            $ids2[$id] = $id;
+        }
+        $res = self::pinfoCaches($ids2);
+        if ($ids2) {
+            /**
+             * @var \App\Module\User\Models\UserInfo[] $users
+             */
+            $users = \App\Module\User\Models\UserInfo::query()->whereIn('user_id', $ids2)->with([
+                                                                                                   'merchant'
+                                                                                               ])->get();
+
+            foreach ($users as $user) {
+                $userp            = new UserPublic();
+                $userp->avatar    = $user->avatar;
+                $userp->user_id   = $user->user_id;
+                $userp->nick_name = $user->nickname;
+                $userp->status    = $user->status->value();
+
+                $res[$userp->user_id] = $userp;
+                \Illuminate\Support\Facades\Cache::put(self::publicInfoKey($user->user_id), $userp);
+                unset($ids2[$userp->user_id]);
+            }
+        }
+
+
+        if (count($ids2)) {
+            foreach ($ids2 as $id) {
+                $userp                = new UserPublic();
+                $userp->avatar        = '';
+                $userp->user_id       = $id;
+                $userp->nick_name     = '已注销';
+                $res[$userp->user_id] = $userp;
+                \Illuminate\Support\Facades\Cache::put(self::publicInfoKey($userp->user_id), $userp);
+                unset($ids2[$userp->user_id]);
+            }
+        }
+
+        return $res;
     }
 
     /**
-     * @return static
+     *
+     * @param $ids
+     * @return void
      */
-    static public function newBySession()
+    static public function pinfoCaches(&$ids)
     {
-        return new static(SessionApp::getUserId());
+        $res = [];
+
+        return $res;
+        foreach ($ids as $id) {
+            $c = \Illuminate\Support\Facades\Cache::get(self::publicInfoKey($id));
+            if ($c) {
+                $res[$id] = $c;
+                unset($ids[$id]);
+            }
+        }
+
+        return $res;
+
     }
 
 
     /**
-     * 传入数据处理
-     * @param $data
-     * @return array|int[]
+     * 用户公共数据缓存key
+     *
+     * @param $uid
+     * @return string
      */
-    public function callData($data)
+    static public function publicInfoKey($uid)
+    {
+        return 'lan_userpublic_' . $uid;
+    }
+
+
+    static public function getPhone()
     {
-        $page = $data['page'] ?? 1;
-        $limit = $data['limit'] ?? 10;
-        unset($data['page']);
-        unset($data['limit']);
-        $where = $data;
-        return [
-            $page, $limit, $where,
-        ];
 
     }
 
 }
+

+ 2 - 2
app/Module/User/Validation/SPasswordCheck.php

@@ -5,7 +5,7 @@ namespace App\Module\User\Validation;
 use App\Module\AppGame\SessionApp;
 use App\Module\Sys\Config;
 use App\Module\User\Services\Google2Fa;
-use App\Module\User\Services\User;
+use App\Module\User\Services\UserService;
 use App\Module\User\Validator\AuthPasswordApp;
 use UCore\ValidationCore;
 
@@ -16,7 +16,7 @@ class SPasswordCheck
     {
         $scene = $validation->getName();
         $user_id = SessionApp::getUserId();
-        $info2   = User::infoinfo($user_id);
+        $info2   = UserService::infoinfo($user_id);
         $authArray = Config::getValueDefault('auth_'.$scene);
 
 

+ 2 - 2
app/Module/User/Validator/AutoRegPhone.php

@@ -5,7 +5,7 @@ namespace App\Module\User\Validator;
 
 
 use App\Module\User\Models\UserPhone;
-use App\Module\User\Services\User;
+use App\Module\User\Services\UserService;
 use UCore\Validator;
 
 /**
@@ -31,7 +31,7 @@ class AutoRegPhone extends Validator
             if(!$res){
                 return false;
             }
-            $user = User::createPhone($value, uniqid());
+            $user = UserService::createPhone($value, uniqid());
 
         }else{
             $user = $userPhone->user;

+ 2 - 2
app/Module/User/Validator/Google2FA.php

@@ -4,7 +4,7 @@ namespace App\Module\User\Validator;
 
 
 use App\Module\Sys\Config;
-use App\Module\User\Services\User;
+use App\Module\User\Services\UserService;
 use UCore\Validator;
 
 class Google2FA extends Validator
@@ -32,7 +32,7 @@ class Google2FA extends Validator
      */
     static public function check($user_id, $value, $scene = '')
     {
-        $info      = User::infoinfo($user_id);
+        $info      = UserService::infoinfo($user_id);
         $google2fa = new \PragmaRX\Google2FA\Google2FA();
         if (APP_DEBUG) {
             if ($info->google2fa_secret === '8888888888') {

+ 2 - 2
app/Module/User/Validator/NotMe.php

@@ -2,7 +2,7 @@
 
 namespace App\Module\User\Validator;
 
-use App\Module\User\Services\User;
+use App\Module\User\Services\UserService;
 use UCore\Validator;
 
 /**
@@ -15,7 +15,7 @@ class NotMe extends Validator
 
     public function validate(mixed $value, array $data): bool
     {
-        $info = User::info($value);
+        $info = UserService::info($value);
         if ($info) {
             return true;
         }

+ 2 - 2
app/Module/User/Validator/UserIdExsit.php

@@ -2,7 +2,7 @@
 
 namespace App\Module\User\Validator;
 
-use App\Module\User\Services\User;
+use App\Module\User\Services\UserService;
 use UCore\Validator;
 
 /**
@@ -15,7 +15,7 @@ class UserIdExsit extends Validator
 
     public function validate(mixed $value, array $data): bool
     {
-        $info = User::info($value);
+        $info = UserService::info($value);
         if ($info) {
             return true;
         }

+ 2 - 2
app/Module/User/Validator/UserIdInfo.php

@@ -4,7 +4,7 @@ namespace App\Module\User\Validator;
 
 use App\Module\AppGame\H;
 use App\Module\AppGame\SessionApp;
-use App\Module\User\Services\User;
+use App\Module\User\Services\UserService;
 use UCore\Validator;
 
 /**
@@ -26,7 +26,7 @@ class UserIdInfo extends Validator
         }
         $this->validation->setRaw('user_id', $user_id);
 
-        $info = User::info($user_id);
+        $info = UserService::info($user_id);
 //        dd($info);
         $this->validation->user= $info;
 

+ 2 - 2
app/Module/User/Validator/UserIdInfo2.php

@@ -4,7 +4,7 @@ namespace App\Module\User\Validator;
 
 use App\Module\AppGame\H;
 use App\Module\AppGame\SessionApp;
-use App\Module\User\Services\User;
+use App\Module\User\Services\UserService;
 use UCore\Validator;
 
 /**
@@ -26,7 +26,7 @@ class UserIdInfo2 extends Validator
         }
         $this->validation->setRaw('user_id', $user_id);
 
-        $info = User::infoinfo($user_id);
+        $info = UserService::infoinfo($user_id);
         if(!$info){
             return false;
         }

+ 1 - 1
app/Module/User/Validator/Username.php

@@ -18,7 +18,7 @@ class Username extends Validator
     {
         $user = User::query()->where('username','=',$value)->first();
         if ($user) {
-
+//            dd($user);
             $this->validationSet('user',$user);
             return true;
         }

+ 4 - 7
config/proto_route.php

@@ -59,12 +59,9 @@ return array (
       2 => 'login',
       3 => 'player_data',
       4 => 'register',
-      5 => 'send_sms',
-      6 => 'token',
-    ),
-    'reset' => 
-    array (
-      0 => 'password',
+      5 => 'reset_password',
+      6 => 'send_sms',
+      7 => 'token',
     ),
     'shop' => 
     array (
@@ -82,7 +79,7 @@ return array (
       6 => 'query_data',
     ),
   ),
-  'generated_at' => '2025-05-02 03:55:56',
+  'generated_at' => '2025-05-02 07:20:07',
   'conventions' => 
   array (
     'handler_namespace' => 'App\\Module\\AppGame\\Handler',

+ 21 - 18
protophp/GPBMetadata/Proto/Game.php

@@ -16,16 +16,16 @@ class Game
         }
         $pool->internalAddGeneratedFile(
             '
-é‚
-proto/game.proto	uraus.kku"Ž+
+ʃ
+proto/game.proto	uraus.kku"í+
 Request;
 public_tokend (2%.uraus.kku.Request.RequestPublicToken;
 public_logine (2%.uraus.kku.Request.RequestPublicLoginA
 public_registerf (2(.uraus.kku.Request.RequestPublicRegisterF
 public_player_datag (2*.uraus.kku.Request.RequestPublicPlayerData?
 public_sendsmsh (2\'.uraus.kku.Request.RequestPublicSendSmsC
-public_checkcodei (2).uraus.kku.Request.RequestPublicCheckCodeE
-public_resetpasswordj (2\'.uraus.kku.Request.RequestResetPasswordE
+public_checkcodei (2).uraus.kku.Request.RequestPublicCheckCodeK
+public_resetpasswordj (2-.uraus.kku.Request.RequestPublicResetPasswordE
 public_deviceinfok (2*.uraus.kku.Request.RequestPublicDeviceInfoB
 land_fertilizerÈ (2(.uraus.kku.Request.RequestLandFertilizer>
 
land_wateringÉ (2&.uraus.kku.Request.RequestLandWatering@
@@ -38,9 +38,9 @@ class Game
 	user_data¬ (2".uraus.kku.Request.RequestUserData@
 user_querydata­ (2\'.uraus.kku.Request.RequestUserQueryDataF
 user_editpassword® (2*.uraus.kku.Request.RequestUserEditPassword:
-user_logout¯ (2$.uraus.kku.Request.RequestUserLogout8
-log_data° (2%.uraus.kku.Request.RequestUserLogData:
-	clear_log± (2&.uraus.kku.Request.RequestUserClearLog>
+user_logout¯ (2$.uraus.kku.Request.RequestUserLogout=
+
user_log_data° (2%.uraus.kku.Request.RequestUserLogData?
+user_clear_log± (2&.uraus.kku.Request.RequestUserClearLog>
 
user_gameskin² (2&.uraus.kku.Request.RequestUserGameSkin4
 god_open� (2!.uraus.kku.Request.RequestGodOpen4
 house_upô (2!.uraus.kku.Request.RequestHouseUp8
@@ -67,7 +67,9 @@ item_query
 item_openbox¡ (2%.uraus.kku.Request.RequestItemOpenBox8
 
 item_craft¢ (2#.uraus.kku.Request.RequestItemCraft@
-item_dismantle£ (2\'.uraus.kku.Request.RequestItemDismantle4
+item_dismantle£ (2\'.uraus.kku.Request.RequestItemDismantle8
+
+shop_query„ (2#.uraus.kku.Request.RequestShopQuery4
 shop_buy… (2!.uraus.kku.Request.RequestShopBuy#
 RequestPublicToken
 times (6
@@ -86,8 +88,8 @@ item_craft
 type (
 mobile (	&
 RequestPublicCheckCode
-code (	E
-RequestResetPassword
+code (	K
+RequestPublicResetPassword
 mobile (	
 code (	
 card_id (	‹
@@ -194,11 +196,12 @@ select_ids (.
 RequestItemDismantle
 
 id (
-number (
-RequestShopQuery1
+number (!
+RequestShopQuery
+times (1
 RequestShopBuy
 good_id (
-number ("å7
+number ("ç7
 Response
 run_unid (	
 run_ms (-
@@ -229,8 +232,8 @@ select_ids (.
 user_querydata­ (2).uraus.kku.Response.ResponseUserQueryDataH
 user_editpassword® (2,.uraus.kku.Response.ResponseUserEditPassword<
 user_logout¯ (2&.uraus.kku.Response.ResponseUserLogout:
-user_log° (2\'.uraus.kku.Response.ResponseUserLogdata@
-
user_clearlog± (2(.uraus.kku.Response.ResponseUserClearLog@
+user_log° (2\'.uraus.kku.Response.ResponseUserLogdataA
+user_clear_log± (2(.uraus.kku.Response.ResponseUserClearLog@
 
user_gameskin² (2(.uraus.kku.Response.ResponseUserGameSkin6
 god_open� (2#.uraus.kku.Response.ResponseGodOpen6
 house_upô (2#.uraus.kku.Response.ResponseHouseUp:
@@ -327,9 +330,9 @@ PublicLand
 ResponseUserClearLog"
 ResponseUserGameSkin
 
-id (^
-UserInfo
-user_d (
+id (_
+UserInfo
+user_id (
 skin_id (
 avatar (
 	nick_name (	

+ 109 - 45
protophp/Uraus/Kku/Request.php

@@ -56,7 +56,7 @@ class Request extends \Google\Protobuf\Internal\Message
     /**
      * 重置密码
      *
-     * Generated from protobuf field <code>.uraus.kku.Request.RequestResetPassword public_resetpassword = 106;</code>
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestPublicResetPassword public_resetpassword = 106;</code>
      */
     protected $public_resetpassword = null;
     /**
@@ -141,15 +141,15 @@ class Request extends \Google\Protobuf\Internal\Message
     /**
      * 获取日志信息请求
      *
-     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserLogData log_data = 304;</code>
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserLogData user_log_data = 304;</code>
      */
-    protected $log_data = null;
+    protected $user_log_data = null;
     /**
      * 清空日志请求
      *
-     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserClearLog clear_log = 305;</code>
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserClearLog user_clear_log = 305;</code>
      */
-    protected $clear_log = null;
+    protected $user_clear_log = null;
     /**
      * 更换农场皮肤请求
      *
@@ -157,6 +157,13 @@ class Request extends \Google\Protobuf\Internal\Message
      */
     protected $user_gameskin = null;
     /**
+     * god 400+
+     *     import "god_request.proto";
+     * ====== god_request.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 神像 请求
      *
      * Generated from protobuf field <code>.uraus.kku.Request.RequestGodOpen god_open = 400;</code>
@@ -295,9 +302,13 @@ class Request extends \Google\Protobuf\Internal\Message
      */
     protected $item_dismantle = null;
     /**
-     * 商品  900+
-     *     import "shop_request.proto";
-     * ====== shop_request.proto ======
+     * 商店查询 请求
+     *
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestShopQuery shop_query = 900;</code>
+     */
+    protected $shop_query = null;
+    /**
+     * 商品 购买
      *
      * Generated from protobuf field <code>.uraus.kku.Request.RequestShopBuy shop_buy = 901;</code>
      */
@@ -321,7 +332,7 @@ class Request extends \Google\Protobuf\Internal\Message
      *           发送验证码
      *     @type \Uraus\Kku\Request\RequestPublicCheckCode $public_checkcode
      *           对比验证码
-     *     @type \Uraus\Kku\Request\RequestResetPassword $public_resetpassword
+     *     @type \Uraus\Kku\Request\RequestPublicResetPassword $public_resetpassword
      *           重置密码
      *     @type \Uraus\Kku\Request\RequestPublicDeviceInfo $public_deviceinfo
      *           设备信息 上报
@@ -350,13 +361,20 @@ class Request extends \Google\Protobuf\Internal\Message
      *           修改密码
      *     @type \Uraus\Kku\Request\RequestUserLogout $user_logout
      *           退出登陆
-     *     @type \Uraus\Kku\Request\RequestUserLogData $log_data
+     *     @type \Uraus\Kku\Request\RequestUserLogData $user_log_data
      *           获取日志信息请求
-     *     @type \Uraus\Kku\Request\RequestUserClearLog $clear_log
+     *     @type \Uraus\Kku\Request\RequestUserClearLog $user_clear_log
      *           清空日志请求
      *     @type \Uraus\Kku\Request\RequestUserGameSkin $user_gameskin
      *           更换农场皮肤请求
      *     @type \Uraus\Kku\Request\RequestGodOpen $god_open
+     *           god 400+
+     *               import "god_request.proto";
+     *           ====== god_request.proto ======
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
      *           神像 请求
      *     @type \Uraus\Kku\Request\RequestHouseUp $house_up
      *           房屋升级请求
@@ -402,10 +420,10 @@ class Request extends \Google\Protobuf\Internal\Message
      *           合成
      *     @type \Uraus\Kku\Request\RequestItemDismantle $item_dismantle
      *           分解
+     *     @type \Uraus\Kku\Request\RequestShopQuery $shop_query
+     *           商店查询 请求
      *     @type \Uraus\Kku\Request\RequestShopBuy $shop_buy
-     *           商品  900+
-     *               import "shop_request.proto";
-     *           ====== shop_request.proto ======
+     *           商品 购买
      * }
      */
     public function __construct($data = NULL) {
@@ -632,8 +650,8 @@ class Request extends \Google\Protobuf\Internal\Message
     /**
      * 重置密码
      *
-     * Generated from protobuf field <code>.uraus.kku.Request.RequestResetPassword public_resetpassword = 106;</code>
-     * @return \Uraus\Kku\Request\RequestResetPassword|null
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestPublicResetPassword public_resetpassword = 106;</code>
+     * @return \Uraus\Kku\Request\RequestPublicResetPassword|null
      */
     public function getPublicResetpassword()
     {
@@ -653,13 +671,13 @@ class Request extends \Google\Protobuf\Internal\Message
     /**
      * 重置密码
      *
-     * Generated from protobuf field <code>.uraus.kku.Request.RequestResetPassword public_resetpassword = 106;</code>
-     * @param \Uraus\Kku\Request\RequestResetPassword $var
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestPublicResetPassword public_resetpassword = 106;</code>
+     * @param \Uraus\Kku\Request\RequestPublicResetPassword $var
      * @return $this
      */
     public function setPublicResetpassword($var)
     {
-        GPBUtil::checkMessage($var, \Uraus\Kku\Request\RequestResetPassword::class);
+        GPBUtil::checkMessage($var, \Uraus\Kku\Request\RequestPublicResetPassword::class);
         $this->public_resetpassword = $var;
 
         return $this;
@@ -1138,35 +1156,35 @@ class Request extends \Google\Protobuf\Internal\Message
     /**
      * 获取日志信息请求
      *
-     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserLogData log_data = 304;</code>
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserLogData user_log_data = 304;</code>
      * @return \Uraus\Kku\Request\RequestUserLogData|null
      */
-    public function getLogData()
+    public function getUserLogData()
     {
-        return $this->log_data;
+        return $this->user_log_data;
     }
 
-    public function hasLogData()
+    public function hasUserLogData()
     {
-        return isset($this->log_data);
+        return isset($this->user_log_data);
     }
 
-    public function clearLogData()
+    public function clearUserLogData()
     {
-        unset($this->log_data);
+        unset($this->user_log_data);
     }
 
     /**
      * 获取日志信息请求
      *
-     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserLogData log_data = 304;</code>
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserLogData user_log_data = 304;</code>
      * @param \Uraus\Kku\Request\RequestUserLogData $var
      * @return $this
      */
-    public function setLogData($var)
+    public function setUserLogData($var)
     {
         GPBUtil::checkMessage($var, \Uraus\Kku\Request\RequestUserLogData::class);
-        $this->log_data = $var;
+        $this->user_log_data = $var;
 
         return $this;
     }
@@ -1174,35 +1192,35 @@ class Request extends \Google\Protobuf\Internal\Message
     /**
      * 清空日志请求
      *
-     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserClearLog clear_log = 305;</code>
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserClearLog user_clear_log = 305;</code>
      * @return \Uraus\Kku\Request\RequestUserClearLog|null
      */
-    public function getClearLog()
+    public function getUserClearLog()
     {
-        return $this->clear_log;
+        return $this->user_clear_log;
     }
 
-    public function hasClearLog()
+    public function hasUserClearLog()
     {
-        return isset($this->clear_log);
+        return isset($this->user_clear_log);
     }
 
-    public function clearClearLog()
+    public function clearUserClearLog()
     {
-        unset($this->clear_log);
+        unset($this->user_clear_log);
     }
 
     /**
      * 清空日志请求
      *
-     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserClearLog clear_log = 305;</code>
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestUserClearLog user_clear_log = 305;</code>
      * @param \Uraus\Kku\Request\RequestUserClearLog $var
      * @return $this
      */
-    public function setClearLog($var)
+    public function setUserClearLog($var)
     {
         GPBUtil::checkMessage($var, \Uraus\Kku\Request\RequestUserClearLog::class);
-        $this->clear_log = $var;
+        $this->user_clear_log = $var;
 
         return $this;
     }
@@ -1244,6 +1262,13 @@ class Request extends \Google\Protobuf\Internal\Message
     }
 
     /**
+     * god 400+
+     *     import "god_request.proto";
+     * ====== god_request.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 神像 请求
      *
      * Generated from protobuf field <code>.uraus.kku.Request.RequestGodOpen god_open = 400;</code>
@@ -1265,6 +1290,13 @@ class Request extends \Google\Protobuf\Internal\Message
     }
 
     /**
+     * god 400+
+     *     import "god_request.proto";
+     * ====== god_request.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 神像 请求
      *
      * Generated from protobuf field <code>.uraus.kku.Request.RequestGodOpen god_open = 400;</code>
@@ -2072,9 +2104,43 @@ class Request extends \Google\Protobuf\Internal\Message
     }
 
     /**
-     * 商品  900+
-     *     import "shop_request.proto";
-     * ====== shop_request.proto ======
+     * 商店查询 请求
+     *
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestShopQuery shop_query = 900;</code>
+     * @return \Uraus\Kku\Request\RequestShopQuery|null
+     */
+    public function getShopQuery()
+    {
+        return $this->shop_query;
+    }
+
+    public function hasShopQuery()
+    {
+        return isset($this->shop_query);
+    }
+
+    public function clearShopQuery()
+    {
+        unset($this->shop_query);
+    }
+
+    /**
+     * 商店查询 请求
+     *
+     * Generated from protobuf field <code>.uraus.kku.Request.RequestShopQuery shop_query = 900;</code>
+     * @param \Uraus\Kku\Request\RequestShopQuery $var
+     * @return $this
+     */
+    public function setShopQuery($var)
+    {
+        GPBUtil::checkMessage($var, \Uraus\Kku\Request\RequestShopQuery::class);
+        $this->shop_query = $var;
+
+        return $this;
+    }
+
+    /**
+     * 商品 购买
      *
      * Generated from protobuf field <code>.uraus.kku.Request.RequestShopBuy shop_buy = 901;</code>
      * @return \Uraus\Kku\Request\RequestShopBuy|null
@@ -2095,9 +2161,7 @@ class Request extends \Google\Protobuf\Internal\Message
     }
 
     /**
-     * 商品  900+
-     *     import "shop_request.proto";
-     * ====== shop_request.proto ======
+     * 商品 购买
      *
      * Generated from protobuf field <code>.uraus.kku.Request.RequestShopBuy shop_buy = 901;</code>
      * @param \Uraus\Kku\Request\RequestShopBuy $var

+ 3 - 3
protophp/Uraus/Kku/Request/RequestResetPassword.php → protophp/Uraus/Kku/Request/RequestPublicResetPassword.php

@@ -11,9 +11,9 @@ use Google\Protobuf\Internal\GPBUtil;
 /**
  * 找回密码
  *
- * Generated from protobuf message <code>uraus.kku.Request.RequestResetPassword</code>
+ * Generated from protobuf message <code>uraus.kku.Request.RequestPublicResetPassword</code>
  */
-class RequestResetPassword extends \Google\Protobuf\Internal\Message
+class RequestPublicResetPassword extends \Google\Protobuf\Internal\Message
 {
     /**
      * 手机号码
@@ -134,5 +134,5 @@ class RequestResetPassword extends \Google\Protobuf\Internal\Message
 }
 
 // Adding a class alias for backwards compatibility with the previous class name.
-class_alias(RequestResetPassword::class, \Uraus\Kku\Request_RequestResetPassword::class);
+class_alias(RequestPublicResetPassword::class, \Uraus\Kku\Request_RequestPublicResetPassword::class);
 

+ 34 - 0
protophp/Uraus/Kku/Request/RequestShopQuery.php

@@ -15,6 +15,12 @@ use Google\Protobuf\Internal\GPBUtil;
  */
 class RequestShopQuery extends \Google\Protobuf\Internal\Message
 {
+    /**
+     * 时间戳
+     *
+     * Generated from protobuf field <code>int64 times = 1;</code>
+     */
+    protected $times = 0;
 
     /**
      * Constructor.
@@ -22,6 +28,8 @@ class RequestShopQuery extends \Google\Protobuf\Internal\Message
      * @param array $data {
      *     Optional. Data for populating the Message object.
      *
+     *     @type int|string $times
+     *           时间戳
      * }
      */
     public function __construct($data = NULL) {
@@ -29,6 +37,32 @@ class RequestShopQuery extends \Google\Protobuf\Internal\Message
         parent::__construct($data);
     }
 
+    /**
+     * 时间戳
+     *
+     * Generated from protobuf field <code>int64 times = 1;</code>
+     * @return int|string
+     */
+    public function getTimes()
+    {
+        return $this->times;
+    }
+
+    /**
+     * 时间戳
+     *
+     * Generated from protobuf field <code>int64 times = 1;</code>
+     * @param int|string $var
+     * @return $this
+     */
+    public function setTimes($var)
+    {
+        GPBUtil::checkInt64($var);
+        $this->times = $var;
+
+        return $this;
+    }
+
 }
 
 // Adding a class alias for backwards compatibility with the previous class name.

+ 16 - 0
protophp/Uraus/Kku/Request_RequestPublicResetPassword.php

@@ -0,0 +1,16 @@
+<?php
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: proto/game.proto
+
+namespace Uraus\Kku;
+
+if (false) {
+    /**
+     * This class is deprecated. Use Uraus\Kku\Request\RequestPublicResetPassword instead.
+     * @deprecated
+     */
+    class Request_RequestPublicResetPassword {}
+}
+class_exists(Request\RequestPublicResetPassword::class);
+@trigger_error('Uraus\Kku\Request_RequestPublicResetPassword is deprecated and will be removed in the next major release. Use Uraus\Kku\Request\RequestPublicResetPassword instead', E_USER_DEPRECATED);
+

+ 0 - 16
protophp/Uraus/Kku/Request_RequestResetPassword.php

@@ -1,16 +0,0 @@
-<?php
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: proto/game.proto
-
-namespace Uraus\Kku;
-
-if (false) {
-    /**
-     * This class is deprecated. Use Uraus\Kku\Request\RequestResetPassword instead.
-     * @deprecated
-     */
-    class Request_RequestResetPassword {}
-}
-class_exists(Request\RequestResetPassword::class);
-@trigger_error('Uraus\Kku\Request_RequestResetPassword is deprecated and will be removed in the next major release. Use Uraus\Kku\Request\RequestResetPassword instead', E_USER_DEPRECATED);
-

+ 129 - 13
protophp/Uraus/Kku/Response.php

@@ -69,6 +69,14 @@ class Response extends \Google\Protobuf\Internal\Message
      */
     protected $last_data = null;
     /**
+     * 公开 100+
+     *     import "public_response.proto";
+     * ====== public_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 获取token
      *
      * Generated from protobuf field <code>.uraus.kku.Response.ResponsePublicToken public_token = 100;</code>
@@ -117,6 +125,14 @@ class Response extends \Google\Protobuf\Internal\Message
      */
     protected $public_deviceinfo = null;
     /**
+     * land 200+
+     *     import "land_response.proto";
+     * ====== land_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 土地 返回
      * 施肥
      *
@@ -166,6 +182,14 @@ class Response extends \Google\Protobuf\Internal\Message
      */
     protected $land_up = null;
     /**
+     * user 300+
+     *     import "user_response.proto";
+     * ====== user_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 用户返回数据
      * 用户 信息
      *
@@ -199,9 +223,9 @@ class Response extends \Google\Protobuf\Internal\Message
     /**
      *清空日志
      *
-     * Generated from protobuf field <code>.uraus.kku.Response.ResponseUserClearLog user_clearlog = 305;</code>
+     * Generated from protobuf field <code>.uraus.kku.Response.ResponseUserClearLog user_clear_log = 305;</code>
      */
-    protected $user_clearlog = null;
+    protected $user_clear_log = null;
     /**
      * 更换农场皮肤
      *
@@ -212,6 +236,11 @@ class Response extends \Google\Protobuf\Internal\Message
      * god 400+
      *     import "god_response.proto";
      * ====== god_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     * 神像 请求
      *
      * Generated from protobuf field <code>.uraus.kku.Response.ResponseGodOpen god_open = 400;</code>
      */
@@ -387,6 +416,14 @@ class Response extends \Google\Protobuf\Internal\Message
      *     @type \Uraus\Kku\Common\LastData $last_data
      *           数据同步
      *     @type \Uraus\Kku\Response\ResponsePublicToken $public_token
+     *           公开 100+
+     *               import "public_response.proto";
+     *           ====== public_response.proto ======
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
      *           获取token
      *     @type \Uraus\Kku\Response\ResponsePublicLogin $public_login
      *           登陆
@@ -403,6 +440,14 @@ class Response extends \Google\Protobuf\Internal\Message
      *     @type \Uraus\Kku\Response\ResponsePublicDeviceInfo $public_deviceinfo
      *           设备信息上报
      *     @type \Uraus\Kku\Response\ResponseLandFertilizer $land_fertilizer
+     *           land 200+
+     *               import "land_response.proto";
+     *           ====== land_response.proto ======
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
      *           土地 返回
      *           施肥
      *     @type \Uraus\Kku\Response\ResponseLandWatering $land_watering
@@ -420,6 +465,14 @@ class Response extends \Google\Protobuf\Internal\Message
      *     @type \Uraus\Kku\Response\ResponseLandUp $land_up
      *          土地升级
      *     @type \Uraus\Kku\Response\ResponseUserData $user_data
+     *           user 300+
+     *               import "user_response.proto";
+     *           ====== user_response.proto ======
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
      *           用户返回数据
      *           用户 信息
      *     @type \Uraus\Kku\Response\ResponseUserQueryData $user_querydata
@@ -430,7 +483,7 @@ class Response extends \Google\Protobuf\Internal\Message
      *           退出登陆
      *     @type \Uraus\Kku\Response\ResponseUserLogdata $user_log
      *           日志信息
-     *     @type \Uraus\Kku\Response\ResponseUserClearLog $user_clearlog
+     *     @type \Uraus\Kku\Response\ResponseUserClearLog $user_clear_log
      *          清空日志
      *     @type \Uraus\Kku\Response\ResponseUserGameSkin $user_gameskin
      *           更换农场皮肤
@@ -438,6 +491,11 @@ class Response extends \Google\Protobuf\Internal\Message
      *           god 400+
      *               import "god_response.proto";
      *           ====== god_response.proto ======
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *          - 填充空行,禁止删除
+     *           神像 请求
      *     @type \Uraus\Kku\Response\ResponseHouseUp $house_up
      *           房屋升级请求
      *     @type \Uraus\Kku\Response\ResponseHouseRank $house_rank
@@ -757,6 +815,14 @@ class Response extends \Google\Protobuf\Internal\Message
     }
 
     /**
+     * 公开 100+
+     *     import "public_response.proto";
+     * ====== public_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 获取token
      *
      * Generated from protobuf field <code>.uraus.kku.Response.ResponsePublicToken public_token = 100;</code>
@@ -778,6 +844,14 @@ class Response extends \Google\Protobuf\Internal\Message
     }
 
     /**
+     * 公开 100+
+     *     import "public_response.proto";
+     * ====== public_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 获取token
      *
      * Generated from protobuf field <code>.uraus.kku.Response.ResponsePublicToken public_token = 100;</code>
@@ -1045,6 +1119,14 @@ class Response extends \Google\Protobuf\Internal\Message
     }
 
     /**
+     * land 200+
+     *     import "land_response.proto";
+     * ====== land_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 土地 返回
      * 施肥
      *
@@ -1067,6 +1149,14 @@ class Response extends \Google\Protobuf\Internal\Message
     }
 
     /**
+     * land 200+
+     *     import "land_response.proto";
+     * ====== land_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 土地 返回
      * 施肥
      *
@@ -1335,6 +1425,14 @@ class Response extends \Google\Protobuf\Internal\Message
     }
 
     /**
+     * user 300+
+     *     import "user_response.proto";
+     * ====== user_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 用户返回数据
      * 用户 信息
      *
@@ -1357,6 +1455,14 @@ class Response extends \Google\Protobuf\Internal\Message
     }
 
     /**
+     * user 300+
+     *     import "user_response.proto";
+     * ====== user_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
      * 用户返回数据
      * 用户 信息
      *
@@ -1519,35 +1625,35 @@ class Response extends \Google\Protobuf\Internal\Message
     /**
      *清空日志
      *
-     * Generated from protobuf field <code>.uraus.kku.Response.ResponseUserClearLog user_clearlog = 305;</code>
+     * Generated from protobuf field <code>.uraus.kku.Response.ResponseUserClearLog user_clear_log = 305;</code>
      * @return \Uraus\Kku\Response\ResponseUserClearLog|null
      */
-    public function getUserClearlog()
+    public function getUserClearLog()
     {
-        return $this->user_clearlog;
+        return $this->user_clear_log;
     }
 
-    public function hasUserClearlog()
+    public function hasUserClearLog()
     {
-        return isset($this->user_clearlog);
+        return isset($this->user_clear_log);
     }
 
-    public function clearUserClearlog()
+    public function clearUserClearLog()
     {
-        unset($this->user_clearlog);
+        unset($this->user_clear_log);
     }
 
     /**
      *清空日志
      *
-     * Generated from protobuf field <code>.uraus.kku.Response.ResponseUserClearLog user_clearlog = 305;</code>
+     * Generated from protobuf field <code>.uraus.kku.Response.ResponseUserClearLog user_clear_log = 305;</code>
      * @param \Uraus\Kku\Response\ResponseUserClearLog $var
      * @return $this
      */
-    public function setUserClearlog($var)
+    public function setUserClearLog($var)
     {
         GPBUtil::checkMessage($var, \Uraus\Kku\Response\ResponseUserClearLog::class);
-        $this->user_clearlog = $var;
+        $this->user_clear_log = $var;
 
         return $this;
     }
@@ -1592,6 +1698,11 @@ class Response extends \Google\Protobuf\Internal\Message
      * god 400+
      *     import "god_response.proto";
      * ====== god_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     * 神像 请求
      *
      * Generated from protobuf field <code>.uraus.kku.Response.ResponseGodOpen god_open = 400;</code>
      * @return \Uraus\Kku\Response\ResponseGodOpen|null
@@ -1615,6 +1726,11 @@ class Response extends \Google\Protobuf\Internal\Message
      * god 400+
      *     import "god_response.proto";
      * ====== god_response.proto ======
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     *- 填充空行,禁止删除
+     * 神像 请求
      *
      * Generated from protobuf field <code>.uraus.kku.Response.ResponseGodOpen god_open = 400;</code>
      * @param \Uraus\Kku\Response\ResponseGodOpen $var

+ 9 - 9
protophp/Uraus/Kku/Response/UserInfo.php

@@ -18,9 +18,9 @@ class UserInfo extends \Google\Protobuf\Internal\Message
     /**
      *玩家id
      *
-     * Generated from protobuf field <code>int64 user_d = 1;</code>
+     * Generated from protobuf field <code>int64 user_id = 1;</code>
      */
-    protected $user_d = 0;
+    protected $user_id = 0;
     /**
      *农场皮肤
      *
@@ -52,7 +52,7 @@ class UserInfo extends \Google\Protobuf\Internal\Message
      * @param array $data {
      *     Optional. Data for populating the Message object.
      *
-     *     @type int|string $user_d
+     *     @type int|string $user_id
      *          玩家id
      *     @type int|string $skin_id
      *          农场皮肤
@@ -72,25 +72,25 @@ class UserInfo extends \Google\Protobuf\Internal\Message
     /**
      *玩家id
      *
-     * Generated from protobuf field <code>int64 user_d = 1;</code>
+     * Generated from protobuf field <code>int64 user_id = 1;</code>
      * @return int|string
      */
-    public function getUserD()
+    public function getUserId()
     {
-        return $this->user_d;
+        return $this->user_id;
     }
 
     /**
      *玩家id
      *
-     * Generated from protobuf field <code>int64 user_d = 1;</code>
+     * Generated from protobuf field <code>int64 user_id = 1;</code>
      * @param int|string $var
      * @return $this
      */
-    public function setUserD($var)
+    public function setUserId($var)
     {
         GPBUtil::checkInt64($var);
-        $this->user_d = $var;
+        $this->user_id = $var;
 
         return $this;
     }

+ 4 - 4
vendor/composer/autoload_classmap.php

@@ -57,7 +57,6 @@ return array(
     'App\\Module\\AppGame\\HttpControllers\\ProtobufController' => $baseDir . '/app/Module/AppGame/HttpControllers/ProtobufController.php',
     'App\\Module\\AppGame\\Listeners\\AppGameProtobufResponseListener' => $baseDir . '/app/Module/AppGame/Listeners/AppGameProtobufResponseListener.php',
     'App\\Module\\AppGame\\Listeners\\GameProtobufResponseListener' => $baseDir . '/app/Module/AppGame/Listeners/GameProtobufResponseListener.php',
-    'App\\Module\\AppGame\\Listeners\\ProtobufResponseListener' => $baseDir . '/app/Module/AppGame/Listeners/ProtobufResponseListener.php',
     'App\\Module\\AppGame\\Middleware\\LoginCheck' => $baseDir . '/app/Module/AppGame/Middleware/LoginCheck.php',
     'App\\Module\\AppGame\\Providers\\AppGameServiceProvider' => $baseDir . '/app/Module/AppGame/Providers/AppGameServiceProvider.php',
     'App\\Module\\AppGame\\Service\\AddressService' => $baseDir . '/app/Module/AppGame/Service/AddressService.php',
@@ -216,6 +215,7 @@ return array(
     'App\\Module\\GameItems\\AdminControllers\\UserItemController' => $baseDir . '/app/Module/GameItems/AdminControllers/UserItemController.php',
     'App\\Module\\GameItems\\AdminControllers\\UserOutputCounterController' => $baseDir . '/app/Module/GameItems/AdminControllers/UserOutputCounterController.php',
     'App\\Module\\GameItems\\AdminControllers\\UserRecipeController' => $baseDir . '/app/Module/GameItems/AdminControllers/UserRecipeController.php',
+    'App\\Module\\GameItems\\AdminForms\\AddItemForm' => $baseDir . '/app/Module/GameItems/AdminForms/AddItemForm.php',
     'App\\Module\\GameItems\\Casts\\ChestOpenResultsCast' => $baseDir . '/app/Module/GameItems/Casts/ChestOpenResultsCast.php',
     'App\\Module\\GameItems\\Casts\\DisplayAttributesCast' => $baseDir . '/app/Module/GameItems/Casts/DisplayAttributesCast.php',
     'App\\Module\\GameItems\\Casts\\JsonCast' => $baseDir . '/app/Module/GameItems/Casts/JsonCast.php',
@@ -554,7 +554,6 @@ return array(
     'App\\Module\\User\\Services\\Online' => $baseDir . '/app/Module/User/Services/Online.php',
     'App\\Module\\User\\Services\\Phone' => $baseDir . '/app/Module/User/Services/Phone.php',
     'App\\Module\\User\\Services\\SecurityPassword' => $baseDir . '/app/Module/User/Services/SecurityPassword.php',
-    'App\\Module\\User\\Services\\User' => $baseDir . '/app/Module/User/Services/User.php',
     'App\\Module\\User\\Services\\UserOInfo' => $baseDir . '/app/Module/User/Services/UserOInfo.php',
     'App\\Module\\User\\Services\\UserService' => $baseDir . '/app/Module/User/Services/UserService.php',
     'App\\Module\\User\\Unit\\User' => $baseDir . '/app/Module/User/Unit/User.php',
@@ -8837,6 +8836,7 @@ return array(
     'Toolkit\\Stdlib\\Util\\Stream\\StringStream' => $vendorDir . '/toolkit/stdlib/src/Util/Stream/StringStream.php',
     'Toolkit\\Stdlib\\Util\\Token' => $vendorDir . '/toolkit/stdlib/src/Util/Token.php',
     'Toolkit\\Stdlib\\Util\\UUID' => $vendorDir . '/toolkit/stdlib/src/Util/UUID.php',
+    'UCore\\App' => $baseDir . '/UCore/App.php',
     'UCore\\Command\\Command' => $baseDir . '/UCore/Command/Command.php',
     'UCore\\Command\\CommandFace' => $baseDir . '/UCore/Command/CommandFace.php',
     'UCore\\Command\\CommandSecond' => $baseDir . '/UCore/Command/CommandSecond.php',
@@ -9126,9 +9126,9 @@ return array(
     'Uraus\\Kku\\Request\\RequestPublicLogin' => $baseDir . '/protophp/Uraus/Kku/Request/RequestPublicLogin.php',
     'Uraus\\Kku\\Request\\RequestPublicPlayerData' => $baseDir . '/protophp/Uraus/Kku/Request/RequestPublicPlayerData.php',
     'Uraus\\Kku\\Request\\RequestPublicRegister' => $baseDir . '/protophp/Uraus/Kku/Request/RequestPublicRegister.php',
+    'Uraus\\Kku\\Request\\RequestPublicResetPassword' => $baseDir . '/protophp/Uraus/Kku/Request/RequestPublicResetPassword.php',
     'Uraus\\Kku\\Request\\RequestPublicSendSms' => $baseDir . '/protophp/Uraus/Kku/Request/RequestPublicSendSms.php',
     'Uraus\\Kku\\Request\\RequestPublicToken' => $baseDir . '/protophp/Uraus/Kku/Request/RequestPublicToken.php',
-    'Uraus\\Kku\\Request\\RequestResetPassword' => $baseDir . '/protophp/Uraus/Kku/Request/RequestResetPassword.php',
     'Uraus\\Kku\\Request\\RequestShopBuy' => $baseDir . '/protophp/Uraus/Kku/Request/RequestShopBuy.php',
     'Uraus\\Kku\\Request\\RequestShopQuery' => $baseDir . '/protophp/Uraus/Kku/Request/RequestShopQuery.php',
     'Uraus\\Kku\\Request\\RequestUserClearLog' => $baseDir . '/protophp/Uraus/Kku/Request/RequestUserClearLog.php',
@@ -9174,9 +9174,9 @@ return array(
     'Uraus\\Kku\\Request_RequestPublicLogin' => $baseDir . '/protophp/Uraus/Kku/Request_RequestPublicLogin.php',
     'Uraus\\Kku\\Request_RequestPublicPlayerData' => $baseDir . '/protophp/Uraus/Kku/Request_RequestPublicPlayerData.php',
     'Uraus\\Kku\\Request_RequestPublicRegister' => $baseDir . '/protophp/Uraus/Kku/Request_RequestPublicRegister.php',
+    'Uraus\\Kku\\Request_RequestPublicResetPassword' => $baseDir . '/protophp/Uraus/Kku/Request_RequestPublicResetPassword.php',
     'Uraus\\Kku\\Request_RequestPublicSendSms' => $baseDir . '/protophp/Uraus/Kku/Request_RequestPublicSendSms.php',
     'Uraus\\Kku\\Request_RequestPublicToken' => $baseDir . '/protophp/Uraus/Kku/Request_RequestPublicToken.php',
-    'Uraus\\Kku\\Request_RequestResetPassword' => $baseDir . '/protophp/Uraus/Kku/Request_RequestResetPassword.php',
     'Uraus\\Kku\\Request_RequestShopBuy' => $baseDir . '/protophp/Uraus/Kku/Request_RequestShopBuy.php',
     'Uraus\\Kku\\Request_RequestShopQuery' => $baseDir . '/protophp/Uraus/Kku/Request_RequestShopQuery.php',
     'Uraus\\Kku\\Request_RequestUserClearLog' => $baseDir . '/protophp/Uraus/Kku/Request_RequestUserClearLog.php',

+ 4 - 4
vendor/composer/autoload_static.php

@@ -777,7 +777,6 @@ class ComposerStaticInita2207959542f13e6e79e83f2b0d9a425
         'App\\Module\\AppGame\\HttpControllers\\ProtobufController' => __DIR__ . '/../..' . '/app/Module/AppGame/HttpControllers/ProtobufController.php',
         'App\\Module\\AppGame\\Listeners\\AppGameProtobufResponseListener' => __DIR__ . '/../..' . '/app/Module/AppGame/Listeners/AppGameProtobufResponseListener.php',
         'App\\Module\\AppGame\\Listeners\\GameProtobufResponseListener' => __DIR__ . '/../..' . '/app/Module/AppGame/Listeners/GameProtobufResponseListener.php',
-        'App\\Module\\AppGame\\Listeners\\ProtobufResponseListener' => __DIR__ . '/../..' . '/app/Module/AppGame/Listeners/ProtobufResponseListener.php',
         'App\\Module\\AppGame\\Middleware\\LoginCheck' => __DIR__ . '/../..' . '/app/Module/AppGame/Middleware/LoginCheck.php',
         'App\\Module\\AppGame\\Providers\\AppGameServiceProvider' => __DIR__ . '/../..' . '/app/Module/AppGame/Providers/AppGameServiceProvider.php',
         'App\\Module\\AppGame\\Service\\AddressService' => __DIR__ . '/../..' . '/app/Module/AppGame/Service/AddressService.php',
@@ -936,6 +935,7 @@ class ComposerStaticInita2207959542f13e6e79e83f2b0d9a425
         'App\\Module\\GameItems\\AdminControllers\\UserItemController' => __DIR__ . '/../..' . '/app/Module/GameItems/AdminControllers/UserItemController.php',
         'App\\Module\\GameItems\\AdminControllers\\UserOutputCounterController' => __DIR__ . '/../..' . '/app/Module/GameItems/AdminControllers/UserOutputCounterController.php',
         'App\\Module\\GameItems\\AdminControllers\\UserRecipeController' => __DIR__ . '/../..' . '/app/Module/GameItems/AdminControllers/UserRecipeController.php',
+        'App\\Module\\GameItems\\AdminForms\\AddItemForm' => __DIR__ . '/../..' . '/app/Module/GameItems/AdminForms/AddItemForm.php',
         'App\\Module\\GameItems\\Casts\\ChestOpenResultsCast' => __DIR__ . '/../..' . '/app/Module/GameItems/Casts/ChestOpenResultsCast.php',
         'App\\Module\\GameItems\\Casts\\DisplayAttributesCast' => __DIR__ . '/../..' . '/app/Module/GameItems/Casts/DisplayAttributesCast.php',
         'App\\Module\\GameItems\\Casts\\JsonCast' => __DIR__ . '/../..' . '/app/Module/GameItems/Casts/JsonCast.php',
@@ -1274,7 +1274,6 @@ class ComposerStaticInita2207959542f13e6e79e83f2b0d9a425
         'App\\Module\\User\\Services\\Online' => __DIR__ . '/../..' . '/app/Module/User/Services/Online.php',
         'App\\Module\\User\\Services\\Phone' => __DIR__ . '/../..' . '/app/Module/User/Services/Phone.php',
         'App\\Module\\User\\Services\\SecurityPassword' => __DIR__ . '/../..' . '/app/Module/User/Services/SecurityPassword.php',
-        'App\\Module\\User\\Services\\User' => __DIR__ . '/../..' . '/app/Module/User/Services/User.php',
         'App\\Module\\User\\Services\\UserOInfo' => __DIR__ . '/../..' . '/app/Module/User/Services/UserOInfo.php',
         'App\\Module\\User\\Services\\UserService' => __DIR__ . '/../..' . '/app/Module/User/Services/UserService.php',
         'App\\Module\\User\\Unit\\User' => __DIR__ . '/../..' . '/app/Module/User/Unit/User.php',
@@ -9557,6 +9556,7 @@ class ComposerStaticInita2207959542f13e6e79e83f2b0d9a425
         'Toolkit\\Stdlib\\Util\\Stream\\StringStream' => __DIR__ . '/..' . '/toolkit/stdlib/src/Util/Stream/StringStream.php',
         'Toolkit\\Stdlib\\Util\\Token' => __DIR__ . '/..' . '/toolkit/stdlib/src/Util/Token.php',
         'Toolkit\\Stdlib\\Util\\UUID' => __DIR__ . '/..' . '/toolkit/stdlib/src/Util/UUID.php',
+        'UCore\\App' => __DIR__ . '/../..' . '/UCore/App.php',
         'UCore\\Command\\Command' => __DIR__ . '/../..' . '/UCore/Command/Command.php',
         'UCore\\Command\\CommandFace' => __DIR__ . '/../..' . '/UCore/Command/CommandFace.php',
         'UCore\\Command\\CommandSecond' => __DIR__ . '/../..' . '/UCore/Command/CommandSecond.php',
@@ -9846,9 +9846,9 @@ class ComposerStaticInita2207959542f13e6e79e83f2b0d9a425
         'Uraus\\Kku\\Request\\RequestPublicLogin' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request/RequestPublicLogin.php',
         'Uraus\\Kku\\Request\\RequestPublicPlayerData' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request/RequestPublicPlayerData.php',
         'Uraus\\Kku\\Request\\RequestPublicRegister' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request/RequestPublicRegister.php',
+        'Uraus\\Kku\\Request\\RequestPublicResetPassword' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request/RequestPublicResetPassword.php',
         'Uraus\\Kku\\Request\\RequestPublicSendSms' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request/RequestPublicSendSms.php',
         'Uraus\\Kku\\Request\\RequestPublicToken' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request/RequestPublicToken.php',
-        'Uraus\\Kku\\Request\\RequestResetPassword' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request/RequestResetPassword.php',
         'Uraus\\Kku\\Request\\RequestShopBuy' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request/RequestShopBuy.php',
         'Uraus\\Kku\\Request\\RequestShopQuery' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request/RequestShopQuery.php',
         'Uraus\\Kku\\Request\\RequestUserClearLog' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request/RequestUserClearLog.php',
@@ -9894,9 +9894,9 @@ class ComposerStaticInita2207959542f13e6e79e83f2b0d9a425
         'Uraus\\Kku\\Request_RequestPublicLogin' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request_RequestPublicLogin.php',
         'Uraus\\Kku\\Request_RequestPublicPlayerData' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request_RequestPublicPlayerData.php',
         'Uraus\\Kku\\Request_RequestPublicRegister' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request_RequestPublicRegister.php',
+        'Uraus\\Kku\\Request_RequestPublicResetPassword' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request_RequestPublicResetPassword.php',
         'Uraus\\Kku\\Request_RequestPublicSendSms' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request_RequestPublicSendSms.php',
         'Uraus\\Kku\\Request_RequestPublicToken' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request_RequestPublicToken.php',
-        'Uraus\\Kku\\Request_RequestResetPassword' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request_RequestResetPassword.php',
         'Uraus\\Kku\\Request_RequestShopBuy' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request_RequestShopBuy.php',
         'Uraus\\Kku\\Request_RequestShopQuery' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request_RequestShopQuery.php',
         'Uraus\\Kku\\Request_RequestUserClearLog' => __DIR__ . '/../..' . '/protophp/Uraus/Kku/Request_RequestUserClearLog.php',