# wise-generator-easyswoole **Repository Path**: mlym/wise-generator-easyswoole ## Basic Information - **Project Name**: wise-generator-easyswoole - **Description**: WiseGenerator easyswoole 代码生成器 - **Primary Language**: PHP - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2021-06-10 - **Last Updated**: 2023-04-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # wise-generator-easyswoole 基于EasySwoole的code-generation改写,为了满足现有项目需求,部分功能类都有所调整,修复部分bug的同时也完善了一些功能。 为了迎合内部项目使用,计划整体结构会有较多的改动。 ## 重要说明 自V1.3.1之后,不在基于数据库生成Schema信息,需要结合MiddleWare平台输出的中间结果来创建 ## 版本说明 [版本说明](https://gitee.com/mlym/wise-generator-easyswoole/wikis/Release%20Notes) # code-generation 使用命令行,一键生成业务通用代码,支持代码如下: - 一键生成项目初始化 baseController,baseModel.支持自定义bastPath - 一键生成 Model ,自带属性注释,支持自动识别autoTimeStamp、创建时间、更新时间 - 一键生成 CURD控制器(add/edit/getOne/getList/del) ## 安装 ```bash composer require mlym/wise-generator-easyswoole ``` ## 使用 ### 1. 基础配置 - 在`bootstrap事件`Di注入MySQL配置项: ```php initialize(); $mysqlConfig = new \EasySwoole\ORM\Db\Config(\EasySwoole\EasySwoole\Config::getInstance()->getConf('MYSQL')); \EasySwoole\Component\Di::getInstance()->set('CodeGeneration.connection',$mysqlConfig); //注入执行目录项,后面的为默认值,initClass不能通过注入改变目录 \EasySwoole\Component\Di::getInstance()->set('CodeGeneration.modelBaseNameSpace',"App\\Model"); \EasySwoole\Component\Di::getInstance()->set('CodeGeneration.controllerBaseNameSpace',"App\\HttpController"); \EasySwoole\Component\Di::getInstance()->set('CodeGeneration.rootPath',getcwd()); ``` - 在`dev.php`添加MySQL配置项: ```php 'MYSQL' => [ 'host' => '127.0.0.1', 'port' => 3306, 'user' => '账号', 'password' => '密码', 'timeout' => 5, 'charset' => 'utf8mb4', 'database' => '数据库', 'maxObjectNum' => 20, 'minObjectNum' => 5, 'getObjectTimeout' => 3.0, ] ``` - 在`dev.php`添加Middleware平台配置项: ```php 'WISE_GENERATOR'=>[ 'url'=>'http://middleware.wise-generator.livedevice.com.cn/admin/index/middleware', 'project'=>'自定义Project编码' ] ``` - 在`dev.php`添加JWT配置项: ```php 'JWT' => [ 'secretKey' => '888888', //JWT Secret Key 'dataFields' => ['uid'], //JWT Data 保存上下文的数据Key 'ignoreAction' => ['/admin/login'], //不受权限控制的Action,后续版本会补充更详细的权限控制内容 ] ``` 执行命令: ```bash php vendor/bin/wise-generator-easyswoole ``` ### 2.初始化基础类: 参数: - --basePath 基类所在目录(非必填) ```bash php vendor/bin/wise-generator-easyswoole init --basePath=admin ``` 参数示例: ``` ┌────────────────────────┬────────────────────────────────────────────────────────────────────────────────────┐ │ className │ filePath │ ├────────────────────────┼────────────────────────────────────────────────────────────────────────────────────┤ │ Controller │ /wise-generator/wise-generator-easyswoole/App/HttpController/admin/Base.php │ ├────────────────────────┼────────────────────────────────────────────────────────────────────────────────────┤ │ Model │ /wise-generator/wise-generator-easyswoole/App/Model/admin/BaseModel.php │ ├────────────────────────┼────────────────────────────────────────────────────────────────────────────────────┤ │ Router │ /wise-generator/wise-generator-easyswoole/App/HttpController/Router.php │ ├────────────────────────┼────────────────────────────────────────────────────────────────────────────────────┤ │ Authorization │ /wise-generator/wise-generator-easyswoole/App/Logic/Authorization.php │ ├────────────────────────┼────────────────────────────────────────────────────────────────────────────────────┤ │ AuthorizationException │ /wise-generator/wise-generator-easyswoole/App/Exception/AuthorizationException.php │ └────────────────────────┴────────────────────────────────────────────────────────────────────────────────────┘ ``` ### 3.自定义业务模块代码: ```bash php vendor/bin/wise-generator-easyswoole all ``` 参数: - --moduleName 模块名称,请求中间件平台的重要凭证 - --modulePath 控制器类和模型类所在路径模块子路径 示例: ```bash $ php vendor/bin/wise-generator-easyswoole all --modulePath=\\admin --moduleName=admin ┌────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ className │ filePath │ ├────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ Model │ /Users/ryan/Desktop/src/composer/easyswoole-code-generation/App/Model/admin/MwUserModel.php │ ├────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ Controller │ /Users/ryan/Desktop/src/composer/easyswoole-code-generation/App/HttpController/admin/MwUser.php │ └────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘``` ```