Skip to content
This repository was archived by the owner on Apr 26, 2020. It is now read-only.

Commit 7f65381

Browse files
authored
Merge pull request #2 from xiaochengfu/master
新增高级版的目录指定
2 parents 882f79b + 1e1a945 commit 7f65381

File tree

4 files changed

+10
-5
lines changed

4 files changed

+10
-5
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ composer require kaopur/yii2-doc-online
1313
```
1414
'modules' => [
1515
'doconline' => [
16+
'item' => 'app',//app、frontend、backend
1617
'class' => 'Kaopur\yii2_doc_online\Module',
1718
'defaultRoute' => 'index', //默认控制器
1819
'appControllers' => true, //是否检测app\controllers命名空间下的控制器

src/ApiDesc.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,15 @@ public function render() {
3535
$exceptions = array();
3636

3737
$exploade_service = explode('/', $service);
38+
$item = \Yii::$app->modules['doconline']->item;
3839
switch (count($exploade_service)) {
3940
case 2:
40-
$classNameTpl = '\\app\\controllers\\%sController';
41+
$classNameTpl = "\\$item\\controllers\\%sController";
4142
$className = sprintf($classNameTpl, ucfirst($exploade_service[0]));
4243
$methodName = 'action' .ucfirst($exploade_service[1]);
4344
break;
4445
case 3:
45-
$classNameTpl = '\\app\\modules\\%s\\controllers\\%sController';
46+
$classNameTpl = "\\$item\\modules\\%s\\controllers\\%sController";
4647
$className = sprintf($classNameTpl, $exploade_service[0], ucfirst($exploade_service[1]));
4748
$methodName = 'action' .ucfirst($exploade_service[2]);
4849
break;

src/ApiList.php

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ public function render($modules = []) {
3636
if ($this->appControllers) {
3737
$files = listDir(API_ROOT . D_S . $apiDirName);
3838
$classesName = array_map(function($file){
39-
$classNameTemp = '/app' . rtrim(strstr($file, '/controllers/'), '.php');
39+
$item = \Yii::$app->modules['doconline']->item;
40+
$classNameTemp = "/$item" . rtrim(strstr($file, '/controllers/'), '.php');
4041
$className = str_replace('/', '\\', $classNameTemp);
4142
return $className;
4243
}, $files);
@@ -46,7 +47,8 @@ public function render($modules = []) {
4647
$moduleDirName = '../modules/' . $module . '/controllers';
4748
$moduleFiles = listDir(API_ROOT . D_S . $moduleDirName);
4849
return array_map(function($moduleFile) use ($module) {
49-
$namespace = '\\app\\modules\\%s\\controllers\\%s';
50+
$item = \Yii::$app->modules['doconline']->item;
51+
$namespace = "\\$item\\modules\\%s\\controllers\\%s";
5052
$className = rtrim(substr($moduleFile, strrpos($moduleFile, D_S) + 1), '.php');
5153
return sprintf($namespace, $module, $className);
5254
}, $moduleFiles);
@@ -85,7 +87,7 @@ public function render($modules = []) {
8587
$docComment = $ref->getDocComment();
8688
if ($docComment !== false) {
8789
$docCommentArr = explode("\n", $docComment);
88-
$comment = isset($docCommentArr[1])?trim($docCommentArr[1]):'';
90+
$comment = trim($docCommentArr[1]);
8991
$title = trim(substr($comment, strpos($comment, '*') + 1));
9092
foreach ($docCommentArr as $comment) {
9193
$pos = stripos($comment, '@desc');

src/Module.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ class Module extends \yii\base\Module
99
public $suffix = '';
1010
public $prefix = '';
1111
public $modules = [];
12+
public $item = 'app';
1213
public function init()
1314
{
1415
parent::init();

0 commit comments

Comments
 (0)