mlym/wise-generator-easyswoole

wise generator for EasySwoole

v1.5.2 2021-07-28 15:59 UTC

This package is auto-updated.

Last update: 2024-03-29 04:45:52 UTC


README

基于EasySwoole的code-generation改写,为了满足现有项目需求,部分功能类都有所调整,修复部分bug的同时也完善了一些功能。 为了迎合内部项目使用,计划整体结构会有较多的改动。

重要说明

自V1.3.1之后,不在基于数据库生成Schema信息,需要结合MiddleWare平台输出的中间结果来创建

版本说明

版本说明

code-generation

使用命令行,一键生成业务通用代码,支持代码如下:

  • 一键生成项目初始化 baseController,baseModel.支持自定义bastPath
  • 一键生成 Model ,自带属性注释,支持自动识别autoTimeStamp、创建时间、更新时间
  • 一键生成 CURD控制器(add/edit/getOne/getList/del)

安装

composer require mlym/wise-generator-easyswoole

使用

1. 基础配置

  • bootstrap事件Di注入MySQL配置项:
<?php

\EasySwoole\EasySwoole\Core::getInstance()->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配置项:
    '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平台配置项:
    'WISE_GENERATOR'=>[
        'url'=>'http://middleware.wise-generator.livedevice.com.cn/admin/index/middleware',
        'project'=>'自定义Project编码'
    ]
  • dev.php添加JWT配置项:
    'JWT' => [
        'secretKey' => '888888',  //JWT Secret Key
        'dataFields' => ['uid'],  //JWT Data 保存上下文的数据Key
        'ignoreAction' => ['/admin/login'], //不受权限控制的Action,后续版本会补充更详细的权限控制内容
    ]

执行命令:

php vendor/bin/wise-generator-easyswoole

2.初始化基础类:

参数:

  • --basePath 基类所在目录(非必填)
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.自定义业务模块代码:

php vendor/bin/wise-generator-easyswoole all

参数:

  • --moduleName 模块名称,请求中间件平台的重要凭证
  • --modulePath 控制器类和模型类所在路径模块子路径

示例:

$ 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 │
└────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘```