| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 | 
							- <?php
 
- /**
 
-  * Created by PhpStorm.
 
-  * User: 中闽 < 1464674022@qq.com >
 
-  * Date: 2023/02/05
 
-  * Time: 20:33
 
-  */
 
- namespace app\admin\controller;
 
- use file\FileHelper;
 
- /**
 
-  * 演示代码生成,只生成接口
 
-  * Class ApiGeneration
 
-  * @package app\admin\controller
 
-  */
 
- class ApiGeneration extends CodeGeneration
 
- {
 
-     public function generation()
 
-     {
 
-         $post = $this->request->post();
 
-         if ($this->request->isPost()) {
 
-             $validate = new \think\Validate([
 
-                 ['table', 'require|max:50', '请选择数据库表'],
 
-             ]);
 
-             if (!$validate->check($post)) {
 
-                 $this->error('提交失败:' . $validate->getError());
 
-             }
 
-         }
 
-         $nameAndComment = explode('|', $post['table']);
 
-         $tableName = $nameAndComment[0]??'';
 
-         $menuName = $nameAndComment[1] ?: $tableName;
 
-         $humpName = $this->getHumpName($tableName);
 
-         $underLineName = $this->getUnderLineName($tableName);
 
-         $fieldsInfo = $this->getFieldsInfoByTableName($tableName);
 
-         $tpData = [
 
-             'fieldsInfo' => $fieldsInfo,
 
-             'humpName' => $humpName,
 
-             'underLineName' => $underLineName,
 
-             'menuName' => $menuName,
 
-             'tableName' => $tableName,
 
-             'crud' => $post['crud']??[],
 
-         ];
 
-         //模板文件目录
 
-         $tpdir = APP_PATH . 'admin' . DS . 'view' . DS . 'code_generation' . DS . 'tpl' . DS;
 
-         //生成文件路径
 
-         $ControllerPath = APP_PATH . 'api' . DS . 'controller' . DS . $humpName . '.php';
 
-         $ModelPath = APP_PATH . 'common' . DS . 'model' . DS . $humpName . '.php';
 
-         $ApiDocPath = APP_PATH . 'api' . DS . 'controller' . DS . $humpName . '.md';
 
-         if (!$this->request->has('cover')) {
 
-             //检查文件是否已存在
 
-             $checkMsg = "";
 
-             if (file_exists($ControllerPath)) {
 
-                 $checkMsg .= str_replace(APP_PATH, '', $ControllerPath) . " 已存在" . '</br>';
 
-             }
 
-             if (file_exists($ModelPath)) {
 
-                 $checkMsg .= str_replace(APP_PATH, '', $ModelPath) . " 已存在" . '</br>';
 
-             }
 
-             if (file_exists($ApiDocPath)) {
 
-                 $checkMsg .= str_replace(APP_PATH, '', $ApiDocPath) . " 已存在" . '</br>';
 
-             }
 
-             if (!empty($checkMsg)) {
 
-                 $checkMsg .= "<span style='color:red;'>确认生成并覆盖?</span>";
 
-                 $this->error($checkMsg);
 
-             }
 
-         }
 
-         //生成controller
 
-         $content = $this->fetch($tpdir . 'ApiController.php.tp', $tpData);
 
-         FileHelper::save($ControllerPath, "<?php" . PHP_EOL . $content);
 
-         //生成model
 
-         $content = $this->fetch($tpdir . 'Model.php.tp', $tpData);
 
-         FileHelper::save($ModelPath, "<?php" . PHP_EOL . $content);
 
-         //生成api doc
 
-         $content = $this->fetch($tpdir . 'ApiDoc.md.tp', $tpData);
 
-         FileHelper::save($ApiDocPath, $content);
 
-         $this->success("success");
 
-     }
 
- }
 
 
  |